ceedling 0.15.1 → 0.15.2
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 +4 -4
- data/Gemfile +1 -1
- data/Gemfile.lock +9 -13
- data/README.md +21 -3
- data/{rakefile.rb → Rakefile} +0 -0
- data/lib/ceedling/version.rb +4 -4
- data/lib/ceedling/version.rb.erb +1 -1
- data/release/version.info +1 -1
- data/vendor/c_exception/Gemfile +1 -1
- data/vendor/c_exception/Gemfile.lock +12 -0
- data/vendor/c_exception/{docs/license.txt → LICENSE.txt} +9 -9
- data/vendor/c_exception/README.md +146 -0
- data/vendor/c_exception/{rakefile.rb → Rakefile} +6 -5
- data/vendor/c_exception/lib/CException.c +9 -6
- data/vendor/c_exception/release/build.info +1 -1
- data/vendor/c_exception/release/version.info +1 -1
- data/vendor/c_exception/test/CExceptionConfig.h +2 -0
- data/vendor/c_exception/test/TestException.c +4 -1
- data/vendor/cmock/README.md +24 -0
- data/vendor/cmock/{rakefile.rb → Rakefile} +12 -12
- data/vendor/cmock/docs/CMock Summary.odt +0 -0
- data/vendor/cmock/docs/CMock Summary.pdf +0 -0
- data/vendor/cmock/docs/CMock_Summary.md +130 -111
- data/vendor/cmock/docs/license.txt +1 -1
- data/vendor/cmock/lib/cmock.rb +36 -12
- data/vendor/cmock/lib/cmock_config.rb +39 -36
- data/vendor/cmock/lib/cmock_generator.rb +33 -25
- data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +68 -0
- data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +18 -42
- data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +2 -2
- data/vendor/cmock/lib/cmock_generator_utils.rb +39 -29
- data/vendor/cmock/lib/cmock_header_parser.rb +46 -39
- data/vendor/cmock/rakefile_helper.rb +38 -38
- data/vendor/cmock/src/cmock.c +20 -4
- data/vendor/cmock/src/cmock.h +6 -1
- data/vendor/cmock/src/cmock_internals.h +26 -3
- data/vendor/cmock/targets/clang_strict.yml +85 -0
- data/vendor/cmock/targets/gcc.yml +4 -2
- data/vendor/cmock/targets/gcc_64.yml +55 -0
- data/vendor/cmock/test/c/TestCMockC.c +3 -3
- data/vendor/cmock/test/c/TestCMockCDynamic.c +11 -11
- data/vendor/cmock/test/c/TestCMockCDynamic_Runner.c +4 -2
- data/vendor/cmock/test/c/TestCMockC_Runner.c +1 -1
- data/vendor/cmock/test/system/systest_generator.rb +38 -26
- data/vendor/cmock/test/system/test_compilation/const.h +8 -3
- data/vendor/cmock/test/system/test_interactions/all_plugins_but_other_limits.yml +92 -58
- data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +53 -48
- data/vendor/cmock/test/system/test_interactions/array_and_pointer_handling.yml +58 -56
- data/vendor/cmock/test/system/test_interactions/basic_expect_and_return.yml +19 -18
- data/vendor/cmock/test/system/test_interactions/expect_and_return_custom_types.yml +13 -13
- data/vendor/cmock/test/system/test_interactions/expect_and_return_treat_as.yml +20 -20
- data/vendor/cmock/test/system/test_interactions/expect_any_args.yml +238 -0
- data/vendor/cmock/test/system/test_interactions/fancy_pointer_handling.yml +36 -34
- data/vendor/cmock/test/system/test_interactions/ignore_and_return.yml +24 -15
- data/vendor/cmock/test/system/test_interactions/nonstandard_parsed_stuff_2.yml +11 -11
- data/vendor/cmock/test/system/test_interactions/return_thru_ptr_and_expect_any_args.yml +235 -0
- data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore_arg.yml +22 -26
- data/vendor/cmock/test/system/test_interactions/stubs_with_callbacks.yml +31 -31
- data/vendor/cmock/test/unit/cmock_generator_main_test.rb +141 -109
- data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +82 -0
- data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +17 -81
- data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +10 -10
- data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +47 -41
- data/vendor/cmock/test/unit/cmock_header_parser_test.rb +290 -227
- data/vendor/unity/{rakefile.rb → Rakefile} +13 -6
- data/vendor/unity/auto/colour_prompt.rb +33 -12
- data/vendor/unity/auto/generate_test_runner.rb +67 -63
- data/vendor/unity/auto/parseOutput.rb +189 -0
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/makefile +41 -40
- data/vendor/unity/examples/example_1/readme.txt +5 -0
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode.c +24 -24
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode.h +3 -3
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode2.c +9 -9
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode2.h +2 -2
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/test/TestProductionCode.c +62 -62
- data/vendor/unity/examples/{test → example_1/test}/TestProductionCode2.c +31 -31
- data/vendor/unity/examples/{test/no_ruby → example_1/test/test_runners}/TestProductionCode2_Runner.c +46 -46
- data/vendor/unity/examples/{test/no_ruby → example_1/test/test_runners}/TestProductionCode_Runner.c +50 -50
- data/vendor/unity/examples/example_2/makefile +45 -0
- data/vendor/unity/examples/example_2/readme.txt +5 -0
- data/vendor/unity/examples/{src → example_2/src}/ProductionCode.c +24 -24
- data/vendor/unity/examples/{src → example_2/src}/ProductionCode.h +3 -3
- data/vendor/unity/examples/{src → example_2/src}/ProductionCode2.c +9 -9
- data/vendor/unity/examples/{src → example_2/src}/ProductionCode2.h +2 -2
- data/vendor/unity/examples/{test → example_2/test}/TestProductionCode.c +64 -62
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_2}/test/TestProductionCode2.c +33 -31
- data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
- data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
- data/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
- data/vendor/unity/examples/{helper → example_3/helper}/UnityHelper.c +10 -10
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/helper/UnityHelper.h +12 -12
- data/vendor/unity/examples/{makefile → example_3/makefile} +41 -40
- data/vendor/unity/examples/{rakefile.rb → example_3/rakefile.rb} +44 -43
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/rakefile_helper.rb +256 -256
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/readme.txt +18 -17
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode.c +24 -24
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode.h +3 -3
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode2.c +9 -9
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode2.h +2 -2
- data/vendor/{c_exception/vendor/unity/targets/gcc_64.yml → unity/examples/example_3/target_gcc_32.yml} +46 -44
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/TestProductionCode.c +62 -62
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/TestProductionCode2.c +31 -31
- data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/no_ruby/TestProductionCode2_Runner.c +46 -46
- data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/test/no_ruby/TestProductionCode_Runner.c +50 -50
- data/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
- data/vendor/unity/extras/fixture/src/unity_fixture.c +4 -1
- data/vendor/unity/extras/fixture/src/unity_fixture.h +17 -16
- data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +7 -7
- data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +17 -0
- data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +1 -0
- data/vendor/unity/makefile +6 -4
- data/vendor/unity/rakefile_helper.rb +36 -27
- data/vendor/unity/src/unity.c +180 -181
- data/vendor/unity/src/unity.h +64 -2
- data/vendor/unity/src/unity_internals.h +188 -102
- data/vendor/unity/targets/clang_strict.yml +83 -0
- data/vendor/unity/targets/gcc_32.yml +5 -0
- data/vendor/unity/targets/gcc_64.yml +5 -0
- data/vendor/{c_exception/vendor/unity/targets/gcc.yml → unity/targets/gcc_auto_limits.yml} +5 -2
- data/vendor/{cmock/vendor/unity/targets/gcc_64.yml → unity/targets/gcc_auto_sizeof.yml} +6 -3
- data/vendor/{cmock/vendor/unity/targets/gcc.yml → unity/targets/gcc_auto_stdint.yml} +4 -2
- data/vendor/unity/test/expectdata/testsample_cmd.c +57 -54
- data/vendor/unity/test/expectdata/testsample_def.c +53 -50
- data/vendor/unity/test/expectdata/testsample_mock_cmd.c +79 -76
- data/vendor/unity/test/expectdata/testsample_mock_def.c +75 -72
- data/vendor/unity/test/expectdata/testsample_mock_new1.c +88 -85
- data/vendor/unity/test/expectdata/testsample_mock_new2.c +88 -85
- data/vendor/unity/test/expectdata/testsample_mock_param.c +76 -73
- data/vendor/unity/test/expectdata/testsample_mock_run1.c +88 -85
- data/vendor/unity/test/expectdata/testsample_mock_run2.c +88 -85
- data/vendor/unity/test/expectdata/testsample_mock_yaml.c +89 -86
- data/vendor/unity/test/expectdata/testsample_new1.c +63 -60
- data/vendor/unity/test/expectdata/testsample_new2.c +66 -63
- data/vendor/unity/test/expectdata/testsample_param.c +54 -51
- data/vendor/unity/test/expectdata/testsample_run1.c +63 -60
- data/vendor/unity/test/expectdata/testsample_run2.c +66 -63
- data/vendor/unity/test/expectdata/testsample_yaml.c +67 -64
- data/vendor/unity/test/test_generate_test_runner.rb +66 -72
- data/vendor/unity/test/testunity.c +591 -111
- metadata +58 -195
- data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +0 -94
- data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +0 -39
- data/vendor/c_exception/vendor/unity/auto/generate_config.yml +0 -36
- data/vendor/c_exception/vendor/unity/auto/generate_module.rb +0 -202
- data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +0 -313
- data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +0 -23
- data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +0 -139
- data/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
- data/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
- data/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +0 -217
- data/vendor/c_exception/vendor/unity/docs/license.txt +0 -31
- data/vendor/c_exception/vendor/unity/examples/helper/UnityHelper.c +0 -10
- data/vendor/c_exception/vendor/unity/examples/helper/UnityHelper.h +0 -12
- data/vendor/c_exception/vendor/unity/examples/makefile +0 -40
- data/vendor/c_exception/vendor/unity/examples/rakefile.rb +0 -32
- data/vendor/c_exception/vendor/unity/examples/rakefile_helper.rb +0 -256
- data/vendor/c_exception/vendor/unity/examples/test/no_ruby/TestProductionCode_Runner.c +0 -50
- data/vendor/c_exception/vendor/unity/extras/fixture/build/MakefileWorker.mk +0 -331
- data/vendor/c_exception/vendor/unity/extras/fixture/build/filterGcov.sh +0 -61
- data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +0 -37
- data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
- data/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +0 -9
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +0 -381
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +0 -81
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -44
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -16
- data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +0 -21
- data/vendor/c_exception/vendor/unity/extras/fixture/test/testunity_fixture.c +0 -39
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -321
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -40
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -56
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
- data/vendor/c_exception/vendor/unity/makefile +0 -35
- data/vendor/c_exception/vendor/unity/rakefile.rb +0 -59
- data/vendor/c_exception/vendor/unity/rakefile_helper.rb +0 -240
- data/vendor/c_exception/vendor/unity/release/build.info +0 -2
- data/vendor/c_exception/vendor/unity/release/version.info +0 -2
- data/vendor/c_exception/vendor/unity/src/unity.c +0 -979
- data/vendor/c_exception/vendor/unity/src/unity.h +0 -232
- data/vendor/c_exception/vendor/unity/src/unity_internals.h +0 -424
- data/vendor/c_exception/vendor/unity/targets/hitech_picc18.yml +0 -101
- data/vendor/c_exception/vendor/unity/targets/iar_arm_v4.yml +0 -89
- data/vendor/c_exception/vendor/unity/targets/iar_arm_v5.yml +0 -79
- data/vendor/c_exception/vendor/unity/targets/iar_arm_v5_3.yml +0 -79
- data/vendor/c_exception/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -93
- data/vendor/c_exception/vendor/unity/targets/iar_cortexm3_v5.yml +0 -83
- data/vendor/c_exception/vendor/unity/targets/iar_msp430.yml +0 -94
- data/vendor/c_exception/vendor/unity/targets/iar_sh2a_v6.yml +0 -85
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +0 -54
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +0 -50
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -76
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +0 -72
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -85
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -85
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +0 -73
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -85
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -85
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -86
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +0 -60
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +0 -63
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +0 -51
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +0 -60
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +0 -63
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +0 -64
- data/vendor/c_exception/vendor/unity/test/test_generate_test_runner.rb +0 -94
- data/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +0 -51
- data/vendor/c_exception/vendor/unity/test/testdata/sample.yml +0 -9
- data/vendor/c_exception/vendor/unity/test/testdata/testsample.c +0 -51
- data/vendor/c_exception/vendor/unity/test/testparameterized.c +0 -101
- data/vendor/c_exception/vendor/unity/test/testunity.c +0 -2024
- 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 +0 -30
- data/vendor/cmock/vendor/c_exception/docs/readme.txt +0 -236
- data/vendor/cmock/vendor/c_exception/lib/CException.c +0 -39
- data/vendor/cmock/vendor/c_exception/lib/CException.h +0 -70
- data/vendor/cmock/vendor/c_exception/makefile +0 -24
- data/vendor/cmock/vendor/c_exception/rakefile.rb +0 -41
- data/vendor/cmock/vendor/c_exception/release/build.info +0 -2
- data/vendor/cmock/vendor/c_exception/release/version.info +0 -2
- data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +0 -27
- data/vendor/cmock/vendor/c_exception/test/TestException.c +0 -291
- data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +0 -62
- data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +0 -94
- data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +0 -39
- data/vendor/cmock/vendor/unity/auto/generate_config.yml +0 -36
- data/vendor/cmock/vendor/unity/auto/generate_module.rb +0 -202
- data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +0 -313
- data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +0 -23
- data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +0 -139
- 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 +0 -217
- data/vendor/cmock/vendor/unity/docs/license.txt +0 -31
- data/vendor/cmock/vendor/unity/examples/helper/UnityHelper.c +0 -10
- data/vendor/cmock/vendor/unity/examples/rakefile.rb +0 -32
- data/vendor/cmock/vendor/unity/examples/readme.txt +0 -18
- data/vendor/cmock/vendor/unity/examples/test/no_ruby/TestProductionCode2_Runner.c +0 -46
- data/vendor/cmock/vendor/unity/extras/fixture/build/MakefileWorker.mk +0 -331
- data/vendor/cmock/vendor/unity/extras/fixture/build/filterGcov.sh +0 -61
- data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +0 -37
- data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
- data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +0 -9
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +0 -381
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +0 -81
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -44
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -16
- data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +0 -21
- data/vendor/cmock/vendor/unity/extras/fixture/test/testunity_fixture.c +0 -39
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -321
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -40
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -56
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
- data/vendor/cmock/vendor/unity/makefile +0 -35
- data/vendor/cmock/vendor/unity/rakefile.rb +0 -48
- data/vendor/cmock/vendor/unity/rakefile_helper.rb +0 -240
- data/vendor/cmock/vendor/unity/release/build.info +0 -2
- data/vendor/cmock/vendor/unity/release/version.info +0 -2
- data/vendor/cmock/vendor/unity/src/unity.c +0 -979
- data/vendor/cmock/vendor/unity/src/unity.h +0 -232
- data/vendor/cmock/vendor/unity/src/unity_internals.h +0 -424
- data/vendor/cmock/vendor/unity/targets/hitech_picc18.yml +0 -101
- data/vendor/cmock/vendor/unity/targets/iar_arm_v4.yml +0 -89
- data/vendor/cmock/vendor/unity/targets/iar_arm_v5.yml +0 -79
- data/vendor/cmock/vendor/unity/targets/iar_arm_v5_3.yml +0 -79
- data/vendor/cmock/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -93
- data/vendor/cmock/vendor/unity/targets/iar_cortexm3_v5.yml +0 -83
- data/vendor/cmock/vendor/unity/targets/iar_msp430.yml +0 -94
- data/vendor/cmock/vendor/unity/targets/iar_sh2a_v6.yml +0 -85
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +0 -54
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +0 -50
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -76
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +0 -72
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -85
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -85
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +0 -73
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -85
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -85
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -86
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +0 -60
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +0 -63
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +0 -51
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +0 -60
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +0 -63
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +0 -64
- data/vendor/cmock/vendor/unity/test/test_generate_test_runner.rb +0 -94
- data/vendor/cmock/vendor/unity/test/testdata/mocksample.c +0 -51
- data/vendor/cmock/vendor/unity/test/testdata/sample.yml +0 -9
- data/vendor/cmock/vendor/unity/test/testdata/testsample.c +0 -51
- data/vendor/cmock/vendor/unity/test/testparameterized.c +0 -101
- data/vendor/cmock/vendor/unity/test/testunity.c +0 -2024
- data/vendor/unity/Gemfile +0 -4
- data/vendor/unity/examples/helper/UnityHelper.h +0 -12
- data/vendor/unity/examples/rakefile_helper.rb +0 -256
- data/vendor/unity/examples/readme.txt +0 -18
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
HERE = File.expand_path(File.dirname(__FILE__)) + '/'
|
|
2
|
-
|
|
3
|
-
require 'rake'
|
|
4
|
-
require 'rake/clean'
|
|
5
|
-
require 'rake/testtask'
|
|
6
|
-
require HERE+'rakefile_helper'
|
|
7
|
-
|
|
8
|
-
include RakefileHelpers
|
|
9
|
-
|
|
10
|
-
# Load default configuration, for now
|
|
11
|
-
DEFAULT_CONFIG_FILE = 'gcc.yml'
|
|
12
|
-
configure_toolchain(DEFAULT_CONFIG_FILE)
|
|
13
|
-
|
|
14
|
-
task :unit do
|
|
15
|
-
run_tests get_unit_test_files
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
desc "Generate test summary"
|
|
19
|
-
task :summary do
|
|
20
|
-
report_summary
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
desc "Build and test Unity"
|
|
24
|
-
task :all => [:clean, :unit, :summary]
|
|
25
|
-
task :default => [:clobber, :all]
|
|
26
|
-
task :ci => [:default]
|
|
27
|
-
task :cruise => [:default]
|
|
28
|
-
|
|
29
|
-
desc "Load configuration"
|
|
30
|
-
task :config, :config_file do |t, args|
|
|
31
|
-
configure_toolchain(args[:config_file])
|
|
32
|
-
end
|
|
@@ -1,256 +0,0 @@
|
|
|
1
|
-
require 'yaml'
|
|
2
|
-
require 'fileutils'
|
|
3
|
-
require HERE+'../auto/unity_test_summary'
|
|
4
|
-
require HERE+'../auto/generate_test_runner'
|
|
5
|
-
require HERE+'../auto/colour_reporter'
|
|
6
|
-
|
|
7
|
-
module RakefileHelpers
|
|
8
|
-
|
|
9
|
-
C_EXTENSION = '.c'
|
|
10
|
-
|
|
11
|
-
def load_configuration(config_file)
|
|
12
|
-
$cfg_file = "../targets/#{config_file}"
|
|
13
|
-
$cfg = YAML.load(File.read($cfg_file))
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def configure_clean
|
|
17
|
-
CLEAN.include($cfg['compiler']['build_path'] + '*.*') unless $cfg['compiler']['build_path'].nil?
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def configure_toolchain(config_file=DEFAULT_CONFIG_FILE)
|
|
21
|
-
config_file += '.yml' unless config_file =~ /\.yml$/
|
|
22
|
-
load_configuration('../targets/'+config_file)
|
|
23
|
-
configure_clean
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def get_unit_test_files
|
|
27
|
-
path = $cfg['compiler']['unit_tests_path'] + 'Test*' + C_EXTENSION
|
|
28
|
-
path.gsub!(/\\/, '/')
|
|
29
|
-
FileList.new(path)
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
def get_local_include_dirs
|
|
33
|
-
include_dirs = $cfg['compiler']['includes']['items'].dup
|
|
34
|
-
include_dirs.delete_if {|dir| dir.is_a?(Array)}
|
|
35
|
-
return include_dirs
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
def extract_headers(filename)
|
|
39
|
-
includes = []
|
|
40
|
-
lines = File.readlines(filename)
|
|
41
|
-
lines.each do |line|
|
|
42
|
-
m = line.match(/^\s*#include\s+\"\s*(.+\.[hH])\s*\"/)
|
|
43
|
-
if not m.nil?
|
|
44
|
-
includes << m[1]
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
return includes
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
def find_source_file(header, paths)
|
|
51
|
-
paths.each do |dir|
|
|
52
|
-
src_file = dir + header.ext(C_EXTENSION)
|
|
53
|
-
if (File.exists?(src_file))
|
|
54
|
-
return src_file
|
|
55
|
-
end
|
|
56
|
-
end
|
|
57
|
-
return nil
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
def tackit(strings)
|
|
61
|
-
if strings.is_a?(Array)
|
|
62
|
-
result = "\"#{strings.join}\""
|
|
63
|
-
else
|
|
64
|
-
result = strings
|
|
65
|
-
end
|
|
66
|
-
return result
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
def squash(prefix, items)
|
|
70
|
-
result = ''
|
|
71
|
-
items.each { |item| result += " #{prefix}#{tackit(item)}" }
|
|
72
|
-
return result
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
def build_compiler_fields
|
|
76
|
-
command = tackit($cfg['compiler']['path'])
|
|
77
|
-
if $cfg['compiler']['defines']['items'].nil?
|
|
78
|
-
defines = ''
|
|
79
|
-
else
|
|
80
|
-
defines = squash($cfg['compiler']['defines']['prefix'], $cfg['compiler']['defines']['items'])
|
|
81
|
-
end
|
|
82
|
-
options = squash('', $cfg['compiler']['options'])
|
|
83
|
-
includes = squash($cfg['compiler']['includes']['prefix'], $cfg['compiler']['includes']['items'])
|
|
84
|
-
includes = includes.gsub(/\\ /, ' ').gsub(/\\\"/, '"').gsub(/\\$/, '') # Remove trailing slashes (for IAR)
|
|
85
|
-
return {:command => command, :defines => defines, :options => options, :includes => includes}
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
def compile(file, defines=[])
|
|
89
|
-
compiler = build_compiler_fields
|
|
90
|
-
cmd_str = "#{compiler[:command]}#{compiler[:defines]}#{compiler[:options]}#{compiler[:includes]} #{file} " +
|
|
91
|
-
"#{$cfg['compiler']['object_files']['prefix']}#{$cfg['compiler']['object_files']['destination']}"
|
|
92
|
-
obj_file = "#{File.basename(file, C_EXTENSION)}#{$cfg['compiler']['object_files']['extension']}"
|
|
93
|
-
execute(cmd_str + obj_file)
|
|
94
|
-
return obj_file
|
|
95
|
-
end
|
|
96
|
-
|
|
97
|
-
def build_linker_fields
|
|
98
|
-
command = tackit($cfg['linker']['path'])
|
|
99
|
-
if $cfg['linker']['options'].nil?
|
|
100
|
-
options = ''
|
|
101
|
-
else
|
|
102
|
-
options = squash('', $cfg['linker']['options'])
|
|
103
|
-
end
|
|
104
|
-
if ($cfg['linker']['includes'].nil? || $cfg['linker']['includes']['items'].nil?)
|
|
105
|
-
includes = ''
|
|
106
|
-
else
|
|
107
|
-
includes = squash($cfg['linker']['includes']['prefix'], $cfg['linker']['includes']['items'])
|
|
108
|
-
end
|
|
109
|
-
includes = includes.gsub(/\\ /, ' ').gsub(/\\\"/, '"').gsub(/\\$/, '') # Remove trailing slashes (for IAR)
|
|
110
|
-
return {:command => command, :options => options, :includes => includes}
|
|
111
|
-
end
|
|
112
|
-
|
|
113
|
-
def link_it(exe_name, obj_list)
|
|
114
|
-
linker = build_linker_fields
|
|
115
|
-
cmd_str = "#{linker[:command]}#{linker[:options]}#{linker[:includes]} " +
|
|
116
|
-
(obj_list.map{|obj|"#{$cfg['linker']['object_files']['path']}#{obj} "}).join +
|
|
117
|
-
$cfg['linker']['bin_files']['prefix'] + ' ' +
|
|
118
|
-
$cfg['linker']['bin_files']['destination'] +
|
|
119
|
-
exe_name + $cfg['linker']['bin_files']['extension']
|
|
120
|
-
execute(cmd_str)
|
|
121
|
-
end
|
|
122
|
-
|
|
123
|
-
def build_simulator_fields
|
|
124
|
-
return nil if $cfg['simulator'].nil?
|
|
125
|
-
if $cfg['simulator']['path'].nil?
|
|
126
|
-
command = ''
|
|
127
|
-
else
|
|
128
|
-
command = (tackit($cfg['simulator']['path']) + ' ')
|
|
129
|
-
end
|
|
130
|
-
if $cfg['simulator']['pre_support'].nil?
|
|
131
|
-
pre_support = ''
|
|
132
|
-
else
|
|
133
|
-
pre_support = squash('', $cfg['simulator']['pre_support'])
|
|
134
|
-
end
|
|
135
|
-
if $cfg['simulator']['post_support'].nil?
|
|
136
|
-
post_support = ''
|
|
137
|
-
else
|
|
138
|
-
post_support = squash('', $cfg['simulator']['post_support'])
|
|
139
|
-
end
|
|
140
|
-
return {:command => command, :pre_support => pre_support, :post_support => post_support}
|
|
141
|
-
end
|
|
142
|
-
|
|
143
|
-
def execute(command_string, verbose=true, raise_on_fail=true)
|
|
144
|
-
report command_string
|
|
145
|
-
output = `#{command_string}`.chomp
|
|
146
|
-
report(output) if (verbose && !output.nil? && (output.length > 0))
|
|
147
|
-
if (($?.exitstatus != 0) and (raise_on_fail))
|
|
148
|
-
raise "Command failed. (Returned #{$?.exitstatus})"
|
|
149
|
-
end
|
|
150
|
-
return output
|
|
151
|
-
end
|
|
152
|
-
|
|
153
|
-
def report_summary
|
|
154
|
-
summary = UnityTestSummary.new
|
|
155
|
-
summary.set_root_path(HERE)
|
|
156
|
-
results_glob = "#{$cfg['compiler']['build_path']}*.test*"
|
|
157
|
-
results_glob.gsub!(/\\/, '/')
|
|
158
|
-
results = Dir[results_glob]
|
|
159
|
-
summary.set_targets(results)
|
|
160
|
-
summary.run
|
|
161
|
-
fail_out "FAIL: There were failures" if (summary.failures > 0)
|
|
162
|
-
end
|
|
163
|
-
|
|
164
|
-
def run_tests(test_files)
|
|
165
|
-
|
|
166
|
-
report 'Running system tests...'
|
|
167
|
-
|
|
168
|
-
# Tack on TEST define for compiling unit tests
|
|
169
|
-
load_configuration($cfg_file)
|
|
170
|
-
test_defines = ['TEST']
|
|
171
|
-
$cfg['compiler']['defines']['items'] = [] if $cfg['compiler']['defines']['items'].nil?
|
|
172
|
-
$cfg['compiler']['defines']['items'] << 'TEST'
|
|
173
|
-
|
|
174
|
-
include_dirs = get_local_include_dirs
|
|
175
|
-
|
|
176
|
-
# Build and execute each unit test
|
|
177
|
-
test_files.each do |test|
|
|
178
|
-
obj_list = []
|
|
179
|
-
|
|
180
|
-
# Detect dependencies and build required required modules
|
|
181
|
-
extract_headers(test).each do |header|
|
|
182
|
-
# Compile corresponding source file if it exists
|
|
183
|
-
src_file = find_source_file(header, include_dirs)
|
|
184
|
-
if !src_file.nil?
|
|
185
|
-
obj_list << compile(src_file, test_defines)
|
|
186
|
-
end
|
|
187
|
-
end
|
|
188
|
-
|
|
189
|
-
# Build the test runner (generate if configured to do so)
|
|
190
|
-
test_base = File.basename(test, C_EXTENSION)
|
|
191
|
-
runner_name = test_base + '_Runner.c'
|
|
192
|
-
if $cfg['compiler']['runner_path'].nil?
|
|
193
|
-
runner_path = $cfg['compiler']['build_path'] + runner_name
|
|
194
|
-
test_gen = UnityTestRunnerGenerator.new($cfg_file)
|
|
195
|
-
test_gen.run(test, runner_path)
|
|
196
|
-
else
|
|
197
|
-
runner_path = $cfg['compiler']['runner_path'] + runner_name
|
|
198
|
-
end
|
|
199
|
-
|
|
200
|
-
obj_list << compile(runner_path, test_defines)
|
|
201
|
-
|
|
202
|
-
# Build the test module
|
|
203
|
-
obj_list << compile(test, test_defines)
|
|
204
|
-
|
|
205
|
-
# Link the test executable
|
|
206
|
-
link_it(test_base, obj_list)
|
|
207
|
-
|
|
208
|
-
# Execute unit test and generate results file
|
|
209
|
-
simulator = build_simulator_fields
|
|
210
|
-
executable = $cfg['linker']['bin_files']['destination'] + test_base + $cfg['linker']['bin_files']['extension']
|
|
211
|
-
if simulator.nil?
|
|
212
|
-
cmd_str = executable
|
|
213
|
-
else
|
|
214
|
-
cmd_str = "#{simulator[:command]} #{simulator[:pre_support]} #{executable} #{simulator[:post_support]}"
|
|
215
|
-
end
|
|
216
|
-
output = execute(cmd_str, true, false)
|
|
217
|
-
test_results = $cfg['compiler']['build_path'] + test_base
|
|
218
|
-
if output.match(/OK$/m).nil?
|
|
219
|
-
test_results += '.testfail'
|
|
220
|
-
else
|
|
221
|
-
test_results += '.testpass'
|
|
222
|
-
end
|
|
223
|
-
File.open(test_results, 'w') { |f| f.print output }
|
|
224
|
-
end
|
|
225
|
-
end
|
|
226
|
-
|
|
227
|
-
def build_application(main)
|
|
228
|
-
|
|
229
|
-
report "Building application..."
|
|
230
|
-
|
|
231
|
-
obj_list = []
|
|
232
|
-
load_configuration($cfg_file)
|
|
233
|
-
main_path = $cfg['compiler']['source_path'] + main + C_EXTENSION
|
|
234
|
-
|
|
235
|
-
# Detect dependencies and build required required modules
|
|
236
|
-
include_dirs = get_local_include_dirs
|
|
237
|
-
extract_headers(main_path).each do |header|
|
|
238
|
-
src_file = find_source_file(header, include_dirs)
|
|
239
|
-
if !src_file.nil?
|
|
240
|
-
obj_list << compile(src_file)
|
|
241
|
-
end
|
|
242
|
-
end
|
|
243
|
-
|
|
244
|
-
# Build the main source file
|
|
245
|
-
main_base = File.basename(main_path, C_EXTENSION)
|
|
246
|
-
obj_list << compile(main_path)
|
|
247
|
-
|
|
248
|
-
# Create the executable
|
|
249
|
-
link_it(main_base, obj_list)
|
|
250
|
-
end
|
|
251
|
-
|
|
252
|
-
def fail_out(msg)
|
|
253
|
-
puts msg
|
|
254
|
-
exit(-1)
|
|
255
|
-
end
|
|
256
|
-
end
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/* AUTOGENERATED FILE. DO NOT EDIT. */
|
|
2
|
-
#include "unity.h"
|
|
3
|
-
#include <setjmp.h>
|
|
4
|
-
#include <stdio.h>
|
|
5
|
-
|
|
6
|
-
char MessageBuffer[50];
|
|
7
|
-
|
|
8
|
-
extern void setUp(void);
|
|
9
|
-
extern void tearDown(void);
|
|
10
|
-
|
|
11
|
-
extern void test_FindFunction_WhichIsBroken_ShouldReturnZeroIfItemIsNotInList_WhichWorksEvenInOurBrokenCode(void);
|
|
12
|
-
extern void test_FindFunction_WhichIsBroken_ShouldReturnTheIndexForItemsInList_WhichWillFailBecauseOurFunctionUnderTestIsBroken(void);
|
|
13
|
-
extern void test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValue(void);
|
|
14
|
-
extern void test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValueAgain(void);
|
|
15
|
-
extern void test_FunctionWhichReturnsLocalVariable_ShouldReturnCurrentCounter_ButFailsBecauseThisTestIsActuallyFlawed(void);
|
|
16
|
-
|
|
17
|
-
static void runTest(UnityTestFunction test)
|
|
18
|
-
{
|
|
19
|
-
if (TEST_PROTECT())
|
|
20
|
-
{
|
|
21
|
-
setUp();
|
|
22
|
-
test();
|
|
23
|
-
}
|
|
24
|
-
if (TEST_PROTECT() && !TEST_IS_IGNORED)
|
|
25
|
-
{
|
|
26
|
-
tearDown();
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
void resetTest()
|
|
30
|
-
{
|
|
31
|
-
tearDown();
|
|
32
|
-
setUp();
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
int main(void)
|
|
37
|
-
{
|
|
38
|
-
Unity.TestFile = "test/TestProductionCode.c";
|
|
39
|
-
UnityBegin();
|
|
40
|
-
|
|
41
|
-
// RUN_TEST calls runTest
|
|
42
|
-
RUN_TEST(test_FindFunction_WhichIsBroken_ShouldReturnZeroIfItemIsNotInList_WhichWorksEvenInOurBrokenCode, 20);
|
|
43
|
-
RUN_TEST(test_FindFunction_WhichIsBroken_ShouldReturnTheIndexForItemsInList_WhichWillFailBecauseOurFunctionUnderTestIsBroken, 30);
|
|
44
|
-
RUN_TEST(test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValue, 41);
|
|
45
|
-
RUN_TEST(test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValueAgain, 51);
|
|
46
|
-
RUN_TEST(test_FunctionWhichReturnsLocalVariable_ShouldReturnCurrentCounter_ButFailsBecauseThisTestIsActuallyFlawed, 57);
|
|
47
|
-
|
|
48
|
-
UnityEnd();
|
|
49
|
-
return 0;
|
|
50
|
-
}
|
|
@@ -1,331 +0,0 @@
|
|
|
1
|
-
#---------
|
|
2
|
-
#
|
|
3
|
-
# MakefileWorker.mk
|
|
4
|
-
#
|
|
5
|
-
# Include this helper file in your makefile
|
|
6
|
-
# It makes
|
|
7
|
-
# A static library holding the application objs
|
|
8
|
-
# A test executable
|
|
9
|
-
#
|
|
10
|
-
# See this example for parameter settings
|
|
11
|
-
# examples/Makefile
|
|
12
|
-
#
|
|
13
|
-
#----------
|
|
14
|
-
# Inputs - these variables describe what to build
|
|
15
|
-
#
|
|
16
|
-
# INCLUDE_DIRS - Directories used to search for include files.
|
|
17
|
-
# This generates a -I for each directory
|
|
18
|
-
# SRC_DIRS - Directories containing source file to built into the library
|
|
19
|
-
# SRC_FILES - Specific source files to build into library. Helpful when not all code
|
|
20
|
-
# in a directory can be built for test (hopefully a temporary situation)
|
|
21
|
-
# TEST_SRC_DIRS - Directories containing unit test code build into the unit test runner
|
|
22
|
-
# These do not go in a library. They are explicitly included in the test runner
|
|
23
|
-
# MOCKS_SRC_DIRS - Directories containing mock source files to build into the test runner
|
|
24
|
-
# These do not go in a library. They are explicitly included in the test runner
|
|
25
|
-
#----------
|
|
26
|
-
# You can adjust these variables to influence how to build the test target
|
|
27
|
-
# and where to put and name outputs
|
|
28
|
-
# See below to determine defaults
|
|
29
|
-
# COMPONENT_NAME - the name of the thing being built
|
|
30
|
-
# UNITY_HOME - where Unity home dir found
|
|
31
|
-
# UNITY_BUILD_HOME - place for scripts
|
|
32
|
-
# UNITY_OBJS_DIR - a directory where o and d files go
|
|
33
|
-
# UNITY_LIB_DIR - a directory where libs go
|
|
34
|
-
# UNITY_ENABLE_DEBUG - build for debug
|
|
35
|
-
# UNITY_USE_MEM_LEAK_DETECTION - Links with overridden new and delete
|
|
36
|
-
# UNITY_USE_STD_CPP_LIB - Set to N to keep the standard C++ library out
|
|
37
|
-
# of the test harness
|
|
38
|
-
# UNITY_USE_GCOV - Turn on coverage analysis
|
|
39
|
-
# Clean then build with this flag set to Y, then 'make gcov'
|
|
40
|
-
# UNITY_TEST_RUNNER_FLAGS
|
|
41
|
-
# None by default
|
|
42
|
-
# UNITY_MAPFILE - generate a map file
|
|
43
|
-
# UNITY_WARNINGFLAGS - overly picky by default
|
|
44
|
-
# OTHER_MAKEFILE_TO_INCLUDE - a hook to use this makefile to make
|
|
45
|
-
# other targets. Like CSlim, which is part of fitnesse
|
|
46
|
-
#----------
|
|
47
|
-
#
|
|
48
|
-
# Other flags users can initialize to sneak in their settings
|
|
49
|
-
# UNITY_CFLAGS - C complier
|
|
50
|
-
# UNITY_LDFLAGS - Linker flags
|
|
51
|
-
#----------
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
ifndef COMPONENT_NAME
|
|
55
|
-
COMPONENT_NAME = name_this_in_the_makefile
|
|
56
|
-
endif
|
|
57
|
-
|
|
58
|
-
# Debug on by default
|
|
59
|
-
ifndef UNITY_ENABLE_DEBUG
|
|
60
|
-
UNITY_ENABLE_DEBUG = Y
|
|
61
|
-
endif
|
|
62
|
-
|
|
63
|
-
# new and delete for memory leak detection on by default
|
|
64
|
-
ifndef UNITY_USE_MEM_LEAK_DETECTION
|
|
65
|
-
UNITY_USE_MEM_LEAK_DETECTION = Y
|
|
66
|
-
endif
|
|
67
|
-
|
|
68
|
-
# Use gcov, off by default
|
|
69
|
-
ifndef UNITY_USE_GCOV
|
|
70
|
-
UNITY_USE_GCOV = N
|
|
71
|
-
endif
|
|
72
|
-
|
|
73
|
-
# Default warnings
|
|
74
|
-
ifndef UNITY_WARNINGFLAGS
|
|
75
|
-
UNITY_WARNINGFLAGS = -Wall -Werror -Wshadow -Wswitch-default
|
|
76
|
-
endif
|
|
77
|
-
|
|
78
|
-
# Default dir for temporary files (d, o)
|
|
79
|
-
ifndef UNITY_OBJS_DIR
|
|
80
|
-
UNITY_OBJS_DIR = objs
|
|
81
|
-
endif
|
|
82
|
-
|
|
83
|
-
# Default dir for the outout library
|
|
84
|
-
ifndef UNITY_LIB_DIR
|
|
85
|
-
UNITY_LIB_DIR = lib
|
|
86
|
-
endif
|
|
87
|
-
|
|
88
|
-
# No map by default
|
|
89
|
-
ifndef UNITY_MAP_FILE
|
|
90
|
-
UNITY_MAP_FILE = N
|
|
91
|
-
endif
|
|
92
|
-
|
|
93
|
-
#Not verbose by deafult
|
|
94
|
-
ifdef VERBOSE
|
|
95
|
-
UNITY_TEST_RUNNER_FLAGS += -v
|
|
96
|
-
endif
|
|
97
|
-
|
|
98
|
-
ifdef GROUP
|
|
99
|
-
UNITY_TEST_RUNNER_FLAGS += -g $(GROUP)
|
|
100
|
-
endif
|
|
101
|
-
|
|
102
|
-
ifdef NAME
|
|
103
|
-
UNITY_TEST_RUNNER_FLAGS += -n $(NAME)
|
|
104
|
-
endif
|
|
105
|
-
|
|
106
|
-
ifdef REPEAT
|
|
107
|
-
UNITY_TEST_RUNNER_FLAGS += -r $(REPEAT)
|
|
108
|
-
endif
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
# --------------------------------------
|
|
112
|
-
# derived flags in the following area
|
|
113
|
-
# --------------------------------------
|
|
114
|
-
ifeq ($(UNITY_USE_MEM_LEAK_DETECTION), N)
|
|
115
|
-
UNITY_CFLAGS += -DUNITY_MEM_LEAK_DETECTION_DISABLED
|
|
116
|
-
else
|
|
117
|
-
UNITY_MEMLEAK_DETECTOR_MALLOC_MACRO_FILE = -include $(UNITY_HOME)/extras/fixture/src/unity_fixture_malloc_overrides.h
|
|
118
|
-
endif
|
|
119
|
-
|
|
120
|
-
ifeq ($(UNITY_ENABLE_DEBUG), Y)
|
|
121
|
-
UNITY_CFLAGS += -g
|
|
122
|
-
endif
|
|
123
|
-
|
|
124
|
-
ifeq ($(UNITY_USE_GCOV), Y)
|
|
125
|
-
UNITY_CFLAGS += -fprofile-arcs -ftest-coverage
|
|
126
|
-
endif
|
|
127
|
-
|
|
128
|
-
UNITY_CFLAGS += $(UNITY_MEMLEAK_DETECTOR_MALLOC_MACRO_FILE)
|
|
129
|
-
|
|
130
|
-
TARGET_MAP = $(COMPONENT_NAME).map.txt
|
|
131
|
-
ifeq ($(UNITY_MAP_FILE), Y)
|
|
132
|
-
UNITY_LDFLAGS += -Wl,-map,$(TARGET_MAP)
|
|
133
|
-
endif
|
|
134
|
-
|
|
135
|
-
LD_LIBRARIES += -lgcov
|
|
136
|
-
|
|
137
|
-
TARGET_LIB = \
|
|
138
|
-
$(UNITY_LIB_DIR)/lib$(COMPONENT_NAME).a
|
|
139
|
-
|
|
140
|
-
TEST_TARGET = \
|
|
141
|
-
$(COMPONENT_NAME)_tests
|
|
142
|
-
|
|
143
|
-
#Helper Functions
|
|
144
|
-
get_src_from_dir = $(wildcard $1/*.cpp) $(wildcard $1/*.c)
|
|
145
|
-
get_dirs_from_dirspec = $(wildcard $1)
|
|
146
|
-
get_src_from_dir_list = $(foreach dir, $1, $(call get_src_from_dir,$(dir)))
|
|
147
|
-
__src_to = $(subst .c,$1, $(subst .cpp,$1,$2))
|
|
148
|
-
src_to = $(addprefix $(UNITY_OBJS_DIR)/,$(call __src_to,$1,$2))
|
|
149
|
-
src_to_o = $(call src_to,.o,$1)
|
|
150
|
-
src_to_d = $(call src_to,.d,$1)
|
|
151
|
-
src_to_gcda = $(call src_to,.gcda,$1)
|
|
152
|
-
src_to_gcno = $(call src_to,.gcno,$1)
|
|
153
|
-
make_dotdot_a_subdir = $(subst ..,_dot_dot, $1)
|
|
154
|
-
time = $(shell date +%s)
|
|
155
|
-
delta_t = $(eval minus, $1, $2)
|
|
156
|
-
debug_print_list = $(foreach word,$1,echo " $(word)";) echo;
|
|
157
|
-
|
|
158
|
-
#Derived
|
|
159
|
-
STUFF_TO_CLEAN += $(TEST_TARGET) $(TEST_TARGET).exe $(TARGET_LIB) $(TARGET_MAP)
|
|
160
|
-
|
|
161
|
-
SRC += $(call get_src_from_dir_list, $(SRC_DIRS)) $(SRC_FILES)
|
|
162
|
-
OBJ = $(call src_to_o,$(SRC))
|
|
163
|
-
OBJ2 = $(call make_dotdot_a_subdir. $(OBJ))
|
|
164
|
-
|
|
165
|
-
STUFF_TO_CLEAN += $(OBJ)
|
|
166
|
-
|
|
167
|
-
TEST_SRC = $(call get_src_from_dir_list, $(TEST_SRC_DIRS))
|
|
168
|
-
TEST_OBJS = $(call src_to_o,$(TEST_SRC))
|
|
169
|
-
STUFF_TO_CLEAN += $(TEST_OBJS)
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
MOCKS_SRC = $(call get_src_from_dir_list, $(MOCKS_SRC_DIRS))
|
|
173
|
-
MOCKS_OBJS = $(call src_to_o,$(MOCKS_SRC))
|
|
174
|
-
STUFF_TO_CLEAN += $(MOCKS_OBJS)
|
|
175
|
-
|
|
176
|
-
ALL_SRC = $(SRC) $(TEST_SRC) $(MOCKS_SRC)
|
|
177
|
-
|
|
178
|
-
#Test coverage with gcov
|
|
179
|
-
GCOV_OUTPUT = gcov_output.txt
|
|
180
|
-
GCOV_REPORT = gcov_report.txt
|
|
181
|
-
GCOV_ERROR = gcov_error.txt
|
|
182
|
-
GCOV_GCDA_FILES = $(call src_to_gcda, $(ALL_SRC))
|
|
183
|
-
GCOV_GCNO_FILES = $(call src_to_gcno, $(ALL_SRC))
|
|
184
|
-
TEST_OUTPUT = $(TEST_TARGET).txt
|
|
185
|
-
STUFF_TO_CLEAN += \
|
|
186
|
-
$(GCOV_OUTPUT)\
|
|
187
|
-
$(GCOV_REPORT)\
|
|
188
|
-
$(GCOV_REPORT).html\
|
|
189
|
-
$(GCOV_ERROR)\
|
|
190
|
-
$(GCOV_GCDA_FILES)\
|
|
191
|
-
$(GCOV_GCNO_FILES)\
|
|
192
|
-
$(TEST_OUTPUT)
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
#The gcda files for gcov need to be deleted before each run
|
|
196
|
-
#To avoid annoying messages.
|
|
197
|
-
GCOV_CLEAN = $(SILENCE)rm -f $(GCOV_GCDA_FILES) $(GCOV_OUTPUT) $(GCOV_REPORT) $(GCOV_ERROR)
|
|
198
|
-
RUN_TEST_TARGET = $(SILENCE) $(GCOV_CLEAN) ; echo "Running $(TEST_TARGET)"; ./$(TEST_TARGET) $(UNITY_TEST_RUNNER_FLAGS)
|
|
199
|
-
|
|
200
|
-
INCLUDES_DIRS_EXPANDED = $(call get_dirs_from_dirspec, $(INCLUDE_DIRS))
|
|
201
|
-
INCLUDES += $(foreach dir, $(INCLUDES_DIRS_EXPANDED), -I$(dir))
|
|
202
|
-
MOCK_DIRS_EXPANDED = $(call get_dirs_from_dirspec, $(MOCKS_SRC_DIRS))
|
|
203
|
-
INCLUDES += $(foreach dir, $(MOCK_DIRS_EXPANDED), -I$(dir))
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
DEP_FILES = $(call src_to_d, $(ALL_SRC))
|
|
207
|
-
STUFF_TO_CLEAN += $(DEP_FILES) $(PRODUCTION_CODE_START) $(PRODUCTION_CODE_END)
|
|
208
|
-
STUFF_TO_CLEAN += $(STDLIB_CODE_START) $(MAP_FILE) cpputest_*.xml junit_run_output
|
|
209
|
-
|
|
210
|
-
# We'll use the UNITY_CFLAGS etc so that you can override AND add to the CppUTest flags
|
|
211
|
-
CFLAGS = $(UNITY_CFLAGS) $(UNITY_ADDITIONAL_CFLAGS) $(INCLUDES) $(UNITY_WARNINGFLAGS)
|
|
212
|
-
LDFLAGS = $(UNITY_LDFLAGS) $(UNITY_ADDITIONAL_LDFLAGS)
|
|
213
|
-
|
|
214
|
-
# Targets
|
|
215
|
-
|
|
216
|
-
.PHONY: all
|
|
217
|
-
all: start $(TEST_TARGET)
|
|
218
|
-
$(RUN_TEST_TARGET)
|
|
219
|
-
|
|
220
|
-
.PHONY: start
|
|
221
|
-
start: $(TEST_TARGET)
|
|
222
|
-
$(SILENCE)START_TIME=$(call time)
|
|
223
|
-
|
|
224
|
-
.PHONY: all_no_tests
|
|
225
|
-
all_no_tests: $(TEST_TARGET)
|
|
226
|
-
|
|
227
|
-
.PHONY: flags
|
|
228
|
-
flags:
|
|
229
|
-
@echo
|
|
230
|
-
@echo "Compile C source with CFLAGS:"
|
|
231
|
-
@$(call debug_print_list,$(CFLAGS))
|
|
232
|
-
@echo "Link with LDFLAGS:"
|
|
233
|
-
@$(call debug_print_list,$(LDFLAGS))
|
|
234
|
-
@echo "Link with LD_LIBRARIES:"
|
|
235
|
-
@$(call debug_print_list,$(LD_LIBRARIES))
|
|
236
|
-
@echo "Create libraries with ARFLAGS:"
|
|
237
|
-
@$(call debug_print_list,$(ARFLAGS))
|
|
238
|
-
@echo "OBJ files:"
|
|
239
|
-
@$(call debug_print_list,$(OBJ2))
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
$(TEST_TARGET): $(TEST_OBJS) $(MOCKS_OBJS) $(PRODUCTION_CODE_START) $(TARGET_LIB) $(USER_LIBS) $(PRODUCTION_CODE_END) $(STDLIB_CODE_START)
|
|
243
|
-
$(SILENCE)echo Linking $@
|
|
244
|
-
$(SILENCE)$(LINK.o) -o $@ $^ $(LD_LIBRARIES)
|
|
245
|
-
|
|
246
|
-
$(TARGET_LIB): $(OBJ)
|
|
247
|
-
$(SILENCE)echo Building archive $@
|
|
248
|
-
$(SILENCE)mkdir -p lib
|
|
249
|
-
$(SILENCE)$(AR) $(ARFLAGS) $@ $^
|
|
250
|
-
$(SILENCE)ranlib $@
|
|
251
|
-
|
|
252
|
-
test: $(TEST_TARGET)
|
|
253
|
-
$(RUN_TEST_TARGET) | tee $(TEST_OUTPUT)
|
|
254
|
-
|
|
255
|
-
vtest: $(TEST_TARGET)
|
|
256
|
-
$(RUN_TEST_TARGET) -v | tee $(TEST_OUTPUT)
|
|
257
|
-
|
|
258
|
-
$(UNITY_OBJS_DIR)/%.o: %.cpp
|
|
259
|
-
@echo compiling $(notdir $<)
|
|
260
|
-
$(SILENCE)mkdir -p $(dir $@)
|
|
261
|
-
$(SILENCE)$(COMPILE.cpp) -MMD -MP $(OUTPUT_OPTION) $<
|
|
262
|
-
|
|
263
|
-
$(UNITY_OBJS_DIR)/%.o: %.c
|
|
264
|
-
@echo compiling $(notdir $<)
|
|
265
|
-
$(SILENCE)mkdir -p $(dir $@)
|
|
266
|
-
$(SILENCE)$(COMPILE.c) -MMD -MP $(OUTPUT_OPTION) $<
|
|
267
|
-
|
|
268
|
-
ifneq "$(MAKECMDGOALS)" "clean"
|
|
269
|
-
-include $(DEP_FILES)
|
|
270
|
-
endif
|
|
271
|
-
|
|
272
|
-
.PHONY: clean
|
|
273
|
-
clean:
|
|
274
|
-
$(SILENCE)echo Making clean
|
|
275
|
-
$(SILENCE)$(RM) $(STUFF_TO_CLEAN)
|
|
276
|
-
$(SILENCE)rm -rf gcov $(UNITY_OBJS_DIR)
|
|
277
|
-
$(SILENCE)find . -name "*.gcno" | xargs rm -f
|
|
278
|
-
$(SILENCE)find . -name "*.gcda" | xargs rm -f
|
|
279
|
-
|
|
280
|
-
#realclean gets rid of all gcov, o and d files in the directory tree
|
|
281
|
-
#not just the ones made by this makefile
|
|
282
|
-
.PHONY: realclean
|
|
283
|
-
realclean: clean
|
|
284
|
-
$(SILENCE)rm -rf gcov
|
|
285
|
-
$(SILENCE)find . -name "*.gdcno" | xargs rm -f
|
|
286
|
-
$(SILENCE)find . -name "*.[do]" | xargs rm -f
|
|
287
|
-
|
|
288
|
-
gcov: test
|
|
289
|
-
$(SILENCE)for d in $(SRC_DIRS) ; do \
|
|
290
|
-
gcov --object-directory $(UNITY_OBJS_DIR)/$$d $$d/*.c $$d/*.cpp >> $(GCOV_OUTPUT) 2>>$(GCOV_ERROR) ; \
|
|
291
|
-
done
|
|
292
|
-
$(SILENCE)for f in $(SRC_FILES) ; do \
|
|
293
|
-
gcov --object-directory $(UNITY_OBJS_DIR)/$$f $$f >> $(GCOV_OUTPUT) 2>>$(GCOV_ERROR) ; \
|
|
294
|
-
done
|
|
295
|
-
$(UNITY_BUILD_HOME)/filterGcov.sh $(GCOV_OUTPUT) $(GCOV_ERROR) $(GCOV_REPORT) $(TEST_OUTPUT)
|
|
296
|
-
$(SILENCE)cat $(GCOV_REPORT)
|
|
297
|
-
$(SILENCE)mkdir -p gcov
|
|
298
|
-
$(SILENCE)mv *.gcov gcov
|
|
299
|
-
$(SILENCE)mv gcov_* gcov
|
|
300
|
-
$(SILENCE)echo "See gcov directory for details"
|
|
301
|
-
|
|
302
|
-
debug:
|
|
303
|
-
@echo
|
|
304
|
-
@echo "Target Source files:"
|
|
305
|
-
@$(call debug_print_list,$(SRC))
|
|
306
|
-
@echo "Target Object files:"
|
|
307
|
-
@$(call debug_print_list,$(OBJ))
|
|
308
|
-
@echo "Test Source files:"
|
|
309
|
-
@$(call debug_print_list,$(TEST_SRC))
|
|
310
|
-
@echo "Test Object files:"
|
|
311
|
-
@$(call debug_print_list,$(TEST_OBJS))
|
|
312
|
-
@echo "Mock Source files:"
|
|
313
|
-
@$(call debug_print_list,$(MOCKS_SRC))
|
|
314
|
-
@echo "Mock Object files:"
|
|
315
|
-
@$(call debug_print_list,$(MOCKS_OBJS))
|
|
316
|
-
@echo "All Input Dependency files:"
|
|
317
|
-
@$(call debug_print_list,$(DEP_FILES))
|
|
318
|
-
@echo Stuff to clean:
|
|
319
|
-
@$(call debug_print_list,$(STUFF_TO_CLEAN))
|
|
320
|
-
@echo Includes:
|
|
321
|
-
@$(call debug_print_list,$(INCLUDES))
|
|
322
|
-
|
|
323
|
-
ifneq "$(OTHER_MAKEFILE_TO_INCLUDE)" ""
|
|
324
|
-
-include $(OTHER_MAKEFILE_TO_INCLUDE)
|
|
325
|
-
endif
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
st,$(TEST_SRC))
|
|
330
|
-
@echo "Test Object files:"
|
|
331
|
-
@$(call debug_print
|