ceedling 0.15.1 → 0.15.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (295) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +9 -13
  4. data/README.md +21 -3
  5. data/{rakefile.rb → Rakefile} +0 -0
  6. data/lib/ceedling/version.rb +4 -4
  7. data/lib/ceedling/version.rb.erb +1 -1
  8. data/release/version.info +1 -1
  9. data/vendor/c_exception/Gemfile +1 -1
  10. data/vendor/c_exception/Gemfile.lock +12 -0
  11. data/vendor/c_exception/{docs/license.txt → LICENSE.txt} +9 -9
  12. data/vendor/c_exception/README.md +146 -0
  13. data/vendor/c_exception/{rakefile.rb → Rakefile} +6 -5
  14. data/vendor/c_exception/lib/CException.c +9 -6
  15. data/vendor/c_exception/release/build.info +1 -1
  16. data/vendor/c_exception/release/version.info +1 -1
  17. data/vendor/c_exception/test/CExceptionConfig.h +2 -0
  18. data/vendor/c_exception/test/TestException.c +4 -1
  19. data/vendor/cmock/README.md +24 -0
  20. data/vendor/cmock/{rakefile.rb → Rakefile} +12 -12
  21. data/vendor/cmock/docs/CMock Summary.odt +0 -0
  22. data/vendor/cmock/docs/CMock Summary.pdf +0 -0
  23. data/vendor/cmock/docs/CMock_Summary.md +130 -111
  24. data/vendor/cmock/docs/license.txt +1 -1
  25. data/vendor/cmock/lib/cmock.rb +36 -12
  26. data/vendor/cmock/lib/cmock_config.rb +39 -36
  27. data/vendor/cmock/lib/cmock_generator.rb +33 -25
  28. data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +68 -0
  29. data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +18 -42
  30. data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +2 -2
  31. data/vendor/cmock/lib/cmock_generator_utils.rb +39 -29
  32. data/vendor/cmock/lib/cmock_header_parser.rb +46 -39
  33. data/vendor/cmock/rakefile_helper.rb +38 -38
  34. data/vendor/cmock/src/cmock.c +20 -4
  35. data/vendor/cmock/src/cmock.h +6 -1
  36. data/vendor/cmock/src/cmock_internals.h +26 -3
  37. data/vendor/cmock/targets/clang_strict.yml +85 -0
  38. data/vendor/cmock/targets/gcc.yml +4 -2
  39. data/vendor/cmock/targets/gcc_64.yml +55 -0
  40. data/vendor/cmock/test/c/TestCMockC.c +3 -3
  41. data/vendor/cmock/test/c/TestCMockCDynamic.c +11 -11
  42. data/vendor/cmock/test/c/TestCMockCDynamic_Runner.c +4 -2
  43. data/vendor/cmock/test/c/TestCMockC_Runner.c +1 -1
  44. data/vendor/cmock/test/system/systest_generator.rb +38 -26
  45. data/vendor/cmock/test/system/test_compilation/const.h +8 -3
  46. data/vendor/cmock/test/system/test_interactions/all_plugins_but_other_limits.yml +92 -58
  47. data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +53 -48
  48. data/vendor/cmock/test/system/test_interactions/array_and_pointer_handling.yml +58 -56
  49. data/vendor/cmock/test/system/test_interactions/basic_expect_and_return.yml +19 -18
  50. data/vendor/cmock/test/system/test_interactions/expect_and_return_custom_types.yml +13 -13
  51. data/vendor/cmock/test/system/test_interactions/expect_and_return_treat_as.yml +20 -20
  52. data/vendor/cmock/test/system/test_interactions/expect_any_args.yml +238 -0
  53. data/vendor/cmock/test/system/test_interactions/fancy_pointer_handling.yml +36 -34
  54. data/vendor/cmock/test/system/test_interactions/ignore_and_return.yml +24 -15
  55. data/vendor/cmock/test/system/test_interactions/nonstandard_parsed_stuff_2.yml +11 -11
  56. data/vendor/cmock/test/system/test_interactions/return_thru_ptr_and_expect_any_args.yml +235 -0
  57. data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore_arg.yml +22 -26
  58. data/vendor/cmock/test/system/test_interactions/stubs_with_callbacks.yml +31 -31
  59. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +141 -109
  60. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +82 -0
  61. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +17 -81
  62. data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +10 -10
  63. data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +47 -41
  64. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +290 -227
  65. data/vendor/unity/{rakefile.rb → Rakefile} +13 -6
  66. data/vendor/unity/auto/colour_prompt.rb +33 -12
  67. data/vendor/unity/auto/generate_test_runner.rb +67 -63
  68. data/vendor/unity/auto/parseOutput.rb +189 -0
  69. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/makefile +41 -40
  70. data/vendor/unity/examples/example_1/readme.txt +5 -0
  71. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode.c +24 -24
  72. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode.h +3 -3
  73. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode2.c +9 -9
  74. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode2.h +2 -2
  75. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/test/TestProductionCode.c +62 -62
  76. data/vendor/unity/examples/{test → example_1/test}/TestProductionCode2.c +31 -31
  77. data/vendor/unity/examples/{test/no_ruby → example_1/test/test_runners}/TestProductionCode2_Runner.c +46 -46
  78. data/vendor/unity/examples/{test/no_ruby → example_1/test/test_runners}/TestProductionCode_Runner.c +50 -50
  79. data/vendor/unity/examples/example_2/makefile +45 -0
  80. data/vendor/unity/examples/example_2/readme.txt +5 -0
  81. data/vendor/unity/examples/{src → example_2/src}/ProductionCode.c +24 -24
  82. data/vendor/unity/examples/{src → example_2/src}/ProductionCode.h +3 -3
  83. data/vendor/unity/examples/{src → example_2/src}/ProductionCode2.c +9 -9
  84. data/vendor/unity/examples/{src → example_2/src}/ProductionCode2.h +2 -2
  85. data/vendor/unity/examples/{test → example_2/test}/TestProductionCode.c +64 -62
  86. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_2}/test/TestProductionCode2.c +33 -31
  87. data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  88. data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  89. data/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  90. data/vendor/unity/examples/{helper → example_3/helper}/UnityHelper.c +10 -10
  91. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/helper/UnityHelper.h +12 -12
  92. data/vendor/unity/examples/{makefile → example_3/makefile} +41 -40
  93. data/vendor/unity/examples/{rakefile.rb → example_3/rakefile.rb} +44 -43
  94. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/rakefile_helper.rb +256 -256
  95. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/readme.txt +18 -17
  96. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode.c +24 -24
  97. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode.h +3 -3
  98. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode2.c +9 -9
  99. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode2.h +2 -2
  100. data/vendor/{c_exception/vendor/unity/targets/gcc_64.yml → unity/examples/example_3/target_gcc_32.yml} +46 -44
  101. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/TestProductionCode.c +62 -62
  102. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/TestProductionCode2.c +31 -31
  103. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/no_ruby/TestProductionCode2_Runner.c +46 -46
  104. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/test/no_ruby/TestProductionCode_Runner.c +50 -50
  105. data/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  106. data/vendor/unity/extras/fixture/src/unity_fixture.c +4 -1
  107. data/vendor/unity/extras/fixture/src/unity_fixture.h +17 -16
  108. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +7 -7
  109. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +17 -0
  110. data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +1 -0
  111. data/vendor/unity/makefile +6 -4
  112. data/vendor/unity/rakefile_helper.rb +36 -27
  113. data/vendor/unity/src/unity.c +180 -181
  114. data/vendor/unity/src/unity.h +64 -2
  115. data/vendor/unity/src/unity_internals.h +188 -102
  116. data/vendor/unity/targets/clang_strict.yml +83 -0
  117. data/vendor/unity/targets/gcc_32.yml +5 -0
  118. data/vendor/unity/targets/gcc_64.yml +5 -0
  119. data/vendor/{c_exception/vendor/unity/targets/gcc.yml → unity/targets/gcc_auto_limits.yml} +5 -2
  120. data/vendor/{cmock/vendor/unity/targets/gcc_64.yml → unity/targets/gcc_auto_sizeof.yml} +6 -3
  121. data/vendor/{cmock/vendor/unity/targets/gcc.yml → unity/targets/gcc_auto_stdint.yml} +4 -2
  122. data/vendor/unity/test/expectdata/testsample_cmd.c +57 -54
  123. data/vendor/unity/test/expectdata/testsample_def.c +53 -50
  124. data/vendor/unity/test/expectdata/testsample_mock_cmd.c +79 -76
  125. data/vendor/unity/test/expectdata/testsample_mock_def.c +75 -72
  126. data/vendor/unity/test/expectdata/testsample_mock_new1.c +88 -85
  127. data/vendor/unity/test/expectdata/testsample_mock_new2.c +88 -85
  128. data/vendor/unity/test/expectdata/testsample_mock_param.c +76 -73
  129. data/vendor/unity/test/expectdata/testsample_mock_run1.c +88 -85
  130. data/vendor/unity/test/expectdata/testsample_mock_run2.c +88 -85
  131. data/vendor/unity/test/expectdata/testsample_mock_yaml.c +89 -86
  132. data/vendor/unity/test/expectdata/testsample_new1.c +63 -60
  133. data/vendor/unity/test/expectdata/testsample_new2.c +66 -63
  134. data/vendor/unity/test/expectdata/testsample_param.c +54 -51
  135. data/vendor/unity/test/expectdata/testsample_run1.c +63 -60
  136. data/vendor/unity/test/expectdata/testsample_run2.c +66 -63
  137. data/vendor/unity/test/expectdata/testsample_yaml.c +67 -64
  138. data/vendor/unity/test/test_generate_test_runner.rb +66 -72
  139. data/vendor/unity/test/testunity.c +591 -111
  140. metadata +58 -195
  141. data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +0 -94
  142. data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +0 -39
  143. data/vendor/c_exception/vendor/unity/auto/generate_config.yml +0 -36
  144. data/vendor/c_exception/vendor/unity/auto/generate_module.rb +0 -202
  145. data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +0 -313
  146. data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +0 -23
  147. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +0 -139
  148. data/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  149. data/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  150. data/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +0 -217
  151. data/vendor/c_exception/vendor/unity/docs/license.txt +0 -31
  152. data/vendor/c_exception/vendor/unity/examples/helper/UnityHelper.c +0 -10
  153. data/vendor/c_exception/vendor/unity/examples/helper/UnityHelper.h +0 -12
  154. data/vendor/c_exception/vendor/unity/examples/makefile +0 -40
  155. data/vendor/c_exception/vendor/unity/examples/rakefile.rb +0 -32
  156. data/vendor/c_exception/vendor/unity/examples/rakefile_helper.rb +0 -256
  157. data/vendor/c_exception/vendor/unity/examples/test/no_ruby/TestProductionCode_Runner.c +0 -50
  158. data/vendor/c_exception/vendor/unity/extras/fixture/build/MakefileWorker.mk +0 -331
  159. data/vendor/c_exception/vendor/unity/extras/fixture/build/filterGcov.sh +0 -61
  160. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +0 -37
  161. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
  162. data/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +0 -9
  163. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +0 -381
  164. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +0 -81
  165. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -44
  166. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -16
  167. data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +0 -21
  168. data/vendor/c_exception/vendor/unity/extras/fixture/test/testunity_fixture.c +0 -39
  169. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -321
  170. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -40
  171. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -56
  172. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
  173. data/vendor/c_exception/vendor/unity/makefile +0 -35
  174. data/vendor/c_exception/vendor/unity/rakefile.rb +0 -59
  175. data/vendor/c_exception/vendor/unity/rakefile_helper.rb +0 -240
  176. data/vendor/c_exception/vendor/unity/release/build.info +0 -2
  177. data/vendor/c_exception/vendor/unity/release/version.info +0 -2
  178. data/vendor/c_exception/vendor/unity/src/unity.c +0 -979
  179. data/vendor/c_exception/vendor/unity/src/unity.h +0 -232
  180. data/vendor/c_exception/vendor/unity/src/unity_internals.h +0 -424
  181. data/vendor/c_exception/vendor/unity/targets/hitech_picc18.yml +0 -101
  182. data/vendor/c_exception/vendor/unity/targets/iar_arm_v4.yml +0 -89
  183. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5.yml +0 -79
  184. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5_3.yml +0 -79
  185. data/vendor/c_exception/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -93
  186. data/vendor/c_exception/vendor/unity/targets/iar_cortexm3_v5.yml +0 -83
  187. data/vendor/c_exception/vendor/unity/targets/iar_msp430.yml +0 -94
  188. data/vendor/c_exception/vendor/unity/targets/iar_sh2a_v6.yml +0 -85
  189. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +0 -54
  190. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +0 -50
  191. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -76
  192. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +0 -72
  193. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -85
  194. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -85
  195. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +0 -73
  196. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -85
  197. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -85
  198. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -86
  199. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +0 -60
  200. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +0 -63
  201. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +0 -51
  202. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +0 -60
  203. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +0 -63
  204. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +0 -64
  205. data/vendor/c_exception/vendor/unity/test/test_generate_test_runner.rb +0 -94
  206. data/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +0 -51
  207. data/vendor/c_exception/vendor/unity/test/testdata/sample.yml +0 -9
  208. data/vendor/c_exception/vendor/unity/test/testdata/testsample.c +0 -51
  209. data/vendor/c_exception/vendor/unity/test/testparameterized.c +0 -101
  210. data/vendor/c_exception/vendor/unity/test/testunity.c +0 -2024
  211. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  212. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  213. data/vendor/cmock/vendor/c_exception/docs/license.txt +0 -30
  214. data/vendor/cmock/vendor/c_exception/docs/readme.txt +0 -236
  215. data/vendor/cmock/vendor/c_exception/lib/CException.c +0 -39
  216. data/vendor/cmock/vendor/c_exception/lib/CException.h +0 -70
  217. data/vendor/cmock/vendor/c_exception/makefile +0 -24
  218. data/vendor/cmock/vendor/c_exception/rakefile.rb +0 -41
  219. data/vendor/cmock/vendor/c_exception/release/build.info +0 -2
  220. data/vendor/cmock/vendor/c_exception/release/version.info +0 -2
  221. data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +0 -27
  222. data/vendor/cmock/vendor/c_exception/test/TestException.c +0 -291
  223. data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +0 -62
  224. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +0 -94
  225. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +0 -39
  226. data/vendor/cmock/vendor/unity/auto/generate_config.yml +0 -36
  227. data/vendor/cmock/vendor/unity/auto/generate_module.rb +0 -202
  228. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +0 -313
  229. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +0 -23
  230. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +0 -139
  231. data/vendor/cmock/vendor/unity/docs/Unity Summary.odt +0 -0
  232. data/vendor/cmock/vendor/unity/docs/Unity Summary.pdf +0 -0
  233. data/vendor/cmock/vendor/unity/docs/Unity Summary.txt +0 -217
  234. data/vendor/cmock/vendor/unity/docs/license.txt +0 -31
  235. data/vendor/cmock/vendor/unity/examples/helper/UnityHelper.c +0 -10
  236. data/vendor/cmock/vendor/unity/examples/rakefile.rb +0 -32
  237. data/vendor/cmock/vendor/unity/examples/readme.txt +0 -18
  238. data/vendor/cmock/vendor/unity/examples/test/no_ruby/TestProductionCode2_Runner.c +0 -46
  239. data/vendor/cmock/vendor/unity/extras/fixture/build/MakefileWorker.mk +0 -331
  240. data/vendor/cmock/vendor/unity/extras/fixture/build/filterGcov.sh +0 -61
  241. data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +0 -37
  242. data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
  243. data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +0 -9
  244. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +0 -381
  245. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +0 -81
  246. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -44
  247. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -16
  248. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +0 -21
  249. data/vendor/cmock/vendor/unity/extras/fixture/test/testunity_fixture.c +0 -39
  250. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -321
  251. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -40
  252. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -56
  253. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
  254. data/vendor/cmock/vendor/unity/makefile +0 -35
  255. data/vendor/cmock/vendor/unity/rakefile.rb +0 -48
  256. data/vendor/cmock/vendor/unity/rakefile_helper.rb +0 -240
  257. data/vendor/cmock/vendor/unity/release/build.info +0 -2
  258. data/vendor/cmock/vendor/unity/release/version.info +0 -2
  259. data/vendor/cmock/vendor/unity/src/unity.c +0 -979
  260. data/vendor/cmock/vendor/unity/src/unity.h +0 -232
  261. data/vendor/cmock/vendor/unity/src/unity_internals.h +0 -424
  262. data/vendor/cmock/vendor/unity/targets/hitech_picc18.yml +0 -101
  263. data/vendor/cmock/vendor/unity/targets/iar_arm_v4.yml +0 -89
  264. data/vendor/cmock/vendor/unity/targets/iar_arm_v5.yml +0 -79
  265. data/vendor/cmock/vendor/unity/targets/iar_arm_v5_3.yml +0 -79
  266. data/vendor/cmock/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -93
  267. data/vendor/cmock/vendor/unity/targets/iar_cortexm3_v5.yml +0 -83
  268. data/vendor/cmock/vendor/unity/targets/iar_msp430.yml +0 -94
  269. data/vendor/cmock/vendor/unity/targets/iar_sh2a_v6.yml +0 -85
  270. data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +0 -54
  271. data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +0 -50
  272. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -76
  273. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +0 -72
  274. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -85
  275. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -85
  276. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +0 -73
  277. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -85
  278. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -85
  279. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -86
  280. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +0 -60
  281. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +0 -63
  282. data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +0 -51
  283. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +0 -60
  284. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +0 -63
  285. data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +0 -64
  286. data/vendor/cmock/vendor/unity/test/test_generate_test_runner.rb +0 -94
  287. data/vendor/cmock/vendor/unity/test/testdata/mocksample.c +0 -51
  288. data/vendor/cmock/vendor/unity/test/testdata/sample.yml +0 -9
  289. data/vendor/cmock/vendor/unity/test/testdata/testsample.c +0 -51
  290. data/vendor/cmock/vendor/unity/test/testparameterized.c +0 -101
  291. data/vendor/cmock/vendor/unity/test/testunity.c +0 -2024
  292. data/vendor/unity/Gemfile +0 -4
  293. data/vendor/unity/examples/helper/UnityHelper.h +0 -12
  294. data/vendor/unity/examples/rakefile_helper.rb +0 -256
  295. data/vendor/unity/examples/readme.txt +0 -18
@@ -10,7 +10,7 @@
10
10
  int foo(int a);
11
11
  void bar(int b);
12
12
 
13
- :source:
13
+ :source:
14
14
  :header: |
15
15
  int function(int a, int b, int c);
16
16
  :code: |
@@ -18,7 +18,7 @@
18
18
  {
19
19
  bar(b);
20
20
  return foo(a) + foo(b) + foo(c);
21
- }
21
+ }
22
22
 
23
23
  :tests:
24
24
  :common: |
@@ -36,7 +36,7 @@
36
36
  foo_ExpectAndReturn(3, 30);
37
37
  TEST_ASSERT_EQUAL(60, function(1, 2, 3));
38
38
  }
39
-
39
+
40
40
  - :pass: TRUE
41
41
  :should: 'ignore foo() calls'
42
42
  :code: |
@@ -48,7 +48,16 @@
48
48
  foo_IgnoreAndReturn(80);
49
49
  TEST_ASSERT_EQUAL(130, function(3, 4, 3));
50
50
  }
51
-
51
+
52
+ - :pass: TRUE
53
+ :should: 'ignore the situation where foo() is not called even though we explicitly ignored it'
54
+ :code: |
55
+ test()
56
+ {
57
+ foo_IgnoreAndReturn(20);
58
+ //notice we do not call foo
59
+ }
60
+
52
61
  - :pass: TRUE
53
62
  :should: 'ignore foo() calls and always return last item if we run out'
54
63
  :code: |
@@ -59,7 +68,7 @@
59
68
  foo_IgnoreAndReturn(30);
60
69
  TEST_ASSERT_EQUAL(80, function(3, 4, 9));
61
70
  }
62
-
71
+
63
72
  - :pass: TRUE
64
73
  :should: 'ignore foo() calls and always return only item if only one specified'
65
74
  :code: |
@@ -69,7 +78,7 @@
69
78
  foo_IgnoreAndReturn(20);
70
79
  TEST_ASSERT_EQUAL(60, function(3, 4, 9));
71
80
  }
72
-
81
+
73
82
  - :pass: TRUE
74
83
  :should: 'ignore bar() and foo() calls'
75
84
  :code: |
@@ -79,7 +88,7 @@
79
88
  foo_IgnoreAndReturn(50);
80
89
  TEST_ASSERT_EQUAL(150, function(0, 0, 0));
81
90
  }
82
-
91
+
83
92
  - :pass: TRUE
84
93
  :should: 'ignore foo() calls over multiple mock calls'
85
94
  :code: |
@@ -90,18 +99,18 @@
90
99
  foo_IgnoreAndReturn(60);
91
100
  foo_IgnoreAndReturn(70);
92
101
  TEST_ASSERT_EQUAL(180, function(0, 0, 0));
93
-
102
+
94
103
  bar_Ignore();
95
104
  foo_IgnoreAndReturn(30);
96
105
  foo_IgnoreAndReturn(80);
97
106
  foo_IgnoreAndReturn(10);
98
107
  TEST_ASSERT_EQUAL(120, function(0, 0, 0));
99
-
108
+
100
109
  foo_IgnoreAndReturn(70);
101
110
  foo_IgnoreAndReturn(20);
102
111
  TEST_ASSERT_EQUAL(110, function(0, 0, 0));
103
112
  }
104
-
113
+
105
114
  - :pass: TRUE
106
115
  :should: 'multiple cycles of expects still pass when ignores enabled'
107
116
  :code: |
@@ -112,20 +121,20 @@
112
121
  foo_ExpectAndReturn(2, 60);
113
122
  foo_ExpectAndReturn(3, 70);
114
123
  TEST_ASSERT_EQUAL(180, function(1, 2, 3));
115
-
124
+
116
125
  bar_Expect(5);
117
126
  foo_ExpectAndReturn(4, 30);
118
127
  foo_ExpectAndReturn(5, 80);
119
128
  foo_ExpectAndReturn(6, 10);
120
129
  TEST_ASSERT_EQUAL(120, function(4, 5, 6));
121
-
130
+
122
131
  bar_Expect(8);
123
132
  foo_ExpectAndReturn(7, 70);
124
133
  foo_ExpectAndReturn(8, 20);
125
134
  foo_ExpectAndReturn(9, 20);
126
135
  TEST_ASSERT_EQUAL(110, function(7, 8, 9));
127
136
  }
128
-
137
+
129
138
  - :pass: FALSE
130
139
  :should: 'multiple cycles of expects still fail when ignores enabled'
131
140
  :code: |
@@ -136,13 +145,13 @@
136
145
  foo_ExpectAndReturn(2, 60);
137
146
  foo_ExpectAndReturn(3, 70);
138
147
  TEST_ASSERT_EQUAL(180, function(1, 2, 3));
139
-
148
+
140
149
  bar_Expect(5);
141
150
  foo_ExpectAndReturn(4, 30);
142
151
  foo_ExpectAndReturn(5, 80);
143
152
  foo_ExpectAndReturn(6, 10);
144
153
  TEST_ASSERT_EQUAL(120, function(4, 5, 6));
145
-
154
+
146
155
  bar_Expect(8);
147
156
  foo_ExpectAndReturn(7, 70);
148
157
  foo_ExpectAndReturn(8, 20);
@@ -6,26 +6,26 @@
6
6
 
7
7
  :systest:
8
8
  :types: |
9
-
10
-
9
+
10
+
11
11
  :mockable: |
12
12
  void foo(unsigned char** a);
13
13
  unsigned char** bar(void);
14
14
 
15
- :source:
16
- :header: |
15
+ :source:
16
+ :header: |
17
17
  void function_a(void);
18
18
 
19
19
  :code: |
20
20
  void function_a(void) {
21
21
  foo(bar());
22
22
  }
23
-
23
+
24
24
  :tests:
25
25
  :common: |
26
26
  void setUp(void) {}
27
27
  void tearDown(void) {}
28
-
28
+
29
29
  :units:
30
30
  - :pass: TRUE
31
31
  :should: 'handle two dimensional array of unsigned characters just like we would handle a single dimensional array in expect (where we really only care about first element)'
@@ -34,13 +34,13 @@
34
34
  {
35
35
  unsigned char a[] = { 1, 2, 3, 4, 5, 6 };
36
36
  unsigned char** pa = (unsigned char**)(&a);
37
-
37
+
38
38
  bar_ExpectAndReturn(pa);
39
39
  foo_Expect(pa);
40
-
40
+
41
41
  function_a();
42
42
  }
43
-
43
+
44
44
  - :pass: FALSE
45
45
  :should: 'handle two dimensional array of unsigned characters just like we would handle a single dimensional array in expect as failures (where we really only care about first element)'
46
46
  :code: |
@@ -50,10 +50,10 @@
50
50
  unsigned char b[] = { 5, 6, 7, 8, 9, 0 };
51
51
  unsigned char** pa = (unsigned char**)(&a);
52
52
  unsigned char** pb = (unsigned char**)(&b);
53
-
53
+
54
54
  bar_ExpectAndReturn(pa);
55
55
  foo_Expect(pb);
56
-
56
+
57
57
  function_a();
58
58
  }
59
59
  ...
@@ -0,0 +1,235 @@
1
+ ---
2
+ :cmock:
3
+ :mock_path: test/mocks
4
+ :mock_prefix: mock_
5
+ :treat_as:
6
+ abs_struct: PTR
7
+ intptr: INT*
8
+ :when_ptr: :smart
9
+ :plugins:
10
+ - :array
11
+ - :ignore_arg
12
+ - :return_thru_ptr
13
+
14
+ :systest:
15
+ :types: |
16
+ typedef int *intptr;
17
+
18
+ struct a_struct
19
+ {
20
+ int i1;
21
+ int i2;
22
+ int i3;
23
+ };
24
+
25
+ struct _abs_struct
26
+ {
27
+ int abs_i1;
28
+ int abs_i2;
29
+ };
30
+
31
+ typedef struct _abs_struct abs_struct;
32
+
33
+ :mockable: |
34
+ void ptr_ret_int(int *r);
35
+ void ptr_ret_ints(int *r, int *s);
36
+ void ptr_ret_array(char r[], int len);
37
+ void ptr_ret_typedef(intptr r);
38
+ void ptr_ret_struct(struct a_struct *r);
39
+ void ptr_ret_abstract(abs_struct *r);
40
+ void ptr_ret_abstract_array(abs_struct *r, int len);
41
+ void ptr_ret_const_int(int *r, const int *s);
42
+ void ptr_ret_string(char *s);
43
+
44
+ :source:
45
+ :header: |
46
+ #include <string.h>
47
+ #define lengthof(x) (sizeof(x)/sizeof((x)[0]))
48
+
49
+ :code: |
50
+
51
+ :tests:
52
+ :common: |
53
+ void setUp(void) {}
54
+ void tearDown(void) {}
55
+
56
+ :units:
57
+ - :pass: TRUE
58
+ :should: "handle a single int* argument"
59
+ :code: |
60
+ test()
61
+ {
62
+ int r = 1;
63
+ int res = 4;
64
+
65
+ ptr_ret_int_Expect(&r);
66
+ ptr_ret_int_ReturnThruPtr_r(&res);
67
+ ptr_ret_int(&r);
68
+ TEST_ASSERT_EQUAL(4, r);
69
+ }
70
+
71
+ - :pass: TRUE
72
+ :should: "handle multiple calls"
73
+ :code: |
74
+ test()
75
+ {
76
+ int r = 1;
77
+ int res1 = 4;
78
+ int res2 = 8;
79
+ int res3 = 16;
80
+
81
+ ptr_ret_int_Expect(&r);
82
+ ptr_ret_int_ReturnThruPtr_r(&res1);
83
+ ptr_ret_int_Expect(&r);
84
+ ptr_ret_int_ReturnThruPtr_r(&res2);
85
+ ptr_ret_int_Expect(&r);
86
+ ptr_ret_int_ReturnThruPtr_r(&res3);
87
+
88
+ ptr_ret_int(&r);
89
+ TEST_ASSERT_EQUAL(4, r);
90
+ ptr_ret_int(&r);
91
+ TEST_ASSERT_EQUAL(8, r);
92
+ ptr_ret_int(&r);
93
+ TEST_ASSERT_EQUAL(16, r);
94
+
95
+ }
96
+
97
+ - :pass: TRUE
98
+ :should: "ignore an argument"
99
+ :code: |
100
+ test()
101
+ {
102
+ int r = 1, s = 2;
103
+ int res = 4;
104
+
105
+ ptr_ret_int_Expect(&r);
106
+ ptr_ret_int_IgnoreArg_r();
107
+ ptr_ret_int_ReturnThruPtr_r(&res);
108
+ ptr_ret_int(&s);
109
+ TEST_ASSERT_EQUAL(4, s);
110
+ }
111
+
112
+ - :pass: TRUE
113
+ :should: "ignore a null pointer argument"
114
+ :code: |
115
+ test()
116
+ {
117
+ int r = 1;
118
+ int res = 4;
119
+
120
+ ptr_ret_int_Expect(NULL);
121
+ ptr_ret_int_IgnoreArg_r();
122
+ ptr_ret_int_ReturnThruPtr_r(&res);
123
+ ptr_ret_int(&r);
124
+ TEST_ASSERT_EQUAL(4, r);
125
+ }
126
+
127
+ - :pass: TRUE
128
+ :should: "handle multiple int* arguments"
129
+ :code: |
130
+ test()
131
+ {
132
+ int r, s = 0x0880AA55;
133
+ int r_res = 4;
134
+ int s_res = 6;
135
+
136
+ ptr_ret_ints_Expect(&r, &s);
137
+ ptr_ret_ints_ReturnThruPtr_r(&r_res);
138
+ ptr_ret_ints_ReturnThruPtr_s(&s_res);
139
+ ptr_ret_ints(&r, &s);
140
+ TEST_ASSERT_EQUAL(4, r);
141
+ TEST_ASSERT_EQUAL(6, s);
142
+ }
143
+
144
+ - :pass: TRUE
145
+ :should: "only return through pointer when asked to"
146
+ :code: |
147
+ test()
148
+ {
149
+ int r = 0x0880AA55;
150
+ int s = 0xAA55;
151
+ int r_res = 4;
152
+
153
+ ptr_ret_ints_Expect(&r, &s);
154
+ ptr_ret_ints_ReturnThruPtr_r(&r_res);
155
+ ptr_ret_ints(&r, &s);
156
+ TEST_ASSERT_EQUAL(4, r);
157
+ TEST_ASSERT_EQUAL(0xAA55, s);
158
+ }
159
+
160
+ - :pass: TRUE
161
+ :should: "return an array through a pointer correctly"
162
+ :code: |
163
+ test()
164
+ {
165
+ char r_a[] = "booboorooboo";
166
+ char r_a_ret[] = "FEEFI";
167
+
168
+ ptr_ret_array_Expect(r_a, lengthof(r_a));
169
+ ptr_ret_array_ReturnArrayThruPtr_r(r_a_ret, (int)strlen(r_a_ret));
170
+ ptr_ret_array(r_a, lengthof(r_a));
171
+ TEST_ASSERT_EQUAL_STRING("FEEFIorooboo", r_a);
172
+ }
173
+
174
+ - :pass: TRUE
175
+ :should: "handle structs"
176
+ :code: |
177
+ test()
178
+ {
179
+ struct a_struct r_s = { .i1 = 2, .i2 = 3, .i3 = 4, };
180
+ struct a_struct r_s_ret = { .i1 = 8, .i2 = 16, .i3 = 32, };
181
+
182
+ ptr_ret_struct_Expect(&r_s);
183
+ ptr_ret_struct_ReturnThruPtr_r(&r_s_ret);
184
+ ptr_ret_struct(&r_s);
185
+ TEST_ASSERT_EQUAL_MEMORY(&r_s_ret, &r_s, sizeof(struct a_struct));
186
+ }
187
+
188
+ - :pass: TRUE
189
+ :should: "handle typedefs"
190
+ :code: |
191
+ test()
192
+ {
193
+ abs_struct r_as = {.abs_i1 = 0x1234, .abs_i2 = 0x4567};
194
+ abs_struct r_as_ret = {.abs_i1 = 0xFFAA55, .abs_i2 = 0xAAFFAA};
195
+ ptr_ret_abstract_Expect(&r_as);
196
+ ptr_ret_abstract_ReturnMemThruPtr_r(&r_as_ret, sizeof(abs_struct));
197
+ ptr_ret_abstract(&r_as);
198
+ TEST_ASSERT_EQUAL_MEMORY(&r_as_ret, &r_as, sizeof(abs_struct));
199
+ }
200
+
201
+ - :pass: TRUE
202
+ :should: "only generate ReturnThruPtr definitions for non-const arguments"
203
+ :code: |
204
+ test()
205
+ {
206
+ #if !defined(ptr_ret_const_int_ReturnThruPtr_r)
207
+ TEST_FAIL_MESSAGE("ReturnThruPtr not defined for a pointer argument.");
208
+ #endif
209
+
210
+ #if defined(ptr_ret_const_int_ReturnThruPtr_s)
211
+ TEST_FAIL_MESSAGE("ReturnThruPtr defined for a const pointer argument.");
212
+ #endif
213
+ }
214
+
215
+ - :pass: TRUE
216
+ :should: "generate ReturnThruPtr definitions for string arguments"
217
+ :code: |
218
+ test()
219
+ {
220
+ #if !defined(ptr_ret_string_ReturnThruPtr_s)
221
+ TEST_FAIL_MESSAGE("ReturnThruPtr not defined for a string argument.");
222
+ #endif
223
+ }
224
+
225
+ - :pass: TRUE
226
+ :should: "generate IgnoreArg definitions"
227
+ :code: |
228
+ test()
229
+ {
230
+ #if !defined(ptr_ret_array_IgnoreArg_r) \
231
+ || !defined(ptr_ret_array_IgnoreArg_len) \
232
+ || !defined(ptr_ret_const_int_IgnoreArg_s)
233
+ TEST_FAIL_MESSAGE("IgnoreArg not defined for an argument.");
234
+ #endif
235
+ }
@@ -8,7 +8,7 @@
8
8
  :when_ptr: :smart
9
9
  :plugins:
10
10
  - :array
11
- - :ignore_arg
11
+ - :expect_any_args
12
12
  - :return_thru_ptr
13
13
 
14
14
  :systest:
@@ -21,13 +21,13 @@
21
21
  int i2;
22
22
  int i3;
23
23
  };
24
-
25
- struct _abs_struct
24
+
25
+ struct _abs_struct
26
26
  {
27
27
  int abs_i1;
28
28
  int abs_i2;
29
29
  };
30
-
30
+
31
31
  typedef struct _abs_struct abs_struct;
32
32
 
33
33
  :mockable: |
@@ -61,7 +61,7 @@
61
61
  {
62
62
  int r = 1;
63
63
  int res = 4;
64
-
64
+
65
65
  ptr_ret_int_Expect(&r);
66
66
  ptr_ret_int_ReturnThruPtr_r(&res);
67
67
  ptr_ret_int(&r);
@@ -77,21 +77,21 @@
77
77
  int res1 = 4;
78
78
  int res2 = 8;
79
79
  int res3 = 16;
80
-
80
+
81
81
  ptr_ret_int_Expect(&r);
82
82
  ptr_ret_int_ReturnThruPtr_r(&res1);
83
83
  ptr_ret_int_Expect(&r);
84
84
  ptr_ret_int_ReturnThruPtr_r(&res2);
85
85
  ptr_ret_int_Expect(&r);
86
86
  ptr_ret_int_ReturnThruPtr_r(&res3);
87
-
87
+
88
88
  ptr_ret_int(&r);
89
89
  TEST_ASSERT_EQUAL(4, r);
90
90
  ptr_ret_int(&r);
91
91
  TEST_ASSERT_EQUAL(8, r);
92
92
  ptr_ret_int(&r);
93
93
  TEST_ASSERT_EQUAL(16, r);
94
-
94
+
95
95
  }
96
96
 
97
97
  - :pass: TRUE
@@ -99,11 +99,10 @@
99
99
  :code: |
100
100
  test()
101
101
  {
102
- int r = 1, s = 2;
102
+ int s = 2;
103
103
  int res = 4;
104
-
105
- ptr_ret_int_Expect(&r);
106
- ptr_ret_int_IgnoreArg_r();
104
+
105
+ ptr_ret_int_ExpectAnyArgs();
107
106
  ptr_ret_int_ReturnThruPtr_r(&res);
108
107
  ptr_ret_int(&s);
109
108
  TEST_ASSERT_EQUAL(4, s);
@@ -116,9 +115,8 @@
116
115
  {
117
116
  int r = 1;
118
117
  int res = 4;
119
-
120
- ptr_ret_int_Expect(NULL);
121
- ptr_ret_int_IgnoreArg_r();
118
+
119
+ ptr_ret_int_ExpectAnyArgs();
122
120
  ptr_ret_int_ReturnThruPtr_r(&res);
123
121
  ptr_ret_int(&r);
124
122
  TEST_ASSERT_EQUAL(4, r);
@@ -132,7 +130,7 @@
132
130
  int r, s = 0x0880AA55;
133
131
  int r_res = 4;
134
132
  int s_res = 6;
135
-
133
+
136
134
  ptr_ret_ints_Expect(&r, &s);
137
135
  ptr_ret_ints_ReturnThruPtr_r(&r_res);
138
136
  ptr_ret_ints_ReturnThruPtr_s(&s_res);
@@ -149,7 +147,7 @@
149
147
  int r = 0x0880AA55;
150
148
  int s = 0xAA55;
151
149
  int r_res = 4;
152
-
150
+
153
151
  ptr_ret_ints_Expect(&r, &s);
154
152
  ptr_ret_ints_ReturnThruPtr_r(&r_res);
155
153
  ptr_ret_ints(&r, &s);
@@ -164,9 +162,9 @@
164
162
  {
165
163
  char r_a[] = "booboorooboo";
166
164
  char r_a_ret[] = "FEEFI";
167
-
165
+
168
166
  ptr_ret_array_Expect(r_a, lengthof(r_a));
169
- ptr_ret_array_ReturnArrayThruPtr_r(r_a_ret, strlen(r_a_ret));
167
+ ptr_ret_array_ReturnArrayThruPtr_r(r_a_ret, (int)strlen(r_a_ret));
170
168
  ptr_ret_array(r_a, lengthof(r_a));
171
169
  TEST_ASSERT_EQUAL_STRING("FEEFIorooboo", r_a);
172
170
  }
@@ -178,7 +176,7 @@
178
176
  {
179
177
  struct a_struct r_s = { .i1 = 2, .i2 = 3, .i3 = 4, };
180
178
  struct a_struct r_s_ret = { .i1 = 8, .i2 = 16, .i3 = 32, };
181
-
179
+
182
180
  ptr_ret_struct_Expect(&r_s);
183
181
  ptr_ret_struct_ReturnThruPtr_r(&r_s_ret);
184
182
  ptr_ret_struct(&r_s);
@@ -206,7 +204,7 @@
206
204
  #if !defined(ptr_ret_const_int_ReturnThruPtr_r)
207
205
  TEST_FAIL_MESSAGE("ReturnThruPtr not defined for a pointer argument.");
208
206
  #endif
209
-
207
+
210
208
  #if defined(ptr_ret_const_int_ReturnThruPtr_s)
211
209
  TEST_FAIL_MESSAGE("ReturnThruPtr defined for a const pointer argument.");
212
210
  #endif
@@ -223,13 +221,11 @@
223
221
  }
224
222
 
225
223
  - :pass: TRUE
226
- :should: "generate IgnoreArg definitions"
224
+ :should: "generate ExpectAnyArgs definitions"
227
225
  :code: |
228
226
  test()
229
227
  {
230
- #if !defined(ptr_ret_array_IgnoreArg_r) \
231
- || !defined(ptr_ret_array_IgnoreArg_len) \
232
- || !defined(ptr_ret_const_int_IgnoreArg_s)
233
- TEST_FAIL_MESSAGE("IgnoreArg not defined for an argument.");
228
+ #if !defined(ptr_ret_array_ExpectAnyArgs)
229
+ TEST_FAIL_MESSAGE("ExpectAnyArgs not defined for an argument.");
234
230
  #endif
235
231
  }