ceedling 0.13.0 → 0.15.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 (308) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +18 -14
  4. data/README.md +6 -4
  5. data/assets/project_as_gem.yml +1 -1
  6. data/assets/rakefile_as_gem.rb +2 -0
  7. data/assets/rakefile_with_guts.rb +3 -1
  8. data/ceedling.gemspec +1 -0
  9. data/examples/blinky/rakefile.rb +2 -2
  10. data/examples/temp_sensor/rakefile.rb +1 -1
  11. data/examples/temp_sensor/src/TemperatureFilter.c +1 -2
  12. data/examples/temp_sensor/test/TestTemperatureCalculator.c +1 -1
  13. data/examples/temp_sensor/test/TestTemperatureFilter.c +12 -2
  14. data/lib/ceedling.rb +94 -22
  15. data/lib/{build_invoker_utils.rb → ceedling/build_invoker_utils.rb} +27 -27
  16. data/lib/{cacheinator.rb → ceedling/cacheinator.rb} +42 -42
  17. data/lib/{cacheinator_helper.rb → ceedling/cacheinator_helper.rb} +12 -12
  18. data/lib/{cmock_builder.rb → ceedling/cmock_builder.rb} +15 -15
  19. data/lib/{configurator.rb → ceedling/configurator.rb} +333 -329
  20. data/lib/{configurator_builder.rb → ceedling/configurator_builder.rb} +437 -437
  21. data/lib/{configurator_plugins.rb → ceedling/configurator_plugins.rb} +124 -124
  22. data/lib/{configurator_setup.rb → ceedling/configurator_setup.rb} +124 -124
  23. data/lib/{configurator_validator.rb → ceedling/configurator_validator.rb} +184 -184
  24. data/lib/{constants.rb → ceedling/constants.rb} +20 -17
  25. data/lib/{defaults.rb → ceedling/defaults.rb} +19 -18
  26. data/lib/{dependinator.rb → ceedling/dependinator.rb} +92 -92
  27. data/lib/{erb_wrapper.rb → ceedling/erb_wrapper.rb} +8 -8
  28. data/lib/{file_finder.rb → ceedling/file_finder.rb} +132 -132
  29. data/lib/{file_finder_helper.rb → ceedling/file_finder_helper.rb} +54 -54
  30. data/lib/{file_path_utils.rb → ceedling/file_path_utils.rb} +189 -189
  31. data/lib/{file_system_utils.rb → ceedling/file_system_utils.rb} +69 -69
  32. data/lib/{file_system_wrapper.rb → ceedling/file_system_wrapper.rb} +9 -9
  33. data/lib/{file_wrapper.rb → ceedling/file_wrapper.rb} +79 -79
  34. data/lib/{flaginator.rb → ceedling/flaginator.rb} +54 -54
  35. data/lib/{generator.rb → ceedling/generator.rb} +164 -164
  36. data/lib/{generator_helper.rb → ceedling/generator_helper.rb} +40 -40
  37. data/lib/{generator_test_results.rb → ceedling/generator_test_results.rb} +86 -89
  38. data/lib/{generator_test_results_sanity_checker.rb → ceedling/generator_test_results_sanity_checker.rb} +64 -62
  39. data/lib/{generator_test_runner.rb → ceedling/generator_test_runner.rb} +63 -63
  40. data/lib/{loginator.rb → ceedling/loginator.rb} +31 -31
  41. data/lib/{makefile.rb → ceedling/makefile.rb} +0 -0
  42. data/lib/{objects.yml → ceedling/objects.yml} +0 -0
  43. data/lib/{par_map.rb → ceedling/par_map.rb} +0 -0
  44. data/lib/{plugin.rb → ceedling/plugin.rb} +80 -80
  45. data/lib/{plugin_builder.rb → ceedling/plugin_builder.rb} +52 -52
  46. data/lib/{plugin_manager.rb → ceedling/plugin_manager.rb} +107 -107
  47. data/lib/{plugin_manager_helper.rb → ceedling/plugin_manager_helper.rb} +19 -19
  48. data/lib/{plugin_reportinator.rb → ceedling/plugin_reportinator.rb} +2 -2
  49. data/lib/{plugin_reportinator_helper.rb → ceedling/plugin_reportinator_helper.rb} +1 -1
  50. data/lib/{preprocessinator.rb → ceedling/preprocessinator.rb} +43 -43
  51. data/lib/{preprocessinator_extractor.rb → ceedling/preprocessinator_extractor.rb} +30 -30
  52. data/lib/{preprocessinator_file_handler.rb → ceedling/preprocessinator_file_handler.rb} +21 -21
  53. data/lib/{preprocessinator_helper.rb → ceedling/preprocessinator_helper.rb} +46 -46
  54. data/lib/ceedling/preprocessinator_includes_handler.rb +82 -0
  55. data/lib/{project_config_manager.rb → ceedling/project_config_manager.rb} +38 -38
  56. data/lib/{project_file_loader.rb → ceedling/project_file_loader.rb} +64 -64
  57. data/lib/{rake_utils.rb → ceedling/rake_utils.rb} +17 -17
  58. data/lib/{rake_wrapper.rb → ceedling/rake_wrapper.rb} +33 -33
  59. data/lib/{rakefile.rb → ceedling/rakefile.rb} +78 -74
  60. data/lib/{release_invoker.rb → ceedling/release_invoker.rb} +58 -58
  61. data/lib/{release_invoker_helper.rb → ceedling/release_invoker_helper.rb} +16 -16
  62. data/lib/{reportinator.rb → ceedling/reportinator.rb} +9 -9
  63. data/lib/{rules_cmock.rake → ceedling/rules_cmock.rake} +9 -9
  64. data/lib/{rules_preprocess.rake → ceedling/rules_preprocess.rake} +26 -26
  65. data/lib/{rules_release.rake → ceedling/rules_release.rake} +79 -79
  66. data/lib/{rules_release_deep_dependencies.rake → ceedling/rules_release_deep_dependencies.rake} +15 -15
  67. data/lib/{rules_tests.rake → ceedling/rules_tests.rake} +59 -59
  68. data/lib/{rules_tests_deep_dependencies.rake → ceedling/rules_tests_deep_dependencies.rake} +15 -15
  69. data/lib/{setupinator.rb → ceedling/setupinator.rb} +51 -51
  70. data/lib/{stream_wrapper.rb → ceedling/stream_wrapper.rb} +20 -20
  71. data/lib/{streaminator.rb → ceedling/streaminator.rb} +40 -41
  72. data/lib/{streaminator_helper.rb → ceedling/streaminator_helper.rb} +15 -15
  73. data/lib/{system_utils.rb → ceedling/system_utils.rb} +0 -0
  74. data/lib/{system_wrapper.rb → ceedling/system_wrapper.rb} +76 -76
  75. data/lib/{target_loader.rb → ceedling/target_loader.rb} +0 -0
  76. data/lib/{task_invoker.rb → ceedling/task_invoker.rb} +89 -89
  77. data/lib/{tasks_base.rake → ceedling/tasks_base.rake} +104 -104
  78. data/lib/{tasks_filesystem.rake → ceedling/tasks_filesystem.rake} +91 -91
  79. data/lib/{tasks_release.rake → ceedling/tasks_release.rake} +28 -28
  80. data/lib/{tasks_release_deep_dependencies.rake → ceedling/tasks_release_deep_dependencies.rake} +9 -9
  81. data/lib/{tasks_tests.rake → ceedling/tasks_tests.rake} +52 -52
  82. data/lib/{tasks_tests_deep_dependencies.rake → ceedling/tasks_tests_deep_dependencies.rake} +9 -9
  83. data/lib/{tasks_vendor.rake → ceedling/tasks_vendor.rake} +36 -36
  84. data/lib/{test_includes_extractor.rb → ceedling/test_includes_extractor.rb} +81 -81
  85. data/lib/{test_invoker.rb → ceedling/test_invoker.rb} +97 -97
  86. data/lib/{test_invoker_helper.rb → ceedling/test_invoker_helper.rb} +28 -28
  87. data/lib/{tool_executor.rb → ceedling/tool_executor.rb} +215 -212
  88. data/lib/{tool_executor_helper.rb → ceedling/tool_executor_helper.rb} +115 -115
  89. data/lib/{verbosinator.rb → ceedling/verbosinator.rb} +10 -10
  90. data/lib/ceedling/version.rb +1 -1
  91. data/lib/{yaml_wrapper.rb → ceedling/yaml_wrapper.rb} +17 -16
  92. data/license.txt +31 -0
  93. data/plugins/bullseye/lib/bullseye.rb +2 -2
  94. data/plugins/gcov/gcov.rb +2 -2
  95. data/plugins/module_generator/lib/module_generator.rb +4 -3
  96. data/plugins/stdout_ide_tests_report/lib/stdout_ide_tests_report.rb +8 -8
  97. data/plugins/stdout_pretty_tests_report/lib/stdout_pretty_tests_report.rb +3 -3
  98. data/plugins/teamcity_tests_report/config/teamcity_tests_report.yml +4 -0
  99. data/plugins/teamcity_tests_report/lib/teamcity_tests_report.rb +57 -0
  100. data/plugins/xml_tests_report/xml_tests_report.rb +4 -4
  101. data/release/version.info +1 -1
  102. data/spec/ceedling_spec.rb +154 -0
  103. data/spec/par_map_spec.rb +1 -1
  104. data/spec/preprocessinator_extractor_spec.rb +26 -27
  105. data/spec/preprocessinator_includes_handler_spec.rb +175 -0
  106. data/spec/spec_helper.rb +8 -27
  107. data/test_graveyard/integration/paths_test.rb +2 -2
  108. data/test_graveyard/unit/busted/configurator_builder_test.rb +2 -2
  109. data/test_graveyard/unit/busted/configurator_test.rb +1 -1
  110. data/test_graveyard/unit/busted/configurator_validator_test.rb +1 -1
  111. data/test_graveyard/unit/busted/dependinator_test.rb +1 -1
  112. data/test_graveyard/unit/busted/file_finder_helper_test.rb +1 -1
  113. data/test_graveyard/unit/busted/file_finder_test.rb +1 -1
  114. data/test_graveyard/unit/busted/file_path_utils_test.rb +1 -1
  115. data/test_graveyard/unit/busted/file_system_utils_test.rb +1 -1
  116. data/test_graveyard/unit/busted/generator_test.rb +1 -1
  117. data/test_graveyard/unit/busted/generator_test_results_test.rb +1 -1
  118. data/test_graveyard/unit/busted/generator_test_runner_test.rb +1 -1
  119. data/test_graveyard/unit/busted/preprocessinator_file_handler_test.rb +1 -1
  120. data/test_graveyard/unit/busted/preprocessinator_helper_test.rb +1 -1
  121. data/test_graveyard/unit/busted/preprocessinator_includes_handler_test.rb +1 -1
  122. data/test_graveyard/unit/busted/preprocessinator_test.rb +1 -1
  123. data/test_graveyard/unit/busted/project_file_loader_test.rb +1 -1
  124. data/test_graveyard/unit/busted/setupinator_test.rb +1 -1
  125. data/test_graveyard/unit/busted/streaminator_test.rb +2 -2
  126. data/test_graveyard/unit/busted/task_invoker_test.rb +1 -1
  127. data/test_graveyard/unit/busted/test_includes_extractor_test.rb +1 -1
  128. data/test_graveyard/unit/busted/test_invoker_helper_test.rb +1 -1
  129. data/test_graveyard/unit/busted/test_invoker_test.rb +1 -1
  130. data/test_graveyard/unit/busted/tool_executor_helper_test.rb +1 -1
  131. data/test_graveyard/unit/busted/tool_executor_test.rb +1 -1
  132. data/test_graveyard/unit/busted/verbosinator_test.rb +1 -1
  133. data/test_graveyard/unit/preprocessinator_extractor_test.rb +1 -1
  134. data/vendor/c_exception/Gemfile +4 -0
  135. data/vendor/c_exception/lib/CException.h +1 -1
  136. data/vendor/c_exception/test/TestException.c +25 -14
  137. data/vendor/c_exception/test/TestException_Runner.c +74 -57
  138. data/vendor/cmock/Gemfile +11 -0
  139. data/vendor/cmock/lib/cmock_generator.rb +13 -12
  140. data/vendor/cmock/lib/cmock_generator_plugin_ignore_arg.rb +44 -0
  141. data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +74 -0
  142. data/vendor/cmock/lib/cmock_generator_utils.rb +67 -42
  143. data/vendor/cmock/src/cmock.c +20 -30
  144. data/vendor/cmock/src/cmock.h +1 -0
  145. data/vendor/cmock/src/cmock_internals.h +43 -0
  146. data/vendor/cmock/test/c/TestCMockC.c +79 -36
  147. data/vendor/cmock/test/c/TestCMockC_Runner.c +2 -0
  148. data/vendor/cmock/test/spec/cmock_file_writer_spec.rb +21 -1
  149. data/vendor/cmock/test/spec/cmock_generator_plugin_array_spec.rb +52 -0
  150. data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +2 -0
  151. data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore_arg.yml +235 -0
  152. data/vendor/cmock/test/test_helper.rb +10 -5
  153. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +38 -0
  154. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_arg_test.rb +116 -0
  155. data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +134 -0
  156. data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +58 -33
  157. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  158. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  159. data/vendor/cmock/vendor/c_exception/docs/license.txt +30 -0
  160. data/vendor/cmock/vendor/c_exception/docs/readme.txt +236 -0
  161. data/vendor/cmock/vendor/c_exception/lib/CException.c +39 -0
  162. data/vendor/cmock/vendor/c_exception/lib/CException.h +70 -0
  163. data/vendor/cmock/vendor/c_exception/makefile +24 -0
  164. data/vendor/cmock/vendor/c_exception/rakefile.rb +41 -0
  165. data/vendor/cmock/vendor/c_exception/release/build.info +2 -0
  166. data/vendor/cmock/vendor/c_exception/release/version.info +2 -0
  167. data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +27 -0
  168. data/vendor/cmock/vendor/c_exception/test/TestException.c +291 -0
  169. data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +62 -0
  170. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +94 -0
  171. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +39 -0
  172. data/vendor/cmock/vendor/unity/auto/generate_config.yml +36 -0
  173. data/vendor/cmock/vendor/unity/auto/generate_module.rb +202 -0
  174. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +313 -0
  175. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +23 -0
  176. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +139 -0
  177. data/vendor/cmock/vendor/unity/docs/Unity Summary.odt +0 -0
  178. data/vendor/cmock/vendor/unity/docs/Unity Summary.pdf +0 -0
  179. data/vendor/cmock/vendor/unity/docs/Unity Summary.txt +217 -0
  180. data/vendor/cmock/vendor/unity/docs/license.txt +31 -0
  181. data/vendor/cmock/vendor/unity/examples/helper/UnityHelper.c +10 -0
  182. data/vendor/cmock/vendor/unity/examples/helper/UnityHelper.h +12 -0
  183. data/vendor/cmock/vendor/unity/examples/makefile +40 -0
  184. data/vendor/cmock/vendor/unity/examples/rakefile.rb +32 -0
  185. data/vendor/cmock/vendor/unity/examples/rakefile_helper.rb +256 -0
  186. data/vendor/cmock/vendor/unity/examples/readme.txt +18 -0
  187. data/vendor/cmock/vendor/unity/examples/src/ProductionCode.c +24 -0
  188. data/vendor/cmock/vendor/unity/examples/src/ProductionCode.h +3 -0
  189. data/vendor/cmock/vendor/unity/examples/src/ProductionCode2.c +9 -0
  190. data/vendor/cmock/vendor/unity/examples/src/ProductionCode2.h +2 -0
  191. data/vendor/cmock/vendor/unity/examples/test/TestProductionCode.c +62 -0
  192. data/vendor/cmock/vendor/unity/examples/test/TestProductionCode2.c +31 -0
  193. data/vendor/cmock/vendor/unity/examples/test/no_ruby/TestProductionCode2_Runner.c +46 -0
  194. data/vendor/cmock/vendor/unity/examples/test/no_ruby/TestProductionCode_Runner.c +50 -0
  195. data/vendor/{unity → cmock/vendor/unity}/extras/fixture/build/MakefileWorker.mk +0 -0
  196. data/vendor/{unity → cmock/vendor/unity}/extras/fixture/build/filterGcov.sh +0 -0
  197. data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +37 -0
  198. data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +178 -0
  199. data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +9 -0
  200. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +381 -0
  201. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +81 -0
  202. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +44 -0
  203. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +16 -0
  204. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
  205. data/vendor/cmock/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
  206. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +321 -0
  207. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +40 -0
  208. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +56 -0
  209. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
  210. data/vendor/cmock/vendor/unity/makefile +35 -0
  211. data/vendor/cmock/vendor/unity/rakefile.rb +48 -0
  212. data/vendor/cmock/vendor/unity/rakefile_helper.rb +240 -0
  213. data/vendor/cmock/vendor/unity/release/build.info +2 -0
  214. data/vendor/cmock/vendor/unity/release/version.info +2 -0
  215. data/vendor/cmock/vendor/unity/src/unity.c +979 -0
  216. data/vendor/cmock/vendor/unity/src/unity.h +232 -0
  217. data/vendor/cmock/vendor/unity/src/unity_internals.h +424 -0
  218. data/vendor/cmock/vendor/unity/targets/gcc.yml +43 -0
  219. data/vendor/cmock/vendor/unity/targets/gcc_64.yml +44 -0
  220. data/vendor/cmock/vendor/unity/targets/hitech_picc18.yml +101 -0
  221. data/vendor/cmock/vendor/unity/targets/iar_arm_v4.yml +89 -0
  222. data/vendor/cmock/vendor/unity/targets/iar_arm_v5.yml +79 -0
  223. data/vendor/cmock/vendor/unity/targets/iar_arm_v5_3.yml +79 -0
  224. data/vendor/cmock/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
  225. data/vendor/cmock/vendor/unity/targets/iar_cortexm3_v5.yml +83 -0
  226. data/vendor/cmock/vendor/unity/targets/iar_msp430.yml +94 -0
  227. data/vendor/cmock/vendor/unity/targets/iar_sh2a_v6.yml +85 -0
  228. data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +54 -0
  229. data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +50 -0
  230. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +76 -0
  231. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +72 -0
  232. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +85 -0
  233. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +85 -0
  234. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +73 -0
  235. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +85 -0
  236. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +85 -0
  237. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +86 -0
  238. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +60 -0
  239. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +63 -0
  240. data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +51 -0
  241. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +60 -0
  242. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +63 -0
  243. data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +64 -0
  244. data/vendor/cmock/vendor/unity/test/test_generate_test_runner.rb +94 -0
  245. data/vendor/cmock/vendor/unity/test/testdata/mocksample.c +51 -0
  246. data/vendor/cmock/vendor/unity/test/testdata/sample.yml +9 -0
  247. data/vendor/cmock/vendor/unity/test/testdata/testsample.c +51 -0
  248. data/vendor/cmock/vendor/unity/test/testparameterized.c +101 -0
  249. data/vendor/cmock/vendor/unity/test/testunity.c +2024 -0
  250. data/vendor/unity/Gemfile +4 -0
  251. data/vendor/unity/auto/generate_test_runner.rb +6 -3
  252. data/vendor/unity/examples/makefile +2 -2
  253. data/vendor/unity/examples/rakefile.rb +13 -2
  254. data/vendor/unity/extras/fixture/rakefile.rb +1 -1
  255. data/vendor/unity/extras/fixture/rakefile_helper.rb +4 -3
  256. data/vendor/unity/extras/fixture/src/unity_fixture.c +15 -12
  257. data/vendor/unity/extras/fixture/src/unity_fixture.h +5 -5
  258. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +1 -1
  259. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +6 -3
  260. data/vendor/unity/makefile +2 -2
  261. data/vendor/unity/src/unity.c +183 -16
  262. data/vendor/unity/src/unity.h +18 -5
  263. data/vendor/unity/src/unity_internals.h +57 -23
  264. data/vendor/unity/targets/gcc_64.yml +45 -0
  265. data/vendor/unity/test/testunity.c +436 -28
  266. metadata +200 -137
  267. data/ceedling-0.13.0.rc4.gem +0 -0
  268. data/ceedling.sublime-project +0 -8
  269. data/ceedling.sublime-workspace +0 -365
  270. data/lib/preprocessinator_includes_handler.rb +0 -55
  271. data/tags +0 -977
  272. data/vendor/cmock/vendor/hardmock/CHANGES +0 -78
  273. data/vendor/cmock/vendor/hardmock/LICENSE +0 -7
  274. data/vendor/cmock/vendor/hardmock/README +0 -70
  275. data/vendor/cmock/vendor/hardmock/Rakefile +0 -8
  276. data/vendor/cmock/vendor/hardmock/config/environment.rb +0 -12
  277. data/vendor/cmock/vendor/hardmock/lib/assert_error.rb +0 -23
  278. data/vendor/cmock/vendor/hardmock/lib/extend_test_unit.rb +0 -14
  279. data/vendor/cmock/vendor/hardmock/lib/hardmock.rb +0 -86
  280. data/vendor/cmock/vendor/hardmock/lib/hardmock/errors.rb +0 -22
  281. data/vendor/cmock/vendor/hardmock/lib/hardmock/expectation.rb +0 -229
  282. data/vendor/cmock/vendor/hardmock/lib/hardmock/expectation_builder.rb +0 -9
  283. data/vendor/cmock/vendor/hardmock/lib/hardmock/expector.rb +0 -26
  284. data/vendor/cmock/vendor/hardmock/lib/hardmock/method_cleanout.rb +0 -33
  285. data/vendor/cmock/vendor/hardmock/lib/hardmock/mock.rb +0 -180
  286. data/vendor/cmock/vendor/hardmock/lib/hardmock/mock_control.rb +0 -53
  287. data/vendor/cmock/vendor/hardmock/lib/hardmock/stubbing.rb +0 -210
  288. data/vendor/cmock/vendor/hardmock/lib/hardmock/trapper.rb +0 -31
  289. data/vendor/cmock/vendor/hardmock/lib/hardmock/utils.rb +0 -9
  290. data/vendor/cmock/vendor/hardmock/lib/test_unit_before_after.rb +0 -169
  291. data/vendor/cmock/vendor/hardmock/rake_tasks/rdoc.rake +0 -19
  292. data/vendor/cmock/vendor/hardmock/rake_tasks/rdoc_options.rb +0 -4
  293. data/vendor/cmock/vendor/hardmock/rake_tasks/test.rake +0 -22
  294. data/vendor/cmock/vendor/hardmock/test/functional/assert_error_test.rb +0 -52
  295. data/vendor/cmock/vendor/hardmock/test/functional/auto_verify_test.rb +0 -178
  296. data/vendor/cmock/vendor/hardmock/test/functional/direct_mock_usage_test.rb +0 -396
  297. data/vendor/cmock/vendor/hardmock/test/functional/hardmock_test.rb +0 -434
  298. data/vendor/cmock/vendor/hardmock/test/functional/stubbing_test.rb +0 -479
  299. data/vendor/cmock/vendor/hardmock/test/test_helper.rb +0 -43
  300. data/vendor/cmock/vendor/hardmock/test/unit/expectation_builder_test.rb +0 -19
  301. data/vendor/cmock/vendor/hardmock/test/unit/expectation_test.rb +0 -372
  302. data/vendor/cmock/vendor/hardmock/test/unit/expector_test.rb +0 -57
  303. data/vendor/cmock/vendor/hardmock/test/unit/method_cleanout_test.rb +0 -36
  304. data/vendor/cmock/vendor/hardmock/test/unit/mock_control_test.rb +0 -175
  305. data/vendor/cmock/vendor/hardmock/test/unit/mock_test.rb +0 -279
  306. data/vendor/cmock/vendor/hardmock/test/unit/test_unit_before_after_test.rb +0 -452
  307. data/vendor/cmock/vendor/hardmock/test/unit/trapper_test.rb +0 -62
  308. data/vendor/cmock/vendor/hardmock/test/unit/verify_error_test.rb +0 -40
@@ -1,19 +1,19 @@
1
-
2
- class PluginManagerHelper
3
-
4
- def include?(plugins, name)
5
- include = false
6
- plugins.each do |plugin|
7
- if (plugin.name == name)
8
- include = true
9
- break
10
- end
11
- end
12
- return include
13
- end
14
-
15
- def instantiate_plugin_script(plugin, system_objects, name)
16
- return eval("#{plugin}.new(system_objects, name)")
17
- end
18
-
19
- end
1
+
2
+ class PluginManagerHelper
3
+
4
+ def include?(plugins, name)
5
+ include = false
6
+ plugins.each do |plugin|
7
+ if (plugin.name == name)
8
+ include = true
9
+ break
10
+ end
11
+ end
12
+ return include
13
+ end
14
+
15
+ def instantiate_plugin_script(plugin, system_objects, name)
16
+ return eval("#{plugin}.new(system_objects, name)")
17
+ end
18
+
19
+ end
@@ -1,5 +1,5 @@
1
- require 'constants'
2
- require 'defaults'
1
+ require 'ceedling/constants'
2
+ require 'ceedling/defaults'
3
3
 
4
4
  class PluginReportinator
5
5
 
@@ -1,7 +1,7 @@
1
- require 'constants'
2
1
  require 'erb'
3
2
  require 'rubygems'
4
3
  require 'rake' # for ext()
4
+ require 'ceedling/constants'
5
5
 
6
6
 
7
7
  class PluginReportinatorHelper
@@ -1,43 +1,43 @@
1
-
2
- class Preprocessinator
3
-
4
- attr_reader :preprocess_file_proc
5
-
6
- constructor :preprocessinator_helper, :preprocessinator_includes_handler, :preprocessinator_file_handler, :task_invoker, :file_path_utils, :yaml_wrapper
7
-
8
-
9
- def setup
10
- # fashion ourselves callbacks @preprocessinator_helper can use
11
- @preprocess_includes_proc = Proc.new { |filepath| self.preprocess_shallow_includes(filepath) }
12
- @preprocess_file_proc = Proc.new { |filepath| self.preprocess_file(filepath) }
13
- end
14
-
15
-
16
- def preprocess_test_and_invoke_test_mocks(test)
17
- @preprocessinator_helper.preprocess_includes(test, @preprocess_includes_proc)
18
-
19
- mocks_list = @preprocessinator_helper.assemble_mocks_list(test)
20
-
21
- @preprocessinator_helper.preprocess_mockable_headers(mocks_list, @preprocess_file_proc)
22
-
23
- @task_invoker.invoke_test_mocks(mocks_list)
24
-
25
- @preprocessinator_helper.preprocess_test_file(test, @preprocess_file_proc)
26
-
27
- return mocks_list
28
- end
29
-
30
- def preprocess_shallow_includes(filepath)
31
- dependencies_rule = @preprocessinator_includes_handler.form_shallow_dependencies_rule(filepath)
32
- includes = @preprocessinator_includes_handler.extract_shallow_includes(dependencies_rule)
33
-
34
- @preprocessinator_includes_handler.write_shallow_includes_list(
35
- @file_path_utils.form_preprocessed_includes_list_filepath(filepath), includes)
36
- end
37
-
38
- def preprocess_file(filepath)
39
- @preprocessinator_includes_handler.invoke_shallow_includes_list(filepath)
40
- @preprocessinator_file_handler.preprocess_file( filepath, @yaml_wrapper.load(@file_path_utils.form_preprocessed_includes_list_filepath(filepath)) )
41
- end
42
-
43
- end
1
+
2
+ class Preprocessinator
3
+
4
+ attr_reader :preprocess_file_proc
5
+
6
+ constructor :preprocessinator_helper, :preprocessinator_includes_handler, :preprocessinator_file_handler, :task_invoker, :file_path_utils, :yaml_wrapper
7
+
8
+
9
+ def setup
10
+ # fashion ourselves callbacks @preprocessinator_helper can use
11
+ @preprocess_includes_proc = Proc.new { |filepath| self.preprocess_shallow_includes(filepath) }
12
+ @preprocess_file_proc = Proc.new { |filepath| self.preprocess_file(filepath) }
13
+ end
14
+
15
+
16
+ def preprocess_test_and_invoke_test_mocks(test)
17
+ @preprocessinator_helper.preprocess_includes(test, @preprocess_includes_proc)
18
+
19
+ mocks_list = @preprocessinator_helper.assemble_mocks_list(test)
20
+
21
+ @preprocessinator_helper.preprocess_mockable_headers(mocks_list, @preprocess_file_proc)
22
+
23
+ @task_invoker.invoke_test_mocks(mocks_list)
24
+
25
+ @preprocessinator_helper.preprocess_test_file(test, @preprocess_file_proc)
26
+
27
+ return mocks_list
28
+ end
29
+
30
+ def preprocess_shallow_includes(filepath)
31
+ dependencies_rule = @preprocessinator_includes_handler.form_shallow_dependencies_rule(filepath)
32
+ includes = @preprocessinator_includes_handler.extract_shallow_includes(dependencies_rule)
33
+
34
+ @preprocessinator_includes_handler.write_shallow_includes_list(
35
+ @file_path_utils.form_preprocessed_includes_list_filepath(filepath), includes)
36
+ end
37
+
38
+ def preprocess_file(filepath)
39
+ @preprocessinator_includes_handler.invoke_shallow_includes_list(filepath)
40
+ @preprocessinator_file_handler.preprocess_file( filepath, @yaml_wrapper.load(@file_path_utils.form_preprocessed_includes_list_filepath(filepath)) )
41
+ end
42
+
43
+ end
@@ -1,30 +1,30 @@
1
- class PreprocessinatorExtractor
2
- def extract_base_file_from_preprocessed_expansion(filepath)
3
- # preprocessing by way of toolchain preprocessor expands macros, eliminates
4
- # comments, strips out #ifdef code, etc. however, it also expands in place
5
- # each #include'd file. so, we must extract only the lines of the file
6
- # that belong to the file originally preprocessed
7
-
8
- # iterate through all lines and alternate between extract and ignore modes
9
- # all lines between a '#'line containing file name of our filepath and the
10
- # next '#'line should be extracted
11
-
12
- base_name = File.basename(filepath)
13
- not_pragma = /^#(?!pragma\b)/ # preprocessor directive that's not a #pragma
14
- pattern = /^#.*(\s|\/|\\|\")#{Regexp.escape(base_name)}/
15
- found_file = false # have we found the file we care about?
16
-
17
- lines = []
18
- File.readlines(filepath).each do |line|
19
- if found_file and not line.match(not_pragma)
20
- lines << line
21
- else
22
- found_file = false
23
- end
24
-
25
- found_file = true if line.match(pattern)
26
- end
27
-
28
- return lines
29
- end
30
- end
1
+ class PreprocessinatorExtractor
2
+ def extract_base_file_from_preprocessed_expansion(filepath)
3
+ # preprocessing by way of toolchain preprocessor expands macros, eliminates
4
+ # comments, strips out #ifdef code, etc. however, it also expands in place
5
+ # each #include'd file. so, we must extract only the lines of the file
6
+ # that belong to the file originally preprocessed
7
+
8
+ # iterate through all lines and alternate between extract and ignore modes
9
+ # all lines between a '#'line containing file name of our filepath and the
10
+ # next '#'line should be extracted
11
+
12
+ base_name = File.basename(filepath)
13
+ not_pragma = /^#(?!pragma\b)/ # preprocessor directive that's not a #pragma
14
+ pattern = /^#.*(\s|\/|\\|\")#{Regexp.escape(base_name)}/
15
+ found_file = false # have we found the file we care about?
16
+
17
+ lines = []
18
+ File.readlines(filepath).each do |line|
19
+ if found_file and not line.match(not_pragma)
20
+ lines << line
21
+ else
22
+ found_file = false
23
+ end
24
+
25
+ found_file = true if line.match(pattern)
26
+ end
27
+
28
+ return lines
29
+ end
30
+ end
@@ -1,21 +1,21 @@
1
-
2
-
3
- class PreprocessinatorFileHandler
4
-
5
- constructor :preprocessinator_extractor, :configurator, :tool_executor, :file_path_utils, :file_wrapper
6
-
7
-
8
- def preprocess_file(filepath, includes)
9
- preprocessed_filepath = @file_path_utils.form_preprocessed_file_filepath(filepath)
10
-
11
- command = @tool_executor.build_command_line(@configurator.tools_test_file_preprocessor, filepath, preprocessed_filepath)
12
- @tool_executor.exec(command[:line], command[:options])
13
-
14
- contents = @preprocessinator_extractor.extract_base_file_from_preprocessed_expansion(preprocessed_filepath)
15
-
16
- includes.each{|include| contents.unshift("#include \"#{include}\"")}
17
-
18
- @file_wrapper.write(preprocessed_filepath, contents.join("\n"))
19
- end
20
-
21
- end
1
+
2
+
3
+ class PreprocessinatorFileHandler
4
+
5
+ constructor :preprocessinator_extractor, :configurator, :tool_executor, :file_path_utils, :file_wrapper
6
+
7
+
8
+ def preprocess_file(filepath, includes)
9
+ preprocessed_filepath = @file_path_utils.form_preprocessed_file_filepath(filepath)
10
+
11
+ command = @tool_executor.build_command_line(@configurator.tools_test_file_preprocessor, filepath, preprocessed_filepath)
12
+ @tool_executor.exec(command[:line], command[:options])
13
+
14
+ contents = @preprocessinator_extractor.extract_base_file_from_preprocessed_expansion(preprocessed_filepath)
15
+
16
+ includes.each{|include| contents.unshift("#include \"#{include}\"")}
17
+
18
+ @file_wrapper.write(preprocessed_filepath, contents.join("\n"))
19
+ end
20
+
21
+ end
@@ -1,46 +1,46 @@
1
-
2
-
3
- class PreprocessinatorHelper
4
-
5
- constructor :configurator, :test_includes_extractor, :task_invoker, :file_finder, :file_path_utils
6
-
7
-
8
- def preprocess_includes(test, preprocess_includes_proc)
9
- if (@configurator.project_use_test_preprocessor)
10
- preprocessed_includes_list = @file_path_utils.form_preprocessed_includes_list_filepath(test)
11
- preprocess_includes_proc.call( @file_finder.find_test_from_file_path(preprocessed_includes_list) )
12
- @test_includes_extractor.parse_includes_list(preprocessed_includes_list)
13
- else
14
- @test_includes_extractor.parse_test_file(test)
15
- end
16
- end
17
-
18
- def assemble_mocks_list(test)
19
- return @file_path_utils.form_mocks_source_filelist( @test_includes_extractor.lookup_raw_mock_list(test) )
20
- end
21
-
22
- def preprocess_mockable_headers(mock_list, preprocess_file_proc)
23
- if (@configurator.project_use_test_preprocessor)
24
- preprocess_files_smartly(
25
- @file_path_utils.form_preprocessed_mockable_headers_filelist(mock_list),
26
- preprocess_file_proc ) { |file| @file_finder.find_header_file(file) }
27
- end
28
- end
29
-
30
- def preprocess_test_file(test, preprocess_file_proc)
31
- return if (!@configurator.project_use_test_preprocessor)
32
-
33
- preprocess_file_proc.call(test)
34
- end
35
-
36
- private ############################
37
-
38
- def preprocess_files_smartly(file_list, preprocess_file_proc)
39
- if (@configurator.project_use_deep_dependencies)
40
- @task_invoker.invoke_test_preprocessed_files(file_list)
41
- else
42
- file_list.each { |file| preprocess_file_proc.call( yield(file) ) }
43
- end
44
- end
45
-
46
- end
1
+
2
+
3
+ class PreprocessinatorHelper
4
+
5
+ constructor :configurator, :test_includes_extractor, :task_invoker, :file_finder, :file_path_utils
6
+
7
+
8
+ def preprocess_includes(test, preprocess_includes_proc)
9
+ if (@configurator.project_use_test_preprocessor)
10
+ preprocessed_includes_list = @file_path_utils.form_preprocessed_includes_list_filepath(test)
11
+ preprocess_includes_proc.call( @file_finder.find_test_from_file_path(preprocessed_includes_list) )
12
+ @test_includes_extractor.parse_includes_list(preprocessed_includes_list)
13
+ else
14
+ @test_includes_extractor.parse_test_file(test)
15
+ end
16
+ end
17
+
18
+ def assemble_mocks_list(test)
19
+ return @file_path_utils.form_mocks_source_filelist( @test_includes_extractor.lookup_raw_mock_list(test) )
20
+ end
21
+
22
+ def preprocess_mockable_headers(mock_list, preprocess_file_proc)
23
+ if (@configurator.project_use_test_preprocessor)
24
+ preprocess_files_smartly(
25
+ @file_path_utils.form_preprocessed_mockable_headers_filelist(mock_list),
26
+ preprocess_file_proc ) { |file| @file_finder.find_header_file(file) }
27
+ end
28
+ end
29
+
30
+ def preprocess_test_file(test, preprocess_file_proc)
31
+ return if (!@configurator.project_use_test_preprocessor)
32
+
33
+ preprocess_file_proc.call(test)
34
+ end
35
+
36
+ private ############################
37
+
38
+ def preprocess_files_smartly(file_list, preprocess_file_proc)
39
+ if (@configurator.project_use_deep_dependencies)
40
+ @task_invoker.invoke_test_preprocessed_files(file_list)
41
+ else
42
+ file_list.each { |file| preprocess_file_proc.call( yield(file) ) }
43
+ end
44
+ end
45
+
46
+ end
@@ -0,0 +1,82 @@
1
+
2
+
3
+ class PreprocessinatorIncludesHandler
4
+
5
+ constructor :configurator, :tool_executor, :task_invoker, :file_path_utils, :yaml_wrapper, :file_wrapper
6
+
7
+ # shallow includes: only those headers a source file explicitly includes
8
+
9
+ def invoke_shallow_includes_list(filepath)
10
+ @task_invoker.invoke_test_shallow_include_lists( [@file_path_utils.form_preprocessed_includes_list_filepath(filepath)] )
11
+ end
12
+
13
+ ##
14
+ # Ask the preprocessor for a make-style dependency rule of only the headers
15
+ # the source file immediately includes.
16
+ #
17
+ # === Arguments
18
+ # +filepath+ _String_:: Path to the test file to process.
19
+ #
20
+ # === Return
21
+ # _String_:: The text of the dependency rule generated by the preprocessor.
22
+ def form_shallow_dependencies_rule(filepath)
23
+ # change filename (prefix of '_') to prevent preprocessor from finding
24
+ # include files in temp directory containing file it's scanning
25
+ temp_filepath = @file_path_utils.form_temp_path(filepath, '_')
26
+
27
+ # read the file and replace all include statements with a decorated version
28
+ # (decorating the names creates file names that don't exist, thus preventing
29
+ # the preprocessor from snaking out and discovering the entire include path
30
+ # that winds through the code). The decorated filenames indicate files that
31
+ # are included directly by the test file.
32
+ contents = @file_wrapper.read(filepath)
33
+ contents.gsub!( /^\s*#include\s+[\"<]\s*(\S+)\s*[\">]/, "#include \"\\1\"\n#include \"@@@@\\1\"" )
34
+ @file_wrapper.write( temp_filepath, contents )
35
+
36
+ # extract the make-style dependency rule telling the preprocessor to
37
+ # ignore the fact that it can't find the included files
38
+ command = @tool_executor.build_command_line(@configurator.tools_test_includes_preprocessor, temp_filepath)
39
+ shell_result = @tool_executor.exec(command[:line], command[:options])
40
+
41
+ return shell_result[:output]
42
+ end
43
+
44
+ ##
45
+ # Extract the headers that are directly included by a source file using the
46
+ # provided, annotated Make dependency rule.
47
+ #
48
+ # === Arguments
49
+ # +make_rule+ _String_:: Annotated Make dependency rule.
50
+ #
51
+ # === Return
52
+ # _Array_ of _String_:: Array of the direct dependencies for the source file.
53
+ def extract_shallow_includes(make_rule)
54
+ # Extract the dependencies from the make rule
55
+ hdr_ext = @configurator.extension_header
56
+ dependencies = make_rule.split.find_all {|path| path.end_with?(hdr_ext) }.uniq
57
+ dependencies.map! {|hdr| hdr.gsub('\\','/') }
58
+
59
+ # Separate the real files form the annotated ones and remove the '@@@@'
60
+ annotated_headers, real_headers = dependencies.partition {|hdr| hdr =~ /^@@@@/ }
61
+ annotated_headers.map! {|hdr| hdr.gsub('@@@@','') }
62
+
63
+ # Find which of our annotated headers are "real" dependencies. This is
64
+ # intended to weed out dependencies that have been removed due to build
65
+ # options defined in the project yaml and/or in the headers themselves.
66
+ annotated_headers.find_all do |annotated_header|
67
+ # find the index of the "real" include that matches the annotated one.
68
+ idx = real_headers.find_index do |real_header|
69
+ real_header =~ /^(.*\/)?#{Regexp.escape(annotated_header)}$/
70
+ end
71
+ # If we found a real include, delete it from the array and return it,
72
+ # otherwise return nil. Since nil is falsy this has the effect of making
73
+ # find_all return only the annotated headers for which a real include was
74
+ # found/deleted
75
+ idx ? real_headers.delete_at(idx) : nil
76
+ end.compact
77
+ end
78
+
79
+ def write_shallow_includes_list(filepath, list)
80
+ @yaml_wrapper.dump(filepath, list)
81
+ end
82
+ end
@@ -1,38 +1,38 @@
1
- require 'constants'
2
-
3
-
4
- class ProjectConfigManager
5
-
6
- attr_reader :options_files, :release_config_changed, :test_config_changed
7
- attr_accessor :config_hash
8
-
9
- constructor :cacheinator, :yaml_wrapper
10
-
11
-
12
- def setup
13
- @options_files = []
14
- @release_config_changed = false
15
- @test_config_changed = false
16
- end
17
-
18
-
19
- def merge_options(config_hash, option_filepath)
20
- @options_files << File.basename( option_filepath )
21
- config_hash.deep_merge( @yaml_wrapper.load( option_filepath ) )
22
- return config_hash
23
- end
24
-
25
-
26
-
27
- def process_release_config_change
28
- # has project configuration changed since last release build
29
- @release_config_changed = @cacheinator.diff_cached_release_config?( @config_hash )
30
- end
31
-
32
-
33
- def process_test_config_change
34
- # has project configuration changed since last test build
35
- @test_config_changed = @cacheinator.diff_cached_test_config?( @config_hash )
36
- end
37
-
38
- end
1
+ require 'ceedling/constants'
2
+
3
+
4
+ class ProjectConfigManager
5
+
6
+ attr_reader :options_files, :release_config_changed, :test_config_changed
7
+ attr_accessor :config_hash
8
+
9
+ constructor :cacheinator, :yaml_wrapper
10
+
11
+
12
+ def setup
13
+ @options_files = []
14
+ @release_config_changed = false
15
+ @test_config_changed = false
16
+ end
17
+
18
+
19
+ def merge_options(config_hash, option_filepath)
20
+ @options_files << File.basename( option_filepath )
21
+ config_hash.deep_merge( @yaml_wrapper.load( option_filepath ) )
22
+ return config_hash
23
+ end
24
+
25
+
26
+
27
+ def process_release_config_change
28
+ # has project configuration changed since last release build
29
+ @release_config_changed = @cacheinator.diff_cached_release_config?( @config_hash )
30
+ end
31
+
32
+
33
+ def process_test_config_change
34
+ # has project configuration changed since last test build
35
+ @test_config_changed = @cacheinator.diff_cached_test_config?( @config_hash )
36
+ end
37
+
38
+ end