ceedling 0.18.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (626) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +17 -13
  3. data/ceedling-0.18.0.gem +0 -0
  4. data/docs/CeedlingPacket.md +7 -5
  5. data/lib/ceedling/configurator_builder.rb +10 -21
  6. data/lib/ceedling/configurator_setup.rb +16 -17
  7. data/lib/ceedling/constants.rb +4 -3
  8. data/lib/ceedling/defaults.rb +9 -4
  9. data/lib/ceedling/dependinator.rb +0 -1
  10. data/lib/ceedling/file_path_utils.rb +22 -26
  11. data/lib/ceedling/flaginator.rb +5 -5
  12. data/lib/ceedling/generator.rb +8 -7
  13. data/lib/ceedling/preprocessinator_file_handler.rb +6 -6
  14. data/lib/ceedling/preprocessinator_includes_handler.rb +1 -1
  15. data/lib/ceedling/rules_release.rake +5 -3
  16. data/lib/ceedling/rules_tests.rake +2 -1
  17. data/lib/ceedling/tasks_base.rake +1 -1
  18. data/lib/ceedling/tasks_vendor.rake +9 -10
  19. data/lib/ceedling/tool_executor.rb +23 -22
  20. data/lib/ceedling/version.rb +3 -3
  21. data/plugins/module_generator/lib/module_generator.rb +3 -3
  22. data/plugins/xml_tests_report/xml_tests_report.rb +1 -1
  23. data/spec/preprocessinator_includes_handler_spec.rb +1 -1
  24. data/spec/spec_system_helper.rb +192 -192
  25. data/vendor/c_exception/vendor/unity/Gemfile +4 -0
  26. data/vendor/c_exception/vendor/unity/Gemfile.lock +12 -0
  27. data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +115 -0
  28. data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +39 -0
  29. data/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -0
  30. data/vendor/c_exception/vendor/unity/auto/generate_module.rb +202 -0
  31. data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +320 -0
  32. data/vendor/c_exception/vendor/unity/auto/parseOutput.rb +189 -0
  33. data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +23 -0
  34. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +139 -0
  35. data/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  36. data/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  37. data/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +216 -0
  38. data/vendor/c_exception/vendor/unity/docs/license.txt +31 -0
  39. data/vendor/c_exception/vendor/unity/examples/example_1/makefile +41 -0
  40. data/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +5 -0
  41. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +24 -0
  42. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +3 -0
  43. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +9 -0
  44. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -0
  45. data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -0
  46. data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -0
  47. data/vendor/{unity/examples/example_3/test/no_ruby → c_exception/vendor/unity/examples/example_1/test/test_runners}/TestProductionCode2_Runner.c +16 -3
  48. data/vendor/{unity/examples/example_3/test/no_ruby → c_exception/vendor/unity/examples/example_1/test/test_runners}/TestProductionCode_Runner.c +16 -3
  49. data/vendor/c_exception/vendor/unity/examples/example_2/makefile +45 -0
  50. data/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +5 -0
  51. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +24 -0
  52. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +3 -0
  53. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +9 -0
  54. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -0
  55. data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -0
  56. data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -0
  57. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  58. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  59. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  60. data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -0
  61. data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -0
  62. data/vendor/c_exception/vendor/unity/examples/example_3/makefile +41 -0
  63. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +44 -0
  64. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +256 -0
  65. data/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +19 -0
  66. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +24 -0
  67. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +3 -0
  68. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +9 -0
  69. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -0
  70. data/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +46 -0
  71. data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -0
  72. data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -0
  73. data/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode2_Runner.c +46 -0
  74. data/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode_Runner.c +50 -0
  75. data/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  76. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +37 -0
  77. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +179 -0
  78. data/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +9 -0
  79. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +387 -0
  80. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +82 -0
  81. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +44 -0
  82. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +16 -0
  83. data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
  84. data/vendor/c_exception/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
  85. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +341 -0
  86. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +41 -0
  87. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +56 -0
  88. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
  89. data/vendor/c_exception/vendor/unity/makefile +37 -0
  90. data/vendor/c_exception/vendor/unity/rakefile.rb +61 -0
  91. data/vendor/c_exception/vendor/unity/rakefile_helper.rb +249 -0
  92. data/vendor/c_exception/vendor/unity/release/build.info +2 -0
  93. data/vendor/c_exception/vendor/unity/release/version.info +2 -0
  94. data/vendor/c_exception/vendor/unity/src/unity.c +1145 -0
  95. data/vendor/c_exception/vendor/unity/src/unity.h +307 -0
  96. data/vendor/c_exception/vendor/unity/src/unity_internals.h +620 -0
  97. data/vendor/c_exception/vendor/unity/targets/clang_strict.yml +83 -0
  98. data/vendor/c_exception/vendor/unity/targets/gcc_32.yml +44 -0
  99. data/vendor/c_exception/vendor/unity/targets/gcc_64.yml +45 -0
  100. data/vendor/c_exception/vendor/unity/targets/hitech_picc18.yml +101 -0
  101. data/vendor/c_exception/vendor/unity/targets/iar_arm_v4.yml +89 -0
  102. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5.yml +79 -0
  103. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5_3.yml +79 -0
  104. data/vendor/c_exception/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
  105. data/vendor/c_exception/vendor/unity/targets/iar_cortexm3_v5.yml +83 -0
  106. data/vendor/c_exception/vendor/unity/targets/iar_msp430.yml +94 -0
  107. data/vendor/c_exception/vendor/unity/targets/iar_sh2a_v6.yml +85 -0
  108. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +57 -0
  109. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +53 -0
  110. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +79 -0
  111. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +75 -0
  112. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +88 -0
  113. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +88 -0
  114. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +76 -0
  115. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +88 -0
  116. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +88 -0
  117. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +89 -0
  118. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +63 -0
  119. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +66 -0
  120. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +54 -0
  121. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +63 -0
  122. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +66 -0
  123. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +67 -0
  124. data/vendor/c_exception/vendor/unity/test/test_generate_test_runner.rb +88 -0
  125. data/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +51 -0
  126. data/vendor/c_exception/vendor/unity/test/testdata/sample.yml +9 -0
  127. data/vendor/c_exception/vendor/unity/test/testdata/testsample.c +51 -0
  128. data/vendor/c_exception/vendor/unity/test/testparameterized.c +101 -0
  129. data/vendor/c_exception/vendor/unity/test/testunity.c +3447 -0
  130. data/vendor/cmock/README.md +1 -1
  131. data/vendor/cmock/Rakefile +106 -104
  132. data/vendor/cmock/config/production_environment.rb +14 -14
  133. data/vendor/cmock/config/test_environment.rb +16 -16
  134. data/vendor/cmock/docs/CMock_Summary.md +9 -0
  135. data/vendor/cmock/docs/license.txt +2 -2
  136. data/vendor/cmock/examples/make_example/Makefile +30 -0
  137. data/vendor/cmock/examples/make_example/src/foo.c +5 -0
  138. data/vendor/cmock/examples/make_example/src/foo.h +5 -0
  139. data/vendor/cmock/examples/make_example/src/main.c +15 -0
  140. data/vendor/cmock/examples/make_example/test/test_foo.c +17 -0
  141. data/vendor/cmock/examples/make_example/test/test_main.c +15 -0
  142. data/vendor/cmock/examples/{gcc.yml → temp_sensor/gcc.yml} +43 -43
  143. data/vendor/cmock/examples/{iar_v4.yml → temp_sensor/iar_v4.yml} +91 -91
  144. data/vendor/cmock/examples/{iar_v5.yml → temp_sensor/iar_v5.yml} +80 -80
  145. data/vendor/cmock/examples/{rakefile.rb → temp_sensor/rakefile.rb} +32 -32
  146. data/vendor/cmock/examples/{rakefile_helper.rb → temp_sensor/rakefile_helper.rb} +270 -270
  147. data/vendor/cmock/examples/{src → temp_sensor/src}/AT91SAM7X256.h +2556 -2556
  148. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcConductor.c +42 -42
  149. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcConductor.h +11 -11
  150. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardware.c +27 -27
  151. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardware.h +9 -9
  152. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardwareConfigurator.c +18 -18
  153. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardwareConfigurator.h +10 -10
  154. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcModel.c +33 -33
  155. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcModel.h +13 -13
  156. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcTemperatureSensor.c +51 -51
  157. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcTemperatureSensor.h +10 -10
  158. data/vendor/cmock/examples/{src → temp_sensor/src}/Executor.c +25 -25
  159. data/vendor/cmock/examples/{src → temp_sensor/src}/Executor.h +9 -9
  160. data/vendor/cmock/examples/{src → temp_sensor/src}/IntrinsicsWrapper.c +18 -18
  161. data/vendor/cmock/examples/{src → temp_sensor/src}/IntrinsicsWrapper.h +7 -7
  162. data/vendor/cmock/examples/{src → temp_sensor/src}/Main.c +46 -46
  163. data/vendor/cmock/examples/{src → temp_sensor/src}/Main.h +7 -7
  164. data/vendor/cmock/examples/{src → temp_sensor/src}/Model.c +10 -10
  165. data/vendor/cmock/examples/{src → temp_sensor/src}/Model.h +8 -8
  166. data/vendor/cmock/examples/{src → temp_sensor/src}/ModelConfig.h +7 -7
  167. data/vendor/cmock/examples/{src → temp_sensor/src}/TaskScheduler.c +72 -72
  168. data/vendor/cmock/examples/{src → temp_sensor/src}/TaskScheduler.h +11 -11
  169. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureCalculator.c +27 -27
  170. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureCalculator.h +6 -6
  171. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureFilter.c +39 -39
  172. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureFilter.h +10 -10
  173. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConductor.c +15 -15
  174. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConductor.h +9 -9
  175. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConfigurator.c +51 -51
  176. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConfigurator.h +15 -15
  177. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerHardware.c +15 -15
  178. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerHardware.h +8 -8
  179. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptConfigurator.c +55 -55
  180. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptConfigurator.h +13 -13
  181. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptHandler.c +25 -25
  182. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptHandler.h +10 -10
  183. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerModel.c +9 -9
  184. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerModel.h +8 -8
  185. data/vendor/cmock/examples/{src → temp_sensor/src}/Types.h +103 -103
  186. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartBaudRateRegisterCalculator.c +18 -18
  187. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartBaudRateRegisterCalculator.h +6 -6
  188. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConductor.c +21 -21
  189. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConductor.h +7 -7
  190. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConfigurator.c +39 -39
  191. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConfigurator.h +13 -13
  192. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartHardware.c +22 -22
  193. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartHardware.h +9 -9
  194. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartModel.c +34 -34
  195. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartModel.h +10 -10
  196. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartPutChar.c +16 -16
  197. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartPutChar.h +8 -8
  198. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartTransmitBufferStatus.c +7 -7
  199. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartTransmitBufferStatus.h +8 -8
  200. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcConductor.c +121 -121
  201. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcHardware.c +44 -44
  202. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcHardwareConfigurator.c +43 -43
  203. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcModel.c +33 -33
  204. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcTemperatureSensor.c +47 -47
  205. data/vendor/cmock/examples/{test → temp_sensor/test}/TestExecutor.c +36 -36
  206. data/vendor/cmock/examples/{test → temp_sensor/test}/TestMain.c +24 -24
  207. data/vendor/cmock/examples/{test → temp_sensor/test}/TestModel.c +20 -20
  208. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTaskScheduler.c +104 -104
  209. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTemperatureCalculator.c +33 -33
  210. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTemperatureFilter.c +69 -69
  211. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerConductor.c +32 -32
  212. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerConfigurator.c +112 -112
  213. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerHardware.c +26 -26
  214. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerInterruptConfigurator.c +78 -78
  215. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerInterruptHandler.c +66 -66
  216. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerModel.c +18 -18
  217. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartBaudRateRegisterCalculator.c +21 -21
  218. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartConductor.c +40 -40
  219. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartConfigurator.c +77 -77
  220. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartHardware.c +37 -37
  221. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartModel.c +36 -36
  222. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartPutChar.c +43 -43
  223. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartTransmitBufferStatus.c +22 -22
  224. data/vendor/cmock/iar/iar_v4/Resource/at91SAM7X256_FLASH.xcl +185 -185
  225. data/vendor/cmock/iar/iar_v4/Resource/at91SAM7X256_RAM.xcl +185 -185
  226. data/vendor/cmock/iar/iar_v4/Resource/ioat91sam7x256.ddf +2259 -2259
  227. data/vendor/cmock/iar/iar_v4/cmock_demo.dep +3691 -3691
  228. data/vendor/cmock/iar/iar_v4/cmock_demo.ewp +2581 -2581
  229. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X-EK.h +61 -61
  230. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256.inc +2314 -2314
  231. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256.rdf +4704 -4704
  232. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256.tcl +3407 -3407
  233. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256_inc.h +2268 -2268
  234. data/vendor/cmock/iar/iar_v4/incIAR/ioat91sam7x256.h +4380 -4380
  235. data/vendor/cmock/iar/iar_v4/incIAR/lib_AT91SAM7X256.h +4211 -4211
  236. data/vendor/cmock/iar/iar_v4/settings/cmock_demo.cspy.bat +32 -32
  237. data/vendor/cmock/iar/iar_v4/srcIAR/Cstartup.s79 +265 -265
  238. data/vendor/cmock/iar/iar_v4/srcIAR/Cstartup_SAM7.c +98 -98
  239. data/vendor/cmock/iar/iar_v5/Resource/at91SAM7X256_FLASH.icf +43 -43
  240. data/vendor/cmock/iar/iar_v5/Resource/at91SAM7X256_RAM.icf +42 -42
  241. data/vendor/cmock/iar/iar_v5/cmock_demo.dep +4204 -4204
  242. data/vendor/cmock/iar/iar_v5/cmock_demo.ewp +2426 -2426
  243. data/vendor/cmock/iar/iar_v5/incIAR/AT91SAM7X-EK.h +61 -61
  244. data/vendor/cmock/iar/iar_v5/incIAR/AT91SAM7X256_inc.h +2268 -2268
  245. data/vendor/cmock/iar/iar_v5/incIAR/lib_AT91SAM7X256.h +4211 -4211
  246. data/vendor/cmock/iar/iar_v5/incIAR/project.h +30 -30
  247. data/vendor/cmock/iar/iar_v5/settings/BasicInterrupt_SAM7X.cspy.bat +33 -33
  248. data/vendor/cmock/iar/iar_v5/settings/BasicInterrupt_SAM7X_FLASH_Debug.jlink +12 -12
  249. data/vendor/cmock/iar/iar_v5/settings/cmock_demo.cspy.bat +33 -33
  250. data/vendor/cmock/iar/iar_v5/settings/cmock_demo_Binary.jlink +12 -12
  251. data/vendor/cmock/iar/iar_v5/settings/cmock_demo_FLASH_Debug.jlink +12 -12
  252. data/vendor/cmock/iar/iar_v5/settings/cmock_demo_RAM_Debug.jlink +12 -12
  253. data/vendor/cmock/iar/iar_v5/srcIAR/Cstartup.s +299 -299
  254. data/vendor/cmock/iar/iar_v5/srcIAR/Cstartup_SAM7.c +98 -98
  255. data/vendor/cmock/lib/cmock.rb +89 -89
  256. data/vendor/cmock/lib/cmock_config.rb +134 -133
  257. data/vendor/cmock/lib/cmock_file_writer.rb +40 -33
  258. data/vendor/cmock/lib/cmock_generator.rb +234 -215
  259. data/vendor/cmock/lib/cmock_generator_plugin_array.rb +63 -63
  260. data/vendor/cmock/lib/cmock_generator_plugin_callback.rb +96 -78
  261. data/vendor/cmock/lib/cmock_generator_plugin_cexception.rb +52 -51
  262. data/vendor/cmock/lib/cmock_generator_plugin_expect.rb +104 -86
  263. data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +68 -68
  264. data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +72 -71
  265. data/vendor/cmock/lib/cmock_generator_plugin_ignore_arg.rb +1 -1
  266. data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +2 -2
  267. data/vendor/cmock/lib/cmock_generator_utils.rb +228 -213
  268. data/vendor/cmock/lib/cmock_header_parser.rb +1 -1
  269. data/vendor/cmock/lib/cmock_plugin_manager.rb +40 -40
  270. data/vendor/cmock/lib/cmock_unityhelper_parser.rb +75 -75
  271. data/vendor/cmock/rakefile_helper.rb +381 -381
  272. data/vendor/cmock/release/build.info +1 -1
  273. data/vendor/cmock/release/version.info +1 -1
  274. data/vendor/cmock/scripts/create_makefile.rb +161 -0
  275. data/vendor/cmock/scripts/create_mock.rb +8 -0
  276. data/vendor/cmock/scripts/create_runner.rb +20 -0
  277. data/vendor/cmock/scripts/test_summary.rb +11 -0
  278. data/vendor/cmock/src/cmock.c +203 -192
  279. data/vendor/cmock/src/cmock.h +38 -36
  280. data/vendor/cmock/src/cmock_internals.h +11 -1
  281. data/vendor/cmock/targets/clang_strict.yml +90 -85
  282. data/vendor/cmock/targets/gcc.yml +58 -55
  283. data/vendor/cmock/targets/gcc_64.yml +58 -55
  284. data/vendor/cmock/targets/gcc_tiny.yml +80 -0
  285. data/vendor/cmock/targets/iar_arm_v4.yml +110 -108
  286. data/vendor/cmock/targets/iar_arm_v5.yml +95 -93
  287. data/vendor/cmock/test/c/TestCMockC.c +323 -323
  288. data/vendor/cmock/test/c/TestCMockC.yml +1 -0
  289. data/vendor/cmock/test/c/TestCMockCDynamic.c +186 -186
  290. data/vendor/cmock/test/c/TestCMockCDynamic_Runner.c +36 -36
  291. data/vendor/cmock/test/c/TestCMockC_Runner.c +39 -39
  292. data/vendor/cmock/test/system/systest_generator.rb +194 -194
  293. data/vendor/cmock/test/system/test_compilation/callingconv.h +11 -11
  294. data/vendor/cmock/test/system/test_compilation/osek.h +275 -275
  295. data/vendor/cmock/test/system/test_compilation/parsing.h +2 -0
  296. data/vendor/cmock/test/system/test_interactions/all_plugins_but_other_limits.yml +375 -375
  297. data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +459 -389
  298. data/vendor/cmock/test/system/test_interactions/array_and_pointer_handling.yml +62 -0
  299. data/vendor/cmock/test/system/test_interactions/doesnt_leave_details_behind.yml +308 -0
  300. data/vendor/cmock/test/system/test_interactions/enforce_strict_ordering.yml +23 -23
  301. data/vendor/cmock/test/system/test_interactions/out_of_memory.yml +65 -0
  302. data/vendor/cmock/test/system/test_interactions/parsing_challenges.yml +38 -20
  303. data/vendor/cmock/test/system/test_interactions/struct_union_enum_expect_and_return_with_plugins.yml +280 -0
  304. data/vendor/cmock/test/test_helper.rb +47 -47
  305. data/vendor/cmock/test/unit/cmock_config_test.rb +118 -118
  306. data/vendor/cmock/test/unit/cmock_config_test.yml +5 -5
  307. data/vendor/cmock/test/unit/cmock_file_writer_test.rb +27 -27
  308. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +507 -489
  309. data/vendor/cmock/test/unit/cmock_generator_plugin_array_test.rb +133 -133
  310. data/vendor/cmock/test/unit/cmock_generator_plugin_callback_test.rb +257 -189
  311. data/vendor/cmock/test/unit/cmock_generator_plugin_cexception_test.rb +96 -93
  312. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_a_test.rb +186 -0
  313. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +60 -81
  314. data/vendor/cmock/test/unit/{cmock_generator_plugin_expect_test.rb → cmock_generator_plugin_expect_b_test.rb} +202 -205
  315. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_arg_test.rb +116 -116
  316. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +105 -103
  317. data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +134 -134
  318. data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +377 -334
  319. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +1381 -1337
  320. data/vendor/cmock/test/unit/cmock_plugin_manager_test.rb +95 -95
  321. data/vendor/cmock/test/unit/cmock_unityhelper_parser_test.rb +223 -223
  322. data/vendor/cmock/vendor/c_exception/Gemfile +4 -0
  323. data/vendor/cmock/vendor/c_exception/Gemfile.lock +12 -0
  324. data/vendor/cmock/vendor/c_exception/LICENSE.txt +30 -0
  325. data/vendor/cmock/vendor/c_exception/README.md +146 -0
  326. data/vendor/cmock/vendor/c_exception/Rakefile +42 -0
  327. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  328. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  329. data/vendor/cmock/vendor/c_exception/docs/readme.txt +242 -0
  330. data/vendor/cmock/vendor/c_exception/lib/CException.c +46 -0
  331. data/vendor/cmock/vendor/c_exception/lib/CException.h +86 -0
  332. data/vendor/cmock/vendor/c_exception/makefile +24 -0
  333. data/vendor/cmock/vendor/c_exception/release/build.info +2 -0
  334. data/vendor/cmock/vendor/c_exception/release/version.info +2 -0
  335. data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +46 -0
  336. data/vendor/cmock/vendor/c_exception/test/TestException.c +342 -0
  337. data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +74 -0
  338. data/vendor/cmock/vendor/c_exception/vendor/unity/Gemfile +4 -0
  339. data/vendor/cmock/vendor/c_exception/vendor/unity/Gemfile.lock +12 -0
  340. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +115 -0
  341. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +39 -0
  342. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -0
  343. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_module.rb +202 -0
  344. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +320 -0
  345. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/parseOutput.rb +189 -0
  346. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +23 -0
  347. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +139 -0
  348. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  349. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  350. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +216 -0
  351. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/license.txt +31 -0
  352. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/makefile +41 -0
  353. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +5 -0
  354. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +24 -0
  355. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +3 -0
  356. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +9 -0
  357. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -0
  358. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -0
  359. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -0
  360. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +46 -0
  361. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +50 -0
  362. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/makefile +45 -0
  363. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +5 -0
  364. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +24 -0
  365. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +3 -0
  366. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +9 -0
  367. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -0
  368. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -0
  369. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -0
  370. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  371. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  372. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  373. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -0
  374. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -0
  375. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/makefile +41 -0
  376. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +44 -0
  377. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +256 -0
  378. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +19 -0
  379. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +24 -0
  380. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +3 -0
  381. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +9 -0
  382. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -0
  383. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +46 -0
  384. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -0
  385. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -0
  386. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode2_Runner.c +46 -0
  387. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode_Runner.c +50 -0
  388. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  389. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +37 -0
  390. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +179 -0
  391. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +9 -0
  392. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +387 -0
  393. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +82 -0
  394. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +44 -0
  395. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +16 -0
  396. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
  397. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
  398. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +341 -0
  399. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +41 -0
  400. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +56 -0
  401. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
  402. data/vendor/cmock/vendor/c_exception/vendor/unity/makefile +37 -0
  403. data/vendor/cmock/vendor/c_exception/vendor/unity/rakefile.rb +61 -0
  404. data/vendor/cmock/vendor/c_exception/vendor/unity/rakefile_helper.rb +249 -0
  405. data/vendor/cmock/vendor/c_exception/vendor/unity/release/build.info +2 -0
  406. data/vendor/cmock/vendor/c_exception/vendor/unity/release/version.info +2 -0
  407. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.c +1145 -0
  408. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.h +307 -0
  409. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity_internals.h +620 -0
  410. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/clang_strict.yml +83 -0
  411. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/gcc_32.yml +44 -0
  412. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/gcc_64.yml +45 -0
  413. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/hitech_picc18.yml +101 -0
  414. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_arm_v4.yml +89 -0
  415. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_arm_v5.yml +79 -0
  416. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_arm_v5_3.yml +79 -0
  417. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
  418. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_cortexm3_v5.yml +83 -0
  419. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_msp430.yml +94 -0
  420. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_sh2a_v6.yml +85 -0
  421. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +57 -0
  422. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +53 -0
  423. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +79 -0
  424. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +75 -0
  425. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +88 -0
  426. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +88 -0
  427. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +76 -0
  428. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +88 -0
  429. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +88 -0
  430. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +89 -0
  431. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +63 -0
  432. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +66 -0
  433. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +54 -0
  434. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +63 -0
  435. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +66 -0
  436. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +67 -0
  437. data/vendor/cmock/vendor/c_exception/vendor/unity/test/test_generate_test_runner.rb +88 -0
  438. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +51 -0
  439. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/sample.yml +9 -0
  440. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testsample.c +51 -0
  441. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testparameterized.c +101 -0
  442. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testunity.c +3447 -0
  443. data/vendor/cmock/vendor/unity/README.md +211 -0
  444. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +115 -0
  445. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +39 -0
  446. data/vendor/cmock/vendor/unity/auto/generate_config.yml +36 -0
  447. data/vendor/cmock/vendor/unity/auto/generate_module.rb +202 -0
  448. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +374 -0
  449. data/vendor/cmock/vendor/unity/auto/parseOutput.rb +191 -0
  450. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +23 -0
  451. data/vendor/cmock/vendor/unity/auto/type_sanitizer.rb +8 -0
  452. data/vendor/cmock/vendor/unity/auto/unity_test_summary.py +135 -0
  453. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +148 -0
  454. data/vendor/cmock/vendor/unity/docs/Unity Summary.odt +0 -0
  455. data/vendor/cmock/vendor/unity/docs/Unity Summary.pdf +0 -0
  456. data/vendor/cmock/vendor/unity/docs/Unity Summary.txt +224 -0
  457. data/vendor/cmock/vendor/unity/docs/license.txt +21 -0
  458. data/vendor/{unity/examples/example_3 → cmock/vendor/unity/examples/example_1}/makefile +9 -5
  459. data/vendor/cmock/vendor/unity/examples/example_1/readme.txt +5 -0
  460. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.c +24 -0
  461. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.h +3 -0
  462. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.c +11 -0
  463. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -0
  464. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -0
  465. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -0
  466. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -0
  467. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -0
  468. data/vendor/cmock/vendor/unity/examples/example_2/makefile +71 -0
  469. data/vendor/cmock/vendor/unity/examples/example_2/readme.txt +5 -0
  470. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.c +24 -0
  471. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.h +3 -0
  472. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.c +11 -0
  473. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -0
  474. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -0
  475. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -0
  476. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  477. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  478. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  479. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -0
  480. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -0
  481. data/vendor/cmock/vendor/unity/examples/example_3/rakefile.rb +43 -0
  482. data/vendor/cmock/vendor/unity/examples/example_3/rakefile_helper.rb +256 -0
  483. data/vendor/cmock/vendor/unity/examples/example_3/readme.txt +19 -0
  484. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.c +24 -0
  485. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.h +3 -0
  486. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.c +11 -0
  487. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -0
  488. data/vendor/cmock/vendor/unity/examples/example_3/target_gcc_32.yml +46 -0
  489. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -0
  490. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -0
  491. data/vendor/cmock/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  492. data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +48 -0
  493. data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +179 -0
  494. data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +9 -0
  495. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +423 -0
  496. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +78 -0
  497. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +46 -0
  498. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +45 -0
  499. data/vendor/cmock/vendor/unity/extras/fixture/test/Makefile +19 -0
  500. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
  501. data/vendor/cmock/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
  502. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +373 -0
  503. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +43 -0
  504. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +57 -0
  505. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
  506. data/vendor/cmock/vendor/unity/release/build.info +2 -0
  507. data/vendor/cmock/vendor/unity/release/version.info +2 -0
  508. data/vendor/cmock/vendor/unity/src/unity.c +1324 -0
  509. data/vendor/cmock/vendor/unity/src/unity.h +285 -0
  510. data/vendor/cmock/vendor/unity/src/unity_internals.h +758 -0
  511. data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +57 -0
  512. data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +53 -0
  513. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.c +51 -0
  514. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.h +12 -0
  515. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +80 -0
  516. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +76 -0
  517. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -0
  518. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.h +11 -0
  519. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +89 -0
  520. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +89 -0
  521. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +77 -0
  522. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +89 -0
  523. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +89 -0
  524. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +90 -0
  525. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +63 -0
  526. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +66 -0
  527. data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +54 -0
  528. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +63 -0
  529. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +66 -0
  530. data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +67 -0
  531. data/vendor/cmock/vendor/unity/test/rakefile +60 -0
  532. data/vendor/cmock/vendor/unity/test/rakefile_helper.rb +255 -0
  533. data/vendor/cmock/vendor/unity/test/targets/clang_file.yml +84 -0
  534. data/vendor/cmock/vendor/unity/test/targets/clang_strict.yml +84 -0
  535. data/vendor/cmock/vendor/unity/test/targets/gcc_32.yml +50 -0
  536. data/vendor/cmock/vendor/unity/test/targets/gcc_64.yml +51 -0
  537. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_limits.yml +47 -0
  538. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_sizeof.yml +48 -0
  539. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_stdint.yml +59 -0
  540. data/vendor/cmock/vendor/unity/test/targets/gcc_manual_math.yml +47 -0
  541. data/vendor/cmock/vendor/unity/test/targets/hitech_picc18.yml +101 -0
  542. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v4.yml +89 -0
  543. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5.yml +79 -0
  544. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5_3.yml +79 -0
  545. data/vendor/cmock/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
  546. data/vendor/cmock/vendor/unity/test/targets/iar_cortexm3_v5.yml +83 -0
  547. data/vendor/cmock/vendor/unity/test/targets/iar_msp430.yml +94 -0
  548. data/vendor/cmock/vendor/unity/test/targets/iar_sh2a_v6.yml +85 -0
  549. data/vendor/cmock/vendor/unity/test/testdata/mocksample.c +51 -0
  550. data/vendor/cmock/vendor/unity/test/testdata/sample.yml +9 -0
  551. data/vendor/cmock/vendor/unity/test/testdata/testsample.c +51 -0
  552. data/vendor/cmock/vendor/unity/test/tests/test_generate_test_runner.rb +102 -0
  553. data/vendor/cmock/vendor/unity/test/tests/testparameterized.c +104 -0
  554. data/vendor/cmock/vendor/unity/test/tests/testunity.c +3656 -0
  555. data/vendor/unity/README.md +211 -203
  556. data/vendor/unity/auto/colour_reporter.rb +38 -38
  557. data/vendor/unity/auto/generate_config.yml +36 -36
  558. data/vendor/unity/auto/generate_module.rb +202 -202
  559. data/vendor/unity/auto/generate_test_runner.rb +389 -347
  560. data/vendor/unity/auto/parseOutput.rb +2 -0
  561. data/vendor/unity/auto/unity_test_summary.py +135 -135
  562. data/vendor/unity/auto/unity_test_summary.rb +148 -139
  563. data/vendor/unity/docs/Unity Summary.odt +0 -0
  564. data/vendor/unity/docs/Unity Summary.pdf +0 -0
  565. data/vendor/unity/docs/Unity Summary.txt +224 -216
  566. data/vendor/unity/docs/license.txt +21 -21
  567. data/vendor/unity/examples/example_1/makefile +7 -3
  568. data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +29 -9
  569. data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +26 -6
  570. data/vendor/unity/examples/example_2/makefile +7 -4
  571. data/vendor/unity/extras/fixture/rakefile.rb +48 -48
  572. data/vendor/unity/extras/fixture/rakefile_helper.rb +179 -179
  573. data/vendor/unity/extras/fixture/src/unity_fixture.c +123 -78
  574. data/vendor/unity/extras/fixture/src/unity_fixture.h +6 -14
  575. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +12 -15
  576. data/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +25 -0
  577. data/vendor/unity/extras/fixture/test/Makefile +35 -0
  578. data/vendor/unity/extras/fixture/test/main/AllTests.c +2 -1
  579. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +99 -4
  580. data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +10 -0
  581. data/vendor/unity/extras/fixture/test/unity_output_Spy.c +3 -1
  582. data/vendor/unity/release/build.info +1 -1
  583. data/vendor/unity/release/version.info +1 -1
  584. data/vendor/unity/src/unity.c +1324 -1177
  585. data/vendor/unity/src/unity.h +285 -272
  586. data/vendor/unity/src/unity_internals.h +758 -692
  587. data/vendor/unity/test/expectdata/testsample_head1.c +51 -0
  588. data/vendor/unity/test/expectdata/testsample_head1.h +12 -0
  589. data/vendor/unity/test/expectdata/testsample_mock_cmd.c +1 -0
  590. data/vendor/unity/test/expectdata/testsample_mock_def.c +1 -0
  591. data/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -0
  592. data/vendor/unity/test/expectdata/testsample_mock_head1.h +11 -0
  593. data/vendor/unity/test/expectdata/testsample_mock_new1.c +3 -2
  594. data/vendor/unity/test/expectdata/testsample_mock_new2.c +1 -0
  595. data/vendor/unity/test/expectdata/testsample_mock_param.c +1 -0
  596. data/vendor/unity/test/expectdata/testsample_mock_run1.c +3 -2
  597. data/vendor/unity/test/expectdata/testsample_mock_run2.c +1 -0
  598. data/vendor/unity/test/expectdata/testsample_mock_yaml.c +4 -3
  599. data/vendor/unity/test/expectdata/testsample_new1.c +2 -2
  600. data/vendor/unity/test/expectdata/testsample_run1.c +2 -2
  601. data/vendor/unity/test/expectdata/testsample_yaml.c +3 -3
  602. data/vendor/unity/test/rakefile +60 -60
  603. data/vendor/unity/test/rakefile_helper.rb +255 -249
  604. data/vendor/unity/test/targets/clang_file.yml +83 -0
  605. data/vendor/unity/test/targets/clang_strict.yml +83 -83
  606. data/vendor/unity/test/targets/gcc_32.yml +49 -49
  607. data/vendor/unity/test/targets/gcc_64.yml +50 -50
  608. data/vendor/unity/test/targets/gcc_auto_limits.yml +46 -46
  609. data/vendor/unity/test/targets/gcc_auto_sizeof.yml +47 -47
  610. data/vendor/unity/test/targets/gcc_auto_stdint.yml +58 -58
  611. data/vendor/unity/test/targets/gcc_manual_math.yml +46 -0
  612. data/vendor/unity/test/targets/hitech_picc18.yml +101 -101
  613. data/vendor/unity/test/targets/iar_arm_v4.yml +89 -89
  614. data/vendor/unity/test/targets/iar_arm_v5.yml +79 -79
  615. data/vendor/unity/test/targets/iar_arm_v5_3.yml +79 -79
  616. data/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -93
  617. data/vendor/unity/test/targets/iar_cortexm3_v5.yml +83 -83
  618. data/vendor/unity/test/targets/iar_msp430.yml +94 -94
  619. data/vendor/unity/test/targets/iar_sh2a_v6.yml +85 -85
  620. data/vendor/unity/test/testdata/mocksample.c +51 -51
  621. data/vendor/unity/test/testdata/sample.yml +8 -8
  622. data/vendor/unity/test/testdata/testsample.c +51 -51
  623. data/vendor/unity/test/tests/test_generate_test_runner.rb +102 -88
  624. data/vendor/unity/test/tests/testparameterized.c +104 -101
  625. data/vendor/unity/test/tests/testunity.c +3676 -3447
  626. metadata +549 -191
@@ -1,389 +1,459 @@
1
- ---
2
- :cmock:
3
- :enforce_strict_ordering: 1
4
- :plugins:
5
- - :array
6
- - :cexception
7
- - :ignore
8
- - :callback
9
- - :return_thru_ptr
10
- - :ignore_arg
11
- - :expect_any_args
12
- :callback_after_arg_check: true
13
- :callback_include_count: false
14
- :treat_externs: :include
15
-
16
- :systest:
17
- :types: |
18
- typedef struct _POINT_T {
19
- int x;
20
- int y;
21
- } POINT_T;
22
-
23
- :mockable: |
24
- #include "CException.h"
25
- extern void foo(POINT_T* a);
26
- POINT_T* bar(void);
27
- void fooa(POINT_T a[]);
28
- void foos(const char * a);
29
- const char * bars(void);
30
- void no_pointers(int a, const char* b);
31
- int mixed(int a, int* b, int c);
32
- void no_args(void);
33
-
34
- :source:
35
- :header: |
36
- #include "CException.h"
37
- void function_a(void);
38
- void function_b(void);
39
- void function_c(void);
40
- int function_d(void);
41
- void function_e(void);
42
-
43
- :code: |
44
- void function_a(void)
45
- {
46
- foo(bar());
47
- }
48
-
49
- void function_b(void) {
50
- fooa(bar());
51
- }
52
-
53
- void function_c(void) {
54
- CEXCEPTION_T e;
55
- Try {
56
- foos(bars());
57
- } Catch(e) { foos("err"); }
58
- }
59
-
60
- int function_d(void) {
61
- int test_list[] = { 1, 2, 3, 4, 5 };
62
- no_pointers(1, "silly");
63
- return mixed(6, test_list, 7);
64
- }
65
-
66
- void function_e(void) {
67
- foos("Hello");
68
- foos("Tuna");
69
- foos("Oranges");
70
- }
71
-
72
- :tests:
73
- :common: |
74
- #include "CException.h"
75
- void setUp(void) {}
76
- void tearDown(void) {}
77
- void my_foo_callback(POINT_T* a) { TEST_ASSERT_EQUAL_INT(2, a->x); }
78
-
79
- :units:
80
- - :pass: TRUE
81
- :should: 'handle the situation where we pass nulls to pointers'
82
- :code: |
83
- test()
84
- {
85
- bar_ExpectAndReturn(NULL);
86
- foo_Expect(NULL);
87
-
88
- function_a();
89
- }
90
-
91
- - :pass: FALSE
92
- :should: 'handle the situation where we expected nulls to pointers but did not get that'
93
- :code: |
94
- test()
95
- {
96
- POINT_T pt = {1, 2};
97
- bar_ExpectAndReturn(&pt);
98
- foo_Expect(NULL);
99
-
100
- function_a();
101
- }
102
-
103
- - :pass: FALSE
104
- :should: 'handle the situation where we did not expect nulls to pointers but got null'
105
- :code: |
106
- test()
107
- {
108
- POINT_T ex = {1, 2};
109
- bar_ExpectAndReturn(NULL);
110
- foo_Expect(&ex);
111
-
112
- function_a();
113
- }
114
-
115
- - :pass: FALSE
116
- :should: 'handle the situation where we pass single object with expect and it is wrong'
117
- :code: |
118
- test()
119
- {
120
- POINT_T pt = {1, 2};
121
- POINT_T ex = {1, 3};
122
- bar_ExpectAndReturn(&pt);
123
- foo_Expect(&ex);
124
-
125
- function_a();
126
- }
127
-
128
- - :pass: TRUE
129
- :should: 'handle the situation where we pass single object with expect and use array handler'
130
- :code: |
131
- test()
132
- {
133
- POINT_T pt = {1, 2};
134
- POINT_T ex = {1, 2};
135
- bar_ExpectAndReturn(&pt);
136
- foo_ExpectWithArray(&ex, 1);
137
-
138
- function_a();
139
- }
140
-
141
- - :pass: FALSE
142
- :should: 'handle the situation where we pass single object with expect and use array handler and it is wrong'
143
- :code: |
144
- test()
145
- {
146
- POINT_T pt = {1, 2};
147
- POINT_T ex = {1, 3};
148
- bar_ExpectAndReturn(&pt);
149
- foo_ExpectWithArray(&ex, 1);
150
-
151
- function_a();
152
- }
153
-
154
- - :pass: TRUE
155
- :should: 'handle the situation where we pass multiple objects with expect and use array handler'
156
- :code: |
157
- test()
158
- {
159
- POINT_T pt[] = {{1, 2}, {3, 4}, {5, 6}};
160
- POINT_T ex[] = {{1, 2}, {3, 4}, {5, 6}};
161
- bar_ExpectAndReturn(pt);
162
- foo_ExpectWithArray(ex, 3);
163
-
164
- function_a();
165
- }
166
-
167
- - :pass: FALSE
168
- :should: 'handle the situation where we pass multiple objects with expect and use array handler and it is wrong at end'
169
- :code: |
170
- test()
171
- {
172
- POINT_T pt[] = {{1, 2}, {3, 4}, {5, 6}};
173
- POINT_T ex[] = {{1, 2}, {3, 4}, {5, 9}};
174
- bar_ExpectAndReturn(pt);
175
- foo_ExpectWithArray(ex, 3);
176
-
177
- function_a();
178
- }
179
-
180
- - :pass: TRUE
181
- :should: 'handle the situation where we pass single array element with expect'
182
- :code: |
183
- test()
184
- {
185
- POINT_T pt = {1, 2};
186
- POINT_T ex = {1, 2};
187
- bar_ExpectAndReturn(&pt);
188
- fooa_Expect(&ex);
189
-
190
- function_b();
191
- }
192
-
193
- - :pass: TRUE
194
- :should: 'handle standard c string as null terminated and not do crappy memory compares of a byte, passing'
195
- :code: |
196
- test()
197
- {
198
- const char* retval = "This is a\0 silly string";
199
- bars_ExpectAndReturn((char*)retval);
200
- foos_Expect("This is a\0 wacky string");
201
-
202
- function_c();
203
- }
204
-
205
- - :pass: FALSE
206
- :should: 'handle standard c string as null terminated and not do crappy memory compares of a byte, finding failures'
207
- :code: |
208
- test()
209
- {
210
- const char* retval = "This is a silly string";
211
- bars_ExpectAndReturn((char*)retval);
212
- foos_Expect("This is a wacky string");
213
-
214
- function_c();
215
- }
216
-
217
- - :pass: TRUE
218
- :should: 'handle creating array expects when we have mixed arguments for single object'
219
- :code: |
220
- test()
221
- {
222
- int expect_list[] = { 1, 9 };
223
- no_pointers_Expect(1, "silly");
224
- mixed_ExpectAndReturn(6, expect_list, 7, 13);
225
-
226
- TEST_ASSERT_EQUAL(13, function_d());
227
- }
228
-
229
- - :pass: FALSE
230
- :should: 'handle creating array expects when we have mixed arguments and handle failures for single object'
231
- :code: |
232
- test()
233
- {
234
- int expect_list[] = { 9, 1 };
235
- no_pointers_Expect(1, "silly");
236
- mixed_ExpectAndReturn(6, expect_list, 7, 13);
237
-
238
- TEST_ASSERT_EQUAL(13, function_d());
239
- }
240
-
241
- - :pass: TRUE
242
- :should: 'handle creating array expects when we have mixed arguments for multiple objects'
243
- :code: |
244
- test()
245
- {
246
- int expect_list[] = { 1, 2, 3, 4, 6 };
247
- no_pointers_Expect(1, "silly");
248
- mixed_ExpectWithArrayAndReturn(6, expect_list, 4, 7, 13);
249
-
250
- TEST_ASSERT_EQUAL(13, function_d());
251
- }
252
-
253
- - :pass: FALSE
254
- :should: 'handle creating array expects when we have mixed arguments and handle failures for multiple objects'
255
- :code: |
256
- test()
257
- {
258
- int expect_list[] = { 1, 2, 3, 4, 6 };
259
- no_pointers_Expect(1, "silly");
260
- mixed_ExpectWithArrayAndReturn(6, expect_list, 5, 7, 13);
261
-
262
- TEST_ASSERT_EQUAL(13, function_d());
263
- }
264
-
265
- - :pass: TRUE
266
- :should: 'handle an exception being caught'
267
- :code: |
268
- test()
269
- {
270
- const char* retval = "This is a\0 silly string";
271
- bars_ExpectAndReturn((char*)retval);
272
- foos_ExpectAndThrow("This is a\0 wacky string", 55);
273
- foos_Expect("err");
274
-
275
- function_c();
276
- }
277
-
278
- - :pass: FALSE
279
- :should: 'handle an exception being caught but still catch following errors'
280
- :code: |
281
- test()
282
- {
283
- const char* retval = "This is a\0 silly string";
284
- bars_ExpectAndReturn((char*)retval);
285
- foos_ExpectAndThrow("This is a\0 wacky string", 55);
286
- foos_Expect("wrong error");
287
-
288
- function_c();
289
- }
290
-
291
- - :pass: FALSE
292
- :should: 'fail strict ordering problems even though we would otherwise have passed'
293
- :code: |
294
- test()
295
- {
296
- int expect_list[] = { 1, 2, 3, 4, 6 };
297
- mixed_ExpectWithArrayAndReturn(6, expect_list, 4, 7, 13);
298
- no_pointers_Expect(1, "silly");
299
-
300
- TEST_ASSERT_EQUAL(13, function_d());
301
- }
302
-
303
- - :pass: TRUE
304
- :should: 'that we can properly ignore last function but the other will work properly'
305
- :code: |
306
- test()
307
- {
308
- int expect_list[] = { 1, 2, 3, 4, 6 };
309
- mixed_ExpectWithArrayAndReturn(6, expect_list, 4, 7, 13);
310
- no_pointers_Ignore();
311
-
312
- TEST_ASSERT_EQUAL(13, function_d());
313
- }
314
-
315
- - :pass: TRUE
316
- :should: 'that we can properly ignore first function but the other will work properly'
317
- :code: |
318
- test()
319
- {
320
- mixed_IgnoreAndReturn(13);
321
- no_pointers_Expect(1, "silly");
322
-
323
- TEST_ASSERT_EQUAL(13, function_d());
324
- }
325
-
326
- - :pass: TRUE
327
- :should: 'that we just have to ignore a call once because we are not counting calls'
328
- :code: |
329
- test()
330
- {
331
- foos_Ignore();
332
-
333
- function_e();
334
- }
335
-
336
- - :pass: TRUE
337
- :should: 'that we can use a callback and an expect'
338
- :code: |
339
- test()
340
- {
341
- POINT_T pt1 = {2, 3};
342
- POINT_T pt2 = {2, 3};
343
- bar_ExpectAndReturn(&pt1);
344
- foo_Expect(&pt2);
345
- foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
346
-
347
- function_a();
348
- }
349
-
350
- - :pass: FALSE
351
- :should: 'that we can fail even when using a callback if we want to expect call but did not and we are checking that'
352
- :code: |
353
- test()
354
- {
355
- POINT_T pt = {2, 3};
356
- bar_ExpectAndReturn(&pt);
357
- foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
358
-
359
- function_a();
360
- }
361
-
362
- - :pass: FALSE
363
- :should: 'that we can fail even when using a callback if args are wrong and we are checking those'
364
- :code: |
365
- test()
366
- {
367
- POINT_T pt1 = {2, 3};
368
- POINT_T pt2 = {1, 3};
369
- bar_ExpectAndReturn(&pt1);
370
- foo_Expect(&pt2);
371
- foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
372
-
373
- function_a();
374
- }
375
-
376
- - :pass: FALSE
377
- :should: 'that we can fail from the callback itself'
378
- :code: |
379
- test()
380
- {
381
- POINT_T pt = {3, 3};
382
- bar_ExpectAndReturn(&pt);
383
- foo_Expect(&pt);
384
- foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
385
-
386
- function_a();
387
- }
388
-
389
- ...
1
+ ---
2
+ :cmock:
3
+ :enforce_strict_ordering: 1
4
+ :plugins:
5
+ - :array
6
+ - :cexception
7
+ - :ignore
8
+ - :callback
9
+ - :return_thru_ptr
10
+ - :ignore_arg
11
+ - :expect_any_args
12
+ :callback_after_arg_check: true
13
+ :callback_include_count: false
14
+ :treat_externs: :include
15
+
16
+ :systest:
17
+ :types: |
18
+ typedef struct _POINT_T {
19
+ int x;
20
+ int y;
21
+ } POINT_T;
22
+
23
+ :mockable: |
24
+ #include "CException.h"
25
+ extern void foo(POINT_T* a);
26
+ POINT_T* bar(void);
27
+ void fooa(POINT_T a[]);
28
+ void foos(const char * a);
29
+ const char * bars(void);
30
+ void no_pointers(int a, const char* b);
31
+ int mixed(int a, int* b, int c);
32
+ void no_args(void);
33
+
34
+ :source:
35
+ :header: |
36
+ #include "CException.h"
37
+ void function_a(void);
38
+ void function_b(void);
39
+ void function_c(void);
40
+ int function_d(void);
41
+ void function_e(void);
42
+ int function_f(void);
43
+
44
+ :code: |
45
+ void function_a(void)
46
+ {
47
+ foo(bar());
48
+ }
49
+
50
+ void function_b(void) {
51
+ fooa(bar());
52
+ }
53
+
54
+ void function_c(void) {
55
+ CEXCEPTION_T e;
56
+ Try {
57
+ foos(bars());
58
+ } Catch(e) { foos("err"); }
59
+ }
60
+
61
+ int function_d(void) {
62
+ int test_list[] = { 1, 2, 3, 4, 5 };
63
+ no_pointers(1, "silly");
64
+ return mixed(6, test_list, 7);
65
+ }
66
+
67
+ void function_e(void) {
68
+ foos("Hello");
69
+ foos("Tuna");
70
+ foos("Oranges");
71
+ }
72
+
73
+ int function_f(void) {
74
+ int a = 1;
75
+ int b = 2;
76
+ int c;
77
+ POINT_T* pt = bar();
78
+ c = pt->x;
79
+ c = mixed(a, &b, c);
80
+ return b + c;
81
+ }
82
+
83
+ :tests:
84
+ :common: |
85
+ #include "CException.h"
86
+ void setUp(void) {}
87
+ void tearDown(void) {}
88
+ void my_foo_callback(POINT_T* a) { TEST_ASSERT_EQUAL_INT(2, a->x); }
89
+ int my_mixed_callback(int a, int* b, int c) { return a + *b + c; }
90
+
91
+ :units:
92
+ - :pass: TRUE
93
+ :should: 'handle the situation where we pass nulls to pointers'
94
+ :code: |
95
+ test()
96
+ {
97
+ bar_ExpectAndReturn(NULL);
98
+ foo_Expect(NULL);
99
+
100
+ function_a();
101
+ }
102
+
103
+ - :pass: FALSE
104
+ :should: 'handle the situation where we expected nulls to pointers but did not get that'
105
+ :code: |
106
+ test()
107
+ {
108
+ POINT_T pt = {1, 2};
109
+ bar_ExpectAndReturn(&pt);
110
+ foo_Expect(NULL);
111
+
112
+ function_a();
113
+ }
114
+
115
+ - :pass: FALSE
116
+ :should: 'handle the situation where we did not expect nulls to pointers but got null'
117
+ :code: |
118
+ test()
119
+ {
120
+ POINT_T ex = {1, 2};
121
+ bar_ExpectAndReturn(NULL);
122
+ foo_Expect(&ex);
123
+
124
+ function_a();
125
+ }
126
+
127
+ - :pass: FALSE
128
+ :should: 'handle the situation where we pass single object with expect and it is wrong'
129
+ :code: |
130
+ test()
131
+ {
132
+ POINT_T pt = {1, 2};
133
+ POINT_T ex = {1, 3};
134
+ bar_ExpectAndReturn(&pt);
135
+ foo_Expect(&ex);
136
+
137
+ function_a();
138
+ }
139
+
140
+ - :pass: TRUE
141
+ :should: 'handle the situation where we pass single object with expect and use array handler'
142
+ :code: |
143
+ test()
144
+ {
145
+ POINT_T pt = {1, 2};
146
+ POINT_T ex = {1, 2};
147
+ bar_ExpectAndReturn(&pt);
148
+ foo_ExpectWithArray(&ex, 1);
149
+
150
+ function_a();
151
+ }
152
+
153
+ - :pass: FALSE
154
+ :should: 'handle the situation where we pass single object with expect and use array handler and it is wrong'
155
+ :code: |
156
+ test()
157
+ {
158
+ POINT_T pt = {1, 2};
159
+ POINT_T ex = {1, 3};
160
+ bar_ExpectAndReturn(&pt);
161
+ foo_ExpectWithArray(&ex, 1);
162
+
163
+ function_a();
164
+ }
165
+
166
+ - :pass: TRUE
167
+ :should: 'handle the situation where we pass multiple objects with expect and use array handler'
168
+ :code: |
169
+ test()
170
+ {
171
+ POINT_T pt[] = {{1, 2}, {3, 4}, {5, 6}};
172
+ POINT_T ex[] = {{1, 2}, {3, 4}, {5, 6}};
173
+ bar_ExpectAndReturn(pt);
174
+ foo_ExpectWithArray(ex, 3);
175
+
176
+ function_a();
177
+ }
178
+
179
+ - :pass: FALSE
180
+ :should: 'handle the situation where we pass multiple objects with expect and use array handler and it is wrong at end'
181
+ :code: |
182
+ test()
183
+ {
184
+ POINT_T pt[] = {{1, 2}, {3, 4}, {5, 6}};
185
+ POINT_T ex[] = {{1, 2}, {3, 4}, {5, 9}};
186
+ bar_ExpectAndReturn(pt);
187
+ foo_ExpectWithArray(ex, 3);
188
+
189
+ function_a();
190
+ }
191
+
192
+ - :pass: TRUE
193
+ :should: 'handle the situation where we pass single array element with expect'
194
+ :code: |
195
+ test()
196
+ {
197
+ POINT_T pt = {1, 2};
198
+ POINT_T ex = {1, 2};
199
+ bar_ExpectAndReturn(&pt);
200
+ fooa_Expect(&ex);
201
+
202
+ function_b();
203
+ }
204
+
205
+ - :pass: TRUE
206
+ :should: 'handle standard c string as null terminated and not do crappy memory compares of a byte, passing'
207
+ :code: |
208
+ test()
209
+ {
210
+ const char* retval = "This is a\0 silly string";
211
+ bars_ExpectAndReturn((char*)retval);
212
+ foos_Expect("This is a\0 wacky string");
213
+
214
+ function_c();
215
+ }
216
+
217
+ - :pass: FALSE
218
+ :should: 'handle standard c string as null terminated and not do crappy memory compares of a byte, finding failures'
219
+ :code: |
220
+ test()
221
+ {
222
+ const char* retval = "This is a silly string";
223
+ bars_ExpectAndReturn((char*)retval);
224
+ foos_Expect("This is a wacky string");
225
+
226
+ function_c();
227
+ }
228
+
229
+ - :pass: TRUE
230
+ :should: 'handle creating array expects when we have mixed arguments for single object'
231
+ :code: |
232
+ test()
233
+ {
234
+ int expect_list[] = { 1, 9 };
235
+ no_pointers_Expect(1, "silly");
236
+ mixed_ExpectAndReturn(6, expect_list, 7, 13);
237
+
238
+ TEST_ASSERT_EQUAL(13, function_d());
239
+ }
240
+
241
+ - :pass: FALSE
242
+ :should: 'handle creating array expects when we have mixed arguments and handle failures for single object'
243
+ :code: |
244
+ test()
245
+ {
246
+ int expect_list[] = { 9, 1 };
247
+ no_pointers_Expect(1, "silly");
248
+ mixed_ExpectAndReturn(6, expect_list, 7, 13);
249
+
250
+ TEST_ASSERT_EQUAL(13, function_d());
251
+ }
252
+
253
+ - :pass: TRUE
254
+ :should: 'handle creating array expects when we have mixed arguments for multiple objects'
255
+ :code: |
256
+ test()
257
+ {
258
+ int expect_list[] = { 1, 2, 3, 4, 6 };
259
+ no_pointers_Expect(1, "silly");
260
+ mixed_ExpectWithArrayAndReturn(6, expect_list, 4, 7, 13);
261
+
262
+ TEST_ASSERT_EQUAL(13, function_d());
263
+ }
264
+
265
+ - :pass: FALSE
266
+ :should: 'handle creating array expects when we have mixed arguments and handle failures for multiple objects'
267
+ :code: |
268
+ test()
269
+ {
270
+ int expect_list[] = { 1, 2, 3, 4, 6 };
271
+ no_pointers_Expect(1, "silly");
272
+ mixed_ExpectWithArrayAndReturn(6, expect_list, 5, 7, 13);
273
+
274
+ TEST_ASSERT_EQUAL(13, function_d());
275
+ }
276
+
277
+ - :pass: TRUE
278
+ :should: 'handle an exception being caught'
279
+ :code: |
280
+ test()
281
+ {
282
+ const char* retval = "This is a\0 silly string";
283
+ bars_ExpectAndReturn((char*)retval);
284
+ foos_ExpectAndThrow("This is a\0 wacky string", 55);
285
+ foos_Expect("err");
286
+
287
+ function_c();
288
+ }
289
+
290
+ - :pass: FALSE
291
+ :should: 'handle an exception being caught but still catch following errors'
292
+ :code: |
293
+ test()
294
+ {
295
+ const char* retval = "This is a\0 silly string";
296
+ bars_ExpectAndReturn((char*)retval);
297
+ foos_ExpectAndThrow("This is a\0 wacky string", 55);
298
+ foos_Expect("wrong error");
299
+
300
+ function_c();
301
+ }
302
+
303
+ - :pass: FALSE
304
+ :should: 'fail strict ordering problems even though we would otherwise have passed'
305
+ :code: |
306
+ test()
307
+ {
308
+ int expect_list[] = { 1, 2, 3, 4, 6 };
309
+ mixed_ExpectWithArrayAndReturn(6, expect_list, 4, 7, 13);
310
+ no_pointers_Expect(1, "silly");
311
+
312
+ TEST_ASSERT_EQUAL(13, function_d());
313
+ }
314
+
315
+ - :pass: TRUE
316
+ :should: 'that we can properly ignore last function but the other will work properly'
317
+ :code: |
318
+ test()
319
+ {
320
+ int expect_list[] = { 1, 2, 3, 4, 6 };
321
+ mixed_ExpectWithArrayAndReturn(6, expect_list, 4, 7, 13);
322
+ no_pointers_Ignore();
323
+
324
+ TEST_ASSERT_EQUAL(13, function_d());
325
+ }
326
+
327
+ - :pass: TRUE
328
+ :should: 'that we can properly ignore first function but the other will work properly'
329
+ :code: |
330
+ test()
331
+ {
332
+ mixed_IgnoreAndReturn(13);
333
+ no_pointers_Expect(1, "silly");
334
+
335
+ TEST_ASSERT_EQUAL(13, function_d());
336
+ }
337
+
338
+ - :pass: TRUE
339
+ :should: 'that we just have to ignore a call once because we are not counting calls'
340
+ :code: |
341
+ test()
342
+ {
343
+ foos_Ignore();
344
+
345
+ function_e();
346
+ }
347
+
348
+ - :pass: TRUE
349
+ :should: 'that we can use a callback and an expect'
350
+ :code: |
351
+ test()
352
+ {
353
+ POINT_T pt1 = {2, 3};
354
+ POINT_T pt2 = {2, 3};
355
+ bar_ExpectAndReturn(&pt1);
356
+ foo_Expect(&pt2);
357
+ foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
358
+
359
+ function_a();
360
+ }
361
+
362
+ - :pass: FALSE
363
+ :should: 'that we can fail even when using a callback if we want to expect call but did not and we are checking that'
364
+ :code: |
365
+ test()
366
+ {
367
+ POINT_T pt = {2, 3};
368
+ bar_ExpectAndReturn(&pt);
369
+ foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
370
+
371
+ function_a();
372
+ }
373
+
374
+ - :pass: FALSE
375
+ :should: 'that we can fail even when using a callback if args are wrong and we are checking those'
376
+ :code: |
377
+ test()
378
+ {
379
+ POINT_T pt1 = {2, 3};
380
+ POINT_T pt2 = {1, 3};
381
+ bar_ExpectAndReturn(&pt1);
382
+ foo_Expect(&pt2);
383
+ foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
384
+
385
+ function_a();
386
+ }
387
+
388
+ - :pass: FALSE
389
+ :should: 'that we can fail from the callback itself'
390
+ :code: |
391
+ test()
392
+ {
393
+ POINT_T pt = {3, 3};
394
+ bar_ExpectAndReturn(&pt);
395
+ foo_Expect(&pt);
396
+ foo_StubWithCallback((CMOCK_foo_CALLBACK)my_foo_callback);
397
+
398
+ function_a();
399
+ }
400
+
401
+ - :pass: TRUE
402
+ :should: 'that a callback return value overrides the one from ExpectAndReturn'
403
+ :code: |
404
+ test()
405
+ {
406
+ int b = 2;
407
+ POINT_T pt1 = {3, 4};
408
+ bar_ExpectAndReturn(&pt1);
409
+ mixed_StubWithCallback((CMOCK_mixed_CALLBACK)my_mixed_callback);
410
+ mixed_ExpectAndReturn(1,&b,3,100);
411
+
412
+ TEST_ASSERT_EQUAL(8, function_f());
413
+ }
414
+
415
+ - :pass: TRUE
416
+ :should: 'that a callback return value overrides the one from ExpectAndReturn AND ReturnThruPtr still works'
417
+ :code: |
418
+ test()
419
+ {
420
+ int b_in = 2;
421
+ int b_out = 3;
422
+ POINT_T pt1 = {3, 4};
423
+ bar_ExpectAndReturn(&pt1);
424
+ mixed_StubWithCallback((CMOCK_mixed_CALLBACK)my_mixed_callback);
425
+ mixed_ExpectAndReturn(1,&b_in,3,100);
426
+ mixed_ReturnThruPtr_b(&b_out);
427
+
428
+ TEST_ASSERT_EQUAL(9, function_f()); // (a=1, bin=2, c=pt.x=3, bout=3, sum=9)
429
+ }
430
+
431
+ - :pass: TRUE
432
+ :should: 'that a callback return value overrides the one from ExpectAnyArgs'
433
+ :code: |
434
+ test()
435
+ {
436
+ POINT_T pt1 = {5, 4};
437
+ bar_ExpectAndReturn(&pt1);
438
+ mixed_StubWithCallback((CMOCK_mixed_CALLBACK)my_mixed_callback);
439
+ mixed_ExpectAnyArgsAndReturn(100);
440
+
441
+ TEST_ASSERT_EQUAL(10, function_f()); // (a=1, bin=2, c=pt.x=5, bout=2, sum=10)
442
+ }
443
+
444
+ - :pass: TRUE
445
+ :should: 'that a callback return value overrides the one from ExpectAnyArgs AND ReturnThruPtr still works'
446
+ :code: |
447
+ test()
448
+ {
449
+ int b_out = 3;
450
+ POINT_T pt1 = {5, 4};
451
+ bar_ExpectAndReturn(&pt1);
452
+ mixed_StubWithCallback((CMOCK_mixed_CALLBACK)my_mixed_callback);
453
+ mixed_ExpectAnyArgsAndReturn(100);
454
+ mixed_ReturnThruPtr_b(&b_out);
455
+
456
+ TEST_ASSERT_EQUAL(11, function_f()); // (a=1, bin=2, c=pt.x=5, bout=3, sum=11)
457
+ }
458
+
459
+ ...