From 18f2db3829110aa36c49d47da5e5ad9f91bd07b0 Mon Sep 17 00:00:00 2001 From: APX403 Date: Tue, 20 Oct 2026 02:48:34 +0300 Subject: [PATCH] Fix :header_file NameError in runner generator 4ad1309 renamed the include list in run() to headers and changed the create_h_file() call in generate() to match, but generate() still receives that list as its testfile_includes parameter. Any run with :header_file or --header_file stops with a NameError after the runner has been written, leaving an empty header that the runner includes. --- auto/generate_test_runner.rb | 2 +- test/tests/test_generate_test_runner.rb | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/auto/generate_test_runner.rb b/auto/generate_test_runner.rb index af3b98ae..8fbb4e9b 100755 --- a/auto/generate_test_runner.rb +++ b/auto/generate_test_runner.rb @@ -117,7 +117,7 @@ def generate(input_file, output_file, tests, used_mocks, testfile_includes) return unless @options[:header_file] && !@options[:header_file].empty? File.open(@options[:header_file], 'w') do |output| - create_h_file(output, @options[:header_file], tests, headers, used_mocks) + create_h_file(output, @options[:header_file], tests, testfile_includes, used_mocks) end end diff --git a/test/tests/test_generate_test_runner.rb b/test/tests/test_generate_test_runner.rb index 9a7f21e3..f1489b25 100644 --- a/test/tests/test_generate_test_runner.rb +++ b/test/tests/test_generate_test_runner.rb @@ -350,6 +350,27 @@ } }, + { :name => 'HeaderFile', + :testfile => 'testdata/testRunnerGenerator.c', + :testdefines => ['TEST'], + :options => { + :header_file => "build/testsample_HeaderFile_runner.h", + }, + :expected => { + :to_pass => [ 'test_ThisTestAlwaysPasses', + 'spec_ThisTestPassesWhenNormalSetupRan', + 'spec_ThisTestPassesWhenNormalTeardownRan', + 'test_NotBeConfusedByLongComplicatedStrings', + 'test_NotDisappearJustBecauseTheTestBeforeAndAfterHaveCrazyStrings', + 'test_StillNotBeConfusedByLongComplicatedStrings', + 'should_RunTestsStartingWithShouldByDefault', + 'spec_ThisTestPassesWhenNormalSuiteSetupAndTeardownRan', + ], + :to_fail => [ 'test_ThisTestAlwaysFails' ], + :to_ignore => [ 'test_ThisTestAlwaysIgnored' ], + } + }, + { :name => 'EmptyFileWarning', :testfile => 'testdata/testRunnerGeneratorEmpty.c',