From: Yui NARUSE Date: 2011-06-04T21:44:02+09:00 Subject: [ruby-dev:43624] [Ruby 1.9 - Bug #4826][Assigned] Date fails RubySpec Issue #4826 has been reported by Yui NARUSE. ---------------------------------------- Bug #4826: Date fails RubySpec http://redmine.ruby-lang.org/issues/4826 Author: Yui NARUSE Status: Assigned Priority: Normal Assignee: tadayoshi funaba Category: Target version: ruby -v: ruby 1.9.3dev (2011-06-04 trunk 31920) [x86_64-freebsd8.2] 最近の Date の変更で、以下のように RubySpec が失敗しています。 RubySpec 側を直した方がいい物もあるような気がしますが、Date 側の問題もあるようなので確認頂けますか。 spec 側を直すべきものについてはあるべき挙動を教えて頂ければそう直します。 なお、RubySpec は http://rubyspec.org/ です。 RubySpec を実行するには、git をインストールした上で、 make update-rubyspec すると、spec/rubyspec 下に rubyspec のコードが持ってこられるので、 make test-rubyspec MSPECOPT='-V -j -f s /library/date/civil_spec.rb' などとすれば該当のテストだけを走らせることができます。 6) Date#civil creats a Date for different calendar reform dates FAILED Expected 2 to equal 20 /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:61:in `block (2 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/civil_spec.rb:5:in `' 7) Date#civil doesn't blow up (illegal instruction and segfault, respectively) when fed huge numbers FAILED Expected FloatDomainError but got RangeError (float Inf out of range of integer) /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:72:in `block (4 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:71:in `each' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:71:in `block (3 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/civil_spec.rb:5:in `' 8) Date#gregorian? marks a day before the calendar reform as Julian FAILED Expected true to equal false /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/gregorian_spec.rb:8:in `block (2 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/gregorian_spec.rb:4:in `' 9) Date#gregorian? marks a day after the calendar reform as Julian FAILED Expected false to equal true /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/gregorian_spec.rb:13:in `block (2 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/gregorian_spec.rb:4:in `' 10) Date#julian? should mark a day before the calendar reform as Julian FAILED Expected false to equal true /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/julian_spec.rb:20:in `block (2 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/julian_spec.rb:16:in `' 11) Date#julian? should mark a day after the calendar reform as Julian FAILED Expected true to equal false /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/julian_spec.rb:25:in `block (2 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/julian_spec.rb:16:in `' 12) Date#new creats a Date for different calendar reform dates FAILED Expected 2 to equal 20 /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:61:in `block (2 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/new_spec.rb:5:in `' 13) Date#new doesn't blow up (illegal instruction and segfault, respectively) when fed huge numbers FAILED Expected FloatDomainError but got RangeError (float Inf out of range of integer) /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:72:in `block (4 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:71:in `each' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/shared/civil.rb:71:in `block (3 levels) in ' /usr/home/chkbuild/build/ruby-trunk/20110604T110102Z/rubyspec/library/date/new_spec.rb:5:in `' -- http://redmine.ruby-lang.org