Revision: | 1.4 |
Committed: | Sun Jan 10 23:44:03 2010 UTC (14 years, 5 months ago) by root |
Content type: | application/x-troff |
Branch: | MAIN |
CVS Tags: | rel-4_17, rel-4_14, rel-4_15, rel-4_12, rel-4_11, rel-4_18, rel-4_19, rel-4_4, rel-4_5, rel-4_0, rel-4_1, rel-4_2, rel-4_3, rel-3_65, rel-3_71, rel-3_7, rel-3_6, rel-3_9, rel-3_8, rel-3_93, rel-3_92, rel-3_91, rel-4_34, rel-4_31, rel-4_32, rel-4_33 |
Changes since 1.3: | +6 -0 lines |
Log Message: | 3.6 |
# | Content |
---|---|
1 | #!/usr/bin/perl |
2 | |
3 | use Test; |
4 | use IO::AIO; |
5 | |
6 | # this is a lame test, but.... |
7 | |
8 | BEGIN { plan tests => 12 } |
9 | |
10 | my %f; |
11 | ok ((opendir my $dir, "."), 1, "$!"); |
12 | $f{$_}++ for readdir $dir; |
13 | |
14 | my %x = %f; |
15 | |
16 | aio_readdir ".", sub { |
17 | delete $x{"."}; |
18 | delete $x{".."}; |
19 | if ($_[0]) { |
20 | ok (1); |
21 | my $ok = 1; |
22 | $ok &&= delete $x{$_} for @{$_[0]}; |
23 | ok ($ok); |
24 | ok (!scalar keys %x); |
25 | } else { |
26 | ok (0,1,"$!"); |
27 | } |
28 | }; |
29 | |
30 | IO::AIO::poll; |
31 | |
32 | %x = %f; |
33 | |
34 | aio_scandir ".", 0, sub { |
35 | delete $x{"."}; |
36 | delete $x{".."}; |
37 | if (@_) { |
38 | ok (1); |
39 | my $ok = 1; |
40 | $ok &&= delete $x{$_} for (@{$_[0]}, @{$_[1]}); |
41 | ok ($ok); |
42 | ok (!keys %x); |
43 | } else { |
44 | ok (0,1,"$!"); |
45 | } |
46 | }; |
47 | |
48 | IO::AIO::poll while IO::AIO::nreqs; |
49 | |
50 | my $entries1; |
51 | |
52 | aio_readdirx ".", IO::AIO::READDIR_STAT_ORDER, sub { |
53 | $entries1 = shift; |
54 | ok (! ! $entries1); |
55 | }; |
56 | |
57 | IO::AIO::poll while IO::AIO::nreqs; |
58 | |
59 | aio_readdirx ".", IO::AIO::READDIR_STAT_ORDER | IO::AIO::READDIR_DENTS, sub { |
60 | my $entries2 = shift; |
61 | ok (! ! $entries2); |
62 | |
63 | if ($^O eq "cygwin") { |
64 | # sigh... |
65 | $entries1 = [ sort @$entries1 ]; |
66 | $entries2 = [ sort { $a->[0] cmp $b->[0] } @$entries2 ]; |
67 | } |
68 | |
69 | ok ((join "\x00", @$entries1) eq (join "\x00", map $_->[0], @$entries2)); |
70 | |
71 | ok (!grep $entries2->[$_ - 1][2] > $entries2->[$_][2], 1 .. $#$entries2); |
72 | }; |
73 | |
74 | IO::AIO::poll while IO::AIO::nreqs; |
75 | |
76 | ok (1); |
77 |