Revision: | 1.4 |
Committed: | Sun Jan 10 23:44:03 2010 UTC (14 years, 4 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 |
# | User | Rev | Content |
---|---|---|---|
1 | root | 1.1 | #!/usr/bin/perl |
2 | |||
3 | use Test; | ||
4 | use IO::AIO; | ||
5 | |||
6 | # this is a lame test, but.... | ||
7 | |||
8 | root | 1.3 | BEGIN { plan tests => 12 } |
9 | root | 1.1 | |
10 | my %f; | ||
11 | ok ((opendir my $dir, "."), 1, "$!"); | ||
12 | $f{$_}++ for readdir $dir; | ||
13 | |||
14 | root | 1.2 | my %x = %f; |
15 | |||
16 | root | 1.1 | aio_readdir ".", sub { |
17 | root | 1.2 | delete $x{"."}; |
18 | delete $x{".."}; | ||
19 | root | 1.1 | if ($_[0]) { |
20 | ok (1); | ||
21 | my $ok = 1; | ||
22 | root | 1.2 | $ok &&= delete $x{$_} for @{$_[0]}; |
23 | root | 1.1 | ok ($ok); |
24 | root | 1.2 | ok (!scalar keys %x); |
25 | root | 1.1 | } else { |
26 | ok (0,1,"$!"); | ||
27 | } | ||
28 | }; | ||
29 | |||
30 | IO::AIO::poll; | ||
31 | |||
32 | root | 1.2 | %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 | root | 1.3 | ok (!keys %x); |
43 | root | 1.2 | } else { |
44 | ok (0,1,"$!"); | ||
45 | } | ||
46 | }; | ||
47 | |||
48 | IO::AIO::poll while IO::AIO::nreqs; | ||
49 | |||
50 | root | 1.3 | 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 | root | 1.4 | if ($^O eq "cygwin") { |
64 | # sigh... | ||
65 | $entries1 = [ sort @$entries1 ]; | ||
66 | $entries2 = [ sort { $a->[0] cmp $b->[0] } @$entries2 ]; | ||
67 | } | ||
68 | |||
69 | root | 1.3 | 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 | root | 1.2 | ok (1); |
77 | root | 1.1 |