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.
- checksums.yaml +7 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +18 -14
- data/README.md +6 -4
- data/assets/project_as_gem.yml +1 -1
- data/assets/rakefile_as_gem.rb +2 -0
- data/assets/rakefile_with_guts.rb +3 -1
- data/ceedling.gemspec +1 -0
- data/examples/blinky/rakefile.rb +2 -2
- data/examples/temp_sensor/rakefile.rb +1 -1
- data/examples/temp_sensor/src/TemperatureFilter.c +1 -2
- data/examples/temp_sensor/test/TestTemperatureCalculator.c +1 -1
- data/examples/temp_sensor/test/TestTemperatureFilter.c +12 -2
- data/lib/ceedling.rb +94 -22
- data/lib/{build_invoker_utils.rb → ceedling/build_invoker_utils.rb} +27 -27
- data/lib/{cacheinator.rb → ceedling/cacheinator.rb} +42 -42
- data/lib/{cacheinator_helper.rb → ceedling/cacheinator_helper.rb} +12 -12
- data/lib/{cmock_builder.rb → ceedling/cmock_builder.rb} +15 -15
- data/lib/{configurator.rb → ceedling/configurator.rb} +333 -329
- data/lib/{configurator_builder.rb → ceedling/configurator_builder.rb} +437 -437
- data/lib/{configurator_plugins.rb → ceedling/configurator_plugins.rb} +124 -124
- data/lib/{configurator_setup.rb → ceedling/configurator_setup.rb} +124 -124
- data/lib/{configurator_validator.rb → ceedling/configurator_validator.rb} +184 -184
- data/lib/{constants.rb → ceedling/constants.rb} +20 -17
- data/lib/{defaults.rb → ceedling/defaults.rb} +19 -18
- data/lib/{dependinator.rb → ceedling/dependinator.rb} +92 -92
- data/lib/{erb_wrapper.rb → ceedling/erb_wrapper.rb} +8 -8
- data/lib/{file_finder.rb → ceedling/file_finder.rb} +132 -132
- data/lib/{file_finder_helper.rb → ceedling/file_finder_helper.rb} +54 -54
- data/lib/{file_path_utils.rb → ceedling/file_path_utils.rb} +189 -189
- data/lib/{file_system_utils.rb → ceedling/file_system_utils.rb} +69 -69
- data/lib/{file_system_wrapper.rb → ceedling/file_system_wrapper.rb} +9 -9
- data/lib/{file_wrapper.rb → ceedling/file_wrapper.rb} +79 -79
- data/lib/{flaginator.rb → ceedling/flaginator.rb} +54 -54
- data/lib/{generator.rb → ceedling/generator.rb} +164 -164
- data/lib/{generator_helper.rb → ceedling/generator_helper.rb} +40 -40
- data/lib/{generator_test_results.rb → ceedling/generator_test_results.rb} +86 -89
- data/lib/{generator_test_results_sanity_checker.rb → ceedling/generator_test_results_sanity_checker.rb} +64 -62
- data/lib/{generator_test_runner.rb → ceedling/generator_test_runner.rb} +63 -63
- data/lib/{loginator.rb → ceedling/loginator.rb} +31 -31
- data/lib/{makefile.rb → ceedling/makefile.rb} +0 -0
- data/lib/{objects.yml → ceedling/objects.yml} +0 -0
- data/lib/{par_map.rb → ceedling/par_map.rb} +0 -0
- data/lib/{plugin.rb → ceedling/plugin.rb} +80 -80
- data/lib/{plugin_builder.rb → ceedling/plugin_builder.rb} +52 -52
- data/lib/{plugin_manager.rb → ceedling/plugin_manager.rb} +107 -107
- data/lib/{plugin_manager_helper.rb → ceedling/plugin_manager_helper.rb} +19 -19
- data/lib/{plugin_reportinator.rb → ceedling/plugin_reportinator.rb} +2 -2
- data/lib/{plugin_reportinator_helper.rb → ceedling/plugin_reportinator_helper.rb} +1 -1
- data/lib/{preprocessinator.rb → ceedling/preprocessinator.rb} +43 -43
- data/lib/{preprocessinator_extractor.rb → ceedling/preprocessinator_extractor.rb} +30 -30
- data/lib/{preprocessinator_file_handler.rb → ceedling/preprocessinator_file_handler.rb} +21 -21
- data/lib/{preprocessinator_helper.rb → ceedling/preprocessinator_helper.rb} +46 -46
- data/lib/ceedling/preprocessinator_includes_handler.rb +82 -0
- data/lib/{project_config_manager.rb → ceedling/project_config_manager.rb} +38 -38
- data/lib/{project_file_loader.rb → ceedling/project_file_loader.rb} +64 -64
- data/lib/{rake_utils.rb → ceedling/rake_utils.rb} +17 -17
- data/lib/{rake_wrapper.rb → ceedling/rake_wrapper.rb} +33 -33
- data/lib/{rakefile.rb → ceedling/rakefile.rb} +78 -74
- data/lib/{release_invoker.rb → ceedling/release_invoker.rb} +58 -58
- data/lib/{release_invoker_helper.rb → ceedling/release_invoker_helper.rb} +16 -16
- data/lib/{reportinator.rb → ceedling/reportinator.rb} +9 -9
- data/lib/{rules_cmock.rake → ceedling/rules_cmock.rake} +9 -9
- data/lib/{rules_preprocess.rake → ceedling/rules_preprocess.rake} +26 -26
- data/lib/{rules_release.rake → ceedling/rules_release.rake} +79 -79
- data/lib/{rules_release_deep_dependencies.rake → ceedling/rules_release_deep_dependencies.rake} +15 -15
- data/lib/{rules_tests.rake → ceedling/rules_tests.rake} +59 -59
- data/lib/{rules_tests_deep_dependencies.rake → ceedling/rules_tests_deep_dependencies.rake} +15 -15
- data/lib/{setupinator.rb → ceedling/setupinator.rb} +51 -51
- data/lib/{stream_wrapper.rb → ceedling/stream_wrapper.rb} +20 -20
- data/lib/{streaminator.rb → ceedling/streaminator.rb} +40 -41
- data/lib/{streaminator_helper.rb → ceedling/streaminator_helper.rb} +15 -15
- data/lib/{system_utils.rb → ceedling/system_utils.rb} +0 -0
- data/lib/{system_wrapper.rb → ceedling/system_wrapper.rb} +76 -76
- data/lib/{target_loader.rb → ceedling/target_loader.rb} +0 -0
- data/lib/{task_invoker.rb → ceedling/task_invoker.rb} +89 -89
- data/lib/{tasks_base.rake → ceedling/tasks_base.rake} +104 -104
- data/lib/{tasks_filesystem.rake → ceedling/tasks_filesystem.rake} +91 -91
- data/lib/{tasks_release.rake → ceedling/tasks_release.rake} +28 -28
- data/lib/{tasks_release_deep_dependencies.rake → ceedling/tasks_release_deep_dependencies.rake} +9 -9
- data/lib/{tasks_tests.rake → ceedling/tasks_tests.rake} +52 -52
- data/lib/{tasks_tests_deep_dependencies.rake → ceedling/tasks_tests_deep_dependencies.rake} +9 -9
- data/lib/{tasks_vendor.rake → ceedling/tasks_vendor.rake} +36 -36
- data/lib/{test_includes_extractor.rb → ceedling/test_includes_extractor.rb} +81 -81
- data/lib/{test_invoker.rb → ceedling/test_invoker.rb} +97 -97
- data/lib/{test_invoker_helper.rb → ceedling/test_invoker_helper.rb} +28 -28
- data/lib/{tool_executor.rb → ceedling/tool_executor.rb} +215 -212
- data/lib/{tool_executor_helper.rb → ceedling/tool_executor_helper.rb} +115 -115
- data/lib/{verbosinator.rb → ceedling/verbosinator.rb} +10 -10
- data/lib/ceedling/version.rb +1 -1
- data/lib/{yaml_wrapper.rb → ceedling/yaml_wrapper.rb} +17 -16
- data/license.txt +31 -0
- data/plugins/bullseye/lib/bullseye.rb +2 -2
- data/plugins/gcov/gcov.rb +2 -2
- data/plugins/module_generator/lib/module_generator.rb +4 -3
- data/plugins/stdout_ide_tests_report/lib/stdout_ide_tests_report.rb +8 -8
- data/plugins/stdout_pretty_tests_report/lib/stdout_pretty_tests_report.rb +3 -3
- data/plugins/teamcity_tests_report/config/teamcity_tests_report.yml +4 -0
- data/plugins/teamcity_tests_report/lib/teamcity_tests_report.rb +57 -0
- data/plugins/xml_tests_report/xml_tests_report.rb +4 -4
- data/release/version.info +1 -1
- data/spec/ceedling_spec.rb +154 -0
- data/spec/par_map_spec.rb +1 -1
- data/spec/preprocessinator_extractor_spec.rb +26 -27
- data/spec/preprocessinator_includes_handler_spec.rb +175 -0
- data/spec/spec_helper.rb +8 -27
- data/test_graveyard/integration/paths_test.rb +2 -2
- data/test_graveyard/unit/busted/configurator_builder_test.rb +2 -2
- data/test_graveyard/unit/busted/configurator_test.rb +1 -1
- data/test_graveyard/unit/busted/configurator_validator_test.rb +1 -1
- data/test_graveyard/unit/busted/dependinator_test.rb +1 -1
- data/test_graveyard/unit/busted/file_finder_helper_test.rb +1 -1
- data/test_graveyard/unit/busted/file_finder_test.rb +1 -1
- data/test_graveyard/unit/busted/file_path_utils_test.rb +1 -1
- data/test_graveyard/unit/busted/file_system_utils_test.rb +1 -1
- data/test_graveyard/unit/busted/generator_test.rb +1 -1
- data/test_graveyard/unit/busted/generator_test_results_test.rb +1 -1
- data/test_graveyard/unit/busted/generator_test_runner_test.rb +1 -1
- data/test_graveyard/unit/busted/preprocessinator_file_handler_test.rb +1 -1
- data/test_graveyard/unit/busted/preprocessinator_helper_test.rb +1 -1
- data/test_graveyard/unit/busted/preprocessinator_includes_handler_test.rb +1 -1
- data/test_graveyard/unit/busted/preprocessinator_test.rb +1 -1
- data/test_graveyard/unit/busted/project_file_loader_test.rb +1 -1
- data/test_graveyard/unit/busted/setupinator_test.rb +1 -1
- data/test_graveyard/unit/busted/streaminator_test.rb +2 -2
- data/test_graveyard/unit/busted/task_invoker_test.rb +1 -1
- data/test_graveyard/unit/busted/test_includes_extractor_test.rb +1 -1
- data/test_graveyard/unit/busted/test_invoker_helper_test.rb +1 -1
- data/test_graveyard/unit/busted/test_invoker_test.rb +1 -1
- data/test_graveyard/unit/busted/tool_executor_helper_test.rb +1 -1
- data/test_graveyard/unit/busted/tool_executor_test.rb +1 -1
- data/test_graveyard/unit/busted/verbosinator_test.rb +1 -1
- data/test_graveyard/unit/preprocessinator_extractor_test.rb +1 -1
- data/vendor/c_exception/Gemfile +4 -0
- data/vendor/c_exception/lib/CException.h +1 -1
- data/vendor/c_exception/test/TestException.c +25 -14
- data/vendor/c_exception/test/TestException_Runner.c +74 -57
- data/vendor/cmock/Gemfile +11 -0
- data/vendor/cmock/lib/cmock_generator.rb +13 -12
- data/vendor/cmock/lib/cmock_generator_plugin_ignore_arg.rb +44 -0
- data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +74 -0
- data/vendor/cmock/lib/cmock_generator_utils.rb +67 -42
- data/vendor/cmock/src/cmock.c +20 -30
- data/vendor/cmock/src/cmock.h +1 -0
- data/vendor/cmock/src/cmock_internals.h +43 -0
- data/vendor/cmock/test/c/TestCMockC.c +79 -36
- data/vendor/cmock/test/c/TestCMockC_Runner.c +2 -0
- data/vendor/cmock/test/spec/cmock_file_writer_spec.rb +21 -1
- data/vendor/cmock/test/spec/cmock_generator_plugin_array_spec.rb +52 -0
- data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +2 -0
- data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore_arg.yml +235 -0
- data/vendor/cmock/test/test_helper.rb +10 -5
- data/vendor/cmock/test/unit/cmock_generator_main_test.rb +38 -0
- data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_arg_test.rb +116 -0
- data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +134 -0
- data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +58 -33
- data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
- data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
- data/vendor/cmock/vendor/c_exception/docs/license.txt +30 -0
- data/vendor/cmock/vendor/c_exception/docs/readme.txt +236 -0
- data/vendor/cmock/vendor/c_exception/lib/CException.c +39 -0
- data/vendor/cmock/vendor/c_exception/lib/CException.h +70 -0
- data/vendor/cmock/vendor/c_exception/makefile +24 -0
- data/vendor/cmock/vendor/c_exception/rakefile.rb +41 -0
- data/vendor/cmock/vendor/c_exception/release/build.info +2 -0
- data/vendor/cmock/vendor/c_exception/release/version.info +2 -0
- data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +27 -0
- data/vendor/cmock/vendor/c_exception/test/TestException.c +291 -0
- data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +62 -0
- data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +94 -0
- data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +39 -0
- data/vendor/cmock/vendor/unity/auto/generate_config.yml +36 -0
- data/vendor/cmock/vendor/unity/auto/generate_module.rb +202 -0
- data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +313 -0
- data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +23 -0
- data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +139 -0
- data/vendor/cmock/vendor/unity/docs/Unity Summary.odt +0 -0
- data/vendor/cmock/vendor/unity/docs/Unity Summary.pdf +0 -0
- data/vendor/cmock/vendor/unity/docs/Unity Summary.txt +217 -0
- data/vendor/cmock/vendor/unity/docs/license.txt +31 -0
- data/vendor/cmock/vendor/unity/examples/helper/UnityHelper.c +10 -0
- data/vendor/cmock/vendor/unity/examples/helper/UnityHelper.h +12 -0
- data/vendor/cmock/vendor/unity/examples/makefile +40 -0
- data/vendor/cmock/vendor/unity/examples/rakefile.rb +32 -0
- data/vendor/cmock/vendor/unity/examples/rakefile_helper.rb +256 -0
- data/vendor/cmock/vendor/unity/examples/readme.txt +18 -0
- data/vendor/cmock/vendor/unity/examples/src/ProductionCode.c +24 -0
- data/vendor/cmock/vendor/unity/examples/src/ProductionCode.h +3 -0
- data/vendor/cmock/vendor/unity/examples/src/ProductionCode2.c +9 -0
- data/vendor/cmock/vendor/unity/examples/src/ProductionCode2.h +2 -0
- data/vendor/cmock/vendor/unity/examples/test/TestProductionCode.c +62 -0
- data/vendor/cmock/vendor/unity/examples/test/TestProductionCode2.c +31 -0
- data/vendor/cmock/vendor/unity/examples/test/no_ruby/TestProductionCode2_Runner.c +46 -0
- data/vendor/cmock/vendor/unity/examples/test/no_ruby/TestProductionCode_Runner.c +50 -0
- data/vendor/{unity → cmock/vendor/unity}/extras/fixture/build/MakefileWorker.mk +0 -0
- data/vendor/{unity → cmock/vendor/unity}/extras/fixture/build/filterGcov.sh +0 -0
- data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +37 -0
- data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +178 -0
- data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +9 -0
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +381 -0
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +81 -0
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +44 -0
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +16 -0
- data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +21 -0
- data/vendor/cmock/vendor/unity/extras/fixture/test/testunity_fixture.c +39 -0
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +321 -0
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +40 -0
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +56 -0
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
- data/vendor/cmock/vendor/unity/makefile +35 -0
- data/vendor/cmock/vendor/unity/rakefile.rb +48 -0
- data/vendor/cmock/vendor/unity/rakefile_helper.rb +240 -0
- data/vendor/cmock/vendor/unity/release/build.info +2 -0
- data/vendor/cmock/vendor/unity/release/version.info +2 -0
- data/vendor/cmock/vendor/unity/src/unity.c +979 -0
- data/vendor/cmock/vendor/unity/src/unity.h +232 -0
- data/vendor/cmock/vendor/unity/src/unity_internals.h +424 -0
- data/vendor/cmock/vendor/unity/targets/gcc.yml +43 -0
- data/vendor/cmock/vendor/unity/targets/gcc_64.yml +44 -0
- data/vendor/cmock/vendor/unity/targets/hitech_picc18.yml +101 -0
- data/vendor/cmock/vendor/unity/targets/iar_arm_v4.yml +89 -0
- data/vendor/cmock/vendor/unity/targets/iar_arm_v5.yml +79 -0
- data/vendor/cmock/vendor/unity/targets/iar_arm_v5_3.yml +79 -0
- data/vendor/cmock/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +93 -0
- data/vendor/cmock/vendor/unity/targets/iar_cortexm3_v5.yml +83 -0
- data/vendor/cmock/vendor/unity/targets/iar_msp430.yml +94 -0
- data/vendor/cmock/vendor/unity/targets/iar_sh2a_v6.yml +85 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +54 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +50 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +76 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +72 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +85 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +85 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +73 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +85 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +85 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +86 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +60 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +63 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +51 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +60 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +63 -0
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +64 -0
- data/vendor/cmock/vendor/unity/test/test_generate_test_runner.rb +94 -0
- data/vendor/cmock/vendor/unity/test/testdata/mocksample.c +51 -0
- data/vendor/cmock/vendor/unity/test/testdata/sample.yml +9 -0
- data/vendor/cmock/vendor/unity/test/testdata/testsample.c +51 -0
- data/vendor/cmock/vendor/unity/test/testparameterized.c +101 -0
- data/vendor/cmock/vendor/unity/test/testunity.c +2024 -0
- data/vendor/unity/Gemfile +4 -0
- data/vendor/unity/auto/generate_test_runner.rb +6 -3
- data/vendor/unity/examples/makefile +2 -2
- data/vendor/unity/examples/rakefile.rb +13 -2
- data/vendor/unity/extras/fixture/rakefile.rb +1 -1
- data/vendor/unity/extras/fixture/rakefile_helper.rb +4 -3
- data/vendor/unity/extras/fixture/src/unity_fixture.c +15 -12
- data/vendor/unity/extras/fixture/src/unity_fixture.h +5 -5
- data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +1 -1
- data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +6 -3
- data/vendor/unity/makefile +2 -2
- data/vendor/unity/src/unity.c +183 -16
- data/vendor/unity/src/unity.h +18 -5
- data/vendor/unity/src/unity_internals.h +57 -23
- data/vendor/unity/targets/gcc_64.yml +45 -0
- data/vendor/unity/test/testunity.c +436 -28
- metadata +200 -137
- data/ceedling-0.13.0.rc4.gem +0 -0
- data/ceedling.sublime-project +0 -8
- data/ceedling.sublime-workspace +0 -365
- data/lib/preprocessinator_includes_handler.rb +0 -55
- data/tags +0 -977
- data/vendor/cmock/vendor/hardmock/CHANGES +0 -78
- data/vendor/cmock/vendor/hardmock/LICENSE +0 -7
- data/vendor/cmock/vendor/hardmock/README +0 -70
- data/vendor/cmock/vendor/hardmock/Rakefile +0 -8
- data/vendor/cmock/vendor/hardmock/config/environment.rb +0 -12
- data/vendor/cmock/vendor/hardmock/lib/assert_error.rb +0 -23
- data/vendor/cmock/vendor/hardmock/lib/extend_test_unit.rb +0 -14
- data/vendor/cmock/vendor/hardmock/lib/hardmock.rb +0 -86
- data/vendor/cmock/vendor/hardmock/lib/hardmock/errors.rb +0 -22
- data/vendor/cmock/vendor/hardmock/lib/hardmock/expectation.rb +0 -229
- data/vendor/cmock/vendor/hardmock/lib/hardmock/expectation_builder.rb +0 -9
- data/vendor/cmock/vendor/hardmock/lib/hardmock/expector.rb +0 -26
- data/vendor/cmock/vendor/hardmock/lib/hardmock/method_cleanout.rb +0 -33
- data/vendor/cmock/vendor/hardmock/lib/hardmock/mock.rb +0 -180
- data/vendor/cmock/vendor/hardmock/lib/hardmock/mock_control.rb +0 -53
- data/vendor/cmock/vendor/hardmock/lib/hardmock/stubbing.rb +0 -210
- data/vendor/cmock/vendor/hardmock/lib/hardmock/trapper.rb +0 -31
- data/vendor/cmock/vendor/hardmock/lib/hardmock/utils.rb +0 -9
- data/vendor/cmock/vendor/hardmock/lib/test_unit_before_after.rb +0 -169
- data/vendor/cmock/vendor/hardmock/rake_tasks/rdoc.rake +0 -19
- data/vendor/cmock/vendor/hardmock/rake_tasks/rdoc_options.rb +0 -4
- data/vendor/cmock/vendor/hardmock/rake_tasks/test.rake +0 -22
- data/vendor/cmock/vendor/hardmock/test/functional/assert_error_test.rb +0 -52
- data/vendor/cmock/vendor/hardmock/test/functional/auto_verify_test.rb +0 -178
- data/vendor/cmock/vendor/hardmock/test/functional/direct_mock_usage_test.rb +0 -396
- data/vendor/cmock/vendor/hardmock/test/functional/hardmock_test.rb +0 -434
- data/vendor/cmock/vendor/hardmock/test/functional/stubbing_test.rb +0 -479
- data/vendor/cmock/vendor/hardmock/test/test_helper.rb +0 -43
- data/vendor/cmock/vendor/hardmock/test/unit/expectation_builder_test.rb +0 -19
- data/vendor/cmock/vendor/hardmock/test/unit/expectation_test.rb +0 -372
- data/vendor/cmock/vendor/hardmock/test/unit/expector_test.rb +0 -57
- data/vendor/cmock/vendor/hardmock/test/unit/method_cleanout_test.rb +0 -36
- data/vendor/cmock/vendor/hardmock/test/unit/mock_control_test.rb +0 -175
- data/vendor/cmock/vendor/hardmock/test/unit/mock_test.rb +0 -279
- data/vendor/cmock/vendor/hardmock/test/unit/test_unit_before_after_test.rb +0 -452
- data/vendor/cmock/vendor/hardmock/test/unit/trapper_test.rb +0 -62
- data/vendor/cmock/vendor/hardmock/test/unit/verify_error_test.rb +0 -40
|
@@ -1,184 +1,184 @@
|
|
|
1
|
-
require 'rubygems'
|
|
2
|
-
require 'rake' # for ext()
|
|
3
|
-
require 'constants'
|
|
4
|
-
require 'tool_executor' # for argument replacement pattern
|
|
5
|
-
require 'file_path_utils' # for glob handling class methods
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
class ConfiguratorValidator
|
|
9
|
-
|
|
10
|
-
constructor :file_wrapper, :stream_wrapper, :system_wrapper
|
|
11
|
-
|
|
12
|
-
# walk into config hash verify existence of data at key depth
|
|
13
|
-
def exists?(config, *keys)
|
|
14
|
-
hash = retrieve_value(config, keys)
|
|
15
|
-
exist = !hash[:value].nil?
|
|
16
|
-
|
|
17
|
-
if (not exist)
|
|
18
|
-
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
19
|
-
@stream_wrapper.stderr_puts("ERROR: Required config file entry #{format_key_sequence(keys, hash[:depth])} does not exist.")
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
return exist
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
# walk into config hash. verify directory path(s) at given key depth
|
|
27
|
-
def validate_path_list(config, *keys)
|
|
28
|
-
hash = retrieve_value(config, keys)
|
|
29
|
-
list = hash[:value]
|
|
30
|
-
|
|
31
|
-
# return early if we couldn't walk into hash and find a value
|
|
32
|
-
return false if (list.nil?)
|
|
33
|
-
|
|
34
|
-
path_list = []
|
|
35
|
-
exist = true
|
|
36
|
-
|
|
37
|
-
case list
|
|
38
|
-
when String then path_list << list
|
|
39
|
-
when Array then path_list = list
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
path_list.each do |path|
|
|
43
|
-
base_path = FilePathUtils::extract_path(path) # lop off add/subtract notation & glob specifiers
|
|
44
|
-
|
|
45
|
-
if (not @file_wrapper.exist?(base_path))
|
|
46
|
-
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
47
|
-
@stream_wrapper.stderr_puts("ERROR: Config path #{format_key_sequence(keys, hash[:depth])}['#{base_path}'] does not exist on disk.")
|
|
48
|
-
exist = false
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
return exist
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
# simple path verification
|
|
57
|
-
def validate_filepath_simple(path, *keys)
|
|
58
|
-
validate_path = path
|
|
59
|
-
|
|
60
|
-
if (not @file_wrapper.exist?(validate_path))
|
|
61
|
-
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
62
|
-
@stream_wrapper.stderr_puts("ERROR: Config path '#{validate_path}' associated with #{format_key_sequence(keys, keys.size)} does not exist on disk.")
|
|
63
|
-
return false
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
return true
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
# walk into config hash. verify specified file exists.
|
|
70
|
-
def validate_filepath(config, *keys)
|
|
71
|
-
hash = retrieve_value(config, keys)
|
|
72
|
-
filepath = hash[:value]
|
|
73
|
-
|
|
74
|
-
# return early if we couldn't walk into hash and find a value
|
|
75
|
-
return false if (filepath.nil?)
|
|
76
|
-
|
|
77
|
-
# skip everything if we've got an argument replacement pattern
|
|
78
|
-
return true if (filepath =~ TOOL_EXECUTOR_ARGUMENT_REPLACEMENT_PATTERN)
|
|
79
|
-
|
|
80
|
-
if (not @file_wrapper.exist?(filepath))
|
|
81
|
-
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
82
|
-
@stream_wrapper.stderr_puts("ERROR: Config filepath #{format_key_sequence(keys, hash[:depth])}['#{filepath}'] does not exist on disk.")
|
|
83
|
-
return false
|
|
84
|
-
end
|
|
85
|
-
|
|
86
|
-
return true
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
# walk into config hash. verify specified file exists.
|
|
90
|
-
def validate_executable_filepath(config, *keys)
|
|
91
|
-
exe_extension = config[:extension][:executable]
|
|
92
|
-
hash = retrieve_value(config, keys)
|
|
93
|
-
filepath = hash[:value]
|
|
94
|
-
|
|
95
|
-
# return early if we couldn't walk into hash and find a value
|
|
96
|
-
return false if (filepath.nil?)
|
|
97
|
-
|
|
98
|
-
# skip everything if we've got an argument replacement pattern
|
|
99
|
-
return true if (filepath =~ TOOL_EXECUTOR_ARGUMENT_REPLACEMENT_PATTERN)
|
|
100
|
-
|
|
101
|
-
# if there's no path included, verify file exists somewhere in system search paths
|
|
102
|
-
if (not filepath.include?('/'))
|
|
103
|
-
exists = false
|
|
104
|
-
|
|
105
|
-
@system_wrapper.search_paths.each do |path|
|
|
106
|
-
if (@file_wrapper.exist?( File.join(path, filepath)) )
|
|
107
|
-
exists = true
|
|
108
|
-
break
|
|
109
|
-
end
|
|
110
|
-
|
|
111
|
-
if (@file_wrapper.exist?( (File.join(path, filepath)).ext( exe_extension ) ))
|
|
112
|
-
exists = true
|
|
113
|
-
break
|
|
114
|
-
elsif (@system_wrapper.windows? and @file_wrapper.exist?( (File.join(path, filepath)).ext( EXTENSION_WIN_EXE ) ))
|
|
115
|
-
exists = true
|
|
116
|
-
break
|
|
117
|
-
end
|
|
118
|
-
end
|
|
119
|
-
|
|
120
|
-
if (not exists)
|
|
121
|
-
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
122
|
-
@stream_wrapper.stderr_puts("ERROR: Config filepath #{format_key_sequence(keys, hash[:depth])}['#{filepath}'] does not exist in system search paths.")
|
|
123
|
-
return false
|
|
124
|
-
end
|
|
125
|
-
|
|
126
|
-
# if there is a path included, check that explicit filepath exists
|
|
127
|
-
else
|
|
128
|
-
if (not @file_wrapper.exist?(filepath))
|
|
129
|
-
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
130
|
-
@stream_wrapper.stderr_puts("ERROR: Config filepath #{format_key_sequence(keys, hash[:depth])}['#{filepath}'] does not exist on disk.")
|
|
131
|
-
return false
|
|
132
|
-
end
|
|
133
|
-
end
|
|
134
|
-
|
|
135
|
-
return true
|
|
136
|
-
end
|
|
137
|
-
|
|
138
|
-
def validate_tool_stderr_redirect(config, tools, tool)
|
|
139
|
-
redirect = config[tools][tool][:stderr_redirect]
|
|
140
|
-
if (redirect.class == Symbol)
|
|
141
|
-
# map constants and force to array of strings for runtime universality across ruby versions
|
|
142
|
-
if (not StdErrRedirect.constants.map{|constant| constant.to_s}.include?(redirect.to_s.upcase))
|
|
143
|
-
error = "ERROR: [:#{tools}][:#{tool}][:stderr_redirect][:#{redirect}] is not a recognized option " +
|
|
144
|
-
"{#{StdErrRedirect.constants.map{|constant| ':' + constant.to_s.downcase}.join(', ')}}."
|
|
145
|
-
@stream_wrapper.stderr_puts(error)
|
|
146
|
-
return false
|
|
147
|
-
end
|
|
148
|
-
end
|
|
149
|
-
|
|
150
|
-
return true
|
|
151
|
-
end
|
|
152
|
-
|
|
153
|
-
private #########################################
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
def retrieve_value(config, keys)
|
|
157
|
-
value = nil
|
|
158
|
-
hash = config
|
|
159
|
-
depth = 0
|
|
160
|
-
|
|
161
|
-
# walk into hash & extract value at requested key sequence
|
|
162
|
-
keys.each do |symbol|
|
|
163
|
-
depth += 1
|
|
164
|
-
if (not hash[symbol].nil?)
|
|
165
|
-
hash = hash[symbol]
|
|
166
|
-
value = hash
|
|
167
|
-
else
|
|
168
|
-
value = nil
|
|
169
|
-
break
|
|
170
|
-
end
|
|
171
|
-
end
|
|
172
|
-
|
|
173
|
-
return {:value => value, :depth => depth}
|
|
174
|
-
end
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
def format_key_sequence(keys, depth)
|
|
178
|
-
walked_keys = keys.slice(0, depth)
|
|
179
|
-
formatted_keys = walked_keys.map{|key| "[:#{key.to_s}]"}
|
|
180
|
-
|
|
181
|
-
return formatted_keys.join
|
|
182
|
-
end
|
|
183
|
-
|
|
184
|
-
end
|
|
1
|
+
require 'rubygems'
|
|
2
|
+
require 'rake' # for ext()
|
|
3
|
+
require 'ceedling/constants'
|
|
4
|
+
require 'ceedling/tool_executor' # for argument replacement pattern
|
|
5
|
+
require 'ceedling/file_path_utils' # for glob handling class methods
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class ConfiguratorValidator
|
|
9
|
+
|
|
10
|
+
constructor :file_wrapper, :stream_wrapper, :system_wrapper
|
|
11
|
+
|
|
12
|
+
# walk into config hash verify existence of data at key depth
|
|
13
|
+
def exists?(config, *keys)
|
|
14
|
+
hash = retrieve_value(config, keys)
|
|
15
|
+
exist = !hash[:value].nil?
|
|
16
|
+
|
|
17
|
+
if (not exist)
|
|
18
|
+
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
19
|
+
@stream_wrapper.stderr_puts("ERROR: Required config file entry #{format_key_sequence(keys, hash[:depth])} does not exist.")
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
return exist
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
# walk into config hash. verify directory path(s) at given key depth
|
|
27
|
+
def validate_path_list(config, *keys)
|
|
28
|
+
hash = retrieve_value(config, keys)
|
|
29
|
+
list = hash[:value]
|
|
30
|
+
|
|
31
|
+
# return early if we couldn't walk into hash and find a value
|
|
32
|
+
return false if (list.nil?)
|
|
33
|
+
|
|
34
|
+
path_list = []
|
|
35
|
+
exist = true
|
|
36
|
+
|
|
37
|
+
case list
|
|
38
|
+
when String then path_list << list
|
|
39
|
+
when Array then path_list = list
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
path_list.each do |path|
|
|
43
|
+
base_path = FilePathUtils::extract_path(path) # lop off add/subtract notation & glob specifiers
|
|
44
|
+
|
|
45
|
+
if (not @file_wrapper.exist?(base_path))
|
|
46
|
+
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
47
|
+
@stream_wrapper.stderr_puts("ERROR: Config path #{format_key_sequence(keys, hash[:depth])}['#{base_path}'] does not exist on disk.")
|
|
48
|
+
exist = false
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
return exist
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
# simple path verification
|
|
57
|
+
def validate_filepath_simple(path, *keys)
|
|
58
|
+
validate_path = path
|
|
59
|
+
|
|
60
|
+
if (not @file_wrapper.exist?(validate_path))
|
|
61
|
+
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
62
|
+
@stream_wrapper.stderr_puts("ERROR: Config path '#{validate_path}' associated with #{format_key_sequence(keys, keys.size)} does not exist on disk.")
|
|
63
|
+
return false
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
return true
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# walk into config hash. verify specified file exists.
|
|
70
|
+
def validate_filepath(config, *keys)
|
|
71
|
+
hash = retrieve_value(config, keys)
|
|
72
|
+
filepath = hash[:value]
|
|
73
|
+
|
|
74
|
+
# return early if we couldn't walk into hash and find a value
|
|
75
|
+
return false if (filepath.nil?)
|
|
76
|
+
|
|
77
|
+
# skip everything if we've got an argument replacement pattern
|
|
78
|
+
return true if (filepath =~ TOOL_EXECUTOR_ARGUMENT_REPLACEMENT_PATTERN)
|
|
79
|
+
|
|
80
|
+
if (not @file_wrapper.exist?(filepath))
|
|
81
|
+
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
82
|
+
@stream_wrapper.stderr_puts("ERROR: Config filepath #{format_key_sequence(keys, hash[:depth])}['#{filepath}'] does not exist on disk.")
|
|
83
|
+
return false
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
return true
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
# walk into config hash. verify specified file exists.
|
|
90
|
+
def validate_executable_filepath(config, *keys)
|
|
91
|
+
exe_extension = config[:extension][:executable]
|
|
92
|
+
hash = retrieve_value(config, keys)
|
|
93
|
+
filepath = hash[:value]
|
|
94
|
+
|
|
95
|
+
# return early if we couldn't walk into hash and find a value
|
|
96
|
+
return false if (filepath.nil?)
|
|
97
|
+
|
|
98
|
+
# skip everything if we've got an argument replacement pattern
|
|
99
|
+
return true if (filepath =~ TOOL_EXECUTOR_ARGUMENT_REPLACEMENT_PATTERN)
|
|
100
|
+
|
|
101
|
+
# if there's no path included, verify file exists somewhere in system search paths
|
|
102
|
+
if (not filepath.include?('/'))
|
|
103
|
+
exists = false
|
|
104
|
+
|
|
105
|
+
@system_wrapper.search_paths.each do |path|
|
|
106
|
+
if (@file_wrapper.exist?( File.join(path, filepath)) )
|
|
107
|
+
exists = true
|
|
108
|
+
break
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
if (@file_wrapper.exist?( (File.join(path, filepath)).ext( exe_extension ) ))
|
|
112
|
+
exists = true
|
|
113
|
+
break
|
|
114
|
+
elsif (@system_wrapper.windows? and @file_wrapper.exist?( (File.join(path, filepath)).ext( EXTENSION_WIN_EXE ) ))
|
|
115
|
+
exists = true
|
|
116
|
+
break
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
if (not exists)
|
|
121
|
+
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
122
|
+
@stream_wrapper.stderr_puts("ERROR: Config filepath #{format_key_sequence(keys, hash[:depth])}['#{filepath}'] does not exist in system search paths.")
|
|
123
|
+
return false
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
# if there is a path included, check that explicit filepath exists
|
|
127
|
+
else
|
|
128
|
+
if (not @file_wrapper.exist?(filepath))
|
|
129
|
+
# no verbosity checking since this is lowest level anyhow & verbosity checking depends on configurator
|
|
130
|
+
@stream_wrapper.stderr_puts("ERROR: Config filepath #{format_key_sequence(keys, hash[:depth])}['#{filepath}'] does not exist on disk.")
|
|
131
|
+
return false
|
|
132
|
+
end
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
return true
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
def validate_tool_stderr_redirect(config, tools, tool)
|
|
139
|
+
redirect = config[tools][tool][:stderr_redirect]
|
|
140
|
+
if (redirect.class == Symbol)
|
|
141
|
+
# map constants and force to array of strings for runtime universality across ruby versions
|
|
142
|
+
if (not StdErrRedirect.constants.map{|constant| constant.to_s}.include?(redirect.to_s.upcase))
|
|
143
|
+
error = "ERROR: [:#{tools}][:#{tool}][:stderr_redirect][:#{redirect}] is not a recognized option " +
|
|
144
|
+
"{#{StdErrRedirect.constants.map{|constant| ':' + constant.to_s.downcase}.join(', ')}}."
|
|
145
|
+
@stream_wrapper.stderr_puts(error)
|
|
146
|
+
return false
|
|
147
|
+
end
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
return true
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
private #########################################
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
def retrieve_value(config, keys)
|
|
157
|
+
value = nil
|
|
158
|
+
hash = config
|
|
159
|
+
depth = 0
|
|
160
|
+
|
|
161
|
+
# walk into hash & extract value at requested key sequence
|
|
162
|
+
keys.each do |symbol|
|
|
163
|
+
depth += 1
|
|
164
|
+
if (not hash[symbol].nil?)
|
|
165
|
+
hash = hash[symbol]
|
|
166
|
+
value = hash
|
|
167
|
+
else
|
|
168
|
+
value = nil
|
|
169
|
+
break
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
return {:value => value, :depth => depth}
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
def format_key_sequence(keys, depth)
|
|
178
|
+
walked_keys = keys.slice(0, depth)
|
|
179
|
+
formatted_keys = walked_keys.map{|key| "[:#{key.to_s}]"}
|
|
180
|
+
|
|
181
|
+
return formatted_keys.join
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
end
|
|
@@ -32,6 +32,9 @@ class BackgroundExec
|
|
|
32
32
|
UNIX = :unix
|
|
33
33
|
end
|
|
34
34
|
|
|
35
|
+
unless defined?(PROJECT_ROOT)
|
|
36
|
+
PROJECT_ROOT = Dir.pwd()
|
|
37
|
+
end
|
|
35
38
|
|
|
36
39
|
EXTENSION_WIN_EXE = '.exe'
|
|
37
40
|
EXTENSION_NONWIN_EXE = '.out'
|
|
@@ -54,30 +57,30 @@ CMOCK_C_FILE = 'cmock.c'
|
|
|
54
57
|
CMOCK_H_FILE = 'cmock.h'
|
|
55
58
|
|
|
56
59
|
|
|
57
|
-
DEFAULT_CEEDLING_MAIN_PROJECT_FILE = 'project.yml' # main project file
|
|
58
|
-
DEFAULT_CEEDLING_USER_PROJECT_FILE = 'user.yml' # supplemental user config file
|
|
60
|
+
DEFAULT_CEEDLING_MAIN_PROJECT_FILE = 'project.yml' unless defined?(DEFAULT_CEEDLING_MAIN_PROJECT_FILE) # main project file
|
|
61
|
+
DEFAULT_CEEDLING_USER_PROJECT_FILE = 'user.yml' unless defined?(DEFAULT_CEEDLING_USER_PROJECT_FILE) # supplemental user config file
|
|
59
62
|
|
|
60
|
-
INPUT_CONFIGURATION_CACHE_FILE = 'input.yml' # input configuration file dump
|
|
63
|
+
INPUT_CONFIGURATION_CACHE_FILE = 'input.yml' unless defined?(INPUT_CONFIGURATION_CACHE_FILE) # input configuration file dump
|
|
61
64
|
|
|
62
65
|
|
|
63
|
-
TEST_ROOT_NAME = 'test'
|
|
64
|
-
TEST_TASK_ROOT = TEST_ROOT_NAME + ':'
|
|
65
|
-
TEST_SYM = TEST_ROOT_NAME.to_sym
|
|
66
|
+
TEST_ROOT_NAME = 'test' unless defined?(TEST_ROOT_NAME)
|
|
67
|
+
TEST_TASK_ROOT = TEST_ROOT_NAME + ':' unless defined?(TEST_TASK_ROOT)
|
|
68
|
+
TEST_SYM = TEST_ROOT_NAME.to_sym unless defined?(TEST_SYM)
|
|
66
69
|
|
|
67
|
-
RELEASE_ROOT_NAME = 'release'
|
|
68
|
-
RELEASE_TASK_ROOT = RELEASE_ROOT_NAME + ':'
|
|
69
|
-
RELEASE_SYM = RELEASE_ROOT_NAME.to_sym
|
|
70
|
+
RELEASE_ROOT_NAME = 'release' unless defined?(RELEASE_ROOT_NAME)
|
|
71
|
+
RELEASE_TASK_ROOT = RELEASE_ROOT_NAME + ':' unless defined?(RELEASE_TASK_ROOT)
|
|
72
|
+
RELEASE_SYM = RELEASE_ROOT_NAME.to_sym unless defined?(RELEASE_SYM)
|
|
70
73
|
|
|
71
|
-
REFRESH_ROOT_NAME = 'refresh'
|
|
72
|
-
REFRESH_TASK_ROOT = REFRESH_ROOT_NAME + ':'
|
|
73
|
-
REFRESH_SYM = REFRESH_ROOT_NAME.to_sym
|
|
74
|
+
REFRESH_ROOT_NAME = 'refresh' unless defined?(REFRESH_ROOT_NAME)
|
|
75
|
+
REFRESH_TASK_ROOT = REFRESH_ROOT_NAME + ':' unless defined?(REFRESH_TASK_ROOT)
|
|
76
|
+
REFRESH_SYM = REFRESH_ROOT_NAME.to_sym unless defined?(REFRESH_SYM)
|
|
74
77
|
|
|
75
|
-
UTILS_ROOT_NAME = 'utils'
|
|
76
|
-
UTILS_TASK_ROOT = UTILS_ROOT_NAME + ':'
|
|
77
|
-
UTILS_SYM = UTILS_ROOT_NAME.to_sym
|
|
78
|
+
UTILS_ROOT_NAME = 'utils' unless defined?(UTILS_ROOT_NAME)
|
|
79
|
+
UTILS_TASK_ROOT = UTILS_ROOT_NAME + ':' unless defined?(UTILS_TASK_ROOT)
|
|
80
|
+
UTILS_SYM = UTILS_ROOT_NAME.to_sym unless defined?(UTILS_SYM)
|
|
78
81
|
|
|
79
|
-
OPERATION_COMPILE_SYM = :compile
|
|
80
|
-
OPERATION_LINK_SYM = :link
|
|
82
|
+
OPERATION_COMPILE_SYM = :compile unless defined?(OPERATION_COMPILE_SYM)
|
|
83
|
+
OPERATION_LINK_SYM = :link unless defined?(OPERATION_LINK_SYM)
|
|
81
84
|
|
|
82
85
|
|
|
83
86
|
RUBY_STRING_REPLACEMENT_PATTERN = /#\{.+\}/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
require 'constants'
|
|
2
|
-
require 'system_wrapper'
|
|
3
|
-
require 'file_path_utils'
|
|
1
|
+
require 'ceedling/constants'
|
|
2
|
+
require 'ceedling/system_wrapper'
|
|
3
|
+
require 'ceedling/file_path_utils'
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
DEFAULT_TEST_COMPILER_TOOL = {
|
|
@@ -14,9 +14,10 @@ DEFAULT_TEST_COMPILER_TOOL = {
|
|
|
14
14
|
{"-I\"$\"" => 'COLLECTION_PATHS_TEST_TOOLCHAIN_INCLUDE'}.freeze,
|
|
15
15
|
{"-D$" => 'COLLECTION_DEFINES_TEST_AND_VENDOR'}.freeze,
|
|
16
16
|
"-DGNU_COMPILER".freeze,
|
|
17
|
+
"-g".freeze,
|
|
17
18
|
"-c \"${1}\"".freeze,
|
|
18
19
|
"-o \"${2}\"".freeze,
|
|
19
|
-
# gcc's list file output options are complex; no use of ${3} parameter in default config
|
|
20
|
+
# gcc's list file output options are complex; no use of ${3} parameter in default config
|
|
20
21
|
].freeze
|
|
21
22
|
}
|
|
22
23
|
|
|
@@ -31,7 +32,7 @@ DEFAULT_TEST_LINKER_TOOL = {
|
|
|
31
32
|
"-o \"${2}\"".freeze,
|
|
32
33
|
].freeze
|
|
33
34
|
}
|
|
34
|
-
|
|
35
|
+
|
|
35
36
|
DEFAULT_TEST_FIXTURE_TOOL = {
|
|
36
37
|
:executable => '${1}'.freeze,
|
|
37
38
|
:name => 'default_test_fixture'.freeze,
|
|
@@ -91,8 +92,8 @@ DEFAULT_TEST_DEPENDENCIES_GENERATOR_TOOL = {
|
|
|
91
92
|
:arguments => [
|
|
92
93
|
{"-I\"$\"" => 'COLLECTION_PATHS_TEST_SUPPORT_SOURCE_INCLUDE_VENDOR'}.freeze,
|
|
93
94
|
{"-I\"$\"" => 'COLLECTION_PATHS_TEST_TOOLCHAIN_INCLUDE'}.freeze,
|
|
94
|
-
{"-D$" => 'COLLECTION_DEFINES_TEST_AND_VENDOR'}.freeze,
|
|
95
|
-
{"-D$" => 'DEFINES_TEST_PREPROCESS'}.freeze,
|
|
95
|
+
{"-D$" => 'COLLECTION_DEFINES_TEST_AND_VENDOR'}.freeze,
|
|
96
|
+
{"-D$" => 'DEFINES_TEST_PREPROCESS'}.freeze,
|
|
96
97
|
"-DGNU_PREPROCESSOR".freeze,
|
|
97
98
|
"-MT \"${3}\"".freeze,
|
|
98
99
|
'-MM'.freeze,
|
|
@@ -138,7 +139,7 @@ DEFAULT_RELEASE_COMPILER_TOOL = {
|
|
|
138
139
|
"-DGNU_COMPILER".freeze,
|
|
139
140
|
"-c \"${1}\"".freeze,
|
|
140
141
|
"-o \"${2}\"".freeze,
|
|
141
|
-
# gcc's list file output options are complex; no use of ${3} parameter in default config
|
|
142
|
+
# gcc's list file output options are complex; no use of ${3} parameter in default config
|
|
142
143
|
].freeze
|
|
143
144
|
}
|
|
144
145
|
|
|
@@ -167,7 +168,7 @@ DEFAULT_RELEASE_LINKER_TOOL = {
|
|
|
167
168
|
].freeze
|
|
168
169
|
}
|
|
169
170
|
|
|
170
|
-
|
|
171
|
+
|
|
171
172
|
DEFAULT_TOOLS_TEST = {
|
|
172
173
|
:tools => {
|
|
173
174
|
:test_compiler => DEFAULT_TEST_COMPILER_TOOL,
|
|
@@ -175,7 +176,7 @@ DEFAULT_TOOLS_TEST = {
|
|
|
175
176
|
:test_fixture => DEFAULT_TEST_FIXTURE_TOOL,
|
|
176
177
|
}
|
|
177
178
|
}
|
|
178
|
-
|
|
179
|
+
|
|
179
180
|
DEFAULT_TOOLS_TEST_PREPROCESSORS = {
|
|
180
181
|
:tools => {
|
|
181
182
|
:test_includes_preprocessor => DEFAULT_TEST_INCLUDES_PREPROCESSOR_TOOL,
|
|
@@ -209,7 +210,7 @@ DEFAULT_TOOLS_RELEASE_DEPENDENCIES = {
|
|
|
209
210
|
}
|
|
210
211
|
}
|
|
211
212
|
|
|
212
|
-
|
|
213
|
+
|
|
213
214
|
DEFAULT_RELEASE_TARGET_NAME = 'project'
|
|
214
215
|
|
|
215
216
|
DEFAULT_CEEDLING_CONFIG = {
|
|
@@ -240,7 +241,7 @@ DEFAULT_CEEDLING_CONFIG = {
|
|
|
240
241
|
:test_toolchain_include => [],
|
|
241
242
|
:release_toolchain_include => [],
|
|
242
243
|
},
|
|
243
|
-
|
|
244
|
+
|
|
244
245
|
:files => {
|
|
245
246
|
:test => [],
|
|
246
247
|
:source => [],
|
|
@@ -248,22 +249,22 @@ DEFAULT_CEEDLING_CONFIG = {
|
|
|
248
249
|
:support => [],
|
|
249
250
|
:include => [],
|
|
250
251
|
},
|
|
251
|
-
|
|
252
|
+
|
|
252
253
|
# unlike other top-level entries, environment's value is an array to preserve order
|
|
253
254
|
:environment => [
|
|
254
255
|
# when evaluated, this provides wider text field for rake task comments
|
|
255
256
|
{:rake_columns => '120'},
|
|
256
257
|
],
|
|
257
|
-
|
|
258
|
+
|
|
258
259
|
:defines => {
|
|
259
260
|
:test => [],
|
|
260
261
|
:test_preprocess => [],
|
|
261
262
|
:release => [],
|
|
262
263
|
:release_preprocess => [],
|
|
263
264
|
},
|
|
264
|
-
|
|
265
|
+
|
|
265
266
|
:flags => {},
|
|
266
|
-
|
|
267
|
+
|
|
267
268
|
:extension => {
|
|
268
269
|
:header => '.h',
|
|
269
270
|
:source => '.c',
|
|
@@ -301,7 +302,7 @@ DEFAULT_CEEDLING_CONFIG = {
|
|
|
301
302
|
# (these can be overridden in project file to add arguments to tools without totally redefining tools)
|
|
302
303
|
:test_compiler => { :arguments => [] },
|
|
303
304
|
:test_linker => { :arguments => [] },
|
|
304
|
-
:test_fixture => {
|
|
305
|
+
:test_fixture => {
|
|
305
306
|
:arguments => [],
|
|
306
307
|
:link_objects => [], # compiled object files to always be linked in (e.g. cmock.o if using mocks)
|
|
307
308
|
},
|
|
@@ -319,7 +320,7 @@ DEFAULT_CEEDLING_CONFIG = {
|
|
|
319
320
|
}
|
|
320
321
|
}.freeze
|
|
321
322
|
|
|
322
|
-
|
|
323
|
+
|
|
323
324
|
DEFAULT_TESTS_RESULTS_REPORT_TEMPLATE = %q{
|
|
324
325
|
% ignored = hash[:results][:counts][:ignored]
|
|
325
326
|
% failed = hash[:results][:counts][:failed]
|