fix codetest failure - ASSERT_ARGS does not have a ; after and
[parrot.git] / t / op / time.t
blob42c595f6aebb3ff0803da1d30997896610b91e8b
1 #!./parrot
2 # Copyright (C) 2001-2010, Parrot Foundation.
3 # $Id$
5 =head1 NAME
7 t/op/time.t - Time and Sleep
9 =cut
11 .sub main :main
12     .include 'test_more.pir'
14     plan(19)
15     test_time_i()
16     test_time_n()
17     test_sleep_i()
18     test_sleep_i_negative()
19     test_sleep_n()
20     test_sleep_n_negative()
21     test_tm_pasm()
22 .end
24 .sub test_time_i
25     $I0 = time
26     $I2 = isge $I0, 0
27     ok($I2, "Current int time is greater than 0")
29     $I1 = time
30     $I2 = isge $I1, $I2
31     ok($I2, "Current int time is greater than older time")
32 .end
34 .sub test_time_n
35     $N0 = time
36     $I0 = isge $N0, 0.0
37     ok($I0, "Current num time is greater than 0.0")
39     $N1 = time
40     $I0 = isge $N1, $N0
41     ok($I0, "Current num time is greater than older time")
42 .end
44 .sub test_sleep_i
45     $I0 = time
46     sleep 1
47     $I1 = time
48     $I2 = isgt $I1, $I0
49     ok($I2, "sleep_i increases time")
50     $I2 = $I0 + 1
51     $I3 = isge $I1, $I2
52     ok($I3, "sleep_i slept for at least the amount of time specified")
53 .end
55 .sub test_sleep_i_negative
56     push_eh cannot_sleep_negative
57     sleep -1
58     pop_eh
59     ok(0, "Guess what? Just time traveled")
60     .return()
61   cannot_sleep_negative:
62     pop_eh
63     ok(1, "Cannot sleep_i backwards")
64 .end
66 .sub test_sleep_n
67     $N0 = time
68     sleep 1.1
69     $N1 = time
70     $I2 = isgt $N1, $N0
71     ok($I2, "sleep_n increases time")
72     $N2 = $N0 + 1.0
73     $I2 = isge $N1, $N2
74     ok($I2, "sleep_n slept for at least the integer amount of time specified")
75 .end
77 .sub test_sleep_n_negative
78     push_eh cannot_sleep_negative
79     sleep -1.2
80     pop_eh
81     ok(0, "Guess what? Just time traveled")
82     .return()
83   cannot_sleep_negative:
84     pop_eh
85     ok(1, "Cannot sleep_n backwards")
86 .end
88 .sub test_tm_pasm
89     .include "tm.pasm"
90     is(.TM_SEC, 0, "TM_SEC ok")
91     is(.TM_MIN, 1, "TM_MIN ok")
92     is(.TM_HOUR, 2, "TM_HOUR ok")
93     is(.TM_MDAY, 3, "TM_MDAY ok")
94     is(.TM_MON, 4, "TM_MON ok")
95     is(.TM_YEAR, 5, "TM_YEAR ok")
96     is(.TM_WDAY, 6, "TM_WDAY ok")
97     is(.TM_YDAY, 7, "TM_YDAY ok")
98     is(.TM_ISDST, 8, "TM_ISDST ok")
99 .end
101 # Local Variables:
102 #   mode: pir
103 #   fill-column: 100
104 # End:
105 # vim: expandtab shiftwidth=4 ft=pir: