ceedling 1.0.1 → 1.1.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 (1263) hide show
  1. checksums.yaml +4 -4
  2. data/GIT_COMMIT_SHA +1 -1
  3. data/Gemfile +7 -1
  4. data/Gemfile.lock +19 -12
  5. data/README.md +140 -156
  6. data/Rakefile +189 -9
  7. data/assets/example_file.c +1 -1
  8. data/assets/example_file.h +1 -1
  9. data/assets/example_file_call.c +1 -1
  10. data/assets/example_file_call.h +1 -1
  11. data/assets/example_file_with_statics.c +10 -0
  12. data/assets/example_file_with_stdio.c +13 -0
  13. data/assets/example_file_with_stdio.h +15 -0
  14. data/assets/project.yml +20 -18
  15. data/assets/test_example_file.c +1 -1
  16. data/assets/test_example_file_boom.c +1 -1
  17. data/assets/test_example_file_crash_assert.c +25 -0
  18. data/assets/{test_example_file_crash.c → test_example_file_crash_sigsegv.c} +4 -3
  19. data/assets/test_example_file_source_include.c +17 -0
  20. data/assets/test_example_file_success.c +1 -1
  21. data/assets/test_example_file_unity_printf.c +1 -1
  22. data/assets/test_example_file_verbose.c +1 -1
  23. data/assets/test_example_file_with_mock.c +1 -1
  24. data/assets/test_example_file_with_stdio.c +18 -0
  25. data/assets/test_example_with_parameterized_tests.c +1 -1
  26. data/assets/tests_with_defines/src/adc_hardware.c +1 -1
  27. data/assets/tests_with_defines/src/adc_hardware.h +1 -1
  28. data/assets/tests_with_defines/src/adc_hardware_configurator.c +1 -1
  29. data/assets/tests_with_defines/src/adc_hardware_configurator.h +1 -1
  30. data/assets/tests_with_defines/test/test_adc_hardware.c +1 -1
  31. data/assets/tests_with_defines/test/test_adc_hardware_special.c +1 -1
  32. data/assets/tests_with_encoding/src/unicoder.c +12 -0
  33. data/assets/tests_with_encoding/src/unicoder.h +14 -0
  34. data/assets/tests_with_encoding/test/test_unicoder.c +15 -0
  35. data/assets/tests_with_encoding/test/test_unicoder_partial.c +17 -0
  36. data/assets/tests_with_fallback_conditionals/src/conditional_module.c +18 -0
  37. data/assets/tests_with_fallback_conditionals/src/conditional_module.h +13 -0
  38. data/assets/tests_with_fallback_conditionals/src/optional_dep.h +12 -0
  39. data/assets/tests_with_fallback_conditionals/test/test_conditionals.c +49 -0
  40. data/assets/tests_with_preprocessing/src/adc_hardwareA.c +1 -1
  41. data/assets/tests_with_preprocessing/src/adc_hardwareA.h +1 -1
  42. data/assets/tests_with_preprocessing/src/adc_hardwareB.c +1 -1
  43. data/assets/tests_with_preprocessing/src/adc_hardwareB.h +1 -1
  44. data/assets/tests_with_preprocessing/src/adc_hardwareC.c +1 -1
  45. data/assets/tests_with_preprocessing/src/adc_hardwareC.h +1 -1
  46. data/assets/tests_with_preprocessing/src/adc_hardware_configuratorA.h +1 -1
  47. data/assets/tests_with_preprocessing/src/adc_hardware_configuratorB.h +1 -1
  48. data/assets/tests_with_preprocessing/src/adc_hardware_configuratorC.h +1 -1
  49. data/assets/tests_with_preprocessing/test/test_adc_hardwareA.c +1 -1
  50. data/assets/tests_with_preprocessing/test/test_adc_hardwareB.c +1 -1
  51. data/assets/tests_with_preprocessing/test/test_adc_hardwareC.c +1 -1
  52. data/assets/uncovered_example_file.c +1 -1
  53. data/bin/actions_wrapper.rb +1 -1
  54. data/bin/app_cfg.rb +1 -1
  55. data/bin/ceedling +14 -3
  56. data/bin/cli.rb +110 -38
  57. data/bin/cli_handler.rb +167 -68
  58. data/bin/cli_helper.rb +179 -55
  59. data/bin/configinator.rb +71 -12
  60. data/bin/merginator.rb +82 -0
  61. data/bin/mixin_standardizer.rb +127 -0
  62. data/bin/mixinator.rb +199 -33
  63. data/bin/mixins.rb +4 -2
  64. data/bin/objects.yml +22 -1
  65. data/bin/path_validator.rb +1 -1
  66. data/bin/projectinator.rb +29 -20
  67. data/bin/rake_patches.rb +31 -0
  68. data/bin/recursive_merger.rb +128 -0
  69. data/bin/versionator.rb +2 -2
  70. data/ceedling.gemspec +31 -14
  71. data/config/test_environment.rb +1 -1
  72. data/docs/BreakingChanges.md +16 -3
  73. data/docs/Changelog.md +177 -6
  74. data/docs/KnownIssues.md +26 -0
  75. data/docs/ReleaseNotes.md +133 -19
  76. data/docs/mkdocs/assets/images/ceedling-logo-circle.png +0 -0
  77. data/docs/mkdocs/assets/images/ceedling.svg +90 -0
  78. data/docs/mkdocs/assets/images/favicon.png +0 -0
  79. data/docs/mkdocs/assets/stylesheets/admonitions.css +152 -0
  80. data/docs/mkdocs/assets/stylesheets/fixes-local.css +15 -0
  81. data/docs/mkdocs/assets/stylesheets/styling.css +102 -0
  82. data/docs/mkdocs/configuration/environment-vars.md +14 -0
  83. data/docs/mkdocs/configuration/global-collections.md +156 -0
  84. data/docs/mkdocs/configuration/index.md +75 -0
  85. data/docs/mkdocs/configuration/loading.md +89 -0
  86. data/docs/mkdocs/configuration/mixins.md +607 -0
  87. data/docs/mkdocs/configuration/parallel-builds.md +97 -0
  88. data/docs/mkdocs/configuration/project-file.md +198 -0
  89. data/docs/mkdocs/configuration/reference/cexception.md +35 -0
  90. data/docs/mkdocs/configuration/reference/cmock.md +106 -0
  91. data/docs/mkdocs/configuration/reference/defines.md +352 -0
  92. data/docs/mkdocs/configuration/reference/environment.md +55 -0
  93. data/docs/mkdocs/configuration/reference/extension.md +63 -0
  94. data/docs/mkdocs/configuration/reference/files.md +154 -0
  95. data/docs/mkdocs/configuration/reference/flags.md +296 -0
  96. data/docs/mkdocs/configuration/reference/index.md +168 -0
  97. data/docs/mkdocs/configuration/reference/libraries.md +82 -0
  98. data/docs/mkdocs/configuration/reference/mixins.md +24 -0
  99. data/docs/mkdocs/configuration/reference/paths.md +276 -0
  100. data/docs/mkdocs/configuration/reference/plugins.md +60 -0
  101. data/docs/mkdocs/configuration/reference/project.md +333 -0
  102. data/docs/mkdocs/configuration/reference/release-build.md +62 -0
  103. data/docs/mkdocs/configuration/reference/test-build.md +55 -0
  104. data/docs/mkdocs/configuration/reference/test-runner.md +61 -0
  105. data/docs/mkdocs/configuration/reference/tools.md +457 -0
  106. data/docs/mkdocs/configuration/reference/unity.md +49 -0
  107. data/docs/mkdocs/configuration/which-ceedling.md +77 -0
  108. data/docs/mkdocs/development/index.md +50 -0
  109. data/docs/mkdocs/development/plugins/configuration.md +164 -0
  110. data/docs/mkdocs/development/plugins/index.md +84 -0
  111. data/docs/{PluginDevelopmentGuide.md → mkdocs/development/plugins/plugin-subclass.md} +61 -312
  112. data/docs/mkdocs/development/plugins/rake-tasks.md +54 -0
  113. data/docs/mkdocs/development/workflow.md +284 -0
  114. data/docs/mkdocs/getting-started/command-line.md +477 -0
  115. data/docs/mkdocs/getting-started/example-projects/cipher-quest.md +65 -0
  116. data/docs/mkdocs/getting-started/example-projects/index.md +49 -0
  117. data/docs/mkdocs/getting-started/example-projects/temp-sensor.md +60 -0
  118. data/docs/mkdocs/getting-started/example-projects/wondrous-forest.md +45 -0
  119. data/docs/mkdocs/getting-started/index.md +41 -0
  120. data/docs/mkdocs/getting-started/installation.md +172 -0
  121. data/docs/mkdocs/getting-started/quick-start.md +65 -0
  122. data/docs/mkdocs/help.md +49 -0
  123. data/docs/mkdocs/index.md +215 -0
  124. data/docs/mkdocs/overview/build-system.md +115 -0
  125. data/docs/mkdocs/overview/index.md +29 -0
  126. data/docs/mkdocs/overview/test-environments.md +33 -0
  127. data/docs/mkdocs/overview/tools-and-frameworks.md +115 -0
  128. data/{plugins/beep/README.md → docs/mkdocs/plugins/beep.md} +10 -9
  129. data/{plugins/bullseye/README.md → docs/mkdocs/plugins/bullseye.md} +8 -12
  130. data/{plugins/command_hooks/README.md → docs/mkdocs/plugins/command-hooks.md} +69 -47
  131. data/{plugins/compile_commands_json_db/README.md → docs/mkdocs/plugins/compile-commands-json-db.md} +7 -5
  132. data/docs/mkdocs/plugins/cppcheck.md +377 -0
  133. data/{plugins/dependencies/README.md → docs/mkdocs/plugins/dependencies.md} +39 -50
  134. data/{plugins/fff/README.md → docs/mkdocs/plugins/fff.md} +42 -37
  135. data/docs/mkdocs/plugins/gcov/examples.md +92 -0
  136. data/docs/mkdocs/plugins/gcov/gcovr.md +251 -0
  137. data/docs/mkdocs/plugins/gcov/index.md +68 -0
  138. data/docs/mkdocs/plugins/gcov/overview.md +145 -0
  139. data/docs/mkdocs/plugins/gcov/reportgenerator.md +58 -0
  140. data/docs/mkdocs/plugins/gcov/reporting.md +147 -0
  141. data/docs/mkdocs/plugins/gcov/setup.md +232 -0
  142. data/docs/mkdocs/plugins/gcov/tool-versions.md +60 -0
  143. data/docs/mkdocs/plugins/gcov/troubleshooting.md +78 -0
  144. data/docs/mkdocs/plugins/index.md +221 -0
  145. data/{plugins/module_generator/README.md → docs/mkdocs/plugins/module-generator.md} +44 -44
  146. data/{plugins/report_build_warnings_log/README.md → docs/mkdocs/plugins/report-build-warnings-log.md} +6 -4
  147. data/{plugins/report_tests_gtestlike_stdout/README.md → docs/mkdocs/plugins/report-tests-gtestlike-stdout.md} +9 -7
  148. data/{plugins/report_tests_ide_stdout/README.md → docs/mkdocs/plugins/report-tests-ide-stdout.md} +8 -7
  149. data/{plugins/report_tests_log_factory/README.md → docs/mkdocs/plugins/report-tests-log-factory.md} +44 -36
  150. data/{plugins/report_tests_pretty_stdout/README.md → docs/mkdocs/plugins/report-tests-pretty-stdout.md} +8 -6
  151. data/{plugins/report_tests_raw_output_log/README.md → docs/mkdocs/plugins/report-tests-raw-output-log.md} +9 -7
  152. data/{plugins/report_tests_teamcity_stdout/README.md → docs/mkdocs/plugins/report-tests-teamcity-stdout.md} +8 -6
  153. data/docs/mkdocs/plugins/sample_html_report.png +0 -0
  154. data/docs/mkdocs/plugins/valgrind.md +192 -0
  155. data/docs/mkdocs/project/release-history.md +61 -0
  156. data/docs/{CeedlingUpgrade.md → mkdocs/project/upgrade.md} +9 -7
  157. data/docs/mkdocs/reference/build-directives.md +37 -0
  158. data/docs/mkdocs/reference/command-line.md +323 -0
  159. data/docs/mkdocs/reference/environment-vars.md +60 -0
  160. data/docs/mkdocs/reference/gcov-plugin.md +577 -0
  161. data/docs/mkdocs/reference/global-collections.md +160 -0
  162. data/docs/mkdocs/reference/index.md +65 -0
  163. data/docs/mkdocs/reference/partials-macros.md +79 -0
  164. data/docs/mkdocs/reference/project-configuration.md +46 -0
  165. data/docs/mkdocs/snapshot/assets/project.yml +404 -0
  166. data/docs/mkdocs/snapshot/examples/cipher_quest/README.md +210 -0
  167. data/docs/mkdocs/snapshot/examples/temp_sensor/README.md +283 -0
  168. data/docs/mkdocs/snapshot/examples/wondrous_forest/README.md +92 -0
  169. data/docs/mkdocs/snapshot/plugins/gcov/config/defaults.yml +33 -0
  170. data/docs/mkdocs/snapshot/plugins/gcov/config/defaults_gcov.rb +136 -0
  171. data/docs/mkdocs/snapshot.yml +20 -0
  172. data/docs/mkdocs/testing-guide/build-directives.md +153 -0
  173. data/docs/mkdocs/testing-guide/conventions.md +616 -0
  174. data/docs/mkdocs/testing-guide/frameworks.md +192 -0
  175. data/docs/mkdocs/testing-guide/index.md +80 -0
  176. data/docs/mkdocs/testing-guide/partials/configuration.md +67 -0
  177. data/docs/mkdocs/testing-guide/partials/conventions.md +68 -0
  178. data/docs/mkdocs/testing-guide/partials/directives.md +212 -0
  179. data/docs/mkdocs/testing-guide/partials/example.md +149 -0
  180. data/docs/mkdocs/testing-guide/partials/index.md +79 -0
  181. data/docs/mkdocs/testing-guide/partials/overview.md +81 -0
  182. data/docs/mkdocs/testing-guide/partials/variables.md +244 -0
  183. data/docs/mkdocs/testing-guide/test-cases.md +194 -0
  184. data/docs/mkdocs/testing-guide/test-sample.md +94 -0
  185. data/docs/mkdocs/testing-guide/test-suite-anatomy.md +58 -0
  186. data/examples/cipher_quest/README.md +210 -0
  187. data/examples/cipher_quest/mixin/release_analyze.yml +28 -0
  188. data/examples/cipher_quest/mixin/release_caesar.yml +28 -0
  189. data/examples/cipher_quest/mixin/release_full.yml +30 -0
  190. data/examples/cipher_quest/mixin/release_rot13.yml +28 -0
  191. data/examples/cipher_quest/project.yml +108 -0
  192. data/examples/cipher_quest/src/analyzer.c +83 -0
  193. data/examples/cipher_quest/src/analyzer.h +29 -0
  194. data/examples/cipher_quest/src/cipher.c +59 -0
  195. data/examples/cipher_quest/src/cipher.h +27 -0
  196. data/examples/cipher_quest/src/main.c +151 -0
  197. data/examples/cipher_quest/src/text_utils.c +119 -0
  198. data/examples/cipher_quest/src/text_utils.h +23 -0
  199. data/examples/cipher_quest/test/TestAnalyzer.c +133 -0
  200. data/examples/cipher_quest/test/TestCipherCaesar.c +81 -0
  201. data/examples/cipher_quest/test/TestCipherRot13.c +74 -0
  202. data/examples/cipher_quest/test/TestTextUtils.c +184 -0
  203. data/examples/temp_sensor/README.md +279 -14
  204. data/examples/temp_sensor/mixin/add_gcov.yml +1 -1
  205. data/examples/temp_sensor/mixin/add_unity_helper.yml +1 -1
  206. data/examples/temp_sensor/project.yml +4 -15
  207. data/examples/temp_sensor/src/AdcConductor.c +5 -1
  208. data/examples/temp_sensor/src/AdcConductor.h +1 -1
  209. data/examples/temp_sensor/src/AdcHardware.c +1 -1
  210. data/examples/temp_sensor/src/AdcHardware.h +1 -1
  211. data/examples/temp_sensor/src/AdcHardwareConfigurator.c +2 -1
  212. data/examples/temp_sensor/src/AdcHardwareConfigurator.h +1 -1
  213. data/examples/temp_sensor/src/AdcModel.c +2 -2
  214. data/examples/temp_sensor/src/AdcModel.h +1 -1
  215. data/examples/temp_sensor/src/AdcTemperatureSensor.c +2 -1
  216. data/examples/temp_sensor/src/AdcTemperatureSensor.h +1 -1
  217. data/examples/temp_sensor/src/Executor.c +1 -1
  218. data/examples/temp_sensor/src/Executor.h +1 -1
  219. data/examples/temp_sensor/src/IntrinsicsWrapper.c +1 -1
  220. data/examples/temp_sensor/src/IntrinsicsWrapper.h +1 -1
  221. data/examples/temp_sensor/src/Main.c +3 -3
  222. data/examples/temp_sensor/src/Main.h +1 -1
  223. data/examples/temp_sensor/src/Model.c +1 -1
  224. data/examples/temp_sensor/src/Model.h +1 -1
  225. data/examples/temp_sensor/src/ModelConfig.h +1 -1
  226. data/examples/temp_sensor/src/TaskScheduler.c +1 -1
  227. data/examples/temp_sensor/src/TaskScheduler.h +1 -1
  228. data/examples/temp_sensor/src/TemperatureFilter.c +1 -1
  229. data/examples/temp_sensor/src/TemperatureFilter.h +1 -1
  230. data/examples/temp_sensor/src/TimerConductor.c +1 -1
  231. data/examples/temp_sensor/src/TimerConductor.h +1 -1
  232. data/examples/temp_sensor/src/TimerConfigurator.c +2 -1
  233. data/examples/temp_sensor/src/TimerConfigurator.h +1 -1
  234. data/examples/temp_sensor/src/TimerHardware.c +1 -1
  235. data/examples/temp_sensor/src/TimerHardware.h +1 -1
  236. data/examples/temp_sensor/src/TimerInterruptConfigurator.c +2 -1
  237. data/examples/temp_sensor/src/TimerInterruptConfigurator.h +1 -1
  238. data/examples/temp_sensor/src/TimerInterruptHandler.c +2 -1
  239. data/examples/temp_sensor/src/TimerInterruptHandler.h +1 -1
  240. data/examples/temp_sensor/src/TimerModel.c +1 -1
  241. data/examples/temp_sensor/src/TimerModel.h +1 -1
  242. data/examples/temp_sensor/src/Types.h +5 -2
  243. data/examples/temp_sensor/src/UsartConductor.c +1 -1
  244. data/examples/temp_sensor/src/UsartConductor.h +1 -1
  245. data/examples/temp_sensor/src/UsartConfigurator.c +2 -1
  246. data/examples/temp_sensor/src/UsartConfigurator.h +1 -1
  247. data/examples/temp_sensor/src/UsartHardware.c +1 -1
  248. data/examples/temp_sensor/src/UsartHardware.h +1 -1
  249. data/examples/temp_sensor/src/UsartModel.c +2 -2
  250. data/examples/temp_sensor/src/UsartModel.h +1 -1
  251. data/examples/temp_sensor/src/UsartPutChar.c +2 -1
  252. data/examples/temp_sensor/src/UsartPutChar.h +1 -1
  253. data/examples/temp_sensor/src/UsartTransmitBufferStatus.c +2 -1
  254. data/examples/temp_sensor/src/UsartTransmitBufferStatus.h +1 -1
  255. data/examples/temp_sensor/src/{TemperatureCalculator.c → calculators/TemperatureCalculator.c} +1 -1
  256. data/examples/temp_sensor/src/{TemperatureCalculator.h → calculators/TemperatureCalculator.h} +1 -1
  257. data/examples/temp_sensor/src/{UsartBaudRateRegisterCalculator.c → calculators/UsartBaudRateRegisterCalculator.c} +1 -1
  258. data/examples/temp_sensor/src/{UsartBaudRateRegisterCalculator.h → calculators/UsartBaudRateRegisterCalculator.h} +1 -1
  259. data/examples/temp_sensor/test/TestExecutor.c +1 -1
  260. data/examples/temp_sensor/test/TestMain.c +5 -1
  261. data/examples/temp_sensor/test/TestModel.c +1 -1
  262. data/examples/temp_sensor/test/TestTaskScheduler.c +1 -1
  263. data/examples/temp_sensor/test/TestTemperatureCalculator.c +2 -2
  264. data/examples/temp_sensor/test/TestTemperatureFilter.c +5 -2
  265. data/examples/temp_sensor/test/TestTimerConductor.c +1 -1
  266. data/examples/temp_sensor/test/TestTimerHardware.c +1 -1
  267. data/examples/temp_sensor/test/TestTimerIntegrated.c +8 -4
  268. data/examples/temp_sensor/test/TestTimerModel.c +1 -1
  269. data/examples/temp_sensor/test/TestTimerPlatformStandin.c +154 -0
  270. data/examples/temp_sensor/test/TestUsartBaudRateRegisterCalculator.c +1 -1
  271. data/examples/temp_sensor/test/TestUsartConductor.c +1 -1
  272. data/examples/temp_sensor/test/TestUsartHardware.c +1 -1
  273. data/examples/temp_sensor/test/TestUsartIntegrated.c +9 -5
  274. data/examples/temp_sensor/test/TestUsartModel.c +2 -2
  275. data/examples/temp_sensor/test/TestUsartPlatformStandin.c +145 -0
  276. data/examples/temp_sensor/test/adc/TestAdcConductor.c +1 -1
  277. data/examples/temp_sensor/test/adc/TestAdcHardware.c +1 -1
  278. data/examples/temp_sensor/test/adc/TestAdcModel.c +1 -1
  279. data/examples/temp_sensor/test/adc/TestAdcPlatformStandin.c +100 -0
  280. data/examples/temp_sensor/test/platform/at91sam7s256.c +25 -0
  281. data/examples/temp_sensor/test/platform/at91sam7s256.h +183 -0
  282. data/examples/temp_sensor/test/support/UnityHelper.c +1 -1
  283. data/examples/temp_sensor/test/support/UnityHelper.h +1 -1
  284. data/examples/wondrous_forest/README.md +92 -0
  285. data/{lib/ceedling/release_invoker_helper.rb → examples/wondrous_forest/mixin/add_gcov.yml} +14 -4
  286. data/examples/wondrous_forest/project.yml +86 -0
  287. data/examples/wondrous_forest/src/AlertManager.c +125 -0
  288. data/examples/wondrous_forest/src/AlertManager.h +30 -0
  289. data/examples/wondrous_forest/src/EventQueue.c +73 -0
  290. data/examples/wondrous_forest/src/EventQueue.h +22 -0
  291. data/examples/wondrous_forest/src/ForestMonitor.c +88 -0
  292. data/examples/wondrous_forest/src/ForestMonitor.h +18 -0
  293. data/examples/wondrous_forest/src/HumiditySensor.c +57 -0
  294. data/examples/wondrous_forest/src/HumiditySensor.h +17 -0
  295. data/examples/wondrous_forest/src/LightSensor.c +51 -0
  296. data/examples/wondrous_forest/src/LightSensor.h +18 -0
  297. data/examples/wondrous_forest/src/SensorHal.c +62 -0
  298. data/examples/wondrous_forest/src/SensorHal.h +19 -0
  299. data/examples/wondrous_forest/src/SoilMoisture.c +61 -0
  300. data/examples/wondrous_forest/src/SoilMoisture.h +19 -0
  301. data/examples/wondrous_forest/src/TemperatureSensor.c +67 -0
  302. data/examples/wondrous_forest/src/TemperatureSensor.h +18 -0
  303. data/examples/wondrous_forest/src/Types.h +84 -0
  304. data/examples/wondrous_forest/src/UartDriver.c +55 -0
  305. data/examples/wondrous_forest/src/UartDriver.h +18 -0
  306. data/examples/wondrous_forest/test/TestAlertManager.c +105 -0
  307. data/examples/wondrous_forest/test/TestEventQueue.c +117 -0
  308. data/examples/wondrous_forest/test/TestForestMonitor.c +118 -0
  309. data/examples/wondrous_forest/test/TestHumiditySensor.c +85 -0
  310. data/examples/wondrous_forest/test/TestLightSensor.c +79 -0
  311. data/examples/wondrous_forest/test/TestSensorHal.c +58 -0
  312. data/examples/wondrous_forest/test/TestSoilMoisture.c +96 -0
  313. data/examples/wondrous_forest/test/TestTemperatureSensor.c +100 -0
  314. data/examples/wondrous_forest/test/TestUartDriver.c +55 -0
  315. data/lib/ceedling/application.rb +1 -1
  316. data/lib/ceedling/array_patches.rb +28 -0
  317. data/lib/ceedling/batchinator.rb +76 -0
  318. data/lib/ceedling/c_extractor/c_extractor.rb +340 -0
  319. data/lib/ceedling/c_extractor/c_extractor_code_text.rb +283 -0
  320. data/lib/ceedling/c_extractor/c_extractor_constants.rb +38 -0
  321. data/lib/ceedling/c_extractor/c_extractor_declarations.rb +415 -0
  322. data/lib/ceedling/c_extractor/c_extractor_definitions.rb +157 -0
  323. data/lib/ceedling/c_extractor/c_extractor_functions.rb +402 -0
  324. data/lib/ceedling/c_extractor/c_extractor_preprocessing.rb +262 -0
  325. data/lib/ceedling/c_extractor/c_extractor_types.rb +122 -0
  326. data/lib/ceedling/cacheinator.rb +1 -1
  327. data/lib/ceedling/cacheinator_helper.rb +23 -4
  328. data/lib/ceedling/ceedling.h +40 -0
  329. data/lib/ceedling/{config_matchinator.rb → config/config_matchinator.rb} +67 -5
  330. data/lib/ceedling/{config_walkinator.rb → config/config_walkinator.rb} +1 -1
  331. data/lib/ceedling/{configurator.rb → config/configurator.rb} +269 -107
  332. data/lib/ceedling/{configurator_builder.rb → config/configurator_builder.rb} +25 -6
  333. data/lib/ceedling/{configurator_plugins.rb → config/configurator_plugins.rb} +2 -4
  334. data/lib/ceedling/{configurator_setup.rb → config/configurator_setup.rb} +39 -71
  335. data/lib/ceedling/{configurator_validator.rb → config/configurator_validator.rb} +1 -1
  336. data/lib/ceedling/constants.rb +59 -18
  337. data/lib/ceedling/defaults.rb +31 -44
  338. data/lib/ceedling/defineinator.rb +2 -2
  339. data/lib/ceedling/dependinator.rb +1 -1
  340. data/lib/ceedling/encodinator.rb +1 -1
  341. data/lib/ceedling/erb_wrapper.rb +1 -1
  342. data/lib/ceedling/exceptions.rb +23 -3
  343. data/lib/ceedling/file_finder.rb +39 -10
  344. data/lib/ceedling/file_finder_helper.rb +2 -2
  345. data/lib/ceedling/file_path_collection_utils.rb +37 -23
  346. data/lib/ceedling/file_path_utils.rb +183 -26
  347. data/lib/ceedling/file_system_wrapper.rb +1 -1
  348. data/lib/ceedling/file_wrapper.rb +14 -1
  349. data/lib/ceedling/flaginator.rb +1 -1
  350. data/lib/ceedling/{generator.rb → generators/generator.rb} +86 -23
  351. data/lib/ceedling/{generator_helper.rb → generators/generator_helper.rb} +17 -11
  352. data/lib/ceedling/{generator_mocks.rb → generators/generator_mocks.rb} +1 -1
  353. data/lib/ceedling/generators/generator_partials.rb +177 -0
  354. data/lib/ceedling/{generator_test_results.rb → generators/generator_test_results.rb} +43 -17
  355. data/lib/ceedling/generators/generator_test_results_backtrace.rb +290 -0
  356. data/lib/ceedling/{generator_test_results_sanity_checker.rb → generators/generator_test_results_sanity_checker.rb} +1 -1
  357. data/lib/ceedling/generators/generator_test_runner.rb +97 -0
  358. data/lib/ceedling/includes/include_factory.rb +43 -0
  359. data/lib/ceedling/{include_pathinator.rb → includes/include_pathinator.rb} +1 -1
  360. data/lib/ceedling/includes/includes.rb +341 -0
  361. data/lib/ceedling/loginator.rb +115 -12
  362. data/lib/ceedling/makefile.rb +1 -1
  363. data/lib/ceedling/objects.yml +145 -43
  364. data/lib/ceedling/parsing_parcels.rb +35 -9
  365. data/lib/ceedling/partials/partializer.rb +444 -0
  366. data/lib/ceedling/partials/partializer_config.rb +217 -0
  367. data/lib/ceedling/partials/partializer_helper.rb +344 -0
  368. data/lib/ceedling/partials/partializer_runtime.rb +29 -0
  369. data/lib/ceedling/partials/partializer_utils.rb +222 -0
  370. data/lib/ceedling/partials/partials.rb +82 -0
  371. data/lib/ceedling/{plugin.rb → plugins/plugin.rb} +1 -1
  372. data/lib/ceedling/{plugin_manager.rb → plugins/plugin_manager.rb} +47 -21
  373. data/lib/ceedling/{plugin_manager_helper.rb → plugins/plugin_manager_helper.rb} +1 -1
  374. data/lib/ceedling/{plugin_reportinator.rb → plugins/plugin_reportinator.rb} +10 -18
  375. data/lib/ceedling/{plugin_reportinator_helper.rb → plugins/plugin_reportinator_helper.rb} +22 -26
  376. data/lib/ceedling/plugins/report_tests_stdout_plugin.rb +88 -0
  377. data/lib/ceedling/preprocess/README.md +184 -0
  378. data/lib/ceedling/preprocess/c_comment_scanner.rb +194 -0
  379. data/lib/ceedling/preprocess/c_preprocessor_conditionals.rb +170 -0
  380. data/lib/ceedling/preprocess/preprocessinator.rb +605 -0
  381. data/lib/ceedling/preprocess/preprocessinator_bare_includes_extractor.rb +69 -0
  382. data/lib/ceedling/preprocess/preprocessinator_code_finder.rb +150 -0
  383. data/lib/ceedling/preprocess/preprocessinator_comment_stripper.rb +80 -0
  384. data/lib/ceedling/preprocess/preprocessinator_file_assembler.rb +378 -0
  385. data/lib/ceedling/preprocess/preprocessinator_includes_handler.rb +224 -0
  386. data/lib/ceedling/preprocess/preprocessinator_line_marker_includes_extractor.rb +215 -0
  387. data/lib/ceedling/preprocess/preprocessinator_reconstructor.rb +398 -0
  388. data/lib/ceedling/rake_app/rake_invocation_tracker.rb +39 -0
  389. data/lib/ceedling/rake_app/rake_task_registry.rb +210 -0
  390. data/lib/ceedling/{rake_utils.rb → rake_app/rake_utils.rb} +1 -1
  391. data/lib/ceedling/{rake_wrapper.rb → rake_app/rake_wrapper.rb} +1 -1
  392. data/lib/ceedling/rake_app/rakefile_component_resolver.rb +77 -0
  393. data/lib/ceedling/rakefile.rb +16 -8
  394. data/lib/ceedling/release_invoker.rb +48 -4
  395. data/lib/ceedling/reportinator.rb +39 -18
  396. data/lib/ceedling/ruby_expandinator.rb +61 -0
  397. data/lib/ceedling/rules_release.rake +4 -2
  398. data/lib/ceedling/rules_tests.rake +1 -23
  399. data/lib/ceedling/setupinator.rb +23 -11
  400. data/lib/ceedling/stream_wrapper.rb +1 -1
  401. data/lib/ceedling/system_utils.rb +1 -1
  402. data/lib/ceedling/system_wrapper.rb +18 -21
  403. data/lib/ceedling/tasks_base.rake +3 -3
  404. data/lib/ceedling/tasks_filesystem.rake +22 -12
  405. data/lib/ceedling/tasks_release.rake +11 -18
  406. data/lib/ceedling/tasks_tests.rake +1 -1
  407. data/lib/ceedling/test_context_extractor.rb +178 -109
  408. data/lib/ceedling/test_invoker/test_build_executor.rb +661 -0
  409. data/lib/ceedling/test_invoker/test_build_planner.rb +277 -0
  410. data/lib/ceedling/test_invoker/test_build_setup.rb +441 -0
  411. data/lib/ceedling/test_invoker/test_invoker.rb +251 -0
  412. data/lib/ceedling/test_invoker/test_invoker_types.rb +56 -0
  413. data/lib/ceedling/test_runner_manager.rb +1 -1
  414. data/lib/ceedling/tool_executor.rb +29 -19
  415. data/lib/ceedling/tool_executor_helper.rb +7 -15
  416. data/lib/ceedling/tool_validator.rb +24 -8
  417. data/lib/ceedling/verbosinator.rb +1 -1
  418. data/lib/ceedling/yaml_wrapper.rb +72 -12
  419. data/lib/ceedling.rb +1 -1
  420. data/lib/snapshot.rb +43 -0
  421. data/lib/version.rb +2 -2
  422. data/license.txt +1 -1
  423. data/mkdocs.local.yml +45 -0
  424. data/mkdocs.yml +202 -0
  425. data/plugins/beep/config/defaults.yml +1 -1
  426. data/plugins/beep/config/defaults_beep.rb +1 -1
  427. data/plugins/beep/lib/beep.rb +7 -5
  428. data/plugins/bullseye/assets/template.erb +1 -1
  429. data/plugins/bullseye/bullseye.rake +1 -1
  430. data/plugins/bullseye/config/defaults.yml +1 -1
  431. data/plugins/bullseye/lib/bullseye.rb +9 -9
  432. data/plugins/command_hooks/lib/command_hooks.rb +43 -38
  433. data/plugins/compile_commands_json_db/lib/compile_commands_json_db.rb +2 -2
  434. data/plugins/cppcheck/AUTHORS.md +8 -0
  435. data/plugins/cppcheck/config/defaults.yml +44 -0
  436. data/plugins/cppcheck/config/defaults_cppcheck.rb +32 -0
  437. data/plugins/cppcheck/cppcheck.rake +54 -0
  438. data/plugins/cppcheck/lib/cppcheck.rb +247 -0
  439. data/plugins/cppcheck/lib/cppcheck_constants.rb +20 -0
  440. data/plugins/cppcheck/lib/cppcheck_reports.rb +160 -0
  441. data/plugins/dependencies/Rakefile +1 -1
  442. data/plugins/dependencies/config/defaults.yml +1 -1
  443. data/plugins/dependencies/dependencies.rake +3 -3
  444. data/plugins/dependencies/example/boss/project.yml +1 -3
  445. data/plugins/dependencies/example/boss/src/boss.c +1 -1
  446. data/plugins/dependencies/example/boss/src/boss.h +1 -1
  447. data/plugins/dependencies/example/boss/src/main.c +1 -1
  448. data/plugins/dependencies/example/boss/test/test_boss.c +1 -1
  449. data/plugins/dependencies/example/supervisor/project.yml +1 -3
  450. data/plugins/dependencies/example/supervisor/src/supervisor.c +1 -1
  451. data/plugins/dependencies/example/supervisor/src/supervisor.h +1 -1
  452. data/plugins/dependencies/example/supervisor/test/test_supervisor.c +1 -1
  453. data/plugins/dependencies/lib/dependencies.rb +14 -2
  454. data/plugins/fff/Rakefile +1 -1
  455. data/plugins/fff/config/fff.yml +1 -1
  456. data/plugins/fff/examples/fff_example/project.yml +2 -2
  457. data/plugins/fff/examples/fff_example/src/bar.c +1 -1
  458. data/plugins/fff/examples/fff_example/src/bar.h +1 -1
  459. data/plugins/fff/examples/fff_example/src/custom_types.h +1 -1
  460. data/plugins/fff/examples/fff_example/src/display.c +1 -1
  461. data/plugins/fff/examples/fff_example/src/display.h +1 -1
  462. data/plugins/fff/examples/fff_example/src/event_processor.c +1 -1
  463. data/plugins/fff/examples/fff_example/src/event_processor.h +1 -1
  464. data/plugins/fff/examples/fff_example/src/foo.c +1 -1
  465. data/plugins/fff/examples/fff_example/src/foo.h +1 -1
  466. data/plugins/fff/examples/fff_example/src/subfolder/zzz.c +1 -1
  467. data/plugins/fff/examples/fff_example/src/subfolder/zzz.h +1 -1
  468. data/plugins/fff/examples/fff_example/test/test_event_processor.c +1 -1
  469. data/plugins/fff/examples/fff_example/test/test_foo.c +1 -1
  470. data/plugins/fff/lib/fff.rb +10 -5
  471. data/plugins/fff/lib/fff_mock_generator.rb +1 -1
  472. data/plugins/fff/spec/fff_mock_header_generator_spec.rb +1 -1
  473. data/plugins/fff/spec/fff_mock_source_generator_spec.rb +1 -1
  474. data/plugins/fff/spec/header_generator.rb +1 -1
  475. data/plugins/fff/spec/spec_helper.rb +1 -1
  476. data/plugins/fff/src/fff_unity_helper.h +1 -1
  477. data/plugins/gcov/config/defaults.yml +4 -1
  478. data/plugins/gcov/config/defaults_gcov.rb +40 -13
  479. data/plugins/gcov/gcov.rake +31 -1
  480. data/plugins/gcov/lib/console_reportinator.rb +180 -0
  481. data/plugins/gcov/lib/gcov.rb +189 -103
  482. data/plugins/gcov/lib/gcov_constants.rb +16 -4
  483. data/plugins/gcov/lib/gcov_reportinator.rb +63 -0
  484. data/{spec/configurator_helper_spec.rb → plugins/gcov/lib/gcov_types.rb} +2 -6
  485. data/plugins/gcov/lib/gcovr_reportinator.rb +237 -136
  486. data/plugins/gcov/lib/reportgenerator_reportinator.rb +242 -116
  487. data/plugins/module_generator/Rakefile +1 -1
  488. data/plugins/module_generator/assets/stubby1.h +1 -1
  489. data/plugins/module_generator/assets/stubby2.h +1 -1
  490. data/plugins/module_generator/config/module_generator.yml +1 -1
  491. data/plugins/module_generator/example/project.yml +1 -3
  492. data/plugins/module_generator/lib/module_generator.rb +2 -2
  493. data/plugins/module_generator/module_generator.rake +1 -1
  494. data/plugins/report_build_warnings_log/lib/report_build_warnings_log.rb +14 -20
  495. data/plugins/report_tests_gtestlike_stdout/assets/template.erb +3 -3
  496. data/plugins/report_tests_gtestlike_stdout/config/report_tests_gtestlike_stdout.yml +1 -1
  497. data/plugins/report_tests_gtestlike_stdout/lib/report_tests_gtestlike_stdout.rb +4 -61
  498. data/plugins/report_tests_ide_stdout/config/report_tests_ide_stdout.yml +1 -1
  499. data/plugins/report_tests_ide_stdout/lib/report_tests_ide_stdout.rb +7 -60
  500. data/plugins/report_tests_log_factory/config/defaults.yml +1 -1
  501. data/plugins/report_tests_log_factory/lib/cppunit_tests_reporter.rb +5 -5
  502. data/plugins/report_tests_log_factory/lib/html_tests_reporter.rb +302 -133
  503. data/plugins/report_tests_log_factory/lib/json_tests_reporter.rb +9 -7
  504. data/plugins/report_tests_log_factory/lib/junit_tests_reporter.rb +6 -5
  505. data/plugins/report_tests_log_factory/lib/report_tests_log_factory.rb +72 -36
  506. data/plugins/report_tests_log_factory/lib/tests_reporter.rb +8 -8
  507. data/plugins/report_tests_pretty_stdout/assets/template.erb +1 -2
  508. data/plugins/report_tests_pretty_stdout/config/report_tests_pretty_stdout.yml +1 -1
  509. data/plugins/report_tests_pretty_stdout/lib/report_tests_pretty_stdout.rb +4 -65
  510. data/plugins/report_tests_raw_output_log/lib/report_tests_raw_output_log.rb +4 -4
  511. data/plugins/report_tests_teamcity_stdout/config/defaults.yml +1 -1
  512. data/plugins/report_tests_teamcity_stdout/config/report_tests_teamcity_stdout.yml +1 -1
  513. data/plugins/report_tests_teamcity_stdout/lib/report_tests_teamcity_stdout.rb +2 -2
  514. data/plugins/valgrind/config/defaults.yml +19 -0
  515. data/plugins/valgrind/config/defaults_valgrind.rb +20 -0
  516. data/plugins/valgrind/lib/valgrind.rb +132 -0
  517. data/plugins/valgrind/lib/valgrind_constants.rb +13 -0
  518. data/plugins/valgrind/valgrind.rake +87 -0
  519. data/site-local/404.html +4002 -0
  520. data/site-local/assets/images/ceedling-logo-circle.png +0 -0
  521. data/site-local/assets/images/ceedling.svg +90 -0
  522. data/site-local/assets/images/favicon.png +0 -0
  523. data/site-local/assets/javascripts/bundle.79ae519e.min.js +16 -0
  524. data/site-local/assets/javascripts/bundle.79ae519e.min.js.map +7 -0
  525. data/site-local/assets/javascripts/lunr/min/lunr.ar.min.js +1 -0
  526. data/site-local/assets/javascripts/lunr/min/lunr.da.min.js +18 -0
  527. data/site-local/assets/javascripts/lunr/min/lunr.de.min.js +18 -0
  528. data/site-local/assets/javascripts/lunr/min/lunr.du.min.js +18 -0
  529. data/site-local/assets/javascripts/lunr/min/lunr.el.min.js +1 -0
  530. data/site-local/assets/javascripts/lunr/min/lunr.es.min.js +18 -0
  531. data/site-local/assets/javascripts/lunr/min/lunr.fi.min.js +18 -0
  532. data/site-local/assets/javascripts/lunr/min/lunr.fr.min.js +18 -0
  533. data/site-local/assets/javascripts/lunr/min/lunr.he.min.js +1 -0
  534. data/site-local/assets/javascripts/lunr/min/lunr.hi.min.js +1 -0
  535. data/site-local/assets/javascripts/lunr/min/lunr.hu.min.js +18 -0
  536. data/site-local/assets/javascripts/lunr/min/lunr.hy.min.js +1 -0
  537. data/site-local/assets/javascripts/lunr/min/lunr.it.min.js +18 -0
  538. data/site-local/assets/javascripts/lunr/min/lunr.ja.min.js +1 -0
  539. data/site-local/assets/javascripts/lunr/min/lunr.jp.min.js +1 -0
  540. data/site-local/assets/javascripts/lunr/min/lunr.kn.min.js +1 -0
  541. data/site-local/assets/javascripts/lunr/min/lunr.ko.min.js +1 -0
  542. data/site-local/assets/javascripts/lunr/min/lunr.multi.min.js +1 -0
  543. data/site-local/assets/javascripts/lunr/min/lunr.nl.min.js +18 -0
  544. data/site-local/assets/javascripts/lunr/min/lunr.no.min.js +18 -0
  545. data/site-local/assets/javascripts/lunr/min/lunr.pt.min.js +18 -0
  546. data/site-local/assets/javascripts/lunr/min/lunr.ro.min.js +18 -0
  547. data/site-local/assets/javascripts/lunr/min/lunr.ru.min.js +18 -0
  548. data/site-local/assets/javascripts/lunr/min/lunr.sa.min.js +1 -0
  549. data/site-local/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +1 -0
  550. data/site-local/assets/javascripts/lunr/min/lunr.sv.min.js +18 -0
  551. data/site-local/assets/javascripts/lunr/min/lunr.ta.min.js +1 -0
  552. data/site-local/assets/javascripts/lunr/min/lunr.te.min.js +1 -0
  553. data/site-local/assets/javascripts/lunr/min/lunr.th.min.js +1 -0
  554. data/site-local/assets/javascripts/lunr/min/lunr.tr.min.js +18 -0
  555. data/site-local/assets/javascripts/lunr/min/lunr.vi.min.js +1 -0
  556. data/site-local/assets/javascripts/lunr/min/lunr.zh.min.js +1 -0
  557. data/site-local/assets/javascripts/lunr/tinyseg.js +206 -0
  558. data/site-local/assets/javascripts/lunr/wordcut.js +6708 -0
  559. data/site-local/assets/javascripts/workers/search.2c215733.min.js +42 -0
  560. data/site-local/assets/javascripts/workers/search.2c215733.min.js.map +7 -0
  561. data/site-local/assets/stylesheets/admonitions.css +152 -0
  562. data/site-local/assets/stylesheets/fixes-local.css +15 -0
  563. data/site-local/assets/stylesheets/main.484c7ddc.min.css +1 -0
  564. data/site-local/assets/stylesheets/main.484c7ddc.min.css.map +1 -0
  565. data/site-local/assets/stylesheets/palette.ab4e12ef.min.css +1 -0
  566. data/site-local/assets/stylesheets/palette.ab4e12ef.min.css.map +1 -0
  567. data/site-local/assets/stylesheets/styling.css +102 -0
  568. data/site-local/configuration/environment-vars.html +4102 -0
  569. data/site-local/configuration/global-collections.html +4248 -0
  570. data/site-local/configuration/index.html +4169 -0
  571. data/site-local/configuration/loading.html +4348 -0
  572. data/site-local/configuration/mixins.html +5060 -0
  573. data/site-local/configuration/parallel-builds.html +4347 -0
  574. data/site-local/configuration/project-file.html +4474 -0
  575. data/site-local/configuration/reference/cexception.html +4225 -0
  576. data/site-local/configuration/reference/cmock.html +4401 -0
  577. data/site-local/configuration/reference/defines.html +4734 -0
  578. data/site-local/configuration/reference/environment.html +4242 -0
  579. data/site-local/configuration/reference/extension.html +4387 -0
  580. data/site-local/configuration/reference/files.html +4541 -0
  581. data/site-local/configuration/reference/flags.html +4681 -0
  582. data/site-local/configuration/reference/index.html +4290 -0
  583. data/site-local/configuration/reference/libraries.html +4365 -0
  584. data/site-local/configuration/reference/mixins.html +4195 -0
  585. data/site-local/configuration/reference/paths.html +4714 -0
  586. data/site-local/configuration/reference/plugins.html +4262 -0
  587. data/site-local/configuration/reference/project.html +4777 -0
  588. data/site-local/configuration/reference/release-build.html +4287 -0
  589. data/site-local/configuration/reference/test-build.html +4264 -0
  590. data/site-local/configuration/reference/test-runner.html +4289 -0
  591. data/site-local/configuration/reference/tools.html +5120 -0
  592. data/site-local/configuration/reference/unity.html +4255 -0
  593. data/site-local/configuration/which-ceedling.html +4269 -0
  594. data/site-local/development/index.html +4148 -0
  595. data/site-local/development/plugins/configuration.html +4446 -0
  596. data/site-local/development/plugins/index.html +4212 -0
  597. data/site-local/development/plugins/plugin-subclass.html +5068 -0
  598. data/site-local/development/plugins/rake-tasks.html +4236 -0
  599. data/site-local/development/workflow.html +4664 -0
  600. data/site-local/getting-started/command-line.html +5498 -0
  601. data/site-local/getting-started/example-projects/cipher-quest.html +4272 -0
  602. data/site-local/getting-started/example-projects/index.html +4173 -0
  603. data/site-local/getting-started/example-projects/temp-sensor.html +4322 -0
  604. data/site-local/getting-started/example-projects/wondrous-forest.html +4290 -0
  605. data/site-local/getting-started/index.html +4116 -0
  606. data/site-local/getting-started/installation.html +4452 -0
  607. data/site-local/getting-started/quick-start.html +4262 -0
  608. data/site-local/help.html +4081 -0
  609. data/site-local/index.html +4364 -0
  610. data/site-local/overview/build-system.html +4288 -0
  611. data/site-local/overview/index.html +4103 -0
  612. data/site-local/overview/test-environments.html +4116 -0
  613. data/site-local/overview/tools-and-frameworks.html +4433 -0
  614. data/site-local/plugins/beep.html +4413 -0
  615. data/site-local/plugins/bullseye.html +4249 -0
  616. data/site-local/plugins/command-hooks.html +5023 -0
  617. data/site-local/plugins/compile-commands-json-db.html +4243 -0
  618. data/site-local/plugins/cppcheck.html +4851 -0
  619. data/site-local/plugins/dependencies.html +4828 -0
  620. data/site-local/plugins/fff.html +4661 -0
  621. data/site-local/plugins/gcov/examples.html +4293 -0
  622. data/site-local/plugins/gcov/gcovr.html +4512 -0
  623. data/site-local/plugins/gcov/index.html +4150 -0
  624. data/site-local/plugins/gcov/overview.html +4410 -0
  625. data/site-local/plugins/gcov/reportgenerator.html +4164 -0
  626. data/site-local/plugins/gcov/reporting.html +4336 -0
  627. data/site-local/plugins/gcov/setup.html +4597 -0
  628. data/site-local/plugins/gcov/tool-versions.html +4269 -0
  629. data/site-local/plugins/gcov/troubleshooting.html +4313 -0
  630. data/site-local/plugins/index.html +4348 -0
  631. data/site-local/plugins/module-generator.html +4588 -0
  632. data/site-local/plugins/report-build-warnings-log.html +4229 -0
  633. data/site-local/plugins/report-tests-gtestlike-stdout.html +4357 -0
  634. data/site-local/plugins/report-tests-ide-stdout.html +4270 -0
  635. data/site-local/plugins/report-tests-log-factory.html +4792 -0
  636. data/site-local/plugins/report-tests-pretty-stdout.html +4265 -0
  637. data/site-local/plugins/report-tests-raw-output-log.html +4292 -0
  638. data/site-local/plugins/report-tests-teamcity-stdout.html +4291 -0
  639. data/site-local/plugins/sample_html_report.png +0 -0
  640. data/site-local/plugins/valgrind.html +4605 -0
  641. data/site-local/project/release-history.html +4225 -0
  642. data/site-local/project/upgrade.html +4314 -0
  643. data/site-local/reference/build-directives.html +4210 -0
  644. data/site-local/reference/command-line.html +4989 -0
  645. data/site-local/reference/environment-vars.html +4278 -0
  646. data/site-local/reference/gcov-plugin.html +5886 -0
  647. data/site-local/reference/global-collections.html +4385 -0
  648. data/site-local/reference/index.html +4126 -0
  649. data/site-local/reference/partials-macros.html +4326 -0
  650. data/site-local/reference/project-configuration.html +4253 -0
  651. data/site-local/sitemap.xml +3 -0
  652. data/site-local/sitemap.xml.gz +0 -0
  653. data/site-local/snapshot/assets/project.yml +404 -0
  654. data/site-local/snapshot/examples/cipher_quest/index.html +4292 -0
  655. data/site-local/snapshot/examples/temp_sensor/index.html +4416 -0
  656. data/site-local/snapshot/examples/wondrous_forest/index.html +4200 -0
  657. data/site-local/snapshot/plugins/gcov/config/defaults.yml +33 -0
  658. data/site-local/snapshot/plugins/gcov/config/defaults_gcov.rb +136 -0
  659. data/site-local/testing-guide/build-directives.html +4481 -0
  660. data/site-local/testing-guide/conventions.html +5233 -0
  661. data/site-local/testing-guide/frameworks.html +4488 -0
  662. data/site-local/testing-guide/index.html +4174 -0
  663. data/site-local/testing-guide/partials/configuration.html +4347 -0
  664. data/site-local/testing-guide/partials/conventions.html +4327 -0
  665. data/site-local/testing-guide/partials/directives.html +4680 -0
  666. data/site-local/testing-guide/partials/example.html +4448 -0
  667. data/site-local/testing-guide/partials/index.html +4167 -0
  668. data/site-local/testing-guide/partials/overview.html +4322 -0
  669. data/site-local/testing-guide/partials/variables.html +4548 -0
  670. data/site-local/testing-guide/test-cases.html +4436 -0
  671. data/site-local/testing-guide/test-sample.html +4265 -0
  672. data/site-local/testing-guide/test-suite-anatomy.html +4249 -0
  673. data/spec/manual/stress_test.rb +1 -1
  674. data/spec/support/other_target.yml +1 -1
  675. data/spec/support/spec_helper.rb +20 -0
  676. data/spec/support/system/gem_dir_layout.rb +20 -0
  677. data/spec/support/system/spec_system_helper.rb +206 -0
  678. data/spec/support/system/system_context.rb +310 -0
  679. data/spec/support/system/system_test_output.rb +28 -0
  680. data/spec/support/target.yml +1 -1
  681. data/spec/system/cppcheck_deployment_spec.rb +49 -0
  682. data/spec/system/deployment_as_gem_spec.rb +86 -48
  683. data/spec/system/deployment_as_vendor_spec.rb +141 -79
  684. data/spec/system/encoding_stress_spec.rb +153 -0
  685. data/spec/system/example_cipher_quest_spec.rb +186 -0
  686. data/spec/system/example_temp_sensor_spec.rb +41 -35
  687. data/spec/system/example_wondrous_forest_spec.rb +117 -0
  688. data/spec/{gcov → system}/gcov_deployment_spec.rb +55 -26
  689. data/spec/system/mixin_ordering_spec.rb +548 -0
  690. data/spec/system/preprocessing_encoding_spec.rb +114 -0
  691. data/spec/system/preprocessing_fallback_conditionals_spec.rb +166 -0
  692. data/spec/system/preprocessing_locale_spec.rb +153 -0
  693. data/spec/system/preprocessing_parameterized_tests_spec.rb +183 -0
  694. data/spec/system/ruby_replacement_spec.rb +141 -0
  695. data/spec/{spec_system_helper.rb → system/support/common_test_cases.rb} +301 -350
  696. data/spec/system/support/cppcheck_common_test_cases.rb +98 -0
  697. data/spec/system/support/cppcheck_helpers.rb +27 -0
  698. data/spec/{gcov/gcov_test_cases_spec.rb → system/support/gcov_common_test_cases.rb} +224 -111
  699. data/spec/system/support/gcov_helpers.rb +81 -0
  700. data/spec/system/support/valgrind_common_test_cases.rb +120 -0
  701. data/spec/system/support/valgrind_helpers.rb +21 -0
  702. data/spec/system/upgrade_as_vendor_spec.rb +74 -39
  703. data/spec/system/valgrind_deployment_spec.rb +53 -0
  704. data/spec/units/bin/cli_helper_spec.rb +69 -0
  705. data/spec/units/bin/merginator_spec.rb +279 -0
  706. data/spec/units/bin/mixin_standardizer_spec.rb +231 -0
  707. data/spec/units/bin/mixinator_spec.rb +583 -0
  708. data/spec/units/bin/projectinator_mixin_spec.rb +362 -0
  709. data/spec/units/bin/recursive_merger_spec.rb +241 -0
  710. data/spec/units/c_extractor/c_extractor_code_text_spec.rb +2091 -0
  711. data/spec/units/c_extractor/c_extractor_declarations_spec.rb +746 -0
  712. data/spec/units/c_extractor/c_extractor_definitions_spec.rb +417 -0
  713. data/spec/units/c_extractor/c_extractor_functions_spec.rb +2742 -0
  714. data/spec/units/c_extractor/c_extractor_integration_spec.rb +935 -0
  715. data/spec/units/c_extractor/c_extractor_preprocessing_spec.rb +497 -0
  716. data/spec/units/c_extractor/c_extractor_spec.rb +356 -0
  717. data/spec/units/config_matchinator_spec.rb +401 -0
  718. data/spec/{config_walkinator_spec.rb → units/config_walkinator_spec.rb} +2 -2
  719. data/spec/{configurator_builder_spec.rb → units/configurator_builder_spec.rb} +1 -1
  720. data/spec/units/configurator_spec.rb +187 -0
  721. data/spec/{file_finder_helper_spec.rb → units/file_finder_helper_spec.rb} +1 -1
  722. data/spec/units/file_path_collection_utils_spec.rb +222 -0
  723. data/spec/units/file_path_utils_spec.rb +274 -0
  724. data/spec/units/generators/generator_helper_spec.rb +112 -0
  725. data/spec/units/generators/generator_partials_spec.rb +795 -0
  726. data/spec/units/generators/generator_test_results_backtrace_spec.rb +492 -0
  727. data/spec/{generator_test_results_sanity_checker_spec.rb → units/generators/generator_test_results_sanity_checker_spec.rb} +5 -4
  728. data/spec/units/generators/generator_test_results_spec.rb +412 -0
  729. data/spec/units/generators/generator_test_runner_spec.rb +120 -0
  730. data/spec/units/includes/include_spec.rb +716 -0
  731. data/spec/units/includes/includes_spec.rb +1069 -0
  732. data/spec/units/parsing_parcels_spec.rb +139 -0
  733. data/spec/units/partials/partializer_config_spec.rb +388 -0
  734. data/spec/units/partials/partializer_helper_spec.rb +992 -0
  735. data/spec/units/partials/partializer_spec.rb +1629 -0
  736. data/spec/units/partials/partializer_utils_spec.rb +587 -0
  737. data/spec/units/plugin_manager_spec.rb +48 -0
  738. data/spec/units/plugins/cppcheck_spec.rb +557 -0
  739. data/spec/units/preprocess/c_comment_scanner_spec.rb +409 -0
  740. data/spec/units/preprocess/c_preprocessor_conditionals_spec.rb +396 -0
  741. data/spec/units/preprocess/preprocessinator_code_finder_spec.rb +361 -0
  742. data/spec/units/preprocess/preprocessinator_comment_stripper_spec.rb +580 -0
  743. data/spec/units/preprocess/preprocessinator_file_assembler_spec.rb +263 -0
  744. data/spec/units/preprocess/preprocessinator_includes_handler_spec.rb +337 -0
  745. data/spec/{preprocessinator_extractor_spec.rb → units/preprocess/preprocessinator_reconstructor_spec.rb} +297 -5
  746. data/spec/units/reportinator_spec.rb +251 -0
  747. data/spec/units/ruby_expandinator_spec.rb +91 -0
  748. data/spec/{system_utils_spec.rb → units/system_utils_spec.rb} +4 -4
  749. data/spec/units/test_context_extractor_spec.rb +437 -0
  750. data/spec/{tool_executor_helper_spec.rb → units/tool_executor_helper_spec.rb} +19 -33
  751. data/spec/units/tool_executor_spec.rb +83 -0
  752. data/spec/units/tool_validator_spec.rb +60 -0
  753. data/spec/units/yaml_wrapper_spec.rb +108 -0
  754. data/vendor/cmock/Gemfile +4 -1
  755. data/vendor/cmock/LICENSE.txt +1 -1
  756. data/vendor/cmock/config/production_environment.rb +1 -1
  757. data/vendor/cmock/config/test_environment.rb +1 -1
  758. data/vendor/cmock/docs/CMockChangeLog.md +47 -0
  759. data/vendor/cmock/docs/CMockKnownIssues.md +0 -1
  760. data/vendor/cmock/docs/CMock_ArgumentValidation.md +180 -25
  761. data/vendor/cmock/docs/CMock_Summary.md +158 -16
  762. data/vendor/cmock/examples/make_example/Makefile +1 -1
  763. data/vendor/cmock/examples/make_example/src/foo.c +1 -1
  764. data/vendor/cmock/examples/make_example/src/foo.h +1 -1
  765. data/vendor/cmock/examples/make_example/src/main.c +1 -1
  766. data/vendor/cmock/examples/make_example/test/test_foo.c +1 -1
  767. data/vendor/cmock/examples/make_example/test/test_main.c +2 -2
  768. data/vendor/cmock/examples/temp_sensor/project.yml +75 -0
  769. data/vendor/cmock/examples/temp_sensor/rakefile.rb +3 -3
  770. data/vendor/cmock/examples/temp_sensor/rakefile_helper.rb +163 -119
  771. data/vendor/cmock/examples/temp_sensor/src/AT91SAM7X256.h +1 -1
  772. data/vendor/cmock/examples/temp_sensor/src/AdcConductor.c +1 -1
  773. data/vendor/cmock/examples/temp_sensor/src/AdcConductor.h +1 -1
  774. data/vendor/cmock/examples/temp_sensor/src/AdcHardware.c +1 -1
  775. data/vendor/cmock/examples/temp_sensor/src/AdcHardware.h +1 -1
  776. data/vendor/cmock/examples/temp_sensor/src/AdcHardwareConfigurator.c +1 -1
  777. data/vendor/cmock/examples/temp_sensor/src/AdcHardwareConfigurator.h +1 -1
  778. data/vendor/cmock/examples/temp_sensor/src/AdcModel.c +3 -1
  779. data/vendor/cmock/examples/temp_sensor/src/AdcModel.h +1 -1
  780. data/vendor/cmock/examples/temp_sensor/src/AdcTemperatureSensor.c +1 -1
  781. data/vendor/cmock/examples/temp_sensor/src/AdcTemperatureSensor.h +1 -1
  782. data/vendor/cmock/examples/temp_sensor/src/Executor.c +1 -1
  783. data/vendor/cmock/examples/temp_sensor/src/Executor.h +1 -1
  784. data/vendor/cmock/examples/temp_sensor/src/IntrinsicsWrapper.c +1 -1
  785. data/vendor/cmock/examples/temp_sensor/src/IntrinsicsWrapper.h +1 -1
  786. data/vendor/cmock/examples/temp_sensor/src/Main.c +1 -1
  787. data/vendor/cmock/examples/temp_sensor/src/Main.h +1 -1
  788. data/vendor/cmock/examples/temp_sensor/src/Model.c +1 -1
  789. data/vendor/cmock/examples/temp_sensor/src/Model.h +1 -1
  790. data/vendor/cmock/examples/temp_sensor/src/ModelConfig.h +1 -1
  791. data/vendor/cmock/examples/temp_sensor/src/TaskScheduler.c +1 -1
  792. data/vendor/cmock/examples/temp_sensor/src/TaskScheduler.h +1 -1
  793. data/vendor/cmock/examples/temp_sensor/src/TemperatureCalculator.c +1 -1
  794. data/vendor/cmock/examples/temp_sensor/src/TemperatureCalculator.h +1 -1
  795. data/vendor/cmock/examples/temp_sensor/src/TemperatureFilter.c +2 -2
  796. data/vendor/cmock/examples/temp_sensor/src/TemperatureFilter.h +1 -1
  797. data/vendor/cmock/examples/temp_sensor/src/TimerConductor.c +1 -1
  798. data/vendor/cmock/examples/temp_sensor/src/TimerConductor.h +1 -1
  799. data/vendor/cmock/examples/temp_sensor/src/TimerConfigurator.c +2 -2
  800. data/vendor/cmock/examples/temp_sensor/src/TimerConfigurator.h +1 -1
  801. data/vendor/cmock/examples/temp_sensor/src/TimerHardware.c +1 -1
  802. data/vendor/cmock/examples/temp_sensor/src/TimerHardware.h +1 -1
  803. data/vendor/cmock/examples/temp_sensor/src/TimerInterruptConfigurator.c +10 -1
  804. data/vendor/cmock/examples/temp_sensor/src/TimerInterruptConfigurator.h +1 -1
  805. data/vendor/cmock/examples/temp_sensor/src/TimerInterruptHandler.c +1 -1
  806. data/vendor/cmock/examples/temp_sensor/src/TimerInterruptHandler.h +1 -1
  807. data/vendor/cmock/examples/temp_sensor/src/TimerModel.c +1 -1
  808. data/vendor/cmock/examples/temp_sensor/src/TimerModel.h +1 -1
  809. data/vendor/cmock/examples/temp_sensor/src/Types.h +1 -1
  810. data/vendor/cmock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c +1 -1
  811. data/vendor/cmock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.h +1 -1
  812. data/vendor/cmock/examples/temp_sensor/src/UsartConductor.c +1 -1
  813. data/vendor/cmock/examples/temp_sensor/src/UsartConductor.h +1 -1
  814. data/vendor/cmock/examples/temp_sensor/src/UsartConfigurator.c +1 -1
  815. data/vendor/cmock/examples/temp_sensor/src/UsartConfigurator.h +1 -1
  816. data/vendor/cmock/examples/temp_sensor/src/UsartHardware.c +1 -1
  817. data/vendor/cmock/examples/temp_sensor/src/UsartHardware.h +1 -1
  818. data/vendor/cmock/examples/temp_sensor/src/UsartModel.c +2 -2
  819. data/vendor/cmock/examples/temp_sensor/src/UsartModel.h +1 -1
  820. data/vendor/cmock/examples/temp_sensor/src/UsartPutChar.c +2 -2
  821. data/vendor/cmock/examples/temp_sensor/src/UsartPutChar.h +1 -1
  822. data/vendor/cmock/examples/temp_sensor/src/UsartTransmitBufferStatus.c +1 -1
  823. data/vendor/cmock/examples/temp_sensor/src/UsartTransmitBufferStatus.h +1 -1
  824. data/vendor/cmock/examples/temp_sensor/test/TestAdcConductor.c +1 -1
  825. data/vendor/cmock/examples/temp_sensor/test/TestAdcHardware.c +1 -1
  826. data/vendor/cmock/examples/temp_sensor/test/TestAdcHardwareConfigurator.c +1 -1
  827. data/vendor/cmock/examples/temp_sensor/test/TestAdcModel.c +1 -1
  828. data/vendor/cmock/examples/temp_sensor/test/TestAdcTemperatureSensor.c +1 -1
  829. data/vendor/cmock/examples/temp_sensor/test/TestExecutor.c +1 -1
  830. data/vendor/cmock/examples/temp_sensor/test/TestMain.c +1 -1
  831. data/vendor/cmock/examples/temp_sensor/test/TestModel.c +1 -1
  832. data/vendor/cmock/examples/temp_sensor/test/TestTaskScheduler.c +1 -1
  833. data/vendor/cmock/examples/temp_sensor/test/TestTemperatureCalculator.c +1 -1
  834. data/vendor/cmock/examples/temp_sensor/test/TestTemperatureFilter.c +2 -2
  835. data/vendor/cmock/examples/temp_sensor/test/TestTimerConductor.c +1 -1
  836. data/vendor/cmock/examples/temp_sensor/test/TestTimerConfigurator.c +1 -1
  837. data/vendor/cmock/examples/temp_sensor/test/TestTimerHardware.c +1 -1
  838. data/vendor/cmock/examples/temp_sensor/test/TestTimerInterruptConfigurator.c +1 -1
  839. data/vendor/cmock/examples/temp_sensor/test/TestTimerInterruptHandler.c +1 -1
  840. data/vendor/cmock/examples/temp_sensor/test/TestTimerModel.c +1 -1
  841. data/vendor/cmock/examples/temp_sensor/test/TestUsartBaudRateRegisterCalculator.c +1 -1
  842. data/vendor/cmock/examples/temp_sensor/test/TestUsartConductor.c +7 -5
  843. data/vendor/cmock/examples/temp_sensor/test/TestUsartConfigurator.c +1 -1
  844. data/vendor/cmock/examples/temp_sensor/test/TestUsartHardware.c +3 -2
  845. data/vendor/cmock/examples/temp_sensor/test/TestUsartModel.c +1 -1
  846. data/vendor/cmock/examples/temp_sensor/test/TestUsartPutChar.c +1 -1
  847. data/vendor/cmock/examples/temp_sensor/test/TestUsartTransmitBufferStatus.c +1 -1
  848. data/vendor/cmock/lib/cmock.rb +1 -1
  849. data/vendor/cmock/lib/cmock_config.rb +8 -2
  850. data/vendor/cmock/lib/cmock_file_writer.rb +38 -1
  851. data/vendor/cmock/lib/cmock_generator.rb +44 -27
  852. data/vendor/cmock/lib/cmock_generator_plugin_array.rb +68 -15
  853. data/vendor/cmock/lib/cmock_generator_plugin_callback.rb +13 -3
  854. data/vendor/cmock/lib/cmock_generator_plugin_cexception.rb +12 -3
  855. data/vendor/cmock/lib/cmock_generator_plugin_expect.rb +33 -15
  856. data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +13 -8
  857. data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +15 -10
  858. data/vendor/cmock/lib/cmock_generator_plugin_ignore_arg.rb +4 -2
  859. data/vendor/cmock/lib/cmock_generator_plugin_ignore_stateless.rb +15 -10
  860. data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +53 -3
  861. data/vendor/cmock/lib/cmock_generator_utils.rb +159 -43
  862. data/vendor/cmock/lib/cmock_header_parser.rb +217 -26
  863. data/vendor/cmock/lib/cmock_plugin_manager.rb +1 -1
  864. data/vendor/cmock/lib/cmock_unityhelper_parser.rb +7 -2
  865. data/vendor/cmock/lib/cmock_version.rb +1 -1
  866. data/vendor/cmock/scripts/create_makefile.rb +7 -5
  867. data/vendor/cmock/src/cmock.c +132 -129
  868. data/vendor/cmock/src/cmock.h +7 -13
  869. data/vendor/cmock/src/cmock_internals.h +73 -39
  870. data/vendor/cmock/test/c/TestCMockC.c +1 -7
  871. data/vendor/cmock/test/c/TestCMockC.yml +1 -1
  872. data/vendor/cmock/test/c/TestCMockCDynamic.c +1 -7
  873. data/vendor/cmock/test/c/TestCMockCDynamic.yml +1 -1
  874. data/vendor/cmock/test/c/TestCMockCDynamic_Runner.c +1 -7
  875. data/vendor/cmock/test/c/TestCMockC_Runner.c +1 -7
  876. data/vendor/cmock/{vendor/unity/test/targets/gcc_manual_math.yml → test/gcc_64_valgrind.yml} +8 -17
  877. data/vendor/cmock/test/iar/iar_v4/incIAR/AT91SAM7X-EK.h +1 -1
  878. data/vendor/cmock/test/iar/iar_v4/incIAR/AT91SAM7X256_inc.h +1 -1
  879. data/vendor/cmock/test/iar/iar_v4/incIAR/ioat91sam7x256.h +1 -1
  880. data/vendor/cmock/test/iar/iar_v4/srcIAR/Cstartup_SAM7.c +1 -1
  881. data/vendor/cmock/test/iar/iar_v5/incIAR/AT91SAM7X-EK.h +1 -1
  882. data/vendor/cmock/test/iar/iar_v5/incIAR/AT91SAM7X256_inc.h +1 -1
  883. data/vendor/cmock/test/iar/iar_v5/incIAR/project.h +1 -1
  884. data/vendor/cmock/test/iar/iar_v5/srcIAR/Cstartup_SAM7.c +1 -1
  885. data/vendor/cmock/test/project.yml +32 -0
  886. data/vendor/cmock/test/rakefile +74 -58
  887. data/vendor/cmock/test/rakefile_helper.rb +359 -152
  888. data/vendor/cmock/test/system/systest_generator.rb +2 -2
  889. data/vendor/cmock/test/system/test_compilation/callingconv.h +1 -7
  890. data/vendor/cmock/test/system/test_compilation/config.yml +10 -1
  891. data/vendor/cmock/test/system/test_compilation/const.h +7 -13
  892. data/vendor/cmock/test/system/test_compilation/inline.h +1 -2
  893. data/vendor/cmock/test/system/test_compilation/osek.h +1 -7
  894. data/vendor/cmock/test/system/test_compilation/parsing.h +37 -7
  895. data/vendor/cmock/test/system/test_interactions/all_plugins_but_other_limits.yml +5 -13
  896. data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +5 -5
  897. data/vendor/cmock/test/system/test_interactions/array_handling.yml +758 -0
  898. data/vendor/cmock/test/system/test_interactions/basic_expect_and_return.yml +2 -2
  899. data/vendor/cmock/test/system/test_interactions/char_string_array_plugin.yml +113 -0
  900. data/vendor/cmock/test/system/test_interactions/const_custom_type.yml +68 -0
  901. data/vendor/cmock/test/system/test_interactions/const_primitives_handling.yml +4 -3
  902. data/vendor/cmock/test/system/test_interactions/const_ptr_return_and_arg.yml +89 -0
  903. data/vendor/cmock/test/system/test_interactions/debug_output.yml +235 -0
  904. data/vendor/cmock/test/system/test_interactions/doesnt_leave_details_behind.yml +16 -16
  905. data/vendor/cmock/test/system/test_interactions/enforce_strict_ordering.yml +1 -1
  906. data/vendor/cmock/test/system/test_interactions/expect_and_return_custom_types.yml +1 -1
  907. data/vendor/cmock/test/system/test_interactions/expect_and_return_treat_as.yml +3 -3
  908. data/vendor/cmock/test/system/test_interactions/expect_and_throw.yml +1 -1
  909. data/vendor/cmock/test/system/test_interactions/expect_any_args.yml +1 -1
  910. data/vendor/cmock/test/system/test_interactions/fancy_pointer_handling.yml +3 -3
  911. data/vendor/cmock/test/system/test_interactions/function_pointer_handling.yml +1 -1
  912. data/vendor/cmock/test/system/test_interactions/ignore_and_return.yml +1 -1
  913. data/vendor/cmock/test/system/test_interactions/ignore_and_return_stateless.yml +1 -1
  914. data/vendor/cmock/test/system/test_interactions/ignore_strict_mock_calling.yml +1 -1
  915. data/vendor/cmock/test/system/test_interactions/newer_standards_stuff1.yml +1 -1
  916. data/vendor/cmock/test/system/test_interactions/nonstandard_parsed_stuff_1.yml +2 -2
  917. data/vendor/cmock/test/system/test_interactions/nonstandard_parsed_stuff_2.yml +7 -4
  918. data/vendor/cmock/test/system/test_interactions/out_of_memory.yml +65 -8
  919. data/vendor/cmock/test/system/test_interactions/parsing_challenges.yml +1 -1
  920. data/vendor/cmock/test/system/test_interactions/parsing_challenges_with_func_pointers.yml +88 -0
  921. data/vendor/cmock/test/system/test_interactions/pointer_handling.yml +465 -0
  922. data/vendor/cmock/test/system/test_interactions/{return_thru_ptr_and_expect_any_args.yml → return_thru_ptr_expect_any_args.yml} +9 -13
  923. data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore.yml +142 -0
  924. data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore_arg.yml +13 -9
  925. data/vendor/cmock/test/system/test_interactions/skeleton.yml +1 -1
  926. data/vendor/cmock/test/system/test_interactions/skeleton_update.yml +1 -1
  927. data/vendor/cmock/test/system/test_interactions/struct_union_enum_expect_and_return.yml +1 -1
  928. data/vendor/cmock/test/system/test_interactions/struct_union_enum_expect_and_return_with_plugins.yml +1 -1
  929. data/vendor/cmock/test/system/test_interactions/stubs_with_callbacks.yml +14 -2
  930. data/vendor/cmock/test/system/test_interactions/teardown_mock_calls.yml +57 -0
  931. data/vendor/cmock/test/system/test_interactions/teardown_mock_expectations.yml +59 -0
  932. data/vendor/cmock/test/system/test_interactions/unity_64bit_support.yml +1 -1
  933. data/vendor/cmock/test/system/test_interactions/unity_ignores.yml +1 -1
  934. data/vendor/cmock/test/system/test_interactions/unity_void_pointer_compare.yml +9 -9
  935. data/vendor/cmock/test/system/test_interactions/void_pointer_no_array_plugin.yml +133 -0
  936. data/vendor/cmock/test/system/test_interactions/void_pointer_treat_as_void_array_plugin.yml +102 -0
  937. data/vendor/cmock/test/system/test_interactions/volatile_pointer_handling.yml +291 -0
  938. data/vendor/cmock/test/system/test_interactions/wrong_expect_and_return.yml +9 -1
  939. data/vendor/cmock/test/targets/iar_arm.yml +14 -0
  940. data/vendor/cmock/test/targets/tiny.yml +36 -0
  941. data/vendor/cmock/test/test_helper.rb +1 -2
  942. data/vendor/cmock/test/unit/cmock_config_test.rb +1 -2
  943. data/vendor/cmock/test/unit/cmock_config_test.yml +1 -1
  944. data/vendor/cmock/test/unit/cmock_file_writer_test.rb +1 -1
  945. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +6 -0
  946. data/vendor/cmock/test/unit/cmock_generator_no_error_stubs_plugin_array_test.rb +90 -0
  947. data/vendor/cmock/test/unit/cmock_generator_no_error_stubs_plugin_expect_any_args_test.rb +38 -0
  948. data/vendor/cmock/test/unit/cmock_generator_no_error_stubs_plugin_expect_test.rb +55 -0
  949. data/vendor/cmock/test/unit/cmock_generator_no_error_stubs_plugin_ignore_stateless_test.rb +42 -0
  950. data/vendor/cmock/test/unit/cmock_generator_no_error_stubs_plugin_ignore_test.rb +42 -0
  951. data/vendor/cmock/test/unit/cmock_generator_plugin_array_test.rb +63 -2
  952. data/vendor/cmock/test/unit/cmock_generator_plugin_callback_test.rb +24 -6
  953. data/vendor/cmock/test/unit/cmock_generator_plugin_cexception_test.rb +1 -1
  954. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_a_test.rb +118 -2
  955. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +2 -2
  956. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_b_test.rb +4 -2
  957. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_arg_test.rb +2 -1
  958. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_stateless_test.rb +2 -2
  959. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +2 -2
  960. data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +135 -3
  961. data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +177 -9
  962. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +705 -109
  963. data/vendor/cmock/test/unit/cmock_plugin_manager_test.rb +4 -2
  964. data/vendor/cmock/test/unit/cmock_unityhelper_parser_test.rb +1 -1
  965. data/vendor/cmock/vendor/unity/CMakeLists.txt +10 -0
  966. data/vendor/cmock/vendor/unity/LICENSE.txt +1 -1
  967. data/vendor/cmock/vendor/unity/README.md +2 -2
  968. data/vendor/cmock/vendor/unity/auto/__init__.py +1 -1
  969. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +1 -1
  970. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +7 -1
  971. data/vendor/cmock/vendor/unity/auto/extract_version.py +1 -1
  972. data/vendor/cmock/vendor/unity/auto/generate_config.yml +1 -1
  973. data/vendor/cmock/vendor/unity/auto/generate_module.rb +6 -6
  974. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +95 -14
  975. data/vendor/cmock/vendor/unity/auto/parse_output.rb +10 -7
  976. data/vendor/cmock/vendor/unity/auto/stylize_as_junit.py +4 -3
  977. data/vendor/cmock/vendor/unity/auto/stylize_as_junit.rb +4 -2
  978. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +1 -1
  979. data/vendor/cmock/vendor/unity/auto/type_sanitizer.rb +1 -1
  980. data/vendor/cmock/vendor/unity/auto/unity_test_summary.py +2 -2
  981. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +5 -2
  982. data/vendor/cmock/vendor/unity/auto/yaml_helper.rb +1 -1
  983. data/vendor/cmock/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +2 -2
  984. data/vendor/cmock/vendor/unity/docs/UnityAssertionsReference.md +66 -1
  985. data/vendor/cmock/vendor/unity/docs/UnityChangeLog.md +41 -0
  986. data/vendor/cmock/vendor/unity/docs/UnityConfigurationGuide.md +2 -2
  987. data/vendor/cmock/vendor/unity/docs/UnityHelperScriptsGuide.md +28 -12
  988. data/vendor/cmock/vendor/unity/examples/example_1/makefile +1 -1
  989. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.c +1 -1
  990. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.h +1 -1
  991. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.c +1 -1
  992. data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.h +1 -1
  993. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode.c +1 -1
  994. data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode2.c +1 -1
  995. data/vendor/cmock/vendor/unity/examples/example_2/makefile +1 -1
  996. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.c +1 -1
  997. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.h +1 -1
  998. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.c +1 -1
  999. data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.h +1 -1
  1000. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode.c +1 -1
  1001. data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode2.c +1 -1
  1002. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +1 -1
  1003. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +1 -1
  1004. data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/all_tests.c +1 -1
  1005. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.c +1 -1
  1006. data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.h +1 -1
  1007. data/vendor/cmock/vendor/unity/examples/example_3/project.yml +24 -0
  1008. data/vendor/cmock/vendor/unity/examples/example_3/rakefile.rb +2 -3
  1009. data/vendor/cmock/vendor/unity/examples/example_3/rakefile_helper.rb +107 -153
  1010. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.c +3 -3
  1011. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.h +1 -1
  1012. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.c +1 -1
  1013. data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.h +1 -1
  1014. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode.c +1 -1
  1015. data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode2.c +1 -1
  1016. data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode.c +1 -1
  1017. data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode.h +1 -1
  1018. data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode2.c +1 -1
  1019. data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode2.h +1 -1
  1020. data/vendor/cmock/vendor/unity/examples/example_4/test/TestProductionCode.c +1 -1
  1021. data/vendor/cmock/vendor/unity/examples/example_4/test/TestProductionCode2.c +1 -1
  1022. data/vendor/cmock/vendor/unity/examples/example_5/makefile +63 -0
  1023. data/vendor/cmock/vendor/unity/examples/example_5/readme.txt +38 -0
  1024. data/vendor/cmock/vendor/unity/examples/example_5/src/ProductionCode.c +56 -0
  1025. data/vendor/cmock/vendor/unity/examples/example_5/src/ProductionCode.h +16 -0
  1026. data/vendor/cmock/vendor/unity/examples/example_5/subprojects/unity.wrap +3 -0
  1027. data/vendor/cmock/vendor/unity/examples/example_5/test/TestProductionCode.c +45 -0
  1028. data/vendor/cmock/vendor/unity/examples/example_5/test/test_runners/TestProductionCode_Runner.c +48 -0
  1029. data/vendor/cmock/vendor/unity/examples/example_5/test/unity_detail_config.h +25 -0
  1030. data/vendor/cmock/vendor/unity/examples/unity_config.h +5 -3
  1031. data/vendor/cmock/vendor/unity/extras/bdd/src/unity_bdd.h +1 -1
  1032. data/vendor/cmock/vendor/unity/extras/bdd/test/test_bdd.c +1 -1
  1033. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +59 -15
  1034. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +1 -1
  1035. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +4 -1
  1036. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +1 -1
  1037. data/vendor/cmock/vendor/unity/extras/fixture/test/template_fixture_tests.c +1 -1
  1038. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +46 -1
  1039. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +4 -1
  1040. data/vendor/cmock/vendor/unity/extras/memory/src/unity_memory.c +1 -1
  1041. data/vendor/cmock/vendor/unity/extras/memory/src/unity_memory.h +1 -1
  1042. data/vendor/cmock/vendor/unity/extras/memory/test/unity_memory_Test.c +1 -1
  1043. data/vendor/cmock/vendor/unity/extras/memory/test/unity_memory_TestRunner.c +1 -1
  1044. data/vendor/cmock/vendor/unity/extras/memory/test/unity_output_Spy.c +1 -1
  1045. data/vendor/cmock/vendor/unity/extras/memory/test/unity_output_Spy.h +1 -1
  1046. data/vendor/cmock/vendor/unity/library.json +0 -7
  1047. data/vendor/cmock/vendor/unity/meson.build +16 -8
  1048. data/vendor/cmock/vendor/unity/meson_options.txt +5 -3
  1049. data/vendor/cmock/vendor/unity/src/unity.c +480 -141
  1050. data/vendor/cmock/vendor/unity/src/unity.h +16 -4
  1051. data/vendor/cmock/vendor/unity/src/unity_internals.h +291 -148
  1052. data/vendor/cmock/vendor/unity/test/Makefile +4 -6
  1053. data/vendor/cmock/vendor/unity/test/rakefile +42 -21
  1054. data/vendor/cmock/vendor/unity/test/rakefile_helper.rb +154 -15
  1055. data/vendor/cmock/vendor/unity/test/spec/generate_module_existing_file_spec.rb +1 -1
  1056. data/vendor/cmock/vendor/unity/test/targets/clang.yml +157 -0
  1057. data/vendor/cmock/vendor/unity/test/targets/gcc.yml +139 -0
  1058. data/vendor/cmock/vendor/unity/test/targets/hitech_picc18.yml +9 -16
  1059. data/vendor/cmock/vendor/unity/test/targets/iar_arm.yml +88 -0
  1060. data/vendor/cmock/vendor/unity/test/targets/no_stdlib.yml +23 -0
  1061. data/vendor/cmock/vendor/unity/test/testdata/CException.h +1 -1
  1062. data/vendor/cmock/vendor/unity/test/testdata/Defs.h +1 -1
  1063. data/vendor/cmock/vendor/unity/test/testdata/cmock.h +1 -1
  1064. data/vendor/cmock/vendor/unity/test/testdata/mockMock.h +1 -1
  1065. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGenerator.c +1 -1
  1066. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +1 -1
  1067. data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +1 -1
  1068. data/vendor/cmock/vendor/unity/test/tests/self_assessment_utils.h +23 -7
  1069. data/vendor/cmock/vendor/unity/test/tests/test_generate_test_runner.rb +1 -4
  1070. data/vendor/cmock/vendor/unity/test/tests/test_unity_arrays.c +1 -1
  1071. data/vendor/cmock/vendor/unity/test/tests/test_unity_core.c +33 -38
  1072. data/vendor/cmock/vendor/unity/test/tests/test_unity_doubles.c +4 -4
  1073. data/vendor/cmock/vendor/unity/test/tests/test_unity_floats.c +15 -6
  1074. data/vendor/cmock/vendor/unity/test/tests/test_unity_integers.c +35 -1
  1075. data/vendor/cmock/vendor/unity/test/tests/test_unity_integers_64.c +1 -1
  1076. data/vendor/cmock/vendor/unity/test/tests/test_unity_memory.c +69 -1
  1077. data/vendor/cmock/vendor/unity/test/tests/test_unity_parameterized.c +5 -5
  1078. data/vendor/cmock/vendor/unity/test/tests/test_unity_parameterizedDemo.c +1 -1
  1079. data/vendor/cmock/vendor/unity/test/tests/test_unity_strings.c +65 -1
  1080. data/vendor/cmock/vendor/unity/test/tests/types_for_test.h +1 -1
  1081. data/vendor/unity/CMakeLists.txt +10 -0
  1082. data/vendor/unity/LICENSE.txt +1 -1
  1083. data/vendor/unity/README.md +2 -2
  1084. data/vendor/unity/auto/__init__.py +1 -1
  1085. data/vendor/unity/auto/colour_prompt.rb +1 -1
  1086. data/vendor/unity/auto/colour_reporter.rb +7 -1
  1087. data/vendor/unity/auto/extract_version.py +1 -1
  1088. data/vendor/unity/auto/generate_config.yml +1 -1
  1089. data/vendor/unity/auto/generate_module.rb +6 -6
  1090. data/vendor/unity/auto/generate_test_runner.rb +95 -14
  1091. data/vendor/unity/auto/parse_output.rb +10 -7
  1092. data/vendor/unity/auto/stylize_as_junit.py +4 -3
  1093. data/vendor/unity/auto/stylize_as_junit.rb +4 -2
  1094. data/vendor/unity/auto/test_file_filter.rb +1 -1
  1095. data/vendor/unity/auto/type_sanitizer.rb +1 -1
  1096. data/vendor/unity/auto/unity_test_summary.py +2 -2
  1097. data/vendor/unity/auto/unity_test_summary.rb +5 -2
  1098. data/vendor/unity/auto/yaml_helper.rb +1 -1
  1099. data/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +2 -2
  1100. data/vendor/unity/docs/UnityAssertionsReference.md +66 -1
  1101. data/vendor/unity/docs/UnityChangeLog.md +41 -0
  1102. data/vendor/unity/docs/UnityConfigurationGuide.md +2 -2
  1103. data/vendor/unity/docs/UnityHelperScriptsGuide.md +28 -12
  1104. data/vendor/unity/examples/example_1/makefile +1 -1
  1105. data/vendor/unity/examples/example_1/src/ProductionCode.c +1 -1
  1106. data/vendor/unity/examples/example_1/src/ProductionCode.h +1 -1
  1107. data/vendor/unity/examples/example_1/src/ProductionCode2.c +1 -1
  1108. data/vendor/unity/examples/example_1/src/ProductionCode2.h +1 -1
  1109. data/vendor/unity/examples/example_1/test/TestProductionCode.c +1 -1
  1110. data/vendor/unity/examples/example_1/test/TestProductionCode2.c +1 -1
  1111. data/vendor/unity/examples/example_2/makefile +1 -1
  1112. data/vendor/unity/examples/example_2/src/ProductionCode.c +1 -1
  1113. data/vendor/unity/examples/example_2/src/ProductionCode.h +1 -1
  1114. data/vendor/unity/examples/example_2/src/ProductionCode2.c +1 -1
  1115. data/vendor/unity/examples/example_2/src/ProductionCode2.h +1 -1
  1116. data/vendor/unity/examples/example_2/test/TestProductionCode.c +1 -1
  1117. data/vendor/unity/examples/example_2/test/TestProductionCode2.c +1 -1
  1118. data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +1 -1
  1119. data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +1 -1
  1120. data/vendor/unity/examples/example_2/test/test_runners/all_tests.c +1 -1
  1121. data/vendor/unity/examples/example_3/helper/UnityHelper.c +1 -1
  1122. data/vendor/unity/examples/example_3/helper/UnityHelper.h +1 -1
  1123. data/vendor/unity/examples/example_3/project.yml +24 -0
  1124. data/vendor/unity/examples/example_3/rakefile.rb +2 -3
  1125. data/vendor/unity/examples/example_3/rakefile_helper.rb +107 -153
  1126. data/vendor/unity/examples/example_3/src/ProductionCode.c +3 -3
  1127. data/vendor/unity/examples/example_3/src/ProductionCode.h +1 -1
  1128. data/vendor/unity/examples/example_3/src/ProductionCode2.c +1 -1
  1129. data/vendor/unity/examples/example_3/src/ProductionCode2.h +1 -1
  1130. data/vendor/unity/examples/example_3/test/TestProductionCode.c +1 -1
  1131. data/vendor/unity/examples/example_3/test/TestProductionCode2.c +1 -1
  1132. data/vendor/unity/examples/example_4/src/ProductionCode.c +1 -1
  1133. data/vendor/unity/examples/example_4/src/ProductionCode.h +1 -1
  1134. data/vendor/unity/examples/example_4/src/ProductionCode2.c +1 -1
  1135. data/vendor/unity/examples/example_4/src/ProductionCode2.h +1 -1
  1136. data/vendor/unity/examples/example_4/test/TestProductionCode.c +1 -1
  1137. data/vendor/unity/examples/example_4/test/TestProductionCode2.c +1 -1
  1138. data/vendor/unity/examples/example_5/makefile +63 -0
  1139. data/vendor/unity/examples/example_5/readme.txt +38 -0
  1140. data/vendor/unity/examples/example_5/src/ProductionCode.c +56 -0
  1141. data/vendor/unity/examples/example_5/src/ProductionCode.h +16 -0
  1142. data/vendor/unity/examples/example_5/subprojects/unity.wrap +3 -0
  1143. data/vendor/unity/examples/example_5/test/TestProductionCode.c +45 -0
  1144. data/vendor/unity/examples/example_5/test/test_runners/TestProductionCode_Runner.c +48 -0
  1145. data/vendor/unity/examples/example_5/test/unity_detail_config.h +25 -0
  1146. data/vendor/unity/examples/unity_config.h +5 -3
  1147. data/vendor/unity/extras/bdd/src/unity_bdd.h +1 -1
  1148. data/vendor/unity/extras/bdd/test/test_bdd.c +1 -1
  1149. data/vendor/unity/extras/fixture/src/unity_fixture.c +59 -15
  1150. data/vendor/unity/extras/fixture/src/unity_fixture.h +1 -1
  1151. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +4 -1
  1152. data/vendor/unity/extras/fixture/test/main/AllTests.c +1 -1
  1153. data/vendor/unity/extras/fixture/test/template_fixture_tests.c +1 -1
  1154. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +46 -1
  1155. data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +4 -1
  1156. data/vendor/unity/extras/memory/src/unity_memory.c +1 -1
  1157. data/vendor/unity/extras/memory/src/unity_memory.h +1 -1
  1158. data/vendor/unity/extras/memory/test/unity_memory_Test.c +1 -1
  1159. data/vendor/unity/extras/memory/test/unity_memory_TestRunner.c +1 -1
  1160. data/vendor/unity/extras/memory/test/unity_output_Spy.c +1 -1
  1161. data/vendor/unity/extras/memory/test/unity_output_Spy.h +1 -1
  1162. data/vendor/unity/library.json +0 -7
  1163. data/vendor/unity/meson.build +16 -8
  1164. data/vendor/unity/meson_options.txt +5 -3
  1165. data/vendor/unity/src/unity.c +480 -141
  1166. data/vendor/unity/src/unity.h +16 -4
  1167. data/vendor/unity/src/unity_internals.h +291 -148
  1168. data/vendor/unity/test/Makefile +4 -6
  1169. data/vendor/unity/test/rakefile +42 -21
  1170. data/vendor/unity/test/rakefile_helper.rb +154 -15
  1171. data/vendor/unity/test/spec/generate_module_existing_file_spec.rb +1 -1
  1172. data/vendor/unity/test/targets/clang.yml +157 -0
  1173. data/vendor/unity/test/targets/gcc.yml +139 -0
  1174. data/vendor/unity/test/targets/hitech_picc18.yml +9 -16
  1175. data/vendor/unity/test/targets/iar_arm.yml +88 -0
  1176. data/vendor/unity/test/targets/no_stdlib.yml +23 -0
  1177. data/vendor/unity/test/testdata/CException.h +1 -1
  1178. data/vendor/unity/test/testdata/Defs.h +1 -1
  1179. data/vendor/unity/test/testdata/cmock.h +1 -1
  1180. data/vendor/unity/test/testdata/mockMock.h +1 -1
  1181. data/vendor/unity/test/testdata/testRunnerGenerator.c +1 -1
  1182. data/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +1 -1
  1183. data/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +1 -1
  1184. data/vendor/unity/test/tests/self_assessment_utils.h +23 -7
  1185. data/vendor/unity/test/tests/test_generate_test_runner.rb +1 -4
  1186. data/vendor/unity/test/tests/test_unity_arrays.c +1 -1
  1187. data/vendor/unity/test/tests/test_unity_core.c +33 -38
  1188. data/vendor/unity/test/tests/test_unity_doubles.c +4 -4
  1189. data/vendor/unity/test/tests/test_unity_floats.c +15 -6
  1190. data/vendor/unity/test/tests/test_unity_integers.c +35 -1
  1191. data/vendor/unity/test/tests/test_unity_integers_64.c +1 -1
  1192. data/vendor/unity/test/tests/test_unity_memory.c +69 -1
  1193. data/vendor/unity/test/tests/test_unity_parameterized.c +5 -5
  1194. data/vendor/unity/test/tests/test_unity_parameterizedDemo.c +1 -1
  1195. data/vendor/unity/test/tests/test_unity_strings.c +65 -1
  1196. data/vendor/unity/test/tests/types_for_test.h +1 -1
  1197. metadata +702 -177
  1198. data/docs/CeedlingPacket.md +0 -5651
  1199. data/lib/ceedling/build_batchinator.rb +0 -113
  1200. data/lib/ceedling/generator_test_results_backtrace.rb +0 -215
  1201. data/lib/ceedling/generator_test_runner.rb +0 -84
  1202. data/lib/ceedling/preprocessinator.rb +0 -239
  1203. data/lib/ceedling/preprocessinator_extractor.rb +0 -257
  1204. data/lib/ceedling/preprocessinator_file_handler.rb +0 -229
  1205. data/lib/ceedling/preprocessinator_includes_handler.rb +0 -382
  1206. data/lib/ceedling/task_invoker.rb +0 -70
  1207. data/lib/ceedling/test_invoker.rb +0 -506
  1208. data/lib/ceedling/test_invoker_helper.rb +0 -347
  1209. data/plugins/gcov/README.md +0 -893
  1210. data/plugins/gcov/lib/reportinator_helper.rb +0 -30
  1211. data/plugins/report_tests_log_factory/sample_html_report.png +0 -0
  1212. data/spec/configurator_spec.rb +0 -18
  1213. data/spec/generator_test_results_spec.rb +0 -131
  1214. data/spec/parsing_parcels_spec.rb +0 -66
  1215. data/spec/preprocessinator_includes_handler_spec.rb +0 -289
  1216. data/spec/reportinator_spec.rb +0 -26
  1217. data/spec/spec_helper.rb +0 -31
  1218. data/spec/test_context_extractor_spec.rb +0 -328
  1219. data/spec/uncategorized_specs_spec.rb +0 -15
  1220. data/vendor/cmock/examples/temp_sensor/targets/gcc.yml +0 -97
  1221. data/vendor/cmock/examples/temp_sensor/targets/iar_v4.yml +0 -143
  1222. data/vendor/cmock/examples/temp_sensor/targets/iar_v5.yml +0 -132
  1223. data/vendor/cmock/scripts/create_mock.rb +0 -15
  1224. data/vendor/cmock/scripts/create_runner.rb +0 -25
  1225. data/vendor/cmock/scripts/test_summary.rb +0 -25
  1226. data/vendor/cmock/test/system/test_interactions/array_and_pointer_handling.yml +0 -453
  1227. data/vendor/cmock/test/targets/clang_strict.yml +0 -97
  1228. data/vendor/cmock/test/targets/gcc.yml +0 -65
  1229. data/vendor/cmock/test/targets/gcc_64.yml +0 -65
  1230. data/vendor/cmock/test/targets/gcc_tiny.yml +0 -87
  1231. data/vendor/cmock/test/targets/iar_arm_v4.yml +0 -117
  1232. data/vendor/cmock/test/targets/iar_arm_v5.yml +0 -102
  1233. data/vendor/cmock/vendor/unity/examples/example_3/target_gcc_32.yml +0 -54
  1234. data/vendor/cmock/vendor/unity/test/targets/ansi.yml +0 -51
  1235. data/vendor/cmock/vendor/unity/test/targets/clang_file.yml +0 -79
  1236. data/vendor/cmock/vendor/unity/test/targets/clang_strict.yml +0 -79
  1237. data/vendor/cmock/vendor/unity/test/targets/gcc_32.yml +0 -52
  1238. data/vendor/cmock/vendor/unity/test/targets/gcc_64.yml +0 -53
  1239. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_limits.yml +0 -50
  1240. data/vendor/cmock/vendor/unity/test/targets/gcc_auto_stdint.yml +0 -62
  1241. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v4.yml +0 -105
  1242. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5.yml +0 -99
  1243. data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5_3.yml +0 -99
  1244. data/vendor/cmock/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -97
  1245. data/vendor/cmock/vendor/unity/test/targets/iar_cortexm3_v5.yml +0 -101
  1246. data/vendor/cmock/vendor/unity/test/targets/iar_msp430.yml +0 -119
  1247. data/vendor/cmock/vendor/unity/test/targets/iar_sh2a_v6.yml +0 -106
  1248. data/vendor/unity/examples/example_3/target_gcc_32.yml +0 -54
  1249. data/vendor/unity/test/targets/ansi.yml +0 -51
  1250. data/vendor/unity/test/targets/clang_file.yml +0 -79
  1251. data/vendor/unity/test/targets/clang_strict.yml +0 -79
  1252. data/vendor/unity/test/targets/gcc_32.yml +0 -52
  1253. data/vendor/unity/test/targets/gcc_64.yml +0 -53
  1254. data/vendor/unity/test/targets/gcc_auto_limits.yml +0 -50
  1255. data/vendor/unity/test/targets/gcc_auto_stdint.yml +0 -62
  1256. data/vendor/unity/test/targets/gcc_manual_math.yml +0 -50
  1257. data/vendor/unity/test/targets/iar_arm_v4.yml +0 -105
  1258. data/vendor/unity/test/targets/iar_arm_v5.yml +0 -99
  1259. data/vendor/unity/test/targets/iar_arm_v5_3.yml +0 -99
  1260. data/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -97
  1261. data/vendor/unity/test/targets/iar_cortexm3_v5.yml +0 -101
  1262. data/vendor/unity/test/targets/iar_msp430.yml +0 -119
  1263. data/vendor/unity/test/targets/iar_sh2a_v6.yml +0 -106
@@ -0,0 +1,4664 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en" class="no-js">
4
+ <head>
5
+
6
+ <meta charset="utf-8">
7
+ <meta name="viewport" content="width=device-width,initial-scale=1">
8
+
9
+ <meta name="description" content="Test-Centered Build System for C">
10
+
11
+
12
+
13
+
14
+ <link rel="prev" href="index.html">
15
+
16
+
17
+ <link rel="next" href="plugins/index.html">
18
+
19
+
20
+
21
+
22
+
23
+ <link rel="icon" href="../assets/images/favicon.png">
24
+ <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.6">
25
+
26
+
27
+
28
+ <title>Development Workflow - Ceedling</title>
29
+
30
+
31
+
32
+ <link rel="stylesheet" href="../assets/stylesheets/main.484c7ddc.min.css">
33
+
34
+
35
+ <link rel="stylesheet" href="../assets/stylesheets/palette.ab4e12ef.min.css">
36
+
37
+
38
+
39
+
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
49
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
50
+ <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
51
+
52
+
53
+
54
+ <link rel="stylesheet" href="../assets/stylesheets/styling.css">
55
+
56
+ <link rel="stylesheet" href="../assets/stylesheets/admonitions.css">
57
+
58
+ <link rel="stylesheet" href="../assets/stylesheets/fixes-local.css">
59
+
60
+ <script>__md_scope=new URL("..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
61
+
62
+
63
+
64
+
65
+
66
+ </head>
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+ <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="green" data-md-color-accent="deep_purple">
77
+
78
+
79
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
80
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
81
+ <label class="md-overlay" for="__drawer"></label>
82
+ <div data-md-component="skip">
83
+
84
+
85
+ <a href="#ceedling-development" class="md-skip">
86
+ Skip to content
87
+ </a>
88
+
89
+ </div>
90
+ <div data-md-component="announce">
91
+
92
+ </div>
93
+
94
+ <div data-md-color-scheme="default" data-md-component="outdated" hidden>
95
+
96
+ </div>
97
+
98
+
99
+
100
+
101
+ <header class="md-header" data-md-component="header">
102
+ <nav class="md-header__inner md-grid" aria-label="Header">
103
+ <a href="../index.html" title="Ceedling" class="md-header__button md-logo" aria-label="Ceedling" data-md-component="logo">
104
+
105
+
106
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
107
+
108
+ </a>
109
+ <label class="md-header__button md-icon" for="__drawer">
110
+
111
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
112
+ </label>
113
+ <div class="md-header__title" data-md-component="header-title">
114
+ <div class="md-header__ellipsis">
115
+ <div class="md-header__topic">
116
+ <span class="md-ellipsis">
117
+ Ceedling
118
+ </span>
119
+ </div>
120
+ <div class="md-header__topic" data-md-component="header-topic">
121
+ <span class="md-ellipsis">
122
+
123
+ Development Workflow
124
+
125
+ </span>
126
+ </div>
127
+ </div>
128
+ </div>
129
+
130
+
131
+ <form class="md-header__option" data-md-component="palette">
132
+
133
+
134
+
135
+
136
+ <input class="md-option" data-md-color-media="" data-md-color-scheme="default" data-md-color-primary="green" data-md-color-accent="deep_purple" aria-hidden="true" type="radio" name="__palette" id="__palette_0">
137
+
138
+
139
+ </form>
140
+
141
+
142
+
143
+ <script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
144
+
145
+
146
+
147
+
148
+ <div class="md-header__source">
149
+ <a href="https://github.com/ThrowTheSwitch/Ceedling" title="Go to repository" class="md-source" data-md-component="source">
150
+ <div class="md-source__icon md-icon">
151
+
152
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M439.6 236.1 244 40.5c-5.4-5.5-12.8-8.5-20.4-8.5s-15 3-20.4 8.4L162.5 81l51.5 51.5c27.1-9.1 52.7 16.8 43.4 43.7l49.7 49.7c34.2-11.8 61.2 31 35.5 56.7-26.5 26.5-70.2-2.9-56-37.3L240.3 199v121.9c25.3 12.5 22.3 41.8 9.1 55-6.4 6.4-15.2 10.1-24.3 10.1s-17.8-3.6-24.3-10.1c-17.6-17.6-11.1-46.9 11.2-56v-123c-20.8-8.5-24.6-30.7-18.6-45L142.6 101 8.5 235.1C3 240.6 0 247.9 0 255.5s3 15 8.5 20.4l195.6 195.7c5.4 5.4 12.7 8.4 20.4 8.4s15-3 20.4-8.4l194.7-194.7c5.4-5.4 8.4-12.8 8.4-20.4s-3-15-8.4-20.4"/></svg>
153
+ </div>
154
+ <div class="md-source__repository">
155
+ ThrowTheSwitch/Ceedling
156
+ </div>
157
+ </a>
158
+ </div>
159
+
160
+ </nav>
161
+
162
+ </header>
163
+
164
+ <div class="md-container" data-md-component="container">
165
+
166
+
167
+
168
+
169
+
170
+ <nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
171
+ <div class="md-grid">
172
+ <ul class="md-tabs__list">
173
+
174
+
175
+
176
+
177
+
178
+
179
+ <li class="md-tabs__item">
180
+ <a href="../index.html" class="md-tabs__link">
181
+
182
+
183
+
184
+
185
+
186
+ Home
187
+
188
+ </a>
189
+ </li>
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+ <li class="md-tabs__item">
201
+ <a href="../overview/index.html" class="md-tabs__link">
202
+
203
+
204
+
205
+
206
+
207
+ Overview
208
+
209
+ </a>
210
+ </li>
211
+
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+ <li class="md-tabs__item">
223
+ <a href="../getting-started/index.html" class="md-tabs__link">
224
+
225
+
226
+
227
+
228
+
229
+ Getting Started
230
+
231
+ </a>
232
+ </li>
233
+
234
+
235
+
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+
244
+ <li class="md-tabs__item">
245
+ <a href="../testing-guide/index.html" class="md-tabs__link">
246
+
247
+
248
+
249
+
250
+
251
+ Testing Guide
252
+
253
+ </a>
254
+ </li>
255
+
256
+
257
+
258
+
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+ <li class="md-tabs__item">
267
+ <a href="../configuration/index.html" class="md-tabs__link">
268
+
269
+
270
+
271
+
272
+
273
+ Configuration
274
+
275
+ </a>
276
+ </li>
277
+
278
+
279
+
280
+
281
+
282
+
283
+
284
+
285
+
286
+
287
+
288
+ <li class="md-tabs__item">
289
+ <a href="../plugins/index.html" class="md-tabs__link">
290
+
291
+
292
+
293
+
294
+
295
+ Plugins
296
+
297
+ </a>
298
+ </li>
299
+
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+
308
+
309
+
310
+ <li class="md-tabs__item">
311
+ <a href="../reference/index.html" class="md-tabs__link">
312
+
313
+
314
+
315
+
316
+
317
+ Reference
318
+
319
+ </a>
320
+ </li>
321
+
322
+
323
+
324
+
325
+
326
+
327
+
328
+
329
+
330
+
331
+
332
+ <li class="md-tabs__item">
333
+ <a href="../project/release-history.html" class="md-tabs__link">
334
+
335
+
336
+
337
+
338
+
339
+ Releases
340
+
341
+ </a>
342
+ </li>
343
+
344
+
345
+
346
+
347
+
348
+
349
+
350
+
351
+
352
+ <li class="md-tabs__item">
353
+ <a href="../help.html" class="md-tabs__link">
354
+
355
+
356
+
357
+
358
+
359
+ Help
360
+
361
+ </a>
362
+ </li>
363
+
364
+
365
+
366
+
367
+
368
+
369
+
370
+
371
+
372
+
373
+
374
+
375
+ <li class="md-tabs__item md-tabs__item--active">
376
+ <a href="index.html" class="md-tabs__link">
377
+
378
+
379
+
380
+
381
+
382
+ Development
383
+
384
+ </a>
385
+ </li>
386
+
387
+
388
+
389
+
390
+ </ul>
391
+ </div>
392
+ </nav>
393
+
394
+
395
+
396
+ <main class="md-main" data-md-component="main">
397
+ <div class="md-main__inner md-grid">
398
+
399
+
400
+
401
+ <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
402
+ <div class="md-sidebar__scrollwrap">
403
+ <div class="md-sidebar__inner">
404
+
405
+
406
+
407
+
408
+
409
+
410
+ <nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0">
411
+ <label class="md-nav__title" for="__drawer">
412
+ <a href="../index.html" title="Ceedling" class="md-nav__button md-logo" aria-label="Ceedling" data-md-component="logo">
413
+
414
+
415
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
416
+
417
+ </a>
418
+ Ceedling
419
+ </label>
420
+
421
+ <div class="md-nav__source">
422
+ <a href="https://github.com/ThrowTheSwitch/Ceedling" title="Go to repository" class="md-source" data-md-component="source">
423
+ <div class="md-source__icon md-icon">
424
+
425
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M439.6 236.1 244 40.5c-5.4-5.5-12.8-8.5-20.4-8.5s-15 3-20.4 8.4L162.5 81l51.5 51.5c27.1-9.1 52.7 16.8 43.4 43.7l49.7 49.7c34.2-11.8 61.2 31 35.5 56.7-26.5 26.5-70.2-2.9-56-37.3L240.3 199v121.9c25.3 12.5 22.3 41.8 9.1 55-6.4 6.4-15.2 10.1-24.3 10.1s-17.8-3.6-24.3-10.1c-17.6-17.6-11.1-46.9 11.2-56v-123c-20.8-8.5-24.6-30.7-18.6-45L142.6 101 8.5 235.1C3 240.6 0 247.9 0 255.5s3 15 8.5 20.4l195.6 195.7c5.4 5.4 12.7 8.4 20.4 8.4s15-3 20.4-8.4l194.7-194.7c5.4-5.4 8.4-12.8 8.4-20.4s-3-15-8.4-20.4"/></svg>
426
+ </div>
427
+ <div class="md-source__repository">
428
+ ThrowTheSwitch/Ceedling
429
+ </div>
430
+ </a>
431
+ </div>
432
+
433
+ <ul class="md-nav__list" data-md-scrollfix>
434
+
435
+
436
+
437
+
438
+
439
+
440
+
441
+ <li class="md-nav__item">
442
+ <a href="../index.html" class="md-nav__link">
443
+
444
+
445
+
446
+ <span class="md-ellipsis">
447
+
448
+
449
+ Home
450
+
451
+
452
+
453
+ </span>
454
+
455
+
456
+
457
+ </a>
458
+ </li>
459
+
460
+
461
+
462
+
463
+
464
+
465
+
466
+
467
+
468
+
469
+
470
+
471
+
472
+
473
+
474
+
475
+
476
+
477
+
478
+
479
+
480
+
481
+
482
+
483
+
484
+
485
+
486
+
487
+
488
+
489
+
490
+ <li class="md-nav__item md-nav__item--nested">
491
+
492
+
493
+
494
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
495
+
496
+
497
+ <div class="md-nav__link md-nav__container">
498
+ <a href="../overview/index.html" class="md-nav__link ">
499
+
500
+
501
+
502
+ <span class="md-ellipsis">
503
+
504
+
505
+ Overview
506
+
507
+
508
+
509
+ </span>
510
+
511
+
512
+
513
+ </a>
514
+
515
+
516
+ <label class="md-nav__link " for="__nav_2" id="__nav_2_label" tabindex="0">
517
+ <span class="md-nav__icon md-icon"></span>
518
+ </label>
519
+
520
+ </div>
521
+
522
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
523
+ <label class="md-nav__title" for="__nav_2">
524
+ <span class="md-nav__icon md-icon"></span>
525
+
526
+
527
+ Overview
528
+
529
+
530
+ </label>
531
+ <ul class="md-nav__list" data-md-scrollfix>
532
+
533
+
534
+
535
+
536
+
537
+
538
+
539
+
540
+
541
+ <li class="md-nav__item">
542
+ <a href="../overview/build-system.html" class="md-nav__link">
543
+
544
+
545
+
546
+ <span class="md-ellipsis">
547
+
548
+
549
+ Build System
550
+
551
+
552
+
553
+ </span>
554
+
555
+
556
+
557
+ </a>
558
+ </li>
559
+
560
+
561
+
562
+
563
+
564
+
565
+
566
+
567
+
568
+
569
+ <li class="md-nav__item">
570
+ <a href="../overview/tools-and-frameworks.html" class="md-nav__link">
571
+
572
+
573
+
574
+ <span class="md-ellipsis">
575
+
576
+
577
+ Tools & Frameworks
578
+
579
+
580
+
581
+ </span>
582
+
583
+
584
+
585
+ </a>
586
+ </li>
587
+
588
+
589
+
590
+
591
+
592
+
593
+
594
+
595
+
596
+
597
+ <li class="md-nav__item">
598
+ <a href="../overview/test-environments.html" class="md-nav__link">
599
+
600
+
601
+
602
+ <span class="md-ellipsis">
603
+
604
+
605
+ Test Environments
606
+
607
+
608
+
609
+ </span>
610
+
611
+
612
+
613
+ </a>
614
+ </li>
615
+
616
+
617
+
618
+
619
+ </ul>
620
+ </nav>
621
+
622
+ </li>
623
+
624
+
625
+
626
+
627
+
628
+
629
+
630
+
631
+
632
+
633
+
634
+
635
+
636
+
637
+
638
+
639
+
640
+
641
+
642
+
643
+
644
+
645
+
646
+
647
+
648
+
649
+
650
+
651
+
652
+
653
+
654
+
655
+
656
+ <li class="md-nav__item md-nav__item--nested">
657
+
658
+
659
+
660
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
661
+
662
+
663
+ <div class="md-nav__link md-nav__container">
664
+ <a href="../getting-started/index.html" class="md-nav__link ">
665
+
666
+
667
+
668
+ <span class="md-ellipsis">
669
+
670
+
671
+ Getting Started
672
+
673
+
674
+
675
+ </span>
676
+
677
+
678
+
679
+ </a>
680
+
681
+
682
+ <label class="md-nav__link " for="__nav_3" id="__nav_3_label" tabindex="0">
683
+ <span class="md-nav__icon md-icon"></span>
684
+ </label>
685
+
686
+ </div>
687
+
688
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
689
+ <label class="md-nav__title" for="__nav_3">
690
+ <span class="md-nav__icon md-icon"></span>
691
+
692
+
693
+ Getting Started
694
+
695
+
696
+ </label>
697
+ <ul class="md-nav__list" data-md-scrollfix>
698
+
699
+
700
+
701
+
702
+
703
+
704
+
705
+
706
+
707
+ <li class="md-nav__item">
708
+ <a href="../getting-started/quick-start.html" class="md-nav__link">
709
+
710
+
711
+
712
+ <span class="md-ellipsis">
713
+
714
+
715
+ Quick Start
716
+
717
+
718
+
719
+ </span>
720
+
721
+
722
+
723
+ </a>
724
+ </li>
725
+
726
+
727
+
728
+
729
+
730
+
731
+
732
+
733
+
734
+
735
+ <li class="md-nav__item">
736
+ <a href="../getting-started/installation.html" class="md-nav__link">
737
+
738
+
739
+
740
+ <span class="md-ellipsis">
741
+
742
+
743
+ Installation
744
+
745
+
746
+
747
+ </span>
748
+
749
+
750
+
751
+ </a>
752
+ </li>
753
+
754
+
755
+
756
+
757
+
758
+
759
+
760
+
761
+
762
+
763
+ <li class="md-nav__item">
764
+ <a href="../getting-started/command-line.html" class="md-nav__link">
765
+
766
+
767
+
768
+ <span class="md-ellipsis">
769
+
770
+
771
+ Command Line
772
+
773
+
774
+
775
+ </span>
776
+
777
+
778
+
779
+ </a>
780
+ </li>
781
+
782
+
783
+
784
+
785
+
786
+
787
+
788
+
789
+
790
+
791
+
792
+
793
+
794
+
795
+
796
+
797
+
798
+
799
+
800
+
801
+
802
+
803
+
804
+
805
+
806
+
807
+
808
+
809
+
810
+
811
+
812
+
813
+ <li class="md-nav__item md-nav__item--nested">
814
+
815
+
816
+
817
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_5" >
818
+
819
+
820
+ <div class="md-nav__link md-nav__container">
821
+ <a href="../getting-started/example-projects/index.html" class="md-nav__link ">
822
+
823
+
824
+
825
+ <span class="md-ellipsis">
826
+
827
+
828
+ Example Projects
829
+
830
+
831
+
832
+ </span>
833
+
834
+
835
+
836
+ </a>
837
+
838
+
839
+ <label class="md-nav__link " for="__nav_3_5" id="__nav_3_5_label" tabindex="0">
840
+ <span class="md-nav__icon md-icon"></span>
841
+ </label>
842
+
843
+ </div>
844
+
845
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_5_label" aria-expanded="false">
846
+ <label class="md-nav__title" for="__nav_3_5">
847
+ <span class="md-nav__icon md-icon"></span>
848
+
849
+
850
+ Example Projects
851
+
852
+
853
+ </label>
854
+ <ul class="md-nav__list" data-md-scrollfix>
855
+
856
+
857
+
858
+
859
+
860
+
861
+
862
+
863
+
864
+ <li class="md-nav__item">
865
+ <a href="../getting-started/example-projects/temp-sensor.html" class="md-nav__link">
866
+
867
+
868
+
869
+ <span class="md-ellipsis">
870
+
871
+
872
+ Temp Sensor
873
+
874
+
875
+
876
+ </span>
877
+
878
+
879
+
880
+ </a>
881
+ </li>
882
+
883
+
884
+
885
+
886
+
887
+
888
+
889
+
890
+
891
+
892
+ <li class="md-nav__item">
893
+ <a href="../getting-started/example-projects/wondrous-forest.html" class="md-nav__link">
894
+
895
+
896
+
897
+ <span class="md-ellipsis">
898
+
899
+
900
+ Wondrous Forest
901
+
902
+
903
+
904
+ </span>
905
+
906
+
907
+
908
+ </a>
909
+ </li>
910
+
911
+
912
+
913
+
914
+
915
+
916
+
917
+
918
+
919
+
920
+ <li class="md-nav__item">
921
+ <a href="../getting-started/example-projects/cipher-quest.html" class="md-nav__link">
922
+
923
+
924
+
925
+ <span class="md-ellipsis">
926
+
927
+
928
+ Cipher Quest
929
+
930
+
931
+
932
+ </span>
933
+
934
+
935
+
936
+ </a>
937
+ </li>
938
+
939
+
940
+
941
+
942
+ </ul>
943
+ </nav>
944
+
945
+ </li>
946
+
947
+
948
+
949
+
950
+ </ul>
951
+ </nav>
952
+
953
+ </li>
954
+
955
+
956
+
957
+
958
+
959
+
960
+
961
+
962
+
963
+
964
+
965
+
966
+
967
+
968
+
969
+
970
+
971
+
972
+
973
+
974
+
975
+
976
+
977
+
978
+
979
+
980
+
981
+
982
+
983
+
984
+
985
+
986
+
987
+
988
+
989
+
990
+
991
+
992
+
993
+ <li class="md-nav__item md-nav__item--nested">
994
+
995
+
996
+
997
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
998
+
999
+
1000
+ <div class="md-nav__link md-nav__container">
1001
+ <a href="../testing-guide/index.html" class="md-nav__link ">
1002
+
1003
+
1004
+
1005
+ <span class="md-ellipsis">
1006
+
1007
+
1008
+ Testing Guide
1009
+
1010
+
1011
+
1012
+ </span>
1013
+
1014
+
1015
+
1016
+ </a>
1017
+
1018
+
1019
+ <label class="md-nav__link " for="__nav_4" id="__nav_4_label" tabindex="0">
1020
+ <span class="md-nav__icon md-icon"></span>
1021
+ </label>
1022
+
1023
+ </div>
1024
+
1025
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
1026
+ <label class="md-nav__title" for="__nav_4">
1027
+ <span class="md-nav__icon md-icon"></span>
1028
+
1029
+
1030
+ Testing Guide
1031
+
1032
+
1033
+ </label>
1034
+ <ul class="md-nav__list" data-md-scrollfix>
1035
+
1036
+
1037
+
1038
+
1039
+
1040
+
1041
+
1042
+
1043
+
1044
+ <li class="md-nav__item">
1045
+ <a href="../testing-guide/test-cases.html" class="md-nav__link">
1046
+
1047
+
1048
+
1049
+ <span class="md-ellipsis">
1050
+
1051
+
1052
+ How Does a Test Case Work?
1053
+
1054
+
1055
+
1056
+ </span>
1057
+
1058
+
1059
+
1060
+ </a>
1061
+ </li>
1062
+
1063
+
1064
+
1065
+
1066
+
1067
+
1068
+
1069
+
1070
+
1071
+
1072
+ <li class="md-nav__item">
1073
+ <a href="../testing-guide/test-sample.html" class="md-nav__link">
1074
+
1075
+
1076
+
1077
+ <span class="md-ellipsis">
1078
+
1079
+
1080
+ Commented Sample Test File
1081
+
1082
+
1083
+
1084
+ </span>
1085
+
1086
+
1087
+
1088
+ </a>
1089
+ </li>
1090
+
1091
+
1092
+
1093
+
1094
+
1095
+
1096
+
1097
+
1098
+
1099
+
1100
+ <li class="md-nav__item">
1101
+ <a href="../testing-guide/test-suite-anatomy.html" class="md-nav__link">
1102
+
1103
+
1104
+
1105
+ <span class="md-ellipsis">
1106
+
1107
+
1108
+ Anatomy of a Test Suite
1109
+
1110
+
1111
+
1112
+ </span>
1113
+
1114
+
1115
+
1116
+ </a>
1117
+ </li>
1118
+
1119
+
1120
+
1121
+
1122
+
1123
+
1124
+
1125
+
1126
+
1127
+
1128
+ <li class="md-nav__item">
1129
+ <a href="../testing-guide/conventions.html" class="md-nav__link">
1130
+
1131
+
1132
+
1133
+ <span class="md-ellipsis">
1134
+
1135
+
1136
+ Conventions & Behaviors
1137
+
1138
+
1139
+
1140
+ </span>
1141
+
1142
+
1143
+
1144
+ </a>
1145
+ </li>
1146
+
1147
+
1148
+
1149
+
1150
+
1151
+
1152
+
1153
+
1154
+
1155
+
1156
+ <li class="md-nav__item">
1157
+ <a href="../testing-guide/frameworks.html" class="md-nav__link">
1158
+
1159
+
1160
+
1161
+ <span class="md-ellipsis">
1162
+
1163
+
1164
+ Unity, CMock & CException
1165
+
1166
+
1167
+
1168
+ </span>
1169
+
1170
+
1171
+
1172
+ </a>
1173
+ </li>
1174
+
1175
+
1176
+
1177
+
1178
+
1179
+
1180
+
1181
+
1182
+
1183
+
1184
+
1185
+
1186
+
1187
+
1188
+
1189
+
1190
+
1191
+
1192
+
1193
+
1194
+
1195
+
1196
+
1197
+
1198
+
1199
+
1200
+
1201
+
1202
+
1203
+
1204
+
1205
+
1206
+
1207
+
1208
+
1209
+
1210
+
1211
+
1212
+ <li class="md-nav__item md-nav__item--nested">
1213
+
1214
+
1215
+
1216
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_7" >
1217
+
1218
+
1219
+ <div class="md-nav__link md-nav__container">
1220
+ <a href="../testing-guide/partials/index.html" class="md-nav__link ">
1221
+
1222
+
1223
+
1224
+ <span class="md-ellipsis">
1225
+
1226
+
1227
+ Partials
1228
+
1229
+
1230
+
1231
+ </span>
1232
+
1233
+
1234
+
1235
+ </a>
1236
+
1237
+
1238
+ <label class="md-nav__link " for="__nav_4_7" id="__nav_4_7_label" tabindex="0">
1239
+ <span class="md-nav__icon md-icon"></span>
1240
+ </label>
1241
+
1242
+ </div>
1243
+
1244
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_7_label" aria-expanded="false">
1245
+ <label class="md-nav__title" for="__nav_4_7">
1246
+ <span class="md-nav__icon md-icon"></span>
1247
+
1248
+
1249
+ Partials
1250
+
1251
+
1252
+ </label>
1253
+ <ul class="md-nav__list" data-md-scrollfix>
1254
+
1255
+
1256
+
1257
+
1258
+
1259
+
1260
+
1261
+
1262
+
1263
+ <li class="md-nav__item">
1264
+ <a href="../testing-guide/partials/overview.html" class="md-nav__link">
1265
+
1266
+
1267
+
1268
+ <span class="md-ellipsis">
1269
+
1270
+
1271
+ What Is a Partial?
1272
+
1273
+
1274
+
1275
+ </span>
1276
+
1277
+
1278
+
1279
+ </a>
1280
+ </li>
1281
+
1282
+
1283
+
1284
+
1285
+
1286
+
1287
+
1288
+
1289
+
1290
+
1291
+ <li class="md-nav__item">
1292
+ <a href="../testing-guide/partials/configuration.html" class="md-nav__link">
1293
+
1294
+
1295
+
1296
+ <span class="md-ellipsis">
1297
+
1298
+
1299
+ Configuration
1300
+
1301
+
1302
+
1303
+ </span>
1304
+
1305
+
1306
+
1307
+ </a>
1308
+ </li>
1309
+
1310
+
1311
+
1312
+
1313
+
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+ <li class="md-nav__item">
1320
+ <a href="../testing-guide/partials/example.html" class="md-nav__link">
1321
+
1322
+
1323
+
1324
+ <span class="md-ellipsis">
1325
+
1326
+
1327
+ Walk-Through Example
1328
+
1329
+
1330
+
1331
+ </span>
1332
+
1333
+
1334
+
1335
+ </a>
1336
+ </li>
1337
+
1338
+
1339
+
1340
+
1341
+
1342
+
1343
+
1344
+
1345
+
1346
+
1347
+ <li class="md-nav__item">
1348
+ <a href="../testing-guide/partials/conventions.html" class="md-nav__link">
1349
+
1350
+
1351
+
1352
+ <span class="md-ellipsis">
1353
+
1354
+
1355
+ Conventions & Terminology
1356
+
1357
+
1358
+
1359
+ </span>
1360
+
1361
+
1362
+
1363
+ </a>
1364
+ </li>
1365
+
1366
+
1367
+
1368
+
1369
+
1370
+
1371
+
1372
+
1373
+
1374
+
1375
+ <li class="md-nav__item">
1376
+ <a href="../testing-guide/partials/directives.html" class="md-nav__link">
1377
+
1378
+
1379
+
1380
+ <span class="md-ellipsis">
1381
+
1382
+
1383
+ Partial Directive Macros
1384
+
1385
+
1386
+
1387
+ </span>
1388
+
1389
+
1390
+
1391
+ </a>
1392
+ </li>
1393
+
1394
+
1395
+
1396
+
1397
+
1398
+
1399
+
1400
+
1401
+
1402
+
1403
+ <li class="md-nav__item">
1404
+ <a href="../testing-guide/partials/variables.html" class="md-nav__link">
1405
+
1406
+
1407
+
1408
+ <span class="md-ellipsis">
1409
+
1410
+
1411
+ Accessing Static Variables
1412
+
1413
+
1414
+
1415
+ </span>
1416
+
1417
+
1418
+
1419
+ </a>
1420
+ </li>
1421
+
1422
+
1423
+
1424
+
1425
+ </ul>
1426
+ </nav>
1427
+
1428
+ </li>
1429
+
1430
+
1431
+
1432
+
1433
+
1434
+
1435
+
1436
+
1437
+
1438
+
1439
+ <li class="md-nav__item">
1440
+ <a href="../testing-guide/build-directives.html" class="md-nav__link">
1441
+
1442
+
1443
+
1444
+ <span class="md-ellipsis">
1445
+
1446
+
1447
+ Build Directive Macros
1448
+
1449
+
1450
+
1451
+ </span>
1452
+
1453
+
1454
+
1455
+ </a>
1456
+ </li>
1457
+
1458
+
1459
+
1460
+
1461
+ </ul>
1462
+ </nav>
1463
+
1464
+ </li>
1465
+
1466
+
1467
+
1468
+
1469
+
1470
+
1471
+
1472
+
1473
+
1474
+
1475
+
1476
+
1477
+
1478
+
1479
+
1480
+
1481
+
1482
+
1483
+
1484
+
1485
+
1486
+
1487
+
1488
+
1489
+
1490
+
1491
+
1492
+
1493
+
1494
+
1495
+
1496
+
1497
+
1498
+
1499
+
1500
+
1501
+
1502
+
1503
+
1504
+
1505
+
1506
+ <li class="md-nav__item md-nav__item--nested">
1507
+
1508
+
1509
+
1510
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
1511
+
1512
+
1513
+ <div class="md-nav__link md-nav__container">
1514
+ <a href="../configuration/index.html" class="md-nav__link ">
1515
+
1516
+
1517
+
1518
+ <span class="md-ellipsis">
1519
+
1520
+
1521
+ Configuration
1522
+
1523
+
1524
+
1525
+ </span>
1526
+
1527
+
1528
+
1529
+ </a>
1530
+
1531
+
1532
+ <label class="md-nav__link " for="__nav_5" id="__nav_5_label" tabindex="0">
1533
+ <span class="md-nav__icon md-icon"></span>
1534
+ </label>
1535
+
1536
+ </div>
1537
+
1538
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
1539
+ <label class="md-nav__title" for="__nav_5">
1540
+ <span class="md-nav__icon md-icon"></span>
1541
+
1542
+
1543
+ Configuration
1544
+
1545
+
1546
+ </label>
1547
+ <ul class="md-nav__list" data-md-scrollfix>
1548
+
1549
+
1550
+
1551
+
1552
+
1553
+
1554
+
1555
+
1556
+
1557
+ <li class="md-nav__item">
1558
+ <a href="../configuration/loading.html" class="md-nav__link">
1559
+
1560
+
1561
+
1562
+ <span class="md-ellipsis">
1563
+
1564
+
1565
+ Loading Configuration
1566
+
1567
+
1568
+
1569
+ </span>
1570
+
1571
+
1572
+
1573
+ </a>
1574
+ </li>
1575
+
1576
+
1577
+
1578
+
1579
+
1580
+
1581
+
1582
+
1583
+
1584
+
1585
+ <li class="md-nav__item">
1586
+ <a href="../configuration/mixins.html" class="md-nav__link">
1587
+
1588
+
1589
+
1590
+ <span class="md-ellipsis">
1591
+
1592
+
1593
+ Mixins
1594
+
1595
+
1596
+
1597
+ </span>
1598
+
1599
+
1600
+
1601
+ </a>
1602
+ </li>
1603
+
1604
+
1605
+
1606
+
1607
+
1608
+
1609
+
1610
+
1611
+
1612
+
1613
+ <li class="md-nav__item">
1614
+ <a href="../configuration/project-file.html" class="md-nav__link">
1615
+
1616
+
1617
+
1618
+ <span class="md-ellipsis">
1619
+
1620
+
1621
+ Project File Basics
1622
+
1623
+
1624
+
1625
+ </span>
1626
+
1627
+
1628
+
1629
+ </a>
1630
+ </li>
1631
+
1632
+
1633
+
1634
+
1635
+
1636
+
1637
+
1638
+
1639
+
1640
+
1641
+ <li class="md-nav__item">
1642
+ <a href="../configuration/parallel-builds.html" class="md-nav__link">
1643
+
1644
+
1645
+
1646
+ <span class="md-ellipsis">
1647
+
1648
+
1649
+ Parallel Builds
1650
+
1651
+
1652
+
1653
+ </span>
1654
+
1655
+
1656
+
1657
+ </a>
1658
+ </li>
1659
+
1660
+
1661
+
1662
+
1663
+
1664
+
1665
+
1666
+
1667
+
1668
+
1669
+ <li class="md-nav__item">
1670
+ <a href="../configuration/environment-vars.html" class="md-nav__link">
1671
+
1672
+
1673
+
1674
+ <span class="md-ellipsis">
1675
+
1676
+
1677
+ Environment Variables
1678
+
1679
+
1680
+
1681
+ </span>
1682
+
1683
+
1684
+
1685
+ </a>
1686
+ </li>
1687
+
1688
+
1689
+
1690
+
1691
+
1692
+
1693
+
1694
+
1695
+
1696
+
1697
+ <li class="md-nav__item">
1698
+ <a href="../configuration/which-ceedling.html" class="md-nav__link">
1699
+
1700
+
1701
+
1702
+ <span class="md-ellipsis">
1703
+
1704
+
1705
+ Which Ceedling
1706
+
1707
+
1708
+
1709
+ </span>
1710
+
1711
+
1712
+
1713
+ </a>
1714
+ </li>
1715
+
1716
+
1717
+
1718
+
1719
+
1720
+
1721
+
1722
+
1723
+
1724
+
1725
+ <li class="md-nav__item">
1726
+ <a href="../configuration/global-collections.html" class="md-nav__link">
1727
+
1728
+
1729
+
1730
+ <span class="md-ellipsis">
1731
+
1732
+
1733
+ Global Collections
1734
+
1735
+
1736
+
1737
+ </span>
1738
+
1739
+
1740
+
1741
+ </a>
1742
+ </li>
1743
+
1744
+
1745
+
1746
+
1747
+
1748
+
1749
+
1750
+
1751
+
1752
+
1753
+
1754
+
1755
+
1756
+
1757
+
1758
+
1759
+
1760
+
1761
+
1762
+
1763
+
1764
+
1765
+
1766
+
1767
+
1768
+
1769
+
1770
+
1771
+
1772
+
1773
+
1774
+
1775
+
1776
+
1777
+
1778
+
1779
+
1780
+
1781
+
1782
+
1783
+
1784
+
1785
+
1786
+
1787
+
1788
+
1789
+
1790
+
1791
+
1792
+
1793
+
1794
+
1795
+
1796
+
1797
+
1798
+
1799
+
1800
+
1801
+
1802
+
1803
+ <li class="md-nav__item md-nav__item--nested">
1804
+
1805
+
1806
+
1807
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_9" >
1808
+
1809
+
1810
+ <div class="md-nav__link md-nav__container">
1811
+ <a href="../configuration/reference/index.html" class="md-nav__link ">
1812
+
1813
+
1814
+
1815
+ <span class="md-ellipsis">
1816
+
1817
+
1818
+ Configuration Reference
1819
+
1820
+
1821
+
1822
+ </span>
1823
+
1824
+
1825
+
1826
+ </a>
1827
+
1828
+
1829
+ <label class="md-nav__link " for="__nav_5_9" id="__nav_5_9_label" tabindex="0">
1830
+ <span class="md-nav__icon md-icon"></span>
1831
+ </label>
1832
+
1833
+ </div>
1834
+
1835
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_9_label" aria-expanded="false">
1836
+ <label class="md-nav__title" for="__nav_5_9">
1837
+ <span class="md-nav__icon md-icon"></span>
1838
+
1839
+
1840
+ Configuration Reference
1841
+
1842
+
1843
+ </label>
1844
+ <ul class="md-nav__list" data-md-scrollfix>
1845
+
1846
+
1847
+
1848
+
1849
+
1850
+
1851
+
1852
+
1853
+
1854
+ <li class="md-nav__item">
1855
+ <a href="../configuration/reference/project.html" class="md-nav__link">
1856
+
1857
+
1858
+
1859
+ <span class="md-ellipsis">
1860
+
1861
+
1862
+ Global Project Settings
1863
+
1864
+
1865
+
1866
+ </span>
1867
+
1868
+
1869
+
1870
+ </a>
1871
+ </li>
1872
+
1873
+
1874
+
1875
+
1876
+
1877
+
1878
+
1879
+
1880
+
1881
+
1882
+ <li class="md-nav__item">
1883
+ <a href="../configuration/reference/mixins.html" class="md-nav__link">
1884
+
1885
+
1886
+
1887
+ <span class="md-ellipsis">
1888
+
1889
+
1890
+ Mixins
1891
+
1892
+
1893
+
1894
+ </span>
1895
+
1896
+
1897
+
1898
+ </a>
1899
+ </li>
1900
+
1901
+
1902
+
1903
+
1904
+
1905
+
1906
+
1907
+
1908
+
1909
+
1910
+ <li class="md-nav__item">
1911
+ <a href="../configuration/reference/test-build.html" class="md-nav__link">
1912
+
1913
+
1914
+
1915
+ <span class="md-ellipsis">
1916
+
1917
+
1918
+ Test Build Settings
1919
+
1920
+
1921
+
1922
+ </span>
1923
+
1924
+
1925
+
1926
+ </a>
1927
+ </li>
1928
+
1929
+
1930
+
1931
+
1932
+
1933
+
1934
+
1935
+
1936
+
1937
+
1938
+ <li class="md-nav__item">
1939
+ <a href="../configuration/reference/release-build.html" class="md-nav__link">
1940
+
1941
+
1942
+
1943
+ <span class="md-ellipsis">
1944
+
1945
+
1946
+ Release Build Settings
1947
+
1948
+
1949
+
1950
+ </span>
1951
+
1952
+
1953
+
1954
+ </a>
1955
+ </li>
1956
+
1957
+
1958
+
1959
+
1960
+
1961
+
1962
+
1963
+
1964
+
1965
+
1966
+ <li class="md-nav__item">
1967
+ <a href="../configuration/reference/paths.html" class="md-nav__link">
1968
+
1969
+
1970
+
1971
+ <span class="md-ellipsis">
1972
+
1973
+
1974
+ Search Paths
1975
+
1976
+
1977
+
1978
+ </span>
1979
+
1980
+
1981
+
1982
+ </a>
1983
+ </li>
1984
+
1985
+
1986
+
1987
+
1988
+
1989
+
1990
+
1991
+
1992
+
1993
+
1994
+ <li class="md-nav__item">
1995
+ <a href="../configuration/reference/files.html" class="md-nav__link">
1996
+
1997
+
1998
+
1999
+ <span class="md-ellipsis">
2000
+
2001
+
2002
+ File Collections
2003
+
2004
+
2005
+
2006
+ </span>
2007
+
2008
+
2009
+
2010
+ </a>
2011
+ </li>
2012
+
2013
+
2014
+
2015
+
2016
+
2017
+
2018
+
2019
+
2020
+
2021
+
2022
+ <li class="md-nav__item">
2023
+ <a href="../configuration/reference/environment.html" class="md-nav__link">
2024
+
2025
+
2026
+
2027
+ <span class="md-ellipsis">
2028
+
2029
+
2030
+ Environment Variables
2031
+
2032
+
2033
+
2034
+ </span>
2035
+
2036
+
2037
+
2038
+ </a>
2039
+ </li>
2040
+
2041
+
2042
+
2043
+
2044
+
2045
+
2046
+
2047
+
2048
+
2049
+
2050
+ <li class="md-nav__item">
2051
+ <a href="../configuration/reference/extension.html" class="md-nav__link">
2052
+
2053
+
2054
+
2055
+ <span class="md-ellipsis">
2056
+
2057
+
2058
+ File Extensions
2059
+
2060
+
2061
+
2062
+ </span>
2063
+
2064
+
2065
+
2066
+ </a>
2067
+ </li>
2068
+
2069
+
2070
+
2071
+
2072
+
2073
+
2074
+
2075
+
2076
+
2077
+
2078
+ <li class="md-nav__item">
2079
+ <a href="../configuration/reference/defines.html" class="md-nav__link">
2080
+
2081
+
2082
+
2083
+ <span class="md-ellipsis">
2084
+
2085
+
2086
+ Defines
2087
+
2088
+
2089
+
2090
+ </span>
2091
+
2092
+
2093
+
2094
+ </a>
2095
+ </li>
2096
+
2097
+
2098
+
2099
+
2100
+
2101
+
2102
+
2103
+
2104
+
2105
+
2106
+ <li class="md-nav__item">
2107
+ <a href="../configuration/reference/flags.html" class="md-nav__link">
2108
+
2109
+
2110
+
2111
+ <span class="md-ellipsis">
2112
+
2113
+
2114
+ Compilation & Link Flags
2115
+
2116
+
2117
+
2118
+ </span>
2119
+
2120
+
2121
+
2122
+ </a>
2123
+ </li>
2124
+
2125
+
2126
+
2127
+
2128
+
2129
+
2130
+
2131
+
2132
+
2133
+
2134
+ <li class="md-nav__item">
2135
+ <a href="../configuration/reference/libraries.html" class="md-nav__link">
2136
+
2137
+
2138
+
2139
+ <span class="md-ellipsis">
2140
+
2141
+
2142
+ Libraries
2143
+
2144
+
2145
+
2146
+ </span>
2147
+
2148
+
2149
+
2150
+ </a>
2151
+ </li>
2152
+
2153
+
2154
+
2155
+
2156
+
2157
+
2158
+
2159
+
2160
+
2161
+
2162
+ <li class="md-nav__item">
2163
+ <a href="../configuration/reference/unity.html" class="md-nav__link">
2164
+
2165
+
2166
+
2167
+ <span class="md-ellipsis">
2168
+
2169
+
2170
+ Unity
2171
+
2172
+
2173
+
2174
+ </span>
2175
+
2176
+
2177
+
2178
+ </a>
2179
+ </li>
2180
+
2181
+
2182
+
2183
+
2184
+
2185
+
2186
+
2187
+
2188
+
2189
+
2190
+ <li class="md-nav__item">
2191
+ <a href="../configuration/reference/cmock.html" class="md-nav__link">
2192
+
2193
+
2194
+
2195
+ <span class="md-ellipsis">
2196
+
2197
+
2198
+ CMock
2199
+
2200
+
2201
+
2202
+ </span>
2203
+
2204
+
2205
+
2206
+ </a>
2207
+ </li>
2208
+
2209
+
2210
+
2211
+
2212
+
2213
+
2214
+
2215
+
2216
+
2217
+
2218
+ <li class="md-nav__item">
2219
+ <a href="../configuration/reference/test-runner.html" class="md-nav__link">
2220
+
2221
+
2222
+
2223
+ <span class="md-ellipsis">
2224
+
2225
+
2226
+ Test Runner
2227
+
2228
+
2229
+
2230
+ </span>
2231
+
2232
+
2233
+
2234
+ </a>
2235
+ </li>
2236
+
2237
+
2238
+
2239
+
2240
+
2241
+
2242
+
2243
+
2244
+
2245
+
2246
+ <li class="md-nav__item">
2247
+ <a href="../configuration/reference/cexception.html" class="md-nav__link">
2248
+
2249
+
2250
+
2251
+ <span class="md-ellipsis">
2252
+
2253
+
2254
+ CException
2255
+
2256
+
2257
+
2258
+ </span>
2259
+
2260
+
2261
+
2262
+ </a>
2263
+ </li>
2264
+
2265
+
2266
+
2267
+
2268
+
2269
+
2270
+
2271
+
2272
+
2273
+
2274
+ <li class="md-nav__item">
2275
+ <a href="../configuration/reference/plugins.html" class="md-nav__link">
2276
+
2277
+
2278
+
2279
+ <span class="md-ellipsis">
2280
+
2281
+
2282
+ Plugins
2283
+
2284
+
2285
+
2286
+ </span>
2287
+
2288
+
2289
+
2290
+ </a>
2291
+ </li>
2292
+
2293
+
2294
+
2295
+
2296
+
2297
+
2298
+
2299
+
2300
+
2301
+
2302
+ <li class="md-nav__item">
2303
+ <a href="../configuration/reference/tools.html" class="md-nav__link">
2304
+
2305
+
2306
+
2307
+ <span class="md-ellipsis">
2308
+
2309
+
2310
+ Tools
2311
+
2312
+
2313
+
2314
+ </span>
2315
+
2316
+
2317
+
2318
+ </a>
2319
+ </li>
2320
+
2321
+
2322
+
2323
+
2324
+ </ul>
2325
+ </nav>
2326
+
2327
+ </li>
2328
+
2329
+
2330
+
2331
+
2332
+ </ul>
2333
+ </nav>
2334
+
2335
+ </li>
2336
+
2337
+
2338
+
2339
+
2340
+
2341
+
2342
+
2343
+
2344
+
2345
+
2346
+
2347
+
2348
+
2349
+
2350
+
2351
+
2352
+
2353
+
2354
+
2355
+
2356
+
2357
+
2358
+
2359
+
2360
+
2361
+
2362
+
2363
+
2364
+
2365
+
2366
+
2367
+
2368
+
2369
+
2370
+
2371
+
2372
+
2373
+
2374
+
2375
+
2376
+
2377
+
2378
+
2379
+
2380
+
2381
+
2382
+
2383
+
2384
+
2385
+
2386
+
2387
+
2388
+
2389
+
2390
+
2391
+
2392
+
2393
+
2394
+
2395
+ <li class="md-nav__item md-nav__item--nested">
2396
+
2397
+
2398
+
2399
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
2400
+
2401
+
2402
+ <div class="md-nav__link md-nav__container">
2403
+ <a href="../plugins/index.html" class="md-nav__link ">
2404
+
2405
+
2406
+
2407
+ <span class="md-ellipsis">
2408
+
2409
+
2410
+ Plugins
2411
+
2412
+
2413
+
2414
+ </span>
2415
+
2416
+
2417
+
2418
+ </a>
2419
+
2420
+
2421
+ <label class="md-nav__link " for="__nav_6" id="__nav_6_label" tabindex="0">
2422
+ <span class="md-nav__icon md-icon"></span>
2423
+ </label>
2424
+
2425
+ </div>
2426
+
2427
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
2428
+ <label class="md-nav__title" for="__nav_6">
2429
+ <span class="md-nav__icon md-icon"></span>
2430
+
2431
+
2432
+ Plugins
2433
+
2434
+
2435
+ </label>
2436
+ <ul class="md-nav__list" data-md-scrollfix>
2437
+
2438
+
2439
+
2440
+
2441
+
2442
+
2443
+
2444
+
2445
+
2446
+ <li class="md-nav__item">
2447
+ <a href="../plugins/report-tests-pretty-stdout.html" class="md-nav__link">
2448
+
2449
+
2450
+
2451
+ <span class="md-ellipsis">
2452
+
2453
+
2454
+ Test Report — Pretty
2455
+
2456
+
2457
+
2458
+ </span>
2459
+
2460
+
2461
+
2462
+ </a>
2463
+ </li>
2464
+
2465
+
2466
+
2467
+
2468
+
2469
+
2470
+
2471
+
2472
+
2473
+
2474
+ <li class="md-nav__item">
2475
+ <a href="../plugins/report-tests-ide-stdout.html" class="md-nav__link">
2476
+
2477
+
2478
+
2479
+ <span class="md-ellipsis">
2480
+
2481
+
2482
+ Test Report — IDE
2483
+
2484
+
2485
+
2486
+ </span>
2487
+
2488
+
2489
+
2490
+ </a>
2491
+ </li>
2492
+
2493
+
2494
+
2495
+
2496
+
2497
+
2498
+
2499
+
2500
+
2501
+
2502
+ <li class="md-nav__item">
2503
+ <a href="../plugins/report-tests-gtestlike-stdout.html" class="md-nav__link">
2504
+
2505
+
2506
+
2507
+ <span class="md-ellipsis">
2508
+
2509
+
2510
+ Test Report — GTest-like
2511
+
2512
+
2513
+
2514
+ </span>
2515
+
2516
+
2517
+
2518
+ </a>
2519
+ </li>
2520
+
2521
+
2522
+
2523
+
2524
+
2525
+
2526
+
2527
+
2528
+
2529
+
2530
+ <li class="md-nav__item">
2531
+ <a href="../plugins/report-tests-teamcity-stdout.html" class="md-nav__link">
2532
+
2533
+
2534
+
2535
+ <span class="md-ellipsis">
2536
+
2537
+
2538
+ Test Report — TeamCity
2539
+
2540
+
2541
+
2542
+ </span>
2543
+
2544
+
2545
+
2546
+ </a>
2547
+ </li>
2548
+
2549
+
2550
+
2551
+
2552
+
2553
+
2554
+
2555
+
2556
+
2557
+
2558
+ <li class="md-nav__item">
2559
+ <a href="../plugins/report-tests-log-factory.html" class="md-nav__link">
2560
+
2561
+
2562
+
2563
+ <span class="md-ellipsis">
2564
+
2565
+
2566
+ Test Report Log Factory
2567
+
2568
+
2569
+
2570
+ </span>
2571
+
2572
+
2573
+
2574
+ </a>
2575
+ </li>
2576
+
2577
+
2578
+
2579
+
2580
+
2581
+
2582
+
2583
+
2584
+
2585
+
2586
+ <li class="md-nav__item">
2587
+ <a href="../plugins/report-tests-raw-output-log.html" class="md-nav__link">
2588
+
2589
+
2590
+
2591
+ <span class="md-ellipsis">
2592
+
2593
+
2594
+ Test Report — Raw Output
2595
+
2596
+
2597
+
2598
+ </span>
2599
+
2600
+
2601
+
2602
+ </a>
2603
+ </li>
2604
+
2605
+
2606
+
2607
+
2608
+
2609
+
2610
+
2611
+
2612
+
2613
+
2614
+ <li class="md-nav__item">
2615
+ <a href="../plugins/report-build-warnings-log.html" class="md-nav__link">
2616
+
2617
+
2618
+
2619
+ <span class="md-ellipsis">
2620
+
2621
+
2622
+ Build Warnings Log
2623
+
2624
+
2625
+
2626
+ </span>
2627
+
2628
+
2629
+
2630
+ </a>
2631
+ </li>
2632
+
2633
+
2634
+
2635
+
2636
+
2637
+
2638
+
2639
+
2640
+
2641
+
2642
+
2643
+
2644
+
2645
+
2646
+
2647
+
2648
+
2649
+
2650
+
2651
+
2652
+
2653
+
2654
+
2655
+
2656
+
2657
+
2658
+
2659
+
2660
+
2661
+
2662
+
2663
+
2664
+
2665
+
2666
+
2667
+
2668
+
2669
+
2670
+
2671
+
2672
+
2673
+
2674
+ <li class="md-nav__item md-nav__item--nested">
2675
+
2676
+
2677
+
2678
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_9" >
2679
+
2680
+
2681
+ <div class="md-nav__link md-nav__container">
2682
+ <a href="../plugins/gcov/index.html" class="md-nav__link ">
2683
+
2684
+
2685
+
2686
+ <span class="md-ellipsis">
2687
+
2688
+
2689
+ GCov (Coverage)
2690
+
2691
+
2692
+
2693
+ </span>
2694
+
2695
+
2696
+
2697
+ </a>
2698
+
2699
+
2700
+ <label class="md-nav__link " for="__nav_6_9" id="__nav_6_9_label" tabindex="0">
2701
+ <span class="md-nav__icon md-icon"></span>
2702
+ </label>
2703
+
2704
+ </div>
2705
+
2706
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_9_label" aria-expanded="false">
2707
+ <label class="md-nav__title" for="__nav_6_9">
2708
+ <span class="md-nav__icon md-icon"></span>
2709
+
2710
+
2711
+ GCov (Coverage)
2712
+
2713
+
2714
+ </label>
2715
+ <ul class="md-nav__list" data-md-scrollfix>
2716
+
2717
+
2718
+
2719
+
2720
+
2721
+
2722
+
2723
+
2724
+
2725
+ <li class="md-nav__item">
2726
+ <a href="../plugins/gcov/overview.html" class="md-nav__link">
2727
+
2728
+
2729
+
2730
+ <span class="md-ellipsis">
2731
+
2732
+
2733
+ Overview
2734
+
2735
+
2736
+
2737
+ </span>
2738
+
2739
+
2740
+
2741
+ </a>
2742
+ </li>
2743
+
2744
+
2745
+
2746
+
2747
+
2748
+
2749
+
2750
+
2751
+
2752
+
2753
+ <li class="md-nav__item">
2754
+ <a href="../plugins/gcov/tool-versions.html" class="md-nav__link">
2755
+
2756
+
2757
+
2758
+ <span class="md-ellipsis">
2759
+
2760
+
2761
+ Tool Versions
2762
+
2763
+
2764
+
2765
+ </span>
2766
+
2767
+
2768
+
2769
+ </a>
2770
+ </li>
2771
+
2772
+
2773
+
2774
+
2775
+
2776
+
2777
+
2778
+
2779
+
2780
+
2781
+ <li class="md-nav__item">
2782
+ <a href="../plugins/gcov/setup.html" class="md-nav__link">
2783
+
2784
+
2785
+
2786
+ <span class="md-ellipsis">
2787
+
2788
+
2789
+ Set Up & Configuration
2790
+
2791
+
2792
+
2793
+ </span>
2794
+
2795
+
2796
+
2797
+ </a>
2798
+ </li>
2799
+
2800
+
2801
+
2802
+
2803
+
2804
+
2805
+
2806
+
2807
+
2808
+
2809
+ <li class="md-nav__item">
2810
+ <a href="../plugins/gcov/examples.html" class="md-nav__link">
2811
+
2812
+
2813
+
2814
+ <span class="md-ellipsis">
2815
+
2816
+
2817
+ Example Usage
2818
+
2819
+
2820
+
2821
+ </span>
2822
+
2823
+
2824
+
2825
+ </a>
2826
+ </li>
2827
+
2828
+
2829
+
2830
+
2831
+
2832
+
2833
+
2834
+
2835
+
2836
+
2837
+ <li class="md-nav__item">
2838
+ <a href="../plugins/gcov/reporting.html" class="md-nav__link">
2839
+
2840
+
2841
+
2842
+ <span class="md-ellipsis">
2843
+
2844
+
2845
+ Reporting Configuration
2846
+
2847
+
2848
+
2849
+ </span>
2850
+
2851
+
2852
+
2853
+ </a>
2854
+ </li>
2855
+
2856
+
2857
+
2858
+
2859
+
2860
+
2861
+
2862
+
2863
+
2864
+
2865
+ <li class="md-nav__item">
2866
+ <a href="../plugins/gcov/gcovr.html" class="md-nav__link">
2867
+
2868
+
2869
+
2870
+ <span class="md-ellipsis">
2871
+
2872
+
2873
+ GCovr Configuration
2874
+
2875
+
2876
+
2877
+ </span>
2878
+
2879
+
2880
+
2881
+ </a>
2882
+ </li>
2883
+
2884
+
2885
+
2886
+
2887
+
2888
+
2889
+
2890
+
2891
+
2892
+
2893
+ <li class="md-nav__item">
2894
+ <a href="../plugins/gcov/reportgenerator.html" class="md-nav__link">
2895
+
2896
+
2897
+
2898
+ <span class="md-ellipsis">
2899
+
2900
+
2901
+ ReportGenerator Configuration
2902
+
2903
+
2904
+
2905
+ </span>
2906
+
2907
+
2908
+
2909
+ </a>
2910
+ </li>
2911
+
2912
+
2913
+
2914
+
2915
+
2916
+
2917
+
2918
+
2919
+
2920
+
2921
+ <li class="md-nav__item">
2922
+ <a href="../plugins/gcov/troubleshooting.html" class="md-nav__link">
2923
+
2924
+
2925
+
2926
+ <span class="md-ellipsis">
2927
+
2928
+
2929
+ Advanced & Troubleshooting
2930
+
2931
+
2932
+
2933
+ </span>
2934
+
2935
+
2936
+
2937
+ </a>
2938
+ </li>
2939
+
2940
+
2941
+
2942
+
2943
+ </ul>
2944
+ </nav>
2945
+
2946
+ </li>
2947
+
2948
+
2949
+
2950
+
2951
+
2952
+
2953
+
2954
+
2955
+
2956
+
2957
+ <li class="md-nav__item">
2958
+ <a href="../plugins/cppcheck.html" class="md-nav__link">
2959
+
2960
+
2961
+
2962
+ <span class="md-ellipsis">
2963
+
2964
+
2965
+ Cppcheck (Static Analysis)
2966
+
2967
+
2968
+
2969
+ </span>
2970
+
2971
+
2972
+
2973
+ </a>
2974
+ </li>
2975
+
2976
+
2977
+
2978
+
2979
+
2980
+
2981
+
2982
+
2983
+
2984
+
2985
+ <li class="md-nav__item">
2986
+ <a href="../plugins/valgrind.html" class="md-nav__link">
2987
+
2988
+
2989
+
2990
+ <span class="md-ellipsis">
2991
+
2992
+
2993
+ Valgrind (Memory Analysis)
2994
+
2995
+
2996
+
2997
+ </span>
2998
+
2999
+
3000
+
3001
+ </a>
3002
+ </li>
3003
+
3004
+
3005
+
3006
+
3007
+
3008
+
3009
+
3010
+
3011
+
3012
+
3013
+ <li class="md-nav__item">
3014
+ <a href="../plugins/bullseye.html" class="md-nav__link">
3015
+
3016
+
3017
+
3018
+ <span class="md-ellipsis">
3019
+
3020
+
3021
+ Bullseye (Coverage)
3022
+
3023
+
3024
+
3025
+ </span>
3026
+
3027
+
3028
+
3029
+ </a>
3030
+ </li>
3031
+
3032
+
3033
+
3034
+
3035
+
3036
+
3037
+
3038
+
3039
+
3040
+
3041
+ <li class="md-nav__item">
3042
+ <a href="../plugins/fff.html" class="md-nav__link">
3043
+
3044
+
3045
+
3046
+ <span class="md-ellipsis">
3047
+
3048
+
3049
+ FFF (Fake Functions)
3050
+
3051
+
3052
+
3053
+ </span>
3054
+
3055
+
3056
+
3057
+ </a>
3058
+ </li>
3059
+
3060
+
3061
+
3062
+
3063
+
3064
+
3065
+
3066
+
3067
+
3068
+
3069
+ <li class="md-nav__item">
3070
+ <a href="../plugins/command-hooks.html" class="md-nav__link">
3071
+
3072
+
3073
+
3074
+ <span class="md-ellipsis">
3075
+
3076
+
3077
+ Command Hooks
3078
+
3079
+
3080
+
3081
+ </span>
3082
+
3083
+
3084
+
3085
+ </a>
3086
+ </li>
3087
+
3088
+
3089
+
3090
+
3091
+
3092
+
3093
+
3094
+
3095
+
3096
+
3097
+ <li class="md-nav__item">
3098
+ <a href="../plugins/compile-commands-json-db.html" class="md-nav__link">
3099
+
3100
+
3101
+
3102
+ <span class="md-ellipsis">
3103
+
3104
+
3105
+ Compile Commands JSON DB
3106
+
3107
+
3108
+
3109
+ </span>
3110
+
3111
+
3112
+
3113
+ </a>
3114
+ </li>
3115
+
3116
+
3117
+
3118
+
3119
+
3120
+
3121
+
3122
+
3123
+
3124
+
3125
+ <li class="md-nav__item">
3126
+ <a href="../plugins/beep.html" class="md-nav__link">
3127
+
3128
+
3129
+
3130
+ <span class="md-ellipsis">
3131
+
3132
+
3133
+ Beep
3134
+
3135
+
3136
+
3137
+ </span>
3138
+
3139
+
3140
+
3141
+ </a>
3142
+ </li>
3143
+
3144
+
3145
+
3146
+
3147
+
3148
+
3149
+
3150
+
3151
+
3152
+
3153
+ <li class="md-nav__item">
3154
+ <a href="../plugins/module-generator.html" class="md-nav__link">
3155
+
3156
+
3157
+
3158
+ <span class="md-ellipsis">
3159
+
3160
+
3161
+ Module Generator
3162
+
3163
+
3164
+
3165
+ </span>
3166
+
3167
+
3168
+
3169
+ </a>
3170
+ </li>
3171
+
3172
+
3173
+
3174
+
3175
+
3176
+
3177
+
3178
+
3179
+
3180
+
3181
+ <li class="md-nav__item">
3182
+ <a href="../plugins/dependencies.html" class="md-nav__link">
3183
+
3184
+
3185
+
3186
+ <span class="md-ellipsis">
3187
+
3188
+
3189
+ Dependencies
3190
+
3191
+
3192
+
3193
+ </span>
3194
+
3195
+
3196
+
3197
+ </a>
3198
+ </li>
3199
+
3200
+
3201
+
3202
+
3203
+ </ul>
3204
+ </nav>
3205
+
3206
+ </li>
3207
+
3208
+
3209
+
3210
+
3211
+
3212
+
3213
+
3214
+
3215
+
3216
+
3217
+
3218
+
3219
+
3220
+
3221
+
3222
+
3223
+
3224
+
3225
+
3226
+
3227
+
3228
+
3229
+
3230
+
3231
+
3232
+
3233
+
3234
+
3235
+
3236
+
3237
+
3238
+
3239
+
3240
+
3241
+
3242
+
3243
+
3244
+
3245
+
3246
+ <li class="md-nav__item md-nav__item--nested">
3247
+
3248
+
3249
+
3250
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
3251
+
3252
+
3253
+ <div class="md-nav__link md-nav__container">
3254
+ <a href="../reference/index.html" class="md-nav__link ">
3255
+
3256
+
3257
+
3258
+ <span class="md-ellipsis">
3259
+
3260
+
3261
+ Reference
3262
+
3263
+
3264
+
3265
+ </span>
3266
+
3267
+
3268
+
3269
+ </a>
3270
+
3271
+
3272
+ <label class="md-nav__link " for="__nav_7" id="__nav_7_label" tabindex="0">
3273
+ <span class="md-nav__icon md-icon"></span>
3274
+ </label>
3275
+
3276
+ </div>
3277
+
3278
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
3279
+ <label class="md-nav__title" for="__nav_7">
3280
+ <span class="md-nav__icon md-icon"></span>
3281
+
3282
+
3283
+ Reference
3284
+
3285
+
3286
+ </label>
3287
+ <ul class="md-nav__list" data-md-scrollfix>
3288
+
3289
+
3290
+
3291
+
3292
+
3293
+
3294
+
3295
+
3296
+
3297
+ <li class="md-nav__item">
3298
+ <a href="../reference/command-line.html" class="md-nav__link">
3299
+
3300
+
3301
+
3302
+ <span class="md-ellipsis">
3303
+
3304
+
3305
+ Command Line
3306
+
3307
+
3308
+
3309
+ </span>
3310
+
3311
+
3312
+
3313
+ </a>
3314
+ </li>
3315
+
3316
+
3317
+
3318
+
3319
+
3320
+
3321
+
3322
+
3323
+
3324
+
3325
+ <li class="md-nav__item">
3326
+ <a href="../reference/project-configuration.html" class="md-nav__link">
3327
+
3328
+
3329
+
3330
+ <span class="md-ellipsis">
3331
+
3332
+
3333
+ Project Configuration
3334
+
3335
+
3336
+
3337
+ </span>
3338
+
3339
+
3340
+
3341
+ </a>
3342
+ </li>
3343
+
3344
+
3345
+
3346
+
3347
+
3348
+
3349
+
3350
+
3351
+
3352
+
3353
+ <li class="md-nav__item">
3354
+ <a href="../reference/build-directives.html" class="md-nav__link">
3355
+
3356
+
3357
+
3358
+ <span class="md-ellipsis">
3359
+
3360
+
3361
+ Test Build Directives
3362
+
3363
+
3364
+
3365
+ </span>
3366
+
3367
+
3368
+
3369
+ </a>
3370
+ </li>
3371
+
3372
+
3373
+
3374
+
3375
+
3376
+
3377
+
3378
+
3379
+
3380
+
3381
+ <li class="md-nav__item">
3382
+ <a href="../reference/partials-macros.html" class="md-nav__link">
3383
+
3384
+
3385
+
3386
+ <span class="md-ellipsis">
3387
+
3388
+
3389
+ Partials Macros
3390
+
3391
+
3392
+
3393
+ </span>
3394
+
3395
+
3396
+
3397
+ </a>
3398
+ </li>
3399
+
3400
+
3401
+
3402
+
3403
+
3404
+
3405
+
3406
+
3407
+
3408
+
3409
+ <li class="md-nav__item">
3410
+ <a href="../reference/environment-vars.html" class="md-nav__link">
3411
+
3412
+
3413
+
3414
+ <span class="md-ellipsis">
3415
+
3416
+
3417
+ Environment Variables
3418
+
3419
+
3420
+
3421
+ </span>
3422
+
3423
+
3424
+
3425
+ </a>
3426
+ </li>
3427
+
3428
+
3429
+
3430
+
3431
+
3432
+
3433
+
3434
+
3435
+
3436
+
3437
+ <li class="md-nav__item">
3438
+ <a href="../reference/gcov-plugin.html" class="md-nav__link">
3439
+
3440
+
3441
+
3442
+ <span class="md-ellipsis">
3443
+
3444
+
3445
+ Coverage Reporting
3446
+
3447
+
3448
+
3449
+ </span>
3450
+
3451
+
3452
+
3453
+ </a>
3454
+ </li>
3455
+
3456
+
3457
+
3458
+
3459
+
3460
+
3461
+
3462
+
3463
+
3464
+
3465
+ <li class="md-nav__item">
3466
+ <a href="../reference/global-collections.html" class="md-nav__link">
3467
+
3468
+
3469
+
3470
+ <span class="md-ellipsis">
3471
+
3472
+
3473
+ Global Collections
3474
+
3475
+
3476
+
3477
+ </span>
3478
+
3479
+
3480
+
3481
+ </a>
3482
+ </li>
3483
+
3484
+
3485
+
3486
+
3487
+ </ul>
3488
+ </nav>
3489
+
3490
+ </li>
3491
+
3492
+
3493
+
3494
+
3495
+
3496
+
3497
+
3498
+
3499
+
3500
+
3501
+
3502
+
3503
+
3504
+
3505
+
3506
+
3507
+
3508
+
3509
+
3510
+
3511
+
3512
+
3513
+
3514
+
3515
+
3516
+ <li class="md-nav__item md-nav__item--nested">
3517
+
3518
+
3519
+
3520
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
3521
+
3522
+
3523
+ <label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
3524
+
3525
+
3526
+
3527
+ <span class="md-ellipsis">
3528
+
3529
+
3530
+ Releases
3531
+
3532
+
3533
+
3534
+ </span>
3535
+
3536
+
3537
+
3538
+ <span class="md-nav__icon md-icon"></span>
3539
+ </label>
3540
+
3541
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
3542
+ <label class="md-nav__title" for="__nav_8">
3543
+ <span class="md-nav__icon md-icon"></span>
3544
+
3545
+
3546
+ Releases
3547
+
3548
+
3549
+ </label>
3550
+ <ul class="md-nav__list" data-md-scrollfix>
3551
+
3552
+
3553
+
3554
+
3555
+
3556
+
3557
+
3558
+ <li class="md-nav__item">
3559
+ <a href="../project/release-history.html" class="md-nav__link">
3560
+
3561
+
3562
+
3563
+ <span class="md-ellipsis">
3564
+
3565
+
3566
+ History Documents
3567
+
3568
+
3569
+
3570
+ </span>
3571
+
3572
+
3573
+
3574
+ </a>
3575
+ </li>
3576
+
3577
+
3578
+
3579
+
3580
+
3581
+
3582
+
3583
+
3584
+
3585
+
3586
+ <li class="md-nav__item">
3587
+ <a href="../project/upgrade.html" class="md-nav__link">
3588
+
3589
+
3590
+
3591
+ <span class="md-ellipsis">
3592
+
3593
+
3594
+ Upgrading
3595
+
3596
+
3597
+
3598
+ </span>
3599
+
3600
+
3601
+
3602
+ </a>
3603
+ </li>
3604
+
3605
+
3606
+
3607
+
3608
+ </ul>
3609
+ </nav>
3610
+
3611
+ </li>
3612
+
3613
+
3614
+
3615
+
3616
+
3617
+
3618
+
3619
+
3620
+
3621
+ <li class="md-nav__item">
3622
+ <a href="../help.html" class="md-nav__link">
3623
+
3624
+
3625
+
3626
+ <span class="md-ellipsis">
3627
+
3628
+
3629
+ Help
3630
+
3631
+
3632
+
3633
+ </span>
3634
+
3635
+
3636
+
3637
+ </a>
3638
+ </li>
3639
+
3640
+
3641
+
3642
+
3643
+
3644
+
3645
+
3646
+
3647
+
3648
+
3649
+
3650
+
3651
+
3652
+
3653
+
3654
+
3655
+
3656
+
3657
+
3658
+
3659
+
3660
+
3661
+
3662
+
3663
+
3664
+
3665
+
3666
+
3667
+
3668
+
3669
+
3670
+
3671
+
3672
+
3673
+ <li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
3674
+
3675
+
3676
+
3677
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_10" checked>
3678
+
3679
+
3680
+ <div class="md-nav__link md-nav__container">
3681
+ <a href="index.html" class="md-nav__link ">
3682
+
3683
+
3684
+
3685
+ <span class="md-ellipsis">
3686
+
3687
+
3688
+ Development
3689
+
3690
+
3691
+
3692
+ </span>
3693
+
3694
+
3695
+
3696
+ </a>
3697
+
3698
+
3699
+ <label class="md-nav__link " for="__nav_10" id="__nav_10_label" tabindex="">
3700
+ <span class="md-nav__icon md-icon"></span>
3701
+ </label>
3702
+
3703
+ </div>
3704
+
3705
+ <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="true">
3706
+ <label class="md-nav__title" for="__nav_10">
3707
+ <span class="md-nav__icon md-icon"></span>
3708
+
3709
+
3710
+ Development
3711
+
3712
+
3713
+ </label>
3714
+ <ul class="md-nav__list" data-md-scrollfix>
3715
+
3716
+
3717
+
3718
+
3719
+
3720
+
3721
+
3722
+
3723
+
3724
+
3725
+
3726
+ <li class="md-nav__item md-nav__item--active">
3727
+
3728
+ <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
3729
+
3730
+
3731
+
3732
+
3733
+
3734
+ <label class="md-nav__link md-nav__link--active" for="__toc">
3735
+
3736
+
3737
+
3738
+ <span class="md-ellipsis">
3739
+
3740
+
3741
+ Development Workflow
3742
+
3743
+
3744
+
3745
+ </span>
3746
+
3747
+
3748
+
3749
+ <span class="md-nav__icon md-icon"></span>
3750
+ </label>
3751
+
3752
+ <a href="workflow.html" class="md-nav__link md-nav__link--active">
3753
+
3754
+
3755
+
3756
+ <span class="md-ellipsis">
3757
+
3758
+
3759
+ Development Workflow
3760
+
3761
+
3762
+
3763
+ </span>
3764
+
3765
+
3766
+
3767
+ </a>
3768
+
3769
+
3770
+
3771
+ <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
3772
+
3773
+
3774
+
3775
+
3776
+
3777
+
3778
+ <label class="md-nav__title" for="__toc">
3779
+ <span class="md-nav__icon md-icon"></span>
3780
+ Table of contents
3781
+ </label>
3782
+ <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
3783
+
3784
+ <li class="md-nav__item">
3785
+ <a href="#installation-options" class="md-nav__link">
3786
+ <span class="md-ellipsis">
3787
+
3788
+ Installation options
3789
+
3790
+ </span>
3791
+ </a>
3792
+
3793
+ <nav class="md-nav" aria-label="Installation options">
3794
+ <ul class="md-nav__list">
3795
+
3796
+ <li class="md-nav__item">
3797
+ <a href="#local-installation" class="md-nav__link">
3798
+ <span class="md-ellipsis">
3799
+
3800
+ Local installation
3801
+
3802
+ </span>
3803
+ </a>
3804
+
3805
+ </li>
3806
+
3807
+ <li class="md-nav__item">
3808
+ <a href="#docker-image-usage" class="md-nav__link">
3809
+ <span class="md-ellipsis">
3810
+
3811
+ Docker image usage
3812
+
3813
+ </span>
3814
+ </a>
3815
+
3816
+ </li>
3817
+
3818
+ </ul>
3819
+ </nav>
3820
+
3821
+ </li>
3822
+
3823
+ <li class="md-nav__item">
3824
+ <a href="#managing-dependencies" class="md-nav__link">
3825
+ <span class="md-ellipsis">
3826
+
3827
+ Managing dependencies
3828
+
3829
+ </span>
3830
+ </a>
3831
+
3832
+ <nav class="md-nav" aria-label="Managing dependencies">
3833
+ <ul class="md-nav__list">
3834
+
3835
+ <li class="md-nav__item">
3836
+ <a href="#when-to-change-gemfile" class="md-nav__link">
3837
+ <span class="md-ellipsis">
3838
+
3839
+ When to change Gemfile
3840
+
3841
+ </span>
3842
+ </a>
3843
+
3844
+ </li>
3845
+
3846
+ <li class="md-nav__item">
3847
+ <a href="#choosing-version-constraints" class="md-nav__link">
3848
+ <span class="md-ellipsis">
3849
+
3850
+ Choosing version constraints
3851
+
3852
+ </span>
3853
+ </a>
3854
+
3855
+ </li>
3856
+
3857
+ <li class="md-nav__item">
3858
+ <a href="#after-changing-gemfile" class="md-nav__link">
3859
+ <span class="md-ellipsis">
3860
+
3861
+ After changing Gemfile
3862
+
3863
+ </span>
3864
+ </a>
3865
+
3866
+ </li>
3867
+
3868
+ <li class="md-nav__item">
3869
+ <a href="#checking-your-environment-without-installing-anything" class="md-nav__link">
3870
+ <span class="md-ellipsis">
3871
+
3872
+ Checking your environment without installing anything
3873
+
3874
+ </span>
3875
+ </a>
3876
+
3877
+ </li>
3878
+
3879
+ <li class="md-nav__item">
3880
+ <a href="#running-commands-against-ceedlings-bundler-environment" class="md-nav__link">
3881
+ <span class="md-ellipsis">
3882
+
3883
+ Running commands against Ceedling’s Bundler environment
3884
+
3885
+ </span>
3886
+ </a>
3887
+
3888
+ </li>
3889
+
3890
+ </ul>
3891
+ </nav>
3892
+
3893
+ </li>
3894
+
3895
+ <li class="md-nav__item">
3896
+ <a href="#running-self-tests" class="md-nav__link">
3897
+ <span class="md-ellipsis">
3898
+
3899
+ Running self-tests
3900
+
3901
+ </span>
3902
+ </a>
3903
+
3904
+ </li>
3905
+
3906
+ <li class="md-nav__item">
3907
+ <a href="#documentation" class="md-nav__link">
3908
+ <span class="md-ellipsis">
3909
+
3910
+ Documentation
3911
+
3912
+ </span>
3913
+ </a>
3914
+
3915
+ </li>
3916
+
3917
+ <li class="md-nav__item">
3918
+ <a href="#bin-vs-lib" class="md-nav__link">
3919
+ <span class="md-ellipsis">
3920
+
3921
+ bin/ vs. lib/
3922
+
3923
+ </span>
3924
+ </a>
3925
+
3926
+ </li>
3927
+
3928
+ </ul>
3929
+
3930
+ </nav>
3931
+
3932
+ </li>
3933
+
3934
+
3935
+
3936
+
3937
+
3938
+
3939
+
3940
+
3941
+
3942
+
3943
+
3944
+
3945
+
3946
+
3947
+
3948
+
3949
+
3950
+
3951
+
3952
+
3953
+
3954
+
3955
+
3956
+
3957
+
3958
+
3959
+
3960
+
3961
+
3962
+
3963
+
3964
+
3965
+
3966
+
3967
+
3968
+ <li class="md-nav__item md-nav__item--section md-nav__item--nested">
3969
+
3970
+
3971
+
3972
+ <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_10_3" >
3973
+
3974
+
3975
+ <div class="md-nav__link md-nav__container">
3976
+ <a href="plugins/index.html" class="md-nav__link ">
3977
+
3978
+
3979
+
3980
+ <span class="md-ellipsis">
3981
+
3982
+
3983
+ Plugin Development
3984
+
3985
+
3986
+
3987
+ </span>
3988
+
3989
+
3990
+
3991
+ </a>
3992
+
3993
+
3994
+ <label class="md-nav__link " for="__nav_10_3" id="__nav_10_3_label" tabindex="">
3995
+ <span class="md-nav__icon md-icon"></span>
3996
+ </label>
3997
+
3998
+ </div>
3999
+
4000
+ <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_10_3_label" aria-expanded="false">
4001
+ <label class="md-nav__title" for="__nav_10_3">
4002
+ <span class="md-nav__icon md-icon"></span>
4003
+
4004
+
4005
+ Plugin Development
4006
+
4007
+
4008
+ </label>
4009
+ <ul class="md-nav__list" data-md-scrollfix>
4010
+
4011
+
4012
+
4013
+
4014
+
4015
+
4016
+
4017
+
4018
+
4019
+ <li class="md-nav__item">
4020
+ <a href="plugins/configuration.html" class="md-nav__link">
4021
+
4022
+
4023
+
4024
+ <span class="md-ellipsis">
4025
+
4026
+
4027
+ Configuration Plugin
4028
+
4029
+
4030
+
4031
+ </span>
4032
+
4033
+
4034
+
4035
+ </a>
4036
+ </li>
4037
+
4038
+
4039
+
4040
+
4041
+
4042
+
4043
+
4044
+
4045
+
4046
+
4047
+ <li class="md-nav__item">
4048
+ <a href="plugins/plugin-subclass.html" class="md-nav__link">
4049
+
4050
+
4051
+
4052
+ <span class="md-ellipsis">
4053
+
4054
+
4055
+ Plugin Subclass
4056
+
4057
+
4058
+
4059
+ </span>
4060
+
4061
+
4062
+
4063
+ </a>
4064
+ </li>
4065
+
4066
+
4067
+
4068
+
4069
+
4070
+
4071
+
4072
+
4073
+
4074
+
4075
+ <li class="md-nav__item">
4076
+ <a href="plugins/rake-tasks.html" class="md-nav__link">
4077
+
4078
+
4079
+
4080
+ <span class="md-ellipsis">
4081
+
4082
+
4083
+ Rake Task Plugin
4084
+
4085
+
4086
+
4087
+ </span>
4088
+
4089
+
4090
+
4091
+ </a>
4092
+ </li>
4093
+
4094
+
4095
+
4096
+
4097
+ </ul>
4098
+ </nav>
4099
+
4100
+ </li>
4101
+
4102
+
4103
+
4104
+
4105
+ </ul>
4106
+ </nav>
4107
+
4108
+ </li>
4109
+
4110
+
4111
+
4112
+ </ul>
4113
+ </nav>
4114
+ </div>
4115
+ </div>
4116
+ </div>
4117
+
4118
+
4119
+
4120
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
4121
+ <div class="md-sidebar__scrollwrap">
4122
+ <div class="md-sidebar__inner">
4123
+
4124
+
4125
+ <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
4126
+
4127
+
4128
+
4129
+
4130
+
4131
+
4132
+ <label class="md-nav__title" for="__toc">
4133
+ <span class="md-nav__icon md-icon"></span>
4134
+ Table of contents
4135
+ </label>
4136
+ <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
4137
+
4138
+ <li class="md-nav__item">
4139
+ <a href="#installation-options" class="md-nav__link">
4140
+ <span class="md-ellipsis">
4141
+
4142
+ Installation options
4143
+
4144
+ </span>
4145
+ </a>
4146
+
4147
+ <nav class="md-nav" aria-label="Installation options">
4148
+ <ul class="md-nav__list">
4149
+
4150
+ <li class="md-nav__item">
4151
+ <a href="#local-installation" class="md-nav__link">
4152
+ <span class="md-ellipsis">
4153
+
4154
+ Local installation
4155
+
4156
+ </span>
4157
+ </a>
4158
+
4159
+ </li>
4160
+
4161
+ <li class="md-nav__item">
4162
+ <a href="#docker-image-usage" class="md-nav__link">
4163
+ <span class="md-ellipsis">
4164
+
4165
+ Docker image usage
4166
+
4167
+ </span>
4168
+ </a>
4169
+
4170
+ </li>
4171
+
4172
+ </ul>
4173
+ </nav>
4174
+
4175
+ </li>
4176
+
4177
+ <li class="md-nav__item">
4178
+ <a href="#managing-dependencies" class="md-nav__link">
4179
+ <span class="md-ellipsis">
4180
+
4181
+ Managing dependencies
4182
+
4183
+ </span>
4184
+ </a>
4185
+
4186
+ <nav class="md-nav" aria-label="Managing dependencies">
4187
+ <ul class="md-nav__list">
4188
+
4189
+ <li class="md-nav__item">
4190
+ <a href="#when-to-change-gemfile" class="md-nav__link">
4191
+ <span class="md-ellipsis">
4192
+
4193
+ When to change Gemfile
4194
+
4195
+ </span>
4196
+ </a>
4197
+
4198
+ </li>
4199
+
4200
+ <li class="md-nav__item">
4201
+ <a href="#choosing-version-constraints" class="md-nav__link">
4202
+ <span class="md-ellipsis">
4203
+
4204
+ Choosing version constraints
4205
+
4206
+ </span>
4207
+ </a>
4208
+
4209
+ </li>
4210
+
4211
+ <li class="md-nav__item">
4212
+ <a href="#after-changing-gemfile" class="md-nav__link">
4213
+ <span class="md-ellipsis">
4214
+
4215
+ After changing Gemfile
4216
+
4217
+ </span>
4218
+ </a>
4219
+
4220
+ </li>
4221
+
4222
+ <li class="md-nav__item">
4223
+ <a href="#checking-your-environment-without-installing-anything" class="md-nav__link">
4224
+ <span class="md-ellipsis">
4225
+
4226
+ Checking your environment without installing anything
4227
+
4228
+ </span>
4229
+ </a>
4230
+
4231
+ </li>
4232
+
4233
+ <li class="md-nav__item">
4234
+ <a href="#running-commands-against-ceedlings-bundler-environment" class="md-nav__link">
4235
+ <span class="md-ellipsis">
4236
+
4237
+ Running commands against Ceedling’s Bundler environment
4238
+
4239
+ </span>
4240
+ </a>
4241
+
4242
+ </li>
4243
+
4244
+ </ul>
4245
+ </nav>
4246
+
4247
+ </li>
4248
+
4249
+ <li class="md-nav__item">
4250
+ <a href="#running-self-tests" class="md-nav__link">
4251
+ <span class="md-ellipsis">
4252
+
4253
+ Running self-tests
4254
+
4255
+ </span>
4256
+ </a>
4257
+
4258
+ </li>
4259
+
4260
+ <li class="md-nav__item">
4261
+ <a href="#documentation" class="md-nav__link">
4262
+ <span class="md-ellipsis">
4263
+
4264
+ Documentation
4265
+
4266
+ </span>
4267
+ </a>
4268
+
4269
+ </li>
4270
+
4271
+ <li class="md-nav__item">
4272
+ <a href="#bin-vs-lib" class="md-nav__link">
4273
+ <span class="md-ellipsis">
4274
+
4275
+ bin/ vs. lib/
4276
+
4277
+ </span>
4278
+ </a>
4279
+
4280
+ </li>
4281
+
4282
+ </ul>
4283
+
4284
+ </nav>
4285
+ </div>
4286
+ </div>
4287
+ </div>
4288
+
4289
+
4290
+
4291
+ <div class="md-content" data-md-component="content">
4292
+
4293
+
4294
+
4295
+
4296
+
4297
+
4298
+
4299
+
4300
+ <nav class="md-path" aria-label="Navigation" >
4301
+ <ol class="md-path__list">
4302
+
4303
+
4304
+
4305
+
4306
+ <li class="md-path__item">
4307
+ <a href="../index.html" class="md-path__link">
4308
+
4309
+ <span class="md-ellipsis">
4310
+ Home
4311
+ </span>
4312
+
4313
+ </a>
4314
+ </li>
4315
+
4316
+
4317
+
4318
+
4319
+
4320
+
4321
+
4322
+
4323
+
4324
+ <li class="md-path__item">
4325
+ <a href="index.html" class="md-path__link">
4326
+
4327
+ <span class="md-ellipsis">
4328
+ Development
4329
+ </span>
4330
+
4331
+ </a>
4332
+ </li>
4333
+
4334
+
4335
+
4336
+
4337
+ </ol>
4338
+ </nav>
4339
+
4340
+
4341
+ <article class="md-content__inner md-typeset">
4342
+
4343
+
4344
+
4345
+
4346
+
4347
+
4348
+
4349
+
4350
+ <h1 id="ceedling-development">Ceedling development</h1>
4351
+ <h2 id="installation-options">Installation options</h2>
4352
+ <h3 id="local-installation">Local installation</h3>
4353
+ <p>After installing Ruby…</p>
4354
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="w"> </span>&gt;<span class="w"> </span>git<span class="w"> </span>clone<span class="w"> </span>--recursive<span class="w"> </span>https://github.com/throwtheswitch/ceedling.git
4355
+ <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="w"> </span>&gt;<span class="w"> </span><span class="nb">cd</span><span class="w"> </span>ceedling
4356
+ <a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a><span class="w"> </span>&gt;<span class="w"> </span>git<span class="w"> </span>submodule<span class="w"> </span>update<span class="w"> </span>--init<span class="w"> </span>--recursive
4357
+ <a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a><span class="w"> </span>&gt;<span class="w"> </span>bundle<span class="w"> </span>install
4358
+ </code></pre></div>
4359
+ <p>The Ceedling repository incorporates its supporting frameworks and some
4360
+ plugins via Git submodules. A simple clone may not pull in the latest
4361
+ and greatest.</p>
4362
+ <p>The <code>bundle</code> tool ensures you have all needed Ruby gems installed. If
4363
+ Bundler isn’t installed on your system or you run into problems, you
4364
+ might have to install it:</p>
4365
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="w"> </span>&gt;<span class="w"> </span>sudo<span class="w"> </span>gem<span class="w"> </span>install<span class="w"> </span>bundler
4366
+ </code></pre></div>
4367
+ <p>If you run into trouble running bundler and get messages like <em>can’t
4368
+ find gem bundler (&gt;= 0.a) with executable bundle
4369
+ (Gem::GemNotFoundException)</em>, you may need to install a different
4370
+ version of Bundler. For this please reference the version in the
4371
+ Gemfile.lock.</p>
4372
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a><span class="w"> </span>&gt;<span class="w"> </span>sudo<span class="w"> </span>gem<span class="w"> </span>install<span class="w"> </span>bundler<span class="w"> </span>-v<span class="w"> </span>&lt;version<span class="w"> </span><span class="k">in</span><span class="w"> </span>Gemfile.lock&gt;
4373
+ </code></pre></div>
4374
+ <h3 id="docker-image-usage">Docker image usage</h3>
4375
+ <p>As an alternative to local installation of Ceedling, nearly all development
4376
+ tasks can be accomplished with the <em>MadScienceLab</em> Docker images.</p>
4377
+ <p>When running an existing image as a development container, one merely needs
4378
+ to map a volume from your local Ceedling code repository to Ceedling’s
4379
+ installation location within the container. With that accomplished,
4380
+ experimenting with project builds and running self-tests is simple.</p>
4381
+ <ol>
4382
+ <li>Start your target Docker container from your host system terminal:</li>
4383
+ </ol>
4384
+ <p><div class="highlight"><pre><span></span><code><a id="__codelineno-3-1" name="__codelineno-3-1" href="#__codelineno-3-1"></a>&gt;<span class="w"> </span>docker<span class="w"> </span>run<span class="w"> </span>-it<span class="w"> </span>--rm<span class="w"> </span>throwtheswitch/&lt;image&gt;:&lt;tag&gt;
4385
+ </code></pre></div>
4386
+ 1. Look up and note Ceedling’s installation path (listed in <code>version</code> output) from within the container command line:</p>
4387
+ <p><div class="highlight"><pre><span></span><code><a id="__codelineno-4-1" name="__codelineno-4-1" href="#__codelineno-4-1"></a>~/project<span class="w"> </span>&gt;<span class="w"> </span>ceedling<span class="w"> </span>version
4388
+ </code></pre></div>
4389
+ 1. Exit the container.
4390
+ 1. Restart the container from your host system with the Ceedling installation
4391
+ volume mapping from (2) and any other command line options you need:</p>
4392
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a>&gt;<span class="w"> </span>docker<span class="w"> </span>run<span class="w"> </span>-it<span class="w"> </span>--rm<span class="w"> </span>-v<span class="w"> </span>/my/local/ceedling/repo:&lt;container<span class="w"> </span>installation<span class="w"> </span>path&gt;<span class="w"> </span>-v<span class="w"> </span>/my/local/experiment/path:/home/dev/project<span class="w"> </span>throwtheswitch/&lt;image&gt;:&lt;tag&gt;
4393
+ </code></pre></div>
4394
+ <p>For development tasks, from the container shell you can:</p>
4395
+ <ol>
4396
+ <li>Run experiment projects you map into the container (e.g. at <em>/home/dev/project</em>).</li>
4397
+ <li>Run the self-test suite. Navigate to the gem installation path discovered in (2) above. From this location, follow the instructions in the section that immediately follows.</li>
4398
+ </ol>
4399
+ <h2 id="managing-dependencies">Managing dependencies</h2>
4400
+ <p>Two files declare Ceedling’s Ruby dependencies.</p>
4401
+ <ul>
4402
+ <li><strong><code>ceedling.gemspec</code></strong> is part of the Ceedling gem publication process —
4403
+ it declares the runtime dependencies that ship with every published
4404
+ <code>ceedling</code> gem, installed via <code>gem install ceedling</code> regardless of
4405
+ Bundler.</li>
4406
+ <li><strong><code>Gemfile</code></strong> declares dependencies for the development/contributor
4407
+ environment — running the self-test suite, generating docs, and so on.
4408
+ It duplicates <code>ceedling.gemspec</code>’s runtime dependencies by hand rather
4409
+ than using Bundler’s <code>gemspec</code> directive, and it adds development/test-only
4410
+ tools that real users never need.</li>
4411
+ </ul>
4412
+ <p>Because <code>Gemfile</code> duplicates rather than references <code>ceedling.gemspec</code>,
4413
+ keeping the two in sync for any shared runtime dependency is a manual step.</p>
4414
+ <h3 id="when-to-change-gemfile">When to change <code>Gemfile</code></h3>
4415
+ <ul>
4416
+ <li><strong>Adding or changing a runtime dependency</strong> — a dependency real Ceedling
4417
+ users and developers both need:</li>
4418
+ <li>Add or update it in <code>ceedling.gemspec</code>.</li>
4419
+ <li>Mirror the same entry into <code>Gemfile</code>’s <code># Ceedling dependencies</code> section
4420
+ so the development/contributor Bundler environment matches what real
4421
+ users get.</li>
4422
+ <li><strong>Adding, removing, or updating a development/test-only tool</strong> (e.g. an
4423
+ RSpec helper) — change only <code>Gemfile</code>, under <code># Testing tools</code>. These have
4424
+ no bearing on the published gem’s dependencies and don’t belong in
4425
+ <code>ceedling.gemspec</code>.</li>
4426
+ </ul>
4427
+ <h3 id="choosing-version-constraints">Choosing version constraints</h3>
4428
+ <div class="admonition note">
4429
+ <p class="admonition-title">Note</p>
4430
+ <p>Runtime dependency constraints declared in <code>ceedling.gemspec</code> and their
4431
+ mirrored <code>Gemfile</code> entries should always match exactly.</p>
4432
+ </div>
4433
+ <p>This repository favors conservative version constraints.</p>
4434
+ <ul>
4435
+ <li><code>~&gt; X.Y</code>, the pessimistic operator, for most dependencies — it allows
4436
+ patch/minor updates within a major version and blocks the next major
4437
+ version, where a breaking change is more likely.</li>
4438
+ <li>An explicit range (<code>&gt;= X</code>, <code>&lt; Y</code>) where a specific known-incompatible
4439
+ upper bound exists.</li>
4440
+ <li>An open floor (<code>&gt;= X</code>) only where no meaningful upper bound is known or
4441
+ necessary, and a specific minimum version is what actually provides
4442
+ required functionality.</li>
4443
+ </ul>
4444
+ <p>When adding or changing a constraint, prefer the loosest bound that still
4445
+ guarantees the API or behavior Ceedling’s code actually depends on — check
4446
+ the calling code for what’s used (specific method signatures, keyword
4447
+ arguments, etc.) rather than defaulting to "pin to whatever’s newest."</p>
4448
+ <p>A floor stricter than functionally necessary can force otherwise-unneeded
4449
+ work at install time — fetching and building a newer version of a
4450
+ dependency when an already-available version will do.</p>
4451
+ <h3 id="after-changing-gemfile">After changing <code>Gemfile</code></h3>
4452
+ <p>Whenever you change <code>Gemfile</code>, regenerate <code>Gemfile.lock</code> with:</p>
4453
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a><span class="w"> </span>&gt;<span class="w"> </span>bundle<span class="w"> </span>install<span class="w"> </span>--prefer-local
4454
+ </code></pre></div>
4455
+ <p>Two choices in that exact command are worth understanding:</p>
4456
+ <ul>
4457
+ <li><strong><code>--prefer-local</code></strong> — prefers an already-installed gem, including Ruby’s
4458
+ own default gems, over fetching a newer gem, as long every <code>Gemfile</code>
4459
+ constraint is respected.</li>
4460
+ <li><strong><code>bundle install</code>, not <code>bundle update</code></strong> — resolve only what changed,
4461
+ leaving everything else in <code>Gemfile.lock</code> locked as-is. A bare
4462
+ <code>bundle update</code> re-resolves the entire dependency graph
4463
+ to the newest versions satisfying all constraints, which can bump many
4464
+ unrelated transitive dependencies at once and produce a large,
4465
+ hard-to-review <code>Gemfile.lock</code> diff.</li>
4466
+ </ul>
4467
+ <div class="admonition tip">
4468
+ <p class="admonition-title">Tip</p>
4469
+ <p>For a deliberate, targeted bump of one specific gem, use
4470
+ <code>bundle update &lt;gem name&gt;</code> instead of <code>bundle update</code>.</p>
4471
+ </div>
4472
+ <p><code>Gemfile</code> must sometimes declare gems that also ship as Ruby’s own built-in
4473
+ default gems to deal with Ruby’s own package management across multiple
4474
+ supported Ruby language versions (e.g. a default gem is kicked out of Ruby’s
4475
+ core). Without <code>--prefer-local</code>, Bundler resolves to the newest
4476
+ version satisfying the constraint from <code>rubygems.org</code> regardless — even
4477
+ when Ruby’s built-in version already satisfies it — forcing an unnecessary
4478
+ fetch-and-compile of a standalone copy. If that gem itself depends on
4479
+ something with a native C extension, this also then requires a full C
4480
+ toolchain and Ruby’s development headers, which aren’t guaranteed to be
4481
+ present on every system, particularly slim/minimal Docker images.</p>
4482
+ <p>Commit the resulting <code>Gemfile.lock</code> changes alongside your <code>Gemfile</code> edit.</p>
4483
+ <p><strong>Note:</strong> <code>--prefer-local</code> is install-time-only — as of this writing
4484
+ there’s no persistent <code>bundle config</code> equivalent. So, the <code>--prefer-local</code>
4485
+ flag must be passed explicitly every time.</p>
4486
+ <div class="admonition tip">
4487
+ <p class="admonition-title">Tip</p>
4488
+ <p>If you'd rather not remember the <code>--prefer-local</code>, add a shell alias,
4489
+ e.g. in <code>~/.bashrc</code> / <code>~/.zshrc</code>:</p>
4490
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a><span class="nb">alias</span><span class="w"> </span>bundle-install-local<span class="o">=</span><span class="s2">&quot;bundle install --prefer-local&quot;</span>
4491
+ </code></pre></div>
4492
+ </div>
4493
+ <h3 id="checking-your-environment-without-installing-anything">Checking your environment without installing anything</h3>
4494
+ <p>To confirm your currently-installed gems still satisfy <code>Gemfile</code> /
4495
+ <code>Gemfile.lock</code> without triggering any installs or fetches:</p>
4496
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-8-1" name="__codelineno-8-1" href="#__codelineno-8-1"></a><span class="w"> </span>&gt;<span class="w"> </span>bundle<span class="w"> </span>check
4497
+ </code></pre></div>
4498
+ <h3 id="running-commands-against-ceedlings-bundler-environment">Running commands against Ceedling’s Bundler environment</h3>
4499
+ <p>Any Ruby-based development command that depends on the gems declared in
4500
+ <code>Gemfile</code> (running specs, Rake tasks, etc.) should run through Bundler’s
4501
+ managed environment so the exact versions recorded in <code>Gemfile.lock</code> are
4502
+ what actually get loaded, rather than whatever happens to be installed
4503
+ globally on your system.</p>
4504
+ <p><code>rake spec</code> and other Rake tasks in this repo already do this
4505
+ automatically; if you ever invoke an RSpec or Ruby command directly
4506
+ instead of through a Rake task, prefix it with <code>bundle exec</code>:</p>
4507
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-9-1" name="__codelineno-9-1" href="#__codelineno-9-1"></a><span class="w"> </span>&gt;<span class="w"> </span>bundle<span class="w"> </span><span class="nb">exec</span><span class="w"> </span>rspec<span class="w"> </span>spec/some_spec.rb
4508
+ </code></pre></div>
4509
+ <h2 id="running-self-tests">Running self-tests</h2>
4510
+ <p>Ceedling uses <a href="https://rspec.info">RSpec</a> for its tests.</p>
4511
+ <p>To execute tests you may run the following from the root of your local
4512
+ Ceedling repository. This test suite build option balances test coverage
4513
+ with suite execution time.</p>
4514
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-10-1" name="__codelineno-10-1" href="#__codelineno-10-1"></a><span class="w"> </span>&gt;<span class="w"> </span>rake<span class="w"> </span>spec
4515
+ </code></pre></div>
4516
+ <p>To run individual test files (Ceedling’s Ruby-based tests, that is) and
4517
+ perform other tasks, use the available Rake tasks. From the root of your
4518
+ local Ceedling repo, list those task like this:</p>
4519
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-11-1" name="__codelineno-11-1" href="#__codelineno-11-1"></a><span class="w"> </span>&gt;<span class="w"> </span>rake<span class="w"> </span>-T
4520
+ </code></pre></div>
4521
+ <h2 id="documentation">Documentation</h2>
4522
+ <p>Ceedling’s documentation is built with <a href="https://www.mkdocs.org">MkDocs</a> + <a href="https://squidfunk.github.io/mkdocs-material/">Material theme</a> and versioned
4523
+ with <a href="https://github.com/jimporter/mike">mike</a>. All Markdown source lives under <code>docs/mkdocs/</code>. The public site
4524
+ configuration is in <code>mkdocs.yml</code> while the local site bundle configuration is in
4525
+ <code>mkdocs.local.yml</code>.</p>
4526
+ <p><strong>First-time setup</strong> (installs MkDocs, Material, and mike into the container):</p>
4527
+ <div class="highlight"><pre><span></span><code><a id="__codelineno-12-1" name="__codelineno-12-1" href="#__codelineno-12-1"></a><span class="w"> </span>&gt;<span class="w"> </span>rake<span class="w"> </span>docs:install
4528
+ </code></pre></div>
4529
+ <p><strong>Available Rake tasks:</strong></p>
4530
+ <table>
4531
+ <thead>
4532
+ <tr>
4533
+ <th>Task</th>
4534
+ <th>Description</th>
4535
+ </tr>
4536
+ </thead>
4537
+ <tbody>
4538
+ <tr>
4539
+ <td><code>rake docs:install</code></td>
4540
+ <td>Install Python documentation tooling</td>
4541
+ </tr>
4542
+ <tr>
4543
+ <td><code>rake docs:build:local</code></td>
4544
+ <td>Build the site for local filesystem navigation in strict mode — fails on broken links or warnings</td>
4545
+ </tr>
4546
+ <tr>
4547
+ <td><code>rake docs:build:web</code></td>
4548
+ <td>Build the site to be served in strict mode — fails on broken links or warnings</td>
4549
+ </tr>
4550
+ <tr>
4551
+ <td><code>rake docs:serve</code></td>
4552
+ <td>Serve plain MkDocs site locally on port 8000</td>
4553
+ </tr>
4554
+ <tr>
4555
+ <td><code>rake docs:deploy</code></td>
4556
+ <td>Deploy <code>dev</code> version to local <code>gh-pages</code> branch (no remote push)</td>
4557
+ </tr>
4558
+ <tr>
4559
+ <td><code>rake docs:preview</code></td>
4560
+ <td>Browse mike-versioned site locally on port 8000</td>
4561
+ </tr>
4562
+ </tbody>
4563
+ </table>
4564
+ <p><strong>Browser preview in VS Code:</strong> When <code>mkdocs serve</code> or <code>mike serve</code> binds to
4565
+ port 8000, VS Code detects it and shows a notification. The <strong>Ports</strong> panel also
4566
+ provides an <strong>Open in Browser</strong> button.</p>
4567
+ <p><strong>Hosted site:</strong> <a href="https://throwtheswitch.github.io/Ceedling/">https://throwtheswitch.github.io/Ceedling/</a></p>
4568
+ <h2 id="bin-vs-lib"><code>bin/</code> vs. <code>lib/</code></h2>
4569
+ <p>Most of Ceedling’s functionality is contained in the application code residing
4570
+ in <code>lib/</code>. Ceedling’s command line handling, startup configuration, project
4571
+ file loading, and mixin handling are contained in a “bootloader” in <code>bin/</code>.
4572
+ The code in <code>bin/</code> is the source of the <code>ceedling</code> command line tool and
4573
+ launches the application from <code>lib/</code>.</p>
4574
+ <p>Depending on what you’re working on you may need to run Ceedling using
4575
+ a specialized approach.</p>
4576
+ <p>If you are only working in <code>lib/</code>, you can:</p>
4577
+ <ol>
4578
+ <li>Run Ceedling using the <code>ceedling</code> command line utility you already have
4579
+ installed. The code in <code>bin/</code> will run from your locally installed gem or
4580
+ from within your Docker container and launch the Ceedling application for
4581
+ you.</li>
4582
+ <li>Modify a project file by setting a path value for <code>:project</code> ↳ <code>:which_ceedling</code>
4583
+ that points to the local copy of Ceedling you cloned from the Git repository.</li>
4584
+ </ol>
4585
+ <p>If you are working in <code>bin/</code>, running <code>ceedling</code> at the command line will not
4586
+ call your modified code. Instead, you must execute the path to the executable
4587
+ <code>ceedling</code> in the <code>bin/</code> folder of the local Ceedling repository you are
4588
+ working on.</p>
4589
+ <p><br/><br/></p>
4590
+
4591
+
4592
+
4593
+
4594
+
4595
+
4596
+
4597
+
4598
+
4599
+
4600
+
4601
+
4602
+
4603
+ </article>
4604
+ </div>
4605
+
4606
+
4607
+ <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
4608
+ </div>
4609
+
4610
+ <button type="button" class="md-top md-icon" data-md-component="top" hidden>
4611
+
4612
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg>
4613
+ Back to top
4614
+ </button>
4615
+
4616
+ </main>
4617
+
4618
+ <footer class="md-footer">
4619
+
4620
+ <div class="md-footer-meta md-typeset">
4621
+ <div class="md-footer-meta__inner md-grid">
4622
+ <div class="md-copyright">
4623
+
4624
+ <div class="md-copyright__highlight">
4625
+ &copy; 2010-2026 M. Karlesky, M. VanderVoord, and G. Williams &mdash; Documentation license: <a href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">CC BY-SA 4.0</a>
4626
+ </div>
4627
+
4628
+
4629
+ </div>
4630
+
4631
+
4632
+ <div class="md-social">
4633
+
4634
+
4635
+
4636
+
4637
+
4638
+ <a href="https://github.com/sponsors/ThrowTheSwitch" target="_blank" rel="noopener" title="Sponsor ThrowTheSwitch on GitHub" class="md-social__link">
4639
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M173.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M252.8 8C114.1 8 8 113.3 8 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C436.2 457.8 504 362.9 504 252 504 113.3 391.5 8 252.8 8M105.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
4640
+ </a>
4641
+
4642
+ </div>
4643
+
4644
+ </div>
4645
+ </div>
4646
+ </footer>
4647
+
4648
+ </div>
4649
+ <div class="md-dialog" data-md-component="dialog">
4650
+ <div class="md-dialog__inner md-typeset"></div>
4651
+ </div>
4652
+
4653
+
4654
+
4655
+
4656
+
4657
+ <script id="__config" type="application/json">{"annotate": null, "base": "..", "features": ["navigation.tabs", "navigation.sections", "navigation.top", "navigation.indexes", "navigation.path", "search.suggest", "search.highlight", "content.code.copy", "content.code.annotate"], "search": "../assets/javascripts/workers/search.2c215733.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"default": "latest", "provider": "mike"}}</script>
4658
+
4659
+
4660
+ <script src="../assets/javascripts/bundle.79ae519e.min.js"></script>
4661
+
4662
+
4663
+ </body>
4664
+ </html>