@@ -524,6 +524,36 @@ def obj.to_int; 3; end
524
524
Time . new ( "2021-12-25 00:00:00.123456789876 +09:00" , precision : 3 r) . subsec . should == 0.123 r
525
525
end
526
526
527
+ it "returns Time with correct subseconds when given seconds fraction is shorted than 6 digits" do
528
+ Time . new ( "2020-12-25T00:56:17.123 +09:00" ) . nsec . should == 123000000
529
+ Time . new ( "2020-12-25T00:56:17.123 +09:00" ) . usec . should == 123000
530
+ Time . new ( "2020-12-25T00:56:17.123 +09:00" ) . subsec . should == 0.123
531
+ end
532
+
533
+ it "returns Time with correct subseconds when given seconds fraction is milliseconds" do
534
+ Time . new ( "2020-12-25T00:56:17.123456 +09:00" ) . nsec . should == 123456000
535
+ Time . new ( "2020-12-25T00:56:17.123456 +09:00" ) . usec . should == 123456
536
+ Time . new ( "2020-12-25T00:56:17.123456 +09:00" ) . subsec . should == 0.123456
537
+ end
538
+
539
+ it "returns Time with correct subseconds when given seconds fraction is longer that 6 digits but shorted than 9 digits" do
540
+ Time . new ( "2020-12-25T00:56:17.12345678 +09:00" ) . nsec . should == 123456780
541
+ Time . new ( "2020-12-25T00:56:17.12345678 +09:00" ) . usec . should == 123456
542
+ Time . new ( "2020-12-25T00:56:17.12345678 +09:00" ) . subsec . should == 0.12345678
543
+ end
544
+
545
+ it "returns Time with correct subseconds when given seconds fraction is nanoseconds" do
546
+ Time . new ( "2020-12-25T00:56:17.123456789 +09:00" ) . nsec . should == 123456789
547
+ Time . new ( "2020-12-25T00:56:17.123456789 +09:00" ) . usec . should == 123456
548
+ Time . new ( "2020-12-25T00:56:17.123456789 +09:00" ) . subsec . should == 0.123456789
549
+ end
550
+
551
+ it "returns Time with correct subseconds when given seconds fraction is longer than 9 digits" do
552
+ Time . new ( "2020-12-25T00:56:17.123456789876 +09:00" ) . nsec . should == 123456789
553
+ Time . new ( "2020-12-25T00:56:17.123456789876 +09:00" ) . usec . should == 123456
554
+ Time . new ( "2020-12-25T00:56:17.123456789876 +09:00" ) . subsec . should == 0.123456789
555
+ end
556
+
527
557
ruby_version_is "" ..."3.3" do
528
558
it "raise TypeError is can't convert precision keyword argument into Integer" do
529
559
-> {
0 commit comments