Skip to content

Commit a419c4b

Browse files
committed
Add some more tests to from_timestamp_(millis|micros)
1 parent 84bbea5 commit a419c4b

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

src/naive/datetime/tests.rs

+36
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,19 @@ fn test_datetime_from_timestamp_millis() {
1111
(1662921288123, "2022-09-11 18:34:48.123000000"),
1212
(1662921287890, "2022-09-11 18:34:47.890000000"),
1313
(-2208936075000, "1900-01-01 14:38:45.000000000"),
14+
(-1, "1969-12-31 23:59:59.999000000"),
1415
(0, "1970-01-01 00:00:00.000000000"),
16+
(1, "1970-01-01 00:00:00.001000000"),
17+
(998, "1970-01-01 00:00:00.998000000"),
18+
(999, "1970-01-01 00:00:00.999000000"),
19+
(1000, "1970-01-01 00:00:01.000000000"),
20+
(1001, "1970-01-01 00:00:01.001000000"),
21+
(1002, "1970-01-01 00:00:01.002000000"),
22+
(999_998, "1970-01-01 00:16:39.998000000"),
23+
(999_999, "1970-01-01 00:16:39.999000000"),
24+
(1_000_000, "1970-01-01 00:16:40.000000000"),
25+
(1_000_001, "1970-01-01 00:16:40.001000000"),
26+
(1_000_002, "1970-01-01 00:16:40.002000000"),
1527
(119731017000, "1973-10-17 18:36:57.000000000"),
1628
(1234567890000, "2009-02-13 23:31:30.000000000"),
1729
(2034061609000, "2034-06-16 09:06:49.000000000"),
@@ -48,7 +60,19 @@ fn test_datetime_from_timestamp_micros() {
4860
(1662921288123456, "2022-09-11 18:34:48.123456000"),
4961
(1662921287890000, "2022-09-11 18:34:47.890000000"),
5062
(-2208936075000000, "1900-01-01 14:38:45.000000000"),
63+
(-1, "1969-12-31 23:59:59.999999000"),
5164
(0, "1970-01-01 00:00:00.000000000"),
65+
(1, "1970-01-01 00:00:00.000001000"),
66+
(998, "1970-01-01 00:00:00.000998000"),
67+
(999, "1970-01-01 00:00:00.000999000"),
68+
(1000, "1970-01-01 00:00:00.001000000"),
69+
(1001, "1970-01-01 00:00:00.001001000"),
70+
(1002, "1970-01-01 00:00:00.001002000"),
71+
(999_998, "1970-01-01 00:00:00.999998000"),
72+
(999_999, "1970-01-01 00:00:00.999999000"),
73+
(1_000_000, "1970-01-01 00:00:01.000000000"),
74+
(1_000_001, "1970-01-01 00:00:01.000001000"),
75+
(1_000_002, "1970-01-01 00:00:01.000002000"),
5276
(119731017000000, "1973-10-17 18:36:57.000000000"),
5377
(1234567890000000, "2009-02-13 23:31:30.000000000"),
5478
(2034061609000000, "2034-06-16 09:06:49.000000000"),
@@ -77,6 +101,18 @@ fn test_datetime_from_timestamp_micros() {
77101
);
78102
}
79103
}
104+
#[test]
105+
fn test_datetime_from_timestamp_issue934() {
106+
let min_utc = crate::DateTime::<Utc>::MIN_UTC;
107+
assert_eq!(
108+
NaiveDateTime::from_timestamp_millis(min_utc.timestamp_millis()).unwrap(),
109+
min_utc.naive_utc()
110+
);
111+
assert_eq!(
112+
NaiveDateTime::from_timestamp_micros(min_utc.timestamp_micros()).unwrap(),
113+
min_utc.naive_utc()
114+
);
115+
}
80116

81117
#[test]
82118
fn test_datetime_from_timestamp() {

0 commit comments

Comments
 (0)