ceedling 0.28.1 → 0.28.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (467) hide show
  1. checksums.yaml +4 -4
  2. data/bin/ceedling +3 -2
  3. data/docs/CeedlingPacket.md +4 -0
  4. data/lib/ceedling/configurator_builder.rb +26 -0
  5. data/lib/ceedling/configurator_setup.rb +1 -0
  6. data/lib/ceedling/file_finder.rb +7 -1
  7. data/lib/ceedling/flaginator.rb +28 -8
  8. data/lib/ceedling/rules_release.rake +3 -3
  9. data/lib/ceedling/rules_release_deep_dependencies.rake +1 -1
  10. data/lib/ceedling/version.rb +3 -3
  11. data/plugins/gcov/config/defaults.yml +4 -3
  12. data/plugins/module_generator/lib/module_generator.rb +1 -1
  13. data/plugins/subprojects/README.md +63 -63
  14. data/plugins/subprojects/config/defaults.yml +33 -33
  15. data/plugins/subprojects/lib/subprojects.rb +92 -92
  16. data/plugins/subprojects/subprojects.rake +78 -78
  17. data/vendor/cmock/docs/CMock_Summary.md +75 -60
  18. data/vendor/cmock/lib/cmock_config.rb +1 -0
  19. data/vendor/cmock/lib/cmock_generator.rb +13 -1
  20. data/vendor/cmock/lib/cmock_generator_plugin_expect.rb +1 -1
  21. data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +0 -14
  22. data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +4 -0
  23. data/vendor/cmock/lib/cmock_generator_utils.rb +4 -5
  24. data/vendor/cmock/lib/cmock_header_parser.rb +26 -28
  25. data/vendor/cmock/lib/cmock_plugin_manager.rb +27 -12
  26. data/vendor/cmock/scripts/create_makefile.rb +5 -4
  27. data/vendor/cmock/scripts/test_summary.rb +1 -1
  28. data/vendor/cmock/test/system/test_interactions/ignore_and_return.yml +167 -0
  29. data/vendor/cmock/test/system/test_interactions/ignore_strict_mock_calling.yml +37 -0
  30. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +14 -1
  31. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_b_test.rb +25 -24
  32. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +101 -3
  33. data/vendor/unity/README.md +11 -0
  34. data/vendor/unity/auto/generate_module.rb +3 -3
  35. data/vendor/unity/auto/stylize_as_junit.rb +0 -0
  36. data/vendor/unity/docs/UnityAssertionsReference.md +54 -0
  37. data/vendor/unity/examples/unity_config.h +6 -4
  38. data/vendor/unity/extras/fixture/rakefile_helper.rb +1 -1
  39. data/vendor/unity/extras/fixture/test/Makefile +1 -0
  40. data/vendor/unity/src/unity.c +121 -73
  41. data/vendor/unity/src/unity.h +60 -0
  42. data/vendor/unity/src/unity_internals.h +47 -7
  43. data/vendor/unity/test/Makefile +1 -0
  44. data/vendor/unity/test/rakefile_helper.rb +1 -1
  45. data/vendor/unity/test/tests/testunity.c +508 -164
  46. metadata +3 -423
  47. data/out.fail +0 -21
  48. data/plugins/fake_function_framework/vendor/fff/LICENSE +0 -25
  49. data/plugins/fake_function_framework/vendor/fff/Makefile +0 -10
  50. data/plugins/fake_function_framework/vendor/fff/README.md +0 -454
  51. data/plugins/fake_function_framework/vendor/fff/buildandtest +0 -15
  52. data/plugins/fake_function_framework/vendor/fff/examples/Makefile +0 -7
  53. data/plugins/fake_function_framework/vendor/fff/examples/driver_testing/Makefile +0 -64
  54. data/plugins/fake_function_framework/vendor/fff/examples/driver_testing/driver.c +0 -24
  55. data/plugins/fake_function_framework/vendor/fff/examples/driver_testing/driver.h +0 -11
  56. data/plugins/fake_function_framework/vendor/fff/examples/driver_testing/driver.test.cpp +0 -50
  57. data/plugins/fake_function_framework/vendor/fff/examples/driver_testing/driver.test.fff.cpp +0 -62
  58. data/plugins/fake_function_framework/vendor/fff/examples/driver_testing/hardware_abstraction.h +0 -15
  59. data/plugins/fake_function_framework/vendor/fff/examples/driver_testing/registers.h +0 -13
  60. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/DISPLAY.h +0 -17
  61. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/Kata.txt +0 -25
  62. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/Makefile +0 -67
  63. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/SYSTEM.h +0 -21
  64. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/UI.c +0 -48
  65. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/UI.h +0 -12
  66. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/UI_test_ansic.c +0 -183
  67. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/UI_test_cpp.cpp +0 -136
  68. data/plugins/fake_function_framework/vendor/fff/examples/embedded_ui/test_suite_template.c +0 -34
  69. data/plugins/fake_function_framework/vendor/fff/fakegen.rb +0 -420
  70. data/plugins/fake_function_framework/vendor/fff/fff.h +0 -5112
  71. data/plugins/fake_function_framework/vendor/fff/gtest/Makefile +0 -22
  72. data/plugins/fake_function_framework/vendor/fff/gtest/gtest-all.cc +0 -9118
  73. data/plugins/fake_function_framework/vendor/fff/gtest/gtest-main.cc +0 -6
  74. data/plugins/fake_function_framework/vendor/fff/gtest/gtest.h +0 -19537
  75. data/plugins/fake_function_framework/vendor/fff/test/Makefile +0 -81
  76. data/plugins/fake_function_framework/vendor/fff/test/c_test_framework.h +0 -15
  77. data/plugins/fake_function_framework/vendor/fff/test/fff_test_c.c +0 -108
  78. data/plugins/fake_function_framework/vendor/fff/test/fff_test_cpp.cpp +0 -45
  79. data/plugins/fake_function_framework/vendor/fff/test/fff_test_global_c.c +0 -76
  80. data/plugins/fake_function_framework/vendor/fff/test/fff_test_global_cpp.cpp +0 -23
  81. data/plugins/fake_function_framework/vendor/fff/test/global_fakes.c +0 -13
  82. data/plugins/fake_function_framework/vendor/fff/test/global_fakes.h +0 -37
  83. data/plugins/fake_function_framework/vendor/fff/test/test_cases.include +0 -276
  84. data/vendor/c_exception/vendor/unity/README.md +0 -220
  85. data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +0 -118
  86. data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +0 -39
  87. data/vendor/c_exception/vendor/unity/auto/generate_config.yml +0 -36
  88. data/vendor/c_exception/vendor/unity/auto/generate_module.rb +0 -308
  89. data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +0 -437
  90. data/vendor/c_exception/vendor/unity/auto/parse_output.rb +0 -220
  91. data/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +0 -252
  92. data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +0 -25
  93. data/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +0 -6
  94. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +0 -139
  95. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +0 -136
  96. data/vendor/c_exception/vendor/unity/auto/unity_to_junit.py +0 -146
  97. data/vendor/c_exception/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +0 -207
  98. data/vendor/c_exception/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  99. data/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.md +0 -716
  100. data/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.md +0 -398
  101. data/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.md +0 -191
  102. data/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.md +0 -242
  103. data/vendor/c_exception/vendor/unity/docs/license.txt +0 -21
  104. data/vendor/c_exception/vendor/unity/examples/example_1/makefile +0 -71
  105. data/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +0 -5
  106. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +0 -24
  107. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +0 -3
  108. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +0 -11
  109. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +0 -2
  110. data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +0 -62
  111. data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +0 -31
  112. data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +0 -53
  113. data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +0 -57
  114. data/vendor/c_exception/vendor/unity/examples/example_2/makefile +0 -70
  115. data/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +0 -5
  116. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +0 -24
  117. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +0 -3
  118. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +0 -11
  119. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +0 -2
  120. data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +0 -64
  121. data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +0 -33
  122. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +0 -9
  123. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +0 -11
  124. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +0 -12
  125. data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +0 -10
  126. data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +0 -12
  127. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +0 -43
  128. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +0 -249
  129. data/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +0 -13
  130. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +0 -24
  131. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +0 -3
  132. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +0 -11
  133. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +0 -2
  134. data/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +0 -46
  135. data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +0 -62
  136. data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +0 -31
  137. data/vendor/c_exception/vendor/unity/examples/unity_config.h +0 -237
  138. data/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +0 -26
  139. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +0 -48
  140. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
  141. data/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +0 -9
  142. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +0 -432
  143. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +0 -83
  144. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -51
  145. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -47
  146. data/vendor/c_exception/vendor/unity/extras/fixture/test/Makefile +0 -74
  147. data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +0 -22
  148. data/vendor/c_exception/vendor/unity/extras/fixture/test/template_fixture_tests.c +0 -39
  149. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -543
  150. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -57
  151. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -57
  152. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
  153. data/vendor/c_exception/vendor/unity/release/build.info +0 -2
  154. data/vendor/c_exception/vendor/unity/release/version.info +0 -2
  155. data/vendor/c_exception/vendor/unity/src/unity.c +0 -1517
  156. data/vendor/c_exception/vendor/unity/src/unity.h +0 -339
  157. data/vendor/c_exception/vendor/unity/src/unity_internals.h +0 -784
  158. data/vendor/c_exception/vendor/unity/test/Makefile +0 -63
  159. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +0 -61
  160. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +0 -57
  161. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.c +0 -55
  162. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.h +0 -15
  163. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -80
  164. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +0 -76
  165. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.c +0 -75
  166. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.h +0 -13
  167. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -89
  168. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -89
  169. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +0 -77
  170. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -89
  171. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -89
  172. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -90
  173. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +0 -67
  174. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +0 -70
  175. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +0 -58
  176. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +0 -67
  177. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +0 -70
  178. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +0 -71
  179. data/vendor/c_exception/vendor/unity/test/rakefile +0 -125
  180. data/vendor/c_exception/vendor/unity/test/rakefile_helper.rb +0 -260
  181. data/vendor/c_exception/vendor/unity/test/spec/generate_module_existing_file_spec.rb +0 -158
  182. data/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +0 -78
  183. data/vendor/c_exception/vendor/unity/test/targets/clang_strict.yml +0 -78
  184. data/vendor/c_exception/vendor/unity/test/targets/gcc_32.yml +0 -49
  185. data/vendor/c_exception/vendor/unity/test/targets/gcc_64.yml +0 -50
  186. data/vendor/c_exception/vendor/unity/test/targets/gcc_auto_limits.yml +0 -47
  187. data/vendor/c_exception/vendor/unity/test/targets/gcc_auto_stdint.yml +0 -59
  188. data/vendor/c_exception/vendor/unity/test/targets/gcc_manual_math.yml +0 -47
  189. data/vendor/c_exception/vendor/unity/test/targets/hitech_picc18.yml +0 -101
  190. data/vendor/c_exception/vendor/unity/test/targets/iar_arm_v4.yml +0 -90
  191. data/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5.yml +0 -80
  192. data/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5_3.yml +0 -80
  193. data/vendor/c_exception/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -94
  194. data/vendor/c_exception/vendor/unity/test/targets/iar_cortexm3_v5.yml +0 -84
  195. data/vendor/c_exception/vendor/unity/test/targets/iar_msp430.yml +0 -95
  196. data/vendor/c_exception/vendor/unity/test/targets/iar_sh2a_v6.yml +0 -86
  197. data/vendor/c_exception/vendor/unity/test/testdata/CException.h +0 -11
  198. data/vendor/c_exception/vendor/unity/test/testdata/Defs.h +0 -8
  199. data/vendor/c_exception/vendor/unity/test/testdata/cmock.h +0 -14
  200. data/vendor/c_exception/vendor/unity/test/testdata/mockMock.h +0 -13
  201. data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGenerator.c +0 -183
  202. data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +0 -67
  203. data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +0 -192
  204. data/vendor/c_exception/vendor/unity/test/tests/test_generate_test_runner.rb +0 -1252
  205. data/vendor/c_exception/vendor/unity/test/tests/testparameterized.c +0 -110
  206. data/vendor/c_exception/vendor/unity/test/tests/testunity.c +0 -4993
  207. data/vendor/cmock/vendor/c_exception/Gemfile +0 -4
  208. data/vendor/cmock/vendor/c_exception/Gemfile.lock +0 -12
  209. data/vendor/cmock/vendor/c_exception/LICENSE.txt +0 -30
  210. data/vendor/cmock/vendor/c_exception/README.md +0 -162
  211. data/vendor/cmock/vendor/c_exception/Rakefile +0 -42
  212. data/vendor/cmock/vendor/c_exception/docs/CException.md +0 -292
  213. data/vendor/cmock/vendor/c_exception/docs/ThrowTheSwitchCodingStandard.md +0 -207
  214. data/vendor/cmock/vendor/c_exception/lib/CException.c +0 -46
  215. data/vendor/cmock/vendor/c_exception/lib/CException.h +0 -110
  216. data/vendor/cmock/vendor/c_exception/makefile +0 -24
  217. data/vendor/cmock/vendor/c_exception/release/build.info +0 -2
  218. data/vendor/cmock/vendor/c_exception/release/version.info +0 -2
  219. data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +0 -46
  220. data/vendor/cmock/vendor/c_exception/test/TestException.c +0 -391
  221. data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +0 -67
  222. data/vendor/cmock/vendor/c_exception/vendor/unity/README.md +0 -220
  223. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +0 -118
  224. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +0 -39
  225. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_config.yml +0 -36
  226. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_module.rb +0 -308
  227. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +0 -437
  228. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/parse_output.rb +0 -220
  229. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +0 -252
  230. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +0 -25
  231. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +0 -6
  232. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +0 -139
  233. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +0 -136
  234. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_to_junit.py +0 -146
  235. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +0 -207
  236. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  237. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.md +0 -716
  238. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.md +0 -398
  239. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.md +0 -191
  240. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.md +0 -242
  241. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/license.txt +0 -21
  242. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/makefile +0 -71
  243. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +0 -5
  244. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +0 -24
  245. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +0 -3
  246. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +0 -11
  247. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +0 -2
  248. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +0 -62
  249. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +0 -31
  250. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +0 -53
  251. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +0 -57
  252. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/makefile +0 -70
  253. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +0 -5
  254. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +0 -24
  255. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +0 -3
  256. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +0 -11
  257. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +0 -2
  258. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +0 -64
  259. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +0 -33
  260. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +0 -9
  261. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +0 -11
  262. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +0 -12
  263. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +0 -10
  264. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +0 -12
  265. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +0 -43
  266. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +0 -249
  267. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +0 -13
  268. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +0 -24
  269. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +0 -3
  270. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +0 -11
  271. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +0 -2
  272. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +0 -46
  273. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +0 -62
  274. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +0 -31
  275. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/unity_config.h +0 -237
  276. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +0 -26
  277. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +0 -48
  278. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
  279. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +0 -9
  280. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +0 -432
  281. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +0 -83
  282. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -51
  283. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -47
  284. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/Makefile +0 -74
  285. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +0 -22
  286. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/template_fixture_tests.c +0 -39
  287. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -543
  288. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -57
  289. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -57
  290. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
  291. data/vendor/cmock/vendor/c_exception/vendor/unity/release/build.info +0 -2
  292. data/vendor/cmock/vendor/c_exception/vendor/unity/release/version.info +0 -2
  293. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.c +0 -1517
  294. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.h +0 -339
  295. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity_internals.h +0 -784
  296. data/vendor/cmock/vendor/c_exception/vendor/unity/test/Makefile +0 -63
  297. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +0 -61
  298. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +0 -57
  299. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.c +0 -55
  300. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.h +0 -15
  301. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -80
  302. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +0 -76
  303. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.c +0 -75
  304. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.h +0 -13
  305. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -89
  306. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -89
  307. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +0 -77
  308. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -89
  309. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -89
  310. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -90
  311. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +0 -67
  312. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +0 -70
  313. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +0 -58
  314. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +0 -67
  315. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +0 -70
  316. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +0 -71
  317. data/vendor/cmock/vendor/c_exception/vendor/unity/test/rakefile +0 -125
  318. data/vendor/cmock/vendor/c_exception/vendor/unity/test/rakefile_helper.rb +0 -260
  319. data/vendor/cmock/vendor/c_exception/vendor/unity/test/spec/generate_module_existing_file_spec.rb +0 -158
  320. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +0 -78
  321. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/clang_strict.yml +0 -78
  322. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_32.yml +0 -49
  323. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_64.yml +0 -50
  324. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_auto_limits.yml +0 -47
  325. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_auto_stdint.yml +0 -59
  326. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_manual_math.yml +0 -47
  327. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/hitech_picc18.yml +0 -101
  328. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_arm_v4.yml +0 -90
  329. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5.yml +0 -80
  330. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5_3.yml +0 -80
  331. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -94
  332. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_cortexm3_v5.yml +0 -84
  333. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_msp430.yml +0 -95
  334. data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_sh2a_v6.yml +0 -86
  335. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/CException.h +0 -11
  336. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/Defs.h +0 -8
  337. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/cmock.h +0 -14
  338. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/mockMock.h +0 -13
  339. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGenerator.c +0 -183
  340. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +0 -67
  341. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +0 -192
  342. data/vendor/cmock/vendor/c_exception/vendor/unity/test/tests/test_generate_test_runner.rb +0 -1252
  343. data/vendor/cmock/vendor/c_exception/vendor/unity/test/tests/testparameterized.c +0 -110
  344. data/vendor/cmock/vendor/c_exception/vendor/unity/test/tests/testunity.c +0 -4993
  345. data/vendor/cmock/vendor/unity/README.md +0 -220
  346. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +0 -118
  347. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +0 -39
  348. data/vendor/cmock/vendor/unity/auto/generate_config.yml +0 -36
  349. data/vendor/cmock/vendor/unity/auto/generate_module.rb +0 -308
  350. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +0 -437
  351. data/vendor/cmock/vendor/unity/auto/parse_output.rb +0 -220
  352. data/vendor/cmock/vendor/unity/auto/stylize_as_junit.rb +0 -252
  353. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +0 -25
  354. data/vendor/cmock/vendor/unity/auto/type_sanitizer.rb +0 -6
  355. data/vendor/cmock/vendor/unity/auto/unity_test_summary.py +0 -139
  356. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +0 -136
  357. data/vendor/cmock/vendor/unity/auto/unity_to_junit.py +0 -146
  358. data/vendor/cmock/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +0 -207
  359. data/vendor/cmock/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  360. data/vendor/cmock/vendor/unity/docs/UnityAssertionsReference.md +0 -716
  361. data/vendor/cmock/vendor/unity/docs/UnityConfigurationGuide.md +0 -398
  362. data/vendor/cmock/vendor/unity/docs/UnityGettingStartedGuide.md +0 -191
  363. data/vendor/cmock/vendor/unity/docs/UnityHelperScriptsGuide.md +0 -242
  364. data/vendor/cmock/vendor/unity/docs/license.txt +0 -21
  365. data/vendor/cmock/vendor/unity/examples/example_1/makefile +0 -71
  366. data/vendor/cmock/vendor/unity/examples/example_1/readme.txt +0 -5
  367. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.c +0 -24
  368. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.h +0 -3
  369. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.c +0 -11
  370. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.h +0 -2
  371. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode.c +0 -62
  372. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode2.c +0 -31
  373. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +0 -53
  374. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +0 -57
  375. data/vendor/cmock/vendor/unity/examples/example_2/makefile +0 -70
  376. data/vendor/cmock/vendor/unity/examples/example_2/readme.txt +0 -5
  377. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.c +0 -24
  378. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.h +0 -3
  379. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.c +0 -11
  380. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.h +0 -2
  381. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode.c +0 -64
  382. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode2.c +0 -33
  383. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +0 -9
  384. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +0 -11
  385. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/all_tests.c +0 -12
  386. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.c +0 -10
  387. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.h +0 -12
  388. data/vendor/cmock/vendor/unity/examples/example_3/rakefile.rb +0 -43
  389. data/vendor/cmock/vendor/unity/examples/example_3/rakefile_helper.rb +0 -249
  390. data/vendor/cmock/vendor/unity/examples/example_3/readme.txt +0 -13
  391. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.c +0 -24
  392. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.h +0 -3
  393. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.c +0 -11
  394. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.h +0 -2
  395. data/vendor/cmock/vendor/unity/examples/example_3/target_gcc_32.yml +0 -46
  396. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode.c +0 -62
  397. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode2.c +0 -31
  398. data/vendor/cmock/vendor/unity/examples/unity_config.h +0 -237
  399. data/vendor/cmock/vendor/unity/extras/eclipse/error_parsers.txt +0 -26
  400. data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +0 -48
  401. data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
  402. data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +0 -9
  403. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +0 -432
  404. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +0 -83
  405. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -51
  406. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -47
  407. data/vendor/cmock/vendor/unity/extras/fixture/test/Makefile +0 -74
  408. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +0 -22
  409. data/vendor/cmock/vendor/unity/extras/fixture/test/template_fixture_tests.c +0 -39
  410. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -543
  411. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -57
  412. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -57
  413. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
  414. data/vendor/cmock/vendor/unity/release/build.info +0 -2
  415. data/vendor/cmock/vendor/unity/release/version.info +0 -2
  416. data/vendor/cmock/vendor/unity/src/unity.c +0 -1517
  417. data/vendor/cmock/vendor/unity/src/unity.h +0 -339
  418. data/vendor/cmock/vendor/unity/src/unity_internals.h +0 -784
  419. data/vendor/cmock/vendor/unity/test/Makefile +0 -63
  420. data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +0 -61
  421. data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +0 -57
  422. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.c +0 -55
  423. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.h +0 -15
  424. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -80
  425. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +0 -76
  426. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.c +0 -75
  427. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.h +0 -13
  428. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -89
  429. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -89
  430. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +0 -77
  431. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -89
  432. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -89
  433. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -90
  434. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +0 -67
  435. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +0 -70
  436. data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +0 -58
  437. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +0 -67
  438. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +0 -70
  439. data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +0 -71
  440. data/vendor/cmock/vendor/unity/test/rakefile +0 -125
  441. data/vendor/cmock/vendor/unity/test/rakefile_helper.rb +0 -260
  442. data/vendor/cmock/vendor/unity/test/spec/generate_module_existing_file_spec.rb +0 -158
  443. data/vendor/cmock/vendor/unity/test/targets/clang_file.yml +0 -78
  444. data/vendor/cmock/vendor/unity/test/targets/clang_strict.yml +0 -78
  445. data/vendor/cmock/vendor/unity/test/targets/gcc_32.yml +0 -49
  446. data/vendor/cmock/vendor/unity/test/targets/gcc_64.yml +0 -50
  447. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_limits.yml +0 -47
  448. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_stdint.yml +0 -59
  449. data/vendor/cmock/vendor/unity/test/targets/gcc_manual_math.yml +0 -47
  450. data/vendor/cmock/vendor/unity/test/targets/hitech_picc18.yml +0 -101
  451. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v4.yml +0 -90
  452. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5.yml +0 -80
  453. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5_3.yml +0 -80
  454. data/vendor/cmock/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -94
  455. data/vendor/cmock/vendor/unity/test/targets/iar_cortexm3_v5.yml +0 -84
  456. data/vendor/cmock/vendor/unity/test/targets/iar_msp430.yml +0 -95
  457. data/vendor/cmock/vendor/unity/test/targets/iar_sh2a_v6.yml +0 -86
  458. data/vendor/cmock/vendor/unity/test/testdata/CException.h +0 -11
  459. data/vendor/cmock/vendor/unity/test/testdata/Defs.h +0 -8
  460. data/vendor/cmock/vendor/unity/test/testdata/cmock.h +0 -14
  461. data/vendor/cmock/vendor/unity/test/testdata/mockMock.h +0 -13
  462. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGenerator.c +0 -183
  463. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +0 -67
  464. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +0 -192
  465. data/vendor/cmock/vendor/unity/test/tests/test_generate_test_runner.rb +0 -1252
  466. data/vendor/cmock/vendor/unity/test/tests/testparameterized.c +0 -110
  467. data/vendor/cmock/vendor/unity/test/tests/testunity.c +0 -4993
@@ -1,398 +0,0 @@
1
- # Unity Configuration Guide
2
-
3
- ## C Standards, Compilers and Microcontrollers
4
-
5
- The embedded software world contains its challenges. Compilers support different
6
- revisions of the C Standard. They ignore requirements in places, sometimes to
7
- make the language more usable in some special regard. Sometimes it's to simplify
8
- their support. Sometimes it's due to specific quirks of the microcontroller they
9
- are targeting. Simulators add another dimension to this menagerie.
10
-
11
- Unity is designed to run on almost anything that is targeted by a C compiler. It
12
- would be awesome if this could be done with zero configuration. While there are
13
- some targets that come close to this dream, it is sadly not universal. It is
14
- likely that you are going to need at least a couple of the configuration options
15
- described in this document.
16
-
17
- All of Unity's configuration options are `#defines`. Most of these are simple
18
- definitions. A couple are macros with arguments. They live inside the
19
- unity_internals.h header file. We don't necessarily recommend opening that file
20
- unless you really need to. That file is proof that a cross-platform library is
21
- challenging to build. From a more positive perspective, it is also proof that a
22
- great deal of complexity can be centralized primarily to one place in order to
23
- provide a more consistent and simple experience elsewhere.
24
-
25
-
26
- ### Using These Options
27
-
28
- It doesn't matter if you're using a target-specific compiler and a simulator or
29
- a native compiler. In either case, you've got a couple choices for configuring
30
- these options:
31
-
32
- 1. Because these options are specified via C defines, you can pass most of these
33
- options to your compiler through command line compiler flags. Even if you're
34
- using an embedded target that forces you to use their overbearing IDE for all
35
- configuration, there will be a place somewhere in your project to configure
36
- defines for your compiler.
37
- 2. You can create a custom `unity_config.h` configuration file (present in your
38
- toolchain's search paths). In this file, you will list definitions and macros
39
- specific to your target. All you must do is define `UNITY_INCLUDE_CONFIG_H` and
40
- Unity will rely on `unity_config.h` for any further definitions it may need.
41
-
42
-
43
- ## The Options
44
-
45
- ### Integer Types
46
-
47
- If you've been a C developer for long, you probably already know that C's
48
- concept of an integer varies from target to target. The C Standard has rules
49
- about the `int` matching the register size of the target microprocessor. It has
50
- rules about the `int` and how its size relates to other integer types. An `int`
51
- on one target might be 16 bits while on another target it might be 64. There are
52
- more specific types in compilers compliant with C99 or later, but that's
53
- certainly not every compiler you are likely to encounter. Therefore, Unity has a
54
- number of features for helping to adjust itself to match your required integer
55
- sizes. It starts off by trying to do it automatically.
56
-
57
-
58
- ##### `UNITY_EXCLUDE_STDINT_H`
59
-
60
- The first thing that Unity does to guess your types is check `stdint.h`.
61
- This file includes defines like `UINT_MAX` that Unity can make use of to
62
- learn a lot about your system. It's possible you don't want it to do this
63
- (um. why not?) or (more likely) it's possible that your system doesn't
64
- support `stdint.h`. If that's the case, you're going to want to define this.
65
- That way, Unity will know to skip the inclusion of this file and you won't
66
- be left with a compiler error.
67
-
68
- _Example:_
69
- #define UNITY_EXCLUDE_STDINT_H
70
-
71
-
72
- ##### `UNITY_EXCLUDE_LIMITS_H`
73
-
74
- The second attempt to guess your types is to check `limits.h`. Some compilers
75
- that don't support `stdint.h` could include `limits.h` instead. If you don't
76
- want Unity to check this file either, define this to make it skip the inclusion.
77
-
78
- _Example:_
79
- #define UNITY_EXCLUDE_LIMITS_H
80
-
81
-
82
- ##### `UNITY_EXCLUDE_SIZEOF`
83
-
84
- The third and final attempt to guess your types is to use the `sizeof()`
85
- operator. Even if the first two options don't work, this one covers most cases.
86
- There _is_ a rare compiler or two out there that doesn't support sizeof() in the
87
- preprocessing stage, though. For these, you have the ability to disable this
88
- feature as well.
89
-
90
- _Example:_
91
- #define UNITY_EXCLUDE_SIZEOF
92
-
93
- If you've disabled all of the automatic options above, you're going to have to
94
- do the configuration yourself. Don't worry. Even this isn't too bad... there are
95
- just a handful of defines that you are going to specify if you don't like the
96
- defaults.
97
-
98
-
99
- ##### `UNITY_INT_WIDTH`
100
-
101
- Define this to be the number of bits an `int` takes up on your system. The
102
- default, if not autodetected, is 32 bits.
103
-
104
- _Example:_
105
- #define UNITY_INT_WIDTH 16
106
-
107
-
108
- ##### `UNITY_LONG_WIDTH`
109
-
110
- Define this to be the number of bits a `long` takes up on your system. The
111
- default, if not autodetected, is 32 bits. This is used to figure out what kind
112
- of 64-bit support your system can handle. Does it need to specify a `long` or a
113
- `long long` to get a 64-bit value. On 16-bit systems, this option is going to be
114
- ignored.
115
-
116
- _Example:_
117
- #define UNITY_LONG_WIDTH 16
118
-
119
-
120
- ##### `UNITY_POINTER_WIDTH`
121
-
122
- Define this to be the number of bits a pointer takes up on your system. The
123
- default, if not autodetected, is 32-bits. If you're getting ugly compiler
124
- warnings about casting from pointers, this is the one to look at.
125
-
126
- _Example:_
127
- #define UNITY_POINTER_WIDTH 64
128
-
129
-
130
- ##### `UNITY_INCLUDE_64`
131
-
132
- Unity will automatically include 64-bit support if it auto-detects it, or if
133
- your `int`, `long`, or pointer widths are greater than 32-bits. Define this to
134
- enable 64-bit support if none of the other options already did it for you. There
135
- can be a significant size and speed impact to enabling 64-bit support on small
136
- targets, so don't define it if you don't need it.
137
-
138
- _Example:_
139
- #define UNITY_INCLUDE_64
140
-
141
-
142
- ### Floating Point Types
143
-
144
- In the embedded world, it's not uncommon for targets to have no support for
145
- floating point operations at all or to have support that is limited to only
146
- single precision. We are able to guess integer sizes on the fly because integers
147
- are always available in at least one size. Floating point, on the other hand, is
148
- sometimes not available at all. Trying to include `float.h` on these platforms
149
- would result in an error. This leaves manual configuration as the only option.
150
-
151
-
152
- ##### `UNITY_INCLUDE_FLOAT`
153
-
154
- ##### `UNITY_EXCLUDE_FLOAT`
155
-
156
- ##### `UNITY_INCLUDE_DOUBLE`
157
-
158
- ##### `UNITY_EXCLUDE_DOUBLE`
159
-
160
- By default, Unity guesses that you will want single precision floating point
161
- support, but not double precision. It's easy to change either of these using the
162
- include and exclude options here. You may include neither, either, or both, as
163
- suits your needs. For features that are enabled, the following floating point
164
- options also become available.
165
-
166
- _Example:_
167
-
168
- //what manner of strange processor is this?
169
- #define UNITY_EXCLUDE_FLOAT
170
- #define UNITY_INCLUDE_DOUBLE
171
-
172
-
173
- ##### `UNITY_FLOAT_VERBOSE`
174
-
175
- ##### `UNITY_DOUBLE_VERBOSE`
176
-
177
- Unity aims for as small of a footprint as possible and avoids most standard
178
- library calls (some embedded platforms don't have a standard library!). Because
179
- of this, its routines for printing integer values are minimalist and hand-coded.
180
- To keep Unity universal, though, we chose to _not_ develop our own floating
181
- point print routines. Instead, the display of floating point values during a
182
- failure are optional. By default, Unity will not print the actual results of
183
- floating point assertion failure. So a failed assertion will produce a message
184
- like `"Values Not Within Delta"`. If you would like verbose failure messages for
185
- floating point assertions, use these options to give more explicit failure
186
- messages (e.g. `"Expected 4.56 Was 4.68"`). Note that this feature requires the
187
- use of `sprintf` so might not be desirable in all cases.
188
-
189
- _Example:_
190
- #define UNITY_DOUBLE_VERBOSE
191
-
192
-
193
- ##### `UNITY_FLOAT_TYPE`
194
-
195
- If enabled, Unity assumes you want your `FLOAT` asserts to compare standard C
196
- floats. If your compiler supports a specialty floating point type, you can
197
- always override this behavior by using this definition.
198
-
199
- _Example:_
200
- #define UNITY_FLOAT_TYPE float16_t
201
-
202
-
203
- ##### `UNITY_DOUBLE_TYPE`
204
-
205
- If enabled, Unity assumes you want your `DOUBLE` asserts to compare standard C
206
- doubles. If you would like to change this, you can specify something else by
207
- using this option. For example, defining `UNITY_DOUBLE_TYPE` to `long double`
208
- could enable gargantuan floating point types on your 64-bit processor instead of
209
- the standard `double`.
210
-
211
- _Example:_
212
- #define UNITY_DOUBLE_TYPE long double
213
-
214
-
215
- ##### `UNITY_FLOAT_PRECISION`
216
-
217
- ##### `UNITY_DOUBLE_PRECISION`
218
-
219
- If you look up `UNITY_ASSERT_EQUAL_FLOAT` and `UNITY_ASSERT_EQUAL_DOUBLE` as
220
- documented in the big daddy Unity Assertion Guide, you will learn that they are
221
- not really asserting that two values are equal but rather that two values are
222
- "close enough" to equal. "Close enough" is controlled by these precision
223
- configuration options. If you are working with 32-bit floats and/or 64-bit
224
- doubles (the normal on most processors), you should have no need to change these
225
- options. They are both set to give you approximately 1 significant bit in either
226
- direction. The float precision is 0.00001 while the double is 10-12.
227
- For further details on how this works, see the appendix of the Unity Assertion
228
- Guide.
229
-
230
- _Example:_
231
- #define UNITY_FLOAT_PRECISION 0.001f
232
-
233
-
234
- ### Toolset Customization
235
-
236
- In addition to the options listed above, there are a number of other options
237
- which will come in handy to customize Unity's behavior for your specific
238
- toolchain. It is possible that you may not need to touch any of these... but
239
- certain platforms, particularly those running in simulators, may need to jump
240
- through extra hoops to operate properly. These macros will help in those
241
- situations.
242
-
243
-
244
- ##### `UNITY_OUTPUT_CHAR(a)`
245
-
246
- ##### `UNITY_OUTPUT_FLUSH()`
247
-
248
- ##### `UNITY_OUTPUT_START()`
249
-
250
- ##### `UNITY_OUTPUT_COMPLETE()`
251
-
252
- By default, Unity prints its results to `stdout` as it runs. This works
253
- perfectly fine in most situations where you are using a native compiler for
254
- testing. It works on some simulators as well so long as they have `stdout`
255
- routed back to the command line. There are times, however, where the simulator
256
- will lack support for dumping results or you will want to route results
257
- elsewhere for other reasons. In these cases, you should define the
258
- `UNITY_OUTPUT_CHAR` macro. This macro accepts a single character at a time (as
259
- an `int`, since this is the parameter type of the standard C `putchar` function
260
- most commonly used). You may replace this with whatever function call you like.
261
-
262
- _Example:_
263
- Say you are forced to run your test suite on an embedded processor with no
264
- `stdout` option. You decide to route your test result output to a custom serial
265
- `RS232_putc()` function you wrote like thus:
266
-
267
- #define UNITY_OUTPUT_CHAR(a) RS232_putc(a)
268
- #define UNITY_OUTPUT_START() RS232_config(115200,1,8,0)
269
- #define UNITY_OUTPUT_FLUSH() RS232_flush()
270
- #define UNITY_OUTPUT_COMPLETE() RS232_close()
271
-
272
- _Note:_
273
- `UNITY_OUTPUT_FLUSH()` can be set to the standard out flush function simply by
274
- specifying `UNITY_USE_FLUSH_STDOUT`. No other defines are required. If you
275
- specify a custom flush function instead with `UNITY_OUTPUT_FLUSH` directly, it
276
- will declare an instance of your function by default. If you want to disable
277
- this behavior, add `UNITY_OMIT_OUTPUT_FLUSH_HEADER_DECLARATION`.
278
-
279
-
280
- ##### `UNITY_SUPPORT_WEAK`
281
-
282
- For some targets, Unity can make the otherwise required `setUp()` and
283
- `tearDown()` functions optional. This is a nice convenience for test writers
284
- since `setUp` and `tearDown` don't often actually _do_ anything. If you're using
285
- gcc or clang, this option is automatically defined for you. Other compilers can
286
- also support this behavior, if they support a C feature called weak functions. A
287
- weak function is a function that is compiled into your executable _unless_ a
288
- non-weak version of the same function is defined elsewhere. If a non-weak
289
- version is found, the weak version is ignored as if it never existed. If your
290
- compiler supports this feature, you can let Unity know by defining
291
- `UNITY_SUPPORT_WEAK` as the function attributes that would need to be applied to
292
- identify a function as weak. If your compiler lacks support for weak functions,
293
- you will always need to define `setUp` and `tearDown` functions (though they can
294
- be and often will be just empty). The most common options for this feature are:
295
-
296
- _Example:_
297
- #define UNITY_SUPPORT_WEAK weak
298
- #define UNITY_SUPPORT_WEAK __attribute__((weak))
299
-
300
-
301
- ##### `UNITY_PTR_ATTRIBUTE`
302
-
303
- Some compilers require a custom attribute to be assigned to pointers, like
304
- `near` or `far`. In these cases, you can give Unity a safe default for these by
305
- defining this option with the attribute you would like.
306
-
307
- _Example:_
308
- #define UNITY_PTR_ATTRIBUTE __attribute__((far))
309
- #define UNITY_PTR_ATTRIBUTE near
310
-
311
-
312
- ## Getting Into The Guts
313
-
314
- There will be cases where the options above aren't quite going to get everything
315
- perfect. They are likely sufficient for any situation where you are compiling
316
- and executing your tests with a native toolchain (e.g. clang on Mac). These
317
- options may even get you through the majority of cases encountered in working
318
- with a target simulator run from your local command line. But especially if you
319
- must run your test suite on your target hardware, your Unity configuration will
320
- require special help. This special help will usually reside in one of two
321
- places: the `main()` function or the `RUN_TEST` macro. Let's look at how these
322
- work.
323
-
324
-
325
- ##### `main()`
326
-
327
- Each test module is compiled and run on its own, separate from the other test
328
- files in your project. Each test file, therefore, has a `main` function. This
329
- `main` function will need to contain whatever code is necessary to initialize
330
- your system to a workable state. This is particularly true for situations where
331
- you must set up a memory map or initialize a communication channel for the
332
- output of your test results.
333
-
334
- A simple main function looks something like this:
335
-
336
- int main(void) {
337
- UNITY_BEGIN();
338
- RUN_TEST(test_TheFirst);
339
- RUN_TEST(test_TheSecond);
340
- RUN_TEST(test_TheThird);
341
- return UNITY_END();
342
- }
343
-
344
- You can see that our main function doesn't bother taking any arguments. For our
345
- most barebones case, we'll never have arguments because we just run all the
346
- tests each time. Instead, we start by calling `UNITY_BEGIN`. We run each test
347
- (in whatever order we wish). Finally, we call `UNITY_END`, returning its return
348
- value (which is the total number of failures).
349
-
350
- It should be easy to see that you can add code before any test cases are run or
351
- after all the test cases have completed. This allows you to do any needed
352
- system-wide setup or teardown that might be required for your special
353
- circumstances.
354
-
355
-
356
- ##### `RUN_TEST`
357
-
358
- The `RUN_TEST` macro is called with each test case function. Its job is to
359
- perform whatever setup and teardown is necessary for executing a single test
360
- case function. This includes catching failures, calling the test module's
361
- `setUp()` and `tearDown()` functions, and calling `UnityConcludeTest()`. If
362
- using CMock or test coverage, there will be additional stubs in use here. A
363
- simple minimalist RUN_TEST macro looks something like this:
364
-
365
- #define RUN_TEST(testfunc) \
366
- UNITY_NEW_TEST(#testfunc) \
367
- if (TEST_PROTECT()) { \
368
- setUp(); \
369
- testfunc(); \
370
- } \
371
- if (TEST_PROTECT() && (!TEST_IS_IGNORED)) \
372
- tearDown(); \
373
- UnityConcludeTest();
374
-
375
- So that's quite a macro, huh? It gives you a glimpse of what kind of stuff Unity
376
- has to deal with for every single test case. For each test case, we declare that
377
- it is a new test. Then we run `setUp` and our test function. These are run
378
- within a `TEST_PROTECT` block, the function of which is to handle failures that
379
- occur during the test. Then, assuming our test is still running and hasn't been
380
- ignored, we run `tearDown`. No matter what, our last step is to conclude this
381
- test before moving on to the next.
382
-
383
- Let's say you need to add a call to `fsync` to force all of your output data to
384
- flush to a file after each test. You could easily insert this after your
385
- `UnityConcludeTest` call. Maybe you want to write an xml tag before and after
386
- each result set. Again, you could do this by adding lines to this macro. Updates
387
- to this macro are for the occasions when you need an action before or after
388
- every single test case throughout your entire suite of tests.
389
-
390
-
391
- ## Happy Porting
392
-
393
- The defines and macros in this guide should help you port Unity to just about
394
- any C target we can imagine. If you run into a snag or two, don't be afraid of
395
- asking for help on the forums. We love a good challenge!
396
-
397
-
398
- *Find The Latest of This And More at [ThrowTheSwitch.org](https://throwtheswitch.org)*
@@ -1,191 +0,0 @@
1
- # Unity - Getting Started
2
-
3
- ## Welcome
4
-
5
- Congratulations. You're now the proud owner of your very own pile of bits! What
6
- are you going to do with all these ones and zeros? This document should be able
7
- to help you decide just that.
8
-
9
- Unity is a unit test framework. The goal has been to keep it small and
10
- functional. The core Unity test framework is three files: a single C file and a
11
- couple header files. These team up to provide functions and macros to make
12
- testing easier.
13
-
14
- Unity was designed to be cross platform. It works hard to stick with C standards
15
- while still providing support for the many embedded C compilers that bend the
16
- rules. Unity has been used with many compilers, including GCC, IAR, Clang,
17
- Green Hills, Microchip, and MS Visual Studio. It's not much work to get it to
18
- work with a new target.
19
-
20
-
21
- ### Overview of the Documents
22
-
23
- #### Unity Assertions reference
24
-
25
- This document will guide you through all the assertion options provided by
26
- Unity. This is going to be your unit testing bread and butter. You'll spend more
27
- time with assertions than any other part of Unity.
28
-
29
-
30
- #### Unity Assertions Cheat Sheet
31
-
32
- This document contains an abridged summary of the assertions described in the
33
- previous document. It's perfect for printing and referencing while you
34
- familiarize yourself with Unity's options.
35
-
36
-
37
- #### Unity Configuration Guide
38
-
39
- This document is the one to reference when you are going to use Unity with a new
40
- target or compiler. It'll guide you through the configuration options and will
41
- help you customize your testing experience to meet your needs.
42
-
43
-
44
- #### Unity Helper Scripts
45
-
46
- This document describes the helper scripts that are available for simplifying
47
- your testing workflow. It describes the collection of optional Ruby scripts
48
- included in the auto directory of your Unity installation. Neither Ruby nor
49
- these scripts are necessary for using Unity. They are provided as a convenience
50
- for those who wish to use them.
51
-
52
-
53
- #### Unity License
54
-
55
- What's an open source project without a license file? This brief document
56
- describes the terms you're agreeing to when you use this software. Basically, we
57
- want it to be useful to you in whatever context you want to use it, but please
58
- don't blame us if you run into problems.
59
-
60
-
61
- ### Overview of the Folders
62
-
63
- If you have obtained Unity through Github or something similar, you might be
64
- surprised by just how much stuff you suddenly have staring you in the face.
65
- Don't worry, Unity itself is very small. The rest of it is just there to make
66
- your life easier. You can ignore it or use it at your convenience. Here's an
67
- overview of everything in the project.
68
-
69
- - `src` - This is the code you care about! This folder contains a C file and two
70
- header files. These three files _are_ Unity.
71
- - `docs` - You're reading this document, so it's possible you have found your way
72
- into this folder already. This is where all the handy documentation can be
73
- found.
74
- - `examples` - This contains a few examples of using Unity.
75
- - `extras` - These are optional add ons to Unity that are not part of the core
76
- project. If you've reached us through James Grenning's book, you're going to
77
- want to look here.
78
- - `test` - This is how Unity and its scripts are all tested. If you're just using
79
- Unity, you'll likely never need to go in here. If you are the lucky team member
80
- who gets to port Unity to a new toolchain, this is a good place to verify
81
- everything is configured properly.
82
- - `auto` - Here you will find helpful Ruby scripts for simplifying your test
83
- workflow. They are purely optional and are not required to make use of Unity.
84
-
85
-
86
- ## How to Create A Test File
87
-
88
- Test files are C files. Most often you will create a single test file for each C
89
- module that you want to test. The test file should include unity.h and the
90
- header for your C module to be tested.
91
-
92
- Next, a test file will include a `setUp()` and `tearDown()` function. The setUp
93
- function can contain anything you would like to run before each test. The
94
- tearDown function can contain anything you would like to run after each test.
95
- Both functions accept no arguments and return nothing. You may leave either or
96
- both of these blank if you have no need for them. If you're using a compiler
97
- that is configured to make these functions optional, you may leave them off
98
- completely. Not sure? Give it a try. If you compiler complains that it can't
99
- find setUp or tearDown when it links, you'll know you need to at least include
100
- an empty function for these.
101
-
102
- The majority of the file will be a series of test functions. Test functions
103
- follow the convention of starting with the word "test" or "spec". You don't HAVE
104
- to name them this way, but it makes it clear what functions are tests for other
105
- developers. Test functions take no arguments and return nothing. All test
106
- accounting is handled internally in Unity.
107
-
108
- Finally, at the bottom of your test file, you will write a `main()` function.
109
- This function will call `UNITY_BEGIN()`, then `RUN_TEST` for each test, and
110
- finally `UNITY_END()`.This is what will actually trigger each of those test
111
- functions to run, so it is important that each function gets its own `RUN_TEST`
112
- call.
113
-
114
- Remembering to add each test to the main function can get to be tedious. If you
115
- enjoy using helper scripts in your build process, you might consider making use
116
- of our handy generate_test_runner.rb script. This will create the main function
117
- and all the calls for you, assuming that you have followed the suggested naming
118
- conventions. In this case, there is no need for you to include the main function
119
- in your test file at all.
120
-
121
- When you're done, your test file will look something like this:
122
-
123
- ```C
124
- #include "unity.h"
125
- #include "file_to_test.h"
126
-
127
- void setUp(void) {
128
- // set stuff up here
129
- }
130
-
131
- void tearDown(void) {
132
- // clean stuff up here
133
- }
134
-
135
- void test_function_should_doBlahAndBlah(void) {
136
- //test stuff
137
- }
138
-
139
- void test_function_should_doAlsoDoBlah(void) {
140
- //more test stuff
141
- }
142
-
143
- int main(void) {
144
- UNITY_BEGIN();
145
- RUN_TEST(test_function_should_doBlahAndBlah);
146
- RUN_TEST(test_function_should_doAlsoDoBlah);
147
- return UNITY_END();
148
- }
149
- ```
150
-
151
- It's possible that you will require more customization than this, eventually.
152
- For that sort of thing, you're going to want to look at the configuration guide.
153
- This should be enough to get you going, though.
154
-
155
-
156
- ## How to Build and Run A Test File
157
-
158
- This is the single biggest challenge to picking up a new unit testing framework,
159
- at least in a language like C or C++. These languages are REALLY good at getting
160
- you "close to the metal" (why is the phrase metal? Wouldn't it be more accurate
161
- to say "close to the silicon"?). While this feature is usually a good thing, it
162
- can make testing more challenging.
163
-
164
- You have two really good options for toolchains. Depending on where you're
165
- coming from, it might surprise you that neither of these options is running the
166
- unit tests on your hardware.
167
- There are many reasons for this, but here's a short version:
168
- - On hardware, you have too many constraints (processing power, memory, etc),
169
- - On hardware, you don't have complete control over all registers,
170
- - On hardware, unit testing is more challenging,
171
- - Unit testing isn't System testing. Keep them separate.
172
-
173
- Instead of running your tests on your actual hardware, most developers choose to
174
- develop them as native applications (using gcc or MSVC for example) or as
175
- applications running on a simulator. Either is a good option. Native apps have
176
- the advantages of being faster and easier to set up. Simulator apps have the
177
- advantage of working with the same compiler as your target application. The
178
- options for configuring these are discussed in the configuration guide.
179
-
180
- To get either to work, you might need to make a few changes to the file
181
- containing your register set (discussed later).
182
-
183
- In either case, a test is built by linking unity, the test file, and the C
184
- file(s) being tested. These files create an executable which can be run as the
185
- test set for that module. Then, this process is repeated for the next test file.
186
- This flexibility of separating tests into individual executables allows us to
187
- much more thoroughly unit test our system and it keeps all the test code out of
188
- our final release!
189
-
190
-
191
- *Find The Latest of This And More at [ThrowTheSwitch.org](https://throwtheswitch.org)*