| Revision: | 1.4 |
| Committed: | Sun Jan 10 23:44:03 2010 UTC (16 years, 9 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 |