Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion auto/generate_test_runner.rb
Original file line number Diff line number Diff line change
Expand Up @@ -533,7 +533,7 @@ def create_main(output, filename, tests, used_mocks)
output.puts(' CMock_Guts_MemFreeFinal();') unless used_mocks.empty?
if @options[:has_suite_teardown]
if @options[:omit_begin_end]
output.puts(' (void) suite_teardown(0);')
output.puts(' (void) suiteTearDown(0);')
else
output.puts(' return suiteTearDown(UNITY_END());')
end
Expand Down
1 change: 1 addition & 0 deletions docs/UnityChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ Significant Bugfixes:
- display of failures fixed on ARM processors, particularly with arrays (#807)
- fixed each-equal assertion for memory (#797)
- fix many warnings.
- Test runner generator calls custom suite teardown when begin/end calls are omitted. @94xhn

Other:

Expand Down
20 changes: 20 additions & 0 deletions test/tests/test_generate_test_runner.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1303,6 +1303,26 @@ def verify_number(expected, expression, output)
end
end

should 'GenerateSuiteTeardownWhenBeginAndEndAreOmitted' do
runner_name = OUT_FILE + 'SuiteTeardownWithoutBeginEnd_runner.c'
UnityTestRunnerGenerator.new(
:test_prefix => 'test',
:suite_teardown => ' return num_failures;',
:omit_begin_end => true,
).run('testdata/testRunnerGenerator.c', runner_name)

runner = File.read(runner_name)
correct_call = runner.include?('(void) suiteTearDown(0);')
incorrect_call = runner.include?('(void) suite_teardown(0);')
if correct_call && !incorrect_call
report 'Runner_GenerateSuiteTeardownWhenBeginAndEndAreOmitted:PASS'
else
report 'Runner_GenerateSuiteTeardownWhenBeginAndEndAreOmitted:FAIL'
$generate_test_runner_failures += 1
end
$generate_test_runner_tests += 1
end

RUNNER_TESTS.each do |testset|
basename = File.basename(testset[:testfile], C_EXTENSION)
testset_name = "Runner_#{basename}_#{testset[:name]}"
Expand Down