ceedling 0.19.0 → 0.20.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (426) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +10 -10
  3. data/bin/ceedling +205 -92
  4. data/ceedling-0.19.0.gem +0 -0
  5. data/config/test_environment.rb +12 -12
  6. data/docs/CeedlingPacket.md +866 -853
  7. data/docs/CeedlingPacket.odt +0 -0
  8. data/docs/CeedlingPacket.pdf +0 -0
  9. data/examples/temp_sensor/rakefile.rb +4 -4
  10. data/examples/temp_sensor/src/AdcConductor.c +42 -42
  11. data/examples/temp_sensor/src/AdcConductor.h +13 -13
  12. data/examples/temp_sensor/src/AdcHardware.c +27 -27
  13. data/examples/temp_sensor/src/AdcHardware.h +11 -11
  14. data/examples/temp_sensor/src/AdcHardwareConfigurator.c +18 -18
  15. data/examples/temp_sensor/src/AdcHardwareConfigurator.h +10 -10
  16. data/examples/temp_sensor/src/AdcModel.c +33 -33
  17. data/examples/temp_sensor/src/AdcModel.h +13 -13
  18. data/examples/temp_sensor/src/AdcTemperatureSensor.c +51 -51
  19. data/examples/temp_sensor/src/AdcTemperatureSensor.h +10 -10
  20. data/examples/temp_sensor/src/Executor.c +25 -25
  21. data/examples/temp_sensor/src/Executor.h +9 -9
  22. data/examples/temp_sensor/src/IntrinsicsWrapper.c +18 -18
  23. data/examples/temp_sensor/src/IntrinsicsWrapper.h +7 -7
  24. data/examples/temp_sensor/src/Main.c +46 -46
  25. data/examples/temp_sensor/src/Main.h +7 -7
  26. data/examples/temp_sensor/src/Model.c +10 -10
  27. data/examples/temp_sensor/src/Model.h +8 -8
  28. data/examples/temp_sensor/src/ModelConfig.h +7 -7
  29. data/examples/temp_sensor/src/TaskScheduler.c +72 -72
  30. data/examples/temp_sensor/src/TaskScheduler.h +11 -11
  31. data/examples/temp_sensor/src/TemperatureCalculator.c +27 -27
  32. data/examples/temp_sensor/src/TemperatureCalculator.h +8 -8
  33. data/examples/temp_sensor/src/TemperatureFilter.c +38 -38
  34. data/examples/temp_sensor/src/TemperatureFilter.h +10 -10
  35. data/examples/temp_sensor/src/TimerConductor.c +15 -15
  36. data/examples/temp_sensor/src/TimerConductor.h +9 -9
  37. data/examples/temp_sensor/src/TimerConfigurator.c +51 -51
  38. data/examples/temp_sensor/src/TimerConfigurator.h +15 -15
  39. data/examples/temp_sensor/src/TimerHardware.c +15 -15
  40. data/examples/temp_sensor/src/TimerHardware.h +8 -8
  41. data/examples/temp_sensor/src/TimerInterruptConfigurator.c +55 -55
  42. data/examples/temp_sensor/src/TimerInterruptConfigurator.h +13 -13
  43. data/examples/temp_sensor/src/TimerInterruptHandler.c +25 -25
  44. data/examples/temp_sensor/src/TimerInterruptHandler.h +10 -10
  45. data/examples/temp_sensor/src/TimerModel.c +9 -9
  46. data/examples/temp_sensor/src/TimerModel.h +8 -8
  47. data/examples/temp_sensor/src/Types.h +90 -90
  48. data/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c +18 -18
  49. data/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.h +8 -8
  50. data/examples/temp_sensor/src/UsartConductor.c +21 -21
  51. data/examples/temp_sensor/src/UsartConductor.h +7 -7
  52. data/examples/temp_sensor/src/UsartConfigurator.c +39 -39
  53. data/examples/temp_sensor/src/UsartConfigurator.h +13 -13
  54. data/examples/temp_sensor/src/UsartHardware.c +22 -22
  55. data/examples/temp_sensor/src/UsartHardware.h +9 -9
  56. data/examples/temp_sensor/src/UsartModel.c +34 -34
  57. data/examples/temp_sensor/src/UsartModel.h +10 -10
  58. data/examples/temp_sensor/src/UsartPutChar.c +16 -16
  59. data/examples/temp_sensor/src/UsartPutChar.h +8 -8
  60. data/examples/temp_sensor/src/UsartTransmitBufferStatus.c +7 -7
  61. data/examples/temp_sensor/src/UsartTransmitBufferStatus.h +8 -8
  62. data/examples/temp_sensor/test/TestAdcConductor.c +121 -121
  63. data/examples/temp_sensor/test/TestAdcHardware.c +44 -44
  64. data/examples/temp_sensor/test/TestAdcModel.c +33 -33
  65. data/examples/temp_sensor/test/TestExecutor.c +36 -36
  66. data/examples/temp_sensor/test/TestMain.c +24 -24
  67. data/examples/temp_sensor/test/TestModel.c +20 -20
  68. data/examples/temp_sensor/test/TestTaskScheduler.c +104 -104
  69. data/examples/temp_sensor/test/TestTemperatureCalculator.c +33 -33
  70. data/examples/temp_sensor/test/TestTemperatureFilter.c +79 -79
  71. data/examples/temp_sensor/test/TestTimerConductor.c +32 -32
  72. data/examples/temp_sensor/test/TestTimerHardware.c +26 -26
  73. data/examples/temp_sensor/test/TestTimerModel.c +18 -18
  74. data/examples/temp_sensor/test/TestUsartBaudRateRegisterCalculator.c +21 -21
  75. data/examples/temp_sensor/test/TestUsartConductor.c +40 -40
  76. data/examples/temp_sensor/test/TestUsartHardware.c +36 -36
  77. data/examples/temp_sensor/test/TestUsartModel.c +36 -36
  78. data/examples/temp_sensor/test/support/UnityHelper.c +12 -12
  79. data/examples/temp_sensor/test/support/UnityHelper.h +12 -12
  80. data/lib/ceedling/configurator_builder.rb +1 -1
  81. data/lib/ceedling/tasks_base.rake +10 -2
  82. data/lib/ceedling/tool_executor.rb +3 -0
  83. data/lib/ceedling/version.rb +3 -3
  84. data/license.txt +1 -1
  85. data/plugins/bullseye/bullseye.rake +162 -162
  86. data/plugins/gcov/gcov.rake +152 -152
  87. data/plugins/module_generator/lib/module_generator.rb +145 -145
  88. data/plugins/module_generator/module_generator.rake +14 -14
  89. data/plugins/stdout_gtestlike_tests_report/assets/template.erb +84 -0
  90. data/plugins/stdout_gtestlike_tests_report/assets/template.erb copy +59 -0
  91. data/plugins/stdout_gtestlike_tests_report/config/stdout_gtestlike_tests_report.yml +4 -0
  92. data/plugins/stdout_gtestlike_tests_report/lib/stdout_gtestlike_tests_report.rb +43 -0
  93. data/spec/system/deployment_spec.rb +0 -1
  94. data/test_graveyard/integration/paths_test.rb +80 -80
  95. data/test_graveyard/integration/rake_rules_aux_dependencies_test.rb +75 -75
  96. data/test_graveyard/integration/rake_rules_cmock_test.rb +74 -74
  97. data/test_graveyard/integration/rake_rules_preprocess_test.rb +178 -178
  98. data/test_graveyard/integration/rake_rules_test.rb +268 -268
  99. data/test_graveyard/integration/rake_tasks_test.rb +103 -103
  100. data/test_graveyard/integration_test_helper.rb +34 -34
  101. data/test_graveyard/rakefile_rules.rb +10 -10
  102. data/test_graveyard/rakefile_rules_aux_dependencies.rb +10 -10
  103. data/test_graveyard/rakefile_rules_cmock.rb +10 -10
  104. data/test_graveyard/rakefile_rules_preprocess.rb +10 -10
  105. data/test_graveyard/rakefile_tasks.rb +10 -10
  106. data/test_graveyard/system/file_system_test.rb +78 -78
  107. data/test_graveyard/system/project_mocks_test.rb +38 -38
  108. data/test_graveyard/system/project_simple_test.rb +39 -39
  109. data/test_graveyard/system/rule_mocks_test.rb +44 -44
  110. data/test_graveyard/system/rule_runners_test.rb +44 -44
  111. data/test_graveyard/system_test_helper.rb +73 -73
  112. data/test_graveyard/test_helper.rb +93 -93
  113. data/test_graveyard/unit/busted/configurator_builder_test.rb +569 -569
  114. data/test_graveyard/unit/busted/configurator_helper_test.rb +234 -234
  115. data/test_graveyard/unit/busted/configurator_test.rb +232 -232
  116. data/test_graveyard/unit/busted/configurator_validator_test.rb +169 -169
  117. data/test_graveyard/unit/busted/deep_merge_fix_test.rb +55 -55
  118. data/test_graveyard/unit/busted/dependinator_test.rb +129 -129
  119. data/test_graveyard/unit/busted/file_finder_helper_test.rb +45 -45
  120. data/test_graveyard/unit/busted/file_finder_test.rb +114 -114
  121. data/test_graveyard/unit/busted/file_path_utils_test.rb +97 -97
  122. data/test_graveyard/unit/busted/file_system_utils_test.rb +21 -21
  123. data/test_graveyard/unit/busted/generator_test.rb +187 -187
  124. data/test_graveyard/unit/busted/generator_test_results_test.rb +129 -129
  125. data/test_graveyard/unit/busted/generator_test_runner_test.rb +475 -475
  126. data/test_graveyard/unit/busted/preprocessinator_file_handler_test.rb +39 -39
  127. data/test_graveyard/unit/busted/preprocessinator_helper_test.rb +156 -156
  128. data/test_graveyard/unit/busted/preprocessinator_includes_handler_test.rb +93 -93
  129. data/test_graveyard/unit/busted/preprocessinator_test.rb +57 -57
  130. data/test_graveyard/unit/busted/project_file_loader_test.rb +142 -142
  131. data/test_graveyard/unit/busted/setupinator_test.rb +45 -45
  132. data/test_graveyard/unit/busted/streaminator_test.rb +49 -49
  133. data/test_graveyard/unit/busted/task_invoker_test.rb +69 -69
  134. data/test_graveyard/unit/busted/test_includes_extractor_test.rb +111 -111
  135. data/test_graveyard/unit/busted/test_invoker_helper_test.rb +62 -62
  136. data/test_graveyard/unit/busted/test_invoker_test.rb +47 -47
  137. data/test_graveyard/unit/busted/tool_executor_helper_test.rb +100 -100
  138. data/test_graveyard/unit/busted/tool_executor_test.rb +351 -351
  139. data/test_graveyard/unit/busted/verbosinator_test.rb +65 -65
  140. data/test_graveyard/unit/preprocessinator_extractor_test.rb +731 -731
  141. data/test_graveyard/unit_test_helper.rb +16 -16
  142. data/vendor/c_exception/LICENSE.txt +30 -30
  143. data/vendor/c_exception/README.md +11 -1
  144. data/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  145. data/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  146. data/vendor/c_exception/docs/readme.txt +261 -242
  147. data/vendor/c_exception/lib/CException.c +46 -46
  148. data/vendor/c_exception/lib/CException.h +110 -86
  149. data/vendor/c_exception/makefile +23 -23
  150. data/vendor/c_exception/test/CExceptionConfig.h +46 -46
  151. data/vendor/c_exception/test/TestException.c +391 -342
  152. data/vendor/c_exception/test/TestException_Runner.c +5 -12
  153. data/vendor/c_exception/vendor/unity/README.md +211 -0
  154. data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +1 -1
  155. data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +38 -38
  156. data/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -36
  157. data/vendor/c_exception/vendor/unity/auto/generate_module.rb +202 -202
  158. data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +391 -320
  159. data/vendor/c_exception/vendor/unity/auto/parseOutput.rb +2 -0
  160. data/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +260 -0
  161. data/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +8 -0
  162. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +135 -0
  163. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +148 -139
  164. data/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  165. data/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  166. data/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +224 -216
  167. data/vendor/c_exception/vendor/unity/docs/license.txt +21 -31
  168. data/vendor/c_exception/vendor/unity/examples/example_1/makefile +40 -15
  169. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +2 -0
  170. data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +32 -25
  171. data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +29 -22
  172. data/vendor/c_exception/vendor/unity/examples/example_2/makefile +40 -14
  173. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +2 -0
  174. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +2 -2
  175. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +0 -1
  176. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +2 -0
  177. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +48 -37
  178. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +179 -179
  179. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +135 -94
  180. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +13 -17
  181. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +12 -18
  182. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +30 -0
  183. data/vendor/c_exception/vendor/unity/extras/fixture/test/Makefile +60 -0
  184. data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +4 -3
  185. data/vendor/c_exception/vendor/unity/extras/fixture/test/{testunity_fixture.c → template_fixture_tests.c} +0 -0
  186. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +182 -27
  187. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +13 -0
  188. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +8 -6
  189. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +2 -2
  190. data/vendor/c_exception/vendor/unity/release/build.info +1 -1
  191. data/vendor/c_exception/vendor/unity/release/version.info +1 -1
  192. data/vendor/c_exception/vendor/unity/src/unity.c +1333 -1145
  193. data/vendor/c_exception/vendor/unity/src/unity.h +290 -307
  194. data/vendor/c_exception/vendor/unity/src/unity_internals.h +758 -620
  195. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +7 -3
  196. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +7 -3
  197. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.c +55 -0
  198. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.h +15 -0
  199. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +4 -3
  200. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +4 -3
  201. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -0
  202. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.h +13 -0
  203. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +6 -5
  204. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +4 -3
  205. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +4 -3
  206. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +6 -5
  207. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +4 -3
  208. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +7 -6
  209. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +9 -5
  210. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +7 -3
  211. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +7 -3
  212. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +9 -5
  213. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +7 -3
  214. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +10 -6
  215. data/vendor/c_exception/vendor/unity/{rakefile.rb → test/rakefile} +60 -61
  216. data/vendor/c_exception/vendor/unity/{rakefile_helper.rb → test/rakefile_helper.rb} +255 -249
  217. data/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +83 -0
  218. data/vendor/c_exception/vendor/unity/{targets → test/targets}/clang_strict.yml +83 -83
  219. data/vendor/c_exception/vendor/unity/test/targets/gcc_32.yml +49 -0
  220. data/vendor/c_exception/vendor/unity/test/targets/gcc_64.yml +50 -0
  221. data/vendor/c_exception/vendor/unity/{targets/gcc_64.yml → test/targets/gcc_auto_limits.yml} +46 -45
  222. data/vendor/c_exception/vendor/unity/test/targets/gcc_auto_sizeof.yml +47 -0
  223. data/vendor/c_exception/vendor/unity/test/targets/gcc_auto_stdint.yml +58 -0
  224. data/vendor/{cmock/vendor/c_exception/vendor/unity/targets/gcc_64.yml → c_exception/vendor/unity/test/targets/gcc_manual_math.yml} +46 -45
  225. data/vendor/{cmock/vendor/c_exception/vendor/unity → c_exception/vendor/unity/test}/targets/hitech_picc18.yml +101 -101
  226. data/vendor/{cmock/vendor/c_exception/vendor/unity → c_exception/vendor/unity/test}/targets/iar_arm_v4.yml +89 -89
  227. data/vendor/{cmock/vendor/c_exception/vendor/unity → c_exception/vendor/unity/test}/targets/iar_arm_v5.yml +79 -79
  228. data/vendor/c_exception/vendor/unity/{targets → test/targets}/iar_arm_v5_3.yml +79 -79
  229. data/vendor/{cmock/vendor/c_exception/vendor/unity → c_exception/vendor/unity/test}/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -93
  230. data/vendor/c_exception/vendor/unity/{targets → test/targets}/iar_cortexm3_v5.yml +83 -83
  231. data/vendor/{cmock/vendor/c_exception/vendor/unity → c_exception/vendor/unity/test}/targets/iar_msp430.yml +94 -94
  232. data/vendor/c_exception/vendor/unity/{targets → test/targets}/iar_sh2a_v6.yml +85 -85
  233. data/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +51 -51
  234. data/vendor/c_exception/vendor/unity/test/testdata/sample.yml +8 -8
  235. data/vendor/c_exception/vendor/unity/test/testdata/testsample.c +68 -51
  236. data/vendor/{cmock/vendor/c_exception/vendor/unity/test → c_exception/vendor/unity/test/tests}/test_generate_test_runner.rb +102 -88
  237. data/vendor/{cmock/vendor/c_exception/vendor/unity/test → c_exception/vendor/unity/test/tests}/testparameterized.c +104 -101
  238. data/vendor/c_exception/vendor/unity/test/{testunity.c → tests/testunity.c} +3682 -3447
  239. data/vendor/cmock/docs/CMock_Summary.md +3 -0
  240. data/vendor/cmock/lib/cmock_config.rb +1 -0
  241. data/vendor/cmock/lib/cmock_file_writer.rb +7 -3
  242. data/vendor/cmock/lib/cmock_generator.rb +3 -2
  243. data/vendor/cmock/lib/cmock_header_parser.rb +12 -5
  244. data/vendor/cmock/release/version.info +1 -1
  245. data/vendor/cmock/test/system/test_compilation/parsing.h +3 -0
  246. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +7 -0
  247. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +57 -1
  248. data/vendor/cmock/vendor/c_exception/LICENSE.txt +30 -30
  249. data/vendor/cmock/vendor/c_exception/README.md +11 -1
  250. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  251. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  252. data/vendor/cmock/vendor/c_exception/docs/readme.txt +261 -242
  253. data/vendor/cmock/vendor/c_exception/lib/CException.c +46 -46
  254. data/vendor/cmock/vendor/c_exception/lib/CException.h +110 -86
  255. data/vendor/cmock/vendor/c_exception/makefile +23 -23
  256. data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +46 -46
  257. data/vendor/cmock/vendor/c_exception/test/TestException.c +391 -342
  258. data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +5 -12
  259. data/vendor/cmock/vendor/c_exception/vendor/unity/README.md +211 -0
  260. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +1 -1
  261. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +38 -38
  262. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -36
  263. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_module.rb +202 -202
  264. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +391 -320
  265. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/parseOutput.rb +2 -0
  266. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +260 -0
  267. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +8 -0
  268. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +135 -0
  269. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +148 -139
  270. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  271. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  272. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +224 -216
  273. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/license.txt +21 -31
  274. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/makefile +40 -15
  275. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +2 -0
  276. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +32 -25
  277. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +29 -22
  278. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/makefile +40 -14
  279. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +2 -0
  280. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +2 -2
  281. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +0 -1
  282. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +2 -0
  283. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +48 -37
  284. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +179 -179
  285. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +135 -94
  286. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +13 -17
  287. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +12 -18
  288. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +30 -0
  289. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/Makefile +60 -0
  290. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +4 -3
  291. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/{testunity_fixture.c → template_fixture_tests.c} +0 -0
  292. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +182 -27
  293. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +13 -0
  294. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +8 -6
  295. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +2 -2
  296. data/vendor/cmock/vendor/c_exception/vendor/unity/release/build.info +1 -1
  297. data/vendor/cmock/vendor/c_exception/vendor/unity/release/version.info +1 -1
  298. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.c +1333 -1145
  299. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.h +290 -307
  300. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity_internals.h +758 -620
  301. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +7 -3
  302. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +7 -3
  303. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.c +55 -0
  304. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.h +15 -0
  305. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +4 -3
  306. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +4 -3
  307. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -0
  308. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.h +13 -0
  309. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +6 -5
  310. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +4 -3
  311. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +4 -3
  312. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +6 -5
  313. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +4 -3
  314. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +7 -6
  315. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +9 -5
  316. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +7 -3
  317. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +7 -3
  318. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +9 -5
  319. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +7 -3
  320. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +10 -6
  321. data/vendor/cmock/vendor/c_exception/vendor/unity/{rakefile.rb → test/rakefile} +60 -61
  322. data/vendor/cmock/vendor/c_exception/vendor/unity/{rakefile_helper.rb → test/rakefile_helper.rb} +255 -249
  323. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +83 -0
  324. data/vendor/cmock/vendor/c_exception/vendor/unity/{targets → test/targets}/clang_strict.yml +83 -83
  325. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_32.yml +49 -0
  326. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_64.yml +50 -0
  327. data/vendor/cmock/vendor/c_exception/vendor/unity/{targets/gcc_32.yml → test/targets/gcc_auto_limits.yml} +46 -44
  328. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_auto_sizeof.yml +47 -0
  329. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_auto_stdint.yml +58 -0
  330. data/vendor/{c_exception/vendor/unity/targets/gcc_32.yml → cmock/vendor/c_exception/vendor/unity/test/targets/gcc_manual_math.yml} +46 -44
  331. data/vendor/{c_exception/vendor/unity → cmock/vendor/c_exception/vendor/unity/test}/targets/hitech_picc18.yml +101 -101
  332. data/vendor/{c_exception/vendor/unity → cmock/vendor/c_exception/vendor/unity/test}/targets/iar_arm_v4.yml +89 -89
  333. data/vendor/{c_exception/vendor/unity → cmock/vendor/c_exception/vendor/unity/test}/targets/iar_arm_v5.yml +79 -79
  334. data/vendor/cmock/vendor/c_exception/vendor/unity/{targets → test/targets}/iar_arm_v5_3.yml +79 -79
  335. data/vendor/{c_exception/vendor/unity → cmock/vendor/c_exception/vendor/unity/test}/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -93
  336. data/vendor/cmock/vendor/c_exception/vendor/unity/{targets → test/targets}/iar_cortexm3_v5.yml +83 -83
  337. data/vendor/{c_exception/vendor/unity → cmock/vendor/c_exception/vendor/unity/test}/targets/iar_msp430.yml +94 -94
  338. data/vendor/cmock/vendor/c_exception/vendor/unity/{targets → test/targets}/iar_sh2a_v6.yml +85 -85
  339. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +51 -51
  340. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/sample.yml +8 -8
  341. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testsample.c +68 -51
  342. data/vendor/{c_exception/vendor/unity/test → cmock/vendor/c_exception/vendor/unity/test/tests}/test_generate_test_runner.rb +102 -88
  343. data/vendor/{c_exception/vendor/unity/test → cmock/vendor/c_exception/vendor/unity/test/tests}/testparameterized.c +104 -101
  344. data/vendor/cmock/vendor/c_exception/vendor/unity/test/{testunity.c → tests/testunity.c} +3682 -3447
  345. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +30 -13
  346. data/vendor/cmock/vendor/unity/auto/stylize_as_junit.rb +260 -0
  347. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +96 -93
  348. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +1 -1
  349. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +12 -19
  350. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +18 -17
  351. data/vendor/cmock/vendor/unity/extras/fixture/test/Makefile +66 -5
  352. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +2 -1
  353. data/vendor/cmock/vendor/unity/extras/fixture/test/{testunity_fixture.c → template_fixture_tests.c} +0 -0
  354. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +187 -27
  355. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +14 -0
  356. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +6 -5
  357. data/vendor/cmock/vendor/unity/release/version.info +1 -1
  358. data/vendor/cmock/vendor/unity/src/unity.c +38 -27
  359. data/vendor/cmock/vendor/unity/src/unity.h +5 -0
  360. data/vendor/cmock/vendor/unity/src/unity_internals.h +22 -18
  361. data/vendor/cmock/vendor/unity/test/Makefile +52 -0
  362. data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +4 -0
  363. data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +4 -0
  364. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.c +4 -0
  365. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.h +7 -4
  366. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.h +6 -4
  367. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +4 -0
  368. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +4 -0
  369. data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +4 -0
  370. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +4 -0
  371. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +4 -0
  372. data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +4 -0
  373. data/vendor/cmock/vendor/unity/test/rakefile_helper.rb +1 -1
  374. data/vendor/cmock/vendor/unity/test/targets/clang_file.yml +0 -1
  375. data/vendor/cmock/vendor/unity/test/targets/clang_strict.yml +0 -1
  376. data/vendor/cmock/vendor/unity/test/targets/gcc_32.yml +0 -1
  377. data/vendor/cmock/vendor/unity/test/targets/gcc_64.yml +0 -1
  378. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_limits.yml +0 -1
  379. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_sizeof.yml +0 -1
  380. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_stdint.yml +0 -1
  381. data/vendor/cmock/vendor/unity/test/targets/gcc_manual_math.yml +0 -1
  382. data/vendor/cmock/vendor/unity/test/testdata/testsample.c +19 -2
  383. data/vendor/cmock/vendor/unity/test/tests/testunity.c +55 -4
  384. data/vendor/unity/auto/generate_test_runner.rb +4 -2
  385. data/vendor/unity/auto/stylize_as_junit.rb +260 -0
  386. data/vendor/unity/extras/fixture/src/unity_fixture.c +24 -41
  387. data/vendor/unity/extras/fixture/src/unity_fixture.h +1 -1
  388. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +5 -7
  389. data/vendor/unity/extras/fixture/test/Makefile +53 -8
  390. data/vendor/unity/extras/fixture/test/{testunity_fixture.c → template_fixture_tests.c} +0 -0
  391. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +129 -32
  392. data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +6 -0
  393. data/vendor/unity/extras/fixture/test/unity_output_Spy.c +4 -4
  394. data/vendor/unity/release/version.info +1 -1
  395. data/vendor/unity/src/unity.c +32 -21
  396. data/vendor/unity/src/unity.h +5 -0
  397. data/vendor/unity/src/unity_internals.h +7 -3
  398. data/vendor/unity/test/Makefile +52 -0
  399. data/vendor/unity/test/expectdata/testsample_cmd.c +4 -0
  400. data/vendor/unity/test/expectdata/testsample_def.c +4 -0
  401. data/vendor/unity/test/expectdata/testsample_head1.c +4 -0
  402. data/vendor/unity/test/expectdata/testsample_head1.h +7 -4
  403. data/vendor/unity/test/expectdata/testsample_mock_head1.h +6 -4
  404. data/vendor/unity/test/expectdata/testsample_new1.c +4 -0
  405. data/vendor/unity/test/expectdata/testsample_new2.c +4 -0
  406. data/vendor/unity/test/expectdata/testsample_param.c +4 -0
  407. data/vendor/unity/test/expectdata/testsample_run1.c +4 -0
  408. data/vendor/unity/test/expectdata/testsample_run2.c +4 -0
  409. data/vendor/unity/test/expectdata/testsample_yaml.c +4 -0
  410. data/vendor/unity/test/testdata/testsample.c +19 -2
  411. data/vendor/unity/test/tests/testunity.c +35 -4
  412. metadata +75 -52
  413. data/ceedling-0.18.0.gem +0 -0
  414. data/docs/CeedlingLogo.png +0 -0
  415. data/vendor/c_exception/vendor/unity/Gemfile +0 -4
  416. data/vendor/c_exception/vendor/unity/Gemfile.lock +0 -12
  417. data/vendor/c_exception/vendor/unity/examples/example_3/makefile +0 -41
  418. data/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode2_Runner.c +0 -46
  419. data/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode_Runner.c +0 -50
  420. data/vendor/c_exception/vendor/unity/makefile +0 -37
  421. data/vendor/cmock/vendor/c_exception/vendor/unity/Gemfile +0 -4
  422. data/vendor/cmock/vendor/c_exception/vendor/unity/Gemfile.lock +0 -12
  423. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/makefile +0 -41
  424. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode2_Runner.c +0 -46
  425. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode_Runner.c +0 -50
  426. data/vendor/cmock/vendor/c_exception/vendor/unity/makefile +0 -37
@@ -29,6 +29,8 @@ extern void setUp(void);
29
29
  extern void tearDown(void);
30
30
  extern void test_TheFirstThingToTest(void);
31
31
  extern void test_TheSecondThingToTest(void);
32
+ extern void test_TheThirdThingToTest(void);
33
+ extern void test_TheFourthThingToTest(void);
32
34
 
33
35
 
34
36
  //=======Test Reset Option=====
@@ -46,6 +48,8 @@ int main(void)
46
48
  UnityBegin("testdata/testsample.c");
47
49
  RUN_TEST(test_TheFirstThingToTest, 21);
48
50
  RUN_TEST(test_TheSecondThingToTest, 43);
51
+ RUN_TEST(test_TheThirdThingToTest, 53);
52
+ RUN_TEST(test_TheFourthThingToTest, 58);
49
53
 
50
54
  return (UnityEnd());
51
55
  }
@@ -1,12 +1,15 @@
1
1
  /* AUTOGENERATED FILE. DO NOT EDIT. */
2
- #ifndef __B_U_I_L_D__T_E_S_T_S_A_M_P_L_E___H_E_A_D_1__H_
3
- #define __B_U_I_L_D__T_E_S_T_S_A_M_P_L_E___H_E_A_D_1__H_
2
+ #ifndef _TESTSAMPLE_HEAD1_H
3
+ #define _TESTSAMPLE_HEAD1_H
4
4
 
5
+ #include "unity.h"
5
6
  #include "funky.h"
6
7
  #include "stanky.h"
7
8
  #include <setjmp.h>
8
9
 
9
- void test_TheFirstThingToTest();
10
- void test_TheSecondThingToTest();
10
+ void test_TheFirstThingToTest(void);
11
+ void test_TheSecondThingToTest(void);
12
+ void test_TheThirdThingToTest(void);
13
+ void test_TheFourthThingToTest(void);
11
14
  #endif
12
15
 
@@ -1,11 +1,13 @@
1
1
  /* AUTOGENERATED FILE. DO NOT EDIT. */
2
- #ifndef __B_U_I_L_D__T_E_S_T_S_A_M_P_L_E___M_O_C_K___H_E_A_D_1__H_
3
- #define __B_U_I_L_D__T_E_S_T_S_A_M_P_L_E___M_O_C_K___H_E_A_D_1__H_
2
+ #ifndef _TESTSAMPLE_MOCK_HEAD1_H
3
+ #define _TESTSAMPLE_MOCK_HEAD1_H
4
4
 
5
+ #include "unity.h"
6
+ #include "cmock.h"
5
7
  #include "funky.h"
6
8
  #include <setjmp.h>
7
9
 
8
- void test_TheFirstThingToTest();
9
- void test_TheSecondThingToTest();
10
+ void test_TheFirstThingToTest(void);
11
+ void test_TheSecondThingToTest(void);
10
12
  #endif
11
13
 
@@ -41,6 +41,8 @@ extern void setUp(void);
41
41
  extern void tearDown(void);
42
42
  extern void test_TheFirstThingToTest(void);
43
43
  extern void test_TheSecondThingToTest(void);
44
+ extern void test_TheThirdThingToTest(void);
45
+ extern void test_TheFourthThingToTest(void);
44
46
 
45
47
 
46
48
  //=======Test Reset Option=====
@@ -58,6 +60,8 @@ int main(void)
58
60
  UnityBegin("testdata/testsample.c");
59
61
  RUN_TEST(test_TheFirstThingToTest, 21);
60
62
  RUN_TEST(test_TheSecondThingToTest, 43);
63
+ RUN_TEST(test_TheThirdThingToTest, 53);
64
+ RUN_TEST(test_TheFourthThingToTest, 58);
61
65
 
62
66
  return (UnityEnd());
63
67
  }
@@ -31,6 +31,8 @@ extern void setUp(void);
31
31
  extern void tearDown(void);
32
32
  extern void test_TheFirstThingToTest(void);
33
33
  extern void test_TheSecondThingToTest(void);
34
+ extern void test_TheThirdThingToTest(void);
35
+ extern void test_TheFourthThingToTest(void);
34
36
 
35
37
 
36
38
  //=======Suite Setup=====
@@ -61,6 +63,8 @@ int main(void)
61
63
  UnityBegin("testdata/testsample.c");
62
64
  RUN_TEST(test_TheFirstThingToTest, 21);
63
65
  RUN_TEST(test_TheSecondThingToTest, 43);
66
+ RUN_TEST(test_TheThirdThingToTest, 53);
67
+ RUN_TEST(test_TheFourthThingToTest, 58);
64
68
 
65
69
  return suite_teardown(UnityEnd());
66
70
  }
@@ -32,6 +32,8 @@ extern void setUp(void);
32
32
  extern void tearDown(void);
33
33
  extern void test_TheFirstThingToTest(void);
34
34
  extern void test_TheSecondThingToTest(void);
35
+ extern void test_TheThirdThingToTest(void);
36
+ extern void test_TheFourthThingToTest(void);
35
37
 
36
38
 
37
39
  //=======Test Reset Option=====
@@ -49,6 +51,8 @@ int main(void)
49
51
  UnityBegin("testdata/testsample.c");
50
52
  RUN_TEST(test_TheFirstThingToTest, 21, RUN_TEST_NO_ARGS);
51
53
  RUN_TEST(test_TheSecondThingToTest, 43, RUN_TEST_NO_ARGS);
54
+ RUN_TEST(test_TheThirdThingToTest, 53, RUN_TEST_NO_ARGS);
55
+ RUN_TEST(test_TheFourthThingToTest, 58, RUN_TEST_NO_ARGS);
52
56
 
53
57
  return (UnityEnd());
54
58
  }
@@ -41,6 +41,8 @@ extern void setUp(void);
41
41
  extern void tearDown(void);
42
42
  extern void test_TheFirstThingToTest(void);
43
43
  extern void test_TheSecondThingToTest(void);
44
+ extern void test_TheThirdThingToTest(void);
45
+ extern void test_TheFourthThingToTest(void);
44
46
 
45
47
 
46
48
  //=======Test Reset Option=====
@@ -58,6 +60,8 @@ int main(void)
58
60
  UnityBegin("testdata/testsample.c");
59
61
  RUN_TEST(test_TheFirstThingToTest, 21);
60
62
  RUN_TEST(test_TheSecondThingToTest, 43);
63
+ RUN_TEST(test_TheThirdThingToTest, 53);
64
+ RUN_TEST(test_TheFourthThingToTest, 58);
61
65
 
62
66
  return (UnityEnd());
63
67
  }
@@ -31,6 +31,8 @@ extern void setUp(void);
31
31
  extern void tearDown(void);
32
32
  extern void test_TheFirstThingToTest(void);
33
33
  extern void test_TheSecondThingToTest(void);
34
+ extern void test_TheThirdThingToTest(void);
35
+ extern void test_TheFourthThingToTest(void);
34
36
 
35
37
 
36
38
  //=======Suite Setup=====
@@ -61,6 +63,8 @@ int main(void)
61
63
  UnityBegin("testdata/testsample.c");
62
64
  RUN_TEST(test_TheFirstThingToTest, 21);
63
65
  RUN_TEST(test_TheSecondThingToTest, 43);
66
+ RUN_TEST(test_TheThirdThingToTest, 53);
67
+ RUN_TEST(test_TheFourthThingToTest, 58);
64
68
 
65
69
  return suite_teardown(UnityEnd());
66
70
  }
@@ -38,6 +38,8 @@ extern void setUp(void);
38
38
  extern void tearDown(void);
39
39
  extern void test_TheFirstThingToTest(void);
40
40
  extern void test_TheSecondThingToTest(void);
41
+ extern void test_TheThirdThingToTest(void);
42
+ extern void test_TheFourthThingToTest(void);
41
43
 
42
44
 
43
45
  //=======Suite Setup=====
@@ -62,6 +64,8 @@ int main(void)
62
64
  UnityBegin("testdata/testsample.c");
63
65
  RUN_TEST(test_TheFirstThingToTest, 21);
64
66
  RUN_TEST(test_TheSecondThingToTest, 43);
67
+ RUN_TEST(test_TheThirdThingToTest, 53);
68
+ RUN_TEST(test_TheFourthThingToTest, 58);
65
69
 
66
70
  return (UnityEnd());
67
71
  }
@@ -97,7 +97,7 @@ module RakefileHelpers
97
97
  if $cfg['compiler']['defines']['items'].nil?
98
98
  defines = ''
99
99
  else
100
- defines = squash($cfg['compiler']['defines']['prefix'], $cfg['compiler']['defines']['items'])
100
+ defines = squash($cfg['compiler']['defines']['prefix'], $cfg['compiler']['defines']['items'] + ['UNITY_OUTPUT_CHAR=putcharSpy'])
101
101
  end
102
102
  options = squash('', $cfg['compiler']['options'])
103
103
  includes = squash($cfg['compiler']['includes']['prefix'], $cfg['compiler']['includes']['items'])
@@ -57,7 +57,6 @@ compiler:
57
57
  defines:
58
58
  prefix: '-D'
59
59
  items:
60
- - UNITY_OUTPUT_CHAR=putcharSpy
61
60
  - UNITY_INCLUDE_DOUBLE
62
61
  - UNITY_SUPPORT_64
63
62
  - UNITY_OUTPUT_RESULTS_FILE
@@ -57,7 +57,6 @@ compiler:
57
57
  defines:
58
58
  prefix: '-D'
59
59
  items:
60
- - UNITY_OUTPUT_CHAR=putcharSpy
61
60
  - UNITY_INCLUDE_DOUBLE
62
61
  - UNITY_SUPPORT_TEST_CASES
63
62
  - UNITY_SUPPORT_64
@@ -19,7 +19,6 @@ compiler:
19
19
  defines:
20
20
  prefix: '-D'
21
21
  items:
22
- - UNITY_OUTPUT_CHAR=putcharSpy
23
22
  - UNITY_EXCLUDE_STDINT_H
24
23
  - UNITY_EXCLUDE_LIMITS_H
25
24
  - UNITY_EXCLUDE_SIZEOF
@@ -19,7 +19,6 @@ compiler:
19
19
  defines:
20
20
  prefix: '-D'
21
21
  items:
22
- - UNITY_OUTPUT_CHAR=putcharSpy
23
22
  - UNITY_EXCLUDE_STDINT_H
24
23
  - UNITY_EXCLUDE_LIMITS_H
25
24
  - UNITY_EXCLUDE_SIZEOF
@@ -19,7 +19,6 @@ compiler:
19
19
  defines:
20
20
  prefix: '-D'
21
21
  items:
22
- - UNITY_OUTPUT_CHAR=putcharSpy
23
22
  - UNITY_EXCLUDE_STDINT_H
24
23
  - UNITY_INCLUDE_DOUBLE
25
24
  - UNITY_SUPPORT_TEST_CASES
@@ -19,7 +19,6 @@ compiler:
19
19
  defines:
20
20
  prefix: '-D'
21
21
  items:
22
- - UNITY_OUTPUT_CHAR=putcharSpy
23
22
  - UNITY_EXCLUDE_STDINT_H
24
23
  - UNITY_EXCLUDE_LIMITS_H
25
24
  - UNITY_INCLUDE_DOUBLE
@@ -32,7 +32,6 @@ compiler:
32
32
  defines:
33
33
  prefix: '-D'
34
34
  items:
35
- - UNITY_OUTPUT_CHAR=putcharSpy
36
35
  - UNITY_INCLUDE_DOUBLE
37
36
  - UNITY_SUPPORT_TEST_CASES
38
37
  - UNITY_SUPPORT_64
@@ -19,7 +19,6 @@ compiler:
19
19
  defines:
20
20
  prefix: '-D'
21
21
  items:
22
- - UNITY_OUTPUT_CHAR=putcharSpy
23
22
  - UNITY_EXCLUDE_MATH_H
24
23
  - UNITY_INCLUDE_DOUBLE
25
24
  - UNITY_SUPPORT_TEST_CASES
@@ -35,15 +35,32 @@ void test_ShouldBeIgnored(void)
35
35
  //void test_ShouldAlsoNotBeTested(void)
36
36
  //{
37
37
  // Call_An_Expect();
38
- //
38
+ //
39
39
  // CallAFunction();
40
40
  // test_CallAFunctionThatLooksLikeATest();
41
41
  //}
42
42
 
43
43
  void test_TheSecondThingToTest(void)
44
44
  {
45
+ uint8_t* crazyString = "GET / HTTP/1.1\r\nHost: 127.0.0.1:8081\r\nConnection: keep-alive\r\nCache-Control: no-cache\r\nUser-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36\r\nPostman-Token: 768c7149-c3fb-f704-71a2-63918d9195b2\r\nAccept: */*\r\nAccept-Encoding: gzip, deflate, sdch\r\nAccept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n\r\n";
46
+
47
+ Call_An_Expect();
48
+
49
+ CallAFunction();
50
+ test_CallAFunctionThatLooksLikeATest();
51
+ }
52
+
53
+ void test_TheThirdThingToTest(void)
54
+ {
55
+ CallAFunction();
56
+ }
57
+
58
+ void test_TheFourthThingToTest(void)
59
+ {
60
+ uint8_t* anotherString = "GET / HTTP/1.1\r\nHost: 127.0.0.1:8081\r\nConnection: keep-alive\r\nCache-Control: no-cache\r\nUser-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36\r\nPostman-Token: 768c7149-c3fb-f704-71a2-63918d9195b2\r\nAccept: */*\r\nAccept-Encoding: gzip, deflate, sdch\r\nAccept-Language: en-GB,en-US;q=0.8,en;q=0.6\r\n\r\n";
61
+
45
62
  Call_An_Expect();
46
-
63
+
47
64
  CallAFunction();
48
65
  test_CallAFunctionThatLooksLikeATest();
49
66
  }
@@ -8,6 +8,8 @@
8
8
  #include "unity.h"
9
9
  #include <string.h>
10
10
 
11
+ int putcharSpy(int c);
12
+
11
13
  // Dividing by these constants produces +/- infinity.
12
14
  // The rationale is given in UnityAssertFloatIsInf's body.
13
15
  #ifndef UNITY_EXCLUDE_FLOAT
@@ -27,6 +29,9 @@ static const _UD d_zero = 0.0;
27
29
  Unity.CurrentTestFailed = (Unity.CurrentTestFailed == 1) ? 0 : 1; \
28
30
  if (Unity.CurrentTestFailed == 1) { \
29
31
  SetToOneMeanWeAlreadyCheckedThisGuy = 1; \
32
+ UnityPrintNumberUnsigned(Unity.CurrentTestLineNumber); \
33
+ UNITY_OUTPUT_CHAR(':'); \
34
+ UnityPrint(Unity.CurrentTestName); \
30
35
  UnityPrint("[[[[ Previous Test Should Have Failed But Did Not ]]]]"); \
31
36
  UNITY_OUTPUT_CHAR('\n'); \
32
37
  }
@@ -107,6 +112,12 @@ void testUnitySizeInitializationReminder(void)
107
112
  TEST_ASSERT_EQUAL_MESSAGE(sizeof(_Expected_Unity), sizeof(Unity), message);
108
113
  }
109
114
 
115
+ void testPassShouldEndImmediatelyWithPass(void)
116
+ {
117
+ TEST_PASS();
118
+ TEST_FAIL_MESSAGE("We should have passed already and finished this test");
119
+ }
120
+
110
121
  void testTrue(void)
111
122
  {
112
123
  TEST_ASSERT(1);
@@ -1192,6 +1203,12 @@ void testINT32sNotWithinDelta(void)
1192
1203
  VERIFY_FAILS_END
1193
1204
  }
1194
1205
 
1206
+ void testINT32sNotWithinDeltaAndDifferenceOverflows(void)
1207
+ {
1208
+ EXPECT_ABORT_BEGIN
1209
+ TEST_ASSERT_INT32_WITHIN(1, -1, 0x7FFFFFFF);
1210
+ VERIFY_FAILS_END
1211
+ }
1195
1212
  void testINT32sNotWithinDeltaAndCustomMessage(void)
1196
1213
  {
1197
1214
  EXPECT_ABORT_BEGIN
@@ -2160,12 +2177,12 @@ void testIgnoredAndThenFailInTearDown(void)
2160
2177
 
2161
2178
  // Tricky series of macros to set USING_OUTPUT_SPY
2162
2179
  #define USING_SPY_AS(a) EXPAND_AND_USE_2ND(ASSIGN_VALUE(a), 0)
2163
- #define ASSIGN_VALUE(a) VAL_FUNC_##a
2164
- #define VAL_FUNC_putcharSpy() 0, 1
2180
+ #define ASSIGN_VALUE(a) VAL_##a
2181
+ #define VAL_putcharSpy 0, 1
2165
2182
  #define EXPAND_AND_USE_2ND(a, b) SECOND_PARAM(a, b, throwaway)
2166
2183
  #define SECOND_PARAM(a, b, ...) b
2167
- #if USING_SPY_AS(UNITY_OUTPUT_CHAR())
2168
- #define USING_OUTPUT_SPY // true only if UNITY_OUTPUT_CHAR = putchar_Spy
2184
+ #if USING_SPY_AS(UNITY_OUTPUT_CHAR)
2185
+ #define USING_OUTPUT_SPY // true only if UNITY_OUTPUT_CHAR = putcharSpy
2169
2186
  #endif
2170
2187
 
2171
2188
  #ifdef USING_OUTPUT_SPY
@@ -2496,6 +2513,17 @@ void testINT64sNotWithinDelta(void)
2496
2513
  #endif
2497
2514
  }
2498
2515
 
2516
+ void testINT64sNotWithinDeltaAndDifferenceOverflows(void)
2517
+ {
2518
+ #ifndef UNITY_SUPPORT_64
2519
+ TEST_IGNORE();
2520
+ #else
2521
+ EXPECT_ABORT_BEGIN
2522
+ TEST_ASSERT_INT64_WITHIN(1, 0x8000000000000000, 0x7FFFFFFFFFFFFFFF);
2523
+ VERIFY_FAILS_END
2524
+ #endif
2525
+ }
2526
+
2499
2527
  void testEqualHEX64Arrays(void)
2500
2528
  {
2501
2529
  #ifndef UNITY_SUPPORT_64
@@ -2952,6 +2980,18 @@ void testFloatIsNotDeterminate2(void)
2952
2980
  #endif
2953
2981
  }
2954
2982
 
2983
+ void testFloatTraitFailsOnInvalidTrait(void)
2984
+ {
2985
+ #ifdef UNITY_EXCLUDE_FLOAT
2986
+ TEST_IGNORE();
2987
+ #else
2988
+ EXPECT_ABORT_BEGIN
2989
+ UnityAssertFloatSpecial(1.0f, NULL, __LINE__, UNITY_FLOAT_INVALID_TRAIT);
2990
+ VERIFY_FAILS_END
2991
+ #endif
2992
+ }
2993
+
2994
+
2955
2995
  void testEqualFloatArrays(void)
2956
2996
  {
2957
2997
  #ifdef UNITY_EXCLUDE_FLOAT
@@ -3457,6 +3497,17 @@ void testDoubleIsNotDeterminate2(void)
3457
3497
  #endif
3458
3498
  }
3459
3499
 
3500
+ void testDoubleTraitFailsOnInvalidTrait(void)
3501
+ {
3502
+ #ifdef UNITY_EXCLUDE_DOUBLE
3503
+ TEST_IGNORE();
3504
+ #else
3505
+ EXPECT_ABORT_BEGIN
3506
+ UnityAssertDoubleSpecial(1.0, NULL, __LINE__, UNITY_FLOAT_INVALID_TRAIT);
3507
+ VERIFY_FAILS_END
3508
+ #endif
3509
+ }
3510
+
3460
3511
  void testEqualDoubleArrays(void)
3461
3512
  {
3462
3513
  #ifdef UNITY_EXCLUDE_DOUBLE
@@ -91,7 +91,9 @@ class UnityTestRunnerGenerator
91
91
  def find_tests(source)
92
92
  tests_and_line_numbers = []
93
93
 
94
- source_scrubbed = source.gsub(/\/\/.*$/, '') # remove line comments
94
+ source_scrubbed = source.clone
95
+ source_scrubbed = source_scrubbed.gsub(/"[^"]*"/, '') # remove things in strings
96
+ source_scrubbed = source_scrubbed.gsub(/\/\/.*$/, '') # remove line comments
95
97
  source_scrubbed = source_scrubbed.gsub(/\/\*.*?\*\//m, '') # remove block comments
96
98
  lines = source_scrubbed.split(/(^\s*\#.*$) # Treat preprocessor directives as a logical line
97
99
  | (;|\{|\}) /x) # Match ;, {, and } as end of lines
@@ -329,7 +331,7 @@ class UnityTestRunnerGenerator
329
331
  output.puts("#include #{inc.include?('<') ? inc : "\"#{inc.gsub('.h','')}.h\""}")
330
332
  end
331
333
  output.puts "\n"
332
- tests.each do |test|
334
+ tests.each do |test|
333
335
  if ((test[:params].nil?) or (test[:params].empty?))
334
336
  output.puts("void #{test[:test]}(void);")
335
337
  else
@@ -0,0 +1,260 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # unity_to_junit.rb
4
+ #
5
+ require 'fileutils'
6
+ require 'optparse'
7
+ require 'ostruct'
8
+ require 'set'
9
+
10
+ require 'pp'
11
+
12
+ VERSION = 1.0
13
+
14
+ class ArgvParser
15
+
16
+ #
17
+ # Return a structure describing the options.
18
+ #
19
+ def self.parse(args)
20
+ # The options specified on the command line will be collected in *options*.
21
+ # We set default values here.
22
+ options = OpenStruct.new
23
+ options.results_dir = "."
24
+ options.root_path = "."
25
+ options.out_file = "results.xml"
26
+
27
+ opts = OptionParser.new do |opts|
28
+ opts.banner = "Usage: unity_to_junit.rb [options]"
29
+
30
+ opts.separator ""
31
+ opts.separator "Specific options:"
32
+
33
+ opts.on("-r", "--results <dir>", "Look for Unity Results files here.") do |results|
34
+ #puts "results #{results}"
35
+ options.results_dir = results
36
+ end
37
+
38
+ opts.on("-p", "--root_path <path>", "Prepend this path to files in results.") do |root_path|
39
+ options.root_path = root_path
40
+ end
41
+
42
+ opts.on("-o", "--output <filename>", "XML file to generate.") do |out_file|
43
+ #puts "out_file: #{out_file}"
44
+ options.out_file = out_file
45
+ end
46
+
47
+ opts.separator ""
48
+ opts.separator "Common options:"
49
+
50
+ # No argument, shows at tail. This will print an options summary.
51
+ opts.on_tail("-h", "--help", "Show this message") do
52
+ puts opts
53
+ exit
54
+ end
55
+
56
+ # Another typical switch to print the version.
57
+ opts.on_tail("--version", "Show version") do
58
+ puts "unity_to_junit.rb version #{VERSION}"
59
+ exit
60
+ end
61
+ end
62
+
63
+ opts.parse!(args)
64
+ options
65
+ end # parse()
66
+
67
+ end # class OptparseExample
68
+
69
+ class UnityToJUnit
70
+ include FileUtils::Verbose
71
+ attr_reader :report, :total_tests, :failures, :ignored
72
+
73
+ def initialize
74
+ @report = ''
75
+ @unit_name = ''
76
+ end
77
+
78
+ def run
79
+ # Clean up result file names
80
+ results = @targets.map {|target| target.gsub(/\\/,"/")}
81
+ #puts "Output File: #{@out_file}"
82
+ f = File.new(@out_file, "w")
83
+ write_xml_header(f)
84
+ write_suites_header( f )
85
+ results.each do |result_file|
86
+ lines = File.readlines(result_file).map { |line| line.chomp }
87
+ if lines.length == 0
88
+ raise "Empty test result file: #{result_file}"
89
+ else
90
+ result_output = get_details(result_file, lines)
91
+ tests,failures,ignored = parse_test_summary(lines)
92
+ result_output[:counts][:total] = tests
93
+ result_output[:counts][:failed] = failures
94
+ result_output[:counts][:ignored] = ignored
95
+ result_output[:counts][:passed] = (result_output[:counts][:total] - result_output[:counts][:failed] - result_output[:counts][:ignored])
96
+ end
97
+ #use line[0] from the test output to get the test_file path and name
98
+ test_file_str = lines[0].gsub("\\","/")
99
+ test_file_str = test_file_str.split(":")
100
+ test_file = test_file_str[0] + ':' + test_file_str[1]
101
+ result_output[:source][:path] = File.dirname(test_file)
102
+ result_output[:source][:file] = File.basename(test_file)
103
+
104
+ # save result_output
105
+ @unit_name = File.basename(test_file, ".*")
106
+
107
+ write_suite_header( result_output[:counts], f)
108
+ write_failures( result_output, f )
109
+ write_tests( result_output, f )
110
+ write_ignored( result_output, f )
111
+ write_suite_footer( f )
112
+ end
113
+ write_suites_footer( f )
114
+ f.close
115
+ end
116
+
117
+ def set_targets(target_array)
118
+ @targets = target_array
119
+ end
120
+
121
+ def set_root_path(path)
122
+ @root = path
123
+ end
124
+ def set_out_file(filename)
125
+ @out_file = filename
126
+ end
127
+ def usage(err_msg=nil)
128
+ puts "\nERROR: "
129
+ puts err_msg if err_msg
130
+ puts "Usage: unity_to_junit.rb [options]"
131
+ puts ""
132
+ puts "Specific options:"
133
+ puts " -r, --results <dir> Look for Unity Results files here."
134
+ puts " -p, --root_path <path> Prepend this path to files in results."
135
+ puts " -o, --output <filename> XML file to generate."
136
+ puts ""
137
+ puts "Common options:"
138
+ puts " -h, --help Show this message"
139
+ puts " --version Show version"
140
+
141
+ exit 1
142
+ end
143
+
144
+ protected
145
+ def get_details(result_file, lines)
146
+ results = get_results_structure
147
+ lines.each do |line|
148
+ line = line.gsub("\\","/")
149
+ src_file,src_line,test_name,status,msg = line.split(/:/)
150
+ line_out = ((@root and (@root != 0)) ? "#{@root}#{line}" : line ).gsub(/\//, "\\")
151
+ case(status)
152
+ when 'IGNORE' then results[:ignores] << {:test => test_name, :line => src_line, :message => msg}
153
+ when 'FAIL' then results[:failures] << {:test => test_name, :line => src_line, :message => msg}
154
+ when 'PASS' then results[:successes] << {:test => test_name, :line => src_line, :message => msg}
155
+ end
156
+ end
157
+ return results
158
+ end
159
+
160
+ def parse_test_summary(summary)
161
+ if summary.find { |v| v =~ /(\d+) Tests (\d+) Failures (\d+) Ignored/ }
162
+ [$1.to_i,$2.to_i,$3.to_i]
163
+ else
164
+ raise "Couldn't parse test results: #{summary}"
165
+ end
166
+ end
167
+ def here; File.expand_path(File.dirname(__FILE__)); end
168
+
169
+ private
170
+
171
+ def get_results_structure
172
+ return {
173
+ :source => {:path => '', :file => ''},
174
+ :successes => [],
175
+ :failures => [],
176
+ :ignores => [],
177
+ :counts => {:total => 0, :passed => 0, :failed => 0, :ignored => 0},
178
+ :stdout => [],
179
+ }
180
+ end
181
+
182
+ def write_xml_header( stream )
183
+ stream.puts "<?xml version='1.0' encoding='utf-8' ?>"
184
+ end
185
+
186
+ def write_suites_header( stream )
187
+ stream.puts "<testsuites>"
188
+ end
189
+
190
+ def write_suite_header( counts, stream )
191
+ stream.puts "\t<testsuite errors=\"0\" skipped=\"#{counts[:ignored]}\" failures=\"#{counts[:failed]}\" tests=\"#{counts[:total]}\" name=\"unity\">"
192
+ end
193
+
194
+ def write_failures( results, stream )
195
+ result = results[:failures]
196
+ result.each do |item|
197
+ filename = File.join(results[:source][:path], File.basename(results[:source][:file], '.*'))
198
+ stream.puts "\t\t<testcase classname=\"#{@unit_name}\" name=\"#{item[:test]}\" time=\"0\">"
199
+ stream.puts "\t\t\t<failure message=\"#{item[:message]}\" type=\"Assertion\"/>"
200
+ stream.puts "\t\t\t<system-err>&#xD;[File] #{filename}&#xD;[Line] #{item[:line]}&#xD;</system-err>"
201
+ stream.puts "\t\t</testcase>"
202
+ end
203
+ end
204
+
205
+ def write_tests( results, stream )
206
+ result = results[:successes]
207
+ result.each do |item|
208
+ filename = File.join(results[:source][:path], File.basename(results[:source][:file], '.*'))
209
+ stream.puts "\t\t<testcase classname=\"#{@unit_name}\" name=\"#{item[:test]}\" time=\"0\" />"
210
+ end
211
+ end
212
+
213
+ def write_ignored( results, stream )
214
+ result = results[:ignores]
215
+ result.each do |item|
216
+ filename = File.join(results[:source][:path], File.basename(results[:source][:file], '.*'))
217
+ puts "Writing ignored tests for test harness: #{filename}"
218
+ stream.puts "\t\t<testcase classname=\"#{@unit_name}\" name=\"#{item[:test]}\" time=\"0\">"
219
+ stream.puts "\t\t\t<skipped message=\"#{item[:message]}\" type=\"Assertion\"/>"
220
+ stream.puts "\t\t\t<system-err>&#xD;[File] #{filename}&#xD;[Line] #{item[:line]}&#xD;</system-err>"
221
+ stream.puts "\t\t</testcase>"
222
+ end
223
+ end
224
+
225
+ def write_suite_footer( stream )
226
+ stream.puts "\t</testsuite>"
227
+ end
228
+
229
+ def write_suites_footer( stream )
230
+ stream.puts "</testsuites>"
231
+ end
232
+ end #UnityToJUnit
233
+
234
+ if __FILE__ == $0
235
+ #parse out the command options
236
+ options = ArgvParser.parse(ARGV)
237
+
238
+ #create an instance to work with
239
+ utj = UnityToJUnit.new
240
+ begin
241
+ #look in the specified or current directory for result files
242
+ targets = "#{options.results_dir.gsub(/\\/, '/')}**/*.test*"
243
+
244
+ results = Dir[targets]
245
+ raise "No *.testpass, *.testfail, or *.testresults files found in '#{targets}'" if results.empty?
246
+ utj.set_targets(results)
247
+
248
+ #set the root path
249
+ utj.set_root_path(options.root_path)
250
+
251
+ #set the output XML file name
252
+ #puts "Output File from options: #{options.out_file}"
253
+ utj.set_out_file(options.out_file)
254
+
255
+ #run the summarizer
256
+ puts utj.run
257
+ rescue Exception => e
258
+ utj.usage e.message
259
+ end
260
+ end