Skip to content

Commit e23b7b1

Browse files
committed
---
yaml --- r: 14368 b: refs/heads/try c: b73bc30 h: refs/heads/master v: v3
1 parent 789b735 commit e23b7b1

File tree

2 files changed

+48
-1
lines changed

2 files changed

+48
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
refs/heads/master: 61b1875c16de39c166b0f4d54bba19f9c6777d1a
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
5-
refs/heads/try: 105b5f0be8364ae99d2ce0c7641fcfd16afabbad
5+
refs/heads/try: b73bc3085896c90f6215d070b24ac80bf02cee6a
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105

branches/try/src/libstd/time.rs

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,3 +45,50 @@ in seconds since an unspecified epoch.
4545
fn precise_time_s() -> float {
4646
ret (precise_time_ns() as float) / 1000000000.;
4747
}
48+
49+
#[cfg(test)]
50+
mod tests {
51+
import task;
52+
53+
#[test]
54+
fn test_get_time() {
55+
const some_recent_date: u32 = 1325376000u32; // 2012-01-01T00:00:00Z
56+
const some_future_date: u32 = 1577836800u32; // 2020-01-01T00:00:00Z
57+
58+
let tv1 = get_time();
59+
log(debug, "tv1=" + uint::str(tv1.sec as uint) + " sec + "
60+
+ uint::str(tv1.usec as uint) + " usec");
61+
62+
assert tv1.sec > some_recent_date;
63+
assert tv1.usec < 1000000u32;
64+
65+
let tv2 = get_time();
66+
log(debug, "tv2=" + uint::str(tv2.sec as uint) + " sec + "
67+
+ uint::str(tv2.usec as uint) + " usec");
68+
69+
assert tv2.sec >= tv1.sec;
70+
assert tv2.sec < some_future_date;
71+
assert tv2.usec < 1000000u32;
72+
if tv2.sec == tv1.sec {
73+
assert tv2.usec >= tv1.usec;
74+
}
75+
}
76+
77+
#[test]
78+
fn test_precise_time() {
79+
let s0 = precise_time_s();
80+
let ns1 = precise_time_ns();
81+
82+
log(debug, "s0=" + float::to_str(s0, 9u) + " sec");
83+
assert s0 > 0.;
84+
let ns0 = (s0 * 1000000000.) as u64;
85+
log(debug, "ns0=" + u64::str(ns0) + " ns");
86+
87+
log(debug, "ns1=" + u64::str(ns1) + " ns");
88+
assert ns1 >= ns0;
89+
90+
let ns2 = precise_time_ns();
91+
log(debug, "ns2=" + u64::str(ns2) + " ns");
92+
assert ns2 >= ns1;
93+
}
94+
}

0 commit comments

Comments
 (0)