diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2009-07-01 20:56:58 +0100 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2009-07-02 10:11:55 +0100 |
commit | 5186251f8f681f2ebb028423bb49a748861fd11e (patch) | |
tree | b95ea92a8ed1b9443dc04aaf7cdacc8191291bc0 /perl/t | |
parent | f20854ec61eef1aea313920f0cf193a78c1a9219 (diff) | |
download | libguestfs-5186251f8f681f2ebb028423bb49a748861fd11e.tar.gz libguestfs-5186251f8f681f2ebb028423bb49a748861fd11e.tar.xz libguestfs-5186251f8f681f2ebb028423bb49a748861fd11e.zip |
Add 'readdir' call.
This adds a readdir call (mostly intended for programs). The
return value is a list of guestfs_dirent structures.
This adds the new types 'struct guestfs_dirent' and
'struct guestfs_dirent_list', along with all the code to
return these in the different language bindings.
Also includes additional tests for OCaml and Perl bindings
to test this.
Diffstat (limited to 'perl/t')
-rw-r--r-- | perl/t/060-readdir.t | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/perl/t/060-readdir.t b/perl/t/060-readdir.t new file mode 100644 index 00000000..17dfd24b --- /dev/null +++ b/perl/t/060-readdir.t @@ -0,0 +1,63 @@ +# libguestfs Perl bindings -*- perl -*- +# Copyright (C) 2009 Red Hat Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +use strict; +use warnings; +use Test::More tests => 13; + +use Sys::Guestfs; + +my $h = Sys::Guestfs->new (); +ok ($h); +open FILE, ">test.img"; +truncate FILE, 10*1024*1024; +close FILE; +ok (1); + +$h->add_drive ("test.img"); +ok (1); + +$h->launch (); +ok (1); +$h->wait_ready (); +ok (1); + +$h->sfdisk ("/dev/sda", 0, 0, 0, [","]); +ok (1); +$h->mkfs ("ext2", "/dev/sda1"); +ok (1); +$h->mount ("/dev/sda1", "/"); +ok (1); +$h->mkdir ("/p"); +ok (1); +$h->touch ("/q"); +ok (1); + +my @dirs = $h->readdir ("/"); +@dirs = sort { $a->{name} cmp $b->{name} } @dirs; +foreach (@dirs) { + print "$_->{name} $_->{ino} $_->{ftyp}\n"; +} +ok (1); + +$h->sync (); +ok (1); + +undef $h; +ok (1); + +unlink ("test.img"); |