Skip to content

testsuite does not pass with ruby3.5.0dev 2025-10-27 due to optional arguments behavior change?? #19

@mtasaka

Description

@mtasaka

With ruby 3.5.0dev (2025-10-27 master 308fb9c8b4) +PRISM [x86_64-linux]
ruby/ruby@308fb9c

locale git head ( cf0d8c3 ) testsuite does not pass like below.
Are there any optional arguments behavior change on ruby 3.5?? I am not sure.

Loaded suite -e
Started
E
===========================================================================================================================================================================================
Error: test_accept_charset(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:97:in 'TestDetectCGI#test_accept_charset'
      94: 
      95:   def test_accept_charset
      96:     #accept charset
  =>  97:     setup_cgi("HTTP_ACCEPT_CHARSET" => "Shift_JIS")
      98:     assert_equal("Shift_JIS", Locale.charset)
      99: 
     100:     setup_cgi("HTTP_ACCEPT_CHARSET" => "EUC-JP,*,utf-8")
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_accept_language(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:71:in 'TestDetectCGI#test_accept_language'
     68:   end
     69: 
     70:   def test_accept_language
  => 71:     setup_cgi("HTTP_ACCEPT_LANGUAGE" => "",
     72:               "HTTP_ACCEPT_CHARSET" => "")
     73:     lang = Locale.current[0]
     74:     assert_equal(Locale::Tag::Simple, lang.class)
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_candidates(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:138:in 'TestDetectCGI#test_candidates'
     135: 
     136:   def test_candidates
     137: 
  => 138:     setup_cgi("HTTP_ACCEPT_LANGUAGE" => "fr-fr,zh_CN;q=0.7,zh_TW;q=0.2,ja_JP;q=0.1")
     139: 
     140:     assert_equal common("fr-FR", "zh-CN", "zh-TW", "ja-JP", 
     141:                         "fr", "zh", "ja", "en"), Locale.candidates
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_candidates_with_app_language_tags(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:197:in 'TestDetectCGI#test_candidates_with_app_language_tags'
     194:   def test_candidates_with_app_language_tags
     195:     Locale.set_app_language_tags("fr-FR", "ja")
     196: 
  => 197:     setup_cgi("HTTP_ACCEPT_LANGUAGE" => "fr-fr,zh_CN;q=0.7,zh_TW;q=0.2,ja_JP;q=0.1")
     198: 
     199:     assert_equal common("fr-FR", "ja"), Locale.candidates
     200: 
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_candidates_with_default(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:175:in 'TestDetectCGI#test_candidates_with_default'
     172:   end
     173: 
     174:   def test_candidates_with_default
  => 175:     setup_cgi("HTTP_ACCEPT_LANGUAGE" => "fr-fr,zh_CN;q=0.7,zh_TW;q=0.2,ja_JP;q=0.1")
     176: 
     177:     Locale.default = "zh_TW"
     178:     assert_equal simple("fr-FR", "zh", "ja"), 
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_candidates_with_supported_language_tags(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:160:in 'TestDetectCGI#test_candidates_with_supported_language_tags'
     157:   end
     158: 
     159:   def test_candidates_with_supported_language_tags
  => 160:     setup_cgi("HTTP_ACCEPT_LANGUAGE" => "fr-fr,zh_CN;q=0.7,zh_TW;q=0.2,ja_JP;q=0.1")
     161: 
     162:     assert_equal common("fr_FR", "zh", "ja"), Locale.candidates(:type => :common, 
     163:                                                                 :supported_language_tags => ["fr_FR", "ja", "zh"])
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_cookie(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:66:in 'TestDetectCGI#test_cookie'
     63: 
     64:   def test_cookie
     65:     #cockie
  => 66:     setup_cgi("HTTP_COOKIE" => "lang=en-us")
     67:     assert_equal("en_US", Locale.current.to_s)
     68:   end
     69: 
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_default(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:113:in 'TestDetectCGI#test_default'
     110:   def test_default
     111:     Locale.set_default(nil)
     112:     Locale.set_default("ja-JP")
  => 113:     setup_cgi("HTTP_ACCEPT_LANGUAGE" => "",
     114:               "HTTP_ACCEPT_CHARSET" => "")
     115:     assert_equal("ja-JP", Locale.default.to_rfc.to_s)
     116:     assert_equal("ja-JP", Locale.current.to_rfc.to_s)
===========================================================================================================================================================================================
E
===========================================================================================================================================================================================
Error: test_query_string(TestDetectCGI): ArgumentError: wrong number of arguments (given 1, expected 0)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'BasicObject#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:28:in 'CustomizableCGI#initialize'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'Class#new'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:35:in 'TestDetectCGI#setup_cgi'
/builddir/build/GIT/locale/test/test_detect_cgi.rb:48:in 'TestDetectCGI#test_query_string'
     45: 
     46:   def test_query_string
     47:     #query string
  => 48:     setup_cgi("QUERY_STRING" => "lang=ja_JP")
     49:     lang = Locale.current[0]
     50:     assert_equal(Locale::Tag::Simple, lang.class)
     51:     assert_equal("ja_JP", lang.to_s)
===========================================================================================================================================================================================
F
===========================================================================================================================================================================================
Failure: test_request(TestDetectCGI)
/builddir/build/GIT/locale/test/test_detect_cgi.rb:212:in 'TestDetectCGI#test_request'
     209: 
     210:   def test_request
     211:     Locale.set_request(["ja"], [""], "", "")
  => 212:     assert_equal common("ja", "en"), Locale.candidates
     213: 
     214:     Locale.set_request(["en"], [""], "", "")
     215:     assert_equal common("en"), Locale.candidates #Cache should be cleared.
<[#<Locale::Tag::Common: ja>, #<Locale::Tag::Common: en>]> expected but was
<[#<Locale::Tag::Common: ja>]>

diff:
? [#<Locale::Tag::Common: ja>, #<Locale::Tag::Common: en>]
===========================================================================================================================================================================================
Finished in 3.164114193 seconds.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
86 tests, 705 assertions, 1 failures, 9 errors, 0 pendings, 0 omissions, 0 notifications
88.3721% passed
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
27.18 tests/s, 222.81 assertions/s

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions