From f3ad68dd161da60bb4f4908974839bb2b5736a85 Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Tue, 29 Nov 2022 01:14:47 +0900 Subject: [PATCH] [ruby/optparse] Fix the test failure i ruby/ruby ``` $ make test-all TESTS=test/optparse/ ... [148/178] TestOptionParserDidYouMean#test_raise_unknown = 0.00 s 1) Failure: TestOptionParserDidYouMean#test_raise_unknown [/home/mame/work/ruby/test/optparse/test_optparse.rb:106]: <["--bar"]> expected but was <[]>. ``` In the old test/unit (bundled in ruby/ruby), when a test class inherits from another test class, the child class runs all the tests defined in the parent class. However, it looks like the new test/unit does not do so. This is because the test failure does not occur in ruby/optparse. As a tentative solution, this changes the option names in TestOptionParser to avoid the name conflict with TestOptionParserDidYouMean. https://github.com/ruby/optparse/commit/fee86ef7a4 --- test/optparse/test_optparse.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/optparse/test_optparse.rb b/test/optparse/test_optparse.rb index 285c4a5d1b..5a0593d9bb 100644 --- a/test/optparse/test_optparse.rb +++ b/test/optparse/test_optparse.rb @@ -99,14 +99,14 @@ class TestOptionParser < Test::Unit::TestCase end def test_raise_unknown - @opt.def_option('--foo [ARG]') {|arg| @foo = arg} + @opt.def_option('--my-foo [ARG]') {|arg| @foo = arg} assert @opt.raise_unknown @opt.raise_unknown = false - assert_equal(%w[--bar], @opt.parse(%w[--foo --bar])) + assert_equal(%w[--my-bar], @opt.parse(%w[--my-foo --my-bar])) assert_nil(@foo) - assert_equal(%w[--bar], @opt.parse(%w[--foo x --bar])) + assert_equal(%w[--my-bar], @opt.parse(%w[--my-foo x --my-bar])) assert_equal("x", @foo) end