Skip to content

Commit d6a50ce

Browse files
committed
[cookbook] add tests for 03-dates-and-times subcategory
1 parent 6931a93 commit d6a50ce

File tree

1 file changed

+97
-0
lines changed

1 file changed

+97
-0
lines changed
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
use v6;
2+
3+
use Test;
4+
5+
plan 7;
6+
7+
subtest {
8+
plan 1;
9+
10+
my $example-name = "03-01-todays-date.pl";
11+
my $expected-output = q:to/EOD/;
12+
2015 5 9
13+
EOD
14+
15+
my $output = run-example($example-name);
16+
is($output, $expected-output, $example-name);
17+
}, "03-01-todays-date.pl";
18+
19+
subtest {
20+
plan 1;
21+
22+
my $example-name = "03-02-datetime-to-epoch.pl";
23+
my $expected-output = 361584000;
24+
25+
my $output = run-example($example-name);
26+
is($output.chomp, $expected-output, $example-name);
27+
}, "03-02-datetime-to-epoch.pl";
28+
29+
subtest {
30+
plan 1;
31+
32+
my $example-name = "03-03-epoch-to-datetime.pl";
33+
my $expected-output = q:to/EOD/;
34+
2014-12-05T15:27:14Z
35+
EOD
36+
37+
my $output = run-example($example-name);
38+
is($output, $expected-output, $example-name);
39+
}, "03-03-epoch-to-datetime.pl";
40+
41+
subtest {
42+
plan 1;
43+
44+
my $example-name = "03-04-date-add-sub.pl";
45+
my $expected-output = q:to/EOD/;
46+
1981-05-20
47+
1981-07-01T20:00:00Z
48+
EOD
49+
50+
my $output = run-example($example-name);
51+
is($output, $expected-output, $example-name);
52+
}, "03-04-date-add-sub.pl";
53+
54+
subtest {
55+
plan 1;
56+
57+
my $example-name = "03-05-sub-two-dates.pl";
58+
my $expected-output = 17655;
59+
60+
my $output = run-example($example-name);
61+
is($output.chomp, $expected-output, $example-name);
62+
}, "03-05-sub-two-dates.pl";
63+
64+
subtest {
65+
plan 1;
66+
67+
my $example-name = "03-06-day-to-num-wmy.pl";
68+
my $expected-output = q:to/EOD/;
69+
31 8 216
70+
EOD
71+
72+
my $output = run-example($example-name);
73+
is($output, $expected-output, $example-name);
74+
}, "03-06-day-to-num-wmy.pl";
75+
76+
subtest {
77+
plan 1;
78+
79+
my $example-name = "03-09-hires-times.pl";
80+
my $expected-output = 2;
81+
82+
my $output = run-example($example-name);
83+
is($output.chomp, $expected-output, $example-name);
84+
}, "03-09-hires-times.pl";
85+
86+
#| run the given example script
87+
sub run-example($name, :$script-args = Nil) {
88+
my $base-dir = "categories/cookbook/03dates-and-times";
89+
my $script-path = $base-dir ~ "/" ~ $name;
90+
my $base-cmd = "perl6 $script-path";
91+
my $output = $script-args ?? qqx{$base-cmd \"$script-args\"}
92+
!! qqx{$base-cmd};
93+
94+
return $output;
95+
}
96+
97+
# vim: expandtab shiftwidth=4 ft=perl6

0 commit comments

Comments
 (0)