ceedling 0.25.0 → 0.27.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (434) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/assets/project_as_gem.yml +13 -0
  4. data/assets/project_with_guts.yml +13 -0
  5. data/bin/ceedling +91 -67
  6. data/docs/CeedlingPacket.md +61 -23
  7. data/docs/CeedlingPacket.odt +0 -0
  8. data/docs/CeedlingPacket.pdf +0 -0
  9. data/docs/ThrowTheSwitchCodingStandard.md +207 -0
  10. data/examples/temp_sensor/test/TestTemperatureCalculator.c +4 -1
  11. data/lib/ceedling/configurator.rb +14 -1
  12. data/lib/ceedling/configurator_builder.rb +2 -1
  13. data/lib/ceedling/configurator_validator.rb +12 -3
  14. data/lib/ceedling/constants.rb +3 -1
  15. data/lib/ceedling/defaults.rb +12 -1
  16. data/lib/ceedling/file_finder.rb +3 -0
  17. data/lib/ceedling/file_path_utils.rb +1 -1
  18. data/lib/ceedling/file_wrapper.rb +4 -4
  19. data/lib/ceedling/generator.rb +12 -3
  20. data/lib/ceedling/preprocessinator_helper.rb +5 -5
  21. data/lib/ceedling/preprocessinator_includes_handler.rb +10 -1
  22. data/lib/ceedling/project_config_manager.rb +1 -2
  23. data/lib/ceedling/project_file_loader.rb +27 -9
  24. data/lib/ceedling/rakefile.rb +6 -6
  25. data/lib/ceedling/release_invoker.rb +21 -6
  26. data/lib/ceedling/rules_release.rake +9 -5
  27. data/lib/ceedling/rules_tests.rake +6 -1
  28. data/lib/ceedling/setupinator.rb +1 -0
  29. data/lib/ceedling/tasks_base.rake +3 -0
  30. data/lib/ceedling/tasks_filesystem.rake +10 -7
  31. data/lib/ceedling/tasks_release.rake +3 -1
  32. data/lib/ceedling/test_includes_extractor.rb +16 -12
  33. data/lib/ceedling/test_invoker.rb +40 -0
  34. data/lib/ceedling/version.rb +3 -3
  35. data/lib/ceedling/version.rb.erb +1 -1
  36. data/plugins/command_hooks/lib/command_hooks.rb +1 -1
  37. data/plugins/fake_function_framework/examples/fff_example/src/bar.h +1 -0
  38. data/plugins/fake_function_framework/examples/fff_example/src/event_processor.c +1 -0
  39. data/plugins/fake_function_framework/lib/fff_mock_generator.rb +4 -0
  40. data/plugins/fake_function_framework/spec/{fff_mock_generator_spec.rb → fff_mock_header_generator_spec.rb} +34 -194
  41. data/plugins/fake_function_framework/spec/fff_mock_source_generator_spec.rb +149 -0
  42. data/plugins/fake_function_framework/spec/header_generator.rb +51 -0
  43. data/plugins/junit_tests_report/lib/junit_tests_report.rb +115 -0
  44. data/plugins/subprojects/README.md +63 -0
  45. data/plugins/subprojects/config/defaults.yml +33 -0
  46. data/plugins/subprojects/lib/subprojects.rb +92 -0
  47. data/plugins/subprojects/subprojects.rake +78 -0
  48. data/spec/preprocessinator_includes_handler_spec.rb +15 -5
  49. data/spec/spec_helper.rb +2 -2
  50. data/spec/spec_system_helper.rb +49 -1
  51. data/spec/system/deployment_spec.rb +29 -0
  52. data/vendor/c_exception/README.md +8 -2
  53. data/vendor/c_exception/docs/{readme.txt → CException.md} +133 -102
  54. data/vendor/c_exception/docs/ThrowTheSwitchCodingStandard.md +207 -0
  55. data/vendor/c_exception/vendor/unity/README.md +19 -10
  56. data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +67 -64
  57. data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +20 -20
  58. data/vendor/c_exception/vendor/unity/auto/generate_module.rb +149 -142
  59. data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +234 -232
  60. data/vendor/c_exception/vendor/unity/auto/parse_output.rb +220 -0
  61. data/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +108 -120
  62. data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +11 -9
  63. data/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +1 -3
  64. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +6 -2
  65. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +45 -57
  66. data/vendor/c_exception/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +207 -0
  67. data/vendor/c_exception/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  68. data/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.md +716 -0
  69. data/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.md +398 -0
  70. data/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.md +191 -0
  71. data/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.md +242 -0
  72. data/vendor/c_exception/vendor/unity/examples/example_1/makefile +22 -17
  73. data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +1 -1
  74. data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +1 -1
  75. data/vendor/c_exception/vendor/unity/examples/example_2/makefile +16 -17
  76. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +15 -15
  77. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +93 -100
  78. data/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +4 -10
  79. data/vendor/c_exception/vendor/unity/examples/unity_config.h +14 -26
  80. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +12 -12
  81. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +87 -88
  82. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +15 -8
  83. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +6 -1
  84. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +3 -0
  85. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +1 -0
  86. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +1 -1
  87. data/vendor/c_exception/vendor/unity/src/unity.c +396 -330
  88. data/vendor/c_exception/vendor/unity/src/unity.h +50 -4
  89. data/vendor/c_exception/vendor/unity/src/unity_internals.h +119 -84
  90. data/vendor/c_exception/vendor/unity/test/Makefile +17 -17
  91. data/vendor/c_exception/vendor/unity/test/rakefile +63 -3
  92. data/vendor/c_exception/vendor/unity/test/rakefile_helper.rb +108 -105
  93. data/vendor/c_exception/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -0
  94. data/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +0 -6
  95. data/vendor/c_exception/vendor/unity/test/targets/clang_strict.yml +1 -9
  96. data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +2 -0
  97. data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +2 -2
  98. data/vendor/c_exception/vendor/unity/test/tests/test_generate_test_runner.rb +5 -5
  99. data/vendor/c_exception/vendor/unity/test/tests/testunity.c +1338 -151
  100. data/vendor/cmock/README.md +10 -1
  101. data/vendor/cmock/config/test_environment.rb +7 -7
  102. data/vendor/cmock/docs/CMock_Summary.md +325 -128
  103. data/vendor/cmock/docs/ThrowTheSwitchCodingStandard.md +207 -0
  104. data/vendor/cmock/examples/make_example/Makefile +2 -2
  105. data/vendor/cmock/examples/temp_sensor/gcc.yml +5 -4
  106. data/vendor/cmock/examples/temp_sensor/iar_v4.yml +5 -4
  107. data/vendor/cmock/examples/temp_sensor/iar_v5.yml +5 -4
  108. data/vendor/cmock/examples/temp_sensor/rakefile.rb +11 -1
  109. data/vendor/cmock/examples/temp_sensor/rakefile_helper.rb +12 -10
  110. data/vendor/cmock/lib/cmock.rb +0 -3
  111. data/vendor/cmock/lib/cmock_generator_plugin_callback.rb +6 -2
  112. data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +2 -1
  113. data/vendor/cmock/lib/cmock_header_parser.rb +5 -6
  114. data/vendor/cmock/release/version.info +1 -1
  115. data/vendor/cmock/scripts/create_makefile.rb +4 -2
  116. data/vendor/cmock/scripts/test_summary.rb +17 -9
  117. data/vendor/cmock/src/cmock.c +1 -0
  118. data/vendor/cmock/src/cmock.h +1 -1
  119. data/vendor/cmock/src/cmock_internals.h +14 -1
  120. data/vendor/cmock/test/c/TestCMockC.yml +4 -4
  121. data/vendor/cmock/test/c/TestCMockCDynamic.yml +4 -4
  122. data/vendor/cmock/{iar → test/iar}/iar_v4/Resource/SAM7_FLASH.mac +0 -0
  123. data/vendor/cmock/{iar → test/iar}/iar_v4/Resource/SAM7_RAM.mac +0 -0
  124. data/vendor/cmock/{iar → test/iar}/iar_v4/Resource/SAM7_SIM.mac +0 -0
  125. data/vendor/cmock/{iar → test/iar}/iar_v4/Resource/at91SAM7X256_FLASH.xcl +0 -0
  126. data/vendor/cmock/{iar → test/iar}/iar_v4/Resource/at91SAM7X256_RAM.xcl +0 -0
  127. data/vendor/cmock/{iar → test/iar}/iar_v4/Resource/ioat91sam7x256.ddf +0 -0
  128. data/vendor/cmock/{iar → test/iar}/iar_v4/cmock_demo.dep +0 -0
  129. data/vendor/cmock/{iar → test/iar}/iar_v4/cmock_demo.ewd +0 -0
  130. data/vendor/cmock/{iar → test/iar}/iar_v4/cmock_demo.ewp +0 -0
  131. data/vendor/cmock/{iar → test/iar}/iar_v4/cmock_demo.eww +0 -0
  132. data/vendor/cmock/{iar → test/iar}/iar_v4/incIAR/AT91SAM7X-EK.h +0 -0
  133. data/vendor/cmock/{iar → test/iar}/iar_v4/incIAR/AT91SAM7X256.inc +0 -0
  134. data/vendor/cmock/{iar → test/iar}/iar_v4/incIAR/AT91SAM7X256.rdf +0 -0
  135. data/vendor/cmock/{iar → test/iar}/iar_v4/incIAR/AT91SAM7X256.tcl +0 -0
  136. data/vendor/cmock/{iar → test/iar}/iar_v4/incIAR/AT91SAM7X256_inc.h +0 -0
  137. data/vendor/cmock/{iar → test/iar}/iar_v4/incIAR/ioat91sam7x256.h +0 -0
  138. data/vendor/cmock/{iar → test/iar}/iar_v4/incIAR/lib_AT91SAM7X256.h +0 -0
  139. data/vendor/cmock/{iar → test/iar}/iar_v4/settings/cmock_demo.cspy.bat +0 -0
  140. data/vendor/cmock/{iar → test/iar}/iar_v4/settings/cmock_demo.dbgdt +0 -0
  141. data/vendor/cmock/{iar → test/iar}/iar_v4/settings/cmock_demo.dni +0 -0
  142. data/vendor/cmock/{iar → test/iar}/iar_v4/settings/cmock_demo.wsdt +0 -0
  143. data/vendor/cmock/{iar → test/iar}/iar_v4/srcIAR/Cstartup.s79 +0 -0
  144. data/vendor/cmock/{iar → test/iar}/iar_v4/srcIAR/Cstartup_SAM7.c +0 -0
  145. data/vendor/cmock/{iar → test/iar}/iar_v5/Resource/SAM7_FLASH.mac +0 -0
  146. data/vendor/cmock/{iar → test/iar}/iar_v5/Resource/SAM7_RAM.mac +0 -0
  147. data/vendor/cmock/{iar → test/iar}/iar_v5/Resource/SAM7_SIM.mac +0 -0
  148. data/vendor/cmock/{iar → test/iar}/iar_v5/Resource/at91SAM7X256_FLASH.icf +0 -0
  149. data/vendor/cmock/{iar → test/iar}/iar_v5/Resource/at91SAM7X256_RAM.icf +0 -0
  150. data/vendor/cmock/{iar → test/iar}/iar_v5/cmock_demo.dep +0 -0
  151. data/vendor/cmock/{iar → test/iar}/iar_v5/cmock_demo.ewd +0 -0
  152. data/vendor/cmock/{iar → test/iar}/iar_v5/cmock_demo.ewp +0 -0
  153. data/vendor/cmock/{iar → test/iar}/iar_v5/cmock_demo.eww +0 -0
  154. data/vendor/cmock/{iar → test/iar}/iar_v5/incIAR/AT91SAM7X-EK.h +0 -0
  155. data/vendor/cmock/{iar → test/iar}/iar_v5/incIAR/AT91SAM7X256_inc.h +0 -0
  156. data/vendor/cmock/{iar → test/iar}/iar_v5/incIAR/lib_AT91SAM7X256.h +0 -0
  157. data/vendor/cmock/{iar → test/iar}/iar_v5/incIAR/project.h +0 -0
  158. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/BasicInterrupt_SAM7X.cspy.bat +0 -0
  159. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/BasicInterrupt_SAM7X.dbgdt +0 -0
  160. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/BasicInterrupt_SAM7X.dni +0 -0
  161. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/BasicInterrupt_SAM7X.wsdt +0 -0
  162. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/BasicInterrupt_SAM7X_FLASH_Debug.jlink +0 -0
  163. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/cmock_demo.cspy.bat +0 -0
  164. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/cmock_demo.dbgdt +0 -0
  165. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/cmock_demo.dni +0 -0
  166. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/cmock_demo.wsdt +0 -0
  167. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/cmock_demo_Binary.jlink +0 -0
  168. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/cmock_demo_FLASH_Debug.jlink +0 -0
  169. data/vendor/cmock/{iar → test/iar}/iar_v5/settings/cmock_demo_RAM_Debug.jlink +0 -0
  170. data/vendor/cmock/{iar → test/iar}/iar_v5/srcIAR/Cstartup.s +0 -0
  171. data/vendor/cmock/{iar → test/iar}/iar_v5/srcIAR/Cstartup_SAM7.c +0 -0
  172. data/vendor/cmock/{Rakefile → test/rakefile} +9 -9
  173. data/vendor/cmock/{rakefile_helper.rb → test/rakefile_helper.rb} +13 -13
  174. data/vendor/cmock/test/system/test_compilation/config.yml +4 -4
  175. data/vendor/cmock/test/system/test_interactions/parsing_challenges.yml +2 -0
  176. data/vendor/cmock/{targets → test/targets}/clang_strict.yml +11 -11
  177. data/vendor/cmock/{targets → test/targets}/gcc.yml +9 -9
  178. data/vendor/cmock/{targets → test/targets}/gcc_64.yml +9 -9
  179. data/vendor/cmock/{targets → test/targets}/gcc_tiny.yml +9 -9
  180. data/vendor/cmock/{targets → test/targets}/iar_arm_v4.yml +9 -9
  181. data/vendor/cmock/{targets → test/targets}/iar_arm_v5.yml +10 -10
  182. data/vendor/cmock/test/test_helper.rb +4 -8
  183. data/vendor/cmock/test/unit/cmock_config_test.rb +1 -1
  184. data/vendor/cmock/test/unit/cmock_file_writer_test.rb +1 -1
  185. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +1 -1
  186. data/vendor/cmock/test/unit/cmock_generator_plugin_array_test.rb +1 -1
  187. data/vendor/cmock/test/unit/cmock_generator_plugin_callback_test.rb +3 -1
  188. data/vendor/cmock/test/unit/cmock_generator_plugin_cexception_test.rb +1 -1
  189. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_a_test.rb +1 -1
  190. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +1 -1
  191. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_b_test.rb +1 -1
  192. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_arg_test.rb +1 -1
  193. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +1 -1
  194. data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +1 -1
  195. data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +1 -1
  196. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +15 -2
  197. data/vendor/cmock/test/unit/cmock_plugin_manager_test.rb +6 -10
  198. data/vendor/cmock/test/unit/cmock_unityhelper_parser_test.rb +1 -1
  199. data/vendor/cmock/vendor/c_exception/README.md +8 -2
  200. data/vendor/cmock/vendor/c_exception/docs/{readme.txt → CException.md} +133 -102
  201. data/vendor/cmock/vendor/c_exception/docs/ThrowTheSwitchCodingStandard.md +207 -0
  202. data/vendor/cmock/vendor/c_exception/vendor/unity/README.md +19 -10
  203. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +67 -64
  204. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +20 -20
  205. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_module.rb +149 -142
  206. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +234 -232
  207. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/parse_output.rb +220 -0
  208. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +108 -120
  209. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +11 -9
  210. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +1 -3
  211. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +6 -2
  212. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +45 -57
  213. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +207 -0
  214. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  215. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.md +716 -0
  216. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.md +398 -0
  217. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.md +191 -0
  218. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.md +242 -0
  219. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/makefile +22 -17
  220. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +1 -1
  221. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +1 -1
  222. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/makefile +16 -17
  223. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +15 -15
  224. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +93 -100
  225. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +4 -10
  226. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/unity_config.h +14 -26
  227. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +12 -12
  228. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +87 -88
  229. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +15 -8
  230. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +6 -1
  231. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +3 -0
  232. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +1 -0
  233. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +1 -1
  234. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.c +396 -330
  235. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.h +50 -4
  236. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity_internals.h +119 -84
  237. data/vendor/cmock/vendor/c_exception/vendor/unity/test/Makefile +17 -17
  238. data/vendor/cmock/vendor/c_exception/vendor/unity/test/rakefile +63 -3
  239. data/vendor/cmock/vendor/c_exception/vendor/unity/test/rakefile_helper.rb +108 -105
  240. data/vendor/cmock/vendor/c_exception/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -0
  241. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +0 -6
  242. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/clang_strict.yml +1 -9
  243. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +2 -0
  244. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +2 -2
  245. data/vendor/cmock/vendor/c_exception/vendor/unity/test/tests/test_generate_test_runner.rb +5 -5
  246. data/vendor/cmock/vendor/c_exception/vendor/unity/test/tests/testunity.c +1338 -151
  247. data/vendor/cmock/vendor/unity/README.md +19 -10
  248. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +67 -64
  249. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +20 -20
  250. data/vendor/cmock/vendor/unity/auto/generate_module.rb +149 -142
  251. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +234 -232
  252. data/vendor/cmock/vendor/unity/auto/parse_output.rb +220 -0
  253. data/vendor/cmock/vendor/unity/auto/stylize_as_junit.rb +108 -120
  254. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +11 -9
  255. data/vendor/cmock/vendor/unity/auto/type_sanitizer.rb +1 -3
  256. data/vendor/cmock/vendor/unity/auto/unity_test_summary.py +6 -2
  257. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +45 -57
  258. data/vendor/cmock/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +207 -0
  259. data/vendor/cmock/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  260. data/vendor/cmock/vendor/unity/docs/UnityAssertionsReference.md +716 -0
  261. data/vendor/cmock/vendor/unity/docs/UnityConfigurationGuide.md +398 -0
  262. data/vendor/cmock/vendor/unity/docs/UnityGettingStartedGuide.md +191 -0
  263. data/vendor/cmock/vendor/unity/docs/UnityHelperScriptsGuide.md +242 -0
  264. data/vendor/cmock/vendor/unity/examples/example_1/makefile +22 -17
  265. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +1 -1
  266. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +1 -1
  267. data/vendor/cmock/vendor/unity/examples/example_2/makefile +16 -17
  268. data/vendor/cmock/vendor/unity/examples/example_3/rakefile.rb +15 -15
  269. data/vendor/cmock/vendor/unity/examples/example_3/rakefile_helper.rb +93 -100
  270. data/vendor/cmock/vendor/unity/examples/example_3/readme.txt +4 -10
  271. data/vendor/cmock/vendor/unity/examples/unity_config.h +14 -26
  272. data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +12 -12
  273. data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +87 -88
  274. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +15 -8
  275. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +6 -1
  276. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +3 -0
  277. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +1 -0
  278. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +1 -1
  279. data/vendor/cmock/vendor/unity/release/version.info +1 -1
  280. data/vendor/cmock/vendor/unity/src/unity.c +396 -330
  281. data/vendor/cmock/vendor/unity/src/unity.h +50 -4
  282. data/vendor/cmock/vendor/unity/src/unity_internals.h +119 -84
  283. data/vendor/cmock/vendor/unity/test/Makefile +17 -17
  284. data/vendor/cmock/vendor/unity/test/rakefile +63 -3
  285. data/vendor/cmock/vendor/unity/test/rakefile_helper.rb +108 -105
  286. data/vendor/cmock/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -0
  287. data/vendor/cmock/vendor/unity/test/targets/clang_file.yml +0 -6
  288. data/vendor/cmock/vendor/unity/test/targets/clang_strict.yml +1 -9
  289. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +2 -0
  290. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +2 -2
  291. data/vendor/cmock/vendor/unity/test/tests/test_generate_test_runner.rb +5 -5
  292. data/vendor/cmock/vendor/unity/test/tests/testunity.c +1338 -151
  293. data/vendor/deep_merge/Rakefile +1 -1
  294. data/vendor/unity/README.md +19 -10
  295. data/vendor/unity/auto/colour_prompt.rb +67 -64
  296. data/vendor/unity/auto/colour_reporter.rb +20 -20
  297. data/vendor/unity/auto/generate_module.rb +149 -142
  298. data/vendor/unity/auto/generate_test_runner.rb +234 -232
  299. data/vendor/unity/auto/parse_output.rb +220 -0
  300. data/vendor/unity/auto/stylize_as_junit.rb +108 -120
  301. data/vendor/unity/auto/test_file_filter.rb +11 -9
  302. data/vendor/unity/auto/type_sanitizer.rb +1 -3
  303. data/vendor/unity/auto/unity_test_summary.py +6 -2
  304. data/vendor/unity/auto/unity_test_summary.rb +45 -57
  305. data/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +207 -0
  306. data/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  307. data/vendor/unity/docs/UnityAssertionsReference.md +716 -0
  308. data/vendor/unity/docs/UnityConfigurationGuide.md +398 -0
  309. data/vendor/unity/docs/UnityGettingStartedGuide.md +191 -0
  310. data/vendor/unity/docs/UnityHelperScriptsGuide.md +242 -0
  311. data/vendor/unity/examples/example_1/makefile +22 -17
  312. data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +1 -1
  313. data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +1 -1
  314. data/vendor/unity/examples/example_2/makefile +16 -17
  315. data/vendor/unity/examples/example_3/rakefile.rb +15 -15
  316. data/vendor/unity/examples/example_3/rakefile_helper.rb +93 -100
  317. data/vendor/unity/examples/example_3/readme.txt +4 -10
  318. data/vendor/unity/examples/unity_config.h +14 -26
  319. data/vendor/unity/extras/fixture/rakefile.rb +12 -12
  320. data/vendor/unity/extras/fixture/rakefile_helper.rb +87 -88
  321. data/vendor/unity/extras/fixture/src/unity_fixture.c +15 -8
  322. data/vendor/unity/extras/fixture/src/unity_fixture.h +6 -1
  323. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +3 -0
  324. data/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +1 -0
  325. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +1 -1
  326. data/vendor/unity/release/version.info +1 -1
  327. data/vendor/unity/src/unity.c +396 -330
  328. data/vendor/unity/src/unity.h +50 -4
  329. data/vendor/unity/src/unity_internals.h +119 -84
  330. data/vendor/unity/test/Makefile +17 -17
  331. data/vendor/unity/test/rakefile +63 -3
  332. data/vendor/unity/test/rakefile_helper.rb +108 -105
  333. data/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -0
  334. data/vendor/unity/test/targets/clang_file.yml +0 -6
  335. data/vendor/unity/test/targets/clang_strict.yml +1 -9
  336. data/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +2 -0
  337. data/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +2 -2
  338. data/vendor/unity/test/tests/test_generate_test_runner.rb +5 -5
  339. data/vendor/unity/test/tests/testunity.c +1338 -151
  340. metadata +102 -157
  341. data/test_graveyard/integration/paths.yml +0 -17
  342. data/test_graveyard/integration/paths_test.rb +0 -80
  343. data/test_graveyard/integration/rake_rules_aux_dependencies_test.rb +0 -75
  344. data/test_graveyard/integration/rake_rules_cmock_test.rb +0 -74
  345. data/test_graveyard/integration/rake_rules_preprocess_test.rb +0 -178
  346. data/test_graveyard/integration/rake_rules_test.rb +0 -268
  347. data/test_graveyard/integration/rake_tasks_test.rb +0 -103
  348. data/test_graveyard/integration_test_helper.rb +0 -34
  349. data/test_graveyard/rakefile_rules.rb +0 -10
  350. data/test_graveyard/rakefile_rules_aux_dependencies.rb +0 -10
  351. data/test_graveyard/rakefile_rules_cmock.rb +0 -10
  352. data/test_graveyard/rakefile_rules_preprocess.rb +0 -10
  353. data/test_graveyard/rakefile_tasks.rb +0 -10
  354. data/test_graveyard/system/file_system_dependencies.yml +0 -20
  355. data/test_graveyard/system/file_system_kitchen_sink.yml +0 -20
  356. data/test_graveyard/system/file_system_mocks.yml +0 -20
  357. data/test_graveyard/system/file_system_preprocess.yml +0 -20
  358. data/test_graveyard/system/file_system_simple.yml +0 -20
  359. data/test_graveyard/system/file_system_test.rb +0 -78
  360. data/test_graveyard/system/mocks/include/a_file.h +0 -2
  361. data/test_graveyard/system/mocks/include/other_stuff.h +0 -2
  362. data/test_graveyard/system/mocks/include/stuff.h +0 -3
  363. data/test_graveyard/system/mocks/source/a_file.c +0 -9
  364. data/test_graveyard/system/mocks/test/test_a_file.c +0 -41
  365. data/test_graveyard/system/mocks/test/test_no_file.c +0 -14
  366. data/test_graveyard/system/project_mocks.yml +0 -43
  367. data/test_graveyard/system/project_mocks_test.rb +0 -38
  368. data/test_graveyard/system/project_simple.yml +0 -36
  369. data/test_graveyard/system/project_simple_test.rb +0 -39
  370. data/test_graveyard/system/rule_mocks_test.rb +0 -44
  371. data/test_graveyard/system/rule_runners_test.rb +0 -44
  372. data/test_graveyard/system/simple/include/other_stuff.h +0 -2
  373. data/test_graveyard/system/simple/include/stuff.h +0 -3
  374. data/test_graveyard/system/simple/source/other_stuff.c +0 -6
  375. data/test_graveyard/system/simple/source/stuff.c +0 -7
  376. data/test_graveyard/system/simple/test/test_other_stuff.c +0 -30
  377. data/test_graveyard/system/simple/test/test_stuff.c +0 -51
  378. data/test_graveyard/system_test_helper.rb +0 -73
  379. data/test_graveyard/test_helper.rb +0 -93
  380. data/test_graveyard/unit/busted/configurator_builder_test.rb +0 -569
  381. data/test_graveyard/unit/busted/configurator_helper_test.rb +0 -234
  382. data/test_graveyard/unit/busted/configurator_test.rb +0 -232
  383. data/test_graveyard/unit/busted/configurator_validator_test.rb +0 -169
  384. data/test_graveyard/unit/busted/deep_merge_fix_test.rb +0 -55
  385. data/test_graveyard/unit/busted/dependinator_test.rb +0 -129
  386. data/test_graveyard/unit/busted/file_finder_helper_test.rb +0 -45
  387. data/test_graveyard/unit/busted/file_finder_test.rb +0 -114
  388. data/test_graveyard/unit/busted/file_path_utils_test.rb +0 -97
  389. data/test_graveyard/unit/busted/file_system_utils_test.rb +0 -21
  390. data/test_graveyard/unit/busted/generator_test.rb +0 -187
  391. data/test_graveyard/unit/busted/generator_test_results_test.rb +0 -129
  392. data/test_graveyard/unit/busted/generator_test_runner_test.rb +0 -475
  393. data/test_graveyard/unit/busted/preprocessinator_file_handler_test.rb +0 -39
  394. data/test_graveyard/unit/busted/preprocessinator_helper_test.rb +0 -156
  395. data/test_graveyard/unit/busted/preprocessinator_includes_handler_test.rb +0 -93
  396. data/test_graveyard/unit/busted/preprocessinator_test.rb +0 -57
  397. data/test_graveyard/unit/busted/project_file_loader_test.rb +0 -142
  398. data/test_graveyard/unit/busted/setupinator_test.rb +0 -45
  399. data/test_graveyard/unit/busted/streaminator_test.rb +0 -49
  400. data/test_graveyard/unit/busted/task_invoker_test.rb +0 -69
  401. data/test_graveyard/unit/busted/test_includes_extractor_test.rb +0 -111
  402. data/test_graveyard/unit/busted/test_invoker_helper_test.rb +0 -62
  403. data/test_graveyard/unit/busted/test_invoker_test.rb +0 -47
  404. data/test_graveyard/unit/busted/tool_executor_helper_test.rb +0 -100
  405. data/test_graveyard/unit/busted/tool_executor_test.rb +0 -351
  406. data/test_graveyard/unit/busted/verbosinator_test.rb +0 -65
  407. data/test_graveyard/unit/preprocessinator_extractor_test.rb +0 -731
  408. data/test_graveyard/unit_test_helper.rb +0 -16
  409. data/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  410. data/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  411. data/vendor/c_exception/vendor/unity/auto/parseOutput.rb +0 -191
  412. data/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.pdf +0 -0
  413. data/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.pdf +0 -0
  414. data/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.pdf +0 -0
  415. data/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.pdf +0 -0
  416. data/vendor/cmock/docs/CMock Summary.odt +0 -0
  417. data/vendor/cmock/docs/CMock Summary.pdf +0 -0
  418. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  419. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  420. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/parseOutput.rb +0 -191
  421. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.pdf +0 -0
  422. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.pdf +0 -0
  423. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.pdf +0 -0
  424. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.pdf +0 -0
  425. data/vendor/cmock/vendor/unity/auto/parseOutput.rb +0 -191
  426. data/vendor/cmock/vendor/unity/docs/UnityAssertionsReference.pdf +0 -0
  427. data/vendor/cmock/vendor/unity/docs/UnityConfigurationGuide.pdf +0 -0
  428. data/vendor/cmock/vendor/unity/docs/UnityGettingStartedGuide.pdf +0 -0
  429. data/vendor/cmock/vendor/unity/docs/UnityHelperScriptsGuide.pdf +0 -0
  430. data/vendor/unity/auto/parseOutput.rb +0 -191
  431. data/vendor/unity/docs/UnityAssertionsReference.pdf +0 -0
  432. data/vendor/unity/docs/UnityConfigurationGuide.pdf +0 -0
  433. data/vendor/unity/docs/UnityGettingStartedGuide.pdf +0 -0
  434. data/vendor/unity/docs/UnityHelperScriptsGuide.pdf +0 -0
@@ -1,351 +0,0 @@
1
- require File.dirname(__FILE__) + '/../unit_test_helper'
2
- require 'ceedling/tool_executor'
3
- require 'yaml'
4
-
5
-
6
- NIL_GLOBAL_CONSTANT = nil
7
-
8
- class ToolExecutorTest < Test::Unit::TestCase
9
-
10
- def setup
11
- objects = create_mocks(:configurator, :tool_executor_helper, :streaminator, :system_wrapper)
12
- @tool_executor = ToolExecutor.new(objects)
13
- end
14
-
15
- def teardown
16
- end
17
-
18
-
19
- ######## Build Command Line #########
20
-
21
- should "build a command line that contains only an executable if no arguments or blank arguments provided" do
22
-
23
- yaml1 = %Q[
24
- :tool1:
25
- :name: test_compiler
26
- :executable: tool.exe
27
- :arguments:
28
- ].left_margin(0)
29
- config1 = YAML.load(yaml1)
30
-
31
- yaml2 = %Q[
32
- :tool2:
33
- :name: test_compiler
34
- :executable: tool.exe
35
- :arguments:
36
- -
37
- - ' '
38
- ].left_margin(0)
39
- config2 = YAML.load(yaml2)
40
-
41
- assert_equal('tool.exe', @tool_executor.build_command_line(config1[:tool1]))
42
- assert_equal('tool.exe', @tool_executor.build_command_line(config2[:tool2]))
43
- end
44
-
45
-
46
- should "build a command line where the executable is specified by argument parameter input replacement" do
47
-
48
- yaml = %Q[
49
- :tool:
50
- :name: test_compiler
51
- :executable: ${1}
52
- :arguments:
53
- - '> ${2}'
54
- ].left_margin(0)
55
- config = YAML.load(yaml)
56
-
57
- assert_equal(
58
- 'a_tool > files/build/tmp/file.out',
59
- @tool_executor.build_command_line(config[:tool], 'a_tool', 'files/build/tmp/file.out'))
60
-
61
- assert_equal(
62
- 'test.exe > results.out',
63
- @tool_executor.build_command_line(config[:tool], 'test.exe', 'results.out'))
64
- end
65
-
66
-
67
- should "build a command line where the executable is specified by argument parameter input replacement and ruby string substitution" do
68
-
69
- # use funky string construction to prevent ruby from performing actual string substitution we're simulating
70
- filepath_string = "\#{" + "File.join(A_PATH, '${2}'}"
71
-
72
- yaml = %Q[
73
- :tool:
74
- :name: test_compiler
75
- :executable: ${1}
76
- :arguments:
77
- - "> #{filepath_string}"
78
- ].left_margin(0)
79
- config = YAML.load(yaml)
80
-
81
- @system_wrapper.expects.eval("> \#{" + "File.join(A_PATH, 'file.out'}").returns('> files/build/tmp/file.out')
82
- @system_wrapper.expects.eval("> \#{" + "File.join(A_PATH, 'results.out'}").returns('> files/build/tmp/results.out')
83
-
84
- assert_equal(
85
- 'a_tool > files/build/tmp/file.out',
86
- @tool_executor.build_command_line(config[:tool], 'a_tool', 'file.out'))
87
-
88
- assert_equal(
89
- 'test.exe > files/build/tmp/results.out',
90
- @tool_executor.build_command_line(config[:tool], 'test.exe', 'results.out'))
91
- end
92
-
93
-
94
- should "complain when building a command line if tool executable is specified with a replacement parameter but referenced input is nil" do
95
-
96
- yaml = %Q[
97
- :tool:
98
- :name: tool_sample
99
- :executable: ${1}
100
- :arguments: []
101
- ].left_margin(0)
102
- config = YAML.load(yaml)
103
-
104
- @streaminator.expects.stderr_puts("ERROR: Tool 'tool_sample' expected valid argument data to accompany replacement operator ${1}.", Verbosity::ERRORS)
105
-
106
- assert_raise(RuntimeError) { @tool_executor.build_command_line(config[:tool], nil) }
107
- end
108
-
109
-
110
- should "build a command line from simple arguments and global constants using generic '$' string replacement indicator" do
111
-
112
- redefine_global_constant('DEFINES_TEST', ['WALDORF', 'STATLER'])
113
- redefine_global_constant('COLLECTION_ALL_INCLUDE_PATHS', ['files/include', 'lib/modules/include'])
114
- redefine_global_constant('PROJECT_BUILD_ROOT', 'project/files/tests/build')
115
-
116
- yaml = %Q[
117
- :tool:
118
- :name: test_compiler
119
- :executable: hecklers.exe
120
- :arguments:
121
- - '--dlib_config config.h'
122
- - -D$: DEFINES_TEST
123
- - --no_cse
124
- - -I"$": COLLECTION_ALL_INCLUDE_PATHS
125
- - -I"$/mocks": PROJECT_BUILD_ROOT
126
- - --no_unroll
127
- ].left_margin(0)
128
- config = YAML.load(yaml)
129
-
130
- command_line = 'hecklers.exe --dlib_config config.h -DWALDORF -DSTATLER --no_cse -I"files/include" -I"lib/modules/include" -I"project/files/tests/build/mocks" --no_unroll'
131
-
132
- assert_equal(command_line, @tool_executor.build_command_line(config[:tool]))
133
- end
134
-
135
-
136
- should "build a command line from simple arguments and inline yaml arrays using '$' string replacement indicator" do
137
-
138
- yaml = %Q[
139
- :tool:
140
- :name: test_compiler
141
- :executable: compiler.exe
142
- :arguments:
143
- - --no_cse
144
- - '--D $':
145
- - DIFFERENT_DEFINE
146
- - STILL_ANOTHER_DEFINE
147
- - $:
148
- - A
149
- - B
150
- - --a_setting
151
- ].left_margin(0)
152
- config = YAML.load(yaml)
153
-
154
- command_line = 'compiler.exe --no_cse --D DIFFERENT_DEFINE --D STILL_ANOTHER_DEFINE A B --a_setting'
155
-
156
- assert_equal(command_line, @tool_executor.build_command_line(config[:tool]))
157
- end
158
-
159
-
160
- should "build a command line with duplicates in argument array" do
161
-
162
- yaml = %Q[
163
- :tool:
164
- :name: test_compiler
165
- :executable: compiler.exe
166
- :arguments:
167
- - ${1}
168
- - --option1
169
- - --option1
170
- - '-D $':
171
- - DEFINE_A
172
- - DEFINE_A
173
- - $:
174
- - Z
175
- - Z
176
- - ${1}
177
- ].left_margin(0)
178
- config = YAML.load(yaml)
179
-
180
- command_line = 'compiler.exe arg --option1 --option1 -D DEFINE_A -D DEFINE_A Z Z arg'
181
-
182
- assert_equal(command_line, @tool_executor.build_command_line(config[:tool], 'arg'))
183
- end
184
-
185
-
186
- should "build a command line using ruby string substitution for simple arguments and '$' string replacement" do
187
-
188
- # use funky string construction to prevent ruby from performing actual string substitution we're simulating
189
- abc_string = "-\#{" + "['a', 'b', 'c'].join}"
190
- num_string = "\#{" + "s = String.new; (1..9).to_a.each {|val| s += val.to_s}}"
191
- sym_string = "\#{" + "\'*!~\'.reverse}"
192
-
193
- @system_wrapper.expects.eval(abc_string).returns('-abc')
194
- @system_wrapper.expects.eval(num_string).returns('123456789')
195
- @system_wrapper.expects.eval(sym_string).returns('~!*')
196
-
197
- yaml = %Q[
198
- :tool:
199
- :name: test_compiler
200
- :executable: compiler.exe
201
- :arguments:
202
- - "#{abc_string}"
203
- - '--i $': "#{num_string}"
204
- - '--o $':
205
- - "#{sym_string}"
206
- ].left_margin(0)
207
- config = YAML.load(yaml)
208
-
209
- command_line = 'compiler.exe -abc --i 123456789 --o ~!*'
210
-
211
- assert_equal(command_line, @tool_executor.build_command_line(config[:tool]))
212
- end
213
-
214
-
215
- should "build a command line from simple arguments (including non-strings), inline yaml arrays, and input/output specifiers using string replacement indicators" do
216
-
217
- yaml = %Q[
218
- :tool:
219
- :name: test_compiler
220
- :executable: compiler.exe
221
- :arguments:
222
- - --no_cse
223
- - '-flag-${3}'
224
- - ${1}
225
- - '-D$':
226
- - ELIGHT
227
- - ELICIOUS
228
- - '-verbose:${4}'
229
- - '-o ${2}'
230
- ].left_margin(0)
231
- config = YAML.load(yaml)
232
-
233
- command_line = 'compiler.exe --no_cse -flag-1 -flag-2 process_me.c me_too.c and_me_also.c -DELIGHT -DELICIOUS -verbose:5 -o processed.o'
234
-
235
- assert_equal(command_line, @tool_executor.build_command_line(config[:tool], ['process_me.c', 'me_too.c', 'and_me_also.c'], 'processed.o', [1, 2], 5))
236
- end
237
-
238
-
239
- should "build a command line without replacing an escaped string replacement indicator" do
240
-
241
- yaml = %Q[
242
- :tool:
243
- :name: test_compiler
244
- :executable: program
245
- :arguments:
246
- - --cse=\\$abc
247
- - '-\\$D$':
248
- - ELIGHT
249
- - ELICIOUS
250
- - '-o ${2}.\\$'
251
- ].left_margin(0)
252
- config = YAML.load(yaml)
253
-
254
- command_line = 'program --cse=$abc -$DELIGHT -$DELICIOUS -o processed1.$ -o processed2.$'
255
-
256
- assert_equal(command_line, @tool_executor.build_command_line(config[:tool], nil, ['processed1', 'processed2']))
257
- end
258
-
259
-
260
- should "complain when building a command line if a referenced constant is nil" do
261
-
262
- yaml = %Q[
263
- :tool:
264
- :name: test_compiler
265
- :executable: tool.exe
266
- :arguments:
267
- - -x$: NIL_GLOBAL_CONSTANT
268
- ].left_margin(0)
269
- config = YAML.load(yaml)
270
-
271
- @streaminator.expects.stderr_puts("ERROR: Tool 'test_compiler' found constant 'NIL_GLOBAL_CONSTANT' to be nil.", Verbosity::ERRORS)
272
-
273
- assert_raise(RuntimeError) { @tool_executor.build_command_line(config[:tool]) }
274
- end
275
-
276
-
277
- should "complain when building a command line if expansion elements are nil" do
278
-
279
- yaml = %Q[
280
- :tool:
281
- :name: test_compiler
282
- :executable: tool.exe
283
- :arguments:
284
- - -x$:
285
- ].left_margin(0)
286
- config = YAML.load(yaml)
287
-
288
- @streaminator.expects.stderr_puts("ERROR: Tool 'test_compiler' could not expand nil elements for format string '-x$'.", Verbosity::ERRORS)
289
-
290
- assert_raise(RuntimeError) { @tool_executor.build_command_line(config[:tool]) }
291
- end
292
-
293
-
294
- should "complain when building a command line if argument replacement parameters are specified but referenced input is nil" do
295
-
296
- yaml = %Q[
297
- :tool:
298
- :name: classic_movie
299
- :executable: harry
300
- :arguments:
301
- - ${1}
302
- ].left_margin(0)
303
- config = YAML.load(yaml)
304
-
305
- @streaminator.expects.stderr_puts("ERROR: Tool 'classic_movie' expected valid argument data to accompany replacement operator ${1}.", Verbosity::ERRORS)
306
-
307
- assert_raise(RuntimeError) { @tool_executor.build_command_line(config[:tool], nil, 'sally') }
308
- end
309
-
310
-
311
- should "complain when building a command line if argument replacement parameters are specified but no optional arguments are given" do
312
-
313
- yaml = %Q[
314
- :tools_a_tool:
315
- :name: take_a_dip_in_the_tool
316
- :executable: harry
317
- :arguments:
318
- - ${2}
319
- ].left_margin(0)
320
- config = YAML.load(yaml)
321
-
322
- @streaminator.expects.stderr_puts("ERROR: Tool 'take_a_dip_in_the_tool' expected valid argument data to accompany replacement operator ${2}.", Verbosity::ERRORS)
323
-
324
- assert_raise(RuntimeError) { @tool_executor.build_command_line(config[:tools_a_tool]) }
325
- end
326
-
327
- ######## Shell Out & Execute Command #########
328
-
329
- should "shell out & execute command with additional arguments" do
330
- shell_result = {:output => 'stdout string', :exit_code => 0}
331
-
332
- @system_wrapper.expects.shell_execute('shell_command arg1 arg2').returns(shell_result)
333
-
334
- @tool_executor_helper.expects.print_happy_results('shell_command arg1 arg2', shell_result)
335
- @tool_executor_helper.expects.print_error_results('shell_command arg1 arg2', shell_result)
336
-
337
- assert_equal('stdout string', @tool_executor.exec(' shell_command', ['arg1', 'arg2']))
338
- end
339
-
340
- should "shell out & execute command but raise on non-zero exit code" do
341
- shell_result = {:output => '', :exit_code => 1}
342
-
343
- @system_wrapper.expects.shell_execute('shell_fish').returns(shell_result)
344
-
345
- @tool_executor_helper.expects.print_happy_results('shell_fish', shell_result)
346
- @tool_executor_helper.expects.print_error_results('shell_fish', shell_result)
347
-
348
- assert_raise(RuntimeError){ @tool_executor.exec('shell_fish') }
349
- end
350
-
351
- end
@@ -1,65 +0,0 @@
1
- require File.dirname(__FILE__) + '/../unit_test_helper'
2
- require 'ceedling/verbosinator'
3
-
4
-
5
- class VerbosinatorTest < Test::Unit::TestCase
6
-
7
- def setup
8
- objects = create_mocks(:configurator)
9
- @verbosinator = Verbosinator.new(objects)
10
- end
11
-
12
- def teardown
13
- end
14
-
15
-
16
- should "allow output if verbosity level of ERRORS" do
17
- @configurator.expects.project_verbosity.returns(Verbosity::ERRORS)
18
- @configurator.expects.project_verbosity.returns(Verbosity::ERRORS)
19
- @configurator.expects.project_verbosity.returns(Verbosity::ERRORS)
20
- @configurator.expects.project_verbosity.returns(Verbosity::ERRORS)
21
-
22
- assert(@verbosinator.should_output?(Verbosity::ERRORS))
23
- assert_equal(false, @verbosinator.should_output?(Verbosity::COMPLAIN))
24
- assert_equal(false, @verbosinator.should_output?(Verbosity::NORMAL))
25
- assert_equal(false, @verbosinator.should_output?(Verbosity::OBNOXIOUS))
26
- end
27
-
28
- should "allow output if verbosity level of COMPLAIN" do
29
- @configurator.expects.project_verbosity.returns(Verbosity::COMPLAIN)
30
- @configurator.expects.project_verbosity.returns(Verbosity::COMPLAIN)
31
- @configurator.expects.project_verbosity.returns(Verbosity::COMPLAIN)
32
- @configurator.expects.project_verbosity.returns(Verbosity::COMPLAIN)
33
-
34
- assert(@verbosinator.should_output?(Verbosity::ERRORS))
35
- assert(@verbosinator.should_output?(Verbosity::COMPLAIN))
36
- assert_equal(false, @verbosinator.should_output?(Verbosity::NORMAL))
37
- assert_equal(false, @verbosinator.should_output?(Verbosity::OBNOXIOUS))
38
- end
39
-
40
- should "allow output if verbosity level of NORMAL" do
41
- @configurator.expects.project_verbosity.returns(Verbosity::NORMAL)
42
- @configurator.expects.project_verbosity.returns(Verbosity::NORMAL)
43
- @configurator.expects.project_verbosity.returns(Verbosity::NORMAL)
44
- @configurator.expects.project_verbosity.returns(Verbosity::NORMAL)
45
-
46
- assert(@verbosinator.should_output?(Verbosity::ERRORS))
47
- assert(@verbosinator.should_output?(Verbosity::COMPLAIN))
48
- assert(@verbosinator.should_output?(Verbosity::NORMAL))
49
- assert_equal(false, @verbosinator.should_output?(Verbosity::OBNOXIOUS))
50
- end
51
-
52
- should "allow output if verbosity level of OBNOXIOUS" do
53
- @configurator.expects.project_verbosity.returns(Verbosity::OBNOXIOUS)
54
- @configurator.expects.project_verbosity.returns(Verbosity::OBNOXIOUS)
55
- @configurator.expects.project_verbosity.returns(Verbosity::OBNOXIOUS)
56
- @configurator.expects.project_verbosity.returns(Verbosity::OBNOXIOUS)
57
-
58
- assert(@verbosinator.should_output?(Verbosity::ERRORS))
59
- assert(@verbosinator.should_output?(Verbosity::COMPLAIN))
60
- assert(@verbosinator.should_output?(Verbosity::NORMAL))
61
- assert(@verbosinator.should_output?(Verbosity::OBNOXIOUS))
62
- end
63
-
64
- end
65
-
@@ -1,731 +0,0 @@
1
- require File.dirname(__FILE__) + '/../unit_test_helper'
2
- require 'ceedling/preprocessinator_extractor'
3
-
4
-
5
- class PreprocessinatorExtractorTest < Test::Unit::TestCase
6
-
7
- def setup
8
- objects = create_mocks(:file_wrapper)
9
- @preprocessinator_extractor = PreprocessinatorExtractor.new(objects)
10
- end
11
-
12
- def teardown
13
- end
14
-
15
-
16
- should "extract base file contents from preprocessed file regardless of whitespace and formatting" do
17
-
18
- preprocessed_file_contents = %Q[
19
- # 1 blah blah blah
20
- #1 "/home/project/TestIcle.c" 1
21
- Mary
22
- Mary
23
- Quite
24
- Contrary
25
- #37 yackity shmackity
26
-
27
- # TestIcle.c
28
- Jack
29
- and
30
- Jill
31
- # 45
32
-
33
- # TestIcle.c
34
- #pragma pack()
35
-
36
- Went up the hill
37
- ].left_margin(0)
38
-
39
-
40
- expected_extraction_contents = %Q[
41
- Mary
42
- Mary
43
- Quite
44
- Contrary
45
- Jack
46
- and
47
- Jill
48
- #pragma pack()
49
-
50
- Went up the hill
51
- ].left_margin(0)
52
-
53
-
54
- @file_wrapper.expects.readlines('project/build/preprocess/TestIcle.c').returns(preprocessed_file_contents.split("\n"))
55
-
56
- assert_equal(
57
- expected_extraction_contents.strip.split("\n"),
58
- @preprocessinator_extractor.extract_base_file_from_preprocessed_expansion('project/build/preprocess/TestIcle.c'))
59
- end
60
-
61
-
62
- should "extract real base file contents from real preprocessed file output" do
63
-
64
- preprocessed_file_contents = %Q[
65
- # 1 "test/system/a_project/test/test_a_file.c"
66
- # 1 "<built-in>"
67
- # 1 "<command-line>"
68
- # 1 "test/system/a_project/test/test_a_file.c"
69
- # 1 "/home/svn/ceedling/vendor/unity/src/unity.h" 1
70
-
71
-
72
-
73
-
74
-
75
- # 1 "/usr/include/stdio.h" 1 3 4
76
- # 64 "/usr/include/stdio.h" 3 4
77
- # 1 "/usr/include/_types.h" 1 3 4
78
- # 27 "/usr/include/_types.h" 3 4
79
- # 1 "/usr/include/sys/_types.h" 1 3 4
80
- # 32 "/usr/include/sys/_types.h" 3 4
81
- # 1 "/usr/include/sys/cdefs.h" 1 3 4
82
- # 33 "/usr/include/sys/_types.h" 2 3 4
83
- # 1 "/usr/include/machine/_types.h" 1 3 4
84
- # 34 "/usr/include/machine/_types.h" 3 4
85
- # 1 "/usr/include/i386/_types.h" 1 3 4
86
- # 37 "/usr/include/i386/_types.h" 3 4
87
- typedef signed char __int8_t;
88
-
89
-
90
-
91
- typedef unsigned char __uint8_t;
92
- typedef short __int16_t;
93
- typedef unsigned short __uint16_t;
94
- typedef int __int32_t;
95
- typedef unsigned int __uint32_t;
96
- typedef long long __int64_t;
97
- typedef unsigned long long __uint64_t;
98
-
99
- typedef long __darwin_intptr_t;
100
- typedef unsigned int __darwin_natural_t;
101
- # 70 "/usr/include/i386/_types.h" 3 4
102
- typedef int __darwin_ct_rune_t;
103
-
104
-
105
-
106
-
107
-
108
- typedef union {
109
- char __mbstate8[128];
110
- long long _mbstateL;
111
- } __mbstate_t;
112
-
113
- typedef __mbstate_t __darwin_mbstate_t;
114
-
115
-
116
- typedef long int __darwin_ptrdiff_t;
117
-
118
-
119
-
120
-
121
-
122
- typedef long unsigned int __darwin_size_t;
123
-
124
-
125
-
126
-
127
-
128
- typedef __builtin_va_list __darwin_va_list;
129
-
130
-
131
-
132
-
133
-
134
- typedef int __darwin_wchar_t;
135
-
136
-
137
-
138
-
139
- typedef __darwin_wchar_t __darwin_rune_t;
140
-
141
-
142
- typedef int __darwin_wint_t;
143
-
144
-
145
-
146
-
147
- typedef unsigned long __darwin_clock_t;
148
- typedef __uint32_t __darwin_socklen_t;
149
- typedef long __darwin_ssize_t;
150
- typedef long __darwin_time_t;
151
- # 35 "/usr/include/machine/_types.h" 2 3 4
152
- # 34 "/usr/include/sys/_types.h" 2 3 4
153
- # 58 "/usr/include/sys/_types.h" 3 4
154
- struct __darwin_pthread_handler_rec
155
- {
156
- void (*__routine)(void *);
157
- void *__arg;
158
- struct __darwin_pthread_handler_rec *__next;
159
- };
160
- struct _opaque_pthread_attr_t { long __sig; char __opaque[56]; };
161
- struct _opaque_pthread_cond_t { long __sig; char __opaque[40]; };
162
- struct _opaque_pthread_condattr_t { long __sig; char __opaque[8]; };
163
- struct _opaque_pthread_mutex_t { long __sig; char __opaque[56]; };
164
- struct _opaque_pthread_mutexattr_t { long __sig; char __opaque[8]; };
165
- struct _opaque_pthread_once_t { long __sig; char __opaque[8]; };
166
- struct _opaque_pthread_rwlock_t { long __sig; char __opaque[192]; };
167
- struct _opaque_pthread_rwlockattr_t { long __sig; char __opaque[16]; };
168
- struct _opaque_pthread_t { long __sig; struct __darwin_pthread_handler_rec *__cleanup_stack; char __opaque[1168]; };
169
- # 94 "/usr/include/sys/_types.h" 3 4
170
- typedef __int64_t __darwin_blkcnt_t;
171
- typedef __int32_t __darwin_blksize_t;
172
- typedef __int32_t __darwin_dev_t;
173
- typedef unsigned int __darwin_fsblkcnt_t;
174
- typedef unsigned int __darwin_fsfilcnt_t;
175
- typedef __uint32_t __darwin_gid_t;
176
- typedef __uint32_t __darwin_id_t;
177
- typedef __uint64_t __darwin_ino64_t;
178
-
179
- typedef __darwin_ino64_t __darwin_ino_t;
180
-
181
-
182
-
183
- typedef __darwin_natural_t __darwin_mach_port_name_t;
184
- typedef __darwin_mach_port_name_t __darwin_mach_port_t;
185
- typedef __uint16_t __darwin_mode_t;
186
- typedef __int64_t __darwin_off_t;
187
- typedef __int32_t __darwin_pid_t;
188
- typedef struct _opaque_pthread_attr_t
189
- __darwin_pthread_attr_t;
190
- typedef struct _opaque_pthread_cond_t
191
- __darwin_pthread_cond_t;
192
- typedef struct _opaque_pthread_condattr_t
193
- __darwin_pthread_condattr_t;
194
- typedef unsigned long __darwin_pthread_key_t;
195
- typedef struct _opaque_pthread_mutex_t
196
- __darwin_pthread_mutex_t;
197
- typedef struct _opaque_pthread_mutexattr_t
198
- __darwin_pthread_mutexattr_t;
199
- typedef struct _opaque_pthread_once_t
200
- __darwin_pthread_once_t;
201
- typedef struct _opaque_pthread_rwlock_t
202
- __darwin_pthread_rwlock_t;
203
- typedef struct _opaque_pthread_rwlockattr_t
204
- __darwin_pthread_rwlockattr_t;
205
- typedef struct _opaque_pthread_t
206
- *__darwin_pthread_t;
207
- typedef __uint32_t __darwin_sigset_t;
208
- typedef __int32_t __darwin_suseconds_t;
209
- typedef __uint32_t __darwin_uid_t;
210
- typedef __uint32_t __darwin_useconds_t;
211
- typedef unsigned char __darwin_uuid_t[16];
212
- typedef char __darwin_uuid_string_t[37];
213
- # 28 "/usr/include/_types.h" 2 3 4
214
- # 39 "/usr/include/_types.h" 3 4
215
- typedef int __darwin_nl_item;
216
- typedef int __darwin_wctrans_t;
217
-
218
- typedef __uint32_t __darwin_wctype_t;
219
- # 65 "/usr/include/stdio.h" 2 3 4
220
-
221
-
222
-
223
-
224
-
225
- typedef __darwin_va_list va_list;
226
-
227
-
228
-
229
-
230
- typedef __darwin_off_t off_t;
231
-
232
-
233
-
234
-
235
- typedef __darwin_size_t size_t;
236
-
237
-
238
-
239
-
240
-
241
-
242
- typedef __darwin_off_t fpos_t;
243
- # 98 "/usr/include/stdio.h" 3 4
244
- struct __sbuf {
245
- unsigned char *_base;
246
- int _size;
247
- };
248
-
249
-
250
- struct __sFILEX;
251
- # 132 "/usr/include/stdio.h" 3 4
252
- typedef struct __sFILE {
253
- unsigned char *_p;
254
- int _r;
255
- int _w;
256
- short _flags;
257
- short _file;
258
- struct __sbuf _bf;
259
- int _lbfsize;
260
-
261
-
262
- void *_cookie;
263
- int (*_close)(void *);
264
- int (*_read) (void *, char *, int);
265
- fpos_t (*_seek) (void *, fpos_t, int);
266
- int (*_write)(void *, const char *, int);
267
-
268
-
269
- struct __sbuf _ub;
270
- struct __sFILEX *_extra;
271
- int _ur;
272
-
273
-
274
- unsigned char _ubuf[3];
275
- unsigned char _nbuf[1];
276
-
277
-
278
- struct __sbuf _lb;
279
-
280
-
281
- int _blksize;
282
- fpos_t _offset;
283
- } FILE;
284
-
285
-
286
-
287
- extern FILE *__stdinp;
288
- extern FILE *__stdoutp;
289
- extern FILE *__stderrp;
290
-
291
-
292
-
293
-
294
- # 248 "/usr/include/stdio.h" 3 4
295
-
296
- void clearerr(FILE *);
297
- int fclose(FILE *);
298
- int feof(FILE *);
299
- int ferror(FILE *);
300
- int fflush(FILE *);
301
- int fgetc(FILE *);
302
- int fgetpos(FILE * , fpos_t *);
303
- char *fgets(char * , int, FILE *);
304
-
305
-
306
-
307
- FILE *fopen(const char * , const char * ) __asm("_" "fopen" );
308
-
309
- int fprintf(FILE * , const char * , ...) ;
310
- int fputc(int, FILE *);
311
- int fputs(const char * , FILE * ) __asm("_" "fputs" );
312
- size_t fread(void * , size_t, size_t, FILE * );
313
- FILE *freopen(const char * , const char * ,
314
- FILE * ) __asm("_" "freopen" );
315
- int fscanf(FILE * , const char * , ...) ;
316
- int fseek(FILE *, long, int);
317
- int fsetpos(FILE *, const fpos_t *);
318
- long ftell(FILE *);
319
- size_t fwrite(const void * , size_t, size_t, FILE * ) __asm("_" "fwrite" );
320
- int getc(FILE *);
321
- int getchar(void);
322
- char *gets(char *);
323
-
324
- extern const int sys_nerr;
325
- extern const char *const sys_errlist[];
326
-
327
- void perror(const char *);
328
- int printf(const char * , ...) ;
329
- int putc(int, FILE *);
330
- int putchar(int);
331
- int puts(const char *);
332
- int remove(const char *);
333
- int rename (const char *, const char *);
334
- void rewind(FILE *);
335
- int scanf(const char * , ...) ;
336
- void setbuf(FILE * , char * );
337
- int setvbuf(FILE * , char * , int, size_t);
338
- int sprintf(char * , const char * , ...) ;
339
- int sscanf(const char * , const char * , ...) ;
340
- FILE *tmpfile(void);
341
- char *tmpnam(char *);
342
- int ungetc(int, FILE *);
343
- int vfprintf(FILE * , const char * , va_list) ;
344
- int vprintf(const char * , va_list) ;
345
- int vsprintf(char * , const char * , va_list) ;
346
-
347
- int asprintf(char **, const char *, ...) ;
348
- int vasprintf(char **, const char *, va_list) ;
349
-
350
-
351
-
352
-
353
-
354
-
355
-
356
-
357
-
358
-
359
- char *ctermid(char *);
360
-
361
- char *ctermid_r(char *);
362
-
363
-
364
-
365
-
366
- FILE *fdopen(int, const char *) __asm("_" "fdopen" );
367
-
368
-
369
- char *fgetln(FILE *, size_t *);
370
-
371
- int fileno(FILE *);
372
- void flockfile(FILE *);
373
-
374
- const char
375
- *fmtcheck(const char *, const char *);
376
- int fpurge(FILE *);
377
-
378
- int fseeko(FILE *, off_t, int);
379
- off_t ftello(FILE *);
380
- int ftrylockfile(FILE *);
381
- void funlockfile(FILE *);
382
- int getc_unlocked(FILE *);
383
- int getchar_unlocked(void);
384
-
385
- int getw(FILE *);
386
-
387
- int pclose(FILE *);
388
-
389
-
390
-
391
- FILE *popen(const char *, const char *) __asm("_" "popen" );
392
-
393
- int putc_unlocked(int, FILE *);
394
- int putchar_unlocked(int);
395
-
396
- int putw(int, FILE *);
397
- void setbuffer(FILE *, char *, int);
398
- int setlinebuf(FILE *);
399
-
400
- int snprintf(char * , size_t, const char * , ...) ;
401
- char *tempnam(const char *, const char *) __asm("_" "tempnam" );
402
- int vfscanf(FILE * , const char * , va_list) ;
403
- int vscanf(const char * , va_list) ;
404
- int vsnprintf(char * , size_t, const char * , va_list) ;
405
- int vsscanf(const char * , const char * , va_list) ;
406
-
407
- FILE *zopen(const char *, const char *, int);
408
-
409
-
410
-
411
-
412
-
413
-
414
-
415
-
416
- FILE *funopen(const void *,
417
- int (*)(void *, char *, int),
418
- int (*)(void *, const char *, int),
419
- fpos_t (*)(void *, fpos_t, int),
420
- int (*)(void *));
421
-
422
- # 383 "/usr/include/stdio.h" 3 4
423
-
424
- int __srget(FILE *);
425
- int __svfscanf(FILE *, const char *, va_list) ;
426
- int __swbuf(int, FILE *);
427
-
428
-
429
-
430
-
431
-
432
-
433
-
434
-
435
- static __inline int __sputc(int _c, FILE *_p) {
436
- if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n'))
437
- return (*_p->_p++ = _c);
438
- else
439
- return (__swbuf(_c, _p));
440
- }
441
- # 443 "/usr/include/stdio.h" 3 4
442
- # 1 "/usr/include/secure/_stdio.h" 1 3 4
443
- # 31 "/usr/include/secure/_stdio.h" 3 4
444
- # 1 "/usr/include/secure/_common.h" 1 3 4
445
- # 32 "/usr/include/secure/_stdio.h" 2 3 4
446
- # 42 "/usr/include/secure/_stdio.h" 3 4
447
- extern int __sprintf_chk (char * , int, size_t,
448
- const char * , ...)
449
- ;
450
-
451
-
452
-
453
-
454
- extern int __snprintf_chk (char * , size_t, int, size_t,
455
- const char * , ...)
456
- ;
457
-
458
-
459
-
460
-
461
- extern int __vsprintf_chk (char * , int, size_t,
462
- const char * , va_list)
463
- ;
464
-
465
-
466
-
467
-
468
- extern int __vsnprintf_chk (char * , size_t, int, size_t,
469
- const char * , va_list)
470
- ;
471
- # 444 "/usr/include/stdio.h" 2 3 4
472
- # 7 "/home/svn/ceedling/vendor/unity/src/unity.h" 2
473
- # 1 "/usr/include/setjmp.h" 1 3 4
474
- # 26 "/usr/include/setjmp.h" 3 4
475
- # 1 "/usr/include/machine/setjmp.h" 1 3 4
476
- # 37 "/usr/include/machine/setjmp.h" 3 4
477
- # 1 "/usr/include/i386/setjmp.h" 1 3 4
478
- # 47 "/usr/include/i386/setjmp.h" 3 4
479
- typedef int jmp_buf[((9 * 2) + 3 + 16)];
480
- typedef int sigjmp_buf[((9 * 2) + 3 + 16) + 1];
481
- # 65 "/usr/include/i386/setjmp.h" 3 4
482
-
483
- int setjmp(jmp_buf);
484
- void longjmp(jmp_buf, int);
485
-
486
-
487
- int _setjmp(jmp_buf);
488
- void _longjmp(jmp_buf, int);
489
- int sigsetjmp(sigjmp_buf, int);
490
- void siglongjmp(sigjmp_buf, int);
491
-
492
-
493
-
494
- void longjmperror(void);
495
-
496
-
497
- # 38 "/usr/include/machine/setjmp.h" 2 3 4
498
- # 27 "/usr/include/setjmp.h" 2 3 4
499
- # 8 "/home/svn/ceedling/vendor/unity/src/unity.h" 2
500
- # 23 "/home/svn/ceedling/vendor/unity/src/unity.h"
501
- typedef float _UF;
502
- # 36 "/home/svn/ceedling/vendor/unity/src/unity.h"
503
- typedef unsigned char _UU8;
504
- typedef unsigned short _UU16;
505
- typedef unsigned int _UU32;
506
- typedef signed char _US8;
507
- typedef signed short _US16;
508
- typedef signed int _US32;
509
- # 65 "/home/svn/ceedling/vendor/unity/src/unity.h"
510
- typedef void (*UnityTestFunction)(void);
511
-
512
- typedef enum
513
- {
514
- UNITY_DISPLAY_STYLE_INT,
515
- UNITY_DISPLAY_STYLE_UINT,
516
- UNITY_DISPLAY_STYLE_HEX8,
517
- UNITY_DISPLAY_STYLE_HEX16,
518
- UNITY_DISPLAY_STYLE_HEX32
519
- } UNITY_DISPLAY_STYLE_T;
520
-
521
- struct _Unity
522
- {
523
- const char* TestFile;
524
- const char* CurrentTestName;
525
- unsigned char NumberOfTests;
526
- unsigned char TestFailures;
527
- unsigned char TestIgnores;
528
- unsigned char CurrentTestFailed;
529
- unsigned char CurrentTestIgnored;
530
- jmp_buf AbortFrame;
531
- };
532
-
533
- extern struct _Unity Unity;
534
-
535
-
536
-
537
-
538
-
539
- void UnityBegin(void);
540
- void UnityEnd(void);
541
- void UnityConcludeTest(void);
542
-
543
-
544
-
545
-
546
-
547
- void UnityPrint(const char* string);
548
- void UnityPrintMask(const unsigned long mask, const unsigned long number);
549
- void UnityPrintNumberByStyle(const long number, const UNITY_DISPLAY_STYLE_T style);
550
- void UnityPrintNumber(const long number);
551
- void UnityPrintNumberUnsigned(const unsigned long number);
552
- void UnityPrintNumberHex(const unsigned long number, const char nibbles);
553
- # 117 "/home/svn/ceedling/vendor/unity/src/unity.h"
554
- void UnityAssertEqualNumber(const long expected,
555
- const long actual,
556
- const char* msg,
557
- const unsigned short lineNumber,
558
- const UNITY_DISPLAY_STYLE_T style);
559
-
560
- void UnityAssertEqualNumberUnsigned(const unsigned long expected,
561
- const unsigned long actual,
562
- const char* msg,
563
- const unsigned short lineNumber,
564
- const UNITY_DISPLAY_STYLE_T style);
565
-
566
- void UnityAssertEqualIntArray(const int* expected,
567
- const int* actual,
568
- const unsigned long num_elements,
569
- const char* msg,
570
- const unsigned short lineNumber,
571
- const UNITY_DISPLAY_STYLE_T style);
572
-
573
- void UnityAssertEqualUnsignedIntArray(const unsigned int* expected,
574
- const unsigned int* actual,
575
- const unsigned long num_elements,
576
- const char* msg,
577
- const unsigned short lineNumber,
578
- const UNITY_DISPLAY_STYLE_T style);
579
-
580
- void UnityAssertBits(const long mask,
581
- const long expected,
582
- const long actual,
583
- const char* msg,
584
- const unsigned short lineNumber);
585
-
586
- void UnityAssertEqualString(const char* expected,
587
- const char* actual,
588
- const char* msg,
589
- const unsigned short lineNumber );
590
-
591
- void UnityAssertEqualMemory(const void* expected,
592
- const void* actual,
593
- unsigned long length,
594
- const char* msg,
595
- const unsigned short lineNumber );
596
-
597
- void UnityAssertEqualMemoryArray(const void* expected,
598
- const void* actual,
599
- unsigned long length,
600
- unsigned long num_elements,
601
- const char* msg,
602
- const unsigned short lineNumber );
603
-
604
- void UnityAssertNumbersWithin(const long delta,
605
- const long expected,
606
- const long actual,
607
- const char* msg,
608
- const unsigned short lineNumber);
609
-
610
- void UnityAssertNumbersUnsignedWithin(const unsigned long delta,
611
- const unsigned long expected,
612
- const unsigned long actual,
613
- const char* msg,
614
- const unsigned short lineNumber);
615
-
616
- void UnityFail(const char* message, const long line);
617
-
618
- void UnityIgnore(const char* message, const long line);
619
-
620
-
621
- void UnityAssertFloatsWithin(const _UF delta,
622
- const _UF expected,
623
- const _UF actual,
624
- const char* msg,
625
- const unsigned short lineNumber);
626
- # 2 "test/system/a_project/test/test_a_file.c" 2
627
- # 1 "test/system/a_project/include/stuff.h" 1
628
-
629
- int subtract(int a, int b);
630
- # 3 "test/system/a_project/test/test_a_file.c" 2
631
- # 1 "test/system/a_project/build/mocks/mock_another_file.h" 1
632
-
633
-
634
-
635
-
636
- # 1 "test/system/a_project/include/another_file.h" 1
637
-
638
- unsigned int another_function(unsigned int a);
639
- # 6 "test/system/a_project/build/mocks/mock_another_file.h" 2
640
-
641
- void mock_another_file_Init(void);
642
- void mock_another_file_Destroy(void);
643
- void mock_another_file_Verify(void);
644
-
645
-
646
-
647
-
648
- void another_function_ExpectAndReturn(unsigned int a, unsigned int cmock_to_return);
649
- # 4 "test/system/a_project/test/test_a_file.c" 2
650
- # 1 "test/system/a_project/include/a_file.h" 1
651
-
652
- void a_function(void);
653
- # 5 "test/system/a_project/test/test_a_file.c" 2
654
-
655
-
656
- void setUp(void) {}
657
- void tearDown(void) {}
658
-
659
-
660
- void test_a_single_thing(void)
661
- {
662
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)13); {longjmp(Unity.AbortFrame, 1);}; };
663
- }
664
-
665
- void test_another_thing ( void )
666
- {
667
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)18); {longjmp(Unity.AbortFrame, 1);}; };
668
- }
669
-
670
- void test_some_non_void_param_stuff()
671
- {
672
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)23); {longjmp(Unity.AbortFrame, 1);}; };
673
- }
674
-
675
- void
676
- test_some_multiline_test_case_action
677
- (void)
678
- {
679
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)30); {longjmp(Unity.AbortFrame, 1);}; };
680
- }
681
-
682
- void test_success(void)
683
- {
684
- if (1) {} else {{ Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityFail((((void *)0)), (unsigned short)35); {longjmp(Unity.AbortFrame, 1);}; };};
685
- }
686
- ].left_margin(0)
687
-
688
-
689
- expected_extraction_contents = %Q[
690
-
691
- void setUp(void) {}
692
- void tearDown(void) {}
693
-
694
-
695
- void test_a_single_thing(void)
696
- {
697
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)13); {longjmp(Unity.AbortFrame, 1);}; };
698
- }
699
-
700
- void test_another_thing ( void )
701
- {
702
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)18); {longjmp(Unity.AbortFrame, 1);}; };
703
- }
704
-
705
- void test_some_non_void_param_stuff()
706
- {
707
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)23); {longjmp(Unity.AbortFrame, 1);}; };
708
- }
709
-
710
- void
711
- test_some_multiline_test_case_action
712
- (void)
713
- {
714
- { Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityIgnore(("pay no attention to the test behind the curtain"), (unsigned short)30); {longjmp(Unity.AbortFrame, 1);}; };
715
- }
716
-
717
- void test_success(void)
718
- {
719
- if (1) {} else {{ Unity.TestFile="test/system/a_project/test/test_a_file.c"; UnityFail((((void *)0)), (unsigned short)35); {longjmp(Unity.AbortFrame, 1);}; };};
720
- }
721
- ].left_margin(0)
722
-
723
-
724
- @file_wrapper.expects.readlines('project/build/preprocess/test_a_file.c').returns(preprocessed_file_contents.split("\n"))
725
-
726
- assert_equal(
727
- expected_extraction_contents.split("\n"),
728
- @preprocessinator_extractor.extract_base_file_from_preprocessed_expansion('project/build/preprocess/test_a_file.c'))
729
- end
730
-
731
- end