ceedling 1.1.7 → 1.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/GIT_COMMIT_SHA +1 -1
  3. data/README.md +1 -1
  4. data/docs/Changelog.md +48 -0
  5. data/docs/KnownIssues.md +3 -0
  6. data/docs/mkdocs/plugins/gcov/gcovr.md +9 -4
  7. data/docs/mkdocs/reference/gcov-plugin.md +9 -4
  8. data/lib/ceedling/c_extractor/c_extractor_declarations.rb +11 -10
  9. data/lib/ceedling/c_extractor/c_extractor_preprocessing.rb +67 -2
  10. data/lib/ceedling/file_path_utils.rb +4 -0
  11. data/lib/ceedling/generators/generator_test_results_backtrace.rb +5 -3
  12. data/lib/ceedling/generators/generator_test_runner.rb +5 -1
  13. data/lib/ceedling/includes/includes.rb +8 -1
  14. data/lib/ceedling/partials/partializer.rb +69 -24
  15. data/lib/ceedling/preprocess/preprocessinator_line_marker_includes_extractor.rb +6 -1
  16. data/lib/ceedling/preprocess/preprocessinator_reconstructor.rb +18 -5
  17. data/lib/version.rb +1 -1
  18. data/plugins/gcov/lib/console_reportinator.rb +7 -0
  19. data/plugins/gcov/lib/gcov.rb +29 -10
  20. data/plugins/gcov/lib/gcovr_reportinator.rb +62 -48
  21. data/plugins/gcov/lib/reportgenerator_reportinator.rb +10 -6
  22. data/site-local/plugins/gcov/gcovr.html +9 -4
  23. data/site-local/reference/gcov-plugin.html +9 -4
  24. data/site-local/sitemap.xml.gz +0 -0
  25. data/spec/system/gcov_deployment_spec.rb +1 -0
  26. data/spec/system/support/gcov_common_test_cases.rb +18 -0
  27. data/spec/units/c_extractor/c_extractor_declarations_spec.rb +16 -0
  28. data/spec/units/c_extractor/c_extractor_integration_spec.rb +71 -0
  29. data/spec/units/c_extractor/c_extractor_preprocessing_spec.rb +122 -0
  30. data/spec/units/generators/generator_partials_spec.rb +98 -0
  31. data/spec/units/generators/generator_test_results_backtrace_spec.rb +26 -0
  32. data/spec/units/generators/generator_test_runner_spec.rb +23 -0
  33. data/spec/units/includes/includes_spec.rb +21 -3
  34. data/spec/units/partials/partializer_spec.rb +62 -0
  35. data/spec/units/preprocess/preprocessinator_line_marker_includes_extractor_spec.rb +64 -0
  36. data/spec/units/preprocess/preprocessinator_reconstructor_spec.rb +74 -0
  37. data/vendor/unity/auto/generate_test_runner.rb +3 -1
  38. data/vendor/unity/auto/unity_test_summary.rb +2 -2
  39. data/vendor/unity/docs/UnityChangeLog.md +7 -0
  40. data/vendor/unity/docs/UnityConfigurationGuide.md +4 -0
  41. data/vendor/unity/src/unity_internals.h +21 -7
  42. data/vendor/unity/test/Makefile +9 -2
  43. data/vendor/unity/test/rakefile_helper.rb +1 -0
  44. data/vendor/unity/test/tests/test_generate_test_runner.rb +49 -0
  45. data/vendor/unity/test/tests/test_unity_test_summary.rb +58 -0
  46. metadata +5 -2
@@ -0,0 +1,58 @@
1
+ # =========================================================================
2
+ # Unity - A Test Framework for C
3
+ # ThrowTheSwitch.org
4
+ # Copyright (c) 2007-26 Mike Karlesky, Mark VanderVoord, & Greg Williams
5
+ # SPDX-License-Identifier: MIT
6
+ # =========================================================================
7
+
8
+ require 'fileutils'
9
+ require_relative '../../auto/colour_reporter'
10
+
11
+ # the 'test:scripts' rake task tallies these, so only initialize them if we are loaded first
12
+ $generate_test_runner_tests ||= 0
13
+ $generate_test_runner_failures ||= 0
14
+ $unity_test_summary_failures = 0
15
+
16
+ SUMMARY_SCRIPT = File.expand_path('../../auto/unity_test_summary.rb', __dir__)
17
+ SUMMARY_SANDBOX = File.expand_path('../sandbox/test_summary', __dir__)
18
+ SUMMARY_RESULTS = <<~RESULTS
19
+ test/test_a.c:12:test_thing:PASS
20
+ test/test_b.c:34:test_broken:FAIL: Expected 1 Was 2
21
+ test/test_c.c:56:test_skipped:IGNORE: not ready
22
+
23
+ -----------------------
24
+ 3 Tests 1 Failures 1 Ignored
25
+ RESULTS
26
+
27
+ def summary_test(name, passed)
28
+ if passed
29
+ report "#{name}:PASS"
30
+ else
31
+ report "#{name}:FAIL"
32
+ $generate_test_runner_failures += 1
33
+ $unity_test_summary_failures += 1
34
+ end
35
+ $generate_test_runner_tests += 1
36
+ end
37
+
38
+ FileUtils.rm_rf(SUMMARY_SANDBOX)
39
+ FileUtils.mkdir_p(SUMMARY_SANDBOX)
40
+ File.write(File.join(SUMMARY_SANDBOX, 'test_sample.testfail'), SUMMARY_RESULTS)
41
+
42
+ begin
43
+ Dir.chdir(SUMMARY_SANDBOX) do
44
+ # with no arguments at all, the result files are looked for in the current directory
45
+ output = `ruby "#{SUMMARY_SCRIPT}" 2>&1`
46
+ summary_test('UnityTestSummary_DefaultsResultDirectoryToCurrentDirectory',
47
+ $?.success? && output.include?('3 TOTAL TESTS 1 TOTAL FAILURES 1 IGNORED'))
48
+
49
+ # with only a result directory given, the root path defaults to the current directory
50
+ expected = "#{Dir.pwd}/test/test_b.c:34".tr('/', '\\')
51
+ output = `ruby "#{SUMMARY_SCRIPT}" ./ 2>&1`
52
+ summary_test('UnityTestSummary_DefaultsRootPathToCurrentDirectory', output.include?(expected))
53
+ end
54
+ ensure
55
+ FileUtils.rm_rf(SUMMARY_SANDBOX)
56
+ end
57
+
58
+ raise "There were #{$unity_test_summary_failures} failures while testing unity_test_summary.rb" if $unity_test_summary_failures > 0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ceedling
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.7
4
+ version: 1.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark VanderVoord
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2026-09-04 00:00:00.000000000 Z
13
+ date: 2026-09-20 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rake
@@ -1004,6 +1004,7 @@ files:
1004
1004
  - spec/units/preprocess/preprocessinator_comment_stripper_spec.rb
1005
1005
  - spec/units/preprocess/preprocessinator_file_assembler_spec.rb
1006
1006
  - spec/units/preprocess/preprocessinator_includes_handler_spec.rb
1007
+ - spec/units/preprocess/preprocessinator_line_marker_includes_extractor_spec.rb
1007
1008
  - spec/units/preprocess/preprocessinator_reconstructor_spec.rb
1008
1009
  - spec/units/preprocess/preprocessinator_spec.rb
1009
1010
  - spec/units/reportinator_spec.rb
@@ -1738,6 +1739,7 @@ files:
1738
1739
  - vendor/unity/test/tests/test_unity_parameterized.c
1739
1740
  - vendor/unity/test/tests/test_unity_parameterizedDemo.c
1740
1741
  - vendor/unity/test/tests/test_unity_strings.c
1742
+ - vendor/unity/test/tests/test_unity_test_summary.rb
1741
1743
  - vendor/unity/test/tests/types_for_test.h
1742
1744
  - vendor/unity/unityConfig.cmake
1743
1745
  homepage: https://throwtheswitch.org/ceedling
@@ -1856,6 +1858,7 @@ test_files:
1856
1858
  - spec/units/preprocess/preprocessinator_comment_stripper_spec.rb
1857
1859
  - spec/units/preprocess/preprocessinator_file_assembler_spec.rb
1858
1860
  - spec/units/preprocess/preprocessinator_includes_handler_spec.rb
1861
+ - spec/units/preprocess/preprocessinator_line_marker_includes_extractor_spec.rb
1859
1862
  - spec/units/preprocess/preprocessinator_reconstructor_spec.rb
1860
1863
  - spec/units/preprocess/preprocessinator_spec.rb
1861
1864
  - spec/units/reportinator_spec.rb