fix codetest failure - ASSERT_ARGS does not have a ; after and
[parrot.git] / t / library / osutils.t
blob58d00250145f941e3bba5506f81c9233c1569f5a
1 #!./parrot
2 # Copyright (C) 2010, Parrot Foundation.
3 # $Id$
5 =head1 NAME
7 t/library/osutils.t
9 =head1 DESCRIPTION
11 Test the osutils library
13 =head1 SYNOPSIS
15     % prove t/library/osutils.t
17 =cut
19 .sub 'main' :main
20     .include 'test_more.pir'
22     load_bytecode 'osutils.pir'
24     plan(17)
25     test_basename()
26     test_dirname()
27     test_catfile()
28     test_splitpath()
29     test_newer()
30 .end
32 .sub 'test_basename'
33     $S0 = 'foo/bar/baz.txt'
34     $S0 = basename($S0)
35     is( $S0, 'baz.txt', "basename" )
36 .end
38 .sub 'test_dirname'
39     $S0 = 'foo/bar/baz.txt'
40     $S0 = dirname($S0)
41     is( $S0, 'foo/bar', "dirname" )
42     $S0 = dirname($S0)
43     is( $S0, 'foo', "dirname" )
44     $S0 = dirname($S0)
45     is( $S0, '.', "dirname" )
46 .end
48 .sub 'test_catfile'
49     $S0 = catfile('abc', 'def', 'ghi')
50     is($S0, 'abc/def/ghi', "catfile")
51 .end
53 .sub 'test_splitpath'
54     .local string volume, directories, file
55     (volume, directories, file) = splitpath('abc/def/ghi.txt')
56     is(volume, '', "splitpath vol")
57     is(directories, 'abc/def', "splitpath dirs")
58     is(file, 'ghi.txt', "splitpath file")
60     (volume, directories, file) = splitpath('c:/abc/def/ghi.txt')
61     is(volume, 'c:', "splitpath vol")
62     is(directories, '/abc/def', "splitpath dirs")
63     is(file, 'ghi.txt', "splitpath file")
64 .end
66 .sub 'test_newer'
67     $I0 = newer('runtime/parrot/library/osutils.pbc', 'runtime/parrot/library/osutils.pir')
68     ok($I0, "newer('osutils.pbc', 'osutils.pir')")
69     $I0 = newer('runtime/parrot/library/osutils.no_file', 'runtime/parrot/library/osutils.pir')
70     nok($I0, "newer('osutils.no_file', 'osutils.pir')")
71     $I0 = newer('runtime/parrot/library/osutils.pir', 'runtime/parrot/library/osutils.pir')
72     nok($I0, "newer('osutils.pir', 'osutils.pir')")
74     $P0 = split ' ', 'runtime/parrot/library/osutils.pir runtime/parrot/include/stat.pasm'
75     $I0 = newer('runtime/parrot/library/osutils.pbc', $P0)
76     ok($I0, "newer('osutils.pbc', ['osutils.pir', 'stat.pasm'])")
77     $I0 = newer('runtime/parrot/library/osutils.no_file', $P0)
78     nok($I0, "newer('osutils.no_file', ['osutils.pir', 'stat.pasm'])")
79     $I0 = newer('runtime/parrot/library/osutils.pir', $P0)
80     nok($I0, "newer('osutils.pir', ['osutils.pir', 'stat.pasm'])")
81 .end
84 # Local Variables:
85 #   mode: pir
86 #   fill-column: 100
87 # End:
88 # vim: expandtab shiftwidth=4 ft=pir: