ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/IO-AIO/t/03_errors.t
Revision: 1.4
Committed: Wed Oct 25 08:17:22 2006 UTC (17 years, 8 months ago) by root
Content type: application/x-troff
Branch: MAIN
CVS Tags: rel-2_32, rel-2_33, rel-2_31, rel-2_6, rel-2_4, rel-2_5, rel-2_2, rel-2_3, rel-2_0, rel-2_1, rel-2_21, rel-3_1, rel-3_0, rel-2_51, rel-3_01, rel-3_02, rel-3_03, rel-3_04, rel-3_05, rel-3_06, rel-3_07, rel-2_41, rel-3_17, rel-3_16, rel-3_15, rel-2_61, rel-2_62
Changes since 1.3: +2 -1 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 #!/usr/bin/perl
2    
3     use Fcntl;
4     use Test;
5     use POSIX qw(ENOENT EACCES EBADF);
6     use FindBin;
7     use lib "$FindBin::Bin";
8     use aio_test_common;
9    
10 root 1.3 BEGIN { plan tests => 13 }
11 root 1.1
12     IO::AIO::min_parallel 2;
13    
14     my $tempdir = tempdir();
15    
16 root 1.3 my $some_dir = "$tempdir/some_dir";
17 root 1.1 my $some_file = "$some_dir/some_file";
18 root 1.3 my $some_link = "$some_dir/some_link";
19 root 1.1
20     # create a file in a non-existent directory
21     aio_open $some_file, O_RDWR|O_CREAT|O_TRUNC, 0, sub {
22     ok((!defined $_[0]) && $! == ENOENT);
23     };
24     pcb;
25    
26     # now actually make that file
27     ok(mkdir $some_dir);
28     aio_open $some_file, O_RDWR|O_CREAT|O_TRUNC, 0644, sub {
29     my $fh = shift;
30     ok(defined $fh);
31     print $fh "contents.";
32 root 1.3 ok(-e $some_file);
33 root 1.1 close $fh;
34     };
35     pcb;
36    
37 root 1.3 # test error on unlinking nonexistent file
38 root 1.1 aio_unlink "$some_dir/notfound.txt", sub {
39     ok($_[0] < 0);
40     ok($! == ENOENT);
41     };
42     pcb;
43    
44     # write to file open for reading
45     ok(open(F, $some_file)) or die $!;
46     aio_write *F, 0, 10, "foobarbaz.", 0, sub {
47     my $written = shift;
48     ok($written < 0);
49     ok($! == EBADF);
50     };
51 root 1.2 pcb;
52 root 1.1
53 root 1.3 close F;
54    
55     aio_symlink "\\test\\", $some_link, sub {
56     ok (!$_[0]);
57     ok ("\\test\\" eq readlink $some_link);
58     };
59     pcb;
60     unlink $some_link;
61    
62 root 1.4 # test unlinking and rmdir
63 root 1.3 aio_unlink $some_file, sub {
64     ok (!shift);
65     };
66 root 1.4 pcb;
67 root 1.3 aio_rmdir $some_dir, sub {
68     ok (!shift);
69     };
70     pcb;
71    
72    
73