ceedling 0.18.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (626) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +17 -13
  3. data/ceedling-0.18.0.gem +0 -0
  4. data/docs/CeedlingPacket.md +7 -5
  5. data/lib/ceedling/configurator_builder.rb +10 -21
  6. data/lib/ceedling/configurator_setup.rb +16 -17
  7. data/lib/ceedling/constants.rb +4 -3
  8. data/lib/ceedling/defaults.rb +9 -4
  9. data/lib/ceedling/dependinator.rb +0 -1
  10. data/lib/ceedling/file_path_utils.rb +22 -26
  11. data/lib/ceedling/flaginator.rb +5 -5
  12. data/lib/ceedling/generator.rb +8 -7
  13. data/lib/ceedling/preprocessinator_file_handler.rb +6 -6
  14. data/lib/ceedling/preprocessinator_includes_handler.rb +1 -1
  15. data/lib/ceedling/rules_release.rake +5 -3
  16. data/lib/ceedling/rules_tests.rake +2 -1
  17. data/lib/ceedling/tasks_base.rake +1 -1
  18. data/lib/ceedling/tasks_vendor.rake +9 -10
  19. data/lib/ceedling/tool_executor.rb +23 -22
  20. data/lib/ceedling/version.rb +3 -3
  21. data/plugins/module_generator/lib/module_generator.rb +3 -3
  22. data/plugins/xml_tests_report/xml_tests_report.rb +1 -1
  23. data/spec/preprocessinator_includes_handler_spec.rb +1 -1
  24. data/spec/spec_system_helper.rb +192 -192
  25. data/vendor/c_exception/vendor/unity/Gemfile +4 -0
  26. data/vendor/c_exception/vendor/unity/Gemfile.lock +12 -0
  27. data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +115 -0
  28. data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +39 -0
  29. data/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -0
  30. data/vendor/c_exception/vendor/unity/auto/generate_module.rb +202 -0
  31. data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +320 -0
  32. data/vendor/c_exception/vendor/unity/auto/parseOutput.rb +189 -0
  33. data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +23 -0
  34. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +139 -0
  35. data/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  36. data/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  37. data/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +216 -0
  38. data/vendor/c_exception/vendor/unity/docs/license.txt +31 -0
  39. data/vendor/c_exception/vendor/unity/examples/example_1/makefile +41 -0
  40. data/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +5 -0
  41. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +24 -0
  42. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +3 -0
  43. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +9 -0
  44. data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -0
  45. data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -0
  46. data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -0
  47. data/vendor/{unity/examples/example_3/test/no_ruby → c_exception/vendor/unity/examples/example_1/test/test_runners}/TestProductionCode2_Runner.c +16 -3
  48. data/vendor/{unity/examples/example_3/test/no_ruby → c_exception/vendor/unity/examples/example_1/test/test_runners}/TestProductionCode_Runner.c +16 -3
  49. data/vendor/c_exception/vendor/unity/examples/example_2/makefile +45 -0
  50. data/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +5 -0
  51. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +24 -0
  52. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +3 -0
  53. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +9 -0
  54. data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -0
  55. data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -0
  56. data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -0
  57. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  58. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  59. data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  60. data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -0
  61. data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -0
  62. data/vendor/c_exception/vendor/unity/examples/example_3/makefile +41 -0
  63. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +44 -0
  64. data/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +256 -0
  65. data/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +19 -0
  66. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +24 -0
  67. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +3 -0
  68. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +9 -0
  69. data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -0
  70. data/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +46 -0
  71. data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -0
  72. data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -0
  73. data/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode2_Runner.c +46 -0
  74. data/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode_Runner.c +50 -0
  75. data/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  76. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +37 -0
  77. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +179 -0
  78. data/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +9 -0
  79. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +387 -0
  80. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +82 -0
  81. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +44 -0
  82. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +16 -0
  83. data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
  84. data/vendor/c_exception/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
  85. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +341 -0
  86. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +41 -0
  87. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +56 -0
  88. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
  89. data/vendor/c_exception/vendor/unity/makefile +37 -0
  90. data/vendor/c_exception/vendor/unity/rakefile.rb +61 -0
  91. data/vendor/c_exception/vendor/unity/rakefile_helper.rb +249 -0
  92. data/vendor/c_exception/vendor/unity/release/build.info +2 -0
  93. data/vendor/c_exception/vendor/unity/release/version.info +2 -0
  94. data/vendor/c_exception/vendor/unity/src/unity.c +1145 -0
  95. data/vendor/c_exception/vendor/unity/src/unity.h +307 -0
  96. data/vendor/c_exception/vendor/unity/src/unity_internals.h +620 -0
  97. data/vendor/c_exception/vendor/unity/targets/clang_strict.yml +83 -0
  98. data/vendor/c_exception/vendor/unity/targets/gcc_32.yml +44 -0
  99. data/vendor/c_exception/vendor/unity/targets/gcc_64.yml +45 -0
  100. data/vendor/c_exception/vendor/unity/targets/hitech_picc18.yml +101 -0
  101. data/vendor/c_exception/vendor/unity/targets/iar_arm_v4.yml +89 -0
  102. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5.yml +79 -0
  103. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5_3.yml +79 -0
  104. data/vendor/c_exception/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
  105. data/vendor/c_exception/vendor/unity/targets/iar_cortexm3_v5.yml +83 -0
  106. data/vendor/c_exception/vendor/unity/targets/iar_msp430.yml +94 -0
  107. data/vendor/c_exception/vendor/unity/targets/iar_sh2a_v6.yml +85 -0
  108. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +57 -0
  109. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +53 -0
  110. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +79 -0
  111. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +75 -0
  112. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +88 -0
  113. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +88 -0
  114. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +76 -0
  115. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +88 -0
  116. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +88 -0
  117. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +89 -0
  118. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +63 -0
  119. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +66 -0
  120. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +54 -0
  121. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +63 -0
  122. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +66 -0
  123. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +67 -0
  124. data/vendor/c_exception/vendor/unity/test/test_generate_test_runner.rb +88 -0
  125. data/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +51 -0
  126. data/vendor/c_exception/vendor/unity/test/testdata/sample.yml +9 -0
  127. data/vendor/c_exception/vendor/unity/test/testdata/testsample.c +51 -0
  128. data/vendor/c_exception/vendor/unity/test/testparameterized.c +101 -0
  129. data/vendor/c_exception/vendor/unity/test/testunity.c +3447 -0
  130. data/vendor/cmock/README.md +1 -1
  131. data/vendor/cmock/Rakefile +106 -104
  132. data/vendor/cmock/config/production_environment.rb +14 -14
  133. data/vendor/cmock/config/test_environment.rb +16 -16
  134. data/vendor/cmock/docs/CMock_Summary.md +9 -0
  135. data/vendor/cmock/docs/license.txt +2 -2
  136. data/vendor/cmock/examples/make_example/Makefile +30 -0
  137. data/vendor/cmock/examples/make_example/src/foo.c +5 -0
  138. data/vendor/cmock/examples/make_example/src/foo.h +5 -0
  139. data/vendor/cmock/examples/make_example/src/main.c +15 -0
  140. data/vendor/cmock/examples/make_example/test/test_foo.c +17 -0
  141. data/vendor/cmock/examples/make_example/test/test_main.c +15 -0
  142. data/vendor/cmock/examples/{gcc.yml → temp_sensor/gcc.yml} +43 -43
  143. data/vendor/cmock/examples/{iar_v4.yml → temp_sensor/iar_v4.yml} +91 -91
  144. data/vendor/cmock/examples/{iar_v5.yml → temp_sensor/iar_v5.yml} +80 -80
  145. data/vendor/cmock/examples/{rakefile.rb → temp_sensor/rakefile.rb} +32 -32
  146. data/vendor/cmock/examples/{rakefile_helper.rb → temp_sensor/rakefile_helper.rb} +270 -270
  147. data/vendor/cmock/examples/{src → temp_sensor/src}/AT91SAM7X256.h +2556 -2556
  148. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcConductor.c +42 -42
  149. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcConductor.h +11 -11
  150. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardware.c +27 -27
  151. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardware.h +9 -9
  152. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardwareConfigurator.c +18 -18
  153. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcHardwareConfigurator.h +10 -10
  154. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcModel.c +33 -33
  155. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcModel.h +13 -13
  156. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcTemperatureSensor.c +51 -51
  157. data/vendor/cmock/examples/{src → temp_sensor/src}/AdcTemperatureSensor.h +10 -10
  158. data/vendor/cmock/examples/{src → temp_sensor/src}/Executor.c +25 -25
  159. data/vendor/cmock/examples/{src → temp_sensor/src}/Executor.h +9 -9
  160. data/vendor/cmock/examples/{src → temp_sensor/src}/IntrinsicsWrapper.c +18 -18
  161. data/vendor/cmock/examples/{src → temp_sensor/src}/IntrinsicsWrapper.h +7 -7
  162. data/vendor/cmock/examples/{src → temp_sensor/src}/Main.c +46 -46
  163. data/vendor/cmock/examples/{src → temp_sensor/src}/Main.h +7 -7
  164. data/vendor/cmock/examples/{src → temp_sensor/src}/Model.c +10 -10
  165. data/vendor/cmock/examples/{src → temp_sensor/src}/Model.h +8 -8
  166. data/vendor/cmock/examples/{src → temp_sensor/src}/ModelConfig.h +7 -7
  167. data/vendor/cmock/examples/{src → temp_sensor/src}/TaskScheduler.c +72 -72
  168. data/vendor/cmock/examples/{src → temp_sensor/src}/TaskScheduler.h +11 -11
  169. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureCalculator.c +27 -27
  170. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureCalculator.h +6 -6
  171. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureFilter.c +39 -39
  172. data/vendor/cmock/examples/{src → temp_sensor/src}/TemperatureFilter.h +10 -10
  173. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConductor.c +15 -15
  174. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConductor.h +9 -9
  175. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConfigurator.c +51 -51
  176. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerConfigurator.h +15 -15
  177. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerHardware.c +15 -15
  178. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerHardware.h +8 -8
  179. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptConfigurator.c +55 -55
  180. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptConfigurator.h +13 -13
  181. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptHandler.c +25 -25
  182. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerInterruptHandler.h +10 -10
  183. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerModel.c +9 -9
  184. data/vendor/cmock/examples/{src → temp_sensor/src}/TimerModel.h +8 -8
  185. data/vendor/cmock/examples/{src → temp_sensor/src}/Types.h +103 -103
  186. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartBaudRateRegisterCalculator.c +18 -18
  187. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartBaudRateRegisterCalculator.h +6 -6
  188. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConductor.c +21 -21
  189. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConductor.h +7 -7
  190. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConfigurator.c +39 -39
  191. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartConfigurator.h +13 -13
  192. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartHardware.c +22 -22
  193. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartHardware.h +9 -9
  194. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartModel.c +34 -34
  195. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartModel.h +10 -10
  196. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartPutChar.c +16 -16
  197. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartPutChar.h +8 -8
  198. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartTransmitBufferStatus.c +7 -7
  199. data/vendor/cmock/examples/{src → temp_sensor/src}/UsartTransmitBufferStatus.h +8 -8
  200. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcConductor.c +121 -121
  201. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcHardware.c +44 -44
  202. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcHardwareConfigurator.c +43 -43
  203. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcModel.c +33 -33
  204. data/vendor/cmock/examples/{test → temp_sensor/test}/TestAdcTemperatureSensor.c +47 -47
  205. data/vendor/cmock/examples/{test → temp_sensor/test}/TestExecutor.c +36 -36
  206. data/vendor/cmock/examples/{test → temp_sensor/test}/TestMain.c +24 -24
  207. data/vendor/cmock/examples/{test → temp_sensor/test}/TestModel.c +20 -20
  208. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTaskScheduler.c +104 -104
  209. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTemperatureCalculator.c +33 -33
  210. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTemperatureFilter.c +69 -69
  211. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerConductor.c +32 -32
  212. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerConfigurator.c +112 -112
  213. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerHardware.c +26 -26
  214. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerInterruptConfigurator.c +78 -78
  215. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerInterruptHandler.c +66 -66
  216. data/vendor/cmock/examples/{test → temp_sensor/test}/TestTimerModel.c +18 -18
  217. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartBaudRateRegisterCalculator.c +21 -21
  218. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartConductor.c +40 -40
  219. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartConfigurator.c +77 -77
  220. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartHardware.c +37 -37
  221. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartModel.c +36 -36
  222. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartPutChar.c +43 -43
  223. data/vendor/cmock/examples/{test → temp_sensor/test}/TestUsartTransmitBufferStatus.c +22 -22
  224. data/vendor/cmock/iar/iar_v4/Resource/at91SAM7X256_FLASH.xcl +185 -185
  225. data/vendor/cmock/iar/iar_v4/Resource/at91SAM7X256_RAM.xcl +185 -185
  226. data/vendor/cmock/iar/iar_v4/Resource/ioat91sam7x256.ddf +2259 -2259
  227. data/vendor/cmock/iar/iar_v4/cmock_demo.dep +3691 -3691
  228. data/vendor/cmock/iar/iar_v4/cmock_demo.ewp +2581 -2581
  229. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X-EK.h +61 -61
  230. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256.inc +2314 -2314
  231. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256.rdf +4704 -4704
  232. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256.tcl +3407 -3407
  233. data/vendor/cmock/iar/iar_v4/incIAR/AT91SAM7X256_inc.h +2268 -2268
  234. data/vendor/cmock/iar/iar_v4/incIAR/ioat91sam7x256.h +4380 -4380
  235. data/vendor/cmock/iar/iar_v4/incIAR/lib_AT91SAM7X256.h +4211 -4211
  236. data/vendor/cmock/iar/iar_v4/settings/cmock_demo.cspy.bat +32 -32
  237. data/vendor/cmock/iar/iar_v4/srcIAR/Cstartup.s79 +265 -265
  238. data/vendor/cmock/iar/iar_v4/srcIAR/Cstartup_SAM7.c +98 -98
  239. data/vendor/cmock/iar/iar_v5/Resource/at91SAM7X256_FLASH.icf +43 -43
  240. data/vendor/cmock/iar/iar_v5/Resource/at91SAM7X256_RAM.icf +42 -42
  241. data/vendor/cmock/iar/iar_v5/cmock_demo.dep +4204 -4204
  242. data/vendor/cmock/iar/iar_v5/cmock_demo.ewp +2426 -2426
  243. data/vendor/cmock/iar/iar_v5/incIAR/AT91SAM7X-EK.h +61 -61
  244. data/vendor/cmock/iar/iar_v5/incIAR/AT91SAM7X256_inc.h +2268 -2268
  245. data/vendor/cmock/iar/iar_v5/incIAR/lib_AT91SAM7X256.h +4211 -4211
  246. data/vendor/cmock/iar/iar_v5/incIAR/project.h +30 -30
  247. data/vendor/cmock/iar/iar_v5/settings/BasicInterrupt_SAM7X.cspy.bat +33 -33
  248. data/vendor/cmock/iar/iar_v5/settings/BasicInterrupt_SAM7X_FLASH_Debug.jlink +12 -12
  249. data/vendor/cmock/iar/iar_v5/settings/cmock_demo.cspy.bat +33 -33
  250. data/vendor/cmock/iar/iar_v5/settings/cmock_demo_Binary.jlink +12 -12
  251. data/vendor/cmock/iar/iar_v5/settings/cmock_demo_FLASH_Debug.jlink +12 -12
  252. data/vendor/cmock/iar/iar_v5/settings/cmock_demo_RAM_Debug.jlink +12 -12
  253. data/vendor/cmock/iar/iar_v5/srcIAR/Cstartup.s +299 -299
  254. data/vendor/cmock/iar/iar_v5/srcIAR/Cstartup_SAM7.c +98 -98
  255. data/vendor/cmock/lib/cmock.rb +89 -89
  256. data/vendor/cmock/lib/cmock_config.rb +134 -133
  257. data/vendor/cmock/lib/cmock_file_writer.rb +40 -33
  258. data/vendor/cmock/lib/cmock_generator.rb +234 -215
  259. data/vendor/cmock/lib/cmock_generator_plugin_array.rb +63 -63
  260. data/vendor/cmock/lib/cmock_generator_plugin_callback.rb +96 -78
  261. data/vendor/cmock/lib/cmock_generator_plugin_cexception.rb +52 -51
  262. data/vendor/cmock/lib/cmock_generator_plugin_expect.rb +104 -86
  263. data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +68 -68
  264. data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +72 -71
  265. data/vendor/cmock/lib/cmock_generator_plugin_ignore_arg.rb +1 -1
  266. data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +2 -2
  267. data/vendor/cmock/lib/cmock_generator_utils.rb +228 -213
  268. data/vendor/cmock/lib/cmock_header_parser.rb +1 -1
  269. data/vendor/cmock/lib/cmock_plugin_manager.rb +40 -40
  270. data/vendor/cmock/lib/cmock_unityhelper_parser.rb +75 -75
  271. data/vendor/cmock/rakefile_helper.rb +381 -381
  272. data/vendor/cmock/release/build.info +1 -1
  273. data/vendor/cmock/release/version.info +1 -1
  274. data/vendor/cmock/scripts/create_makefile.rb +161 -0
  275. data/vendor/cmock/scripts/create_mock.rb +8 -0
  276. data/vendor/cmock/scripts/create_runner.rb +20 -0
  277. data/vendor/cmock/scripts/test_summary.rb +11 -0
  278. data/vendor/cmock/src/cmock.c +203 -192
  279. data/vendor/cmock/src/cmock.h +38 -36
  280. data/vendor/cmock/src/cmock_internals.h +11 -1
  281. data/vendor/cmock/targets/clang_strict.yml +90 -85
  282. data/vendor/cmock/targets/gcc.yml +58 -55
  283. data/vendor/cmock/targets/gcc_64.yml +58 -55
  284. data/vendor/cmock/targets/gcc_tiny.yml +80 -0
  285. data/vendor/cmock/targets/iar_arm_v4.yml +110 -108
  286. data/vendor/cmock/targets/iar_arm_v5.yml +95 -93
  287. data/vendor/cmock/test/c/TestCMockC.c +323 -323
  288. data/vendor/cmock/test/c/TestCMockC.yml +1 -0
  289. data/vendor/cmock/test/c/TestCMockCDynamic.c +186 -186
  290. data/vendor/cmock/test/c/TestCMockCDynamic_Runner.c +36 -36
  291. data/vendor/cmock/test/c/TestCMockC_Runner.c +39 -39
  292. data/vendor/cmock/test/system/systest_generator.rb +194 -194
  293. data/vendor/cmock/test/system/test_compilation/callingconv.h +11 -11
  294. data/vendor/cmock/test/system/test_compilation/osek.h +275 -275
  295. data/vendor/cmock/test/system/test_compilation/parsing.h +2 -0
  296. data/vendor/cmock/test/system/test_interactions/all_plugins_but_other_limits.yml +375 -375
  297. data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +459 -389
  298. data/vendor/cmock/test/system/test_interactions/array_and_pointer_handling.yml +62 -0
  299. data/vendor/cmock/test/system/test_interactions/doesnt_leave_details_behind.yml +308 -0
  300. data/vendor/cmock/test/system/test_interactions/enforce_strict_ordering.yml +23 -23
  301. data/vendor/cmock/test/system/test_interactions/out_of_memory.yml +65 -0
  302. data/vendor/cmock/test/system/test_interactions/parsing_challenges.yml +38 -20
  303. data/vendor/cmock/test/system/test_interactions/struct_union_enum_expect_and_return_with_plugins.yml +280 -0
  304. data/vendor/cmock/test/test_helper.rb +47 -47
  305. data/vendor/cmock/test/unit/cmock_config_test.rb +118 -118
  306. data/vendor/cmock/test/unit/cmock_config_test.yml +5 -5
  307. data/vendor/cmock/test/unit/cmock_file_writer_test.rb +27 -27
  308. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +507 -489
  309. data/vendor/cmock/test/unit/cmock_generator_plugin_array_test.rb +133 -133
  310. data/vendor/cmock/test/unit/cmock_generator_plugin_callback_test.rb +257 -189
  311. data/vendor/cmock/test/unit/cmock_generator_plugin_cexception_test.rb +96 -93
  312. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_a_test.rb +186 -0
  313. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +60 -81
  314. data/vendor/cmock/test/unit/{cmock_generator_plugin_expect_test.rb → cmock_generator_plugin_expect_b_test.rb} +202 -205
  315. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_arg_test.rb +116 -116
  316. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +105 -103
  317. data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +134 -134
  318. data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +377 -334
  319. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +1381 -1337
  320. data/vendor/cmock/test/unit/cmock_plugin_manager_test.rb +95 -95
  321. data/vendor/cmock/test/unit/cmock_unityhelper_parser_test.rb +223 -223
  322. data/vendor/cmock/vendor/c_exception/Gemfile +4 -0
  323. data/vendor/cmock/vendor/c_exception/Gemfile.lock +12 -0
  324. data/vendor/cmock/vendor/c_exception/LICENSE.txt +30 -0
  325. data/vendor/cmock/vendor/c_exception/README.md +146 -0
  326. data/vendor/cmock/vendor/c_exception/Rakefile +42 -0
  327. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  328. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  329. data/vendor/cmock/vendor/c_exception/docs/readme.txt +242 -0
  330. data/vendor/cmock/vendor/c_exception/lib/CException.c +46 -0
  331. data/vendor/cmock/vendor/c_exception/lib/CException.h +86 -0
  332. data/vendor/cmock/vendor/c_exception/makefile +24 -0
  333. data/vendor/cmock/vendor/c_exception/release/build.info +2 -0
  334. data/vendor/cmock/vendor/c_exception/release/version.info +2 -0
  335. data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +46 -0
  336. data/vendor/cmock/vendor/c_exception/test/TestException.c +342 -0
  337. data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +74 -0
  338. data/vendor/cmock/vendor/c_exception/vendor/unity/Gemfile +4 -0
  339. data/vendor/cmock/vendor/c_exception/vendor/unity/Gemfile.lock +12 -0
  340. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +115 -0
  341. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +39 -0
  342. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -0
  343. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_module.rb +202 -0
  344. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +320 -0
  345. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/parseOutput.rb +189 -0
  346. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +23 -0
  347. data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +139 -0
  348. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  349. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  350. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +216 -0
  351. data/vendor/cmock/vendor/c_exception/vendor/unity/docs/license.txt +31 -0
  352. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/makefile +41 -0
  353. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +5 -0
  354. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +24 -0
  355. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +3 -0
  356. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +9 -0
  357. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -0
  358. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -0
  359. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -0
  360. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +46 -0
  361. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +50 -0
  362. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/makefile +45 -0
  363. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +5 -0
  364. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +24 -0
  365. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +3 -0
  366. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +9 -0
  367. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -0
  368. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -0
  369. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -0
  370. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  371. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  372. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  373. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -0
  374. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -0
  375. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/makefile +41 -0
  376. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +44 -0
  377. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +256 -0
  378. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +19 -0
  379. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +24 -0
  380. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +3 -0
  381. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +9 -0
  382. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -0
  383. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +46 -0
  384. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -0
  385. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -0
  386. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode2_Runner.c +46 -0
  387. data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/no_ruby/TestProductionCode_Runner.c +50 -0
  388. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  389. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +37 -0
  390. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +179 -0
  391. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +9 -0
  392. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +387 -0
  393. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +82 -0
  394. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +44 -0
  395. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +16 -0
  396. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
  397. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
  398. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +341 -0
  399. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +41 -0
  400. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +56 -0
  401. data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
  402. data/vendor/cmock/vendor/c_exception/vendor/unity/makefile +37 -0
  403. data/vendor/cmock/vendor/c_exception/vendor/unity/rakefile.rb +61 -0
  404. data/vendor/cmock/vendor/c_exception/vendor/unity/rakefile_helper.rb +249 -0
  405. data/vendor/cmock/vendor/c_exception/vendor/unity/release/build.info +2 -0
  406. data/vendor/cmock/vendor/c_exception/vendor/unity/release/version.info +2 -0
  407. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.c +1145 -0
  408. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.h +307 -0
  409. data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity_internals.h +620 -0
  410. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/clang_strict.yml +83 -0
  411. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/gcc_32.yml +44 -0
  412. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/gcc_64.yml +45 -0
  413. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/hitech_picc18.yml +101 -0
  414. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_arm_v4.yml +89 -0
  415. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_arm_v5.yml +79 -0
  416. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_arm_v5_3.yml +79 -0
  417. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
  418. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_cortexm3_v5.yml +83 -0
  419. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_msp430.yml +94 -0
  420. data/vendor/cmock/vendor/c_exception/vendor/unity/targets/iar_sh2a_v6.yml +85 -0
  421. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +57 -0
  422. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +53 -0
  423. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +79 -0
  424. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +75 -0
  425. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +88 -0
  426. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +88 -0
  427. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +76 -0
  428. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +88 -0
  429. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +88 -0
  430. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +89 -0
  431. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +63 -0
  432. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +66 -0
  433. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +54 -0
  434. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +63 -0
  435. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +66 -0
  436. data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +67 -0
  437. data/vendor/cmock/vendor/c_exception/vendor/unity/test/test_generate_test_runner.rb +88 -0
  438. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +51 -0
  439. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/sample.yml +9 -0
  440. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testsample.c +51 -0
  441. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testparameterized.c +101 -0
  442. data/vendor/cmock/vendor/c_exception/vendor/unity/test/testunity.c +3447 -0
  443. data/vendor/cmock/vendor/unity/README.md +211 -0
  444. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +115 -0
  445. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +39 -0
  446. data/vendor/cmock/vendor/unity/auto/generate_config.yml +36 -0
  447. data/vendor/cmock/vendor/unity/auto/generate_module.rb +202 -0
  448. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +374 -0
  449. data/vendor/cmock/vendor/unity/auto/parseOutput.rb +191 -0
  450. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +23 -0
  451. data/vendor/cmock/vendor/unity/auto/type_sanitizer.rb +8 -0
  452. data/vendor/cmock/vendor/unity/auto/unity_test_summary.py +135 -0
  453. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +148 -0
  454. data/vendor/cmock/vendor/unity/docs/Unity Summary.odt +0 -0
  455. data/vendor/cmock/vendor/unity/docs/Unity Summary.pdf +0 -0
  456. data/vendor/cmock/vendor/unity/docs/Unity Summary.txt +224 -0
  457. data/vendor/cmock/vendor/unity/docs/license.txt +21 -0
  458. data/vendor/{unity/examples/example_3 → cmock/vendor/unity/examples/example_1}/makefile +9 -5
  459. data/vendor/cmock/vendor/unity/examples/example_1/readme.txt +5 -0
  460. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.c +24 -0
  461. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.h +3 -0
  462. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.c +11 -0
  463. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -0
  464. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -0
  465. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -0
  466. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -0
  467. data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -0
  468. data/vendor/cmock/vendor/unity/examples/example_2/makefile +71 -0
  469. data/vendor/cmock/vendor/unity/examples/example_2/readme.txt +5 -0
  470. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.c +24 -0
  471. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.h +3 -0
  472. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.c +11 -0
  473. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -0
  474. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -0
  475. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -0
  476. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  477. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  478. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  479. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -0
  480. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -0
  481. data/vendor/cmock/vendor/unity/examples/example_3/rakefile.rb +43 -0
  482. data/vendor/cmock/vendor/unity/examples/example_3/rakefile_helper.rb +256 -0
  483. data/vendor/cmock/vendor/unity/examples/example_3/readme.txt +19 -0
  484. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.c +24 -0
  485. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.h +3 -0
  486. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.c +11 -0
  487. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -0
  488. data/vendor/cmock/vendor/unity/examples/example_3/target_gcc_32.yml +46 -0
  489. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -0
  490. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -0
  491. data/vendor/cmock/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  492. data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +48 -0
  493. data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +179 -0
  494. data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +9 -0
  495. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +423 -0
  496. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +78 -0
  497. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +46 -0
  498. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +45 -0
  499. data/vendor/cmock/vendor/unity/extras/fixture/test/Makefile +19 -0
  500. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
  501. data/vendor/cmock/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
  502. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +373 -0
  503. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +43 -0
  504. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +57 -0
  505. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
  506. data/vendor/cmock/vendor/unity/release/build.info +2 -0
  507. data/vendor/cmock/vendor/unity/release/version.info +2 -0
  508. data/vendor/cmock/vendor/unity/src/unity.c +1324 -0
  509. data/vendor/cmock/vendor/unity/src/unity.h +285 -0
  510. data/vendor/cmock/vendor/unity/src/unity_internals.h +758 -0
  511. data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +57 -0
  512. data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +53 -0
  513. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.c +51 -0
  514. data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.h +12 -0
  515. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +80 -0
  516. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +76 -0
  517. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -0
  518. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.h +11 -0
  519. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +89 -0
  520. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +89 -0
  521. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +77 -0
  522. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +89 -0
  523. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +89 -0
  524. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +90 -0
  525. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +63 -0
  526. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +66 -0
  527. data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +54 -0
  528. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +63 -0
  529. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +66 -0
  530. data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +67 -0
  531. data/vendor/cmock/vendor/unity/test/rakefile +60 -0
  532. data/vendor/cmock/vendor/unity/test/rakefile_helper.rb +255 -0
  533. data/vendor/cmock/vendor/unity/test/targets/clang_file.yml +84 -0
  534. data/vendor/cmock/vendor/unity/test/targets/clang_strict.yml +84 -0
  535. data/vendor/cmock/vendor/unity/test/targets/gcc_32.yml +50 -0
  536. data/vendor/cmock/vendor/unity/test/targets/gcc_64.yml +51 -0
  537. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_limits.yml +47 -0
  538. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_sizeof.yml +48 -0
  539. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_stdint.yml +59 -0
  540. data/vendor/cmock/vendor/unity/test/targets/gcc_manual_math.yml +47 -0
  541. data/vendor/cmock/vendor/unity/test/targets/hitech_picc18.yml +101 -0
  542. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v4.yml +89 -0
  543. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5.yml +79 -0
  544. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5_3.yml +79 -0
  545. data/vendor/cmock/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
  546. data/vendor/cmock/vendor/unity/test/targets/iar_cortexm3_v5.yml +83 -0
  547. data/vendor/cmock/vendor/unity/test/targets/iar_msp430.yml +94 -0
  548. data/vendor/cmock/vendor/unity/test/targets/iar_sh2a_v6.yml +85 -0
  549. data/vendor/cmock/vendor/unity/test/testdata/mocksample.c +51 -0
  550. data/vendor/cmock/vendor/unity/test/testdata/sample.yml +9 -0
  551. data/vendor/cmock/vendor/unity/test/testdata/testsample.c +51 -0
  552. data/vendor/cmock/vendor/unity/test/tests/test_generate_test_runner.rb +102 -0
  553. data/vendor/cmock/vendor/unity/test/tests/testparameterized.c +104 -0
  554. data/vendor/cmock/vendor/unity/test/tests/testunity.c +3656 -0
  555. data/vendor/unity/README.md +211 -203
  556. data/vendor/unity/auto/colour_reporter.rb +38 -38
  557. data/vendor/unity/auto/generate_config.yml +36 -36
  558. data/vendor/unity/auto/generate_module.rb +202 -202
  559. data/vendor/unity/auto/generate_test_runner.rb +389 -347
  560. data/vendor/unity/auto/parseOutput.rb +2 -0
  561. data/vendor/unity/auto/unity_test_summary.py +135 -135
  562. data/vendor/unity/auto/unity_test_summary.rb +148 -139
  563. data/vendor/unity/docs/Unity Summary.odt +0 -0
  564. data/vendor/unity/docs/Unity Summary.pdf +0 -0
  565. data/vendor/unity/docs/Unity Summary.txt +224 -216
  566. data/vendor/unity/docs/license.txt +21 -21
  567. data/vendor/unity/examples/example_1/makefile +7 -3
  568. data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +29 -9
  569. data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +26 -6
  570. data/vendor/unity/examples/example_2/makefile +7 -4
  571. data/vendor/unity/extras/fixture/rakefile.rb +48 -48
  572. data/vendor/unity/extras/fixture/rakefile_helper.rb +179 -179
  573. data/vendor/unity/extras/fixture/src/unity_fixture.c +123 -78
  574. data/vendor/unity/extras/fixture/src/unity_fixture.h +6 -14
  575. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +12 -15
  576. data/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +25 -0
  577. data/vendor/unity/extras/fixture/test/Makefile +35 -0
  578. data/vendor/unity/extras/fixture/test/main/AllTests.c +2 -1
  579. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +99 -4
  580. data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +10 -0
  581. data/vendor/unity/extras/fixture/test/unity_output_Spy.c +3 -1
  582. data/vendor/unity/release/build.info +1 -1
  583. data/vendor/unity/release/version.info +1 -1
  584. data/vendor/unity/src/unity.c +1324 -1177
  585. data/vendor/unity/src/unity.h +285 -272
  586. data/vendor/unity/src/unity_internals.h +758 -692
  587. data/vendor/unity/test/expectdata/testsample_head1.c +51 -0
  588. data/vendor/unity/test/expectdata/testsample_head1.h +12 -0
  589. data/vendor/unity/test/expectdata/testsample_mock_cmd.c +1 -0
  590. data/vendor/unity/test/expectdata/testsample_mock_def.c +1 -0
  591. data/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -0
  592. data/vendor/unity/test/expectdata/testsample_mock_head1.h +11 -0
  593. data/vendor/unity/test/expectdata/testsample_mock_new1.c +3 -2
  594. data/vendor/unity/test/expectdata/testsample_mock_new2.c +1 -0
  595. data/vendor/unity/test/expectdata/testsample_mock_param.c +1 -0
  596. data/vendor/unity/test/expectdata/testsample_mock_run1.c +3 -2
  597. data/vendor/unity/test/expectdata/testsample_mock_run2.c +1 -0
  598. data/vendor/unity/test/expectdata/testsample_mock_yaml.c +4 -3
  599. data/vendor/unity/test/expectdata/testsample_new1.c +2 -2
  600. data/vendor/unity/test/expectdata/testsample_run1.c +2 -2
  601. data/vendor/unity/test/expectdata/testsample_yaml.c +3 -3
  602. data/vendor/unity/test/rakefile +60 -60
  603. data/vendor/unity/test/rakefile_helper.rb +255 -249
  604. data/vendor/unity/test/targets/clang_file.yml +83 -0
  605. data/vendor/unity/test/targets/clang_strict.yml +83 -83
  606. data/vendor/unity/test/targets/gcc_32.yml +49 -49
  607. data/vendor/unity/test/targets/gcc_64.yml +50 -50
  608. data/vendor/unity/test/targets/gcc_auto_limits.yml +46 -46
  609. data/vendor/unity/test/targets/gcc_auto_sizeof.yml +47 -47
  610. data/vendor/unity/test/targets/gcc_auto_stdint.yml +58 -58
  611. data/vendor/unity/test/targets/gcc_manual_math.yml +46 -0
  612. data/vendor/unity/test/targets/hitech_picc18.yml +101 -101
  613. data/vendor/unity/test/targets/iar_arm_v4.yml +89 -89
  614. data/vendor/unity/test/targets/iar_arm_v5.yml +79 -79
  615. data/vendor/unity/test/targets/iar_arm_v5_3.yml +79 -79
  616. data/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -93
  617. data/vendor/unity/test/targets/iar_cortexm3_v5.yml +83 -83
  618. data/vendor/unity/test/targets/iar_msp430.yml +94 -94
  619. data/vendor/unity/test/targets/iar_sh2a_v6.yml +85 -85
  620. data/vendor/unity/test/testdata/mocksample.c +51 -51
  621. data/vendor/unity/test/testdata/sample.yml +8 -8
  622. data/vendor/unity/test/testdata/testsample.c +51 -51
  623. data/vendor/unity/test/tests/test_generate_test_runner.rb +102 -88
  624. data/vendor/unity/test/tests/testparameterized.c +104 -101
  625. data/vendor/unity/test/tests/testunity.c +3676 -3447
  626. metadata +549 -191
@@ -0,0 +1,3656 @@
1
+ /* ==========================================
2
+ Unity Project - A Test Framework for C
3
+ Copyright (c) 2007 Mike Karlesky, Mark VanderVoord, Greg Williams
4
+ [Released under MIT License. Please refer to license.txt for details]
5
+ ========================================== */
6
+
7
+ #include <setjmp.h>
8
+ #include "unity.h"
9
+ #include <string.h>
10
+
11
+ // Dividing by these constants produces +/- infinity.
12
+ // The rationale is given in UnityAssertFloatIsInf's body.
13
+ #ifndef UNITY_EXCLUDE_FLOAT
14
+ static const _UF f_zero = 0.0f;
15
+ #endif
16
+
17
+ #ifndef UNITY_EXCLUDE_DOUBLE
18
+ static const _UD d_zero = 0.0;
19
+ #endif
20
+
21
+ #define EXPECT_ABORT_BEGIN \
22
+ if (TEST_PROTECT()) \
23
+ {
24
+
25
+ #define VERIFY_FAILS_END \
26
+ } \
27
+ Unity.CurrentTestFailed = (Unity.CurrentTestFailed == 1) ? 0 : 1; \
28
+ if (Unity.CurrentTestFailed == 1) { \
29
+ SetToOneMeanWeAlreadyCheckedThisGuy = 1; \
30
+ UnityPrint("[[[[ Previous Test Should Have Failed But Did Not ]]]]"); \
31
+ UNITY_OUTPUT_CHAR('\n'); \
32
+ }
33
+
34
+ #define VERIFY_IGNORES_END \
35
+ } \
36
+ Unity.CurrentTestFailed = (Unity.CurrentTestIgnored == 1) ? 0 : 1; \
37
+ Unity.CurrentTestIgnored = 0; \
38
+ if (Unity.CurrentTestFailed == 1) { \
39
+ SetToOneMeanWeAlreadyCheckedThisGuy = 1; \
40
+ UnityPrint("[[[[ Previous Test Should Have Ignored But Did Not ]]]]"); \
41
+ UNITY_OUTPUT_CHAR('\n'); \
42
+ }
43
+
44
+ int SetToOneToFailInTearDown;
45
+ int SetToOneMeanWeAlreadyCheckedThisGuy;
46
+
47
+ void setUp(void)
48
+ {
49
+ SetToOneToFailInTearDown = 0;
50
+ SetToOneMeanWeAlreadyCheckedThisGuy = 0;
51
+ }
52
+
53
+ void tearDown(void)
54
+ {
55
+ if (SetToOneToFailInTearDown == 1)
56
+ TEST_FAIL_MESSAGE("<= Failed in tearDown");
57
+ if ((SetToOneMeanWeAlreadyCheckedThisGuy == 0) && (Unity.CurrentTestFailed > 0))
58
+ {
59
+ UnityPrint("[[[[ Previous Test Should Have Passed But Did Not ]]]]");
60
+ UNITY_OUTPUT_CHAR('\n');
61
+ }
62
+ }
63
+
64
+ void testUnitySizeInitializationReminder(void)
65
+ {
66
+ /* This test ensures that sizeof(struct _Unity) doesn't change. If this
67
+ * test breaks, go look at the initialization of the Unity global variable
68
+ * in unity.c and make sure we're filling in the proper fields. */
69
+ const char* message = "Unexpected size for _Unity struct. Please check that "
70
+ "the initialization of the Unity symbol in unity.c is "
71
+ "still correct.";
72
+
73
+ /* Define a structure with all the same fields as `struct _Unity`. */
74
+ #ifdef UNITY_EXCLUDE_DETAILS
75
+ struct {
76
+ const char* TestFile;
77
+ const char* CurrentTestName;
78
+ UNITY_LINE_TYPE CurrentTestLineNumber;
79
+ UNITY_COUNTER_TYPE NumberOfTests;
80
+ UNITY_COUNTER_TYPE TestFailures;
81
+ UNITY_COUNTER_TYPE TestIgnores;
82
+ UNITY_COUNTER_TYPE CurrentTestFailed;
83
+ UNITY_COUNTER_TYPE CurrentTestIgnored;
84
+ jmp_buf AbortFrame;
85
+ } _Expected_Unity;
86
+ #else
87
+ struct {
88
+ const char* TestFile;
89
+ const char* CurrentTestName;
90
+ const char* CurrentDetails1;
91
+ const char* CurrentDetails2;
92
+ UNITY_LINE_TYPE CurrentTestLineNumber;
93
+ UNITY_COUNTER_TYPE NumberOfTests;
94
+ UNITY_COUNTER_TYPE TestFailures;
95
+ UNITY_COUNTER_TYPE TestIgnores;
96
+ UNITY_COUNTER_TYPE CurrentTestFailed;
97
+ UNITY_COUNTER_TYPE CurrentTestIgnored;
98
+ jmp_buf AbortFrame;
99
+ } _Expected_Unity;
100
+ #endif
101
+
102
+ /* Compare our fake structure's size to the actual structure's size. They
103
+ * should be the same.
104
+ *
105
+ * This accounts for alignment, padding, and packing issues that might come
106
+ * up between different architectures. */
107
+ TEST_ASSERT_EQUAL_MESSAGE(sizeof(_Expected_Unity), sizeof(Unity), message);
108
+ }
109
+
110
+ void testTrue(void)
111
+ {
112
+ TEST_ASSERT(1);
113
+
114
+ TEST_ASSERT_TRUE(1);
115
+ }
116
+
117
+ void testFalse(void)
118
+ {
119
+ TEST_ASSERT_FALSE(0);
120
+
121
+ TEST_ASSERT_UNLESS(0);
122
+ }
123
+
124
+ void testPreviousPass(void)
125
+ {
126
+ TEST_ASSERT_EQUAL_INT(0U, Unity.TestFailures);
127
+ }
128
+
129
+ void testNotVanilla(void)
130
+ {
131
+ EXPECT_ABORT_BEGIN
132
+ TEST_ASSERT(0);
133
+ VERIFY_FAILS_END
134
+ }
135
+
136
+ void testNotTrue(void)
137
+ {
138
+ EXPECT_ABORT_BEGIN
139
+ TEST_ASSERT_TRUE(0);
140
+ VERIFY_FAILS_END
141
+ }
142
+
143
+ void testNotFalse(void)
144
+ {
145
+ EXPECT_ABORT_BEGIN
146
+ TEST_ASSERT_FALSE(1);
147
+ VERIFY_FAILS_END
148
+ }
149
+
150
+ void testNotUnless(void)
151
+ {
152
+ EXPECT_ABORT_BEGIN
153
+ TEST_ASSERT_UNLESS(1);
154
+ VERIFY_FAILS_END
155
+ }
156
+
157
+ void testNotNotEqual(void)
158
+ {
159
+ EXPECT_ABORT_BEGIN
160
+ TEST_ASSERT_NOT_EQUAL(10, 10);
161
+ VERIFY_FAILS_END
162
+ }
163
+
164
+ void testFail(void)
165
+ {
166
+ EXPECT_ABORT_BEGIN
167
+ TEST_FAIL_MESSAGE("Expected for testing");
168
+ VERIFY_FAILS_END
169
+ }
170
+
171
+ void testIsNull(void)
172
+ {
173
+ char* ptr1 = NULL;
174
+ const char* ptr2 = "hello";
175
+
176
+ TEST_ASSERT_NULL(ptr1);
177
+ TEST_ASSERT_NOT_NULL(ptr2);
178
+ }
179
+
180
+ void testIsNullShouldFailIfNot(void)
181
+ {
182
+ const char* ptr1 = "hello";
183
+
184
+ EXPECT_ABORT_BEGIN
185
+ TEST_ASSERT_NULL(ptr1);
186
+ VERIFY_FAILS_END
187
+ }
188
+
189
+ void testNotNullShouldFailIfNULL(void)
190
+ {
191
+ char* ptr1 = NULL;
192
+
193
+ EXPECT_ABORT_BEGIN
194
+ TEST_ASSERT_NOT_NULL(ptr1);
195
+ VERIFY_FAILS_END
196
+ }
197
+
198
+ void testIgnore(void)
199
+ {
200
+ EXPECT_ABORT_BEGIN
201
+ TEST_IGNORE();
202
+ TEST_FAIL_MESSAGE("This should not be reached");
203
+ VERIFY_IGNORES_END
204
+ }
205
+
206
+ void testIgnoreMessage(void)
207
+ {
208
+ EXPECT_ABORT_BEGIN
209
+ TEST_IGNORE_MESSAGE("This is an expected TEST_IGNORE_MESSAGE string!");
210
+ TEST_FAIL_MESSAGE("This should not be reached");
211
+ VERIFY_IGNORES_END
212
+ }
213
+
214
+ void testNotEqualInts(void)
215
+ {
216
+ EXPECT_ABORT_BEGIN
217
+ TEST_ASSERT_EQUAL_INT(3982, 3983);
218
+ VERIFY_FAILS_END
219
+ }
220
+
221
+ void testNotEqualInt8s(void)
222
+ {
223
+ EXPECT_ABORT_BEGIN
224
+ TEST_ASSERT_EQUAL_INT8(-127, -126);
225
+ VERIFY_FAILS_END
226
+ }
227
+
228
+ void testNotEqualInt16s(void)
229
+ {
230
+ EXPECT_ABORT_BEGIN
231
+ TEST_ASSERT_EQUAL_INT16(-16383, -16382);
232
+ VERIFY_FAILS_END
233
+ }
234
+
235
+ void testNotEqualInt32s(void)
236
+ {
237
+ EXPECT_ABORT_BEGIN
238
+ TEST_ASSERT_EQUAL_INT32(-2147483647, -2147483648); //use largest 32 bit negative to test printability
239
+ VERIFY_FAILS_END
240
+ }
241
+
242
+ void testNotEqualBits(void)
243
+ {
244
+ EXPECT_ABORT_BEGIN
245
+ TEST_ASSERT_BITS(0xFF00, 0x5555, 0x5A55);
246
+ VERIFY_FAILS_END
247
+ }
248
+
249
+ void testNotEqualUInts(void)
250
+ {
251
+ _UU16 v0, v1;
252
+
253
+ v0 = 9000;
254
+ v1 = 9001;
255
+
256
+ EXPECT_ABORT_BEGIN
257
+ TEST_ASSERT_EQUAL_UINT(v0, v1);
258
+ VERIFY_FAILS_END
259
+ }
260
+
261
+ void testNotEqualUInt8s(void)
262
+ {
263
+ _UU8 v0, v1;
264
+
265
+ v0 = 254;
266
+ v1 = 255;
267
+
268
+ EXPECT_ABORT_BEGIN
269
+ TEST_ASSERT_EQUAL_UINT8(v0, v1);
270
+ VERIFY_FAILS_END
271
+ }
272
+
273
+ void testNotEqualUInt16s(void)
274
+ {
275
+ _UU16 v0, v1;
276
+
277
+ v0 = 65535;
278
+ v1 = 65534;
279
+
280
+ EXPECT_ABORT_BEGIN
281
+ TEST_ASSERT_EQUAL_UINT16(v0, v1);
282
+ VERIFY_FAILS_END
283
+ }
284
+
285
+ void testNotEqualUInt32s(void)
286
+ {
287
+ _UU32 v0, v1;
288
+
289
+ v0 = 4294967295;
290
+ v1 = 4294967294;
291
+
292
+ EXPECT_ABORT_BEGIN
293
+ TEST_ASSERT_EQUAL_UINT32(v0, v1);
294
+ VERIFY_FAILS_END
295
+ }
296
+
297
+ void testNotEqualHex8s(void)
298
+ {
299
+ _UU8 v0, v1;
300
+
301
+ v0 = 0x23;
302
+ v1 = 0x22;
303
+
304
+ EXPECT_ABORT_BEGIN
305
+ TEST_ASSERT_EQUAL_HEX8(v0, v1);
306
+ VERIFY_FAILS_END
307
+ }
308
+
309
+ void testNotEqualHex8sIfSigned(void)
310
+ {
311
+ _US8 v0, v1;
312
+
313
+ v0 = -2;
314
+ v1 = 2;
315
+
316
+ EXPECT_ABORT_BEGIN
317
+ TEST_ASSERT_EQUAL_HEX8(v0, v1);
318
+ VERIFY_FAILS_END
319
+ }
320
+
321
+ void testNotEqualHex16s(void)
322
+ {
323
+ _UU16 v0, v1;
324
+
325
+ v0 = 0x1234;
326
+ v1 = 0x1235;
327
+
328
+ EXPECT_ABORT_BEGIN
329
+ TEST_ASSERT_EQUAL_HEX16(v0, v1);
330
+ VERIFY_FAILS_END
331
+ }
332
+
333
+ void testNotEqualHex16sIfSigned(void)
334
+ {
335
+ _US16 v0, v1;
336
+
337
+ v0 = -1024;
338
+ v1 = -1028;
339
+
340
+ EXPECT_ABORT_BEGIN
341
+ TEST_ASSERT_EQUAL_HEX16(v0, v1);
342
+ VERIFY_FAILS_END
343
+ }
344
+
345
+ void testNotEqualHex32s(void)
346
+ {
347
+ _UU32 v0, v1;
348
+
349
+ v0 = 900000;
350
+ v1 = 900001;
351
+
352
+ EXPECT_ABORT_BEGIN
353
+ TEST_ASSERT_EQUAL_HEX32(v0, v1);
354
+ VERIFY_FAILS_END
355
+ }
356
+
357
+ void testNotEqualHex32sIfSigned(void)
358
+ {
359
+ _US32 v0, v1;
360
+
361
+ v0 = -900000;
362
+ v1 = 900001;
363
+
364
+ EXPECT_ABORT_BEGIN
365
+ TEST_ASSERT_EQUAL_HEX32(v0, v1);
366
+ VERIFY_FAILS_END
367
+ }
368
+
369
+ void testEqualInts(void)
370
+ {
371
+ int v0, v1;
372
+ int *p0, *p1;
373
+
374
+ v0 = 19467;
375
+ v1 = 19467;
376
+ p0 = &v0;
377
+ p1 = &v1;
378
+
379
+ TEST_ASSERT_EQUAL_INT(1837, 1837);
380
+ TEST_ASSERT_EQUAL_INT(-27365, -27365);
381
+ TEST_ASSERT_EQUAL_INT(v0, v1);
382
+ TEST_ASSERT_EQUAL_INT(19467, v1);
383
+ TEST_ASSERT_EQUAL_INT(v0, 19467);
384
+ TEST_ASSERT_EQUAL_INT(*p0, v1);
385
+ TEST_ASSERT_EQUAL_INT(*p0, *p1);
386
+ TEST_ASSERT_EQUAL_INT(*p0, 19467);
387
+ }
388
+
389
+ void testEqualInt8s(void)
390
+ {
391
+ _US8 v0, v1;
392
+ _US8 *p0, *p1;
393
+
394
+ v0 = 0x22;
395
+ v1 = 0x22;
396
+ p0 = &v0;
397
+ p1 = &v1;
398
+
399
+ TEST_ASSERT_EQUAL_INT8(0x22, 0x22);
400
+ TEST_ASSERT_EQUAL_INT8(v0, v1);
401
+ TEST_ASSERT_EQUAL_INT8(0x22, v1);
402
+ TEST_ASSERT_EQUAL_INT8(v0, 0x22);
403
+ TEST_ASSERT_EQUAL_INT8(*p0, v1);
404
+ TEST_ASSERT_EQUAL_INT8(*p0, *p1);
405
+ TEST_ASSERT_EQUAL_INT8(*p0, 0x22);
406
+ }
407
+
408
+ void testEqualInt8sWhenThereAreDifferencesOutside8Bits(void)
409
+ {
410
+ TEST_ASSERT_EQUAL_INT8(0x321,0x421);
411
+ TEST_ASSERT_EQUAL_INT8(0xFF21,0x0021);
412
+ }
413
+
414
+ void testEqualInt16s(void)
415
+ {
416
+ _US16 v0, v1;
417
+ _US16 *p0, *p1;
418
+
419
+ v0 = 0x7876;
420
+ v1 = 0x7876;
421
+ p0 = &v0;
422
+ p1 = &v1;
423
+
424
+ TEST_ASSERT_EQUAL_INT16(0x7876, 0x7876);
425
+ TEST_ASSERT_EQUAL_INT16(v0, v1);
426
+ TEST_ASSERT_EQUAL_INT16(0x7876, v1);
427
+ TEST_ASSERT_EQUAL_INT16(v0, 0x7876);
428
+ TEST_ASSERT_EQUAL_INT16(*p0, v1);
429
+ TEST_ASSERT_EQUAL_INT16(*p0, *p1);
430
+ TEST_ASSERT_EQUAL_INT16(*p0, 0x7876);
431
+ }
432
+
433
+ void testEqualInt16sNegatives(void)
434
+ {
435
+ _US16 v0, v1;
436
+ _US16 *p0, *p1;
437
+
438
+ v0 = -7876;
439
+ v1 = -7876;
440
+ p0 = &v0;
441
+ p1 = &v1;
442
+
443
+ TEST_ASSERT_EQUAL_INT16(-7876, -7876);
444
+ TEST_ASSERT_EQUAL_INT16(v0, v1);
445
+ TEST_ASSERT_EQUAL_INT16(-7876, v1);
446
+ TEST_ASSERT_EQUAL_INT16(v0, -7876);
447
+ TEST_ASSERT_EQUAL_INT16(*p0, v1);
448
+ TEST_ASSERT_EQUAL_INT16(*p0, *p1);
449
+ TEST_ASSERT_EQUAL_INT16(*p0, -7876);
450
+ }
451
+
452
+ void testEqualInt16sWhenThereAreDifferencesOutside16Bits(void)
453
+ {
454
+ TEST_ASSERT_EQUAL_INT16(0x54321,0x64321);
455
+ TEST_ASSERT_EQUAL_INT16(0xFFFF4321,0x00004321);
456
+ }
457
+
458
+ void testEqualInt32s(void)
459
+ {
460
+ _US32 v0, v1;
461
+ _US32 *p0, *p1;
462
+
463
+ v0 = 0x78760000;
464
+ v1 = 0x78760000;
465
+ p0 = &v0;
466
+ p1 = &v1;
467
+
468
+ TEST_ASSERT_EQUAL_INT32(0x78760000, 0x78760000);
469
+ TEST_ASSERT_EQUAL_INT32(v0, v1);
470
+ TEST_ASSERT_EQUAL_INT32(0x78760000, v1);
471
+ TEST_ASSERT_EQUAL_INT32(v0, 0x78760000);
472
+ TEST_ASSERT_EQUAL_INT32(*p0, v1);
473
+ TEST_ASSERT_EQUAL_INT32(*p0, *p1);
474
+ TEST_ASSERT_EQUAL_INT32(*p0, 0x78760000);
475
+ }
476
+
477
+ void testEqualInt32sNegatives(void)
478
+ {
479
+ _US32 v0, v1;
480
+ _US32 *p0, *p1;
481
+
482
+ v0 = -123456789;
483
+ v1 = -123456789;
484
+ p0 = &v0;
485
+ p1 = &v1;
486
+
487
+ TEST_ASSERT_EQUAL_INT32(-123456789, -123456789);
488
+ TEST_ASSERT_EQUAL_INT32(v0, v1);
489
+ TEST_ASSERT_EQUAL_INT32(-123456789, v1);
490
+ TEST_ASSERT_EQUAL_INT32(v0, -123456789);
491
+ TEST_ASSERT_EQUAL_INT32(*p0, v1);
492
+ TEST_ASSERT_EQUAL_INT32(*p0, *p1);
493
+ TEST_ASSERT_EQUAL_INT32(*p0, -123456789);
494
+ }
495
+
496
+
497
+ void testEqualUints(void)
498
+ {
499
+ unsigned int v0, v1;
500
+ unsigned int *p0, *p1;
501
+
502
+ v0 = 19467;
503
+ v1 = 19467;
504
+ p0 = &v0;
505
+ p1 = &v1;
506
+
507
+ TEST_ASSERT_EQUAL_UINT(1837, 1837);
508
+ TEST_ASSERT_EQUAL_UINT(v0, v1);
509
+ TEST_ASSERT_EQUAL_UINT(19467, v1);
510
+ TEST_ASSERT_EQUAL_UINT(v0, 19467);
511
+ TEST_ASSERT_EQUAL_UINT(*p0, v1);
512
+ TEST_ASSERT_EQUAL_UINT(*p0, *p1);
513
+ TEST_ASSERT_EQUAL_UINT(*p0, 19467);
514
+ TEST_ASSERT_EQUAL_UINT(60872u, 60872u);
515
+ }
516
+
517
+
518
+ void testEqualUint8s(void)
519
+ {
520
+ _UU8 v0, v1;
521
+ _UU8 *p0, *p1;
522
+
523
+ v0 = 0x22;
524
+ v1 = 0x22;
525
+ p0 = &v0;
526
+ p1 = &v1;
527
+
528
+ TEST_ASSERT_EQUAL_UINT8(0x22, 0x22);
529
+ TEST_ASSERT_EQUAL_UINT8(v0, v1);
530
+ TEST_ASSERT_EQUAL_UINT8(0x22, v1);
531
+ TEST_ASSERT_EQUAL_UINT8(v0, 0x22);
532
+ TEST_ASSERT_EQUAL_UINT8(*p0, v1);
533
+ TEST_ASSERT_EQUAL_UINT8(*p0, *p1);
534
+ TEST_ASSERT_EQUAL_UINT8(*p0, 0x22);
535
+ }
536
+
537
+ void testEqualUint8sWhenThereAreDifferencesOutside8Bits(void)
538
+ {
539
+ TEST_ASSERT_EQUAL_UINT8(0x321,0x421);
540
+ TEST_ASSERT_EQUAL_UINT8(0xFF21,0x0021);
541
+ }
542
+
543
+ void testEqualUint16s(void)
544
+ {
545
+ _UU16 v0, v1;
546
+ _UU16 *p0, *p1;
547
+
548
+ v0 = 0x9876;
549
+ v1 = 0x9876;
550
+ p0 = &v0;
551
+ p1 = &v1;
552
+
553
+ TEST_ASSERT_EQUAL_UINT16(0x9876, 0x9876);
554
+ TEST_ASSERT_EQUAL_UINT16(v0, v1);
555
+ TEST_ASSERT_EQUAL_UINT16(0x9876, v1);
556
+ TEST_ASSERT_EQUAL_UINT16(v0, 0x9876);
557
+ TEST_ASSERT_EQUAL_UINT16(*p0, v1);
558
+ TEST_ASSERT_EQUAL_UINT16(*p0, *p1);
559
+ TEST_ASSERT_EQUAL_UINT16(*p0, 0x9876);
560
+ }
561
+
562
+ void testEqualUint16sWhenThereAreDifferencesOutside16Bits(void)
563
+ {
564
+ TEST_ASSERT_EQUAL_UINT16(0x54321,0x64321);
565
+ TEST_ASSERT_EQUAL_UINT16(0xFFFF4321,0x00004321);
566
+ }
567
+
568
+ void testEqualUint32s(void)
569
+ {
570
+ _UU32 v0, v1;
571
+ _UU32 *p0, *p1;
572
+
573
+ v0 = 0x98760000;
574
+ v1 = 0x98760000;
575
+ p0 = &v0;
576
+ p1 = &v1;
577
+
578
+ TEST_ASSERT_EQUAL_UINT32(0x98760000, 0x98760000);
579
+ TEST_ASSERT_EQUAL_UINT32(v0, v1);
580
+ TEST_ASSERT_EQUAL_UINT32(0x98760000, v1);
581
+ TEST_ASSERT_EQUAL_UINT32(v0, 0x98760000);
582
+ TEST_ASSERT_EQUAL_UINT32(*p0, v1);
583
+ TEST_ASSERT_EQUAL_UINT32(*p0, *p1);
584
+ TEST_ASSERT_EQUAL_UINT32(*p0, 0x98760000);
585
+ }
586
+
587
+ void testNotEqual(void)
588
+ {
589
+ TEST_ASSERT_NOT_EQUAL(0, 1);
590
+ TEST_ASSERT_NOT_EQUAL(1, 0);
591
+ TEST_ASSERT_NOT_EQUAL(100, 101);
592
+ TEST_ASSERT_NOT_EQUAL(0, -1);
593
+ TEST_ASSERT_NOT_EQUAL(65535, -65535);
594
+ TEST_ASSERT_NOT_EQUAL(75, 900);
595
+ TEST_ASSERT_NOT_EQUAL(-100, -101);
596
+ }
597
+
598
+ void testEqualHex8s(void)
599
+ {
600
+ _UU8 v0, v1;
601
+ _UU8 *p0, *p1;
602
+
603
+ v0 = 0x22;
604
+ v1 = 0x22;
605
+ p0 = &v0;
606
+ p1 = &v1;
607
+
608
+ TEST_ASSERT_EQUAL_HEX8(0x22, 0x22);
609
+ TEST_ASSERT_EQUAL_HEX8(v0, v1);
610
+ TEST_ASSERT_EQUAL_HEX8(0x22, v1);
611
+ TEST_ASSERT_EQUAL_HEX8(v0, 0x22);
612
+ TEST_ASSERT_EQUAL_HEX8(*p0, v1);
613
+ TEST_ASSERT_EQUAL_HEX8(*p0, *p1);
614
+ TEST_ASSERT_EQUAL_HEX8(*p0, 0x22);
615
+ }
616
+
617
+ void testEqualHex8sWhenThereAreDifferencesOutside8Bits(void)
618
+ {
619
+ TEST_ASSERT_EQUAL_HEX8(0x321,0x421);
620
+ TEST_ASSERT_EQUAL_HEX8(0xFF21,0x0021);
621
+ }
622
+
623
+ void testEqualHex8sNegatives(void)
624
+ {
625
+ _UU8 v0, v1;
626
+ _UU8 *p0, *p1;
627
+
628
+ v0 = 0xDD;
629
+ v1 = 0xDD;
630
+ p0 = &v0;
631
+ p1 = &v1;
632
+
633
+ TEST_ASSERT_EQUAL_HEX8(0xDD, 0xDD);
634
+ TEST_ASSERT_EQUAL_HEX8(v0, v1);
635
+ TEST_ASSERT_EQUAL_HEX8(0xDD, v1);
636
+ TEST_ASSERT_EQUAL_HEX8(v0, 0xDD);
637
+ TEST_ASSERT_EQUAL_HEX8(*p0, v1);
638
+ TEST_ASSERT_EQUAL_HEX8(*p0, *p1);
639
+ TEST_ASSERT_EQUAL_HEX8(*p0, 0xDD);
640
+ }
641
+
642
+ void testEqualHex16s(void)
643
+ {
644
+ _UU16 v0, v1;
645
+ _UU16 *p0, *p1;
646
+
647
+ v0 = 0x9876;
648
+ v1 = 0x9876;
649
+ p0 = &v0;
650
+ p1 = &v1;
651
+
652
+ TEST_ASSERT_EQUAL_HEX16(0x9876, 0x9876);
653
+ TEST_ASSERT_EQUAL_HEX16(v0, v1);
654
+ TEST_ASSERT_EQUAL_HEX16(0x9876, v1);
655
+ TEST_ASSERT_EQUAL_HEX16(v0, 0x9876);
656
+ TEST_ASSERT_EQUAL_HEX16(*p0, v1);
657
+ TEST_ASSERT_EQUAL_HEX16(*p0, *p1);
658
+ TEST_ASSERT_EQUAL_HEX16(*p0, 0x9876);
659
+ }
660
+
661
+ void testEqualHex16sWhenThereAreDifferencesOutside16Bits(void)
662
+ {
663
+ TEST_ASSERT_EQUAL_HEX16(0x54321,0x64321);
664
+ TEST_ASSERT_EQUAL_HEX16(0xFFFF4321,0x00004321);
665
+ }
666
+
667
+ void testEqualHex32s(void)
668
+ {
669
+ _UU32 v0, v1;
670
+ _UU32 *p0, *p1;
671
+
672
+ v0 = 0x98765432ul;
673
+ v1 = 0x98765432ul;
674
+ p0 = &v0;
675
+ p1 = &v1;
676
+
677
+ TEST_ASSERT_EQUAL_HEX32(0x98765432ul, 0x98765432ul);
678
+ TEST_ASSERT_EQUAL_HEX32(v0, v1);
679
+ TEST_ASSERT_EQUAL_HEX32(0x98765432ul, v1);
680
+ TEST_ASSERT_EQUAL_HEX32(v0, 0x98765432ul);
681
+ TEST_ASSERT_EQUAL_HEX32(*p0, v1);
682
+ TEST_ASSERT_EQUAL_HEX32(*p0, *p1);
683
+ TEST_ASSERT_EQUAL_HEX32(*p0, 0x98765432ul);
684
+ }
685
+
686
+ void testEqualBits(void)
687
+ {
688
+ _UU32 v0 = 0xFF55AA00;
689
+ _UU32 v1 = 0x55550000;
690
+
691
+ TEST_ASSERT_BITS(v1, v0, 0x55550000);
692
+ TEST_ASSERT_BITS(v1, v0, 0xFF55CC00);
693
+ TEST_ASSERT_BITS(0xFFFFFFFF, v0, 0xFF55AA00);
694
+ TEST_ASSERT_BITS(0xFFFFFFFF, v0, v0);
695
+ TEST_ASSERT_BITS(0xF0F0F0F0, v0, 0xFC5DAE0F);
696
+ TEST_ASSERT_BITS_HIGH(v1, v0);
697
+ TEST_ASSERT_BITS_LOW(0x000055FF, v0);
698
+ TEST_ASSERT_BIT_HIGH(30, v0);
699
+ TEST_ASSERT_BIT_LOW(5, v0);
700
+ }
701
+
702
+ void testNotEqualBitHigh(void)
703
+ {
704
+ _UU32 v0 = 0x7F55AA00;
705
+
706
+ EXPECT_ABORT_BEGIN
707
+ TEST_ASSERT_BIT_HIGH(31, v0);
708
+ VERIFY_FAILS_END
709
+ }
710
+
711
+ void testNotEqualBitLow(void)
712
+ {
713
+ _UU32 v0 = 0xFF55AA00;
714
+
715
+ EXPECT_ABORT_BEGIN
716
+ TEST_ASSERT_BIT_LOW(30, v0);
717
+ VERIFY_FAILS_END
718
+ }
719
+
720
+ void testNotEqualBitsHigh(void)
721
+ {
722
+ _UU32 v0 = 0xFF55AA00;
723
+ _UU32 v1 = 0x55550000;
724
+
725
+ EXPECT_ABORT_BEGIN
726
+ TEST_ASSERT_BITS_HIGH(v0, v1);
727
+ VERIFY_FAILS_END
728
+
729
+ }
730
+
731
+ void testNotEqualBitsLow(void)
732
+ {
733
+ _UU32 v0 = 0xFF55AA00;
734
+ _UU32 v1 = 0x55550000;
735
+
736
+ EXPECT_ABORT_BEGIN
737
+ TEST_ASSERT_BITS_LOW(v0, v1);
738
+ VERIFY_FAILS_END
739
+
740
+ }
741
+ void testEqualShorts(void)
742
+ {
743
+ short v0, v1;
744
+ short *p0, *p1;
745
+
746
+ v0 = 19467;
747
+ v1 = 19467;
748
+ p0 = &v0;
749
+ p1 = &v1;
750
+
751
+ TEST_ASSERT_EQUAL_INT(1837, 1837);
752
+ TEST_ASSERT_EQUAL_INT(-2987, -2987);
753
+ TEST_ASSERT_EQUAL_INT(v0, v1);
754
+ TEST_ASSERT_EQUAL_INT(19467, v1);
755
+ TEST_ASSERT_EQUAL_INT(v0, 19467);
756
+ TEST_ASSERT_EQUAL_INT(*p0, v1);
757
+ TEST_ASSERT_EQUAL_INT(*p0, *p1);
758
+ TEST_ASSERT_EQUAL_INT(*p0, 19467);
759
+ }
760
+
761
+ void testEqualUShorts(void)
762
+ {
763
+ unsigned short v0, v1;
764
+ unsigned short *p0, *p1;
765
+
766
+ v0 = 19467;
767
+ v1 = 19467;
768
+ p0 = &v0;
769
+ p1 = &v1;
770
+
771
+ TEST_ASSERT_EQUAL_UINT(1837, 1837);
772
+ TEST_ASSERT_EQUAL_UINT(2987, 2987);
773
+ TEST_ASSERT_EQUAL_UINT(v0, v1);
774
+ TEST_ASSERT_EQUAL_UINT(19467, v1);
775
+ TEST_ASSERT_EQUAL_UINT(v0, 19467);
776
+ TEST_ASSERT_EQUAL_UINT(*p0, v1);
777
+ TEST_ASSERT_EQUAL_UINT(*p0, *p1);
778
+ TEST_ASSERT_EQUAL_UINT(*p0, 19467);
779
+ }
780
+
781
+ void testEqualChars(void)
782
+ {
783
+ signed char v0, v1;
784
+ signed char *p0, *p1;
785
+
786
+ v0 = 109;
787
+ v1 = 109;
788
+ p0 = &v0;
789
+ p1 = &v1;
790
+
791
+ TEST_ASSERT_EQUAL_INT(42, 42);
792
+ TEST_ASSERT_EQUAL_INT(-116, -116);
793
+ TEST_ASSERT_EQUAL_INT(v0, v1);
794
+ TEST_ASSERT_EQUAL_INT(109, v1);
795
+ TEST_ASSERT_EQUAL_INT(v0, 109);
796
+ TEST_ASSERT_EQUAL_INT(*p0, v1);
797
+ TEST_ASSERT_EQUAL_INT(*p0, *p1);
798
+ TEST_ASSERT_EQUAL_INT(*p0, 109);
799
+ }
800
+
801
+ void testEqualUChars(void)
802
+ {
803
+ unsigned char v0, v1;
804
+ unsigned char *p0, *p1;
805
+
806
+ v0 = 251;
807
+ v1 = 251;
808
+ p0 = &v0;
809
+ p1 = &v1;
810
+
811
+ TEST_ASSERT_EQUAL_INT(42, 42);
812
+ TEST_ASSERT_EQUAL_INT(v0, v1);
813
+ TEST_ASSERT_EQUAL_INT(251, v1);
814
+ TEST_ASSERT_EQUAL_INT(v0, 251);
815
+ TEST_ASSERT_EQUAL_INT(*p0, v1);
816
+ TEST_ASSERT_EQUAL_INT(*p0, *p1);
817
+ TEST_ASSERT_EQUAL_INT(*p0, 251);
818
+ }
819
+
820
+ void testEqualPointers(void)
821
+ {
822
+ int v0, v1;
823
+ int *p0, *p1, *p2;
824
+
825
+ v0 = 19467;
826
+ v1 = 18271;
827
+ p0 = &v0;
828
+ p1 = &v1;
829
+ p2 = &v1;
830
+
831
+ TEST_ASSERT_EQUAL_PTR(p0, &v0);
832
+ TEST_ASSERT_EQUAL_PTR(&v1, p1);
833
+ TEST_ASSERT_EQUAL_PTR(p2, p1);
834
+ TEST_ASSERT_EQUAL_PTR(&v0, &v0);
835
+ }
836
+
837
+ void testNotEqualPointers(void)
838
+ {
839
+ EXPECT_ABORT_BEGIN
840
+ TEST_ASSERT_EQUAL_PTR(0x12345678, 0x12345677);
841
+ VERIFY_FAILS_END
842
+ }
843
+
844
+ void testIntsWithinDelta(void)
845
+ {
846
+ TEST_ASSERT_INT_WITHIN(1, 5000, 5001);
847
+ TEST_ASSERT_INT_WITHIN(5, 5000, 4996);
848
+ TEST_ASSERT_INT_WITHIN(5, 5000, 5005);
849
+ TEST_ASSERT_INT_WITHIN(500, 50, -440);
850
+
851
+ TEST_ASSERT_INT_WITHIN(2, -1, -1);
852
+ TEST_ASSERT_INT_WITHIN(5, 1, -1);
853
+ TEST_ASSERT_INT_WITHIN(5, -1, 1);
854
+ }
855
+
856
+ void testIntsWithinDeltaAndCustomMessage(void)
857
+ {
858
+ TEST_ASSERT_INT_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
859
+ TEST_ASSERT_INT_WITHIN_MESSAGE(5, 5000, 4996, "Custom Message.");
860
+ TEST_ASSERT_INT_WITHIN_MESSAGE(5, 5000, 5005, "Custom Message.");
861
+ TEST_ASSERT_INT_WITHIN_MESSAGE(500, 50, -440, "Custom Message.");
862
+
863
+ TEST_ASSERT_INT_WITHIN_MESSAGE(2, -1, -1, "Custom Message.");
864
+ TEST_ASSERT_INT_WITHIN_MESSAGE(5, 1, -1, "Custom Message.");
865
+ TEST_ASSERT_INT_WITHIN_MESSAGE(5, -1, 1, "Custom Message.");
866
+ }
867
+
868
+ void testIntsNotWithinDelta(void)
869
+ {
870
+ EXPECT_ABORT_BEGIN
871
+ TEST_ASSERT_INT_WITHIN(5, 5000, 5006);
872
+ VERIFY_FAILS_END
873
+ }
874
+
875
+ void testIntsNotWithinDeltaAndCustomMessage(void)
876
+ {
877
+ EXPECT_ABORT_BEGIN
878
+ TEST_ASSERT_INT_WITHIN_MESSAGE(5, 5000, 5006, "Custom Message.");
879
+ VERIFY_FAILS_END
880
+ }
881
+
882
+ void testUIntsWithinDelta(void)
883
+ {
884
+ TEST_ASSERT_UINT_WITHIN(1, 5000, 5001);
885
+ TEST_ASSERT_UINT_WITHIN(5, 5000, 4996);
886
+ TEST_ASSERT_UINT_WITHIN(5, 5000, 5005);
887
+ }
888
+
889
+ void testUIntsWithinDeltaAndCustomMessage(void)
890
+ {
891
+ TEST_ASSERT_UINT_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
892
+ TEST_ASSERT_UINT_WITHIN_MESSAGE(5, 5000, 4996, "Custom Message.");
893
+ TEST_ASSERT_UINT_WITHIN_MESSAGE(5, 5000, 5005, "Custom Message.");
894
+ }
895
+
896
+ void testUIntsNotWithinDelta(void)
897
+ {
898
+ EXPECT_ABORT_BEGIN
899
+ TEST_ASSERT_UINT_WITHIN(1, 2147483647u, 2147483649u);
900
+ VERIFY_FAILS_END
901
+ }
902
+
903
+ void testUIntsNotWithinDeltaAndCustomMessage(void)
904
+ {
905
+ EXPECT_ABORT_BEGIN
906
+ TEST_ASSERT_UINT_WITHIN_MESSAGE(1, 2147483647u, 2147483649u, "Custom Message.");
907
+ VERIFY_FAILS_END
908
+ }
909
+
910
+ void testUIntsNotWithinDeltaEvenThoughASignedIntWouldPassSmallFirst(void)
911
+ {
912
+ EXPECT_ABORT_BEGIN
913
+ TEST_ASSERT_UINT_WITHIN(5, 1, -1);
914
+ VERIFY_FAILS_END
915
+ }
916
+
917
+ void testUIntsNotWithinDeltaEvenThoughASignedIntWouldPassSmallFirstAndCustomMessage(void)
918
+ {
919
+ EXPECT_ABORT_BEGIN
920
+ TEST_ASSERT_UINT_WITHIN_MESSAGE(5, 1, -1, "Custom Message.");
921
+ VERIFY_FAILS_END
922
+ }
923
+
924
+ void testUIntsNotWithinDeltaEvenThoughASignedIntWouldPassBigFirst(void)
925
+ {
926
+ EXPECT_ABORT_BEGIN
927
+ TEST_ASSERT_UINT_WITHIN(5, -1, 1);
928
+ VERIFY_FAILS_END
929
+ }
930
+
931
+ void testUIntsNotWithinDeltaEvenThoughASignedIntWouldPassBigFirstAndCustomMessage(void)
932
+ {
933
+ EXPECT_ABORT_BEGIN
934
+ TEST_ASSERT_UINT_WITHIN_MESSAGE(5, -1, 1, "Custom Message.");
935
+ VERIFY_FAILS_END
936
+ }
937
+
938
+ void testHEX32sWithinDelta(void)
939
+ {
940
+ TEST_ASSERT_HEX32_WITHIN(1, 5000, 5001);
941
+ TEST_ASSERT_HEX32_WITHIN(5, 5000, 4996);
942
+ TEST_ASSERT_HEX32_WITHIN(5, 5000, 5005);
943
+ }
944
+
945
+ void testHEX32sWithinDeltaAndCustomMessage(void)
946
+ {
947
+ TEST_ASSERT_HEX32_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
948
+ TEST_ASSERT_HEX32_WITHIN_MESSAGE(5, 5000, 4996, "Custom Message.");
949
+ TEST_ASSERT_HEX32_WITHIN_MESSAGE(5, 5000, 5005, "Custom Message.");
950
+ }
951
+
952
+ void testHEX32sNotWithinDelta(void)
953
+ {
954
+ EXPECT_ABORT_BEGIN
955
+ TEST_ASSERT_HEX32_WITHIN(1, 2147483647u, 2147483649u);
956
+ VERIFY_FAILS_END
957
+ }
958
+
959
+ void testHEX32sNotWithinDeltaAndCustomMessage(void)
960
+ {
961
+ EXPECT_ABORT_BEGIN
962
+ TEST_ASSERT_HEX32_WITHIN_MESSAGE(1, 2147483647u, 2147483649u, "Custom Message.");
963
+ VERIFY_FAILS_END
964
+ }
965
+
966
+ void testHEX32sNotWithinDeltaEvenThoughASignedIntWouldPass(void)
967
+ {
968
+ EXPECT_ABORT_BEGIN
969
+ TEST_ASSERT_HEX32_WITHIN(5, 1, -1);
970
+ VERIFY_FAILS_END
971
+ }
972
+
973
+ void testHEX32sNotWithinDeltaEvenThoughASignedIntWouldPassAndCustomMessage(void)
974
+ {
975
+ EXPECT_ABORT_BEGIN
976
+ TEST_ASSERT_HEX32_WITHIN_MESSAGE(5, 1, -1, "Custom Message.");
977
+ VERIFY_FAILS_END
978
+ }
979
+
980
+ void testHEX16sWithinDelta(void)
981
+ {
982
+ TEST_ASSERT_HEX16_WITHIN(1, 5000, 5001);
983
+ TEST_ASSERT_HEX16_WITHIN(5, 5000, 4996);
984
+ TEST_ASSERT_HEX16_WITHIN(5, 5000, 5005);
985
+ }
986
+
987
+ void testHEX16sWithinDeltaAndCustomMessage(void)
988
+ {
989
+ TEST_ASSERT_HEX16_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
990
+ TEST_ASSERT_HEX16_WITHIN_MESSAGE(5, 5000, 4996, "Custom Message.");
991
+ TEST_ASSERT_HEX16_WITHIN_MESSAGE(5, 5000, 5005, "Custom Message.");
992
+ }
993
+
994
+ void testHEX16sWithinDeltaWhenThereAreDifferenceOutsideOf16Bits(void)
995
+ {
996
+ TEST_ASSERT_HEX16_WITHIN(5, 0x54321, 0x44321);
997
+ }
998
+
999
+ void testHEX16sWithinDeltaWhenThereAreDifferenceOutsideOf16BitsAndCustomMessage(void)
1000
+ {
1001
+ TEST_ASSERT_HEX16_WITHIN_MESSAGE(5, 0x54321, 0x44321, "Custom Message.");
1002
+ }
1003
+
1004
+ void testHEX16sNotWithinDelta(void)
1005
+ {
1006
+ EXPECT_ABORT_BEGIN
1007
+ TEST_ASSERT_HEX16_WITHIN(2, 65535, 0);
1008
+ VERIFY_FAILS_END
1009
+ }
1010
+
1011
+ void testHEX16sNotWithinDeltaAndCustomMessage(void)
1012
+ {
1013
+ EXPECT_ABORT_BEGIN
1014
+ TEST_ASSERT_HEX16_WITHIN_MESSAGE(2, 65535, 0, "Custom Message.");
1015
+ VERIFY_FAILS_END
1016
+ }
1017
+
1018
+ void testHEX8sWithinDelta(void)
1019
+ {
1020
+ TEST_ASSERT_HEX8_WITHIN(1, 254, 255);
1021
+ TEST_ASSERT_HEX8_WITHIN(5, 251, 255);
1022
+ TEST_ASSERT_HEX8_WITHIN(5, 1, 4);
1023
+ }
1024
+
1025
+ void testHEX8sWithinDeltaAndCustomMessage(void)
1026
+ {
1027
+ TEST_ASSERT_HEX8_WITHIN_MESSAGE(1, 254, 255, "Custom Message.");
1028
+ TEST_ASSERT_HEX8_WITHIN_MESSAGE(5, 251, 255, "Custom Message.");
1029
+ TEST_ASSERT_HEX8_WITHIN_MESSAGE(5, 1, 4, "Custom Message.");
1030
+ }
1031
+
1032
+ void testHEX8sWithinDeltaWhenThereAreDifferenceOutsideOf8Bits(void)
1033
+ {
1034
+ TEST_ASSERT_HEX8_WITHIN(5, 0x123, 0xF23);
1035
+ }
1036
+
1037
+ void testHEX8sWithinDeltaWhenThereAreDifferenceOutsideOf8BitsAndCustomMessage(void)
1038
+ {
1039
+ TEST_ASSERT_HEX8_WITHIN_MESSAGE(5, 0x123, 0xF23, "Custom Message.");
1040
+ }
1041
+
1042
+ void testHEX8sNotWithinDelta(void)
1043
+ {
1044
+ EXPECT_ABORT_BEGIN
1045
+ TEST_ASSERT_HEX8_WITHIN(2, 255, 0);
1046
+ VERIFY_FAILS_END
1047
+ }
1048
+
1049
+ void testHEX8sNotWithinDeltaAndCustomMessage(void)
1050
+ {
1051
+ EXPECT_ABORT_BEGIN
1052
+ TEST_ASSERT_HEX8_WITHIN_MESSAGE(2, 255, 0, "Custom Message.");
1053
+ VERIFY_FAILS_END
1054
+ }
1055
+
1056
+ //-----------------
1057
+
1058
+ void testUINT32sWithinDelta(void)
1059
+ {
1060
+ TEST_ASSERT_UINT32_WITHIN(1, 5000, 5001);
1061
+ TEST_ASSERT_UINT32_WITHIN(5, 5000, 4996);
1062
+ TEST_ASSERT_UINT32_WITHIN(5, 5000, 5005);
1063
+ }
1064
+
1065
+ void testUINT32sWithinDeltaAndCustomMessage(void)
1066
+ {
1067
+ TEST_ASSERT_UINT32_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
1068
+ TEST_ASSERT_UINT32_WITHIN_MESSAGE(5, 5000, 4996, "Custom Message.");
1069
+ TEST_ASSERT_UINT32_WITHIN_MESSAGE(5, 5000, 5005, "Custom Message.");
1070
+ }
1071
+
1072
+ void testUINT32sNotWithinDelta(void)
1073
+ {
1074
+ EXPECT_ABORT_BEGIN
1075
+ TEST_ASSERT_UINT32_WITHIN(1, 2147483647u, 2147483649u);
1076
+ VERIFY_FAILS_END
1077
+ }
1078
+
1079
+ void testUINT32sNotWithinDeltaAndCustomMessage(void)
1080
+ {
1081
+ EXPECT_ABORT_BEGIN
1082
+ TEST_ASSERT_UINT32_WITHIN_MESSAGE(1, 2147483647u, 2147483649u, "Custom Message.");
1083
+ VERIFY_FAILS_END
1084
+ }
1085
+
1086
+ void testUINT32sNotWithinDeltaEvenThoughASignedIntWouldPass(void)
1087
+ {
1088
+ EXPECT_ABORT_BEGIN
1089
+ TEST_ASSERT_UINT32_WITHIN(5, 1, -1);
1090
+ VERIFY_FAILS_END
1091
+ }
1092
+
1093
+ void testUINT32sNotWithinDeltaEvenThoughASignedIntWouldPassAndCustomMessage(void)
1094
+ {
1095
+ EXPECT_ABORT_BEGIN
1096
+ TEST_ASSERT_UINT32_WITHIN_MESSAGE(5, 1, -1, "Custom Message.");
1097
+ VERIFY_FAILS_END
1098
+ }
1099
+
1100
+ void testUINT16sWithinDelta(void)
1101
+ {
1102
+ TEST_ASSERT_UINT16_WITHIN(1, 5000, 5001);
1103
+ TEST_ASSERT_UINT16_WITHIN(5, 5000, 4996);
1104
+ TEST_ASSERT_UINT16_WITHIN(5, 5000, 5005);
1105
+ }
1106
+
1107
+ void testUINT16sWithinDeltaAndCustomMessage(void)
1108
+ {
1109
+ TEST_ASSERT_UINT16_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
1110
+ TEST_ASSERT_UINT16_WITHIN_MESSAGE(5, 5000, 4996, "Custom Message.");
1111
+ TEST_ASSERT_UINT16_WITHIN_MESSAGE(5, 5000, 5005, "Custom Message.");
1112
+ }
1113
+
1114
+ void testUINT16sWithinDeltaWhenThereAreDifferenceOutsideOf16Bits(void)
1115
+ {
1116
+ TEST_ASSERT_UINT16_WITHIN(5, 0x54321, 0x44321);
1117
+ }
1118
+
1119
+ void testUINT16sWithinDeltaWhenThereAreDifferenceOutsideOf16BitsAndCustomMessage(void)
1120
+ {
1121
+ TEST_ASSERT_UINT16_WITHIN_MESSAGE(5, 0x54321, 0x44321, "Custom Message.");
1122
+ }
1123
+
1124
+ void testUINT16sNotWithinDelta(void)
1125
+ {
1126
+ EXPECT_ABORT_BEGIN
1127
+ TEST_ASSERT_UINT16_WITHIN(2, 65535, 0);
1128
+ VERIFY_FAILS_END
1129
+ }
1130
+
1131
+ void testUINT16sNotWithinDeltaAndCustomMessage(void)
1132
+ {
1133
+ EXPECT_ABORT_BEGIN
1134
+ TEST_ASSERT_UINT16_WITHIN_MESSAGE(2, 65535, 0, "Custom Message.");
1135
+ VERIFY_FAILS_END
1136
+ }
1137
+
1138
+ void testUINT8sWithinDelta(void)
1139
+ {
1140
+ TEST_ASSERT_UINT8_WITHIN(1, 254, 255);
1141
+ TEST_ASSERT_UINT8_WITHIN(5, 251, 255);
1142
+ TEST_ASSERT_UINT8_WITHIN(5, 1, 4);
1143
+ }
1144
+
1145
+ void testUINT8sWithinDeltaAndCustomMessage(void)
1146
+ {
1147
+ TEST_ASSERT_UINT8_WITHIN_MESSAGE(1, 254, 255, "Custom Message.");
1148
+ TEST_ASSERT_UINT8_WITHIN_MESSAGE(5, 251, 255, "Custom Message.");
1149
+ TEST_ASSERT_UINT8_WITHIN_MESSAGE(5, 1, 4, "Custom Message.");
1150
+ }
1151
+
1152
+ void testUINT8sWithinDeltaWhenThereAreDifferenceOutsideOf8Bits(void)
1153
+ {
1154
+ TEST_ASSERT_UINT8_WITHIN(5, 0x123, 0xF23);
1155
+ }
1156
+
1157
+ void testUINT8sWithinDeltaWhenThereAreDifferenceOutsideOf8BitsAndCustomMessage(void)
1158
+ {
1159
+ TEST_ASSERT_UINT8_WITHIN_MESSAGE(5, 0x123, 0xF23, "Custom Message.");
1160
+ }
1161
+
1162
+ void testUINT8sNotWithinDelta(void)
1163
+ {
1164
+ EXPECT_ABORT_BEGIN
1165
+ TEST_ASSERT_UINT8_WITHIN(2, 255, 0);
1166
+ VERIFY_FAILS_END
1167
+ }
1168
+
1169
+ void testUINT8sNotWithinDeltaAndCustomMessage(void)
1170
+ {
1171
+ EXPECT_ABORT_BEGIN
1172
+ TEST_ASSERT_UINT8_WITHIN_MESSAGE(2, 255, 0, "Custom Message.");
1173
+ VERIFY_FAILS_END
1174
+ }
1175
+
1176
+ void testINT32sWithinDelta(void)
1177
+ {
1178
+ TEST_ASSERT_INT32_WITHIN(1, 5000, 5001);
1179
+ TEST_ASSERT_INT32_WITHIN(5, 1, -2);
1180
+ TEST_ASSERT_INT32_WITHIN(5, -2, 1);
1181
+ }
1182
+
1183
+ void testINT32sWithinDeltaAndCustomMessage(void)
1184
+ {
1185
+ TEST_ASSERT_INT32_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
1186
+ }
1187
+
1188
+ void testINT32sNotWithinDelta(void)
1189
+ {
1190
+ EXPECT_ABORT_BEGIN
1191
+ TEST_ASSERT_INT32_WITHIN(1, -3, 1);
1192
+ VERIFY_FAILS_END
1193
+ }
1194
+
1195
+ void testINT32sNotWithinDeltaAndCustomMessage(void)
1196
+ {
1197
+ EXPECT_ABORT_BEGIN
1198
+ TEST_ASSERT_INT32_WITHIN_MESSAGE(1, -2, 1, "Custom Message.");
1199
+ VERIFY_FAILS_END
1200
+ }
1201
+
1202
+ void testINT16sWithinDelta(void)
1203
+ {
1204
+ TEST_ASSERT_INT16_WITHIN(1, 5000, 5001);
1205
+ TEST_ASSERT_INT16_WITHIN(5, 2, -2);
1206
+ TEST_ASSERT_INT16_WITHIN(5, -2, 2);
1207
+ }
1208
+
1209
+ void testINT16sWithinDeltaAndCustomMessage(void)
1210
+ {
1211
+ TEST_ASSERT_INT16_WITHIN_MESSAGE(1, 5000, 5001, "Custom Message.");
1212
+ }
1213
+
1214
+ void testINT16sWithinDeltaWhenThereAreDifferenceOutsideOf16Bits(void)
1215
+ {
1216
+ TEST_ASSERT_INT16_WITHIN(5, 0x54321, 0x44321);
1217
+ }
1218
+
1219
+ void testINT16sWithinDeltaWhenThereAreDifferenceOutsideOf16BitsAndCustomMessage(void)
1220
+ {
1221
+ TEST_ASSERT_INT16_WITHIN_MESSAGE(5, 0x54321, 0x44321, "Custom Message.");
1222
+ }
1223
+
1224
+ void testINT16sNotWithinDelta(void)
1225
+ {
1226
+ EXPECT_ABORT_BEGIN
1227
+ TEST_ASSERT_INT16_WITHIN(2, 4, -2);
1228
+ VERIFY_FAILS_END
1229
+ }
1230
+
1231
+ void testINT16sNotWithinDeltaAndCustomMessage(void)
1232
+ {
1233
+ EXPECT_ABORT_BEGIN
1234
+ TEST_ASSERT_INT16_WITHIN_MESSAGE(2, 3, 0, "Custom Message.");
1235
+ VERIFY_FAILS_END
1236
+ }
1237
+
1238
+ void testINT8sWithinDelta(void)
1239
+ {
1240
+ TEST_ASSERT_INT8_WITHIN(1, 127, 126);
1241
+ TEST_ASSERT_INT8_WITHIN(5, -2, 2);
1242
+ TEST_ASSERT_INT8_WITHIN(5, 2, -2);
1243
+ }
1244
+
1245
+ void testINT8sWithinDeltaAndCustomMessage(void)
1246
+ {
1247
+ TEST_ASSERT_INT8_WITHIN_MESSAGE(5, 1, 4, "Custom Message.");
1248
+ }
1249
+
1250
+ void testINT8sWithinDeltaWhenThereAreDifferenceOutsideOf8Bits(void)
1251
+ {
1252
+ TEST_ASSERT_INT8_WITHIN(5, 0x123, 0xF23);
1253
+ }
1254
+
1255
+ void testINT8sWithinDeltaWhenThereAreDifferenceOutsideOf8BitsAndCustomMessage(void)
1256
+ {
1257
+ TEST_ASSERT_INT8_WITHIN_MESSAGE(5, 0x123, 0xF23, "Custom Message.");
1258
+ }
1259
+
1260
+ void testINT8sNotWithinDelta(void)
1261
+ {
1262
+ EXPECT_ABORT_BEGIN
1263
+ TEST_ASSERT_INT8_WITHIN(2, -3, 0);
1264
+ VERIFY_FAILS_END
1265
+ }
1266
+
1267
+ void testINT8sNotWithinDeltaAndCustomMessage(void)
1268
+ {
1269
+ EXPECT_ABORT_BEGIN
1270
+ TEST_ASSERT_INT8_WITHIN_MESSAGE(2, -4, 0, "Custom Message.");
1271
+ VERIFY_FAILS_END
1272
+ }
1273
+
1274
+ void testEqualStrings(void)
1275
+ {
1276
+ const char *testString = "foo";
1277
+
1278
+ TEST_ASSERT_EQUAL_STRING(testString, testString);
1279
+ TEST_ASSERT_EQUAL_STRING_MESSAGE("foo", "foo", "foo isn't foo");
1280
+ TEST_ASSERT_EQUAL_STRING("foo", testString);
1281
+ TEST_ASSERT_EQUAL_STRING(testString, "foo");
1282
+ TEST_ASSERT_EQUAL_STRING("", "");
1283
+ }
1284
+
1285
+ void testEqualStringsLen(void)
1286
+ {
1287
+ const char *testString = "foobar";
1288
+ TEST_ASSERT_EQUAL_STRING_LEN(testString, testString, strlen(testString));
1289
+ TEST_ASSERT_EQUAL_STRING_LEN_MESSAGE("foobar", "foobaz", 5, "fooba isn't fooba");
1290
+ TEST_ASSERT_EQUAL_STRING_LEN("foo", testString, 3);
1291
+ TEST_ASSERT_EQUAL_STRING_LEN(testString, "foo", 3);
1292
+ TEST_ASSERT_EQUAL_STRING_LEN("", "", 3);
1293
+ }
1294
+
1295
+ void testEqualStringsWithCarriageReturnsAndLineFeeds(void)
1296
+ {
1297
+ const char *testString = "foo\r\nbar";
1298
+
1299
+ TEST_ASSERT_EQUAL_STRING(testString, testString);
1300
+ TEST_ASSERT_EQUAL_STRING("foo\r\nbar", "foo\r\nbar");
1301
+ TEST_ASSERT_EQUAL_STRING("foo\r\nbar", testString);
1302
+ TEST_ASSERT_EQUAL_STRING(testString, "foo\r\nbar");
1303
+ TEST_ASSERT_EQUAL_STRING("", "");
1304
+ }
1305
+
1306
+ void testNotEqualString1(void)
1307
+ {
1308
+ EXPECT_ABORT_BEGIN
1309
+ TEST_ASSERT_EQUAL_STRING("foo", "bar");
1310
+ VERIFY_FAILS_END
1311
+ }
1312
+
1313
+ void testNotEqualStringLen1(void)
1314
+ {
1315
+ EXPECT_ABORT_BEGIN
1316
+ TEST_ASSERT_EQUAL_STRING_LEN("foobar", "foobaz", 6);
1317
+ VERIFY_FAILS_END
1318
+ }
1319
+
1320
+ void testNotEqualString2(void)
1321
+ {
1322
+ EXPECT_ABORT_BEGIN
1323
+ TEST_ASSERT_EQUAL_STRING("foo", "");
1324
+ VERIFY_FAILS_END
1325
+ }
1326
+
1327
+ void testNotEqualStringLen2(void)
1328
+ {
1329
+ EXPECT_ABORT_BEGIN
1330
+ TEST_ASSERT_EQUAL_STRING_LEN("foo", "", 3);
1331
+ VERIFY_FAILS_END
1332
+ }
1333
+
1334
+ void testNotEqualString3(void)
1335
+ {
1336
+ EXPECT_ABORT_BEGIN
1337
+ TEST_ASSERT_EQUAL_STRING("", "bar");
1338
+ VERIFY_FAILS_END
1339
+ }
1340
+
1341
+ void testNotEqualStringLen3(void)
1342
+ {
1343
+ EXPECT_ABORT_BEGIN
1344
+ TEST_ASSERT_EQUAL_STRING_LEN("", "bar", 3);
1345
+ VERIFY_FAILS_END
1346
+ }
1347
+
1348
+ void testNotEqualString4(void)
1349
+ {
1350
+ EXPECT_ABORT_BEGIN
1351
+ TEST_ASSERT_EQUAL_STRING("bar\r", "bar\n");
1352
+ VERIFY_FAILS_END
1353
+ }
1354
+
1355
+ void testNotEqualStringLen4(void)
1356
+ {
1357
+ EXPECT_ABORT_BEGIN
1358
+ TEST_ASSERT_EQUAL_STRING_LEN("bar\r", "bar\n", 4);
1359
+ VERIFY_FAILS_END
1360
+ }
1361
+
1362
+ void testNotEqualString5(void)
1363
+ {
1364
+ const char str1[] = { 0x41, 0x42, 0x03, 0x00 };
1365
+ const char str2[] = { 0x41, 0x42, 0x04, 0x00 };
1366
+ EXPECT_ABORT_BEGIN
1367
+ TEST_ASSERT_EQUAL_STRING(str1, str2);
1368
+ VERIFY_FAILS_END
1369
+ }
1370
+
1371
+ void testNotEqualString_ExpectedStringIsNull(void)
1372
+ {
1373
+ EXPECT_ABORT_BEGIN
1374
+ TEST_ASSERT_EQUAL_STRING(NULL, "bar");
1375
+ VERIFY_FAILS_END
1376
+ }
1377
+
1378
+ void testNotEqualString_ActualStringIsNull(void)
1379
+ {
1380
+ EXPECT_ABORT_BEGIN
1381
+ TEST_ASSERT_EQUAL_STRING("foo", NULL);
1382
+ VERIFY_FAILS_END
1383
+ }
1384
+
1385
+ void testEqualStringArrays(void)
1386
+ {
1387
+ const char *testStrings[] = { "foo", "boo", "woo", "moo" };
1388
+ const char *expStrings[] = { "foo", "boo", "woo", "zoo" };
1389
+
1390
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, expStrings, 3);
1391
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 3);
1392
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 2);
1393
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 1);
1394
+ }
1395
+
1396
+ void testNotEqualStringArray1(void)
1397
+ {
1398
+ const char *testStrings[] = { "foo", "boo", "woo", "moo" };
1399
+ const char *expStrings[] = { "foo", "boo", "woo", "zoo" };
1400
+
1401
+ EXPECT_ABORT_BEGIN
1402
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 4);
1403
+ VERIFY_FAILS_END
1404
+ }
1405
+
1406
+ void testNotEqualStringArray2(void)
1407
+ {
1408
+ const char *testStrings[] = { "zoo", "boo", "woo", "moo" };
1409
+ const char *expStrings[] = { "foo", "boo", "woo", "moo" };
1410
+
1411
+ EXPECT_ABORT_BEGIN
1412
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 4);
1413
+ VERIFY_FAILS_END
1414
+ }
1415
+
1416
+ void testNotEqualStringArray3(void)
1417
+ {
1418
+ const char *testStrings[] = { "foo", "boo", "woo", NULL };
1419
+ const char *expStrings[] = { "foo", "boo", "woo", "zoo" };
1420
+
1421
+ EXPECT_ABORT_BEGIN
1422
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 4);
1423
+ VERIFY_FAILS_END
1424
+ }
1425
+
1426
+ void testNotEqualStringArray4(void)
1427
+ {
1428
+ const char *testStrings[] = { "foo", "boo", "woo", "moo" };
1429
+ const char *expStrings[] = { "foo", NULL, "woo", "moo" };
1430
+
1431
+ EXPECT_ABORT_BEGIN
1432
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 4);
1433
+ VERIFY_FAILS_END
1434
+ }
1435
+
1436
+ void testNotEqualStringArray5(void)
1437
+ {
1438
+ const char **testStrings = NULL;
1439
+ const char *expStrings[] = { "foo", "boo", "woo", "zoo" };
1440
+
1441
+ EXPECT_ABORT_BEGIN
1442
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 4);
1443
+ VERIFY_FAILS_END
1444
+ }
1445
+
1446
+ void testNotEqualStringArray6(void)
1447
+ {
1448
+ const char *testStrings[] = { "foo", "boo", "woo", "zoo" };
1449
+ const char **expStrings = NULL;
1450
+
1451
+ EXPECT_ABORT_BEGIN
1452
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 4);
1453
+ VERIFY_FAILS_END
1454
+ }
1455
+
1456
+ void testEqualStringArrayIfBothNulls(void)
1457
+ {
1458
+ const char **testStrings = NULL;
1459
+ const char **expStrings = NULL;
1460
+
1461
+ TEST_ASSERT_EQUAL_STRING_ARRAY(expStrings, testStrings, 4);
1462
+ }
1463
+
1464
+ void testEqualMemory(void)
1465
+ {
1466
+ const char *testString = "whatever";
1467
+
1468
+ TEST_ASSERT_EQUAL_MEMORY(testString, testString, 8);
1469
+ TEST_ASSERT_EQUAL_MEMORY("whatever", "whatever", 8);
1470
+ TEST_ASSERT_EQUAL_MEMORY("whatever", testString, 8);
1471
+ TEST_ASSERT_EQUAL_MEMORY(testString, "whatever", 8);
1472
+ TEST_ASSERT_EQUAL_MEMORY(testString, "whatever", 2);
1473
+ TEST_ASSERT_EQUAL_MEMORY(NULL, NULL, 1);
1474
+ }
1475
+
1476
+ void testNotEqualMemory1(void)
1477
+ {
1478
+ EXPECT_ABORT_BEGIN
1479
+ TEST_ASSERT_EQUAL_MEMORY("foo", "bar", 3);
1480
+ VERIFY_FAILS_END
1481
+ }
1482
+
1483
+ void testNotEqualMemory2(void)
1484
+ {
1485
+ EXPECT_ABORT_BEGIN
1486
+ TEST_ASSERT_EQUAL_MEMORY("fool", "food", 4);
1487
+ VERIFY_FAILS_END
1488
+ }
1489
+
1490
+ void testNotEqualMemory3(void)
1491
+ {
1492
+ EXPECT_ABORT_BEGIN
1493
+ TEST_ASSERT_EQUAL_MEMORY(NULL, "food", 4);
1494
+ VERIFY_FAILS_END
1495
+ }
1496
+
1497
+ void testNotEqualMemory4(void)
1498
+ {
1499
+ EXPECT_ABORT_BEGIN
1500
+ TEST_ASSERT_EQUAL_MEMORY("fool", NULL, 4);
1501
+ VERIFY_FAILS_END
1502
+ }
1503
+
1504
+ void testEqualIntArrays(void)
1505
+ {
1506
+ int p0[] = {1, 8, 987, -2};
1507
+ int p1[] = {1, 8, 987, -2};
1508
+ int p2[] = {1, 8, 987, 2};
1509
+ int p3[] = {1, 500, 600, 700};
1510
+
1511
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p0, 1);
1512
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p0, 4);
1513
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p1, 4);
1514
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p2, 3);
1515
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p3, 1);
1516
+ }
1517
+
1518
+ void testNotEqualIntArraysNullExpected(void)
1519
+ {
1520
+ int* p0 = NULL;
1521
+ int p1[] = {1, 8, 987, 2};
1522
+
1523
+ EXPECT_ABORT_BEGIN
1524
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p1, 4);
1525
+ VERIFY_FAILS_END
1526
+ }
1527
+
1528
+ void testNotEqualIntArraysNullActual(void)
1529
+ {
1530
+ int* p1 = NULL;
1531
+ int p0[] = {1, 8, 987, 2};
1532
+
1533
+ EXPECT_ABORT_BEGIN
1534
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p1, 4);
1535
+ VERIFY_FAILS_END
1536
+ }
1537
+
1538
+ void testNotEqualIntArrays1(void)
1539
+ {
1540
+ int p0[] = {1, 8, 987, -2};
1541
+ int p1[] = {1, 8, 987, 2};
1542
+
1543
+ EXPECT_ABORT_BEGIN
1544
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p1, 4);
1545
+ VERIFY_FAILS_END
1546
+ }
1547
+
1548
+ void testNotEqualIntArrays2(void)
1549
+ {
1550
+ int p0[] = {1, 8, 987, -2};
1551
+ int p1[] = {2, 8, 987, -2};
1552
+
1553
+ EXPECT_ABORT_BEGIN
1554
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p1, 4);
1555
+ VERIFY_FAILS_END
1556
+ }
1557
+
1558
+ void testNotEqualIntArrays3(void)
1559
+ {
1560
+ int p0[] = {1, 8, 987, -2};
1561
+ int p1[] = {1, 8, 986, -2};
1562
+
1563
+ EXPECT_ABORT_BEGIN
1564
+ TEST_ASSERT_EQUAL_INT_ARRAY(p0, p1, 4);
1565
+ VERIFY_FAILS_END
1566
+ }
1567
+
1568
+ void testEqualPtrArrays(void)
1569
+ {
1570
+ char A = 1;
1571
+ char B = 2;
1572
+ char C = 3;
1573
+ char* p0[] = {&A, &B, &C};
1574
+ char* p1[] = {&A, &B, &C, &A};
1575
+ char* p2[] = {&A, &B};
1576
+ char* p3[] = {&A};
1577
+
1578
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p0, p0, 1);
1579
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p0, p0, 3);
1580
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p0, p1, 3);
1581
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p1, p2, 2);
1582
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p3, p0, 1);
1583
+ }
1584
+
1585
+ void testNotEqualPtrArraysNullExpected(void)
1586
+ {
1587
+ char A = 1;
1588
+ char B = 2;
1589
+ char** p0 = NULL;
1590
+ char* p1[] = {&A, &B};
1591
+
1592
+ EXPECT_ABORT_BEGIN
1593
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p0, p1, 2);
1594
+ VERIFY_FAILS_END
1595
+ }
1596
+
1597
+ void testNotEqualPtrArraysNullActual(void)
1598
+ {
1599
+ char A = 1;
1600
+ char B = 2;
1601
+ char** p0 = NULL;
1602
+ char* p1[] = {&A, &B};
1603
+
1604
+ EXPECT_ABORT_BEGIN
1605
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p1, p0, 2);
1606
+ VERIFY_FAILS_END
1607
+ }
1608
+
1609
+ void testNotEqualPtrArrays1(void)
1610
+ {
1611
+ char A = 1;
1612
+ char B = 2;
1613
+ char C = 3;
1614
+ char* p0[] = {&A, &B, &C, &B};
1615
+ char* p1[] = {&A, &B, &C, &A};
1616
+
1617
+ EXPECT_ABORT_BEGIN
1618
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p0, p1, 4);
1619
+ VERIFY_FAILS_END
1620
+ }
1621
+
1622
+ void testNotEqualPtrArrays2(void)
1623
+ {
1624
+ char A = 1;
1625
+ char B = 2;
1626
+ char C = 3;
1627
+ char* p0[] = {&B, &B, &C, &A};
1628
+ char* p1[] = {&A, &B, &C, &A};
1629
+
1630
+ EXPECT_ABORT_BEGIN
1631
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p0, p1, 4);
1632
+ VERIFY_FAILS_END
1633
+ }
1634
+
1635
+ void testNotEqualPtrArrays3(void)
1636
+ {
1637
+ char A = 1;
1638
+ char B = 2;
1639
+ char C = 3;
1640
+ char* p0[] = {&A, &B, &B, &A};
1641
+ char* p1[] = {&A, &B, &C, &A};
1642
+
1643
+ EXPECT_ABORT_BEGIN
1644
+ TEST_ASSERT_EQUAL_PTR_ARRAY(p0, p1, 4);
1645
+ VERIFY_FAILS_END
1646
+ }
1647
+
1648
+ void testEqualInt8Arrays(void)
1649
+ {
1650
+ _US8 p0[] = {1, 8, 117, -2};
1651
+ _US8 p1[] = {1, 8, 117, -2};
1652
+ _US8 p2[] = {1, 8, 117, 2};
1653
+ _US8 p3[] = {1, 50, 60, 70};
1654
+
1655
+ TEST_ASSERT_EQUAL_INT8_ARRAY(p0, p0, 1);
1656
+ TEST_ASSERT_EQUAL_INT8_ARRAY(p0, p0, 4);
1657
+ TEST_ASSERT_EQUAL_INT8_ARRAY(p0, p1, 4);
1658
+ TEST_ASSERT_EQUAL_INT8_ARRAY(p0, p2, 3);
1659
+ TEST_ASSERT_EQUAL_INT8_ARRAY(p0, p3, 1);
1660
+ }
1661
+
1662
+ void testNotEqualInt8Arrays(void)
1663
+ {
1664
+ _US8 p0[] = {1, 8, 36, -2};
1665
+ _US8 p1[] = {1, 8, 36, 2};
1666
+
1667
+ EXPECT_ABORT_BEGIN
1668
+ TEST_ASSERT_EQUAL_INT8_ARRAY(p0, p1, 4);
1669
+ VERIFY_FAILS_END
1670
+ }
1671
+
1672
+ void testEqualUIntArrays(void)
1673
+ {
1674
+ unsigned int p0[] = {1, 8, 987, 65132u};
1675
+ unsigned int p1[] = {1, 8, 987, 65132u};
1676
+ unsigned int p2[] = {1, 8, 987, 2};
1677
+ unsigned int p3[] = {1, 500, 600, 700};
1678
+
1679
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p0, 1);
1680
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p0, 4);
1681
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p1, 4);
1682
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p2, 3);
1683
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p3, 1);
1684
+ }
1685
+
1686
+ void testNotEqualUIntArrays1(void)
1687
+ {
1688
+ unsigned int p0[] = {1, 8, 987, 65132u};
1689
+ unsigned int p1[] = {1, 8, 987, 65131u};
1690
+
1691
+ EXPECT_ABORT_BEGIN
1692
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p1, 4);
1693
+ VERIFY_FAILS_END
1694
+ }
1695
+
1696
+ void testNotEqualUIntArrays2(void)
1697
+ {
1698
+ unsigned int p0[] = {1, 8, 987, 65132u};
1699
+ unsigned int p1[] = {2, 8, 987, 65132u};
1700
+
1701
+ EXPECT_ABORT_BEGIN
1702
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p1, 4);
1703
+ VERIFY_FAILS_END
1704
+ }
1705
+
1706
+ void testNotEqualUIntArrays3(void)
1707
+ {
1708
+ unsigned int p0[] = {1, 8, 987, 65132u};
1709
+ unsigned int p1[] = {1, 8, 986, 65132u};
1710
+
1711
+ EXPECT_ABORT_BEGIN
1712
+ TEST_ASSERT_EQUAL_UINT_ARRAY(p0, p1, 4);
1713
+ VERIFY_FAILS_END
1714
+ }
1715
+
1716
+ void testEqualInt16Arrays(void)
1717
+ {
1718
+ _US16 p0[] = {1, 8, 117, 3};
1719
+ _US16 p1[] = {1, 8, 117, 3};
1720
+ _US16 p2[] = {1, 8, 117, 2};
1721
+ _US16 p3[] = {1, 50, 60, 70};
1722
+
1723
+ TEST_ASSERT_EQUAL_INT16_ARRAY(p0, p0, 1);
1724
+ TEST_ASSERT_EQUAL_INT16_ARRAY(p0, p0, 4);
1725
+ TEST_ASSERT_EQUAL_INT16_ARRAY(p0, p1, 4);
1726
+ TEST_ASSERT_EQUAL_INT16_ARRAY(p0, p2, 3);
1727
+ TEST_ASSERT_EQUAL_INT16_ARRAY(p0, p3, 1);
1728
+ }
1729
+
1730
+ void testNotEqualInt16Arrays(void)
1731
+ {
1732
+ _US16 p0[] = {1, 8, 127, 3};
1733
+ _US16 p1[] = {1, 8, 127, 2};
1734
+
1735
+ EXPECT_ABORT_BEGIN
1736
+ TEST_ASSERT_EQUAL_INT16_ARRAY(p0, p1, 4);
1737
+ VERIFY_FAILS_END
1738
+ }
1739
+
1740
+ void testEqualInt32Arrays(void)
1741
+ {
1742
+ _US32 p0[] = {1, 8, 117, 3};
1743
+ _US32 p1[] = {1, 8, 117, 3};
1744
+ _US32 p2[] = {1, 8, 117, 2};
1745
+ _US32 p3[] = {1, 50, 60, 70};
1746
+
1747
+ TEST_ASSERT_EQUAL_INT32_ARRAY(p0, p0, 1);
1748
+ TEST_ASSERT_EQUAL_INT32_ARRAY(p0, p0, 4);
1749
+ TEST_ASSERT_EQUAL_INT32_ARRAY(p0, p1, 4);
1750
+ TEST_ASSERT_EQUAL_INT32_ARRAY(p0, p2, 3);
1751
+ TEST_ASSERT_EQUAL_INT32_ARRAY(p0, p3, 1);
1752
+ }
1753
+
1754
+ void testNotEqualInt32Arrays(void)
1755
+ {
1756
+ _US32 p0[] = {1, 8, 127, 3};
1757
+ _US32 p1[] = {1, 8, 127, 2};
1758
+
1759
+ EXPECT_ABORT_BEGIN
1760
+ TEST_ASSERT_EQUAL_INT32_ARRAY(p0, p1, 4);
1761
+ VERIFY_FAILS_END
1762
+ }
1763
+
1764
+ void testEqualUINT8Arrays(void)
1765
+ {
1766
+ _UU8 p0[] = {1, 8, 100, 127};
1767
+ _UU8 p1[] = {1, 8, 100, 127};
1768
+ _UU8 p2[] = {1, 8, 100, 2};
1769
+ _UU8 p3[] = {1, 50, 60, 70};
1770
+
1771
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p0, 1);
1772
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p0, 4);
1773
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p1, 4);
1774
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p2, 3);
1775
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p3, 1);
1776
+ }
1777
+
1778
+ void testNotEqualUINT8Arrays1(void)
1779
+ {
1780
+ unsigned char p0[] = {1, 8, 100, 127u};
1781
+ unsigned char p1[] = {1, 8, 100, 255u};
1782
+
1783
+ EXPECT_ABORT_BEGIN
1784
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p1, 4);
1785
+ VERIFY_FAILS_END
1786
+ }
1787
+
1788
+ void testNotEqualUINT8Arrays2(void)
1789
+ {
1790
+ unsigned char p0[] = {1, 8, 100, 127u};
1791
+ unsigned char p1[] = {1, 8, 100, 255u};
1792
+
1793
+ EXPECT_ABORT_BEGIN
1794
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p1, 4);
1795
+ VERIFY_FAILS_END
1796
+ }
1797
+
1798
+ void testNotEqualUINT8Arrays3(void)
1799
+ {
1800
+ unsigned char p0[] = {1, 8, 100, 127u};
1801
+ unsigned char p1[] = {1, 8, 100, 255u};
1802
+
1803
+ EXPECT_ABORT_BEGIN
1804
+ TEST_ASSERT_EQUAL_UINT8_ARRAY(p0, p1, 4);
1805
+ VERIFY_FAILS_END
1806
+ }
1807
+
1808
+
1809
+ void testEqualUINT16Arrays(void)
1810
+ {
1811
+ unsigned short p0[] = {1, 8, 987, 65132u};
1812
+ unsigned short p1[] = {1, 8, 987, 65132u};
1813
+ unsigned short p2[] = {1, 8, 987, 2};
1814
+ unsigned short p3[] = {1, 500, 600, 700};
1815
+
1816
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p0, 1);
1817
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p0, 4);
1818
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p1, 4);
1819
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p2, 3);
1820
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p3, 1);
1821
+ }
1822
+
1823
+ void testNotEqualUINT16Arrays1(void)
1824
+ {
1825
+ unsigned short p0[] = {1, 8, 987, 65132u};
1826
+ unsigned short p1[] = {1, 8, 987, 65131u};
1827
+
1828
+ EXPECT_ABORT_BEGIN
1829
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p1, 4);
1830
+ VERIFY_FAILS_END
1831
+ }
1832
+
1833
+ void testNotEqualUINT16Arrays2(void)
1834
+ {
1835
+ unsigned short p0[] = {1, 8, 987, 65132u};
1836
+ unsigned short p1[] = {2, 8, 987, 65132u};
1837
+
1838
+ EXPECT_ABORT_BEGIN
1839
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p1, 4);
1840
+ VERIFY_FAILS_END
1841
+ }
1842
+
1843
+ void testNotEqualUINT16Arrays3(void)
1844
+ {
1845
+ unsigned short p0[] = {1, 8, 987, 65132u};
1846
+ unsigned short p1[] = {1, 8, 986, 65132u};
1847
+
1848
+ EXPECT_ABORT_BEGIN
1849
+ TEST_ASSERT_EQUAL_UINT16_ARRAY(p0, p1, 4);
1850
+ VERIFY_FAILS_END
1851
+ }
1852
+
1853
+ void testEqualUINT32Arrays(void)
1854
+ {
1855
+ _UU32 p0[] = {1, 8, 987, 65132u};
1856
+ _UU32 p1[] = {1, 8, 987, 65132u};
1857
+ _UU32 p2[] = {1, 8, 987, 2};
1858
+ _UU32 p3[] = {1, 500, 600, 700};
1859
+
1860
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p0, 1);
1861
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p0, 4);
1862
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p1, 4);
1863
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p2, 3);
1864
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p3, 1);
1865
+ }
1866
+
1867
+ void testNotEqualUINT32Arrays1(void)
1868
+ {
1869
+ _UU32 p0[] = {1, 8, 987, 65132u};
1870
+ _UU32 p1[] = {1, 8, 987, 65131u};
1871
+
1872
+ EXPECT_ABORT_BEGIN
1873
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p1, 4);
1874
+ VERIFY_FAILS_END
1875
+ }
1876
+
1877
+ void testNotEqualUINT32Arrays2(void)
1878
+ {
1879
+ _UU32 p0[] = {1, 8, 987, 65132u};
1880
+ _UU32 p1[] = {2, 8, 987, 65132u};
1881
+
1882
+ EXPECT_ABORT_BEGIN
1883
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p1, 4);
1884
+ VERIFY_FAILS_END
1885
+ }
1886
+
1887
+ void testNotEqualUINT32Arrays3(void)
1888
+ {
1889
+ _UU32 p0[] = {1, 8, 987, 65132u};
1890
+ _UU32 p1[] = {1, 8, 986, 65132u};
1891
+
1892
+ EXPECT_ABORT_BEGIN
1893
+ TEST_ASSERT_EQUAL_UINT32_ARRAY(p0, p1, 4);
1894
+ VERIFY_FAILS_END
1895
+ }
1896
+
1897
+ void testEqualHEXArrays(void)
1898
+ {
1899
+ _UU32 p0[] = {1, 8, 987, 65132u};
1900
+ _UU32 p1[] = {1, 8, 987, 65132u};
1901
+ _UU32 p2[] = {1, 8, 987, 2};
1902
+ _UU32 p3[] = {1, 500, 600, 700};
1903
+
1904
+ TEST_ASSERT_EQUAL_HEX_ARRAY(p0, p0, 1);
1905
+ TEST_ASSERT_EQUAL_HEX_ARRAY(p0, p0, 4);
1906
+ TEST_ASSERT_EQUAL_HEX_ARRAY(p0, p1, 4);
1907
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p2, 3);
1908
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p3, 1);
1909
+ }
1910
+
1911
+ void testNotEqualHEXArrays1(void)
1912
+ {
1913
+ _UU32 p0[] = {1, 8, 987, 65132u};
1914
+ _UU32 p1[] = {1, 8, 987, 65131u};
1915
+
1916
+ EXPECT_ABORT_BEGIN
1917
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p1, 4);
1918
+ VERIFY_FAILS_END
1919
+ }
1920
+
1921
+ void testNotEqualHEXArrays2(void)
1922
+ {
1923
+ _UU32 p0[] = {1, 8, 987, 65132u};
1924
+ _UU32 p1[] = {2, 8, 987, 65132u};
1925
+
1926
+ EXPECT_ABORT_BEGIN
1927
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p1, 4);
1928
+ VERIFY_FAILS_END
1929
+ }
1930
+
1931
+ void testNotEqualHEXArrays3(void)
1932
+ {
1933
+ _UU32 p0[] = {1, 8, 987, 65132u};
1934
+ _UU32 p1[] = {1, 8, 986, 65132u};
1935
+
1936
+ EXPECT_ABORT_BEGIN
1937
+ TEST_ASSERT_EQUAL_HEX_ARRAY(p0, p1, 4);
1938
+ VERIFY_FAILS_END
1939
+ }
1940
+
1941
+ void testEqualHEX32Arrays(void)
1942
+ {
1943
+ _UU32 p0[] = {1, 8, 987, 65132u};
1944
+ _UU32 p1[] = {1, 8, 987, 65132u};
1945
+ _UU32 p2[] = {1, 8, 987, 2};
1946
+ _UU32 p3[] = {1, 500, 600, 700};
1947
+
1948
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p0, 1);
1949
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p0, 4);
1950
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p1, 4);
1951
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p2, 3);
1952
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p3, 1);
1953
+ }
1954
+
1955
+ void testNotEqualHEX32Arrays1(void)
1956
+ {
1957
+ _UU32 p0[] = {1, 8, 987, 65132u};
1958
+ _UU32 p1[] = {1, 8, 987, 65131u};
1959
+
1960
+ EXPECT_ABORT_BEGIN
1961
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p1, 4);
1962
+ VERIFY_FAILS_END
1963
+ }
1964
+
1965
+ void testNotEqualHEX32Arrays2(void)
1966
+ {
1967
+ _UU32 p0[] = {1, 8, 987, 65132u};
1968
+ _UU32 p1[] = {2, 8, 987, 65132u};
1969
+
1970
+ EXPECT_ABORT_BEGIN
1971
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p1, 4);
1972
+ VERIFY_FAILS_END
1973
+ }
1974
+
1975
+ void testNotEqualHEX32Arrays3(void)
1976
+ {
1977
+ _UU32 p0[] = {1, 8, 987, 65132u};
1978
+ _UU32 p1[] = {1, 8, 986, 65132u};
1979
+
1980
+ EXPECT_ABORT_BEGIN
1981
+ TEST_ASSERT_EQUAL_HEX32_ARRAY(p0, p1, 4);
1982
+ VERIFY_FAILS_END
1983
+ }
1984
+
1985
+ void testEqualHEX16Arrays(void)
1986
+ {
1987
+ unsigned short p0[] = {1, 8, 987, 65132u};
1988
+ unsigned short p1[] = {1, 8, 987, 65132u};
1989
+ unsigned short p2[] = {1, 8, 987, 2};
1990
+ unsigned short p3[] = {1, 500, 600, 700};
1991
+
1992
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p0, 1);
1993
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p0, 4);
1994
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p1, 4);
1995
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p2, 3);
1996
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p3, 1);
1997
+ }
1998
+
1999
+ void testNotEqualHEX16Arrays1(void)
2000
+ {
2001
+ unsigned short p0[] = {1, 8, 987, 65132u};
2002
+ unsigned short p1[] = {1, 8, 987, 65131u};
2003
+
2004
+ EXPECT_ABORT_BEGIN
2005
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p1, 4);
2006
+ VERIFY_FAILS_END
2007
+ }
2008
+
2009
+ void testNotEqualHEX16Arrays2(void)
2010
+ {
2011
+ unsigned short p0[] = {1, 8, 987, 65132u};
2012
+ unsigned short p1[] = {2, 8, 987, 65132u};
2013
+
2014
+ EXPECT_ABORT_BEGIN
2015
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p1, 4);
2016
+ VERIFY_FAILS_END
2017
+ }
2018
+
2019
+ void testNotEqualHEX16Arrays3(void)
2020
+ {
2021
+ unsigned short p0[] = {1, 8, 987, 65132u};
2022
+ unsigned short p1[] = {1, 8, 986, 65132u};
2023
+
2024
+ EXPECT_ABORT_BEGIN
2025
+ TEST_ASSERT_EQUAL_HEX16_ARRAY(p0, p1, 4);
2026
+ VERIFY_FAILS_END
2027
+ }
2028
+
2029
+ void testEqualHEX8Arrays(void)
2030
+ {
2031
+ unsigned short p0[] = {1, 8, 254u, 123};
2032
+ unsigned short p1[] = {1, 8, 254u, 123};
2033
+ unsigned short p2[] = {1, 8, 254u, 2};
2034
+ unsigned short p3[] = {1, 23, 25, 26};
2035
+
2036
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p0, 1);
2037
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p0, 4);
2038
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p1, 4);
2039
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p2, 3);
2040
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p3, 1);
2041
+ }
2042
+
2043
+ void testNotEqualHEX8Arrays1(void)
2044
+ {
2045
+ unsigned char p0[] = {1, 8, 254u, 253u};
2046
+ unsigned char p1[] = {1, 8, 254u, 252u};
2047
+
2048
+ EXPECT_ABORT_BEGIN
2049
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p1, 4);
2050
+ VERIFY_FAILS_END
2051
+ }
2052
+
2053
+ void testNotEqualHEX8Arrays2(void)
2054
+ {
2055
+ unsigned char p0[] = {1, 8, 254u, 253u};
2056
+ unsigned char p1[] = {2, 8, 254u, 253u};
2057
+
2058
+ EXPECT_ABORT_BEGIN
2059
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p1, 4);
2060
+ VERIFY_FAILS_END
2061
+ }
2062
+
2063
+ void testNotEqualHEX8Arrays3(void)
2064
+ {
2065
+ unsigned char p0[] = {1, 8, 254u, 253u};
2066
+ unsigned char p1[] = {1, 8, 255u, 253u};
2067
+
2068
+ EXPECT_ABORT_BEGIN
2069
+ TEST_ASSERT_EQUAL_HEX8_ARRAY(p0, p1, 4);
2070
+ VERIFY_FAILS_END
2071
+ }
2072
+
2073
+ void testEqualMemoryArrays(void)
2074
+ {
2075
+ int p0[] = {1, 8, 987, -2};
2076
+ int p1[] = {1, 8, 987, -2};
2077
+ int p2[] = {1, 8, 987, 2};
2078
+ int p3[] = {1, 500, 600, 700};
2079
+
2080
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p0, sizeof(int), 1);
2081
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p0, sizeof(int), 4);
2082
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p1, sizeof(int), 4);
2083
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p2, sizeof(int), 3);
2084
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p3, sizeof(int), 1);
2085
+ }
2086
+
2087
+ void testNotEqualMemoryArraysExpectedNull(void)
2088
+ {
2089
+ int* p0 = NULL;
2090
+ int p1[] = {1, 8, 987, 2};
2091
+
2092
+ EXPECT_ABORT_BEGIN
2093
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p1, sizeof(int), 4);
2094
+ VERIFY_FAILS_END
2095
+ }
2096
+
2097
+ void testNotEqualMemoryArraysActualNull(void)
2098
+ {
2099
+ int p0[] = {1, 8, 987, -2};
2100
+ int* p1 = NULL;
2101
+
2102
+ EXPECT_ABORT_BEGIN
2103
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p1, sizeof(int), 4);
2104
+ VERIFY_FAILS_END
2105
+ }
2106
+
2107
+ void testNotEqualMemoryArrays1(void)
2108
+ {
2109
+ int p0[] = {1, 8, 987, -2};
2110
+ int p1[] = {1, 8, 987, 2};
2111
+
2112
+ EXPECT_ABORT_BEGIN
2113
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p1, sizeof(int), 4);
2114
+ VERIFY_FAILS_END
2115
+ }
2116
+
2117
+ void testNotEqualMemoryArrays2(void)
2118
+ {
2119
+ int p0[] = {1, 8, 987, -2};
2120
+ int p1[] = {2, 8, 987, -2};
2121
+
2122
+ EXPECT_ABORT_BEGIN
2123
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p1, sizeof(int), 4);
2124
+ VERIFY_FAILS_END
2125
+ }
2126
+
2127
+ void testNotEqualMemoryArrays3(void)
2128
+ {
2129
+ int p0[] = {1, 8, 987, -2};
2130
+ int p1[] = {1, 8, 986, -2};
2131
+
2132
+ EXPECT_ABORT_BEGIN
2133
+ TEST_ASSERT_EQUAL_MEMORY_ARRAY(p0, p1, sizeof(int), 4);
2134
+ VERIFY_FAILS_END
2135
+ }
2136
+
2137
+ void testProtection(void)
2138
+ {
2139
+ volatile int mask = 0;
2140
+
2141
+ if (TEST_PROTECT())
2142
+ {
2143
+ mask |= 1;
2144
+ TEST_ABORT();
2145
+ }
2146
+ else
2147
+ {
2148
+ Unity.CurrentTestFailed = 0;
2149
+ mask |= 2;
2150
+ }
2151
+
2152
+ TEST_ASSERT_EQUAL(3, mask);
2153
+ }
2154
+
2155
+ void testIgnoredAndThenFailInTearDown(void)
2156
+ {
2157
+ SetToOneToFailInTearDown = 1;
2158
+ TEST_IGNORE();
2159
+ }
2160
+
2161
+ // Tricky series of macros to set USING_OUTPUT_SPY
2162
+ #define USING_SPY_AS(a) EXPAND_AND_USE_2ND(ASSIGN_VALUE(a), 0)
2163
+ #define ASSIGN_VALUE(a) VAL_FUNC_##a
2164
+ #define VAL_FUNC_putcharSpy() 0, 1
2165
+ #define EXPAND_AND_USE_2ND(a, b) SECOND_PARAM(a, b, throwaway)
2166
+ #define SECOND_PARAM(a, b, ...) b
2167
+ #if USING_SPY_AS(UNITY_OUTPUT_CHAR())
2168
+ #define USING_OUTPUT_SPY // true only if UNITY_OUTPUT_CHAR = putchar_Spy
2169
+ #endif
2170
+
2171
+ #ifdef USING_OUTPUT_SPY
2172
+ #include <stdio.h>
2173
+ #define SPY_BUFFER_MAX 40
2174
+ static char putcharSpyBuffer[SPY_BUFFER_MAX];
2175
+ #endif
2176
+ static int indexSpyBuffer;
2177
+ static int putcharSpyEnabled;
2178
+
2179
+ void startPutcharSpy(void) {indexSpyBuffer = 0; putcharSpyEnabled = 1;}
2180
+
2181
+ void endPutcharSpy(void) {putcharSpyEnabled = 0;}
2182
+
2183
+ char* getBufferPutcharSpy(void)
2184
+ {
2185
+ #ifdef USING_OUTPUT_SPY
2186
+ putcharSpyBuffer[indexSpyBuffer] = '\0';
2187
+ return putcharSpyBuffer;
2188
+ #else
2189
+ return NULL;
2190
+ #endif
2191
+ }
2192
+
2193
+ int putcharSpy(int c)
2194
+ {
2195
+ #ifdef USING_OUTPUT_SPY
2196
+ if (putcharSpyEnabled)
2197
+ {
2198
+ if (indexSpyBuffer < SPY_BUFFER_MAX - 1)
2199
+ putcharSpyBuffer[indexSpyBuffer++] = (char)c;
2200
+ } else
2201
+ c = putchar(c);
2202
+ #endif
2203
+ return c;
2204
+ }
2205
+
2206
+ #define TEST_ASSERT_EQUAL_PRINT_NUMBERS(expected, actual) { \
2207
+ startPutcharSpy(); UnityPrintNumber((actual)); endPutcharSpy(); \
2208
+ TEST_ASSERT_EQUAL_STRING((expected), getBufferPutcharSpy()); \
2209
+ }
2210
+
2211
+ #define TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS(expected, actual) { \
2212
+ startPutcharSpy(); UnityPrintNumberUnsigned((actual)); endPutcharSpy(); \
2213
+ TEST_ASSERT_EQUAL_STRING((expected), getBufferPutcharSpy()); \
2214
+ }
2215
+
2216
+ void testPrintNumbers32(void)
2217
+ {
2218
+ #ifndef USING_OUTPUT_SPY
2219
+ TEST_IGNORE_MESSAGE("Compile with '-D UNITY_OUTPUT_CHAR=putcharSpy' to enable print testing");
2220
+ #else
2221
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("0", 0);
2222
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("1", 1);
2223
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("-1", -1);
2224
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("2000000000", 2000000000);
2225
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("-2147483648", (_US32)0x80000000);
2226
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("-1", (_US32)0xFFFFFFFF);
2227
+ #endif
2228
+ }
2229
+
2230
+ void testPrintNumbersUnsigned32(void)
2231
+ {
2232
+ #ifndef USING_OUTPUT_SPY
2233
+ TEST_IGNORE();
2234
+ #else
2235
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("0", 0);
2236
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("1", 1);
2237
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("1500000000", 1500000000);
2238
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("2147483648", (_UU32)0x80000000);
2239
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("4294967295", (_UU32)0xFFFFFFFF);
2240
+ #endif
2241
+ }
2242
+
2243
+ // ===================== THESE TEST WILL RUN IF YOUR CONFIG INCLUDES 64 BIT SUPPORT ==================
2244
+
2245
+ void testPrintNumbersInt64(void)
2246
+ {
2247
+ #ifndef UNITY_SUPPORT_64
2248
+ TEST_IGNORE();
2249
+ #else
2250
+ #ifndef USING_OUTPUT_SPY
2251
+ TEST_IGNORE();
2252
+ #else
2253
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("0", 0);
2254
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("10000000000", 10000000000);
2255
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("-9223372036854775808", (_U_SINT)0x8000000000000000);
2256
+ TEST_ASSERT_EQUAL_PRINT_NUMBERS("-1", (_U_SINT)0xFFFFFFFFFFFFFFFF);
2257
+ #endif
2258
+ #endif
2259
+ }
2260
+
2261
+ void testPrintNumbersUInt64(void)
2262
+ {
2263
+ #ifndef UNITY_SUPPORT_64
2264
+ TEST_IGNORE();
2265
+ #else
2266
+ #ifndef USING_OUTPUT_SPY
2267
+ TEST_IGNORE();
2268
+ #else
2269
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("0", 0);
2270
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("70000000000", 70000000000);
2271
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("9223372036854775808", (_U_UINT)0x8000000000000000);
2272
+ TEST_ASSERT_EQUAL_PRINT_UNSIGNED_NUMBERS("18446744073709551615", (_U_UINT)0xFFFFFFFFFFFFFFFF);
2273
+ #endif
2274
+ #endif
2275
+ }
2276
+
2277
+ void testEqualHex64s(void)
2278
+ {
2279
+ #ifndef UNITY_SUPPORT_64
2280
+ TEST_IGNORE();
2281
+ #else
2282
+ _UU64 v0, v1;
2283
+ _UU64 *p0, *p1;
2284
+
2285
+ v0 = 0x9876543201234567;
2286
+ v1 = 0x9876543201234567;
2287
+ p0 = &v0;
2288
+ p1 = &v1;
2289
+
2290
+ TEST_ASSERT_EQUAL_HEX64(0x9876543201234567, 0x9876543201234567);
2291
+ TEST_ASSERT_EQUAL_HEX64(v0, v1);
2292
+ TEST_ASSERT_EQUAL_HEX64(0x9876543201234567, v1);
2293
+ TEST_ASSERT_EQUAL_HEX64(v0, 0x9876543201234567);
2294
+ TEST_ASSERT_EQUAL_HEX64(*p0, v1);
2295
+ TEST_ASSERT_EQUAL_HEX64(*p0, *p1);
2296
+ TEST_ASSERT_EQUAL_HEX64(*p0, 0x9876543201234567);
2297
+ #endif
2298
+ }
2299
+
2300
+ void testEqualUint64s(void)
2301
+ {
2302
+ #ifndef UNITY_SUPPORT_64
2303
+ TEST_IGNORE();
2304
+ #else
2305
+ _UU64 v0, v1;
2306
+ _UU64 *p0, *p1;
2307
+
2308
+ v0 = 0x9876543201234567;
2309
+ v1 = 0x9876543201234567;
2310
+ p0 = &v0;
2311
+ p1 = &v1;
2312
+
2313
+ TEST_ASSERT_EQUAL_UINT64(0x9876543201234567, 0x9876543201234567);
2314
+ TEST_ASSERT_EQUAL_UINT64(v0, v1);
2315
+ TEST_ASSERT_EQUAL_UINT64(0x9876543201234567, v1);
2316
+ TEST_ASSERT_EQUAL_UINT64(v0, 0x9876543201234567);
2317
+ TEST_ASSERT_EQUAL_UINT64(*p0, v1);
2318
+ TEST_ASSERT_EQUAL_UINT64(*p0, *p1);
2319
+ TEST_ASSERT_EQUAL_UINT64(*p0, 0x9876543201234567);
2320
+ #endif
2321
+ }
2322
+
2323
+ void testEqualInt64s(void)
2324
+ {
2325
+ #ifndef UNITY_SUPPORT_64
2326
+ TEST_IGNORE();
2327
+ #else
2328
+ _US64 v0, v1;
2329
+ _US64 *p0, *p1;
2330
+
2331
+ v0 = (_US64)0x9876543201234567;
2332
+ v1 = (_US64)0x9876543201234567;
2333
+ p0 = &v0;
2334
+ p1 = &v1;
2335
+
2336
+ TEST_ASSERT_EQUAL_INT64(0x9876543201234567, 0x9876543201234567);
2337
+ TEST_ASSERT_EQUAL_INT64(v0, v1);
2338
+ TEST_ASSERT_EQUAL_INT64(0x9876543201234567, v1);
2339
+ TEST_ASSERT_EQUAL_INT64(v0, 0x9876543201234567);
2340
+ TEST_ASSERT_EQUAL_INT64(*p0, v1);
2341
+ TEST_ASSERT_EQUAL_INT64(*p0, *p1);
2342
+ TEST_ASSERT_EQUAL_INT64(*p0, 0x9876543201234567);
2343
+ #endif
2344
+ }
2345
+
2346
+
2347
+ void testNotEqualHex64s(void)
2348
+ {
2349
+ #ifndef UNITY_SUPPORT_64
2350
+ TEST_IGNORE();
2351
+ #else
2352
+ _UU64 v0, v1;
2353
+
2354
+ v0 = 9000000000;
2355
+ v1 = 9100000000;
2356
+
2357
+ EXPECT_ABORT_BEGIN
2358
+ TEST_ASSERT_EQUAL_HEX64(v0, v1);
2359
+ VERIFY_FAILS_END
2360
+ #endif
2361
+ }
2362
+
2363
+ void testNotEqualUint64s(void)
2364
+ {
2365
+ #ifndef UNITY_SUPPORT_64
2366
+ TEST_IGNORE();
2367
+ #else
2368
+ _UU64 v0, v1;
2369
+
2370
+ v0 = 9000000000;
2371
+ v1 = 9100000000;
2372
+
2373
+ EXPECT_ABORT_BEGIN
2374
+ TEST_ASSERT_EQUAL_UINT64(v0, v1);
2375
+ VERIFY_FAILS_END
2376
+ #endif
2377
+ }
2378
+
2379
+ void testNotEqualInt64s(void)
2380
+ {
2381
+ #ifndef UNITY_SUPPORT_64
2382
+ TEST_IGNORE();
2383
+ #else
2384
+ _US64 v0, v1;
2385
+
2386
+ v0 = -9000000000;
2387
+ v1 = 9100000000;
2388
+
2389
+ EXPECT_ABORT_BEGIN
2390
+ TEST_ASSERT_EQUAL_INT64(v0, v1);
2391
+ VERIFY_FAILS_END
2392
+ #endif
2393
+ }
2394
+
2395
+ void testNotEqualHex64sIfSigned(void)
2396
+ {
2397
+ #ifndef UNITY_SUPPORT_64
2398
+ TEST_IGNORE();
2399
+ #else
2400
+ _US64 v0, v1;
2401
+
2402
+ v0 = -9000000000;
2403
+ v1 = 9000000000;
2404
+
2405
+ EXPECT_ABORT_BEGIN
2406
+ TEST_ASSERT_EQUAL_HEX64(v0, v1);
2407
+ VERIFY_FAILS_END
2408
+ #endif
2409
+ }
2410
+
2411
+ void testHEX64sWithinDelta(void)
2412
+ {
2413
+ #ifndef UNITY_SUPPORT_64
2414
+ TEST_IGNORE();
2415
+ #else
2416
+ TEST_ASSERT_HEX64_WITHIN(1, 0x7FFFFFFFFFFFFFFF,0x7FFFFFFFFFFFFFFE);
2417
+ TEST_ASSERT_HEX64_WITHIN(5, 5000, 4996);
2418
+ TEST_ASSERT_HEX64_WITHIN(5, 5000, 5005);
2419
+ #endif
2420
+ }
2421
+
2422
+ void testHEX64sNotWithinDelta(void)
2423
+ {
2424
+ #ifndef UNITY_SUPPORT_64
2425
+ TEST_IGNORE();
2426
+ #else
2427
+ EXPECT_ABORT_BEGIN
2428
+ TEST_ASSERT_HEX64_WITHIN(1, 0x7FFFFFFFFFFFFFFF, 0x7FFFFFFFFFFFFFFC);
2429
+ VERIFY_FAILS_END
2430
+ #endif
2431
+ }
2432
+
2433
+ void testHEX64sNotWithinDeltaEvenThoughASignedIntWouldPass(void)
2434
+ {
2435
+ #ifndef UNITY_SUPPORT_64
2436
+ TEST_IGNORE();
2437
+ #else
2438
+ EXPECT_ABORT_BEGIN
2439
+ TEST_ASSERT_HEX64_WITHIN(5, 1, -1);
2440
+ VERIFY_FAILS_END
2441
+ #endif
2442
+ }
2443
+
2444
+ void testUINT64sWithinDelta(void)
2445
+ {
2446
+ #ifndef UNITY_SUPPORT_64
2447
+ TEST_IGNORE();
2448
+ #else
2449
+ TEST_ASSERT_UINT64_WITHIN(1, 0x7FFFFFFFFFFFFFFF,0x7FFFFFFFFFFFFFFE);
2450
+ TEST_ASSERT_UINT64_WITHIN(5, 5000, 4996);
2451
+ TEST_ASSERT_UINT64_WITHIN(5, 5000, 5005);
2452
+ #endif
2453
+ }
2454
+
2455
+ void testUINT64sNotWithinDelta(void)
2456
+ {
2457
+ #ifndef UNITY_SUPPORT_64
2458
+ TEST_IGNORE();
2459
+ #else
2460
+ EXPECT_ABORT_BEGIN
2461
+ TEST_ASSERT_UINT64_WITHIN(1, 0x7FFFFFFFFFFFFFFF, 0x7FFFFFFFFFFFFFFC);
2462
+ VERIFY_FAILS_END
2463
+ #endif
2464
+ }
2465
+
2466
+ void testUINT64sNotWithinDeltaEvenThoughASignedIntWouldPass(void)
2467
+ {
2468
+ #ifndef UNITY_SUPPORT_64
2469
+ TEST_IGNORE();
2470
+ #else
2471
+ EXPECT_ABORT_BEGIN
2472
+ TEST_ASSERT_UINT64_WITHIN(5, 1, -1);
2473
+ VERIFY_FAILS_END
2474
+ #endif
2475
+ }
2476
+
2477
+ void testINT64sWithinDelta(void)
2478
+ {
2479
+ #ifndef UNITY_SUPPORT_64
2480
+ TEST_IGNORE();
2481
+ #else
2482
+ TEST_ASSERT_INT64_WITHIN(1, 0x7FFFFFFFFFFFFFFF,0x7FFFFFFFFFFFFFFE);
2483
+ TEST_ASSERT_INT64_WITHIN(5, 5000, 4996);
2484
+ TEST_ASSERT_INT64_WITHIN(5, 5000, 5005);
2485
+ #endif
2486
+ }
2487
+
2488
+ void testINT64sNotWithinDelta(void)
2489
+ {
2490
+ #ifndef UNITY_SUPPORT_64
2491
+ TEST_IGNORE();
2492
+ #else
2493
+ EXPECT_ABORT_BEGIN
2494
+ TEST_ASSERT_INT64_WITHIN(1, 0x7FFFFFFFFFFFFFFF, 0x7FFFFFFFFFFFFFFC);
2495
+ VERIFY_FAILS_END
2496
+ #endif
2497
+ }
2498
+
2499
+ void testEqualHEX64Arrays(void)
2500
+ {
2501
+ #ifndef UNITY_SUPPORT_64
2502
+ TEST_IGNORE();
2503
+ #else
2504
+ _UU64 p0[] = {1, 8, 987, 65132u};
2505
+ _UU64 p1[] = {1, 8, 987, 65132u};
2506
+ _UU64 p2[] = {1, 8, 987, 2};
2507
+ _UU64 p3[] = {1, 500, 600, 700};
2508
+
2509
+ TEST_ASSERT_EQUAL_HEX64_ARRAY(p0, p0, 1);
2510
+ TEST_ASSERT_EQUAL_HEX64_ARRAY(p0, p0, 4);
2511
+ TEST_ASSERT_EQUAL_HEX64_ARRAY(p0, p1, 4);
2512
+ TEST_ASSERT_EQUAL_HEX64_ARRAY(p0, p2, 3);
2513
+ TEST_ASSERT_EQUAL_HEX64_ARRAY(p0, p3, 1);
2514
+ #endif
2515
+ }
2516
+
2517
+ void testEqualUint64Arrays(void)
2518
+ {
2519
+ #ifndef UNITY_SUPPORT_64
2520
+ TEST_IGNORE();
2521
+ #else
2522
+ _UU64 p0[] = {1, 8, 987, 65132u};
2523
+ _UU64 p1[] = {1, 8, 987, 65132u};
2524
+ _UU64 p2[] = {1, 8, 987, 2};
2525
+ _UU64 p3[] = {1, 500, 600, 700};
2526
+
2527
+ TEST_ASSERT_EQUAL_UINT64_ARRAY(p0, p0, 1);
2528
+ TEST_ASSERT_EQUAL_UINT64_ARRAY(p0, p0, 4);
2529
+ TEST_ASSERT_EQUAL_UINT64_ARRAY(p0, p1, 4);
2530
+ TEST_ASSERT_EQUAL_UINT64_ARRAY(p0, p2, 3);
2531
+ TEST_ASSERT_EQUAL_UINT64_ARRAY(p0, p3, 1);
2532
+ #endif
2533
+ }
2534
+
2535
+ void testEqualInt64Arrays(void)
2536
+ {
2537
+ #ifndef UNITY_SUPPORT_64
2538
+ TEST_IGNORE();
2539
+ #else
2540
+ _US64 p0[] = {1, 8, 987, -65132};
2541
+ _US64 p1[] = {1, 8, 987, -65132};
2542
+ _US64 p2[] = {1, 8, 987, -2};
2543
+ _US64 p3[] = {1, 500, 600, 700};
2544
+
2545
+ TEST_ASSERT_EQUAL_INT64_ARRAY(p0, p0, 1);
2546
+ TEST_ASSERT_EQUAL_INT64_ARRAY(p0, p0, 4);
2547
+ TEST_ASSERT_EQUAL_INT64_ARRAY(p0, p1, 4);
2548
+ TEST_ASSERT_EQUAL_INT64_ARRAY(p0, p2, 3);
2549
+ TEST_ASSERT_EQUAL_INT64_ARRAY(p0, p3, 1);
2550
+ #endif
2551
+ }
2552
+
2553
+
2554
+ void testNotEqualHEX64Arrays1(void)
2555
+ {
2556
+ #ifndef UNITY_SUPPORT_64
2557
+ TEST_IGNORE();
2558
+ #else
2559
+ _UU64 p0[] = {1, 8, 987, 65132u};
2560
+ _UU64 p1[] = {1, 8, 987, 65131u};
2561
+
2562
+ EXPECT_ABORT_BEGIN
2563
+ TEST_ASSERT_EQUAL_HEX64_ARRAY(p0, p1, 4);
2564
+ VERIFY_FAILS_END
2565
+ #endif
2566
+ }
2567
+
2568
+ void testNotEqualHEX64Arrays2(void)
2569
+ {
2570
+ #ifndef UNITY_SUPPORT_64
2571
+ TEST_IGNORE();
2572
+ #else
2573
+ _UU64 p0[] = {1, 8, 987, 65132u};
2574
+ _UU64 p1[] = {2, 8, 987, 65132u};
2575
+
2576
+ EXPECT_ABORT_BEGIN
2577
+ TEST_ASSERT_EQUAL_HEX64_ARRAY(p0, p1, 4);
2578
+ VERIFY_FAILS_END
2579
+ #endif
2580
+ }
2581
+
2582
+ void testNotEqualUint64Arrays(void)
2583
+ {
2584
+ #ifndef UNITY_SUPPORT_64
2585
+ TEST_IGNORE();
2586
+ #else
2587
+ _UU64 p0[] = {1, 8, 987, 65132u};
2588
+ _UU64 p1[] = {1, 8, 987, 65131u};
2589
+
2590
+ EXPECT_ABORT_BEGIN
2591
+ TEST_ASSERT_EQUAL_UINT64_ARRAY(p0, p1, 4);
2592
+ VERIFY_FAILS_END
2593
+ #endif
2594
+ }
2595
+
2596
+ void testNotEqualInt64Arrays(void)
2597
+ {
2598
+ #ifndef UNITY_SUPPORT_64
2599
+ TEST_IGNORE();
2600
+ #else
2601
+ _US64 p0[] = {1, 8, 987, -65132};
2602
+ _US64 p1[] = {1, 8, 987, -65131};
2603
+
2604
+ EXPECT_ABORT_BEGIN
2605
+ TEST_ASSERT_EQUAL_INT64_ARRAY(p0, p1, 4);
2606
+ VERIFY_FAILS_END
2607
+ #endif
2608
+ }
2609
+ // ===================== THESE TEST WILL RUN IF YOUR CONFIG INCLUDES FLOAT SUPPORT ==================
2610
+
2611
+ void testFloatsWithinDelta(void)
2612
+ {
2613
+ #ifdef UNITY_EXCLUDE_FLOAT
2614
+ TEST_IGNORE();
2615
+ #else
2616
+ TEST_ASSERT_FLOAT_WITHIN(0.00003f, 187245.03485f, 187245.03488f);
2617
+ TEST_ASSERT_FLOAT_WITHIN(1.0f, 187245.0f, 187246.0f);
2618
+ TEST_ASSERT_FLOAT_WITHIN(0.05f, 9273.2549f, 9273.2049f);
2619
+ TEST_ASSERT_FLOAT_WITHIN(0.007f, -726.93724f, -726.94424f);
2620
+ #endif
2621
+ }
2622
+
2623
+ void testFloatsNotWithinDelta(void)
2624
+ {
2625
+ #ifdef UNITY_EXCLUDE_FLOAT
2626
+ TEST_IGNORE();
2627
+ #else
2628
+ EXPECT_ABORT_BEGIN
2629
+ TEST_ASSERT_FLOAT_WITHIN(0.05f, 9273.2649f, 9273.2049f);
2630
+ VERIFY_FAILS_END
2631
+ #endif
2632
+ }
2633
+
2634
+ void testFloatsEqual(void)
2635
+ {
2636
+ #ifdef UNITY_EXCLUDE_FLOAT
2637
+ TEST_IGNORE();
2638
+ #else
2639
+ TEST_ASSERT_EQUAL_FLOAT(187245.0f, 187246.0f);
2640
+ TEST_ASSERT_EQUAL_FLOAT(18724.5f, 18724.6f);
2641
+ TEST_ASSERT_EQUAL_FLOAT(9273.2549f, 9273.2599f);
2642
+ TEST_ASSERT_EQUAL_FLOAT(-726.93724f, -726.9374f);
2643
+ #endif
2644
+ }
2645
+
2646
+ void testFloatsNotEqual(void)
2647
+ {
2648
+ #ifdef UNITY_EXCLUDE_FLOAT
2649
+ TEST_IGNORE();
2650
+ #else
2651
+ EXPECT_ABORT_BEGIN
2652
+ TEST_ASSERT_EQUAL_FLOAT(9273.9649f, 9273.0049f);
2653
+ VERIFY_FAILS_END
2654
+ #endif
2655
+ }
2656
+
2657
+ void testFloatsNotEqualNegative1(void)
2658
+ {
2659
+ #ifdef UNITY_EXCLUDE_FLOAT
2660
+ TEST_IGNORE();
2661
+ #else
2662
+ EXPECT_ABORT_BEGIN
2663
+ TEST_ASSERT_EQUAL_FLOAT(-9273.9649f, -9273.0049f);
2664
+ VERIFY_FAILS_END
2665
+ #endif
2666
+ }
2667
+
2668
+ void testFloatsNotEqualNegative2(void)
2669
+ {
2670
+ #ifdef UNITY_EXCLUDE_FLOAT
2671
+ TEST_IGNORE();
2672
+ #else
2673
+ EXPECT_ABORT_BEGIN
2674
+ TEST_ASSERT_EQUAL_FLOAT(-9273.0049f, -9273.9649f);
2675
+ VERIFY_FAILS_END
2676
+ #endif
2677
+ }
2678
+
2679
+ void testFloatsNotEqualActualNaN(void)
2680
+ {
2681
+ #ifdef UNITY_EXCLUDE_FLOAT
2682
+ TEST_IGNORE();
2683
+ #else
2684
+ EXPECT_ABORT_BEGIN
2685
+ TEST_ASSERT_EQUAL_FLOAT(85.963f, 0.0f / f_zero);
2686
+ VERIFY_FAILS_END
2687
+ #endif
2688
+ }
2689
+
2690
+ void testFloatsNotEqualExpectedNaN(void)
2691
+ {
2692
+ #ifdef UNITY_EXCLUDE_FLOAT
2693
+ TEST_IGNORE();
2694
+ #else
2695
+ EXPECT_ABORT_BEGIN
2696
+ TEST_ASSERT_EQUAL_FLOAT(0.0f / f_zero, 85.963f);
2697
+ VERIFY_FAILS_END
2698
+ #endif
2699
+ }
2700
+
2701
+ void testFloatsNotEqualBothNaN(void)
2702
+ {
2703
+ #ifdef UNITY_EXCLUDE_FLOAT
2704
+ TEST_IGNORE();
2705
+ #else
2706
+ EXPECT_ABORT_BEGIN
2707
+ TEST_ASSERT_EQUAL_FLOAT(0.0f / f_zero, 0.0f / f_zero);
2708
+ VERIFY_FAILS_END
2709
+ #endif
2710
+ }
2711
+
2712
+ void testFloatsNotEqualInfNaN(void)
2713
+ {
2714
+ #ifdef UNITY_EXCLUDE_FLOAT
2715
+ TEST_IGNORE();
2716
+ #else
2717
+ EXPECT_ABORT_BEGIN
2718
+ TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 0.0f / f_zero);
2719
+ VERIFY_FAILS_END
2720
+ #endif
2721
+ }
2722
+
2723
+ void testFloatsNotEqualNaNInf(void)
2724
+ {
2725
+ #ifdef UNITY_EXCLUDE_FLOAT
2726
+ TEST_IGNORE();
2727
+ #else
2728
+ EXPECT_ABORT_BEGIN
2729
+ TEST_ASSERT_EQUAL_FLOAT(0.0f / f_zero, 1.0f / f_zero);
2730
+ VERIFY_FAILS_END
2731
+ #endif
2732
+ }
2733
+
2734
+ void testFloatsNotEqualActualInf(void)
2735
+ {
2736
+ #ifdef UNITY_EXCLUDE_FLOAT
2737
+ TEST_IGNORE();
2738
+ #else
2739
+ EXPECT_ABORT_BEGIN
2740
+ TEST_ASSERT_EQUAL_FLOAT(321.642f, 1.0f / f_zero);
2741
+ VERIFY_FAILS_END
2742
+ #endif
2743
+ }
2744
+
2745
+ void testFloatsNotEqualExpectedInf(void)
2746
+ {
2747
+ #ifdef UNITY_EXCLUDE_FLOAT
2748
+ TEST_IGNORE();
2749
+ #else
2750
+ EXPECT_ABORT_BEGIN
2751
+ TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 321.642f);
2752
+ VERIFY_FAILS_END
2753
+ #endif
2754
+ }
2755
+
2756
+ void testFloatsNotEqualBothInf(void)
2757
+ {
2758
+ #ifdef UNITY_EXCLUDE_FLOAT
2759
+ TEST_IGNORE();
2760
+ #else
2761
+ EXPECT_ABORT_BEGIN
2762
+ TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 1.0f / f_zero);
2763
+ VERIFY_FAILS_END
2764
+ #endif
2765
+ }
2766
+
2767
+ void testFloatsNotEqualPlusMinusInf(void)
2768
+ {
2769
+ #ifdef UNITY_EXCLUDE_FLOAT
2770
+ TEST_IGNORE();
2771
+ #else
2772
+ EXPECT_ABORT_BEGIN
2773
+ TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, -1.0f / f_zero);
2774
+ VERIFY_FAILS_END
2775
+ #endif
2776
+ }
2777
+
2778
+ void testFloatIsPosInf1(void)
2779
+ {
2780
+ #ifdef UNITY_EXCLUDE_FLOAT
2781
+ TEST_IGNORE();
2782
+ #else
2783
+ TEST_ASSERT_FLOAT_IS_INF(2.0f / f_zero);
2784
+ #endif
2785
+ }
2786
+
2787
+ void testFloatIsPosInf2(void)
2788
+ {
2789
+ #ifdef UNITY_EXCLUDE_FLOAT
2790
+ TEST_IGNORE();
2791
+ #else
2792
+ EXPECT_ABORT_BEGIN
2793
+ TEST_ASSERT_FLOAT_IS_NOT_INF(2.0f / f_zero);
2794
+ VERIFY_FAILS_END
2795
+ #endif
2796
+ }
2797
+
2798
+ void testFloatIsNegInf1(void)
2799
+ {
2800
+ #ifdef UNITY_EXCLUDE_FLOAT
2801
+ TEST_IGNORE();
2802
+ #else
2803
+ TEST_ASSERT_FLOAT_IS_NEG_INF(-3.0f / f_zero);
2804
+ #endif
2805
+ }
2806
+
2807
+ void testFloatIsNegInf2(void)
2808
+ {
2809
+ #ifdef UNITY_EXCLUDE_FLOAT
2810
+ TEST_IGNORE();
2811
+ #else
2812
+ EXPECT_ABORT_BEGIN
2813
+ TEST_ASSERT_FLOAT_IS_NOT_NEG_INF(-3.0f / f_zero);
2814
+ VERIFY_FAILS_END
2815
+ #endif
2816
+ }
2817
+
2818
+ void testFloatIsNotPosInf1(void)
2819
+ {
2820
+ #ifdef UNITY_EXCLUDE_FLOAT
2821
+ TEST_IGNORE();
2822
+ #else
2823
+ EXPECT_ABORT_BEGIN
2824
+ TEST_ASSERT_FLOAT_IS_INF(2.0f);
2825
+ VERIFY_FAILS_END
2826
+ #endif
2827
+ }
2828
+
2829
+ void testFloatIsNotPosInf2(void)
2830
+ {
2831
+ #ifdef UNITY_EXCLUDE_FLOAT
2832
+ TEST_IGNORE();
2833
+ #else
2834
+ TEST_ASSERT_FLOAT_IS_NOT_INF(2.0f);
2835
+ #endif
2836
+ }
2837
+
2838
+ void testFloatIsNotNegInf(void)
2839
+ {
2840
+ #ifdef UNITY_EXCLUDE_FLOAT
2841
+ TEST_IGNORE();
2842
+ #else
2843
+ EXPECT_ABORT_BEGIN
2844
+ TEST_ASSERT_FLOAT_IS_NEG_INF(-999.876f);
2845
+ VERIFY_FAILS_END
2846
+ #endif
2847
+ }
2848
+
2849
+ void testFloatIsNan1(void)
2850
+ {
2851
+ #ifdef UNITY_EXCLUDE_FLOAT
2852
+ TEST_IGNORE();
2853
+ #else
2854
+ TEST_ASSERT_FLOAT_IS_NAN(0.0f / f_zero);
2855
+ #endif
2856
+ }
2857
+
2858
+ void testFloatIsNan2(void)
2859
+ {
2860
+ #ifdef UNITY_EXCLUDE_FLOAT
2861
+ TEST_IGNORE();
2862
+ #else
2863
+ EXPECT_ABORT_BEGIN
2864
+ TEST_ASSERT_FLOAT_IS_NOT_NAN(0.0f / f_zero);
2865
+ VERIFY_FAILS_END
2866
+ #endif
2867
+ }
2868
+
2869
+ void testFloatIsNotNan1(void)
2870
+ {
2871
+ #ifdef UNITY_EXCLUDE_FLOAT
2872
+ TEST_IGNORE();
2873
+ #else
2874
+ EXPECT_ABORT_BEGIN
2875
+ TEST_ASSERT_FLOAT_IS_NAN(234.9f);
2876
+ VERIFY_FAILS_END
2877
+ #endif
2878
+ }
2879
+
2880
+ void testFloatIsNotNan2(void)
2881
+ {
2882
+ #ifdef UNITY_EXCLUDE_FLOAT
2883
+ TEST_IGNORE();
2884
+ #else
2885
+ TEST_ASSERT_FLOAT_IS_NOT_NAN(234.9f);
2886
+ #endif
2887
+ }
2888
+
2889
+ void testFloatInfIsNotNan(void)
2890
+ {
2891
+ #ifdef UNITY_EXCLUDE_FLOAT
2892
+ TEST_IGNORE();
2893
+ #else
2894
+ EXPECT_ABORT_BEGIN
2895
+ TEST_ASSERT_FLOAT_IS_NAN(1.0f / f_zero);
2896
+ VERIFY_FAILS_END
2897
+ #endif
2898
+ }
2899
+
2900
+ void testFloatNanIsNotInf(void)
2901
+ {
2902
+ #ifdef UNITY_EXCLUDE_FLOAT
2903
+ TEST_IGNORE();
2904
+ #else
2905
+ EXPECT_ABORT_BEGIN
2906
+ TEST_ASSERT_FLOAT_IS_INF(0.0f / f_zero);
2907
+ VERIFY_FAILS_END
2908
+ #endif
2909
+ }
2910
+
2911
+ void testFloatIsDeterminate1(void)
2912
+ {
2913
+ #ifdef UNITY_EXCLUDE_FLOAT
2914
+ TEST_IGNORE();
2915
+ #else
2916
+ TEST_ASSERT_FLOAT_IS_DETERMINATE(0.0f);
2917
+ TEST_ASSERT_FLOAT_IS_DETERMINATE(123.3f);
2918
+ TEST_ASSERT_FLOAT_IS_DETERMINATE(-88.3f);
2919
+ #endif
2920
+ }
2921
+
2922
+ void testFloatIsDeterminate2(void)
2923
+ {
2924
+ #ifdef UNITY_EXCLUDE_FLOAT
2925
+ TEST_IGNORE();
2926
+ #else
2927
+ EXPECT_ABORT_BEGIN
2928
+ TEST_ASSERT_FLOAT_IS_NOT_DETERMINATE(-88.3f);
2929
+ VERIFY_FAILS_END
2930
+ #endif
2931
+ }
2932
+
2933
+ void testFloatIsNotDeterminate1(void)
2934
+ {
2935
+ #ifdef UNITY_EXCLUDE_FLOAT
2936
+ TEST_IGNORE();
2937
+ #else
2938
+ TEST_ASSERT_FLOAT_IS_NOT_DETERMINATE(1.0f / f_zero);
2939
+ TEST_ASSERT_FLOAT_IS_NOT_DETERMINATE(-1.0f / f_zero);
2940
+ TEST_ASSERT_FLOAT_IS_NOT_DETERMINATE(0.0f / f_zero);
2941
+ #endif
2942
+ }
2943
+
2944
+ void testFloatIsNotDeterminate2(void)
2945
+ {
2946
+ #ifdef UNITY_EXCLUDE_FLOAT
2947
+ TEST_IGNORE();
2948
+ #else
2949
+ EXPECT_ABORT_BEGIN
2950
+ TEST_ASSERT_FLOAT_IS_DETERMINATE(-1.0f / f_zero);
2951
+ VERIFY_FAILS_END
2952
+ #endif
2953
+ }
2954
+
2955
+ void testEqualFloatArrays(void)
2956
+ {
2957
+ #ifdef UNITY_EXCLUDE_FLOAT
2958
+ TEST_IGNORE();
2959
+ #else
2960
+ float p0[] = {1.0f, -8.0f, 25.4f, -0.123f};
2961
+ float p1[] = {1.0f, -8.0f, 25.4f, -0.123f};
2962
+ float p2[] = {1.0f, -8.0f, 25.4f, -0.2f};
2963
+ float p3[] = {1.0f, -23.0f, 25.0f, -0.26f};
2964
+
2965
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p0, 1);
2966
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p0, 4);
2967
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
2968
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p2, 3);
2969
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p3, 1);
2970
+ #endif
2971
+ }
2972
+
2973
+ void testNotEqualFloatArraysExpectedNull(void)
2974
+ {
2975
+ #ifdef UNITY_EXCLUDE_FLOAT
2976
+ TEST_IGNORE();
2977
+ #else
2978
+ float* p0 = NULL;
2979
+ float p1[] = {1.0f, 8.0f, 25.4f, 0.252f};
2980
+
2981
+ EXPECT_ABORT_BEGIN
2982
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
2983
+ VERIFY_FAILS_END
2984
+ #endif
2985
+ }
2986
+
2987
+ void testNotEqualFloatArraysActualNull(void)
2988
+ {
2989
+ #ifdef UNITY_EXCLUDE_FLOAT
2990
+ TEST_IGNORE();
2991
+ #else
2992
+ float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
2993
+ float* p1 = NULL;
2994
+
2995
+ EXPECT_ABORT_BEGIN
2996
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
2997
+ VERIFY_FAILS_END
2998
+ #endif
2999
+ }
3000
+
3001
+ void testNotEqualFloatArrays1(void)
3002
+ {
3003
+ #ifdef UNITY_EXCLUDE_FLOAT
3004
+ TEST_IGNORE();
3005
+ #else
3006
+ float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
3007
+ float p1[] = {1.0f, 8.0f, 25.4f, 0.252f};
3008
+
3009
+ EXPECT_ABORT_BEGIN
3010
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3011
+ VERIFY_FAILS_END
3012
+ #endif
3013
+ }
3014
+
3015
+ void testNotEqualFloatArrays2(void)
3016
+ {
3017
+ #ifdef UNITY_EXCLUDE_FLOAT
3018
+ TEST_IGNORE();
3019
+ #else
3020
+ float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
3021
+ float p1[] = {2.0f, 8.0f, 25.4f, 0.253f};
3022
+
3023
+ EXPECT_ABORT_BEGIN
3024
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3025
+ VERIFY_FAILS_END
3026
+ #endif
3027
+ }
3028
+
3029
+ void testNotEqualFloatArrays3(void)
3030
+ {
3031
+ #ifdef UNITY_EXCLUDE_FLOAT
3032
+ TEST_IGNORE();
3033
+ #else
3034
+ float p0[] = {1.0f, 8.0f, 25.4f, 0.253f};
3035
+ float p1[] = {1.0f, 8.0f, 25.5f, 0.253f};
3036
+
3037
+ EXPECT_ABORT_BEGIN
3038
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3039
+ VERIFY_FAILS_END
3040
+ #endif
3041
+ }
3042
+
3043
+ void testNotEqualFloatArraysNegative1(void)
3044
+ {
3045
+ #ifdef UNITY_EXCLUDE_FLOAT
3046
+ TEST_IGNORE();
3047
+ #else
3048
+ float p0[] = {-1.0f, -8.0f, -25.4f, -0.253f};
3049
+ float p1[] = {-1.0f, -8.0f, -25.4f, -0.252f};
3050
+
3051
+ EXPECT_ABORT_BEGIN
3052
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3053
+ VERIFY_FAILS_END
3054
+ #endif
3055
+ }
3056
+
3057
+ void testNotEqualFloatArraysNegative2(void)
3058
+ {
3059
+ #ifdef UNITY_EXCLUDE_FLOAT
3060
+ TEST_IGNORE();
3061
+ #else
3062
+ float p0[] = {-1.0f, -8.0f, -25.4f, -0.253f};
3063
+ float p1[] = {-2.0f, -8.0f, -25.4f, -0.253f};
3064
+
3065
+ EXPECT_ABORT_BEGIN
3066
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3067
+ VERIFY_FAILS_END
3068
+ #endif
3069
+ }
3070
+
3071
+ void testNotEqualFloatArraysNegative3(void)
3072
+ {
3073
+ #ifdef UNITY_EXCLUDE_FLOAT
3074
+ TEST_IGNORE();
3075
+ #else
3076
+ float p0[] = {-1.0f, -8.0f, -25.4f, -0.253f};
3077
+ float p1[] = {-1.0f, -8.0f, -25.5f, -0.253f};
3078
+
3079
+ EXPECT_ABORT_BEGIN
3080
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3081
+ VERIFY_FAILS_END
3082
+ #endif
3083
+ }
3084
+
3085
+ void testNotEqualFloatArraysNaN(void)
3086
+ {
3087
+ #ifdef UNITY_EXCLUDE_FLOAT
3088
+ TEST_IGNORE();
3089
+ #else
3090
+ float p0[] = {1.0f, 0.0f / f_zero, 25.4f, 0.253f};
3091
+ float p1[] = {1.0f, 0.0f / f_zero, 25.4f, 0.253f};
3092
+
3093
+ EXPECT_ABORT_BEGIN
3094
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3095
+ VERIFY_FAILS_END
3096
+ #endif
3097
+ }
3098
+
3099
+ void testNotEqualFloatArraysInf(void)
3100
+ {
3101
+ #ifdef UNITY_EXCLUDE_FLOAT
3102
+ TEST_IGNORE();
3103
+ #else
3104
+ float p0[] = {1.0f, 1.0f / f_zero, 25.4f, 0.253f};
3105
+ float p1[] = {1.0f, 1.0f / f_zero, 25.4f, 0.253f};
3106
+
3107
+ EXPECT_ABORT_BEGIN
3108
+ TEST_ASSERT_EQUAL_FLOAT_ARRAY(p0, p1, 4);
3109
+ VERIFY_FAILS_END
3110
+ #endif
3111
+ }
3112
+
3113
+ // ===================== THESE TEST WILL RUN IF YOUR CONFIG INCLUDES DOUBLE SUPPORT ==================
3114
+
3115
+ void testDoublesWithinDelta(void)
3116
+ {
3117
+ #ifdef UNITY_EXCLUDE_DOUBLE
3118
+ TEST_IGNORE();
3119
+ #else
3120
+ TEST_ASSERT_DOUBLE_WITHIN(0.00003, 187245.03485, 187245.03488);
3121
+ TEST_ASSERT_DOUBLE_WITHIN(1.0, 187245.0, 187246.0);
3122
+ TEST_ASSERT_DOUBLE_WITHIN(0.05, 9273.2549, 9273.2049);
3123
+ TEST_ASSERT_DOUBLE_WITHIN(0.007, -726.93725, -726.94424);
3124
+ #endif
3125
+ }
3126
+
3127
+ void testDoublesNotWithinDelta(void)
3128
+ {
3129
+ #ifdef UNITY_EXCLUDE_DOUBLE
3130
+ TEST_IGNORE();
3131
+ #else
3132
+ EXPECT_ABORT_BEGIN
3133
+ TEST_ASSERT_DOUBLE_WITHIN(0.05, 9273.2649, 9273.2049);
3134
+ VERIFY_FAILS_END
3135
+ #endif
3136
+ }
3137
+
3138
+
3139
+ void testDoublesEqual(void)
3140
+ {
3141
+ #ifdef UNITY_EXCLUDE_DOUBLE
3142
+ TEST_IGNORE();
3143
+ #else
3144
+ TEST_ASSERT_EQUAL_DOUBLE(187245123456.0, 187245123456.0);
3145
+ TEST_ASSERT_EQUAL_DOUBLE(187241234567.5, 187241234567.6);
3146
+ TEST_ASSERT_EQUAL_DOUBLE(9273.2512345649, 9273.25123455699);
3147
+ TEST_ASSERT_EQUAL_DOUBLE(-726.12345693724, -726.1234569374);
3148
+ #endif
3149
+ }
3150
+
3151
+ void testDoublesNotEqual(void)
3152
+ {
3153
+ #ifdef UNITY_EXCLUDE_DOUBLE
3154
+ TEST_IGNORE();
3155
+ #else
3156
+ EXPECT_ABORT_BEGIN
3157
+ TEST_ASSERT_EQUAL_DOUBLE(9273.9649, 9273.0049);
3158
+ VERIFY_FAILS_END
3159
+ #endif
3160
+ }
3161
+
3162
+ void testDoublesNotEqualNegative1(void)
3163
+ {
3164
+ #ifdef UNITY_EXCLUDE_DOUBLE
3165
+ TEST_IGNORE();
3166
+ #else
3167
+ EXPECT_ABORT_BEGIN
3168
+ TEST_ASSERT_EQUAL_DOUBLE(-9273.9649, -9273.0049);
3169
+ VERIFY_FAILS_END
3170
+ #endif
3171
+ }
3172
+
3173
+ void testDoublesNotEqualNegative2(void)
3174
+ {
3175
+ #ifdef UNITY_EXCLUDE_DOUBLE
3176
+ TEST_IGNORE();
3177
+ #else
3178
+ EXPECT_ABORT_BEGIN
3179
+ TEST_ASSERT_EQUAL_DOUBLE(-9273.0049, -9273.9649);
3180
+ VERIFY_FAILS_END
3181
+ #endif
3182
+ }
3183
+
3184
+ void testDoublesNotEqualActualNaN(void)
3185
+ {
3186
+ #ifdef UNITY_EXCLUDE_DOUBLE
3187
+ TEST_IGNORE();
3188
+ #else
3189
+ EXPECT_ABORT_BEGIN
3190
+ TEST_ASSERT_EQUAL_DOUBLE(85.963, 0.0 / d_zero);
3191
+ VERIFY_FAILS_END
3192
+ #endif
3193
+ }
3194
+
3195
+ void testDoublesNotEqualExpectedNaN(void)
3196
+ {
3197
+ #ifdef UNITY_EXCLUDE_DOUBLE
3198
+ TEST_IGNORE();
3199
+ #else
3200
+ EXPECT_ABORT_BEGIN
3201
+ TEST_ASSERT_EQUAL_DOUBLE(0.0 / d_zero, 85.963);
3202
+ VERIFY_FAILS_END
3203
+ #endif
3204
+ }
3205
+
3206
+ void testDoublesNotEqualBothNaN(void)
3207
+ {
3208
+ #ifdef UNITY_EXCLUDE_DOUBLE
3209
+ TEST_IGNORE();
3210
+ #else
3211
+ EXPECT_ABORT_BEGIN
3212
+ TEST_ASSERT_EQUAL_DOUBLE(0.0 / d_zero, 0.0 / d_zero);
3213
+ VERIFY_FAILS_END
3214
+ #endif
3215
+ }
3216
+
3217
+ void testDoublesNotEqualInfNaN(void)
3218
+ {
3219
+ #ifdef UNITY_EXCLUDE_DOUBLE
3220
+ TEST_IGNORE();
3221
+ #else
3222
+ EXPECT_ABORT_BEGIN
3223
+ TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 0.0 / d_zero);
3224
+ VERIFY_FAILS_END
3225
+ #endif
3226
+ }
3227
+
3228
+ void testDoublesNotEqualNaNInf(void)
3229
+ {
3230
+ #ifdef UNITY_EXCLUDE_DOUBLE
3231
+ TEST_IGNORE();
3232
+ #else
3233
+ EXPECT_ABORT_BEGIN
3234
+ TEST_ASSERT_EQUAL_DOUBLE(0.0 / d_zero, 1.0 / d_zero);
3235
+ VERIFY_FAILS_END
3236
+ #endif
3237
+ }
3238
+
3239
+ void testDoublesNotEqualActualInf(void)
3240
+ {
3241
+ #ifdef UNITY_EXCLUDE_DOUBLE
3242
+ TEST_IGNORE();
3243
+ #else
3244
+ EXPECT_ABORT_BEGIN
3245
+ TEST_ASSERT_EQUAL_DOUBLE(321.642, 1.0 / d_zero);
3246
+ VERIFY_FAILS_END
3247
+ #endif
3248
+ }
3249
+
3250
+ void testDoublesNotEqualExpectedInf(void)
3251
+ {
3252
+ #ifdef UNITY_EXCLUDE_DOUBLE
3253
+ TEST_IGNORE();
3254
+ #else
3255
+ EXPECT_ABORT_BEGIN
3256
+ TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 321.642);
3257
+ VERIFY_FAILS_END
3258
+ #endif
3259
+ }
3260
+
3261
+ void testDoublesNotEqualBothInf(void)
3262
+ {
3263
+ #ifdef UNITY_EXCLUDE_DOUBLE
3264
+ TEST_IGNORE();
3265
+ #else
3266
+ EXPECT_ABORT_BEGIN
3267
+ TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 1.0 / d_zero);
3268
+ VERIFY_FAILS_END
3269
+ #endif
3270
+ }
3271
+
3272
+ void testDoublesNotEqualPlusMinusInf(void)
3273
+ {
3274
+ #ifdef UNITY_EXCLUDE_DOUBLE
3275
+ TEST_IGNORE();
3276
+ #else
3277
+ EXPECT_ABORT_BEGIN
3278
+ TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, -1.0 / d_zero);
3279
+ VERIFY_FAILS_END
3280
+ #endif
3281
+ }
3282
+
3283
+ void testDoubleIsPosInf1(void)
3284
+ {
3285
+ #ifdef UNITY_EXCLUDE_DOUBLE
3286
+ TEST_IGNORE();
3287
+ #else
3288
+ TEST_ASSERT_DOUBLE_IS_INF(2.0 / d_zero);
3289
+ #endif
3290
+ }
3291
+
3292
+ void testDoubleIsPosInf2(void)
3293
+ {
3294
+ #ifdef UNITY_EXCLUDE_DOUBLE
3295
+ TEST_IGNORE();
3296
+ #else
3297
+ EXPECT_ABORT_BEGIN
3298
+ TEST_ASSERT_DOUBLE_IS_NOT_INF(2.0 / d_zero);
3299
+ VERIFY_FAILS_END
3300
+ #endif
3301
+ }
3302
+
3303
+ void testDoubleIsNegInf1(void)
3304
+ {
3305
+ #ifdef UNITY_EXCLUDE_DOUBLE
3306
+ TEST_IGNORE();
3307
+ #else
3308
+ TEST_ASSERT_DOUBLE_IS_NEG_INF(-3.0 / d_zero);
3309
+ #endif
3310
+ }
3311
+
3312
+ void testDoubleIsNegInf2(void)
3313
+ {
3314
+ #ifdef UNITY_EXCLUDE_DOUBLE
3315
+ TEST_IGNORE();
3316
+ #else
3317
+ EXPECT_ABORT_BEGIN
3318
+ TEST_ASSERT_DOUBLE_IS_NOT_NEG_INF(-3.0 / d_zero);
3319
+ VERIFY_FAILS_END
3320
+ #endif
3321
+ }
3322
+
3323
+ void testDoubleIsNotPosInf1(void)
3324
+ {
3325
+ #ifdef UNITY_EXCLUDE_DOUBLE
3326
+ TEST_IGNORE();
3327
+ #else
3328
+ EXPECT_ABORT_BEGIN
3329
+ TEST_ASSERT_DOUBLE_IS_INF(2.0);
3330
+ VERIFY_FAILS_END
3331
+ #endif
3332
+ }
3333
+
3334
+ void testDoubleIsNotPosInf2(void)
3335
+ {
3336
+ #ifdef UNITY_EXCLUDE_DOUBLE
3337
+ TEST_IGNORE();
3338
+ #else
3339
+ TEST_ASSERT_DOUBLE_IS_NOT_INF(2.0);
3340
+ #endif
3341
+ }
3342
+
3343
+ void testDoubleIsNotNegInf(void)
3344
+ {
3345
+ #ifdef UNITY_EXCLUDE_DOUBLE
3346
+ TEST_IGNORE();
3347
+ #else
3348
+ EXPECT_ABORT_BEGIN
3349
+ TEST_ASSERT_DOUBLE_IS_NEG_INF(-999.876);
3350
+ VERIFY_FAILS_END
3351
+ #endif
3352
+ }
3353
+
3354
+ void testDoubleIsNan1(void)
3355
+ {
3356
+ #ifdef UNITY_EXCLUDE_DOUBLE
3357
+ TEST_IGNORE();
3358
+ #else
3359
+ TEST_ASSERT_DOUBLE_IS_NAN(0.0 / d_zero);
3360
+ #endif
3361
+ }
3362
+
3363
+ void testDoubleIsNan2(void)
3364
+ {
3365
+ #ifdef UNITY_EXCLUDE_DOUBLE
3366
+ TEST_IGNORE();
3367
+ #else
3368
+ EXPECT_ABORT_BEGIN
3369
+ TEST_ASSERT_DOUBLE_IS_NOT_NAN(0.0 / d_zero);
3370
+ VERIFY_FAILS_END
3371
+ #endif
3372
+ }
3373
+
3374
+ void testDoubleIsNotNan1(void)
3375
+ {
3376
+ #ifdef UNITY_EXCLUDE_DOUBLE
3377
+ TEST_IGNORE();
3378
+ #else
3379
+ EXPECT_ABORT_BEGIN
3380
+ TEST_ASSERT_DOUBLE_IS_NAN(234.9);
3381
+ VERIFY_FAILS_END
3382
+ #endif
3383
+ }
3384
+
3385
+ void testDoubleIsNotNan2(void)
3386
+ {
3387
+ #ifdef UNITY_EXCLUDE_DOUBLE
3388
+ TEST_IGNORE();
3389
+ #else
3390
+ TEST_ASSERT_DOUBLE_IS_NOT_NAN(234.9);
3391
+ #endif
3392
+ }
3393
+
3394
+ void testDoubleInfIsNotNan(void)
3395
+ {
3396
+ #ifdef UNITY_EXCLUDE_DOUBLE
3397
+ TEST_IGNORE();
3398
+ #else
3399
+ EXPECT_ABORT_BEGIN
3400
+ TEST_ASSERT_DOUBLE_IS_NAN(1.0 / d_zero);
3401
+ VERIFY_FAILS_END
3402
+ #endif
3403
+ }
3404
+
3405
+ void testDoubleNanIsNotInf(void)
3406
+ {
3407
+ #ifdef UNITY_EXCLUDE_DOUBLE
3408
+ TEST_IGNORE();
3409
+ #else
3410
+ EXPECT_ABORT_BEGIN
3411
+ TEST_ASSERT_DOUBLE_IS_INF(0.0 / d_zero);
3412
+ VERIFY_FAILS_END
3413
+ #endif
3414
+ }
3415
+
3416
+ void testDoubleIsDeterminate1(void)
3417
+ {
3418
+ #ifdef UNITY_EXCLUDE_DOUBLE
3419
+ TEST_IGNORE();
3420
+ #else
3421
+ TEST_ASSERT_DOUBLE_IS_DETERMINATE(0.0);
3422
+ TEST_ASSERT_DOUBLE_IS_DETERMINATE(123.3);
3423
+ TEST_ASSERT_DOUBLE_IS_DETERMINATE(-88.3);
3424
+ #endif
3425
+ }
3426
+
3427
+ void testDoubleIsDeterminate2(void)
3428
+ {
3429
+ #ifdef UNITY_EXCLUDE_DOUBLE
3430
+ TEST_IGNORE();
3431
+ #else
3432
+ EXPECT_ABORT_BEGIN
3433
+ TEST_ASSERT_DOUBLE_IS_NOT_DETERMINATE(-88.3);
3434
+ VERIFY_FAILS_END
3435
+ #endif
3436
+ }
3437
+
3438
+ void testDoubleIsNotDeterminate1(void)
3439
+ {
3440
+ #ifdef UNITY_EXCLUDE_DOUBLE
3441
+ TEST_IGNORE();
3442
+ #else
3443
+ TEST_ASSERT_DOUBLE_IS_NOT_DETERMINATE(1.0 / d_zero);
3444
+ TEST_ASSERT_DOUBLE_IS_NOT_DETERMINATE(-1.0 / d_zero);
3445
+ TEST_ASSERT_DOUBLE_IS_NOT_DETERMINATE(0.0 / d_zero);
3446
+ #endif
3447
+ }
3448
+
3449
+ void testDoubleIsNotDeterminate2(void)
3450
+ {
3451
+ #ifdef UNITY_EXCLUDE_DOUBLE
3452
+ TEST_IGNORE();
3453
+ #else
3454
+ EXPECT_ABORT_BEGIN
3455
+ TEST_ASSERT_DOUBLE_IS_DETERMINATE(-1.0 / d_zero);
3456
+ VERIFY_FAILS_END
3457
+ #endif
3458
+ }
3459
+
3460
+ void testEqualDoubleArrays(void)
3461
+ {
3462
+ #ifdef UNITY_EXCLUDE_DOUBLE
3463
+ TEST_IGNORE();
3464
+ #else
3465
+ double p0[] = {1.0, -8.0, 25.4, -0.123};
3466
+ double p1[] = {1.0, -8.0, 25.4, -0.123};
3467
+ double p2[] = {1.0, -8.0, 25.4, -0.2};
3468
+ double p3[] = {1.0, -23.0, 25.0, -0.26};
3469
+
3470
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p0, 1);
3471
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p0, 4);
3472
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3473
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p2, 3);
3474
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p3, 1);
3475
+ #endif
3476
+ }
3477
+
3478
+ void testNotEqualDoubleArraysExpectedNull(void)
3479
+ {
3480
+ #ifdef UNITY_EXCLUDE_DOUBLE
3481
+ TEST_IGNORE();
3482
+ #else
3483
+ double* p0 = NULL;
3484
+ double p1[] = {1.0, 8.0, 25.4, 0.252};
3485
+
3486
+ EXPECT_ABORT_BEGIN
3487
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3488
+ VERIFY_FAILS_END
3489
+ #endif
3490
+ }
3491
+
3492
+ void testNotEqualDoubleArraysActualNull(void)
3493
+ {
3494
+ #ifdef UNITY_EXCLUDE_DOUBLE
3495
+ TEST_IGNORE();
3496
+ #else
3497
+ double p0[] = {1.0, 8.0, 25.4, 0.253};
3498
+ double* p1 = NULL;
3499
+
3500
+ EXPECT_ABORT_BEGIN
3501
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3502
+ VERIFY_FAILS_END
3503
+ #endif
3504
+ }
3505
+
3506
+ void testNotEqualDoubleArrays1(void)
3507
+ {
3508
+ #ifdef UNITY_EXCLUDE_DOUBLE
3509
+ TEST_IGNORE();
3510
+ #else
3511
+ double p0[] = {1.0, 8.0, 25.4, 0.25666666667};
3512
+ double p1[] = {1.0, 8.0, 25.4, 0.25666666666};
3513
+
3514
+ EXPECT_ABORT_BEGIN
3515
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3516
+ VERIFY_FAILS_END
3517
+ #endif
3518
+ }
3519
+
3520
+ void testNotEqualDoubleArrays2(void)
3521
+ {
3522
+ #ifdef UNITY_EXCLUDE_DOUBLE
3523
+ TEST_IGNORE();
3524
+ #else
3525
+ double p0[] = {1.0, 8.0, 25.4, 0.253};
3526
+ double p1[] = {2.0, 8.0, 25.4, 0.253};
3527
+
3528
+ EXPECT_ABORT_BEGIN
3529
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3530
+ VERIFY_FAILS_END
3531
+ #endif
3532
+ }
3533
+
3534
+ void testNotEqualDoubleArrays3(void)
3535
+ {
3536
+ #ifdef UNITY_EXCLUDE_DOUBLE
3537
+ TEST_IGNORE();
3538
+ #else
3539
+ double p0[] = {1.0, 8.0, 25.4, 0.253};
3540
+ double p1[] = {1.0, 8.0, 25.5, 0.253};
3541
+
3542
+ EXPECT_ABORT_BEGIN
3543
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3544
+ VERIFY_FAILS_END
3545
+ #endif
3546
+ }
3547
+
3548
+ void testNotEqualDoubleArraysNegative1(void)
3549
+ {
3550
+ #ifdef UNITY_EXCLUDE_DOUBLE
3551
+ TEST_IGNORE();
3552
+ #else
3553
+ double p0[] = {-1.0, -8.0, -25.4, -0.2566666667};
3554
+ double p1[] = {-1.0, -8.0, -25.4, -0.2566666666};
3555
+
3556
+ EXPECT_ABORT_BEGIN
3557
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3558
+ VERIFY_FAILS_END
3559
+ #endif
3560
+ }
3561
+
3562
+ void testNotEqualDoubleArraysNegative2(void)
3563
+ {
3564
+ #ifdef UNITY_EXCLUDE_DOUBLE
3565
+ TEST_IGNORE();
3566
+ #else
3567
+ double p0[] = {-1.0, -8.0, -25.4, -0.253};
3568
+ double p1[] = {-2.0, -8.0, -25.4, -0.253};
3569
+
3570
+ EXPECT_ABORT_BEGIN
3571
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3572
+ VERIFY_FAILS_END
3573
+ #endif
3574
+ }
3575
+
3576
+ void testNotEqualDoubleArraysNegative3(void)
3577
+ {
3578
+ #ifdef UNITY_EXCLUDE_DOUBLE
3579
+ TEST_IGNORE();
3580
+ #else
3581
+ double p0[] = {-1.0, -8.0, -25.4, -0.253};
3582
+ double p1[] = {-1.0, -8.0, -25.5, -0.253};
3583
+
3584
+ EXPECT_ABORT_BEGIN
3585
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3586
+ VERIFY_FAILS_END
3587
+ #endif
3588
+ }
3589
+
3590
+ void testNotEqualDoubleArraysNaN(void)
3591
+ {
3592
+ #ifdef UNITY_EXCLUDE_DOUBLE
3593
+ TEST_IGNORE();
3594
+ #else
3595
+ double p0[] = {1.0, 0.0 / d_zero, 25.4, 0.253};
3596
+ double p1[] = {1.0, 0.0 / d_zero, 25.4, 0.253};
3597
+
3598
+ EXPECT_ABORT_BEGIN
3599
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3600
+ VERIFY_FAILS_END
3601
+ #endif
3602
+ }
3603
+
3604
+ void testNotEqualDoubleArraysInf(void)
3605
+ {
3606
+ #ifdef UNITY_EXCLUDE_DOUBLE
3607
+ TEST_IGNORE();
3608
+ #else
3609
+ double p0[] = {1.0, 1.0 / d_zero, 25.4, 0.253};
3610
+ double p1[] = {1.0, 1.0 / d_zero, 25.4, 0.253};
3611
+
3612
+ EXPECT_ABORT_BEGIN
3613
+ TEST_ASSERT_EQUAL_DOUBLE_ARRAY(p0, p1, 4);
3614
+ VERIFY_FAILS_END
3615
+ #endif
3616
+ }
3617
+
3618
+ void testThatDetailsCanBeHandleOneDetail(void)
3619
+ {
3620
+ #ifdef UNITY_EXCLUDE_DETAILS
3621
+ TEST_IGNORE();
3622
+ #else
3623
+ UNITY_SET_DETAIL("Detail1");
3624
+
3625
+ EXPECT_ABORT_BEGIN
3626
+ TEST_ASSERT_EQUAL_INT_MESSAGE(5, 6, "Should Fail And Say Detail1");
3627
+ VERIFY_FAILS_END
3628
+ #endif
3629
+ }
3630
+
3631
+ void testThatDetailsCanBeHandleTwoDetails(void)
3632
+ {
3633
+ #ifdef UNITY_EXCLUDE_DETAILS
3634
+ TEST_IGNORE();
3635
+ #else
3636
+ UNITY_SET_DETAILS("Detail1","Detail2");
3637
+
3638
+ EXPECT_ABORT_BEGIN
3639
+ TEST_ASSERT_EQUAL_HEX8_MESSAGE(7, 8, "Should Fail And Say Detail1 and Detail2");
3640
+ VERIFY_FAILS_END
3641
+ #endif
3642
+ }
3643
+
3644
+ void testThatDetailsCanBeHandleSingleDetailClearingTwoDetails(void)
3645
+ {
3646
+ #ifdef UNITY_EXCLUDE_DETAILS
3647
+ TEST_IGNORE();
3648
+ #else
3649
+ UNITY_SET_DETAILS("Detail1","Detail2");
3650
+ UNITY_SET_DETAIL("DetailNew");
3651
+
3652
+ EXPECT_ABORT_BEGIN
3653
+ TEST_ASSERT_EQUAL_STRING_MESSAGE("MEH", "GUH", "Should Fail And Say DetailNew");
3654
+ VERIFY_FAILS_END
3655
+ #endif
3656
+ }