5ed5b7acd86ba90162ee2a8de3768078d012feef
[libguestfs.git] / perl / t / 060-readdir.t
1 # libguestfs Perl bindings -*- perl -*-
2 # Copyright (C) 2009 Red Hat Inc.
3 #
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18 use strict;
19 use warnings;
20 use Test::More tests => 12;
21
22 use Sys::Guestfs;
23
24 my $h = Sys::Guestfs->new ();
25 ok ($h);
26 open FILE, ">test.img";
27 truncate FILE, 10*1024*1024;
28 close FILE;
29 ok (1);
30
31 $h->add_drive ("test.img");
32 ok (1);
33
34 $h->launch ();
35 ok (1);
36
37 $h->part_disk ("/dev/sda", "mbr");
38 ok (1);
39 $h->mkfs ("ext2", "/dev/sda1");
40 ok (1);
41 $h->mount ("/dev/sda1", "/");
42 ok (1);
43 $h->mkdir ("/p");
44 ok (1);
45 $h->touch ("/q");
46 ok (1);
47
48 my @dirs = $h->readdir ("/");
49 @dirs = sort { $a->{name} cmp $b->{name} } @dirs;
50 foreach (@dirs) {
51   print "$_->{name} $_->{ino} $_->{ftyp}\n";
52 }
53 ok (1);
54
55 $h->sync ();
56 ok (1);
57
58 undef $h;
59 ok (1);
60
61 unlink ("test.img");