summaryrefslogtreecommitdiff
path: root/spec/ruby/core/time/inspect_spec.rb
blob: c3a4519a24fe4f14556778e4959deac7628902aa (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
require_relative '../../spec_helper'
require_relative 'shared/inspect'

describe "Time#inspect" do
  it_behaves_like :inspect, :inspect

  it "preserves microseconds" do
    t = Time.utc(2007, 11, 1, 15, 25, 0, 123456)
    t.inspect.should == "2007-11-01 15:25:00.123456 UTC"
  end

  it "omits trailing zeros from microseconds" do
    t = Time.utc(2007, 11, 1, 15, 25, 0, 100000)
    t.inspect.should == "2007-11-01 15:25:00.1 UTC"
  end

  it "uses the correct time zone without microseconds" do
    t = Time.utc(2000, 1, 1)
    t = t.localtime(9*3600)
    t.inspect.should == "2000-01-01 09:00:00 +0900"
  end

  it "uses the correct time zone with microseconds" do
    t = Time.utc(2000, 1, 1, 0, 0, 0, 123456)
    t = t.localtime(9*3600)
    t.inspect.should == "2000-01-01 09:00:00.123456 +0900"
  end

  it "preserves nanoseconds" do
    t = Time.utc(2007, 11, 1, 15, 25, 0, 123456.789r)
    t.inspect.should == "2007-11-01 15:25:00.123456789 UTC"
  end
end