From 8c59b9250c25c66d6ed16429da139558295a4517 Mon Sep 17 00:00:00 2001 From: Jeremy Evans Date: Thu, 24 Oct 2019 09:35:48 -0700 Subject: Update date specs Allow Date.new spec to run on 2.7. Separate Date.valid_jd? specs, since 2.7 is now stricter and requires numeric value for the first argument. --- spec/ruby/library/date/parse_spec.rb | 8 +++----- spec/ruby/library/date/shared/valid_jd.rb | 25 +++++++++++++++++++++---- spec/ruby/library/date/valid_jd_spec.rb | 6 ++---- 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/spec/ruby/library/date/parse_spec.rb b/spec/ruby/library/date/parse_spec.rb index 2e800f9818..379847a6fd 100644 --- a/spec/ruby/library/date/parse_spec.rb +++ b/spec/ruby/library/date/parse_spec.rb @@ -11,11 +11,9 @@ describe "Date#parse" do d.should == Date.commercial(d.cwyear, d.cweek, 5) end - ruby_version_is ''...'2.7' do - it "parses a month name into a Date object" do - d = Date.parse("october") - d.should == Date.civil(Date.today.year, 10) - end + it "parses a month name into a Date object" do + d = Date.parse("october") + d.should == Date.civil(Date.today.year, 10) end it "parses a month day into a Date object" do diff --git a/spec/ruby/library/date/shared/valid_jd.rb b/spec/ruby/library/date/shared/valid_jd.rb index bd71f5abba..f6ca3f579d 100644 --- a/spec/ruby/library/date/shared/valid_jd.rb +++ b/spec/ruby/library/date/shared/valid_jd.rb @@ -1,7 +1,8 @@ describe :date_valid_jd?, shared: true do - it "returns true if passed any value other than nil" do + it "returns true if passed a number value" do Date.send(@method, -100).should be_true - Date.send(@method, :number).should be_true + Date.send(@method, 100.0).should be_true + Date.send(@method, 2**100).should be_true Date.send(@method, Rational(1,2)).should be_true end @@ -9,7 +10,23 @@ describe :date_valid_jd?, shared: true do Date.send(@method, nil).should be_false end - it "returns true if passed false" do - Date.send(@method, false).should be_true + ruby_version_is ''...'2.7' do + it "returns true if passed symbol" do + Date.send(@method, :number).should be_true + end + + it "returns true if passed false" do + Date.send(@method, false).should be_true + end + end + + ruby_version_is '2.7' do + it "returns false if passed symbol" do + Date.send(@method, :number).should be_false + end + + it "returns false if passed false" do + Date.send(@method, false).should be_false + end end end diff --git a/spec/ruby/library/date/valid_jd_spec.rb b/spec/ruby/library/date/valid_jd_spec.rb index 10c10d7525..aecaaabcf4 100644 --- a/spec/ruby/library/date/valid_jd_spec.rb +++ b/spec/ruby/library/date/valid_jd_spec.rb @@ -2,10 +2,8 @@ require_relative '../../spec_helper' require_relative 'shared/valid_jd' require 'date' -ruby_version_is ''...'2.7' do - describe "Date.valid_jd?" do +describe "Date.valid_jd?" do - it_behaves_like :date_valid_jd?, :valid_jd? + it_behaves_like :date_valid_jd?, :valid_jd? - end end -- cgit v1.2.3