summaryrefslogtreecommitdiff
path: root/spec/ruby/core/time/succ_spec.rb
blob: e68e64b0cc9370481e31ea8f1bd5998f60bdd1b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
require_relative '../../spec_helper'
require_relative 'fixtures/classes'

describe "Time#succ" do
  it "returns a new time one second later than time" do
    suppress_warning {
      @result = Time.at(100).succ
    }

    @result.should == Time.at(101)
  end

  it "returns a new instance" do
    time = Time.at(100)

    suppress_warning {
      @result = time.succ
    }

    @result.should_not equal time
  end

  it "is obsolete" do
    -> {
      Time.at(100).succ
    }.should complain(/Time#succ is obsolete/)
  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.zone.should == zone
      end
    end
  end
end