ceedling 0.29.1 → 0.30.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 +5 -5
- data/Gemfile +15 -16
- data/Gemfile.lock +1 -1
- data/README.md +108 -107
- data/Rakefile +11 -11
- data/assets/ceedling +3 -3
- data/assets/ceedling.cmd +0 -0
- data/assets/default_gitignore +5 -5
- data/assets/example_file.c +5 -5
- data/assets/example_file.h +6 -6
- data/assets/project_as_gem.yml +101 -97
- data/assets/project_with_guts.yml +102 -98
- data/assets/project_with_guts_gcov.yml +102 -98
- data/assets/project_with_guts_gcov_abortonuncovered.yml +93 -0
- data/assets/test_example_file.c +13 -13
- data/assets/test_example_file_boom.c +13 -13
- data/assets/test_example_file_success.c +14 -14
- data/assets/test_example_file_verbose.c +12 -12
- data/assets/uncovered_example_file.c +5 -0
- data/bin/ceedling +351 -339
- data/ceedling.gemspec +52 -36
- data/config/test_environment.rb +11 -11
- data/docs/Ceedling Basic Porting.pdf +0 -0
- data/docs/Ceedling Managing Release Code.pdf +0 -0
- data/docs/Ceedling Powerful Plugins.pdf +0 -0
- data/docs/Ceedling Working with IDEs.pdf +0 -0
- data/docs/CeedlingPacket.md +2213 -2134
- data/docs/CeedlingUpgrade.md +83 -83
- data/docs/ThrowTheSwitchCodingStandard.md +207 -207
- data/examples/blinky/project.yml +99 -99
- data/examples/blinky/rakefile.rb +31 -31
- data/examples/blinky/src/BlinkTask.c +21 -21
- data/examples/blinky/src/BlinkTask.h +6 -6
- data/examples/blinky/src/Configure.c +36 -36
- data/examples/blinky/src/Configure.h +6 -6
- data/examples/blinky/src/main.c +51 -51
- data/examples/blinky/src/main.h +9 -9
- data/examples/blinky/test/support/stub_interrupt.h +347 -347
- data/examples/blinky/test/support/stub_io.h +421 -421
- data/examples/blinky/test/support/stub_iom328p.h +883 -883
- data/examples/blinky/test/support/stub_sfr_defs.h +269 -269
- data/examples/blinky/test/test_BlinkTask.c +42 -42
- data/examples/blinky/test/test_Configure.c +29 -29
- data/examples/blinky/test/test_main.c +60 -60
- data/examples/temp_sensor/project.yml +66 -76
- data/examples/temp_sensor/rakefile.rb +6 -6
- data/examples/temp_sensor/src/AdcConductor.c +42 -42
- data/examples/temp_sensor/src/AdcConductor.h +13 -13
- data/examples/temp_sensor/src/AdcHardware.c +27 -27
- data/examples/temp_sensor/src/AdcHardware.h +11 -11
- data/examples/temp_sensor/src/AdcHardwareConfigurator.c +18 -18
- data/examples/temp_sensor/src/AdcHardwareConfigurator.h +10 -10
- data/examples/temp_sensor/src/AdcModel.c +33 -33
- data/examples/temp_sensor/src/AdcModel.h +13 -13
- data/examples/temp_sensor/src/AdcTemperatureSensor.c +51 -51
- data/examples/temp_sensor/src/AdcTemperatureSensor.h +10 -10
- data/examples/temp_sensor/src/Executor.c +25 -25
- data/examples/temp_sensor/src/Executor.h +9 -9
- data/examples/temp_sensor/src/IntrinsicsWrapper.c +18 -18
- data/examples/temp_sensor/src/IntrinsicsWrapper.h +7 -7
- data/examples/temp_sensor/src/Main.c +46 -46
- data/examples/temp_sensor/src/Main.h +7 -7
- data/examples/temp_sensor/src/Model.c +10 -10
- data/examples/temp_sensor/src/Model.h +8 -8
- data/examples/temp_sensor/src/ModelConfig.h +7 -7
- data/examples/temp_sensor/src/TaskScheduler.c +72 -72
- data/examples/temp_sensor/src/TaskScheduler.h +11 -11
- data/examples/temp_sensor/src/TemperatureCalculator.c +27 -27
- data/examples/temp_sensor/src/TemperatureCalculator.h +8 -8
- data/examples/temp_sensor/src/TemperatureFilter.c +38 -38
- data/examples/temp_sensor/src/TemperatureFilter.h +10 -10
- data/examples/temp_sensor/src/TimerConductor.c +15 -15
- data/examples/temp_sensor/src/TimerConductor.h +9 -9
- data/examples/temp_sensor/src/TimerConfigurator.c +51 -51
- data/examples/temp_sensor/src/TimerConfigurator.h +15 -15
- data/examples/temp_sensor/src/TimerHardware.c +15 -15
- data/examples/temp_sensor/src/TimerHardware.h +8 -8
- data/examples/temp_sensor/src/TimerInterruptConfigurator.c +55 -55
- data/examples/temp_sensor/src/TimerInterruptConfigurator.h +13 -13
- data/examples/temp_sensor/src/TimerInterruptHandler.c +25 -25
- data/examples/temp_sensor/src/TimerInterruptHandler.h +10 -10
- data/examples/temp_sensor/src/TimerModel.c +9 -9
- data/examples/temp_sensor/src/TimerModel.h +8 -8
- data/examples/temp_sensor/src/Types.h +90 -90
- data/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c +18 -18
- data/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.h +8 -8
- data/examples/temp_sensor/src/UsartConductor.c +21 -21
- data/examples/temp_sensor/src/UsartConductor.h +7 -7
- data/examples/temp_sensor/src/UsartConfigurator.c +39 -39
- data/examples/temp_sensor/src/UsartConfigurator.h +13 -13
- data/examples/temp_sensor/src/UsartHardware.c +22 -22
- data/examples/temp_sensor/src/UsartHardware.h +9 -9
- data/examples/temp_sensor/src/UsartModel.c +34 -34
- data/examples/temp_sensor/src/UsartModel.h +10 -10
- data/examples/temp_sensor/src/UsartPutChar.c +16 -16
- data/examples/temp_sensor/src/UsartPutChar.h +8 -8
- data/examples/temp_sensor/src/UsartTransmitBufferStatus.c +7 -7
- data/examples/temp_sensor/src/UsartTransmitBufferStatus.h +8 -8
- data/examples/temp_sensor/test/TestAdcConductor.c +121 -121
- data/examples/temp_sensor/test/TestAdcHardware.c +44 -44
- data/examples/temp_sensor/test/TestAdcModel.c +33 -33
- data/examples/temp_sensor/test/TestExecutor.c +36 -36
- data/examples/temp_sensor/test/TestMain.c +24 -24
- data/examples/temp_sensor/test/TestModel.c +20 -20
- data/examples/temp_sensor/test/TestTaskScheduler.c +104 -104
- data/examples/temp_sensor/test/TestTemperatureCalculator.c +36 -36
- data/examples/temp_sensor/test/TestTemperatureFilter.c +79 -79
- data/examples/temp_sensor/test/TestTimerConductor.c +32 -32
- data/examples/temp_sensor/test/TestTimerHardware.c +26 -26
- data/examples/temp_sensor/test/TestTimerModel.c +18 -18
- data/examples/temp_sensor/test/TestUsartBaudRateRegisterCalculator.c +21 -21
- data/examples/temp_sensor/test/TestUsartConductor.c +40 -40
- data/examples/temp_sensor/test/TestUsartHardware.c +36 -36
- data/examples/temp_sensor/test/TestUsartModel.c +40 -40
- data/examples/temp_sensor/test/support/UnityHelper.c +12 -12
- data/examples/temp_sensor/test/support/UnityHelper.h +12 -12
- data/lib/ceedling.rb +99 -99
- data/lib/ceedling/build_invoker_utils.rb +39 -39
- data/lib/ceedling/cacheinator.rb +47 -47
- data/lib/ceedling/cacheinator_helper.rb +35 -31
- data/lib/ceedling/cmock_builder.rb +15 -15
- data/lib/ceedling/configurator.rb +372 -363
- data/lib/ceedling/configurator_builder.rb +463 -458
- data/lib/ceedling/configurator_plugins.rb +111 -111
- data/lib/ceedling/configurator_setup.rb +127 -127
- data/lib/ceedling/configurator_validator.rb +193 -193
- data/lib/ceedling/constants.rb +99 -97
- data/lib/ceedling/defaults.rb +447 -418
- data/lib/ceedling/dependinator.rb +97 -98
- data/lib/ceedling/erb_wrapper.rb +8 -8
- data/lib/ceedling/file_finder.rb +149 -149
- data/lib/ceedling/file_finder_helper.rb +56 -54
- data/lib/ceedling/file_path_utils.rb +202 -200
- data/lib/ceedling/file_system_utils.rb +69 -69
- data/lib/ceedling/file_system_wrapper.rb +9 -9
- data/lib/ceedling/file_wrapper.rb +83 -83
- data/lib/ceedling/flaginator.rb +74 -74
- data/lib/ceedling/generator.rb +186 -183
- data/lib/ceedling/generator_helper.rb +40 -40
- data/lib/ceedling/generator_test_results.rb +100 -100
- data/lib/ceedling/generator_test_results_sanity_checker.rb +65 -65
- data/lib/ceedling/generator_test_runner.rb +58 -56
- data/lib/ceedling/loginator.rb +31 -31
- data/lib/ceedling/makefile.rb +46 -46
- data/lib/ceedling/objects.yml +311 -310
- data/lib/ceedling/par_map.rb +19 -19
- data/lib/ceedling/plugin.rb +80 -80
- data/lib/ceedling/plugin_builder.rb +52 -52
- data/lib/ceedling/plugin_manager.rb +107 -107
- data/lib/ceedling/plugin_manager_helper.rb +19 -19
- data/lib/ceedling/plugin_reportinator.rb +76 -76
- data/lib/ceedling/plugin_reportinator_helper.rb +51 -51
- data/lib/ceedling/preprocessinator.rb +47 -42
- data/lib/ceedling/preprocessinator_extractor.rb +30 -30
- data/lib/ceedling/preprocessinator_file_handler.rb +21 -21
- data/lib/ceedling/preprocessinator_helper.rb +50 -46
- data/lib/ceedling/preprocessinator_includes_handler.rb +181 -181
- data/lib/ceedling/project_config_manager.rb +52 -46
- data/lib/ceedling/project_file_loader.rb +99 -99
- data/lib/ceedling/rake_utils.rb +17 -17
- data/lib/ceedling/rake_wrapper.rb +33 -33
- data/lib/ceedling/rakefile.rb +86 -86
- data/lib/ceedling/release_invoker.rb +98 -73
- data/lib/ceedling/release_invoker_helper.rb +19 -19
- data/lib/ceedling/reportinator.rb +26 -26
- data/lib/ceedling/rules_cmock.rake +9 -9
- data/lib/ceedling/rules_preprocess.rake +26 -26
- data/lib/ceedling/rules_release.rake +99 -86
- data/lib/ceedling/rules_release_deep_dependencies.rake +15 -15
- data/lib/ceedling/rules_tests.rake +73 -74
- data/lib/ceedling/rules_tests_deep_dependencies.rake +15 -15
- data/lib/ceedling/setupinator.rb +53 -53
- data/lib/ceedling/stream_wrapper.rb +28 -28
- data/lib/ceedling/streaminator.rb +40 -40
- data/lib/ceedling/streaminator_helper.rb +15 -15
- data/lib/ceedling/system_utils.rb +37 -37
- data/lib/ceedling/system_wrapper.rb +80 -80
- data/lib/ceedling/target_loader.rb +38 -38
- data/lib/ceedling/task_invoker.rb +122 -117
- data/lib/ceedling/tasks_base.rake +116 -105
- data/lib/ceedling/tasks_filesystem.rake +113 -112
- data/lib/ceedling/tasks_release.rake +30 -30
- data/lib/ceedling/tasks_release_deep_dependencies.rake +9 -9
- data/lib/ceedling/tasks_tests.rake +60 -60
- data/lib/ceedling/tasks_tests_deep_dependencies.rake +9 -9
- data/lib/ceedling/tasks_vendor.rake +35 -35
- data/lib/ceedling/test_includes_extractor.rb +111 -85
- data/lib/ceedling/test_invoker.rb +164 -188
- data/lib/ceedling/test_invoker_helper.rb +32 -32
- data/lib/ceedling/tool_executor.rb +229 -229
- data/lib/ceedling/tool_executor_helper.rb +164 -164
- data/lib/ceedling/verbosinator.rb +10 -10
- data/lib/ceedling/version.rb +50 -50
- data/lib/ceedling/yaml_wrapper.rb +17 -17
- data/license.txt +31 -31
- data/plugins/beep/README.md +22 -22
- data/plugins/beep/lib/beep.rb +40 -40
- data/plugins/bullseye/README.md +76 -0
- data/plugins/bullseye/assets/template.erb +15 -15
- data/plugins/bullseye/bullseye.rake +173 -169
- data/plugins/bullseye/config/defaults.yml +57 -57
- data/plugins/bullseye/lib/bullseye.rb +194 -194
- data/plugins/colour_report/README.md +20 -0
- data/plugins/colour_report/lib/colour_report.rb +16 -16
- data/plugins/command_hooks/README.md +53 -53
- data/plugins/command_hooks/lib/command_hooks.rb +92 -92
- data/plugins/compile_commands_json/README.md +29 -0
- data/plugins/compile_commands_json/lib/compile_commands_json.rb +35 -0
- data/plugins/dependencies/README.md +254 -0
- data/plugins/dependencies/config/defaults.yml +5 -0
- data/plugins/dependencies/dependencies.rake +144 -0
- data/plugins/dependencies/lib/dependencies.rb +231 -0
- data/plugins/fake_function_framework/README.md +250 -250
- data/plugins/fake_function_framework/Rakefile +18 -18
- data/plugins/fake_function_framework/examples/fff_example/project.yml +71 -71
- data/plugins/fake_function_framework/examples/fff_example/rakefile.rb +7 -7
- data/plugins/fake_function_framework/examples/fff_example/src/bar.c +1 -1
- data/plugins/fake_function_framework/examples/fff_example/src/bar.h +14 -14
- data/plugins/fake_function_framework/examples/fff_example/src/custom_types.h +6 -6
- data/plugins/fake_function_framework/examples/fff_example/src/display.c +6 -6
- data/plugins/fake_function_framework/examples/fff_example/src/display.h +16 -16
- data/plugins/fake_function_framework/examples/fff_example/src/event_processor.c +93 -93
- data/plugins/fake_function_framework/examples/fff_example/src/event_processor.h +11 -11
- data/plugins/fake_function_framework/examples/fff_example/src/foo.c +16 -16
- data/plugins/fake_function_framework/examples/fff_example/src/foo.h +8 -8
- data/plugins/fake_function_framework/examples/fff_example/src/subfolder/zzz.c +1 -1
- data/plugins/fake_function_framework/examples/fff_example/src/subfolder/zzz.h +6 -6
- data/plugins/fake_function_framework/examples/fff_example/test/test_event_processor.c +155 -155
- data/plugins/fake_function_framework/examples/fff_example/test/test_foo.c +47 -47
- data/plugins/fake_function_framework/lib/fake_function_framework.rb +87 -87
- data/plugins/fake_function_framework/lib/fff_mock_generator.rb +163 -163
- data/plugins/fake_function_framework/spec/fff_mock_header_generator_spec.rb +304 -304
- data/plugins/fake_function_framework/spec/fff_mock_source_generator_spec.rb +148 -148
- data/plugins/fake_function_framework/spec/header_generator.rb +50 -50
- data/plugins/fake_function_framework/spec/spec_helper.rb +96 -96
- data/plugins/fake_function_framework/src/fff_unity_helper.h +32 -32
- data/plugins/gcov/README.md +412 -101
- data/plugins/gcov/assets/template.erb +15 -15
- data/plugins/gcov/config/defaults.yml +51 -73
- data/plugins/gcov/gcov.rake +209 -220
- data/plugins/gcov/lib/gcov.rb +133 -113
- data/plugins/gcov/lib/gcov_constants.rb +48 -19
- data/plugins/gcov/lib/gcovr_reportinator.rb +331 -0
- data/plugins/gcov/lib/reportgenerator_reportinator.rb +153 -0
- data/plugins/gcov/lib/reportinator_helper.rb +15 -0
- data/plugins/json_tests_report/README.md +36 -0
- data/plugins/json_tests_report/lib/json_tests_report.rb +83 -0
- data/plugins/junit_tests_report/README.md +36 -36
- data/plugins/junit_tests_report/lib/junit_tests_report.rb +134 -130
- data/plugins/module_generator/README.md +105 -0
- data/plugins/module_generator/config/module_generator.yml +3 -3
- data/plugins/module_generator/lib/module_generator.rb +79 -70
- data/plugins/module_generator/module_generator.rake +62 -47
- data/plugins/raw_output_report/README.md +19 -0
- data/plugins/raw_output_report/lib/raw_output_report.rb +41 -41
- data/plugins/stdout_gtestlike_tests_report/README.md +19 -0
- data/plugins/stdout_gtestlike_tests_report/assets/template.erb +84 -84
- data/plugins/stdout_gtestlike_tests_report/assets/template.erb copy +59 -59
- data/plugins/stdout_gtestlike_tests_report/config/stdout_gtestlike_tests_report.yml +4 -4
- data/plugins/stdout_gtestlike_tests_report/lib/stdout_gtestlike_tests_report.rb +43 -43
- data/plugins/stdout_ide_tests_report/README.md +18 -0
- data/plugins/stdout_ide_tests_report/config/stdout_ide_tests_report.yml +4 -4
- data/plugins/stdout_ide_tests_report/lib/stdout_ide_tests_report.rb +44 -44
- data/plugins/stdout_pretty_tests_report/README.md +20 -0
- data/plugins/stdout_pretty_tests_report/assets/template.erb +59 -59
- data/plugins/stdout_pretty_tests_report/config/stdout_pretty_tests_report.yml +4 -4
- data/plugins/stdout_pretty_tests_report/lib/stdout_pretty_tests_report.rb +47 -47
- data/plugins/subprojects/README.md +63 -63
- data/plugins/subprojects/config/defaults.yml +33 -33
- data/plugins/subprojects/lib/subprojects.rb +92 -92
- data/plugins/subprojects/subprojects.rake +78 -78
- data/plugins/teamcity_tests_report/README.md +18 -0
- data/plugins/teamcity_tests_report/config/teamcity_tests_report.yml +4 -4
- data/plugins/teamcity_tests_report/lib/teamcity_tests_report.rb +57 -57
- data/plugins/warnings_report/README.md +19 -0
- data/plugins/warnings_report/lib/warnings_report.rb +69 -69
- data/plugins/xml_tests_report/README.md +36 -36
- data/plugins/xml_tests_report/lib/xml_tests_report.rb +110 -110
- data/spec/build_invoker_utils_spec.rb +54 -54
- data/spec/ceedling_spec.rb +154 -154
- data/spec/configurator_builder_spec.rb +6 -6
- data/spec/configurator_helper_spec.rb +4 -4
- data/spec/configurator_spec.rb +9 -9
- data/spec/file_finder_helper_spec.rb +53 -53
- data/spec/gcov/gcov_deployment_spec.rb +72 -70
- data/spec/gcov/gcov_test_cases_spec.rb +128 -91
- data/spec/generator_test_results_sanity_checker_spec.rb +88 -88
- data/spec/generator_test_results_spec.rb +107 -107
- data/spec/par_map_spec.rb +57 -57
- data/spec/preprocessinator_extractor_spec.rb +45 -45
- data/spec/preprocessinator_includes_handler_spec.rb +202 -202
- data/spec/reportinator_spec.rb +19 -19
- data/spec/spec_helper.rb +27 -27
- data/spec/spec_system_helper.rb +616 -615
- data/spec/support/test_example.fail +24 -24
- data/spec/support/test_example.pass +24 -24
- data/spec/support/test_example_empty.pass +14 -14
- data/spec/support/test_example_ignore.pass +24 -24
- data/spec/support/test_example_mangled.pass +21 -21
- data/spec/support/test_example_with_time.pass +24 -24
- data/spec/system/deployment_spec.rb +225 -225
- data/spec/system_utils_spec.rb +56 -56
- data/spec/target_loader_spec.rb +30 -30
- data/spec/tool_executor_helper_spec.rb +310 -310
- data/spec/uncatagorized_specs_spec.rb +8 -8
- data/vendor/behaviors/Manifest.txt +9 -9
- data/vendor/behaviors/Rakefile +19 -19
- data/vendor/behaviors/lib/behaviors.rb +76 -76
- data/vendor/behaviors/lib/behaviors/reporttask.rb +158 -158
- data/vendor/behaviors/test/behaviors_tasks_test.rb +73 -73
- data/vendor/behaviors/test/behaviors_test.rb +50 -50
- data/vendor/behaviors/test/tasks_test/Rakefile +19 -19
- data/vendor/behaviors/test/tasks_test/lib/user.rb +2 -2
- data/vendor/behaviors/test/tasks_test/test/user_test.rb +17 -17
- data/vendor/c_exception/Gemfile +4 -4
- data/vendor/c_exception/Gemfile.lock +12 -12
- data/vendor/c_exception/README.md +249 -162
- data/vendor/c_exception/docs/CException.md +332 -292
- data/vendor/c_exception/docs/ThrowTheSwitchCodingStandard.md +207 -207
- data/vendor/c_exception/lib/CException.c +46 -46
- data/vendor/c_exception/lib/CException.h +115 -115
- data/vendor/c_exception/lib/meson.build +11 -0
- data/vendor/c_exception/meson.build +48 -0
- data/vendor/c_exception/project.yml +37 -0
- data/vendor/c_exception/test/TestException.c +391 -391
- data/vendor/{cmock/vendor/c_exception/test → c_exception/test/support}/CExceptionConfig.h +46 -46
- data/vendor/c_exception/vendor/unity/README.md +220 -220
- data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +118 -118
- data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +39 -39
- data/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -36
- data/vendor/c_exception/vendor/unity/auto/generate_module.rb +308 -308
- data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +437 -437
- data/vendor/c_exception/vendor/unity/auto/parse_output.rb +220 -220
- data/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +252 -252
- data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +25 -25
- data/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +6 -6
- data/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +139 -139
- data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +136 -136
- data/vendor/c_exception/vendor/unity/auto/unity_to_junit.py +146 -146
- data/vendor/c_exception/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +207 -207
- data/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.md +716 -716
- data/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.md +398 -398
- data/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.md +191 -191
- data/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.md +242 -242
- data/vendor/c_exception/vendor/unity/docs/license.txt +21 -21
- data/vendor/c_exception/vendor/unity/examples/example_1/makefile +71 -71
- data/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +4 -4
- data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +24 -24
- data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +3 -3
- data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +11 -11
- data/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -2
- data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -62
- data/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -31
- data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -53
- data/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -57
- data/vendor/c_exception/vendor/unity/examples/example_2/makefile +70 -70
- data/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +4 -4
- data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +24 -24
- data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +3 -3
- data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +11 -11
- data/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -2
- data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -64
- data/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -33
- data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +8 -8
- data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +10 -10
- data/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -12
- data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -10
- data/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -12
- data/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +43 -43
- data/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +249 -249
- data/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +13 -13
- data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +24 -24
- data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +3 -3
- data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +11 -11
- data/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -2
- data/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +46 -46
- data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -62
- data/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -31
- data/vendor/c_exception/vendor/unity/examples/unity_config.h +237 -237
- data/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +26 -26
- data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +48 -48
- data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +178 -178
- data/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +8 -8
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +432 -432
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +83 -83
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +51 -51
- data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +47 -47
- data/vendor/c_exception/vendor/unity/extras/fixture/test/Makefile +74 -74
- data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +22 -22
- data/vendor/c_exception/vendor/unity/extras/fixture/test/template_fixture_tests.c +39 -39
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +543 -543
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +57 -57
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +57 -57
- data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -17
- data/vendor/c_exception/vendor/unity/release/build.info +2 -2
- data/vendor/c_exception/vendor/unity/release/version.info +2 -2
- data/vendor/c_exception/vendor/unity/src/unity.c +1517 -1517
- data/vendor/c_exception/vendor/unity/src/unity.h +339 -339
- data/vendor/c_exception/vendor/unity/src/unity_internals.h +784 -784
- data/vendor/c_exception/vendor/unity/test/Makefile +63 -63
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +61 -61
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +57 -57
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.c +55 -55
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.h +15 -15
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +80 -80
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +76 -76
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -75
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.h +13 -13
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +89 -89
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +89 -89
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +77 -77
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +89 -89
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +89 -89
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +90 -90
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +67 -67
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +70 -70
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +58 -58
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +67 -67
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +70 -70
- data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +71 -71
- data/vendor/c_exception/vendor/unity/test/rakefile +125 -125
- data/vendor/c_exception/vendor/unity/test/rakefile_helper.rb +260 -260
- data/vendor/c_exception/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -158
- data/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +78 -78
- data/vendor/c_exception/vendor/unity/test/targets/clang_strict.yml +78 -78
- data/vendor/c_exception/vendor/unity/test/targets/gcc_32.yml +49 -49
- data/vendor/c_exception/vendor/unity/test/targets/gcc_64.yml +50 -50
- data/vendor/c_exception/vendor/unity/test/targets/gcc_auto_limits.yml +47 -47
- data/vendor/c_exception/vendor/unity/test/targets/gcc_auto_stdint.yml +59 -59
- data/vendor/c_exception/vendor/unity/test/targets/gcc_manual_math.yml +47 -47
- data/vendor/c_exception/vendor/unity/test/targets/hitech_picc18.yml +101 -101
- data/vendor/c_exception/vendor/unity/test/targets/iar_arm_v4.yml +90 -90
- data/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5.yml +80 -80
- data/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5_3.yml +80 -80
- data/vendor/c_exception/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +94 -94
- data/vendor/c_exception/vendor/unity/test/targets/iar_cortexm3_v5.yml +84 -84
- data/vendor/c_exception/vendor/unity/test/targets/iar_msp430.yml +95 -95
- data/vendor/c_exception/vendor/unity/test/targets/iar_sh2a_v6.yml +86 -86
- data/vendor/c_exception/vendor/unity/test/testdata/CException.h +11 -11
- data/vendor/c_exception/vendor/unity/test/testdata/Defs.h +8 -8
- data/vendor/c_exception/vendor/unity/test/testdata/cmock.h +14 -14
- data/vendor/c_exception/vendor/unity/test/testdata/mockMock.h +13 -13
- data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGenerator.c +183 -183
- data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +67 -67
- data/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +192 -192
- data/vendor/c_exception/vendor/unity/test/tests/test_generate_test_runner.rb +1252 -1252
- data/vendor/c_exception/vendor/unity/test/tests/testparameterized.c +110 -110
- data/vendor/c_exception/vendor/unity/test/tests/testunity.c +4993 -4993
- data/vendor/cmock/Gemfile +8 -9
- data/vendor/cmock/LICENSE.txt +18 -18
- data/vendor/cmock/README.md +34 -34
- data/vendor/cmock/config/production_environment.rb +12 -14
- data/vendor/cmock/config/test_environment.rb +16 -16
- data/vendor/cmock/docs/CMock_Summary.md +806 -696
- data/vendor/cmock/docs/ThrowTheSwitchCodingStandard.md +207 -207
- data/vendor/cmock/examples/make_example/Makefile +30 -30
- data/vendor/cmock/examples/make_example/src/foo.c +5 -5
- data/vendor/cmock/examples/make_example/src/foo.h +5 -5
- data/vendor/cmock/examples/make_example/src/main.c +15 -15
- data/vendor/cmock/examples/make_example/test/test_foo.c +17 -17
- data/vendor/cmock/examples/make_example/test/test_main.c +15 -15
- data/vendor/cmock/examples/temp_sensor/gcc.yml +44 -44
- data/vendor/cmock/examples/temp_sensor/iar_v4.yml +92 -92
- data/vendor/cmock/examples/temp_sensor/iar_v5.yml +81 -81
- data/vendor/cmock/examples/temp_sensor/rakefile.rb +42 -42
- data/vendor/cmock/examples/temp_sensor/rakefile_helper.rb +268 -272
- data/vendor/cmock/examples/temp_sensor/src/AT91SAM7X256.h +2556 -2556
- data/vendor/cmock/examples/temp_sensor/src/AdcConductor.c +42 -42
- data/vendor/cmock/examples/temp_sensor/src/AdcConductor.h +11 -11
- data/vendor/cmock/examples/temp_sensor/src/AdcHardware.c +27 -27
- data/vendor/cmock/examples/temp_sensor/src/AdcHardware.h +9 -9
- data/vendor/cmock/examples/temp_sensor/src/AdcHardwareConfigurator.c +18 -18
- data/vendor/cmock/examples/temp_sensor/src/AdcHardwareConfigurator.h +10 -10
- data/vendor/cmock/examples/temp_sensor/src/AdcModel.c +33 -33
- data/vendor/cmock/examples/temp_sensor/src/AdcModel.h +13 -13
- data/vendor/cmock/examples/temp_sensor/src/AdcTemperatureSensor.c +51 -51
- data/vendor/cmock/examples/temp_sensor/src/AdcTemperatureSensor.h +10 -10
- data/vendor/cmock/examples/temp_sensor/src/Executor.c +25 -25
- data/vendor/cmock/examples/temp_sensor/src/Executor.h +9 -9
- data/vendor/cmock/examples/temp_sensor/src/IntrinsicsWrapper.c +18 -18
- data/vendor/cmock/examples/temp_sensor/src/IntrinsicsWrapper.h +7 -7
- data/vendor/cmock/examples/temp_sensor/src/Main.c +46 -46
- data/vendor/cmock/examples/temp_sensor/src/Main.h +7 -7
- data/vendor/cmock/examples/temp_sensor/src/Model.c +10 -10
- data/vendor/cmock/examples/temp_sensor/src/Model.h +8 -8
- data/vendor/cmock/examples/temp_sensor/src/ModelConfig.h +7 -7
- data/vendor/cmock/examples/temp_sensor/src/TaskScheduler.c +72 -72
- data/vendor/cmock/examples/temp_sensor/src/TaskScheduler.h +11 -11
- data/vendor/cmock/examples/temp_sensor/src/TemperatureCalculator.c +27 -27
- data/vendor/cmock/examples/temp_sensor/src/TemperatureCalculator.h +6 -6
- data/vendor/cmock/examples/temp_sensor/src/TemperatureFilter.c +39 -39
- data/vendor/cmock/examples/temp_sensor/src/TemperatureFilter.h +10 -10
- data/vendor/cmock/examples/temp_sensor/src/TimerConductor.c +15 -15
- data/vendor/cmock/examples/temp_sensor/src/TimerConductor.h +9 -9
- data/vendor/cmock/examples/temp_sensor/src/TimerConfigurator.c +51 -51
- data/vendor/cmock/examples/temp_sensor/src/TimerConfigurator.h +15 -15
- data/vendor/cmock/examples/temp_sensor/src/TimerHardware.c +15 -15
- data/vendor/cmock/examples/temp_sensor/src/TimerHardware.h +8 -8
- data/vendor/cmock/examples/temp_sensor/src/TimerInterruptConfigurator.c +55 -55
- data/vendor/cmock/examples/temp_sensor/src/TimerInterruptConfigurator.h +13 -13
- data/vendor/cmock/examples/temp_sensor/src/TimerInterruptHandler.c +25 -25
- data/vendor/cmock/examples/temp_sensor/src/TimerInterruptHandler.h +10 -10
- data/vendor/cmock/examples/temp_sensor/src/TimerModel.c +9 -9
- data/vendor/cmock/examples/temp_sensor/src/TimerModel.h +8 -8
- data/vendor/cmock/examples/temp_sensor/src/Types.h +103 -103
- data/vendor/cmock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.c +18 -18
- data/vendor/cmock/examples/temp_sensor/src/UsartBaudRateRegisterCalculator.h +6 -6
- data/vendor/cmock/examples/temp_sensor/src/UsartConductor.c +21 -21
- data/vendor/cmock/examples/temp_sensor/src/UsartConductor.h +7 -7
- data/vendor/cmock/examples/temp_sensor/src/UsartConfigurator.c +39 -39
- data/vendor/cmock/examples/temp_sensor/src/UsartConfigurator.h +13 -13
- data/vendor/cmock/examples/temp_sensor/src/UsartHardware.c +22 -22
- data/vendor/cmock/examples/temp_sensor/src/UsartHardware.h +9 -9
- data/vendor/cmock/examples/temp_sensor/src/UsartModel.c +34 -34
- data/vendor/cmock/examples/temp_sensor/src/UsartModel.h +10 -10
- data/vendor/cmock/examples/temp_sensor/src/UsartPutChar.c +16 -16
- data/vendor/cmock/examples/temp_sensor/src/UsartPutChar.h +8 -8
- data/vendor/cmock/examples/temp_sensor/src/UsartTransmitBufferStatus.c +7 -7
- data/vendor/cmock/examples/temp_sensor/src/UsartTransmitBufferStatus.h +8 -8
- data/vendor/cmock/examples/temp_sensor/test/TestAdcConductor.c +121 -121
- data/vendor/cmock/examples/temp_sensor/test/TestAdcHardware.c +44 -44
- data/vendor/cmock/examples/temp_sensor/test/TestAdcHardwareConfigurator.c +43 -43
- data/vendor/cmock/examples/temp_sensor/test/TestAdcModel.c +33 -33
- data/vendor/cmock/examples/temp_sensor/test/TestAdcTemperatureSensor.c +47 -47
- data/vendor/cmock/examples/temp_sensor/test/TestExecutor.c +36 -36
- data/vendor/cmock/examples/temp_sensor/test/TestMain.c +24 -24
- data/vendor/cmock/examples/temp_sensor/test/TestModel.c +20 -20
- data/vendor/cmock/examples/temp_sensor/test/TestTaskScheduler.c +104 -104
- data/vendor/cmock/examples/temp_sensor/test/TestTemperatureCalculator.c +33 -33
- data/vendor/cmock/examples/temp_sensor/test/TestTemperatureFilter.c +69 -69
- data/vendor/cmock/examples/temp_sensor/test/TestTimerConductor.c +32 -32
- data/vendor/cmock/examples/temp_sensor/test/TestTimerConfigurator.c +112 -112
- data/vendor/cmock/examples/temp_sensor/test/TestTimerHardware.c +26 -26
- data/vendor/cmock/examples/temp_sensor/test/TestTimerInterruptConfigurator.c +78 -78
- data/vendor/cmock/examples/temp_sensor/test/TestTimerInterruptHandler.c +66 -66
- data/vendor/cmock/examples/temp_sensor/test/TestTimerModel.c +18 -18
- data/vendor/cmock/examples/temp_sensor/test/TestUsartBaudRateRegisterCalculator.c +21 -21
- data/vendor/cmock/examples/temp_sensor/test/TestUsartConductor.c +40 -40
- data/vendor/cmock/examples/temp_sensor/test/TestUsartConfigurator.c +77 -77
- data/vendor/cmock/examples/temp_sensor/test/TestUsartHardware.c +37 -37
- data/vendor/cmock/examples/temp_sensor/test/TestUsartModel.c +40 -40
- data/vendor/cmock/examples/temp_sensor/test/TestUsartPutChar.c +43 -43
- data/vendor/cmock/examples/temp_sensor/test/TestUsartTransmitBufferStatus.c +22 -22
- data/vendor/cmock/lib/cmock.rb +104 -86
- data/vendor/cmock/lib/cmock_config.rb +173 -163
- data/vendor/cmock/lib/cmock_file_writer.rb +48 -44
- data/vendor/cmock/lib/cmock_generator.rb +333 -275
- data/vendor/cmock/lib/cmock_generator_plugin_array.rb +63 -63
- data/vendor/cmock/lib/cmock_generator_plugin_callback.rb +88 -88
- data/vendor/cmock/lib/cmock_generator_plugin_cexception.rb +49 -51
- data/vendor/cmock/lib/cmock_generator_plugin_expect.rb +100 -103
- data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +50 -53
- data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +88 -75
- data/vendor/cmock/lib/cmock_generator_plugin_ignore_arg.rb +42 -42
- data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +79 -79
- data/vendor/cmock/lib/cmock_generator_utils.rb +247 -253
- data/vendor/cmock/lib/cmock_header_parser.rb +595 -474
- data/vendor/cmock/lib/cmock_plugin_manager.rb +50 -55
- data/vendor/cmock/lib/cmock_unityhelper_parser.rb +77 -75
- data/vendor/cmock/meson.build +53 -72
- data/vendor/cmock/scripts/create_makefile.rb +203 -202
- data/vendor/cmock/scripts/create_mock.rb +8 -8
- data/vendor/cmock/scripts/create_runner.rb +18 -20
- data/vendor/cmock/scripts/test_summary.rb +18 -19
- data/vendor/cmock/src/cmock.c +216 -216
- data/vendor/cmock/src/cmock.h +41 -40
- data/vendor/cmock/src/cmock_internals.h +91 -91
- data/vendor/cmock/src/meson.build +12 -17
- data/vendor/cmock/test/c/TestCMockC.c +333 -333
- data/vendor/cmock/test/c/TestCMockC.yml +14 -14
- data/vendor/cmock/test/c/TestCMockCDynamic.c +186 -186
- data/vendor/cmock/test/c/TestCMockCDynamic.yml +12 -12
- data/vendor/cmock/test/c/TestCMockCDynamic_Runner.c +36 -36
- data/vendor/cmock/test/c/TestCMockC_Runner.c +41 -41
- data/vendor/cmock/test/iar/iar_v4/Resource/at91SAM7X256_FLASH.xcl +185 -185
- data/vendor/cmock/test/iar/iar_v4/Resource/at91SAM7X256_RAM.xcl +185 -185
- data/vendor/cmock/test/iar/iar_v4/Resource/ioat91sam7x256.ddf +2259 -2259
- data/vendor/cmock/test/iar/iar_v4/cmock_demo.dep +3691 -3691
- data/vendor/cmock/test/iar/iar_v4/cmock_demo.ewp +2581 -2581
- data/vendor/cmock/test/iar/iar_v4/incIAR/AT91SAM7X-EK.h +61 -61
- data/vendor/cmock/test/iar/iar_v4/incIAR/AT91SAM7X256.inc +2314 -2314
- data/vendor/cmock/test/iar/iar_v4/incIAR/AT91SAM7X256.rdf +4704 -4704
- data/vendor/cmock/test/iar/iar_v4/incIAR/AT91SAM7X256.tcl +3407 -3407
- data/vendor/cmock/test/iar/iar_v4/incIAR/AT91SAM7X256_inc.h +2268 -2268
- data/vendor/cmock/test/iar/iar_v4/incIAR/ioat91sam7x256.h +4380 -4380
- data/vendor/cmock/test/iar/iar_v4/incIAR/lib_AT91SAM7X256.h +4211 -4211
- data/vendor/cmock/test/iar/iar_v4/settings/cmock_demo.cspy.bat +32 -32
- data/vendor/cmock/test/iar/iar_v4/srcIAR/Cstartup.s79 +265 -265
- data/vendor/cmock/test/iar/iar_v4/srcIAR/Cstartup_SAM7.c +98 -98
- data/vendor/cmock/test/iar/iar_v5/Resource/at91SAM7X256_FLASH.icf +43 -43
- data/vendor/cmock/test/iar/iar_v5/Resource/at91SAM7X256_RAM.icf +42 -42
- data/vendor/cmock/test/iar/iar_v5/cmock_demo.dep +4204 -4204
- data/vendor/cmock/test/iar/iar_v5/cmock_demo.ewp +2426 -2426
- data/vendor/cmock/test/iar/iar_v5/incIAR/AT91SAM7X-EK.h +61 -61
- data/vendor/cmock/test/iar/iar_v5/incIAR/AT91SAM7X256_inc.h +2268 -2268
- data/vendor/cmock/test/iar/iar_v5/incIAR/lib_AT91SAM7X256.h +4211 -4211
- data/vendor/cmock/test/iar/iar_v5/incIAR/project.h +30 -30
- data/vendor/cmock/test/iar/iar_v5/settings/BasicInterrupt_SAM7X.cspy.bat +33 -33
- data/vendor/cmock/test/iar/iar_v5/settings/BasicInterrupt_SAM7X_FLASH_Debug.jlink +12 -12
- data/vendor/cmock/test/iar/iar_v5/settings/cmock_demo.cspy.bat +33 -33
- data/vendor/cmock/test/iar/iar_v5/settings/cmock_demo_Binary.jlink +12 -12
- data/vendor/cmock/test/iar/iar_v5/settings/cmock_demo_FLASH_Debug.jlink +12 -12
- data/vendor/cmock/test/iar/iar_v5/settings/cmock_demo_RAM_Debug.jlink +12 -12
- data/vendor/cmock/test/iar/iar_v5/srcIAR/Cstartup.s +299 -299
- data/vendor/cmock/test/iar/iar_v5/srcIAR/Cstartup_SAM7.c +98 -98
- data/vendor/cmock/test/rakefile +147 -106
- data/vendor/cmock/test/rakefile_helper.rb +403 -382
- data/vendor/cmock/test/system/systest_generator.rb +205 -193
- data/vendor/cmock/test/system/test_compilation/callingconv.h +11 -11
- data/vendor/cmock/test/system/test_compilation/config.yml +10 -10
- data/vendor/cmock/test/system/test_compilation/const.h +37 -37
- data/vendor/cmock/test/system/test_compilation/inline.h +23 -23
- data/vendor/cmock/test/system/test_compilation/osek.h +275 -275
- data/vendor/cmock/test/system/test_compilation/parsing.h +89 -89
- data/vendor/cmock/test/system/test_interactions/all_plugins_but_other_limits.yml +375 -375
- data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +460 -460
- data/vendor/cmock/test/system/test_interactions/array_and_pointer_handling.yml +446 -446
- data/vendor/cmock/test/system/test_interactions/basic_expect_and_return.yml +124 -124
- data/vendor/cmock/test/system/test_interactions/const_primitives_handling.yml +87 -87
- data/vendor/cmock/test/system/test_interactions/doesnt_leave_details_behind.yml +308 -308
- data/vendor/cmock/test/system/test_interactions/enforce_strict_ordering.yml +247 -247
- data/vendor/cmock/test/system/test_interactions/expect_and_return_custom_types.yml +108 -108
- data/vendor/cmock/test/system/test_interactions/expect_and_return_treat_as.yml +173 -173
- data/vendor/cmock/test/system/test_interactions/expect_and_throw.yml +170 -170
- data/vendor/cmock/test/system/test_interactions/expect_any_args.yml +238 -238
- data/vendor/cmock/test/system/test_interactions/fancy_pointer_handling.yml +210 -210
- data/vendor/cmock/test/system/test_interactions/function_pointer_handling.yml +83 -82
- data/vendor/cmock/test/system/test_interactions/ignore_and_return.yml +329 -329
- data/vendor/cmock/test/system/test_interactions/ignore_strict_mock_calling.yml +37 -37
- data/vendor/cmock/test/system/test_interactions/newer_standards_stuff1.yml +52 -52
- data/vendor/cmock/test/system/test_interactions/nonstandard_parsed_stuff_1.yml +91 -91
- data/vendor/cmock/test/system/test_interactions/nonstandard_parsed_stuff_2.yml +59 -59
- data/vendor/cmock/test/system/test_interactions/out_of_memory.yml +65 -65
- data/vendor/cmock/test/system/test_interactions/parsing_challenges.yml +242 -242
- data/vendor/cmock/test/system/test_interactions/return_thru_ptr_and_expect_any_args.yml +235 -235
- data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore_arg.yml +231 -231
- data/vendor/cmock/test/system/test_interactions/skeleton.yml +55 -0
- data/vendor/cmock/test/system/test_interactions/skeleton_update.yml +76 -0
- data/vendor/cmock/test/system/test_interactions/struct_union_enum_expect_and_return.yml +277 -277
- data/vendor/cmock/test/system/test_interactions/struct_union_enum_expect_and_return_with_plugins.yml +280 -280
- data/vendor/cmock/test/system/test_interactions/stubs_with_callbacks.yml +221 -221
- data/vendor/cmock/test/system/test_interactions/unity_64bit_support.yml +77 -77
- data/vendor/cmock/test/system/test_interactions/unity_ignores.yml +139 -139
- data/vendor/cmock/test/system/test_interactions/unity_void_pointer_compare.yml +91 -91
- data/vendor/cmock/test/targets/clang_strict.yml +90 -90
- data/vendor/cmock/test/targets/gcc.yml +58 -58
- data/vendor/cmock/test/targets/gcc_64.yml +58 -58
- data/vendor/cmock/test/targets/gcc_tiny.yml +80 -80
- data/vendor/cmock/test/targets/iar_arm_v4.yml +110 -110
- data/vendor/cmock/test/targets/iar_arm_v5.yml +95 -95
- data/vendor/cmock/test/test_helper.rb +44 -44
- data/vendor/cmock/test/unit/cmock_config_test.rb +126 -123
- data/vendor/cmock/test/unit/cmock_config_test.yml +7 -6
- data/vendor/cmock/test/unit/cmock_file_writer_test.rb +27 -27
- data/vendor/cmock/test/unit/cmock_generator_main_test.rb +686 -551
- data/vendor/cmock/test/unit/cmock_generator_plugin_array_test.rb +141 -141
- data/vendor/cmock/test/unit/cmock_generator_plugin_callback_test.rb +281 -281
- data/vendor/cmock/test/unit/cmock_generator_plugin_cexception_test.rb +96 -96
- data/vendor/cmock/test/unit/cmock_generator_plugin_expect_a_test.rb +185 -183
- data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +67 -67
- data/vendor/cmock/test/unit/cmock_generator_plugin_expect_b_test.rb +201 -200
- data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_arg_test.rb +116 -116
- data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +119 -105
- data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +136 -136
- data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +398 -415
- data/vendor/cmock/test/unit/cmock_header_parser_test.rb +2717 -2000
- data/vendor/cmock/test/unit/cmock_plugin_manager_test.rb +100 -100
- data/vendor/cmock/test/unit/cmock_unityhelper_parser_test.rb +223 -223
- data/vendor/cmock/vendor/behaviors/Manifest.txt +9 -9
- data/vendor/cmock/vendor/behaviors/Rakefile +19 -19
- data/vendor/cmock/vendor/behaviors/lib/behaviors.rb +76 -76
- data/vendor/cmock/vendor/behaviors/lib/behaviors/reporttask.rb +158 -158
- data/vendor/cmock/vendor/behaviors/test/behaviors_tasks_test.rb +73 -73
- data/vendor/cmock/vendor/behaviors/test/behaviors_test.rb +50 -50
- data/vendor/cmock/vendor/behaviors/test/tasks_test/Rakefile +19 -19
- data/vendor/cmock/vendor/behaviors/test/tasks_test/lib/user.rb +2 -2
- data/vendor/cmock/vendor/behaviors/test/tasks_test/test/user_test.rb +17 -17
- data/vendor/cmock/vendor/c_exception/Gemfile +4 -4
- data/vendor/cmock/vendor/c_exception/Gemfile.lock +12 -12
- data/vendor/cmock/vendor/c_exception/README.md +249 -162
- data/vendor/cmock/vendor/c_exception/docs/CException.md +332 -292
- data/vendor/cmock/vendor/c_exception/docs/ThrowTheSwitchCodingStandard.md +207 -207
- data/vendor/cmock/vendor/c_exception/lib/CException.c +46 -46
- data/vendor/cmock/vendor/c_exception/lib/CException.h +115 -115
- data/vendor/cmock/vendor/c_exception/lib/meson.build +11 -0
- data/vendor/cmock/vendor/c_exception/meson.build +48 -0
- data/vendor/cmock/vendor/c_exception/project.yml +37 -0
- data/vendor/cmock/vendor/c_exception/test/TestException.c +391 -391
- data/vendor/{c_exception/test → cmock/vendor/c_exception/test/support}/CExceptionConfig.h +46 -46
- data/vendor/cmock/vendor/c_exception/vendor/unity/README.md +220 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +118 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +39 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_config.yml +36 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_module.rb +308 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +437 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/parse_output.rb +220 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/stylize_as_junit.rb +252 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +25 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/type_sanitizer.rb +6 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.py +139 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +136 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/auto/unity_to_junit.py +146 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +207 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityAssertionsReference.md +716 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityConfigurationGuide.md +398 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityGettingStartedGuide.md +191 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/docs/UnityHelperScriptsGuide.md +242 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/docs/license.txt +21 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/makefile +71 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/readme.txt +5 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.c +24 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode.h +3 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.c +11 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/makefile +70 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/readme.txt +5 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.c +24 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode.h +3 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.c +11 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile.rb +43 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/rakefile_helper.rb +249 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/readme.txt +13 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.c +24 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode.h +3 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.c +11 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/target_gcc_32.yml +46 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/examples/unity_config.h +237 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
- data/vendor/cmock/vendor/{unity → c_exception/vendor/unity}/extras/fixture/rakefile.rb +48 -44
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +178 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +9 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +432 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +83 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +51 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +47 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/Makefile +74 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +22 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/template_fixture_tests.c +39 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +543 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +57 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +57 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +17 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/release/build.info +2 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/release/version.info +2 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.c +1517 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity.h +339 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/src/unity_internals.h +784 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/Makefile +63 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +61 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +57 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.c +55 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_head1.h +15 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +80 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +76 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_head1.h +13 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +89 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +89 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +77 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +89 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +89 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +90 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +67 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +70 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +58 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +67 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +70 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +71 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/rakefile +125 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/rakefile_helper.rb +260 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/clang_file.yml +78 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/clang_strict.yml +78 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_32.yml +49 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_64.yml +50 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_auto_limits.yml +47 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_auto_stdint.yml +59 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/gcc_manual_math.yml +47 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/hitech_picc18.yml +101 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_arm_v4.yml +90 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5.yml +80 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_arm_v5_3.yml +80 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +94 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_cortexm3_v5.yml +84 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_msp430.yml +95 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/targets/iar_sh2a_v6.yml +86 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/CException.h +11 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/Defs.h +8 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/cmock.h +14 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/mockMock.h +13 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGenerator.c +183 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +67 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +192 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/tests/test_generate_test_runner.rb +1252 -0
- data/vendor/cmock/vendor/c_exception/vendor/unity/test/tests/testparameterized.c +110 -0
- data/vendor/cmock/vendor/{unity → c_exception/vendor/unity}/test/tests/testunity.c +4993 -8168
- data/vendor/cmock/vendor/unity/CMakeLists.txt +133 -31
- data/vendor/cmock/vendor/unity/LICENSE.txt +21 -21
- data/vendor/cmock/vendor/unity/README.md +191 -191
- data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +119 -119
- data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +39 -39
- data/vendor/cmock/vendor/unity/auto/generate_config.yml +36 -36
- data/vendor/cmock/vendor/unity/auto/generate_module.rb +312 -309
- data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +511 -495
- data/vendor/cmock/vendor/unity/auto/parse_output.rb +322 -322
- data/vendor/cmock/vendor/unity/auto/run_test.erb +37 -36
- data/vendor/cmock/vendor/unity/auto/stylize_as_junit.rb +251 -251
- data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +25 -25
- data/vendor/cmock/vendor/unity/auto/type_sanitizer.rb +6 -6
- data/vendor/cmock/vendor/unity/auto/unity_test_summary.py +139 -139
- data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +135 -135
- data/vendor/cmock/vendor/unity/auto/unity_to_junit.py +146 -146
- data/vendor/cmock/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +206 -206
- data/vendor/cmock/vendor/unity/docs/UnityAssertionsReference.md +831 -850
- data/vendor/cmock/vendor/unity/docs/UnityConfigurationGuide.md +563 -541
- data/vendor/cmock/vendor/unity/docs/UnityGettingStartedGuide.md +251 -251
- data/vendor/cmock/vendor/unity/docs/UnityHelperScriptsGuide.md +278 -266
- data/vendor/cmock/vendor/unity/examples/example_1/makefile +72 -72
- data/vendor/cmock/vendor/unity/examples/example_1/readme.txt +4 -4
- data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.c +24 -24
- data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode.h +3 -3
- data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.c +11 -11
- data/vendor/cmock/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -2
- data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -62
- data/vendor/cmock/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -31
- data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -53
- data/vendor/cmock/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -57
- data/vendor/cmock/vendor/unity/examples/example_2/makefile +71 -71
- data/vendor/cmock/vendor/unity/examples/example_2/readme.txt +4 -4
- data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.c +24 -24
- data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode.h +3 -3
- data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.c +11 -11
- data/vendor/cmock/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -2
- data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -64
- data/vendor/cmock/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -33
- data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +8 -8
- data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +10 -10
- data/vendor/cmock/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -12
- data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -10
- data/vendor/cmock/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -12
- data/vendor/cmock/vendor/unity/examples/example_3/rakefile.rb +38 -38
- data/vendor/cmock/vendor/unity/examples/example_3/rakefile_helper.rb +250 -250
- data/vendor/cmock/vendor/unity/examples/example_3/readme.txt +13 -13
- data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.c +24 -24
- data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode.h +3 -3
- data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.c +11 -11
- data/vendor/cmock/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -2
- data/vendor/cmock/vendor/unity/examples/example_3/target_gcc_32.yml +47 -47
- data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -62
- data/vendor/cmock/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -31
- data/vendor/cmock/vendor/unity/examples/example_4/meson.build +12 -17
- data/vendor/cmock/vendor/unity/examples/example_4/readme.txt +14 -14
- data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode.c +24 -24
- data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode.h +3 -3
- data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode2.c +11 -11
- data/vendor/cmock/vendor/unity/examples/example_4/src/ProductionCode2.h +2 -2
- data/vendor/cmock/vendor/unity/examples/example_4/src/meson.build +16 -21
- data/vendor/cmock/vendor/unity/examples/example_4/subprojects/unity.wrap +4 -4
- data/vendor/cmock/vendor/unity/examples/example_4/test/TestProductionCode.c +63 -63
- data/vendor/cmock/vendor/unity/examples/example_4/test/TestProductionCode2.c +35 -35
- data/vendor/cmock/vendor/unity/examples/example_4/test/meson.build +7 -12
- data/vendor/cmock/vendor/unity/examples/example_4/test/test_runners/TestProductionCode2_Runner.c +53 -53
- data/vendor/cmock/vendor/unity/examples/example_4/test/test_runners/TestProductionCode_Runner.c +57 -57
- data/vendor/cmock/vendor/unity/examples/example_4/test/test_runners/meson.build +13 -16
- data/vendor/cmock/vendor/unity/examples/unity_config.h +244 -263
- data/vendor/cmock/vendor/unity/extras/eclipse/error_parsers.txt +26 -26
- data/vendor/cmock/vendor/unity/extras/fixture/readme.md +29 -17
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +310 -275
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +83 -83
- data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +50 -50
- data/vendor/cmock/vendor/unity/extras/fixture/test/Makefile +72 -72
- data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +20 -20
- data/vendor/cmock/vendor/unity/extras/fixture/test/template_fixture_tests.c +39 -39
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +245 -245
- data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +32 -32
- data/vendor/cmock/vendor/unity/extras/memory/readme.md +49 -49
- data/vendor/cmock/vendor/unity/extras/memory/src/unity_memory.c +202 -202
- data/vendor/cmock/vendor/unity/extras/memory/src/unity_memory.h +60 -60
- data/vendor/cmock/vendor/unity/extras/memory/test/Makefile +78 -78
- data/vendor/cmock/vendor/unity/extras/memory/test/unity_memory_Test.c +325 -325
- data/vendor/cmock/vendor/unity/extras/memory/test/unity_memory_TestRunner.c +49 -49
- data/vendor/cmock/vendor/unity/extras/memory/test/unity_output_Spy.c +56 -56
- data/vendor/cmock/vendor/unity/extras/memory/test/unity_output_Spy.h +16 -16
- data/vendor/cmock/vendor/unity/meson.build +48 -69
- data/vendor/cmock/vendor/unity/src/meson.build +11 -16
- data/vendor/cmock/vendor/unity/src/unity.c +2109 -2085
- data/vendor/cmock/vendor/unity/src/unity.h +661 -617
- data/vendor/cmock/vendor/unity/src/unity_internals.h +1030 -1002
- data/vendor/cmock/vendor/unity/test/Makefile +159 -67
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +61 -61
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +57 -57
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.c +55 -55
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_head1.h +15 -15
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +80 -80
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +76 -76
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -75
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_head1.h +13 -13
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +89 -89
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +89 -89
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +77 -77
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +89 -89
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +89 -89
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +90 -90
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +67 -67
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +70 -70
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +58 -58
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +67 -67
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +70 -70
- data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +71 -71
- data/vendor/cmock/vendor/unity/test/rakefile +163 -124
- data/vendor/cmock/vendor/unity/test/rakefile_helper.rb +315 -269
- data/vendor/cmock/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -158
- data/vendor/cmock/vendor/unity/test/targets/ansi.yml +44 -49
- data/vendor/cmock/vendor/unity/test/targets/clang_file.yml +72 -78
- data/vendor/cmock/vendor/unity/test/targets/clang_strict.yml +71 -78
- data/vendor/cmock/vendor/unity/test/targets/gcc_32.yml +45 -49
- data/vendor/cmock/vendor/unity/test/targets/gcc_64.yml +46 -50
- data/vendor/cmock/vendor/unity/test/targets/gcc_auto_limits.yml +43 -47
- data/vendor/cmock/vendor/unity/test/targets/gcc_auto_stdint.yml +55 -59
- data/vendor/cmock/vendor/unity/test/targets/gcc_manual_math.yml +43 -47
- data/vendor/cmock/vendor/unity/test/targets/hitech_picc18.yml +91 -101
- data/vendor/cmock/vendor/unity/test/targets/iar_arm_v4.yml +98 -90
- data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5.yml +92 -80
- data/vendor/cmock/vendor/unity/test/targets/iar_arm_v5_3.yml +92 -80
- data/vendor/cmock/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +90 -94
- data/vendor/cmock/vendor/unity/test/targets/iar_cortexm3_v5.yml +94 -84
- data/vendor/cmock/vendor/unity/test/targets/iar_msp430.yml +112 -95
- data/vendor/cmock/vendor/unity/test/targets/iar_sh2a_v6.yml +99 -86
- data/vendor/cmock/vendor/unity/test/testdata/CException.h +11 -11
- data/vendor/cmock/vendor/unity/test/testdata/Defs.h +8 -8
- data/vendor/cmock/vendor/unity/test/testdata/cmock.h +14 -14
- data/vendor/cmock/vendor/unity/test/testdata/mockMock.h +13 -13
- data/vendor/cmock/vendor/unity/test/testdata/testRunnerGenerator.c +189 -189
- data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +70 -70
- data/vendor/cmock/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +197 -197
- data/vendor/cmock/vendor/unity/test/tests/self_assessment_utils.h +144 -0
- data/vendor/cmock/vendor/unity/test/tests/test_generate_test_runner.rb +1260 -1268
- data/vendor/cmock/vendor/unity/test/tests/test_unity_arrays.c +2874 -0
- data/vendor/cmock/vendor/unity/test/tests/test_unity_core.c +371 -0
- data/vendor/cmock/vendor/unity/test/tests/test_unity_doubles.c +773 -0
- data/vendor/cmock/vendor/unity/test/tests/test_unity_floats.c +884 -0
- data/vendor/cmock/vendor/unity/test/tests/test_unity_integers.c +2847 -0
- data/vendor/cmock/vendor/unity/test/tests/test_unity_integers_64.c +773 -0
- data/vendor/cmock/vendor/unity/test/tests/test_unity_memory.c +81 -0
- data/vendor/{unity/test/tests/testparameterized.c → cmock/vendor/unity/test/tests/test_unity_parameterized.c} +171 -171
- data/vendor/cmock/vendor/unity/test/tests/test_unity_strings.c +329 -0
- data/vendor/cmock/vendor/unity/unityConfig.cmake +1 -0
- data/vendor/deep_merge/MIT-LICENSE +20 -20
- data/vendor/deep_merge/README +94 -94
- data/vendor/deep_merge/Rakefile +28 -28
- data/vendor/deep_merge/lib/deep_merge.rb +211 -211
- data/vendor/deep_merge/test/test_deep_merge.rb +553 -553
- data/vendor/diy/History.txt +28 -28
- data/vendor/diy/README.rdoc +233 -233
- data/vendor/diy/Rakefile +33 -33
- data/vendor/diy/TODO.txt +9 -9
- data/vendor/diy/diy.gemspec +131 -131
- data/vendor/diy/lib/diy.rb +403 -403
- data/vendor/diy/lib/diy/factory.rb +36 -36
- data/vendor/diy/sample_code/car.rb +7 -7
- data/vendor/diy/sample_code/chassis.rb +5 -5
- data/vendor/diy/sample_code/diy_example.rb +26 -26
- data/vendor/diy/sample_code/engine.rb +5 -5
- data/vendor/diy/sample_code/objects.yml +10 -10
- data/vendor/diy/test/constructor.rb +119 -119
- data/vendor/diy/test/diy_test.rb +608 -608
- data/vendor/diy/test/factory_test.rb +79 -79
- data/vendor/diy/test/files/broken_construction.yml +7 -7
- data/vendor/diy/test/files/cat/cat.rb +3 -3
- data/vendor/diy/test/files/cat/extra_conflict.yml +5 -5
- data/vendor/diy/test/files/cat/heritage.rb +2 -2
- data/vendor/diy/test/files/cat/needs_input.yml +3 -3
- data/vendor/diy/test/files/cat/the_cat_lineage.rb +1 -1
- data/vendor/diy/test/files/dog/dog_model.rb +3 -3
- data/vendor/diy/test/files/dog/dog_presenter.rb +3 -3
- data/vendor/diy/test/files/dog/dog_view.rb +2 -2
- data/vendor/diy/test/files/dog/file_resolver.rb +2 -2
- data/vendor/diy/test/files/dog/other_thing.rb +2 -2
- data/vendor/diy/test/files/dog/simple.yml +11 -11
- data/vendor/diy/test/files/donkey/foo.rb +8 -8
- data/vendor/diy/test/files/donkey/foo/bar/qux.rb +7 -7
- data/vendor/diy/test/files/factory/beef.rb +5 -5
- data/vendor/diy/test/files/factory/dog.rb +6 -6
- data/vendor/diy/test/files/factory/factory.yml +19 -19
- data/vendor/diy/test/files/factory/farm/llama.rb +7 -7
- data/vendor/diy/test/files/factory/farm/pork.rb +7 -7
- data/vendor/diy/test/files/factory/kitten.rb +13 -13
- data/vendor/diy/test/files/fud/objects.yml +13 -13
- data/vendor/diy/test/files/fud/toy.rb +14 -14
- data/vendor/diy/test/files/functions/attached_things_builder.rb +1 -1
- data/vendor/diy/test/files/functions/invalid_method.yml +4 -4
- data/vendor/diy/test/files/functions/method_extractor.rb +2 -2
- data/vendor/diy/test/files/functions/nonsingleton_objects.yml +5 -5
- data/vendor/diy/test/files/functions/objects.yml +21 -21
- data/vendor/diy/test/files/functions/thing.rb +2 -2
- data/vendor/diy/test/files/functions/thing_builder.rb +24 -24
- data/vendor/diy/test/files/functions/things_builder.rb +2 -2
- data/vendor/diy/test/files/gnu/objects.yml +14 -14
- data/vendor/diy/test/files/gnu/thinger.rb +7 -7
- data/vendor/diy/test/files/goat/base.rb +8 -8
- data/vendor/diy/test/files/goat/can.rb +6 -6
- data/vendor/diy/test/files/goat/goat.rb +6 -6
- data/vendor/diy/test/files/goat/objects.yml +12 -12
- data/vendor/diy/test/files/goat/paper.rb +6 -6
- data/vendor/diy/test/files/goat/plane.rb +7 -7
- data/vendor/diy/test/files/goat/shirt.rb +6 -6
- data/vendor/diy/test/files/goat/wings.rb +8 -8
- data/vendor/diy/test/files/horse/holder_thing.rb +3 -3
- data/vendor/diy/test/files/horse/objects.yml +7 -7
- data/vendor/diy/test/files/namespace/animal/bird.rb +5 -5
- data/vendor/diy/test/files/namespace/animal/cat.rb +5 -5
- data/vendor/diy/test/files/namespace/animal/reptile/hardshell/turtle.rb +8 -8
- data/vendor/diy/test/files/namespace/animal/reptile/lizard.rb +7 -7
- data/vendor/diy/test/files/namespace/bad_module_specified.yml +8 -8
- data/vendor/diy/test/files/namespace/class_name_combine.yml +8 -8
- data/vendor/diy/test/files/namespace/no_module_specified.yml +8 -8
- data/vendor/diy/test/files/namespace/objects.yml +21 -21
- data/vendor/diy/test/files/namespace/road.rb +2 -2
- data/vendor/diy/test/files/namespace/sky.rb +2 -2
- data/vendor/diy/test/files/namespace/subcontext.yml +22 -22
- data/vendor/diy/test/files/non_singleton/air.rb +2 -2
- data/vendor/diy/test/files/non_singleton/fat_cat.rb +3 -3
- data/vendor/diy/test/files/non_singleton/objects.yml +19 -19
- data/vendor/diy/test/files/non_singleton/pig.rb +3 -3
- data/vendor/diy/test/files/non_singleton/thread_spinner.rb +3 -3
- data/vendor/diy/test/files/non_singleton/tick.rb +3 -3
- data/vendor/diy/test/files/non_singleton/yard.rb +2 -2
- data/vendor/diy/test/files/yak/core_model.rb +3 -3
- data/vendor/diy/test/files/yak/core_presenter.rb +3 -3
- data/vendor/diy/test/files/yak/core_view.rb +1 -1
- data/vendor/diy/test/files/yak/data_source.rb +1 -1
- data/vendor/diy/test/files/yak/fringe_model.rb +3 -3
- data/vendor/diy/test/files/yak/fringe_presenter.rb +3 -3
- data/vendor/diy/test/files/yak/fringe_view.rb +1 -1
- data/vendor/diy/test/files/yak/giant_squid.rb +3 -3
- data/vendor/diy/test/files/yak/krill.rb +2 -2
- data/vendor/diy/test/files/yak/my_objects.yml +21 -21
- data/vendor/diy/test/files/yak/sub_sub_context_test.yml +27 -27
- data/vendor/diy/test/test_helper.rb +55 -55
- data/vendor/hardmock/CHANGES +78 -78
- data/vendor/hardmock/LICENSE +7 -7
- data/vendor/hardmock/README +70 -70
- data/vendor/hardmock/Rakefile +8 -8
- data/vendor/hardmock/config/environment.rb +12 -12
- data/vendor/hardmock/lib/assert_error.rb +23 -23
- data/vendor/hardmock/lib/extend_test_unit.rb +14 -14
- data/vendor/hardmock/lib/hardmock.rb +86 -86
- data/vendor/hardmock/lib/hardmock/errors.rb +22 -22
- data/vendor/hardmock/lib/hardmock/expectation.rb +229 -229
- data/vendor/hardmock/lib/hardmock/expectation_builder.rb +9 -9
- data/vendor/hardmock/lib/hardmock/expector.rb +26 -26
- data/vendor/hardmock/lib/hardmock/method_cleanout.rb +33 -33
- data/vendor/hardmock/lib/hardmock/mock.rb +180 -180
- data/vendor/hardmock/lib/hardmock/mock_control.rb +53 -53
- data/vendor/hardmock/lib/hardmock/stubbing.rb +210 -210
- data/vendor/hardmock/lib/hardmock/trapper.rb +31 -31
- data/vendor/hardmock/lib/hardmock/utils.rb +9 -9
- data/vendor/hardmock/lib/test_unit_before_after.rb +169 -169
- data/vendor/hardmock/rake_tasks/rdoc.rake +19 -19
- data/vendor/hardmock/rake_tasks/rdoc_options.rb +4 -4
- data/vendor/hardmock/rake_tasks/test.rake +22 -22
- data/vendor/hardmock/test/functional/assert_error_test.rb +52 -52
- data/vendor/hardmock/test/functional/auto_verify_test.rb +178 -178
- data/vendor/hardmock/test/functional/direct_mock_usage_test.rb +396 -396
- data/vendor/hardmock/test/functional/hardmock_test.rb +434 -434
- data/vendor/hardmock/test/functional/stubbing_test.rb +479 -479
- data/vendor/hardmock/test/test_helper.rb +43 -43
- data/vendor/hardmock/test/unit/expectation_builder_test.rb +19 -19
- data/vendor/hardmock/test/unit/expectation_test.rb +372 -372
- data/vendor/hardmock/test/unit/expector_test.rb +57 -57
- data/vendor/hardmock/test/unit/method_cleanout_test.rb +36 -36
- data/vendor/hardmock/test/unit/mock_control_test.rb +175 -175
- data/vendor/hardmock/test/unit/mock_test.rb +279 -279
- data/vendor/hardmock/test/unit/test_unit_before_after_test.rb +452 -452
- data/vendor/hardmock/test/unit/trapper_test.rb +62 -62
- data/vendor/hardmock/test/unit/verify_error_test.rb +40 -40
- data/vendor/unity/CMakeLists.txt +133 -31
- data/vendor/unity/LICENSE.txt +21 -21
- data/vendor/unity/README.md +191 -191
- data/vendor/unity/auto/colour_prompt.rb +119 -119
- data/vendor/unity/auto/colour_reporter.rb +39 -39
- data/vendor/unity/auto/generate_config.yml +36 -36
- data/vendor/unity/auto/generate_module.rb +312 -309
- data/vendor/unity/auto/generate_test_runner.rb +511 -495
- data/vendor/unity/auto/parse_output.rb +322 -322
- data/vendor/unity/auto/run_test.erb +37 -36
- data/vendor/unity/auto/stylize_as_junit.rb +251 -251
- data/vendor/unity/auto/test_file_filter.rb +25 -25
- data/vendor/unity/auto/type_sanitizer.rb +6 -6
- data/vendor/unity/auto/unity_test_summary.py +139 -139
- data/vendor/unity/auto/unity_test_summary.rb +135 -135
- data/vendor/unity/auto/unity_to_junit.py +146 -146
- data/vendor/unity/docs/ThrowTheSwitchCodingStandard.md +206 -206
- data/vendor/unity/docs/UnityAssertionsReference.md +831 -850
- data/vendor/unity/docs/UnityConfigurationGuide.md +563 -541
- data/vendor/unity/docs/UnityGettingStartedGuide.md +251 -251
- data/vendor/unity/docs/UnityHelperScriptsGuide.md +278 -266
- data/vendor/unity/examples/example_1/makefile +72 -72
- data/vendor/unity/examples/example_1/readme.txt +4 -4
- data/vendor/unity/examples/example_1/src/ProductionCode.c +24 -24
- data/vendor/unity/examples/example_1/src/ProductionCode.h +3 -3
- data/vendor/unity/examples/example_1/src/ProductionCode2.c +11 -11
- data/vendor/unity/examples/example_1/src/ProductionCode2.h +2 -2
- data/vendor/unity/examples/example_1/test/TestProductionCode.c +62 -62
- data/vendor/unity/examples/example_1/test/TestProductionCode2.c +31 -31
- data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -53
- data/vendor/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -57
- data/vendor/unity/examples/example_2/makefile +71 -71
- data/vendor/unity/examples/example_2/readme.txt +4 -4
- data/vendor/unity/examples/example_2/src/ProductionCode.c +24 -24
- data/vendor/unity/examples/example_2/src/ProductionCode.h +3 -3
- data/vendor/unity/examples/example_2/src/ProductionCode2.c +11 -11
- data/vendor/unity/examples/example_2/src/ProductionCode2.h +2 -2
- data/vendor/unity/examples/example_2/test/TestProductionCode.c +64 -64
- data/vendor/unity/examples/example_2/test/TestProductionCode2.c +33 -33
- data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +8 -8
- data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +10 -10
- data/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -12
- data/vendor/unity/examples/example_3/helper/UnityHelper.c +10 -10
- data/vendor/unity/examples/example_3/helper/UnityHelper.h +12 -12
- data/vendor/unity/examples/example_3/rakefile.rb +38 -38
- data/vendor/unity/examples/example_3/rakefile_helper.rb +250 -250
- data/vendor/unity/examples/example_3/readme.txt +13 -13
- data/vendor/unity/examples/example_3/src/ProductionCode.c +24 -24
- data/vendor/unity/examples/example_3/src/ProductionCode.h +3 -3
- data/vendor/unity/examples/example_3/src/ProductionCode2.c +11 -11
- data/vendor/unity/examples/example_3/src/ProductionCode2.h +2 -2
- data/vendor/unity/examples/example_3/target_gcc_32.yml +47 -47
- data/vendor/unity/examples/example_3/test/TestProductionCode.c +62 -62
- data/vendor/unity/examples/example_3/test/TestProductionCode2.c +31 -31
- data/vendor/unity/examples/example_4/meson.build +12 -17
- data/vendor/unity/examples/example_4/readme.txt +14 -14
- data/vendor/unity/examples/example_4/src/ProductionCode.c +24 -24
- data/vendor/unity/examples/example_4/src/ProductionCode.h +3 -3
- data/vendor/unity/examples/example_4/src/ProductionCode2.c +11 -11
- data/vendor/unity/examples/example_4/src/ProductionCode2.h +2 -2
- data/vendor/unity/examples/example_4/src/meson.build +16 -21
- data/vendor/unity/examples/example_4/subprojects/unity.wrap +4 -4
- data/vendor/unity/examples/example_4/test/TestProductionCode.c +63 -63
- data/vendor/unity/examples/example_4/test/TestProductionCode2.c +35 -35
- data/vendor/unity/examples/example_4/test/meson.build +7 -12
- data/vendor/unity/examples/example_4/test/test_runners/TestProductionCode2_Runner.c +53 -53
- data/vendor/unity/examples/example_4/test/test_runners/TestProductionCode_Runner.c +57 -57
- data/vendor/unity/examples/example_4/test/test_runners/meson.build +13 -16
- data/vendor/unity/examples/unity_config.h +244 -263
- data/vendor/unity/extras/eclipse/error_parsers.txt +26 -26
- data/vendor/unity/extras/fixture/readme.md +29 -17
- data/vendor/unity/extras/fixture/src/unity_fixture.c +310 -275
- data/vendor/unity/extras/fixture/src/unity_fixture.h +83 -83
- data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +50 -50
- data/vendor/unity/extras/fixture/test/Makefile +72 -72
- data/vendor/unity/extras/fixture/test/main/AllTests.c +20 -20
- data/vendor/unity/extras/fixture/test/template_fixture_tests.c +39 -39
- data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +245 -245
- data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +32 -32
- data/vendor/unity/extras/memory/readme.md +49 -49
- data/vendor/unity/extras/memory/src/unity_memory.c +202 -202
- data/vendor/unity/extras/memory/src/unity_memory.h +60 -60
- data/vendor/unity/extras/memory/test/Makefile +78 -78
- data/vendor/unity/extras/memory/test/unity_memory_Test.c +325 -325
- data/vendor/unity/extras/memory/test/unity_memory_TestRunner.c +49 -49
- data/vendor/unity/extras/memory/test/unity_output_Spy.c +56 -56
- data/vendor/unity/extras/memory/test/unity_output_Spy.h +16 -16
- data/vendor/unity/meson.build +48 -69
- data/vendor/unity/src/meson.build +11 -16
- data/vendor/unity/src/unity.c +2109 -2085
- data/vendor/unity/src/unity.h +661 -617
- data/vendor/unity/src/unity_internals.h +1030 -1002
- data/vendor/unity/test/Makefile +159 -67
- data/vendor/unity/test/expectdata/testsample_cmd.c +61 -61
- data/vendor/unity/test/expectdata/testsample_def.c +57 -57
- data/vendor/unity/test/expectdata/testsample_head1.c +55 -55
- data/vendor/unity/test/expectdata/testsample_head1.h +15 -15
- data/vendor/unity/test/expectdata/testsample_mock_cmd.c +80 -80
- data/vendor/unity/test/expectdata/testsample_mock_def.c +76 -76
- data/vendor/unity/test/expectdata/testsample_mock_head1.c +75 -75
- data/vendor/unity/test/expectdata/testsample_mock_head1.h +13 -13
- data/vendor/unity/test/expectdata/testsample_mock_new1.c +89 -89
- data/vendor/unity/test/expectdata/testsample_mock_new2.c +89 -89
- data/vendor/unity/test/expectdata/testsample_mock_param.c +77 -77
- data/vendor/unity/test/expectdata/testsample_mock_run1.c +89 -89
- data/vendor/unity/test/expectdata/testsample_mock_run2.c +89 -89
- data/vendor/unity/test/expectdata/testsample_mock_yaml.c +90 -90
- data/vendor/unity/test/expectdata/testsample_new1.c +67 -67
- data/vendor/unity/test/expectdata/testsample_new2.c +70 -70
- data/vendor/unity/test/expectdata/testsample_param.c +58 -58
- data/vendor/unity/test/expectdata/testsample_run1.c +67 -67
- data/vendor/unity/test/expectdata/testsample_run2.c +70 -70
- data/vendor/unity/test/expectdata/testsample_yaml.c +71 -71
- data/vendor/unity/test/rakefile +163 -124
- data/vendor/unity/test/rakefile_helper.rb +315 -269
- data/vendor/unity/test/spec/generate_module_existing_file_spec.rb +158 -158
- data/vendor/unity/test/targets/ansi.yml +44 -49
- data/vendor/unity/test/targets/clang_file.yml +72 -78
- data/vendor/unity/test/targets/clang_strict.yml +71 -78
- data/vendor/unity/test/targets/gcc_32.yml +45 -49
- data/vendor/unity/test/targets/gcc_64.yml +46 -50
- data/vendor/unity/test/targets/gcc_auto_limits.yml +43 -47
- data/vendor/unity/test/targets/gcc_auto_stdint.yml +55 -59
- data/vendor/unity/test/targets/gcc_manual_math.yml +43 -47
- data/vendor/unity/test/targets/hitech_picc18.yml +91 -101
- data/vendor/unity/test/targets/iar_arm_v4.yml +98 -90
- data/vendor/unity/test/targets/iar_arm_v5.yml +92 -80
- data/vendor/unity/test/targets/iar_arm_v5_3.yml +92 -80
- data/vendor/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +90 -94
- data/vendor/unity/test/targets/iar_cortexm3_v5.yml +94 -84
- data/vendor/unity/test/targets/iar_msp430.yml +112 -95
- data/vendor/unity/test/targets/iar_sh2a_v6.yml +99 -86
- data/vendor/unity/test/testdata/CException.h +11 -11
- data/vendor/unity/test/testdata/Defs.h +8 -8
- data/vendor/unity/test/testdata/cmock.h +14 -14
- data/vendor/unity/test/testdata/mockMock.h +13 -13
- data/vendor/unity/test/testdata/testRunnerGenerator.c +189 -189
- data/vendor/unity/test/testdata/testRunnerGeneratorSmall.c +70 -70
- data/vendor/unity/test/testdata/testRunnerGeneratorWithMocks.c +197 -197
- data/vendor/unity/test/tests/self_assessment_utils.h +144 -0
- data/vendor/unity/test/tests/test_generate_test_runner.rb +1260 -1268
- data/vendor/unity/test/tests/test_unity_arrays.c +2874 -0
- data/vendor/unity/test/tests/test_unity_core.c +371 -0
- data/vendor/unity/test/tests/test_unity_doubles.c +773 -0
- data/vendor/unity/test/tests/test_unity_floats.c +884 -0
- data/vendor/unity/test/tests/test_unity_integers.c +2847 -0
- data/vendor/unity/test/tests/test_unity_integers_64.c +773 -0
- data/vendor/unity/test/tests/test_unity_memory.c +81 -0
- data/vendor/{cmock/vendor/unity/test/tests/testparameterized.c → unity/test/tests/test_unity_parameterized.c} +171 -171
- data/vendor/unity/test/tests/test_unity_strings.c +329 -0
- data/vendor/unity/unityConfig.cmake +1 -0
- metadata +225 -62
- data/ceedling.sublime-project +0 -28
- data/ceedling.sublime-workspace +0 -1276
- data/docs/CeedlingPacket.odt +0 -0
- data/docs/CeedlingPacket.pdf +0 -0
- data/plugins/bullseye/readme.txt +0 -0
- data/vendor/c_exception/LICENSE.txt +0 -30
- data/vendor/c_exception/Rakefile +0 -42
- data/vendor/c_exception/makefile +0 -24
- data/vendor/c_exception/test/TestException_Runner.c +0 -67
- data/vendor/cmock/vendor/c_exception/LICENSE.txt +0 -30
- data/vendor/cmock/vendor/c_exception/Rakefile +0 -42
- data/vendor/cmock/vendor/c_exception/makefile +0 -24
- data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +0 -67
- data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +0 -183
- data/vendor/cmock/vendor/unity/extras/memory/rakefile.rb +0 -45
- data/vendor/cmock/vendor/unity/extras/memory/rakefile_helper.rb +0 -187
- data/vendor/cmock/vendor/unity/src/CMakeLists.txt +0 -22
- data/vendor/unity/extras/fixture/rakefile.rb +0 -44
- data/vendor/unity/extras/fixture/rakefile_helper.rb +0 -183
- data/vendor/unity/extras/memory/rakefile.rb +0 -45
- data/vendor/unity/extras/memory/rakefile_helper.rb +0 -187
- data/vendor/unity/src/CMakeLists.txt +0 -22
- data/vendor/unity/test/tests/testunity.c +0 -8168
@@ -1,191 +1,191 @@
|
|
1
|
-
# Unity - Getting Started
|
2
|
-
|
3
|
-
## Welcome
|
4
|
-
|
5
|
-
Congratulations. You're now the proud owner of your very own pile of bits! What
|
6
|
-
are you going to do with all these ones and zeros? This document should be able
|
7
|
-
to help you decide just that.
|
8
|
-
|
9
|
-
Unity is a unit test framework. The goal has been to keep it small and
|
10
|
-
functional. The core Unity test framework is three files: a single C file and a
|
11
|
-
couple header files. These team up to provide functions and macros to make
|
12
|
-
testing easier.
|
13
|
-
|
14
|
-
Unity was designed to be cross platform. It works hard to stick with C standards
|
15
|
-
while still providing support for the many embedded C compilers that bend the
|
16
|
-
rules. Unity has been used with many compilers, including GCC, IAR, Clang,
|
17
|
-
Green Hills, Microchip, and MS Visual Studio. It's not much work to get it to
|
18
|
-
work with a new target.
|
19
|
-
|
20
|
-
|
21
|
-
### Overview of the Documents
|
22
|
-
|
23
|
-
#### Unity Assertions reference
|
24
|
-
|
25
|
-
This document will guide you through all the assertion options provided by
|
26
|
-
Unity. This is going to be your unit testing bread and butter. You'll spend more
|
27
|
-
time with assertions than any other part of Unity.
|
28
|
-
|
29
|
-
|
30
|
-
#### Unity Assertions Cheat Sheet
|
31
|
-
|
32
|
-
This document contains an abridged summary of the assertions described in the
|
33
|
-
previous document. It's perfect for printing and referencing while you
|
34
|
-
familiarize yourself with Unity's options.
|
35
|
-
|
36
|
-
|
37
|
-
#### Unity Configuration Guide
|
38
|
-
|
39
|
-
This document is the one to reference when you are going to use Unity with a new
|
40
|
-
target or compiler. It'll guide you through the configuration options and will
|
41
|
-
help you customize your testing experience to meet your needs.
|
42
|
-
|
43
|
-
|
44
|
-
#### Unity Helper Scripts
|
45
|
-
|
46
|
-
This document describes the helper scripts that are available for simplifying
|
47
|
-
your testing workflow. It describes the collection of optional Ruby scripts
|
48
|
-
included in the auto directory of your Unity installation. Neither Ruby nor
|
49
|
-
these scripts are necessary for using Unity. They are provided as a convenience
|
50
|
-
for those who wish to use them.
|
51
|
-
|
52
|
-
|
53
|
-
#### Unity License
|
54
|
-
|
55
|
-
What's an open source project without a license file? This brief document
|
56
|
-
describes the terms you're agreeing to when you use this software. Basically, we
|
57
|
-
want it to be useful to you in whatever context you want to use it, but please
|
58
|
-
don't blame us if you run into problems.
|
59
|
-
|
60
|
-
|
61
|
-
### Overview of the Folders
|
62
|
-
|
63
|
-
If you have obtained Unity through Github or something similar, you might be
|
64
|
-
surprised by just how much stuff you suddenly have staring you in the face.
|
65
|
-
Don't worry, Unity itself is very small. The rest of it is just there to make
|
66
|
-
your life easier. You can ignore it or use it at your convenience. Here's an
|
67
|
-
overview of everything in the project.
|
68
|
-
|
69
|
-
- `src` - This is the code you care about! This folder contains a C file and two
|
70
|
-
header files. These three files _are_ Unity.
|
71
|
-
- `docs` - You're reading this document, so it's possible you have found your way
|
72
|
-
into this folder already. This is where all the handy documentation can be
|
73
|
-
found.
|
74
|
-
- `examples` - This contains a few examples of using Unity.
|
75
|
-
- `extras` - These are optional add ons to Unity that are not part of the core
|
76
|
-
project. If you've reached us through James Grenning's book, you're going to
|
77
|
-
want to look here.
|
78
|
-
- `test` - This is how Unity and its scripts are all tested. If you're just using
|
79
|
-
Unity, you'll likely never need to go in here. If you are the lucky team member
|
80
|
-
who gets to port Unity to a new toolchain, this is a good place to verify
|
81
|
-
everything is configured properly.
|
82
|
-
- `auto` - Here you will find helpful Ruby scripts for simplifying your test
|
83
|
-
workflow. They are purely optional and are not required to make use of Unity.
|
84
|
-
|
85
|
-
|
86
|
-
## How to Create A Test File
|
87
|
-
|
88
|
-
Test files are C files. Most often you will create a single test file for each C
|
89
|
-
module that you want to test. The test file should include unity.h and the
|
90
|
-
header for your C module to be tested.
|
91
|
-
|
92
|
-
Next, a test file will include a `setUp()` and `tearDown()` function. The setUp
|
93
|
-
function can contain anything you would like to run before each test. The
|
94
|
-
tearDown function can contain anything you would like to run after each test.
|
95
|
-
Both functions accept no arguments and return nothing. You may leave either or
|
96
|
-
both of these blank if you have no need for them. If you're using a compiler
|
97
|
-
that is configured to make these functions optional, you may leave them off
|
98
|
-
completely. Not sure? Give it a try. If you compiler complains that it can't
|
99
|
-
find setUp or tearDown when it links, you'll know you need to at least include
|
100
|
-
an empty function for these.
|
101
|
-
|
102
|
-
The majority of the file will be a series of test functions. Test functions
|
103
|
-
follow the convention of starting with the word "test" or "spec". You don't HAVE
|
104
|
-
to name them this way, but it makes it clear what functions are tests for other
|
105
|
-
developers. Test functions take no arguments and return nothing. All test
|
106
|
-
accounting is handled internally in Unity.
|
107
|
-
|
108
|
-
Finally, at the bottom of your test file, you will write a `main()` function.
|
109
|
-
This function will call `UNITY_BEGIN()`, then `RUN_TEST` for each test, and
|
110
|
-
finally `UNITY_END()`.This is what will actually trigger each of those test
|
111
|
-
functions to run, so it is important that each function gets its own `RUN_TEST`
|
112
|
-
call.
|
113
|
-
|
114
|
-
Remembering to add each test to the main function can get to be tedious. If you
|
115
|
-
enjoy using helper scripts in your build process, you might consider making use
|
116
|
-
of our handy generate_test_runner.rb script. This will create the main function
|
117
|
-
and all the calls for you, assuming that you have followed the suggested naming
|
118
|
-
conventions. In this case, there is no need for you to include the main function
|
119
|
-
in your test file at all.
|
120
|
-
|
121
|
-
When you're done, your test file will look something like this:
|
122
|
-
|
123
|
-
```C
|
124
|
-
#include "unity.h"
|
125
|
-
#include "file_to_test.h"
|
126
|
-
|
127
|
-
void setUp(void) {
|
128
|
-
// set stuff up here
|
129
|
-
}
|
130
|
-
|
131
|
-
void tearDown(void) {
|
132
|
-
// clean stuff up here
|
133
|
-
}
|
134
|
-
|
135
|
-
void test_function_should_doBlahAndBlah(void) {
|
136
|
-
//test stuff
|
137
|
-
}
|
138
|
-
|
139
|
-
void test_function_should_doAlsoDoBlah(void) {
|
140
|
-
//more test stuff
|
141
|
-
}
|
142
|
-
|
143
|
-
int main(void) {
|
144
|
-
UNITY_BEGIN();
|
145
|
-
RUN_TEST(test_function_should_doBlahAndBlah);
|
146
|
-
RUN_TEST(test_function_should_doAlsoDoBlah);
|
147
|
-
return UNITY_END();
|
148
|
-
}
|
149
|
-
```
|
150
|
-
|
151
|
-
It's possible that you will require more customization than this, eventually.
|
152
|
-
For that sort of thing, you're going to want to look at the configuration guide.
|
153
|
-
This should be enough to get you going, though.
|
154
|
-
|
155
|
-
|
156
|
-
## How to Build and Run A Test File
|
157
|
-
|
158
|
-
This is the single biggest challenge to picking up a new unit testing framework,
|
159
|
-
at least in a language like C or C++. These languages are REALLY good at getting
|
160
|
-
you "close to the metal" (why is the phrase metal? Wouldn't it be more accurate
|
161
|
-
to say "close to the silicon"?). While this feature is usually a good thing, it
|
162
|
-
can make testing more challenging.
|
163
|
-
|
164
|
-
You have two really good options for toolchains. Depending on where you're
|
165
|
-
coming from, it might surprise you that neither of these options is running the
|
166
|
-
unit tests on your hardware.
|
167
|
-
There are many reasons for this, but here's a short version:
|
168
|
-
- On hardware, you have too many constraints (processing power, memory, etc),
|
169
|
-
- On hardware, you don't have complete control over all registers,
|
170
|
-
- On hardware, unit testing is more challenging,
|
171
|
-
- Unit testing isn't System testing. Keep them separate.
|
172
|
-
|
173
|
-
Instead of running your tests on your actual hardware, most developers choose to
|
174
|
-
develop them as native applications (using gcc or MSVC for example) or as
|
175
|
-
applications running on a simulator. Either is a good option. Native apps have
|
176
|
-
the advantages of being faster and easier to set up. Simulator apps have the
|
177
|
-
advantage of working with the same compiler as your target application. The
|
178
|
-
options for configuring these are discussed in the configuration guide.
|
179
|
-
|
180
|
-
To get either to work, you might need to make a few changes to the file
|
181
|
-
containing your register set (discussed later).
|
182
|
-
|
183
|
-
In either case, a test is built by linking unity, the test file, and the C
|
184
|
-
file(s) being tested. These files create an executable which can be run as the
|
185
|
-
test set for that module. Then, this process is repeated for the next test file.
|
186
|
-
This flexibility of separating tests into individual executables allows us to
|
187
|
-
much more thoroughly unit test our system and it keeps all the test code out of
|
188
|
-
our final release!
|
189
|
-
|
190
|
-
|
191
|
-
*Find The Latest of This And More at [ThrowTheSwitch.org](https://throwtheswitch.org)*
|
1
|
+
# Unity - Getting Started
|
2
|
+
|
3
|
+
## Welcome
|
4
|
+
|
5
|
+
Congratulations. You're now the proud owner of your very own pile of bits! What
|
6
|
+
are you going to do with all these ones and zeros? This document should be able
|
7
|
+
to help you decide just that.
|
8
|
+
|
9
|
+
Unity is a unit test framework. The goal has been to keep it small and
|
10
|
+
functional. The core Unity test framework is three files: a single C file and a
|
11
|
+
couple header files. These team up to provide functions and macros to make
|
12
|
+
testing easier.
|
13
|
+
|
14
|
+
Unity was designed to be cross platform. It works hard to stick with C standards
|
15
|
+
while still providing support for the many embedded C compilers that bend the
|
16
|
+
rules. Unity has been used with many compilers, including GCC, IAR, Clang,
|
17
|
+
Green Hills, Microchip, and MS Visual Studio. It's not much work to get it to
|
18
|
+
work with a new target.
|
19
|
+
|
20
|
+
|
21
|
+
### Overview of the Documents
|
22
|
+
|
23
|
+
#### Unity Assertions reference
|
24
|
+
|
25
|
+
This document will guide you through all the assertion options provided by
|
26
|
+
Unity. This is going to be your unit testing bread and butter. You'll spend more
|
27
|
+
time with assertions than any other part of Unity.
|
28
|
+
|
29
|
+
|
30
|
+
#### Unity Assertions Cheat Sheet
|
31
|
+
|
32
|
+
This document contains an abridged summary of the assertions described in the
|
33
|
+
previous document. It's perfect for printing and referencing while you
|
34
|
+
familiarize yourself with Unity's options.
|
35
|
+
|
36
|
+
|
37
|
+
#### Unity Configuration Guide
|
38
|
+
|
39
|
+
This document is the one to reference when you are going to use Unity with a new
|
40
|
+
target or compiler. It'll guide you through the configuration options and will
|
41
|
+
help you customize your testing experience to meet your needs.
|
42
|
+
|
43
|
+
|
44
|
+
#### Unity Helper Scripts
|
45
|
+
|
46
|
+
This document describes the helper scripts that are available for simplifying
|
47
|
+
your testing workflow. It describes the collection of optional Ruby scripts
|
48
|
+
included in the auto directory of your Unity installation. Neither Ruby nor
|
49
|
+
these scripts are necessary for using Unity. They are provided as a convenience
|
50
|
+
for those who wish to use them.
|
51
|
+
|
52
|
+
|
53
|
+
#### Unity License
|
54
|
+
|
55
|
+
What's an open source project without a license file? This brief document
|
56
|
+
describes the terms you're agreeing to when you use this software. Basically, we
|
57
|
+
want it to be useful to you in whatever context you want to use it, but please
|
58
|
+
don't blame us if you run into problems.
|
59
|
+
|
60
|
+
|
61
|
+
### Overview of the Folders
|
62
|
+
|
63
|
+
If you have obtained Unity through Github or something similar, you might be
|
64
|
+
surprised by just how much stuff you suddenly have staring you in the face.
|
65
|
+
Don't worry, Unity itself is very small. The rest of it is just there to make
|
66
|
+
your life easier. You can ignore it or use it at your convenience. Here's an
|
67
|
+
overview of everything in the project.
|
68
|
+
|
69
|
+
- `src` - This is the code you care about! This folder contains a C file and two
|
70
|
+
header files. These three files _are_ Unity.
|
71
|
+
- `docs` - You're reading this document, so it's possible you have found your way
|
72
|
+
into this folder already. This is where all the handy documentation can be
|
73
|
+
found.
|
74
|
+
- `examples` - This contains a few examples of using Unity.
|
75
|
+
- `extras` - These are optional add ons to Unity that are not part of the core
|
76
|
+
project. If you've reached us through James Grenning's book, you're going to
|
77
|
+
want to look here.
|
78
|
+
- `test` - This is how Unity and its scripts are all tested. If you're just using
|
79
|
+
Unity, you'll likely never need to go in here. If you are the lucky team member
|
80
|
+
who gets to port Unity to a new toolchain, this is a good place to verify
|
81
|
+
everything is configured properly.
|
82
|
+
- `auto` - Here you will find helpful Ruby scripts for simplifying your test
|
83
|
+
workflow. They are purely optional and are not required to make use of Unity.
|
84
|
+
|
85
|
+
|
86
|
+
## How to Create A Test File
|
87
|
+
|
88
|
+
Test files are C files. Most often you will create a single test file for each C
|
89
|
+
module that you want to test. The test file should include unity.h and the
|
90
|
+
header for your C module to be tested.
|
91
|
+
|
92
|
+
Next, a test file will include a `setUp()` and `tearDown()` function. The setUp
|
93
|
+
function can contain anything you would like to run before each test. The
|
94
|
+
tearDown function can contain anything you would like to run after each test.
|
95
|
+
Both functions accept no arguments and return nothing. You may leave either or
|
96
|
+
both of these blank if you have no need for them. If you're using a compiler
|
97
|
+
that is configured to make these functions optional, you may leave them off
|
98
|
+
completely. Not sure? Give it a try. If you compiler complains that it can't
|
99
|
+
find setUp or tearDown when it links, you'll know you need to at least include
|
100
|
+
an empty function for these.
|
101
|
+
|
102
|
+
The majority of the file will be a series of test functions. Test functions
|
103
|
+
follow the convention of starting with the word "test" or "spec". You don't HAVE
|
104
|
+
to name them this way, but it makes it clear what functions are tests for other
|
105
|
+
developers. Test functions take no arguments and return nothing. All test
|
106
|
+
accounting is handled internally in Unity.
|
107
|
+
|
108
|
+
Finally, at the bottom of your test file, you will write a `main()` function.
|
109
|
+
This function will call `UNITY_BEGIN()`, then `RUN_TEST` for each test, and
|
110
|
+
finally `UNITY_END()`.This is what will actually trigger each of those test
|
111
|
+
functions to run, so it is important that each function gets its own `RUN_TEST`
|
112
|
+
call.
|
113
|
+
|
114
|
+
Remembering to add each test to the main function can get to be tedious. If you
|
115
|
+
enjoy using helper scripts in your build process, you might consider making use
|
116
|
+
of our handy generate_test_runner.rb script. This will create the main function
|
117
|
+
and all the calls for you, assuming that you have followed the suggested naming
|
118
|
+
conventions. In this case, there is no need for you to include the main function
|
119
|
+
in your test file at all.
|
120
|
+
|
121
|
+
When you're done, your test file will look something like this:
|
122
|
+
|
123
|
+
```C
|
124
|
+
#include "unity.h"
|
125
|
+
#include "file_to_test.h"
|
126
|
+
|
127
|
+
void setUp(void) {
|
128
|
+
// set stuff up here
|
129
|
+
}
|
130
|
+
|
131
|
+
void tearDown(void) {
|
132
|
+
// clean stuff up here
|
133
|
+
}
|
134
|
+
|
135
|
+
void test_function_should_doBlahAndBlah(void) {
|
136
|
+
//test stuff
|
137
|
+
}
|
138
|
+
|
139
|
+
void test_function_should_doAlsoDoBlah(void) {
|
140
|
+
//more test stuff
|
141
|
+
}
|
142
|
+
|
143
|
+
int main(void) {
|
144
|
+
UNITY_BEGIN();
|
145
|
+
RUN_TEST(test_function_should_doBlahAndBlah);
|
146
|
+
RUN_TEST(test_function_should_doAlsoDoBlah);
|
147
|
+
return UNITY_END();
|
148
|
+
}
|
149
|
+
```
|
150
|
+
|
151
|
+
It's possible that you will require more customization than this, eventually.
|
152
|
+
For that sort of thing, you're going to want to look at the configuration guide.
|
153
|
+
This should be enough to get you going, though.
|
154
|
+
|
155
|
+
|
156
|
+
## How to Build and Run A Test File
|
157
|
+
|
158
|
+
This is the single biggest challenge to picking up a new unit testing framework,
|
159
|
+
at least in a language like C or C++. These languages are REALLY good at getting
|
160
|
+
you "close to the metal" (why is the phrase metal? Wouldn't it be more accurate
|
161
|
+
to say "close to the silicon"?). While this feature is usually a good thing, it
|
162
|
+
can make testing more challenging.
|
163
|
+
|
164
|
+
You have two really good options for toolchains. Depending on where you're
|
165
|
+
coming from, it might surprise you that neither of these options is running the
|
166
|
+
unit tests on your hardware.
|
167
|
+
There are many reasons for this, but here's a short version:
|
168
|
+
- On hardware, you have too many constraints (processing power, memory, etc),
|
169
|
+
- On hardware, you don't have complete control over all registers,
|
170
|
+
- On hardware, unit testing is more challenging,
|
171
|
+
- Unit testing isn't System testing. Keep them separate.
|
172
|
+
|
173
|
+
Instead of running your tests on your actual hardware, most developers choose to
|
174
|
+
develop them as native applications (using gcc or MSVC for example) or as
|
175
|
+
applications running on a simulator. Either is a good option. Native apps have
|
176
|
+
the advantages of being faster and easier to set up. Simulator apps have the
|
177
|
+
advantage of working with the same compiler as your target application. The
|
178
|
+
options for configuring these are discussed in the configuration guide.
|
179
|
+
|
180
|
+
To get either to work, you might need to make a few changes to the file
|
181
|
+
containing your register set (discussed later).
|
182
|
+
|
183
|
+
In either case, a test is built by linking unity, the test file, and the C
|
184
|
+
file(s) being tested. These files create an executable which can be run as the
|
185
|
+
test set for that module. Then, this process is repeated for the next test file.
|
186
|
+
This flexibility of separating tests into individual executables allows us to
|
187
|
+
much more thoroughly unit test our system and it keeps all the test code out of
|
188
|
+
our final release!
|
189
|
+
|
190
|
+
|
191
|
+
*Find The Latest of This And More at [ThrowTheSwitch.org](https://throwtheswitch.org)*
|
@@ -1,242 +1,242 @@
|
|
1
|
-
# Unity Helper Scripts
|
2
|
-
|
3
|
-
## With a Little Help From Our Friends
|
4
|
-
|
5
|
-
Sometimes what it takes to be a really efficient C programmer is a little non-C.
|
6
|
-
The Unity project includes a couple Ruby scripts for making your life just a tad
|
7
|
-
easier. They are completely optional. If you choose to use them, you'll need a
|
8
|
-
copy of Ruby, of course. Just install whatever the latest version is, and it is
|
9
|
-
likely to work. You can find Ruby at [ruby-lang.org](https://ruby-labg.org/).
|
10
|
-
|
11
|
-
|
12
|
-
### `generate_test_runner.rb`
|
13
|
-
|
14
|
-
Are you tired of creating your own `main` function in your test file? Do you
|
15
|
-
keep forgetting to add a `RUN_TEST` call when you add a new test case to your
|
16
|
-
suite? Do you want to use CMock or other fancy add-ons but don't want to figure
|
17
|
-
out how to create your own `RUN_TEST` macro?
|
18
|
-
|
19
|
-
Well then we have the perfect script for you!
|
20
|
-
|
21
|
-
The `generate_test_runner` script processes a given test file and automatically
|
22
|
-
creates a separate test runner file that includes ?main?to execute the test
|
23
|
-
cases within the scanned test file. All you do then is add the generated runner
|
24
|
-
to your list of files to be compiled and linked, and presto you're done!
|
25
|
-
|
26
|
-
This script searches your test file for void function signatures having a
|
27
|
-
function name beginning with "test" or "spec". It treats each of these
|
28
|
-
functions as a test case and builds up a test suite of them. For example, the
|
29
|
-
following includes three test cases:
|
30
|
-
|
31
|
-
```C
|
32
|
-
void testVerifyThatUnityIsAwesomeAndWillMakeYourLifeEasier(void)
|
33
|
-
{
|
34
|
-
ASSERT_TRUE(1);
|
35
|
-
}
|
36
|
-
void test_FunctionName_should_WorkProperlyAndReturn8(void) {
|
37
|
-
ASSERT_EQUAL_INT(8, FunctionName());
|
38
|
-
}
|
39
|
-
void spec_Function_should_DoWhatItIsSupposedToDo(void) {
|
40
|
-
ASSERT_NOT_NULL(Function(5));
|
41
|
-
}
|
42
|
-
```
|
43
|
-
|
44
|
-
You can run this script a couple of ways. The first is from the command line:
|
45
|
-
|
46
|
-
```Shell
|
47
|
-
ruby generate_test_runner.rb TestFile.c NameOfRunner.c
|
48
|
-
```
|
49
|
-
|
50
|
-
Alternatively, if you include only the test file parameter, the script will copy
|
51
|
-
the name of the test file and automatically append "_Runner" to the name of the
|
52
|
-
generated file. The example immediately below will create TestFile_Runner.c.
|
53
|
-
|
54
|
-
```Shell
|
55
|
-
ruby generate_test_runner.rb TestFile.c
|
56
|
-
```
|
57
|
-
|
58
|
-
You can also add a [YAML](http://www.yaml.org/) file to configure extra options.
|
59
|
-
Conveniently, this YAML file is of the same format as that used by Unity and
|
60
|
-
CMock. So if you are using YAML files already, you can simply pass the very same
|
61
|
-
file into the generator script.
|
62
|
-
|
63
|
-
```Shell
|
64
|
-
ruby generate_test_runner.rb TestFile.c my_config.yml
|
65
|
-
```
|
66
|
-
|
67
|
-
The contents of the YAML file `my_config.yml` could look something like the
|
68
|
-
example below. If you're wondering what some of these options do, you're going
|
69
|
-
to love the next section of this document.
|
70
|
-
|
71
|
-
```YAML
|
72
|
-
:unity:
|
73
|
-
:includes:
|
74
|
-
- stdio.h
|
75
|
-
- microdefs.h
|
76
|
-
:cexception: 1
|
77
|
-
:suit_setup: "blah = malloc(1024);"
|
78
|
-
:suite_teardown: "free(blah);"
|
79
|
-
```
|
80
|
-
|
81
|
-
If you would like to force your generated test runner to include one or more
|
82
|
-
header files, you can just include those at the command line too. Just make sure
|
83
|
-
these are _after_ the YAML file, if you are using one:
|
84
|
-
|
85
|
-
```Shell
|
86
|
-
ruby generate_test_runner.rb TestFile.c my_config.yml extras.h
|
87
|
-
```
|
88
|
-
|
89
|
-
Another option, particularly if you are already using Ruby to orchestrate your
|
90
|
-
builds - or more likely the Ruby-based build tool Rake - is requiring this
|
91
|
-
script directly. Anything that you would have specified in a YAML file can be
|
92
|
-
passed to the script as part of a hash. Let's push the exact same requirement
|
93
|
-
set as we did above but this time through Ruby code directly:
|
94
|
-
|
95
|
-
```Ruby
|
96
|
-
require "generate_test_runner.rb"
|
97
|
-
options = {
|
98
|
-
:includes => ["stdio.h", "microdefs.h"],
|
99
|
-
:cexception => 1,
|
100
|
-
:suite_setup => "blah = malloc(1024);",
|
101
|
-
:suite_teardown => "free(blah);"
|
102
|
-
}
|
103
|
-
UnityTestRunnerGenerator.new.run(testfile, runner_name, options)
|
104
|
-
```
|
105
|
-
|
106
|
-
If you have multiple files to generate in a build script (such as a Rakefile),
|
107
|
-
you might want to instantiate a generator object with your options and call it
|
108
|
-
to generate each runner thereafter. Like thus:
|
109
|
-
|
110
|
-
```Ruby
|
111
|
-
gen = UnityTestRunnerGenerator.new(options)
|
112
|
-
test_files.each do |f|
|
113
|
-
gen.run(f, File.basename(f,'.c')+"Runner.c"
|
114
|
-
end
|
115
|
-
```
|
116
|
-
|
117
|
-
#### Options accepted by generate_test_runner.rb:
|
118
|
-
|
119
|
-
The following options are available when executing `generate_test_runner`. You
|
120
|
-
may pass these as a Ruby hash directly or specify them in a YAML file, both of
|
121
|
-
which are described above. In the `examples` directory, Example 3's Rakefile
|
122
|
-
demonstrates using a Ruby hash.
|
123
|
-
|
124
|
-
|
125
|
-
##### `:includes`
|
126
|
-
|
127
|
-
This option specifies an array of file names to be ?#include?'d at the top of
|
128
|
-
your runner C file. You might use it to reference custom types or anything else
|
129
|
-
universally needed in your generated runners.
|
130
|
-
|
131
|
-
|
132
|
-
##### `:suite_setup`
|
133
|
-
|
134
|
-
Define this option with C code to be executed _before any_ test cases are run.
|
135
|
-
|
136
|
-
|
137
|
-
##### `:suite_teardown`
|
138
|
-
|
139
|
-
Define this option with C code to be executed ?after all?test cases have
|
140
|
-
finished.
|
141
|
-
|
142
|
-
|
143
|
-
##### `:enforce_strict_ordering`
|
144
|
-
|
145
|
-
This option should be defined if you have the strict order feature enabled in
|
146
|
-
CMock (see CMock documentation). This generates extra variables required for
|
147
|
-
everything to run smoothly. If you provide the same YAML to the generator as
|
148
|
-
used in CMock's configuration, you've already configured the generator properly.
|
149
|
-
|
150
|
-
|
151
|
-
##### `:plugins`
|
152
|
-
|
153
|
-
This option specifies an array of plugins to be used (of course, the array can
|
154
|
-
contain only a single plugin). This is your opportunity to enable support for
|
155
|
-
CException support, which will add a check for unhandled exceptions in each
|
156
|
-
test, reporting a failure if one is detected. To enable this feature using Ruby:
|
157
|
-
|
158
|
-
```Ruby
|
159
|
-
:plugins => [ :cexception ]
|
160
|
-
```
|
161
|
-
|
162
|
-
Or as a yaml file:
|
163
|
-
|
164
|
-
```YAML
|
165
|
-
:plugins:
|
166
|
-
-:cexception
|
167
|
-
```
|
168
|
-
|
169
|
-
If you are using CMock, it is very likely that you are already passing an array
|
170
|
-
of plugins to CMock. You can just use the same array here. This script will just
|
171
|
-
ignore the plugins that don't require additional support.
|
172
|
-
|
173
|
-
|
174
|
-
### `unity_test_summary.rb`
|
175
|
-
|
176
|
-
A Unity test file contains one or more test case functions. Each test case can
|
177
|
-
pass, fail, or be ignored. Each test file is run individually producing results
|
178
|
-
for its collection of test cases. A given project will almost certainly be
|
179
|
-
composed of multiple test files. Therefore, the suite of tests is comprised of
|
180
|
-
one or more test cases spread across one or more test files. This script
|
181
|
-
aggregates individual test file results to generate a summary of all executed
|
182
|
-
test cases. The output includes how many tests were run, how many were ignored,
|
183
|
-
and how many failed. In addition, the output includes a listing of which
|
184
|
-
specific tests were ignored and failed. A good example of the breadth and
|
185
|
-
details of these results can be found in the `examples` directory. Intentionally
|
186
|
-
ignored and failing tests in this project generate corresponding entries in the
|
187
|
-
summary report.
|
188
|
-
|
189
|
-
If you're interested in other (prettier?) output formats, check into the
|
190
|
-
Ceedling build tool project (ceedling.sourceforge.net) that works with Unity and
|
191
|
-
CMock and supports xunit-style xml as well as other goodies.
|
192
|
-
|
193
|
-
This script assumes the existence of files ending with the extensions
|
194
|
-
`.testpass` and `.testfail`.The contents of these files includes the test
|
195
|
-
results summary corresponding to each test file executed with the extension set
|
196
|
-
according to the presence or absence of failures for that test file. The script
|
197
|
-
searches a specified path for these files, opens each one it finds, parses the
|
198
|
-
results, and aggregates and prints a summary. Calling it from the command line
|
199
|
-
looks like this:
|
200
|
-
|
201
|
-
```Shell
|
202
|
-
ruby unity_test_summary.rb build/test/
|
203
|
-
```
|
204
|
-
|
205
|
-
You can optionally specify a root path as well. This is really helpful when you
|
206
|
-
are using relative paths in your tools' setup, but you want to pull the summary
|
207
|
-
into an IDE like Eclipse for clickable shortcuts.
|
208
|
-
|
209
|
-
```Shell
|
210
|
-
ruby unity_test_summary.rb build/test/ ~/projects/myproject/
|
211
|
-
```
|
212
|
-
|
213
|
-
Or, if you're more of a Windows sort of person:
|
214
|
-
|
215
|
-
```Shell
|
216
|
-
ruby unity_test_summary.rb build\teat\ C:\projects\myproject\
|
217
|
-
```
|
218
|
-
|
219
|
-
When configured correctly, you'll see a final summary, like so:
|
220
|
-
|
221
|
-
```Shell
|
222
|
-
--------------------------
|
223
|
-
UNITY IGNORED TEST SUMMARY
|
224
|
-
--------------------------
|
225
|
-
blah.c:22:test_sandwiches_should_HaveBreadOnTwoSides:IGNORE
|
226
|
-
|
227
|
-
-------------------------
|
228
|
-
UNITY FAILED TEST SUMMARY
|
229
|
-
-------------------------
|
230
|
-
blah.c:87:test_sandwiches_should_HaveCondiments:FAIL:Expected 1 was 0
|
231
|
-
meh.c:38:test_soda_should_BeCalledPop:FAIL:Expected "pop" was "coke"
|
232
|
-
|
233
|
-
--------------------------
|
234
|
-
OVERALL UNITY TEST SUMMARY
|
235
|
-
--------------------------
|
236
|
-
45 TOTAL TESTS 2 TOTAL FAILURES 1 IGNORED
|
237
|
-
```
|
238
|
-
|
239
|
-
How convenient is that?
|
240
|
-
|
241
|
-
|
242
|
-
*Find The Latest of This And More at [ThrowTheSwitch.org](https://throwtheswitch.org)*
|
1
|
+
# Unity Helper Scripts
|
2
|
+
|
3
|
+
## With a Little Help From Our Friends
|
4
|
+
|
5
|
+
Sometimes what it takes to be a really efficient C programmer is a little non-C.
|
6
|
+
The Unity project includes a couple Ruby scripts for making your life just a tad
|
7
|
+
easier. They are completely optional. If you choose to use them, you'll need a
|
8
|
+
copy of Ruby, of course. Just install whatever the latest version is, and it is
|
9
|
+
likely to work. You can find Ruby at [ruby-lang.org](https://ruby-labg.org/).
|
10
|
+
|
11
|
+
|
12
|
+
### `generate_test_runner.rb`
|
13
|
+
|
14
|
+
Are you tired of creating your own `main` function in your test file? Do you
|
15
|
+
keep forgetting to add a `RUN_TEST` call when you add a new test case to your
|
16
|
+
suite? Do you want to use CMock or other fancy add-ons but don't want to figure
|
17
|
+
out how to create your own `RUN_TEST` macro?
|
18
|
+
|
19
|
+
Well then we have the perfect script for you!
|
20
|
+
|
21
|
+
The `generate_test_runner` script processes a given test file and automatically
|
22
|
+
creates a separate test runner file that includes ?main?to execute the test
|
23
|
+
cases within the scanned test file. All you do then is add the generated runner
|
24
|
+
to your list of files to be compiled and linked, and presto you're done!
|
25
|
+
|
26
|
+
This script searches your test file for void function signatures having a
|
27
|
+
function name beginning with "test" or "spec". It treats each of these
|
28
|
+
functions as a test case and builds up a test suite of them. For example, the
|
29
|
+
following includes three test cases:
|
30
|
+
|
31
|
+
```C
|
32
|
+
void testVerifyThatUnityIsAwesomeAndWillMakeYourLifeEasier(void)
|
33
|
+
{
|
34
|
+
ASSERT_TRUE(1);
|
35
|
+
}
|
36
|
+
void test_FunctionName_should_WorkProperlyAndReturn8(void) {
|
37
|
+
ASSERT_EQUAL_INT(8, FunctionName());
|
38
|
+
}
|
39
|
+
void spec_Function_should_DoWhatItIsSupposedToDo(void) {
|
40
|
+
ASSERT_NOT_NULL(Function(5));
|
41
|
+
}
|
42
|
+
```
|
43
|
+
|
44
|
+
You can run this script a couple of ways. The first is from the command line:
|
45
|
+
|
46
|
+
```Shell
|
47
|
+
ruby generate_test_runner.rb TestFile.c NameOfRunner.c
|
48
|
+
```
|
49
|
+
|
50
|
+
Alternatively, if you include only the test file parameter, the script will copy
|
51
|
+
the name of the test file and automatically append "_Runner" to the name of the
|
52
|
+
generated file. The example immediately below will create TestFile_Runner.c.
|
53
|
+
|
54
|
+
```Shell
|
55
|
+
ruby generate_test_runner.rb TestFile.c
|
56
|
+
```
|
57
|
+
|
58
|
+
You can also add a [YAML](http://www.yaml.org/) file to configure extra options.
|
59
|
+
Conveniently, this YAML file is of the same format as that used by Unity and
|
60
|
+
CMock. So if you are using YAML files already, you can simply pass the very same
|
61
|
+
file into the generator script.
|
62
|
+
|
63
|
+
```Shell
|
64
|
+
ruby generate_test_runner.rb TestFile.c my_config.yml
|
65
|
+
```
|
66
|
+
|
67
|
+
The contents of the YAML file `my_config.yml` could look something like the
|
68
|
+
example below. If you're wondering what some of these options do, you're going
|
69
|
+
to love the next section of this document.
|
70
|
+
|
71
|
+
```YAML
|
72
|
+
:unity:
|
73
|
+
:includes:
|
74
|
+
- stdio.h
|
75
|
+
- microdefs.h
|
76
|
+
:cexception: 1
|
77
|
+
:suit_setup: "blah = malloc(1024);"
|
78
|
+
:suite_teardown: "free(blah);"
|
79
|
+
```
|
80
|
+
|
81
|
+
If you would like to force your generated test runner to include one or more
|
82
|
+
header files, you can just include those at the command line too. Just make sure
|
83
|
+
these are _after_ the YAML file, if you are using one:
|
84
|
+
|
85
|
+
```Shell
|
86
|
+
ruby generate_test_runner.rb TestFile.c my_config.yml extras.h
|
87
|
+
```
|
88
|
+
|
89
|
+
Another option, particularly if you are already using Ruby to orchestrate your
|
90
|
+
builds - or more likely the Ruby-based build tool Rake - is requiring this
|
91
|
+
script directly. Anything that you would have specified in a YAML file can be
|
92
|
+
passed to the script as part of a hash. Let's push the exact same requirement
|
93
|
+
set as we did above but this time through Ruby code directly:
|
94
|
+
|
95
|
+
```Ruby
|
96
|
+
require "generate_test_runner.rb"
|
97
|
+
options = {
|
98
|
+
:includes => ["stdio.h", "microdefs.h"],
|
99
|
+
:cexception => 1,
|
100
|
+
:suite_setup => "blah = malloc(1024);",
|
101
|
+
:suite_teardown => "free(blah);"
|
102
|
+
}
|
103
|
+
UnityTestRunnerGenerator.new.run(testfile, runner_name, options)
|
104
|
+
```
|
105
|
+
|
106
|
+
If you have multiple files to generate in a build script (such as a Rakefile),
|
107
|
+
you might want to instantiate a generator object with your options and call it
|
108
|
+
to generate each runner thereafter. Like thus:
|
109
|
+
|
110
|
+
```Ruby
|
111
|
+
gen = UnityTestRunnerGenerator.new(options)
|
112
|
+
test_files.each do |f|
|
113
|
+
gen.run(f, File.basename(f,'.c')+"Runner.c"
|
114
|
+
end
|
115
|
+
```
|
116
|
+
|
117
|
+
#### Options accepted by generate_test_runner.rb:
|
118
|
+
|
119
|
+
The following options are available when executing `generate_test_runner`. You
|
120
|
+
may pass these as a Ruby hash directly or specify them in a YAML file, both of
|
121
|
+
which are described above. In the `examples` directory, Example 3's Rakefile
|
122
|
+
demonstrates using a Ruby hash.
|
123
|
+
|
124
|
+
|
125
|
+
##### `:includes`
|
126
|
+
|
127
|
+
This option specifies an array of file names to be ?#include?'d at the top of
|
128
|
+
your runner C file. You might use it to reference custom types or anything else
|
129
|
+
universally needed in your generated runners.
|
130
|
+
|
131
|
+
|
132
|
+
##### `:suite_setup`
|
133
|
+
|
134
|
+
Define this option with C code to be executed _before any_ test cases are run.
|
135
|
+
|
136
|
+
|
137
|
+
##### `:suite_teardown`
|
138
|
+
|
139
|
+
Define this option with C code to be executed ?after all?test cases have
|
140
|
+
finished.
|
141
|
+
|
142
|
+
|
143
|
+
##### `:enforce_strict_ordering`
|
144
|
+
|
145
|
+
This option should be defined if you have the strict order feature enabled in
|
146
|
+
CMock (see CMock documentation). This generates extra variables required for
|
147
|
+
everything to run smoothly. If you provide the same YAML to the generator as
|
148
|
+
used in CMock's configuration, you've already configured the generator properly.
|
149
|
+
|
150
|
+
|
151
|
+
##### `:plugins`
|
152
|
+
|
153
|
+
This option specifies an array of plugins to be used (of course, the array can
|
154
|
+
contain only a single plugin). This is your opportunity to enable support for
|
155
|
+
CException support, which will add a check for unhandled exceptions in each
|
156
|
+
test, reporting a failure if one is detected. To enable this feature using Ruby:
|
157
|
+
|
158
|
+
```Ruby
|
159
|
+
:plugins => [ :cexception ]
|
160
|
+
```
|
161
|
+
|
162
|
+
Or as a yaml file:
|
163
|
+
|
164
|
+
```YAML
|
165
|
+
:plugins:
|
166
|
+
-:cexception
|
167
|
+
```
|
168
|
+
|
169
|
+
If you are using CMock, it is very likely that you are already passing an array
|
170
|
+
of plugins to CMock. You can just use the same array here. This script will just
|
171
|
+
ignore the plugins that don't require additional support.
|
172
|
+
|
173
|
+
|
174
|
+
### `unity_test_summary.rb`
|
175
|
+
|
176
|
+
A Unity test file contains one or more test case functions. Each test case can
|
177
|
+
pass, fail, or be ignored. Each test file is run individually producing results
|
178
|
+
for its collection of test cases. A given project will almost certainly be
|
179
|
+
composed of multiple test files. Therefore, the suite of tests is comprised of
|
180
|
+
one or more test cases spread across one or more test files. This script
|
181
|
+
aggregates individual test file results to generate a summary of all executed
|
182
|
+
test cases. The output includes how many tests were run, how many were ignored,
|
183
|
+
and how many failed. In addition, the output includes a listing of which
|
184
|
+
specific tests were ignored and failed. A good example of the breadth and
|
185
|
+
details of these results can be found in the `examples` directory. Intentionally
|
186
|
+
ignored and failing tests in this project generate corresponding entries in the
|
187
|
+
summary report.
|
188
|
+
|
189
|
+
If you're interested in other (prettier?) output formats, check into the
|
190
|
+
Ceedling build tool project (ceedling.sourceforge.net) that works with Unity and
|
191
|
+
CMock and supports xunit-style xml as well as other goodies.
|
192
|
+
|
193
|
+
This script assumes the existence of files ending with the extensions
|
194
|
+
`.testpass` and `.testfail`.The contents of these files includes the test
|
195
|
+
results summary corresponding to each test file executed with the extension set
|
196
|
+
according to the presence or absence of failures for that test file. The script
|
197
|
+
searches a specified path for these files, opens each one it finds, parses the
|
198
|
+
results, and aggregates and prints a summary. Calling it from the command line
|
199
|
+
looks like this:
|
200
|
+
|
201
|
+
```Shell
|
202
|
+
ruby unity_test_summary.rb build/test/
|
203
|
+
```
|
204
|
+
|
205
|
+
You can optionally specify a root path as well. This is really helpful when you
|
206
|
+
are using relative paths in your tools' setup, but you want to pull the summary
|
207
|
+
into an IDE like Eclipse for clickable shortcuts.
|
208
|
+
|
209
|
+
```Shell
|
210
|
+
ruby unity_test_summary.rb build/test/ ~/projects/myproject/
|
211
|
+
```
|
212
|
+
|
213
|
+
Or, if you're more of a Windows sort of person:
|
214
|
+
|
215
|
+
```Shell
|
216
|
+
ruby unity_test_summary.rb build\teat\ C:\projects\myproject\
|
217
|
+
```
|
218
|
+
|
219
|
+
When configured correctly, you'll see a final summary, like so:
|
220
|
+
|
221
|
+
```Shell
|
222
|
+
--------------------------
|
223
|
+
UNITY IGNORED TEST SUMMARY
|
224
|
+
--------------------------
|
225
|
+
blah.c:22:test_sandwiches_should_HaveBreadOnTwoSides:IGNORE
|
226
|
+
|
227
|
+
-------------------------
|
228
|
+
UNITY FAILED TEST SUMMARY
|
229
|
+
-------------------------
|
230
|
+
blah.c:87:test_sandwiches_should_HaveCondiments:FAIL:Expected 1 was 0
|
231
|
+
meh.c:38:test_soda_should_BeCalledPop:FAIL:Expected "pop" was "coke"
|
232
|
+
|
233
|
+
--------------------------
|
234
|
+
OVERALL UNITY TEST SUMMARY
|
235
|
+
--------------------------
|
236
|
+
45 TOTAL TESTS 2 TOTAL FAILURES 1 IGNORED
|
237
|
+
```
|
238
|
+
|
239
|
+
How convenient is that?
|
240
|
+
|
241
|
+
|
242
|
+
*Find The Latest of This And More at [ThrowTheSwitch.org](https://throwtheswitch.org)*
|