summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2020-03-29 10:06:53 +0900
committerYusuke Endoh <mame@ruby-lang.org>2020-03-29 10:06:53 +0900
commit87aebecdc23d4da2130af586bafa360973cef479 (patch)
treea52a5a050438d0d9f5dceed462fb9df3cf1e43cd
parent6379c6af4d424fe20a6e4d05f5aba7229ade48ec (diff)
spec/ruby/core/time/: Use near time for timezone test
`time_with_zone.zone.should == (time_with_zone - 60*60).zone` fails when the time is immediately before the change of summer time. https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11s/ruby-master/log/20200328T232504Z.fail.html.gz ``` 1) Time#+ preserves time zone FAILED Expected "CET" == "CEST" to be truthy but was false ``` It is acceptable as it fails at most twice per year, but it would be good to use near time objects to reduce the possibility.
-rw-r--r--spec/ruby/core/time/minus_spec.rb6
-rw-r--r--spec/ruby/core/time/plus_spec.rb6
-rw-r--r--spec/ruby/core/time/succ_spec.rb2
3 files changed, 7 insertions, 7 deletions
diff --git a/spec/ruby/core/time/minus_spec.rb b/spec/ruby/core/time/minus_spec.rb
index e0fbf94cb0..65613d11e9 100644
--- a/spec/ruby/core/time/minus_spec.rb
+++ b/spec/ruby/core/time/minus_spec.rb
@@ -92,17 +92,17 @@ describe "Time#-" do
it "preserves time zone" do
time_with_zone = Time.now.utc
- time_with_zone.zone.should == (time_with_zone - 60*60).zone
+ time_with_zone.zone.should == (time_with_zone - 1).zone
time_with_zone = Time.now
- time_with_zone.zone.should == (time_with_zone - 60*60).zone
+ time_with_zone.zone.should == (time_with_zone - 1).zone
end
ruby_version_is "2.6" do
context "zone is a timezone object" do
it "preserves time zone" do
zone = TimeSpecs::Timezone.new(offset: (5*3600+30*60))
- time = Time.new(2012, 1, 1, 12, 0, 0, zone) - 60*60
+ time = Time.new(2012, 1, 1, 12, 0, 0, zone) - 1
time.zone.should == zone
end
diff --git a/spec/ruby/core/time/plus_spec.rb b/spec/ruby/core/time/plus_spec.rb
index 0a9984f180..6c29baf124 100644
--- a/spec/ruby/core/time/plus_spec.rb
+++ b/spec/ruby/core/time/plus_spec.rb
@@ -50,17 +50,17 @@ describe "Time#+" do
it "preserves time zone" do
time_with_zone = Time.now.utc
- time_with_zone.zone.should == (time_with_zone + 60*60).zone
+ time_with_zone.zone.should == (time_with_zone + 1).zone
time_with_zone = Time.now
- time_with_zone.zone.should == (time_with_zone + 60*60).zone
+ time_with_zone.zone.should == (time_with_zone + 1).zone
end
ruby_version_is "2.6" do
context "zone is a timezone object" do
it "preserves time zone" do
zone = TimeSpecs::Timezone.new(offset: (5*3600+30*60))
- time = Time.new(2012, 1, 1, 12, 0, 0, zone) + 60*60
+ time = Time.new(2012, 1, 1, 12, 0, 0, zone) + 1
time.zone.should == zone
end
diff --git a/spec/ruby/core/time/succ_spec.rb b/spec/ruby/core/time/succ_spec.rb
index e68e64b0cc..532448a1dc 100644
--- a/spec/ruby/core/time/succ_spec.rb
+++ b/spec/ruby/core/time/succ_spec.rb
@@ -30,7 +30,7 @@ describe "Time#succ" do
context "zone is a timezone object" do
it "preserves time zone" do
zone = TimeSpecs::Timezone.new(offset: (5*3600+30*60))
- time = Time.new(2012, 1, 1, 12, 0, 0, zone) - 60*60
+ time = Time.new(2012, 1, 1, 12, 0, 0, zone) - 1
time.zone.should == zone
end