X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=tests.c;h=f09c754572561820a57bb6d6966a32dff624e719;hb=d5709ba3fd9b666012926e0a2a7e36107433eb98;hp=a8564e1ed9acddef5b8c8fa26a747fee18c71906;hpb=6f0b962724a087a11edb5ce47aa06fa276fcb54b;p=libguestfs.git diff --git a/tests.c b/tests.c index a8564e1..f09c754 100644 --- a/tests.c +++ b/tests.c @@ -83,6 +83,7 @@ static void no_test_warnings (void) fprintf (stderr, "warning: \"guestfs_get_state\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_set_busy\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_set_ready\" has no tests\n"); + fprintf (stderr, "warning: \"guestfs_end_busy\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_ll\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_pvs_full\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_vgs_full\" has no tests\n"); @@ -104,8 +105,6 @@ static void no_test_warnings (void) fprintf (stderr, "warning: \"guestfs_chown\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_sfdisk\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_lvm_remove_all\" has no tests\n"); - fprintf (stderr, "warning: \"guestfs_command\" has no tests\n"); - fprintf (stderr, "warning: \"guestfs_command_lines\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_tune2fs_l\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_blockdev_setbsz\" has no tests\n"); fprintf (stderr, "warning: \"guestfs_tar_out\" has no tests\n"); @@ -117,9 +116,9 @@ static void no_test_warnings (void) fprintf (stderr, "warning: \"guestfs_get_e2uuid\" has no tests\n"); } -static int test_equal_0 (void) +static int test_hexdump_0 (void) { - /* InitBasicFS for equal (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for hexdump (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -177,44 +176,36 @@ static int test_equal_0 (void) if (r == -1) return -1; } - /* TestOutputTrue for equal (0) */ - { - char path[] = "/file1"; - char content[] = "contents of a file"; - int r; - suppress_error = 0; - r = guestfs_write_file (g, path, content, 0); - if (r == -1) - return -1; - } + /* TestOutput for hexdump (0) */ + char expected[] = "00000000 68 65 6c 6c 6f 0a 77 6f 72 6c 64 0a |hello.world.|\n0000000c\n"; { - char src[] = "/file1"; - char dest[] = "/file2"; + char path[] = "/new"; + char content[] = "hello\nworld\n"; int r; suppress_error = 0; - r = guestfs_cp (g, src, dest); + r = guestfs_write_file (g, path, content, 12); if (r == -1) return -1; } { - char file1[] = "/file1"; - char file2[] = "/file2"; - int r; + char path[] = "/new"; + char *r; suppress_error = 0; - r = guestfs_equal (g, file1, file2); - if (r == -1) + r = guestfs_hexdump (g, path); + if (r == NULL) return -1; - if (!r) { - fprintf (stderr, "test_equal_0: expected true, got false\n"); + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_hexdump_0: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } + free (r); } return 0; } -static int test_equal_1 (void) +static int test_strings_e_0 (void) { - /* InitBasicFS for equal (1): create ext2 on /dev/sda1 */ + /* InitBasicFS for strings_e (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -272,19 +263,10 @@ static int test_equal_1 (void) if (r == -1) return -1; } - /* TestOutputFalse for equal (1) */ - { - char path[] = "/file1"; - char content[] = "contents of a file"; - int r; - suppress_error = 0; - r = guestfs_write_file (g, path, content, 0); - if (r == -1) - return -1; - } + /* TestOutputList for strings_e (0) */ { - char path[] = "/file2"; - char content[] = "contents of another file"; + char path[] = "/new"; + char content[] = "hello\nworld\n"; int r; suppress_error = 0; r = guestfs_write_file (g, path, content, 0); @@ -292,24 +274,29 @@ static int test_equal_1 (void) return -1; } { - char file1[] = "/file1"; - char file2[] = "/file2"; - int r; + char encoding[] = "b"; + char path[] = "/new"; + char **r; + int i; suppress_error = 0; - r = guestfs_equal (g, file1, file2); - if (r == -1) + r = guestfs_strings_e (g, encoding, path); + if (r == NULL) return -1; - if (r) { - fprintf (stderr, "test_equal_1: expected false, got true\n"); + if (r[0] != NULL) { + fprintf (stderr, "test_strings_e_0: extra elements returned from command\n"); + print_strings (r); return -1; } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); } return 0; } -static int test_equal_2 (void) +static int test_strings_0 (void) { - /* InitBasicFS for equal (2): create ext2 on /dev/sda1 */ + /* InitBasicFS for strings (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -367,59 +354,63 @@ static int test_equal_2 (void) if (r == -1) return -1; } - /* TestLastFail for equal (2) */ - { - char file1[] = "/file1"; - char file2[] = "/file2"; - int r; - suppress_error = 1; - r = guestfs_equal (g, file1, file2); - if (r != -1) - return -1; - } - return 0; -} - -static int test_ping_daemon_0 (void) -{ - /* InitEmpty for ping_daemon (0) */ + /* TestOutputList for strings (0) */ { - char device[] = "/dev/sda"; - device[5] = devchar; + char path[] = "/new"; + char content[] = "hello\nworld\n"; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); + r = guestfs_write_file (g, path, content, 0); if (r == -1) return -1; } { - int r; + char path[] = "/new"; + char **r; + int i; suppress_error = 0; - r = guestfs_umount_all (g); - if (r == -1) + r = guestfs_strings (g, path); + if (r == NULL) return -1; - } - { - int r; - suppress_error = 0; - r = guestfs_lvm_remove_all (g); - if (r == -1) + if (!r[0]) { + fprintf (stderr, "test_strings_0: short list returned from command\n"); + print_strings (r); return -1; - } - /* TestRun for ping_daemon (0) */ - { - int r; - suppress_error = 0; - r = guestfs_ping_daemon (g); - if (r == -1) + } + { + char expected[] = "hello"; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_strings_0: short list returned from command\n"); + print_strings (r); return -1; + } + { + char expected[] = "world"; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (r[2] != NULL) { + fprintf (stderr, "test_strings_0: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); } return 0; } -static int test_dmesg_0 (void) +static int test_strings_1 (void) { - /* InitEmpty for dmesg (0) */ + /* InitBasicFS for strings (1): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -443,58 +434,72 @@ static int test_dmesg_0 (void) if (r == -1) return -1; } - /* TestRun for dmesg (0) */ { - char *r; + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; suppress_error = 0; - r = guestfs_dmesg (g); - if (r == NULL) + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) return -1; - free (r); } - return 0; -} - -static int test_drop_caches_0 (void) -{ - /* InitEmpty for drop_caches (0) */ { - char device[] = "/dev/sda"; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; device[5] = devchar; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); + r = guestfs_mkfs (g, fstype, device); if (r == -1) return -1; } { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; int r; suppress_error = 0; - r = guestfs_umount_all (g); + r = guestfs_mount (g, device, mountpoint); if (r == -1) return -1; } + /* TestOutputList for strings (1) */ { + char path[] = "/new"; int r; suppress_error = 0; - r = guestfs_lvm_remove_all (g); + r = guestfs_touch (g, path); if (r == -1) return -1; } - /* TestRun for drop_caches (0) */ { - int r; + char path[] = "/new"; + char **r; + int i; suppress_error = 0; - r = guestfs_drop_caches (g, 3); - if (r == -1) + r = guestfs_strings (g, path); + if (r == NULL) + return -1; + if (r[0] != NULL) { + fprintf (stderr, "test_strings_1: extra elements returned from command\n"); + print_strings (r); return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); } return 0; } -static int test_mv_0 (void) +static int test_equal_0 (void) { - /* InitBasicFS for mv (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for equal (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -552,11 +557,10 @@ static int test_mv_0 (void) if (r == -1) return -1; } - /* TestOutput for mv (0) */ - char expected[] = "file content"; + /* TestOutputTrue for equal (0) */ { - char path[] = "/old"; - char content[] = "file content"; + char path[] = "/file1"; + char content[] = "contents of a file"; int r; suppress_error = 0; r = guestfs_write_file (g, path, content, 0); @@ -564,33 +568,33 @@ static int test_mv_0 (void) return -1; } { - char src[] = "/old"; - char dest[] = "/new"; + char src[] = "/file1"; + char dest[] = "/file2"; int r; suppress_error = 0; - r = guestfs_mv (g, src, dest); + r = guestfs_cp (g, src, dest); if (r == -1) return -1; } { - char path[] = "/new"; - char *r; + char file1[] = "/file1"; + char file2[] = "/file2"; + int r; suppress_error = 0; - r = guestfs_cat (g, path); - if (r == NULL) + r = guestfs_equal (g, file1, file2); + if (r == -1) return -1; - if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_mv_0: expected \"%s\" but got \"%s\"\n", expected, r); + if (!r) { + fprintf (stderr, "test_equal_0: expected true, got false\n"); return -1; } - free (r); } return 0; } -static int test_mv_1 (void) +static int test_equal_1 (void) { - /* InitBasicFS for mv (1): create ext2 on /dev/sda1 */ + /* InitBasicFS for equal (1): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -648,10 +652,10 @@ static int test_mv_1 (void) if (r == -1) return -1; } - /* TestOutputFalse for mv (1) */ + /* TestOutputFalse for equal (1) */ { - char path[] = "/old"; - char content[] = "file content"; + char path[] = "/file1"; + char content[] = "contents of a file"; int r; suppress_error = 0; r = guestfs_write_file (g, path, content, 0); @@ -659,32 +663,33 @@ static int test_mv_1 (void) return -1; } { - char src[] = "/old"; - char dest[] = "/new"; + char path[] = "/file2"; + char content[] = "contents of another file"; int r; suppress_error = 0; - r = guestfs_mv (g, src, dest); + r = guestfs_write_file (g, path, content, 0); if (r == -1) return -1; } { - char path[] = "/old"; + char file1[] = "/file1"; + char file2[] = "/file2"; int r; suppress_error = 0; - r = guestfs_is_file (g, path); + r = guestfs_equal (g, file1, file2); if (r == -1) return -1; if (r) { - fprintf (stderr, "test_mv_1: expected false, got true\n"); + fprintf (stderr, "test_equal_1: expected false, got true\n"); return -1; } } return 0; } -static int test_cp_a_0 (void) +static int test_equal_2 (void) { - /* InitBasicFS for cp_a (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for equal (2): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -742,61 +747,134 @@ static int test_cp_a_0 (void) if (r == -1) return -1; } - /* TestOutput for cp_a (0) */ - char expected[] = "file content"; + /* TestLastFail for equal (2) */ { - char path[] = "/olddir"; + char file1[] = "/file1"; + char file2[] = "/file2"; int r; - suppress_error = 0; - r = guestfs_mkdir (g, path); - if (r == -1) + suppress_error = 1; + r = guestfs_equal (g, file1, file2); + if (r != -1) return -1; } + return 0; +} + +static int test_ping_daemon_0 (void) +{ + /* InitEmpty for ping_daemon (0) */ { - char path[] = "/newdir"; + char device[] = "/dev/sda"; + device[5] = devchar; int r; suppress_error = 0; - r = guestfs_mkdir (g, path); + r = guestfs_blockdev_setrw (g, device); if (r == -1) return -1; } { - char path[] = "/olddir/file"; - char content[] = "file content"; int r; suppress_error = 0; - r = guestfs_write_file (g, path, content, 0); + r = guestfs_umount_all (g); if (r == -1) return -1; } { - char src[] = "/olddir"; - char dest[] = "/newdir"; int r; suppress_error = 0; - r = guestfs_cp_a (g, src, dest); + r = guestfs_lvm_remove_all (g); if (r == -1) return -1; } + /* TestRun for ping_daemon (0) */ + { + int r; + suppress_error = 0; + r = guestfs_ping_daemon (g); + if (r == -1) + return -1; + } + return 0; +} + +static int test_dmesg_0 (void) +{ + /* InitEmpty for dmesg (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestRun for dmesg (0) */ { - char path[] = "/newdir/olddir/file"; char *r; suppress_error = 0; - r = guestfs_cat (g, path); + r = guestfs_dmesg (g); if (r == NULL) return -1; - if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_cp_a_0: expected \"%s\" but got \"%s\"\n", expected, r); - return -1; - } free (r); } return 0; } -static int test_cp_0 (void) +static int test_drop_caches_0 (void) { - /* InitBasicFS for cp (0): create ext2 on /dev/sda1 */ + /* InitEmpty for drop_caches (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestRun for drop_caches (0) */ + { + int r; + suppress_error = 0; + r = guestfs_drop_caches (g, 3); + if (r == -1) + return -1; + } + return 0; +} + +static int test_mv_0 (void) +{ + /* InitBasicFS for mv (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -854,7 +932,7 @@ static int test_cp_0 (void) if (r == -1) return -1; } - /* TestOutput for cp (0) */ + /* TestOutput for mv (0) */ char expected[] = "file content"; { char path[] = "/old"; @@ -870,7 +948,7 @@ static int test_cp_0 (void) char dest[] = "/new"; int r; suppress_error = 0; - r = guestfs_cp (g, src, dest); + r = guestfs_mv (g, src, dest); if (r == -1) return -1; } @@ -882,7 +960,7 @@ static int test_cp_0 (void) if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_cp_0: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_mv_0: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -890,9 +968,9 @@ static int test_cp_0 (void) return 0; } -static int test_cp_1 (void) +static int test_mv_1 (void) { - /* InitBasicFS for cp (1): create ext2 on /dev/sda1 */ + /* InitBasicFS for mv (1): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -950,7 +1028,7 @@ static int test_cp_1 (void) if (r == -1) return -1; } - /* TestOutputTrue for cp (1) */ + /* TestOutputFalse for mv (1) */ { char path[] = "/old"; char content[] = "file content"; @@ -965,7 +1043,7 @@ static int test_cp_1 (void) char dest[] = "/new"; int r; suppress_error = 0; - r = guestfs_cp (g, src, dest); + r = guestfs_mv (g, src, dest); if (r == -1) return -1; } @@ -976,17 +1054,17 @@ static int test_cp_1 (void) r = guestfs_is_file (g, path); if (r == -1) return -1; - if (!r) { - fprintf (stderr, "test_cp_1: expected true, got false\n"); + if (r) { + fprintf (stderr, "test_mv_1: expected false, got true\n"); return -1; } } return 0; } -static int test_cp_2 (void) +static int test_cp_a_0 (void) { - /* InitBasicFS for cp (2): create ext2 on /dev/sda1 */ + /* InitBasicFS for cp_a (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1044,19 +1122,18 @@ static int test_cp_2 (void) if (r == -1) return -1; } - /* TestOutput for cp (2) */ + /* TestOutput for cp_a (0) */ char expected[] = "file content"; { - char path[] = "/old"; - char content[] = "file content"; + char path[] = "/olddir"; int r; suppress_error = 0; - r = guestfs_write_file (g, path, content, 0); + r = guestfs_mkdir (g, path); if (r == -1) return -1; } { - char path[] = "/dir"; + char path[] = "/newdir"; int r; suppress_error = 0; r = guestfs_mkdir (g, path); @@ -1064,23 +1141,32 @@ static int test_cp_2 (void) return -1; } { - char src[] = "/old"; - char dest[] = "/dir/new"; + char path[] = "/olddir/file"; + char content[] = "file content"; int r; suppress_error = 0; - r = guestfs_cp (g, src, dest); + r = guestfs_write_file (g, path, content, 0); if (r == -1) return -1; } { - char path[] = "/dir/new"; + char src[] = "/olddir"; + char dest[] = "/newdir"; + int r; + suppress_error = 0; + r = guestfs_cp_a (g, src, dest); + if (r == -1) + return -1; + } + { + char path[] = "/newdir/olddir/file"; char *r; suppress_error = 0; r = guestfs_cat (g, path); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_cp_2: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_cp_a_0: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -1088,9 +1174,9 @@ static int test_cp_2 (void) return 0; } -static int test_grub_install_0 (void) +static int test_cp_0 (void) { - /* InitBasicFS for grub_install (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for cp (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1148,35 +1234,45 @@ static int test_grub_install_0 (void) if (r == -1) return -1; } - /* TestOutputTrue for grub_install (0) */ + /* TestOutput for cp (0) */ + char expected[] = "file content"; { - char root[] = "/"; - char device[] = "/dev/sda1"; - device[5] = devchar; + char path[] = "/old"; + char content[] = "file content"; int r; suppress_error = 0; - r = guestfs_grub_install (g, root, device); + r = guestfs_write_file (g, path, content, 0); if (r == -1) return -1; } { - char path[] = "/boot"; + char src[] = "/old"; + char dest[] = "/new"; int r; suppress_error = 0; - r = guestfs_is_dir (g, path); + r = guestfs_cp (g, src, dest); if (r == -1) return -1; - if (!r) { - fprintf (stderr, "test_grub_install_0: expected true, got false\n"); + } + { + char path[] = "/new"; + char *r; + suppress_error = 0; + r = guestfs_cat (g, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_cp_0: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } + free (r); } return 0; } -static int test_zero_0 (void) +static int test_cp_1 (void) { - /* InitBasicFS for zero (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for cp (1): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1234,46 +1330,43 @@ static int test_zero_0 (void) if (r == -1) return -1; } - /* TestOutput for zero (0) */ - char expected[] = "data"; + /* TestOutputTrue for cp (1) */ { - char pathordevice[] = "/dev/sda1"; - pathordevice[5] = devchar; + char path[] = "/old"; + char content[] = "file content"; int r; suppress_error = 0; - r = guestfs_umount (g, pathordevice); + r = guestfs_write_file (g, path, content, 0); if (r == -1) return -1; } { - char device[] = "/dev/sda1"; - device[5] = devchar; + char src[] = "/old"; + char dest[] = "/new"; int r; suppress_error = 0; - r = guestfs_zero (g, device); + r = guestfs_cp (g, src, dest); if (r == -1) return -1; } { - char path[] = "/dev/sda1"; - path[5] = devchar; - char *r; + char path[] = "/old"; + int r; suppress_error = 0; - r = guestfs_file (g, path); - if (r == NULL) + r = guestfs_is_file (g, path); + if (r == -1) return -1; - if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_zero_0: expected \"%s\" but got \"%s\"\n", expected, r); + if (!r) { + fprintf (stderr, "test_cp_1: expected true, got false\n"); return -1; } - free (r); } return 0; } -static int test_fsck_0 (void) +static int test_cp_2 (void) { - /* InitBasicFS for fsck (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for cp (2): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1331,36 +1424,53 @@ static int test_fsck_0 (void) if (r == -1) return -1; } - /* TestOutputInt for fsck (0) */ + /* TestOutput for cp (2) */ + char expected[] = "file content"; { - char pathordevice[] = "/dev/sda1"; - pathordevice[5] = devchar; + char path[] = "/old"; + char content[] = "file content"; int r; suppress_error = 0; - r = guestfs_umount (g, pathordevice); + r = guestfs_write_file (g, path, content, 0); if (r == -1) return -1; } { - char fstype[] = "ext2"; - char device[] = "/dev/sda1"; - device[5] = devchar; + char path[] = "/dir"; int r; suppress_error = 0; - r = guestfs_fsck (g, fstype, device); + r = guestfs_mkdir (g, path); if (r == -1) return -1; - if (r != 0) { - fprintf (stderr, "test_fsck_0: expected 0 but got %d\n", (int) r); + } + { + char src[] = "/old"; + char dest[] = "/dir/new"; + int r; + suppress_error = 0; + r = guestfs_cp (g, src, dest); + if (r == -1) + return -1; + } + { + char path[] = "/dir/new"; + char *r; + suppress_error = 0; + r = guestfs_cat (g, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_cp_2: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } + free (r); } return 0; } -static int test_fsck_1 (void) +static int test_grub_install_0 (void) { - /* InitBasicFS for fsck (1): create ext2 on /dev/sda1 */ + /* InitBasicFS for grub_install (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1418,45 +1528,35 @@ static int test_fsck_1 (void) if (r == -1) return -1; } - /* TestOutputInt for fsck (1) */ - { - char pathordevice[] = "/dev/sda1"; - pathordevice[5] = devchar; - int r; - suppress_error = 0; - r = guestfs_umount (g, pathordevice); - if (r == -1) - return -1; - } + /* TestOutputTrue for grub_install (0) */ { + char root[] = "/"; char device[] = "/dev/sda1"; device[5] = devchar; int r; suppress_error = 0; - r = guestfs_zero (g, device); + r = guestfs_grub_install (g, root, device); if (r == -1) return -1; } { - char fstype[] = "ext2"; - char device[] = "/dev/sda1"; - device[5] = devchar; + char path[] = "/boot"; int r; suppress_error = 0; - r = guestfs_fsck (g, fstype, device); + r = guestfs_is_dir (g, path); if (r == -1) return -1; - if (r != 8) { - fprintf (stderr, "test_fsck_1: expected 8 but got %d\n", (int) r); + if (!r) { + fprintf (stderr, "test_grub_install_0: expected true, got false\n"); return -1; } } return 0; } -static int test_set_e2uuid_0 (void) +static int test_zero_0 (void) { - /* InitBasicFS for set_e2uuid (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for zero (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1514,28 +1614,36 @@ static int test_set_e2uuid_0 (void) if (r == -1) return -1; } - /* TestOutput for set_e2uuid (0) */ - char expected[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d"; + /* TestOutput for zero (0) */ + char expected[] = "data"; { - char device[] = "/dev/sda1"; - device[5] = devchar; - char uuid[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d"; + char pathordevice[] = "/dev/sda1"; + pathordevice[5] = devchar; int r; suppress_error = 0; - r = guestfs_set_e2uuid (g, device, uuid); + r = guestfs_umount (g, pathordevice); if (r == -1) return -1; } { char device[] = "/dev/sda1"; device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_zero (g, device); + if (r == -1) + return -1; + } + { + char path[] = "/dev/sda1"; + path[5] = devchar; char *r; suppress_error = 0; - r = guestfs_get_e2uuid (g, device); + r = guestfs_file (g, path); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_set_e2uuid_0: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_zero_0: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -1543,9 +1651,9 @@ static int test_set_e2uuid_0 (void) return 0; } -static int test_set_e2uuid_1 (void) +static int test_fsck_0 (void) { - /* InitBasicFS for set_e2uuid (1): create ext2 on /dev/sda1 */ + /* InitBasicFS for fsck (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1603,38 +1711,36 @@ static int test_set_e2uuid_1 (void) if (r == -1) return -1; } - /* TestOutput for set_e2uuid (1) */ - char expected[] = ""; + /* TestOutputInt for fsck (0) */ { - char device[] = "/dev/sda1"; - device[5] = devchar; - char uuid[] = "clear"; + char pathordevice[] = "/dev/sda1"; + pathordevice[5] = devchar; int r; suppress_error = 0; - r = guestfs_set_e2uuid (g, device, uuid); + r = guestfs_umount (g, pathordevice); if (r == -1) return -1; } { + char fstype[] = "ext2"; char device[] = "/dev/sda1"; device[5] = devchar; - char *r; + int r; suppress_error = 0; - r = guestfs_get_e2uuid (g, device); - if (r == NULL) + r = guestfs_fsck (g, fstype, device); + if (r == -1) return -1; - if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_set_e2uuid_1: expected \"%s\" but got \"%s\"\n", expected, r); + if (r != 0) { + fprintf (stderr, "test_fsck_0: expected 0 but got %d\n", (int) r); return -1; } - free (r); } return 0; } -static int test_set_e2uuid_2 (void) +static int test_fsck_1 (void) { - /* InitBasicFS for set_e2uuid (2): create ext2 on /dev/sda1 */ + /* InitBasicFS for fsck (1): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1692,23 +1798,45 @@ static int test_set_e2uuid_2 (void) if (r == -1) return -1; } - /* TestRun for set_e2uuid (2) */ + /* TestOutputInt for fsck (1) */ + { + char pathordevice[] = "/dev/sda1"; + pathordevice[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_umount (g, pathordevice); + if (r == -1) + return -1; + } { char device[] = "/dev/sda1"; device[5] = devchar; - char uuid[] = "random"; int r; suppress_error = 0; - r = guestfs_set_e2uuid (g, device, uuid); + r = guestfs_zero (g, device); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_fsck (g, fstype, device); if (r == -1) return -1; + if (r != 8) { + fprintf (stderr, "test_fsck_1: expected 8 but got %d\n", (int) r); + return -1; + } } return 0; } -static int test_set_e2uuid_3 (void) +static int test_set_e2uuid_0 (void) { - /* InitBasicFS for set_e2uuid (3): create ext2 on /dev/sda1 */ + /* InitBasicFS for set_e2uuid (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1766,23 +1894,38 @@ static int test_set_e2uuid_3 (void) if (r == -1) return -1; } - /* TestRun for set_e2uuid (3) */ + /* TestOutput for set_e2uuid (0) */ + char expected[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d"; { char device[] = "/dev/sda1"; device[5] = devchar; - char uuid[] = "time"; + char uuid[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d"; int r; suppress_error = 0; r = guestfs_set_e2uuid (g, device, uuid); if (r == -1) return -1; } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char *r; + suppress_error = 0; + r = guestfs_get_e2uuid (g, device); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_set_e2uuid_0: expected \"%s\" but got \"%s\"\n", expected, r); + return -1; + } + free (r); + } return 0; } -static int test_set_e2label_0 (void) +static int test_set_e2uuid_1 (void) { - /* InitBasicFS for set_e2label (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for set_e2uuid (1): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1840,15 +1983,15 @@ static int test_set_e2label_0 (void) if (r == -1) return -1; } - /* TestOutput for set_e2label (0) */ - char expected[] = "testlabel"; + /* TestOutput for set_e2uuid (1) */ + char expected[] = ""; { char device[] = "/dev/sda1"; device[5] = devchar; - char label[] = "testlabel"; + char uuid[] = "clear"; int r; suppress_error = 0; - r = guestfs_set_e2label (g, device, label); + r = guestfs_set_e2uuid (g, device, uuid); if (r == -1) return -1; } @@ -1857,11 +2000,11 @@ static int test_set_e2label_0 (void) device[5] = devchar; char *r; suppress_error = 0; - r = guestfs_get_e2label (g, device); + r = guestfs_get_e2uuid (g, device); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_set_e2label_0: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_set_e2uuid_1: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -1869,9 +2012,9 @@ static int test_set_e2label_0 (void) return 0; } -static int test_pvremove_0 (void) +static int test_set_e2uuid_2 (void) { - /* InitEmpty for pvremove (0) */ + /* InitBasicFS for set_e2uuid (2): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1895,87 +2038,57 @@ static int test_pvremove_0 (void) if (r == -1) return -1; } - /* TestOutputList for pvremove (0) */ { char device[] = "/dev/sda"; device[5] = devchar; - int r; - suppress_error = 0; - r = guestfs_pvcreate (g, device); - if (r == -1) - return -1; - } - { - char volgroup[] = "VG"; - char physvols_0[] = "/dev/sda"; - physvols_0[5] = devchar; - char *physvols[] = { - physvols_0, + char lines_0[] = ","; + char *lines[] = { + lines_0, NULL }; int r; suppress_error = 0; - r = guestfs_vgcreate (g, volgroup, physvols); - if (r == -1) - return -1; - } - { - char logvol[] = "LV1"; - char volgroup[] = "VG"; - int r; - suppress_error = 0; - r = guestfs_lvcreate (g, logvol, volgroup, 50); + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); if (r == -1) return -1; } { - char logvol[] = "LV2"; - char volgroup[] = "VG"; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; int r; suppress_error = 0; - r = guestfs_lvcreate (g, logvol, volgroup, 50); + r = guestfs_mkfs (g, fstype, device); if (r == -1) return -1; } { - char vgname[] = "VG"; + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; int r; suppress_error = 0; - r = guestfs_vgremove (g, vgname); + r = guestfs_mount (g, device, mountpoint); if (r == -1) return -1; } + /* TestRun for set_e2uuid (2) */ { - char device[] = "/dev/sda"; + char device[] = "/dev/sda1"; device[5] = devchar; + char uuid[] = "random"; int r; suppress_error = 0; - r = guestfs_pvremove (g, device); + r = guestfs_set_e2uuid (g, device, uuid); if (r == -1) return -1; } - { - char **r; - int i; - suppress_error = 0; - r = guestfs_lvs (g); - if (r == NULL) - return -1; - if (r[0] != NULL) { - fprintf (stderr, "test_pvremove_0: extra elements returned from command\n"); - print_strings (r); - return -1; - } - for (i = 0; r[i] != NULL; ++i) - free (r[i]); - free (r); - } return 0; } -static int test_pvremove_1 (void) +static int test_set_e2uuid_3 (void) { - /* InitEmpty for pvremove (1) */ + /* InitBasicFS for set_e2uuid (3): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -1999,87 +2112,146 @@ static int test_pvremove_1 (void) if (r == -1) return -1; } - /* TestOutputList for pvremove (1) */ { char device[] = "/dev/sda"; device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; int r; suppress_error = 0; - r = guestfs_pvcreate (g, device); + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); if (r == -1) return -1; } { - char volgroup[] = "VG"; - char physvols_0[] = "/dev/sda"; - physvols_0[5] = devchar; - char *physvols[] = { - physvols_0, - NULL - }; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; int r; suppress_error = 0; - r = guestfs_vgcreate (g, volgroup, physvols); + r = guestfs_mkfs (g, fstype, device); if (r == -1) return -1; } { - char logvol[] = "LV1"; - char volgroup[] = "VG"; + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; int r; suppress_error = 0; - r = guestfs_lvcreate (g, logvol, volgroup, 50); + r = guestfs_mount (g, device, mountpoint); if (r == -1) return -1; } + /* TestRun for set_e2uuid (3) */ { - char logvol[] = "LV2"; - char volgroup[] = "VG"; + char device[] = "/dev/sda1"; + device[5] = devchar; + char uuid[] = "time"; int r; suppress_error = 0; - r = guestfs_lvcreate (g, logvol, volgroup, 50); + r = guestfs_set_e2uuid (g, device, uuid); if (r == -1) return -1; } - { - char vgname[] = "VG"; - int r; + return 0; +} + +static int test_set_e2label_0 (void) +{ + /* InitBasicFS for set_e2label (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; suppress_error = 0; - r = guestfs_vgremove (g, vgname); + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); if (r == -1) return -1; } { char device[] = "/dev/sda"; device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; int r; suppress_error = 0; - r = guestfs_pvremove (g, device); + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); if (r == -1) return -1; } { - char **r; - int i; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; suppress_error = 0; - r = guestfs_vgs (g); + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutput for set_e2label (0) */ + char expected[] = "testlabel"; + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char label[] = "testlabel"; + int r; + suppress_error = 0; + r = guestfs_set_e2label (g, device, label); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char *r; + suppress_error = 0; + r = guestfs_get_e2label (g, device); if (r == NULL) return -1; - if (r[0] != NULL) { - fprintf (stderr, "test_pvremove_1: extra elements returned from command\n"); - print_strings (r); + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_set_e2label_0: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } - for (i = 0; r[i] != NULL; ++i) - free (r[i]); free (r); } return 0; } -static int test_pvremove_2 (void) +static int test_pvremove_0 (void) { - /* InitEmpty for pvremove (2) */ + /* InitEmpty for pvremove (0) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2103,7 +2275,7 @@ static int test_pvremove_2 (void) if (r == -1) return -1; } - /* TestOutputList for pvremove (2) */ + /* TestOutputList for pvremove (0) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2166,11 +2338,11 @@ static int test_pvremove_2 (void) char **r; int i; suppress_error = 0; - r = guestfs_pvs (g); + r = guestfs_lvs (g); if (r == NULL) return -1; if (r[0] != NULL) { - fprintf (stderr, "test_pvremove_2: extra elements returned from command\n"); + fprintf (stderr, "test_pvremove_0: extra elements returned from command\n"); print_strings (r); return -1; } @@ -2181,9 +2353,9 @@ static int test_pvremove_2 (void) return 0; } -static int test_vgremove_0 (void) +static int test_pvremove_1 (void) { - /* InitEmpty for vgremove (0) */ + /* InitEmpty for pvremove (1) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2207,7 +2379,7 @@ static int test_vgremove_0 (void) if (r == -1) return -1; } - /* TestOutputList for vgremove (0) */ + /* TestOutputList for pvremove (1) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2258,14 +2430,23 @@ static int test_vgremove_0 (void) return -1; } { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_pvremove (g, device); + if (r == -1) + return -1; + } + { char **r; int i; suppress_error = 0; - r = guestfs_lvs (g); + r = guestfs_vgs (g); if (r == NULL) return -1; if (r[0] != NULL) { - fprintf (stderr, "test_vgremove_0: extra elements returned from command\n"); + fprintf (stderr, "test_pvremove_1: extra elements returned from command\n"); print_strings (r); return -1; } @@ -2276,9 +2457,9 @@ static int test_vgremove_0 (void) return 0; } -static int test_vgremove_1 (void) +static int test_pvremove_2 (void) { - /* InitEmpty for vgremove (1) */ + /* InitEmpty for pvremove (2) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2302,7 +2483,7 @@ static int test_vgremove_1 (void) if (r == -1) return -1; } - /* TestOutputList for vgremove (1) */ + /* TestOutputList for pvremove (2) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2353,14 +2534,23 @@ static int test_vgremove_1 (void) return -1; } { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_pvremove (g, device); + if (r == -1) + return -1; + } + { char **r; int i; suppress_error = 0; - r = guestfs_vgs (g); + r = guestfs_pvs (g); if (r == NULL) return -1; if (r[0] != NULL) { - fprintf (stderr, "test_vgremove_1: extra elements returned from command\n"); + fprintf (stderr, "test_pvremove_2: extra elements returned from command\n"); print_strings (r); return -1; } @@ -2371,9 +2561,9 @@ static int test_vgremove_1 (void) return 0; } -static int test_lvremove_0 (void) +static int test_vgremove_0 (void) { - /* InitEmpty for lvremove (0) */ + /* InitEmpty for vgremove (0) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2397,7 +2587,7 @@ static int test_lvremove_0 (void) if (r == -1) return -1; } - /* TestOutputList for lvremove (0) */ + /* TestOutputList for vgremove (0) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2440,10 +2630,10 @@ static int test_lvremove_0 (void) return -1; } { - char device[] = "/dev/VG/LV1"; + char vgname[] = "VG"; int r; suppress_error = 0; - r = guestfs_lvremove (g, device); + r = guestfs_vgremove (g, vgname); if (r == -1) return -1; } @@ -2454,20 +2644,8 @@ static int test_lvremove_0 (void) r = guestfs_lvs (g); if (r == NULL) return -1; - if (!r[0]) { - fprintf (stderr, "test_lvremove_0: short list returned from command\n"); - print_strings (r); - return -1; - } - { - char expected[] = "/dev/VG/LV2"; - if (strcmp (r[0], expected) != 0) { - fprintf (stderr, "test_lvremove_0: expected \"%s\" but got \"%s\"\n", expected, r[0]); - return -1; - } - } - if (r[1] != NULL) { - fprintf (stderr, "test_lvremove_0: extra elements returned from command\n"); + if (r[0] != NULL) { + fprintf (stderr, "test_vgremove_0: extra elements returned from command\n"); print_strings (r); return -1; } @@ -2478,9 +2656,9 @@ static int test_lvremove_0 (void) return 0; } -static int test_lvremove_1 (void) +static int test_vgremove_1 (void) { - /* InitEmpty for lvremove (1) */ + /* InitEmpty for vgremove (1) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2504,7 +2682,7 @@ static int test_lvremove_1 (void) if (r == -1) return -1; } - /* TestOutputList for lvremove (1) */ + /* TestOutputList for vgremove (1) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2547,10 +2725,10 @@ static int test_lvremove_1 (void) return -1; } { - char device[] = "/dev/VG"; + char vgname[] = "VG"; int r; suppress_error = 0; - r = guestfs_lvremove (g, device); + r = guestfs_vgremove (g, vgname); if (r == -1) return -1; } @@ -2558,11 +2736,11 @@ static int test_lvremove_1 (void) char **r; int i; suppress_error = 0; - r = guestfs_lvs (g); + r = guestfs_vgs (g); if (r == NULL) return -1; if (r[0] != NULL) { - fprintf (stderr, "test_lvremove_1: extra elements returned from command\n"); + fprintf (stderr, "test_vgremove_1: extra elements returned from command\n"); print_strings (r); return -1; } @@ -2573,9 +2751,9 @@ static int test_lvremove_1 (void) return 0; } -static int test_lvremove_2 (void) +static int test_lvremove_0 (void) { - /* InitEmpty for lvremove (2) */ + /* InitEmpty for lvremove (0) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2599,7 +2777,7 @@ static int test_lvremove_2 (void) if (r == -1) return -1; } - /* TestOutputList for lvremove (2) */ + /* TestOutputList for lvremove (0) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2642,7 +2820,7 @@ static int test_lvremove_2 (void) return -1; } { - char device[] = "/dev/VG"; + char device[] = "/dev/VG/LV1"; int r; suppress_error = 0; r = guestfs_lvremove (g, device); @@ -2653,23 +2831,23 @@ static int test_lvremove_2 (void) char **r; int i; suppress_error = 0; - r = guestfs_vgs (g); + r = guestfs_lvs (g); if (r == NULL) return -1; if (!r[0]) { - fprintf (stderr, "test_lvremove_2: short list returned from command\n"); + fprintf (stderr, "test_lvremove_0: short list returned from command\n"); print_strings (r); return -1; } { - char expected[] = "VG"; + char expected[] = "/dev/VG/LV2"; if (strcmp (r[0], expected) != 0) { - fprintf (stderr, "test_lvremove_2: expected \"%s\" but got \"%s\"\n", expected, r[0]); + fprintf (stderr, "test_lvremove_0: expected \"%s\" but got \"%s\"\n", expected, r[0]); return -1; } } if (r[1] != NULL) { - fprintf (stderr, "test_lvremove_2: extra elements returned from command\n"); + fprintf (stderr, "test_lvremove_0: extra elements returned from command\n"); print_strings (r); return -1; } @@ -2680,9 +2858,9 @@ static int test_lvremove_2 (void) return 0; } -static int test_mount_ro_0 (void) +static int test_lvremove_1 (void) { - /* InitBasicFS for mount_ro (0): create ext2 on /dev/sda1 */ + /* InitEmpty for lvremove (1) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2706,73 +2884,78 @@ static int test_mount_ro_0 (void) if (r == -1) return -1; } + /* TestOutputList for lvremove (1) */ { char device[] = "/dev/sda"; device[5] = devchar; - char lines_0[] = ","; - char *lines[] = { - lines_0, - NULL - }; int r; suppress_error = 0; - r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + r = guestfs_pvcreate (g, device); if (r == -1) return -1; } { - char fstype[] = "ext2"; - char device[] = "/dev/sda1"; - device[5] = devchar; + char volgroup[] = "VG"; + char physvols_0[] = "/dev/sda"; + physvols_0[5] = devchar; + char *physvols[] = { + physvols_0, + NULL + }; int r; suppress_error = 0; - r = guestfs_mkfs (g, fstype, device); + r = guestfs_vgcreate (g, volgroup, physvols); if (r == -1) return -1; } { - char device[] = "/dev/sda1"; - device[5] = devchar; - char mountpoint[] = "/"; + char logvol[] = "LV1"; + char volgroup[] = "VG"; int r; suppress_error = 0; - r = guestfs_mount (g, device, mountpoint); + r = guestfs_lvcreate (g, logvol, volgroup, 50); if (r == -1) return -1; } - /* TestLastFail for mount_ro (0) */ { - char pathordevice[] = "/"; + char logvol[] = "LV2"; + char volgroup[] = "VG"; int r; suppress_error = 0; - r = guestfs_umount (g, pathordevice); + r = guestfs_lvcreate (g, logvol, volgroup, 50); if (r == -1) return -1; } { - char device[] = "/dev/sda1"; - device[5] = devchar; - char mountpoint[] = "/"; + char device[] = "/dev/VG"; int r; suppress_error = 0; - r = guestfs_mount_ro (g, device, mountpoint); + r = guestfs_lvremove (g, device); if (r == -1) return -1; } { - char path[] = "/new"; - int r; - suppress_error = 1; - r = guestfs_touch (g, path); - if (r != -1) + char **r; + int i; + suppress_error = 0; + r = guestfs_lvs (g); + if (r == NULL) + return -1; + if (r[0] != NULL) { + fprintf (stderr, "test_lvremove_1: extra elements returned from command\n"); + print_strings (r); return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); } return 0; } -static int test_mount_ro_1 (void) +static int test_lvremove_2 (void) { - /* InitBasicFS for mount_ro (1): create ext2 on /dev/sda1 */ + /* InitEmpty for lvremove (2) */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -2796,14 +2979,211 @@ static int test_mount_ro_1 (void) if (r == -1) return -1; } + /* TestOutputList for lvremove (2) */ { char device[] = "/dev/sda"; device[5] = devchar; - char lines_0[] = ","; - char *lines[] = { - lines_0, - NULL - }; + int r; + suppress_error = 0; + r = guestfs_pvcreate (g, device); + if (r == -1) + return -1; + } + { + char volgroup[] = "VG"; + char physvols_0[] = "/dev/sda"; + physvols_0[5] = devchar; + char *physvols[] = { + physvols_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_vgcreate (g, volgroup, physvols); + if (r == -1) + return -1; + } + { + char logvol[] = "LV1"; + char volgroup[] = "VG"; + int r; + suppress_error = 0; + r = guestfs_lvcreate (g, logvol, volgroup, 50); + if (r == -1) + return -1; + } + { + char logvol[] = "LV2"; + char volgroup[] = "VG"; + int r; + suppress_error = 0; + r = guestfs_lvcreate (g, logvol, volgroup, 50); + if (r == -1) + return -1; + } + { + char device[] = "/dev/VG"; + int r; + suppress_error = 0; + r = guestfs_lvremove (g, device); + if (r == -1) + return -1; + } + { + char **r; + int i; + suppress_error = 0; + r = guestfs_vgs (g); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_lvremove_2: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "VG"; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_lvremove_2: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (r[1] != NULL) { + fprintf (stderr, "test_lvremove_2: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_mount_ro_0 (void) +{ + /* InitBasicFS for mount_ro (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestLastFail for mount_ro (0) */ + { + char pathordevice[] = "/"; + int r; + suppress_error = 0; + r = guestfs_umount (g, pathordevice); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount_ro (g, device, mountpoint); + if (r == -1) + return -1; + } + { + char path[] = "/new"; + int r; + suppress_error = 1; + r = guestfs_touch (g, path); + if (r != -1) + return -1; + } + return 0; +} + +static int test_mount_ro_1 (void) +{ + /* InitBasicFS for mount_ro (1): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; int r; suppress_error = 0; r = guestfs_sfdisk (g, device, 0, 0, 0, lines); @@ -3461,21 +3841,2514 @@ static int test_checksum_4 (void) char path[] = "/new"; char *r; suppress_error = 0; - r = guestfs_checksum (g, csumtype, path); + r = guestfs_checksum (g, csumtype, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_checksum_4: expected \"%s\" but got \"%s\"\n", expected, r); + return -1; + } + free (r); + } + return 0; +} + +static int test_checksum_5 (void) +{ + /* InitBasicFS for checksum (5): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutput for checksum (5) */ + char expected[] = "f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2"; + { + char path[] = "/new"; + char content[] = "test\n"; + int r; + suppress_error = 0; + r = guestfs_write_file (g, path, content, 0); + if (r == -1) + return -1; + } + { + char csumtype[] = "sha256"; + char path[] = "/new"; + char *r; + suppress_error = 0; + r = guestfs_checksum (g, csumtype, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_checksum_5: expected \"%s\" but got \"%s\"\n", expected, r); + return -1; + } + free (r); + } + return 0; +} + +static int test_checksum_6 (void) +{ + /* InitBasicFS for checksum (6): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutput for checksum (6) */ + char expected[] = "109bb6b5b6d5547c1ce03c7a8bd7d8f80c1cb0957f50c4f7fda04692079917e4f9cad52b878f3d8234e1a170b154b72d"; + { + char path[] = "/new"; + char content[] = "test\n"; + int r; + suppress_error = 0; + r = guestfs_write_file (g, path, content, 0); + if (r == -1) + return -1; + } + { + char csumtype[] = "sha384"; + char path[] = "/new"; + char *r; + suppress_error = 0; + r = guestfs_checksum (g, csumtype, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_checksum_6: expected \"%s\" but got \"%s\"\n", expected, r); + return -1; + } + free (r); + } + return 0; +} + +static int test_checksum_7 (void) +{ + /* InitBasicFS for checksum (7): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutput for checksum (7) */ + char expected[] = "0e3e75234abc68f4378a86b3f4b32a198ba301845b0cd6e50106e874345700cc6663a86c1ea125dc5e92be17c98f9a0f85ca9d5f595db2012f7cc3571945c123"; + { + char path[] = "/new"; + char content[] = "test\n"; + int r; + suppress_error = 0; + r = guestfs_write_file (g, path, content, 0); + if (r == -1) + return -1; + } + { + char csumtype[] = "sha512"; + char path[] = "/new"; + char *r; + suppress_error = 0; + r = guestfs_checksum (g, csumtype, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_checksum_7: expected \"%s\" but got \"%s\"\n", expected, r); + return -1; + } + free (r); + } + return 0; +} + +static int test_download_0 (void) +{ + /* InitBasicFS for download (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutput for download (0) */ + char expected[] = "e3eda01d9815f8d24aae2dbd89b68b06"; + { + char remotefilename[] = "/COPYING.LIB"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "COPYING.LIB", remotefilename); + if (r == -1) + return -1; + } + { + char remotefilename[] = "/COPYING.LIB"; + int r; + suppress_error = 0; + r = guestfs_download (g, remotefilename, "testdownload.tmp"); + if (r == -1) + return -1; + } + { + char remotefilename[] = "/upload"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "testdownload.tmp", remotefilename); + if (r == -1) + return -1; + } + { + char csumtype[] = "md5"; + char path[] = "/upload"; + char *r; + suppress_error = 0; + r = guestfs_checksum (g, csumtype, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_download_0: expected \"%s\" but got \"%s\"\n", expected, r); + return -1; + } + free (r); + } + return 0; +} + +static int test_upload_0 (void) +{ + /* InitBasicFS for upload (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutput for upload (0) */ + char expected[] = "e3eda01d9815f8d24aae2dbd89b68b06"; + { + char remotefilename[] = "/COPYING.LIB"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "COPYING.LIB", remotefilename); + if (r == -1) + return -1; + } + { + char csumtype[] = "md5"; + char path[] = "/COPYING.LIB"; + char *r; + suppress_error = 0; + r = guestfs_checksum (g, csumtype, path); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_upload_0: expected \"%s\" but got \"%s\"\n", expected, r); + return -1; + } + free (r); + } + return 0; +} + +static int test_blockdev_rereadpt_0 (void) +{ + /* InitEmpty for blockdev_rereadpt (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestRun for blockdev_rereadpt (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_rereadpt (g, device); + if (r == -1) + return -1; + } + return 0; +} + +static int test_blockdev_flushbufs_0 (void) +{ + /* InitEmpty for blockdev_flushbufs (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestRun for blockdev_flushbufs (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_flushbufs (g, device); + if (r == -1) + return -1; + } + return 0; +} + +static int test_blockdev_getsize64_0 (void) +{ + /* InitEmpty for blockdev_getsize64 (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestOutputInt for blockdev_getsize64 (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int64_t r; + suppress_error = 0; + r = guestfs_blockdev_getsize64 (g, device); + if (r == -1) + return -1; + if (r != 524288000) { + fprintf (stderr, "test_blockdev_getsize64_0: expected 524288000 but got %d\n", (int) r); + return -1; + } + } + return 0; +} + +static int test_blockdev_getsz_0 (void) +{ + /* InitEmpty for blockdev_getsz (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestOutputInt for blockdev_getsz (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int64_t r; + suppress_error = 0; + r = guestfs_blockdev_getsz (g, device); + if (r == -1) + return -1; + if (r != 1024000) { + fprintf (stderr, "test_blockdev_getsz_0: expected 1024000 but got %d\n", (int) r); + return -1; + } + } + return 0; +} + +static int test_blockdev_getbsz_0 (void) +{ + /* InitEmpty for blockdev_getbsz (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestOutputInt for blockdev_getbsz (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_getbsz (g, device); + if (r == -1) + return -1; + if (r != 4096) { + fprintf (stderr, "test_blockdev_getbsz_0: expected 4096 but got %d\n", (int) r); + return -1; + } + } + return 0; +} + +static int test_blockdev_getss_0 (void) +{ + /* InitEmpty for blockdev_getss (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestOutputInt for blockdev_getss (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_getss (g, device); + if (r == -1) + return -1; + if (r != 512) { + fprintf (stderr, "test_blockdev_getss_0: expected 512 but got %d\n", (int) r); + return -1; + } + } + return 0; +} + +static int test_blockdev_getro_0 (void) +{ + /* InitEmpty for blockdev_getro (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestOutputTrue for blockdev_getro (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setro (g, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_getro (g, device); + if (r == -1) + return -1; + if (!r) { + fprintf (stderr, "test_blockdev_getro_0: expected true, got false\n"); + return -1; + } + } + return 0; +} + +static int test_blockdev_setrw_0 (void) +{ + /* InitEmpty for blockdev_setrw (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestOutputFalse for blockdev_setrw (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_getro (g, device); + if (r == -1) + return -1; + if (r) { + fprintf (stderr, "test_blockdev_setrw_0: expected false, got true\n"); + return -1; + } + } + return 0; +} + +static int test_blockdev_setro_0 (void) +{ + /* InitEmpty for blockdev_setro (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + /* TestOutputTrue for blockdev_setro (0) */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setro (g, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_getro (g, device); + if (r == -1) + return -1; + if (!r) { + fprintf (stderr, "test_blockdev_setro_0: expected true, got false\n"); + return -1; + } + } + return 0; +} + +static int test_statvfs_0 (void) +{ + /* InitBasicFS for statvfs (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputStruct for statvfs (0) */ + { + char path[] = "/"; + struct guestfs_statvfs *r; + suppress_error = 0; + r = guestfs_statvfs (g, path); + if (r == NULL) + return -1; + if (r->bfree != 487702) { + fprintf (stderr, "test_statvfs_0: bfree was %d, expected 487702\n", + (int) r->bfree); + return -1; + } + if (r->blocks != 490020) { + fprintf (stderr, "test_statvfs_0: blocks was %d, expected 490020\n", + (int) r->blocks); + return -1; + } + if (r->bsize != 1024) { + fprintf (stderr, "test_statvfs_0: bsize was %d, expected 1024\n", + (int) r->bsize); + return -1; + } + free (r); + } + return 0; +} + +static int test_lstat_0 (void) +{ + /* InitBasicFS for lstat (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputStruct for lstat (0) */ + { + char path[] = "/new"; + int r; + suppress_error = 0; + r = guestfs_touch (g, path); + if (r == -1) + return -1; + } + { + char path[] = "/new"; + struct guestfs_stat *r; + suppress_error = 0; + r = guestfs_lstat (g, path); + if (r == NULL) + return -1; + if (r->size != 0) { + fprintf (stderr, "test_lstat_0: size was %d, expected 0\n", + (int) r->size); + return -1; + } + free (r); + } + return 0; +} + +static int test_stat_0 (void) +{ + /* InitBasicFS for stat (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputStruct for stat (0) */ + { + char path[] = "/new"; + int r; + suppress_error = 0; + r = guestfs_touch (g, path); + if (r == -1) + return -1; + } + { + char path[] = "/new"; + struct guestfs_stat *r; + suppress_error = 0; + r = guestfs_stat (g, path); + if (r == NULL) + return -1; + if (r->size != 0) { + fprintf (stderr, "test_stat_0: size was %d, expected 0\n", + (int) r->size); + return -1; + } + free (r); + } + return 0; +} + +static int test_command_lines_0 (void) +{ + /* InitBasicFS for command_lines (0): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (0) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "1"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_0: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result1"; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_0: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (r[1] != NULL) { + fprintf (stderr, "test_command_lines_0: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_1 (void) +{ + /* InitBasicFS for command_lines (1): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (1) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "2"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_1: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result2"; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_1: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (r[1] != NULL) { + fprintf (stderr, "test_command_lines_1: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_2 (void) +{ + /* InitBasicFS for command_lines (2): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (2) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "3"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_2: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_2: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_command_lines_2: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result3"; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_command_lines_2: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (r[2] != NULL) { + fprintf (stderr, "test_command_lines_2: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_3 (void) +{ + /* InitBasicFS for command_lines (3): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (3) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "4"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_3: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_3: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_command_lines_3: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result4"; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_command_lines_3: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (r[2] != NULL) { + fprintf (stderr, "test_command_lines_3: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_4 (void) +{ + /* InitBasicFS for command_lines (4): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (4) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "5"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_4: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_4: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_command_lines_4: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result5"; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_command_lines_4: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (!r[2]) { + fprintf (stderr, "test_command_lines_4: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[2], expected) != 0) { + fprintf (stderr, "test_command_lines_4: expected \"%s\" but got \"%s\"\n", expected, r[2]); + return -1; + } + } + if (r[3] != NULL) { + fprintf (stderr, "test_command_lines_4: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_5 (void) +{ + /* InitBasicFS for command_lines (5): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (5) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "6"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_5: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_command_lines_5: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (!r[2]) { + fprintf (stderr, "test_command_lines_5: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result6"; + if (strcmp (r[2], expected) != 0) { + fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[2]); + return -1; + } + } + if (!r[3]) { + fprintf (stderr, "test_command_lines_5: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[3], expected) != 0) { + fprintf (stderr, "test_command_lines_5: expected \"%s\" but got \"%s\"\n", expected, r[3]); + return -1; + } + } + if (r[4] != NULL) { + fprintf (stderr, "test_command_lines_5: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_6 (void) +{ + /* InitBasicFS for command_lines (6): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (6) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "7"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (r[0] != NULL) { + fprintf (stderr, "test_command_lines_6: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_7 (void) +{ + /* InitBasicFS for command_lines (7): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (7) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "8"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_7: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_7: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (r[1] != NULL) { + fprintf (stderr, "test_command_lines_7: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_8 (void) +{ + /* InitBasicFS for command_lines (8): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (8) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "9"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_8: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_8: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_command_lines_8: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = ""; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_command_lines_8: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (r[2] != NULL) { + fprintf (stderr, "test_command_lines_8: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_9 (void) +{ + /* InitBasicFS for command_lines (9): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (9) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "10"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); + if (r == NULL) + return -1; + if (!r[0]) { + fprintf (stderr, "test_command_lines_9: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result10-1"; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_9: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_command_lines_9: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result10-2"; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_command_lines_9: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (r[2] != NULL) { + fprintf (stderr, "test_command_lines_9: extra elements returned from command\n"); + print_strings (r); + return -1; + } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); + free (r); + } + return 0; +} + +static int test_command_lines_10 (void) +{ + /* InitBasicFS for command_lines (10): create ext2 on /dev/sda1 */ + { + char device[] = "/dev/sda"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_blockdev_setrw (g, device); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_umount_all (g); + if (r == -1) + return -1; + } + { + int r; + suppress_error = 0; + r = guestfs_lvm_remove_all (g); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda"; + device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; + suppress_error = 0; + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); + if (r == -1) + return -1; + } + { + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; + device[5] = devchar; + int r; + suppress_error = 0; + r = guestfs_mkfs (g, fstype, device); + if (r == -1) + return -1; + } + { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; + int r; + suppress_error = 0; + r = guestfs_mount (g, device, mountpoint); + if (r == -1) + return -1; + } + /* TestOutputList for command_lines (10) */ + { + char remotefilename[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) + return -1; + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "11"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char **r; + int i; + suppress_error = 0; + r = guestfs_command_lines (g, arguments); if (r == NULL) return -1; - if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_checksum_4: expected \"%s\" but got \"%s\"\n", expected, r); + if (!r[0]) { + fprintf (stderr, "test_command_lines_10: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result11-1"; + if (strcmp (r[0], expected) != 0) { + fprintf (stderr, "test_command_lines_10: expected \"%s\" but got \"%s\"\n", expected, r[0]); + return -1; + } + } + if (!r[1]) { + fprintf (stderr, "test_command_lines_10: short list returned from command\n"); + print_strings (r); + return -1; + } + { + char expected[] = "Result11-2"; + if (strcmp (r[1], expected) != 0) { + fprintf (stderr, "test_command_lines_10: expected \"%s\" but got \"%s\"\n", expected, r[1]); + return -1; + } + } + if (r[2] != NULL) { + fprintf (stderr, "test_command_lines_10: extra elements returned from command\n"); + print_strings (r); return -1; } + for (i = 0; r[i] != NULL; ++i) + free (r[i]); free (r); } return 0; } -static int test_checksum_5 (void) +static int test_command_0 (void) { - /* InitBasicFS for checksum (5): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (0): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -3533,27 +6406,39 @@ static int test_checksum_5 (void) if (r == -1) return -1; } - /* TestOutput for checksum (5) */ - char expected[] = "f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2"; + /* TestOutput for command (0) */ + char expected[] = "Result1"; { - char path[] = "/new"; - char content[] = "test\n"; + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_write_file (g, path, content, 0); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { - char csumtype[] = "sha256"; - char path[] = "/new"; + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "1"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; char *r; suppress_error = 0; - r = guestfs_checksum (g, csumtype, path); + r = guestfs_command (g, arguments); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_checksum_5: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_command_0: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -3561,9 +6446,9 @@ static int test_checksum_5 (void) return 0; } -static int test_checksum_6 (void) +static int test_command_1 (void) { - /* InitBasicFS for checksum (6): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (1): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -3621,27 +6506,39 @@ static int test_checksum_6 (void) if (r == -1) return -1; } - /* TestOutput for checksum (6) */ - char expected[] = "109bb6b5b6d5547c1ce03c7a8bd7d8f80c1cb0957f50c4f7fda04692079917e4f9cad52b878f3d8234e1a170b154b72d"; + /* TestOutput for command (1) */ + char expected[] = "Result2\n"; { - char path[] = "/new"; - char content[] = "test\n"; + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_write_file (g, path, content, 0); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { - char csumtype[] = "sha384"; - char path[] = "/new"; + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "2"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; char *r; suppress_error = 0; - r = guestfs_checksum (g, csumtype, path); + r = guestfs_command (g, arguments); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_checksum_6: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_command_1: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -3649,9 +6546,9 @@ static int test_checksum_6 (void) return 0; } -static int test_checksum_7 (void) +static int test_command_2 (void) { - /* InitBasicFS for checksum (7): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (2): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -3709,27 +6606,39 @@ static int test_checksum_7 (void) if (r == -1) return -1; } - /* TestOutput for checksum (7) */ - char expected[] = "0e3e75234abc68f4378a86b3f4b32a198ba301845b0cd6e50106e874345700cc6663a86c1ea125dc5e92be17c98f9a0f85ca9d5f595db2012f7cc3571945c123"; + /* TestOutput for command (2) */ + char expected[] = "\nResult3"; { - char path[] = "/new"; - char content[] = "test\n"; + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_write_file (g, path, content, 0); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { - char csumtype[] = "sha512"; - char path[] = "/new"; + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "3"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; char *r; suppress_error = 0; - r = guestfs_checksum (g, csumtype, path); + r = guestfs_command (g, arguments); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_checksum_7: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_command_2: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -3737,9 +6646,9 @@ static int test_checksum_7 (void) return 0; } -static int test_download_0 (void) +static int test_command_3 (void) { - /* InitBasicFS for download (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (3): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -3797,42 +6706,39 @@ static int test_download_0 (void) if (r == -1) return -1; } - /* TestOutput for download (0) */ - char expected[] = "e3eda01d9815f8d24aae2dbd89b68b06"; - { - char remotefilename[] = "/COPYING.LIB"; - int r; - suppress_error = 0; - r = guestfs_upload (g, "COPYING.LIB", remotefilename); - if (r == -1) - return -1; - } + /* TestOutput for command (3) */ + char expected[] = "\nResult4\n"; { - char remotefilename[] = "/COPYING.LIB"; + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_download (g, remotefilename, "testdownload.tmp"); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { - char remotefilename[] = "/upload"; + char path[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_upload (g, "testdownload.tmp", remotefilename); + r = guestfs_chmod (g, 493, path); if (r == -1) return -1; } { - char csumtype[] = "md5"; - char path[] = "/upload"; + char arguments_0[] = "/test-command"; + char arguments_1[] = "4"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; char *r; suppress_error = 0; - r = guestfs_checksum (g, csumtype, path); + r = guestfs_command (g, arguments); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_download_0: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_command_3: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -3840,9 +6746,9 @@ static int test_download_0 (void) return 0; } -static int test_upload_0 (void) +static int test_command_4 (void) { - /* InitBasicFS for upload (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (4): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -3900,26 +6806,39 @@ static int test_upload_0 (void) if (r == -1) return -1; } - /* TestOutput for upload (0) */ - char expected[] = "e3eda01d9815f8d24aae2dbd89b68b06"; + /* TestOutput for command (4) */ + char expected[] = "\nResult5\n\n"; { - char remotefilename[] = "/COPYING.LIB"; + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_upload (g, "COPYING.LIB", remotefilename); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { - char csumtype[] = "md5"; - char path[] = "/COPYING.LIB"; + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "5"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; char *r; suppress_error = 0; - r = guestfs_checksum (g, csumtype, path); + r = guestfs_command (g, arguments); if (r == NULL) return -1; if (strcmp (r, expected) != 0) { - fprintf (stderr, "test_upload_0: expected \"%s\" but got \"%s\"\n", expected, r); + fprintf (stderr, "test_command_4: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -3927,9 +6846,9 @@ static int test_upload_0 (void) return 0; } -static int test_blockdev_rereadpt_0 (void) +static int test_command_5 (void) { - /* InitEmpty for blockdev_rereadpt (0) */ + /* InitBasicFS for command (5): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -3953,104 +6872,83 @@ static int test_blockdev_rereadpt_0 (void) if (r == -1) return -1; } - /* TestRun for blockdev_rereadpt (0) */ - { - char device[] = "/dev/sda"; - device[5] = devchar; - int r; - suppress_error = 0; - r = guestfs_blockdev_rereadpt (g, device); - if (r == -1) - return -1; - } - return 0; -} - -static int test_blockdev_flushbufs_0 (void) -{ - /* InitEmpty for blockdev_flushbufs (0) */ { char device[] = "/dev/sda"; device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); - if (r == -1) - return -1; - } - { - int r; - suppress_error = 0; - r = guestfs_umount_all (g); - if (r == -1) - return -1; - } - { - int r; - suppress_error = 0; - r = guestfs_lvm_remove_all (g); + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); if (r == -1) return -1; } - /* TestRun for blockdev_flushbufs (0) */ { - char device[] = "/dev/sda"; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; device[5] = devchar; int r; suppress_error = 0; - r = guestfs_blockdev_flushbufs (g, device); + r = guestfs_mkfs (g, fstype, device); if (r == -1) return -1; } - return 0; -} - -static int test_blockdev_getsize64_0 (void) -{ - /* InitEmpty for blockdev_getsize64 (0) */ { - char device[] = "/dev/sda"; + char device[] = "/dev/sda1"; device[5] = devchar; + char mountpoint[] = "/"; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); + r = guestfs_mount (g, device, mountpoint); if (r == -1) return -1; } + /* TestOutput for command (5) */ + char expected[] = "\n\nResult6\n\n"; { + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_umount_all (g); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { + char path[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_lvm_remove_all (g); + r = guestfs_chmod (g, 493, path); if (r == -1) return -1; } - /* TestOutputInt for blockdev_getsize64 (0) */ { - char device[] = "/dev/sda"; - device[5] = devchar; - int64_t r; + char arguments_0[] = "/test-command"; + char arguments_1[] = "6"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char *r; suppress_error = 0; - r = guestfs_blockdev_getsize64 (g, device); - if (r == -1) + r = guestfs_command (g, arguments); + if (r == NULL) return -1; - if (r != 524288000) { - fprintf (stderr, "test_blockdev_getsize64_0: expected 524288000 but got %d\n", (int) r); + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_command_5: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } + free (r); } return 0; } -static int test_blockdev_getsz_0 (void) +static int test_command_6 (void) { - /* InitEmpty for blockdev_getsz (0) */ + /* InitBasicFS for command (6): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -4074,69 +6972,83 @@ static int test_blockdev_getsz_0 (void) if (r == -1) return -1; } - /* TestOutputInt for blockdev_getsz (0) */ { char device[] = "/dev/sda"; device[5] = devchar; - int64_t r; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; + int r; suppress_error = 0; - r = guestfs_blockdev_getsz (g, device); + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); if (r == -1) return -1; - if (r != 1024000) { - fprintf (stderr, "test_blockdev_getsz_0: expected 1024000 but got %d\n", (int) r); - return -1; - } } - return 0; -} - -static int test_blockdev_getbsz_0 (void) -{ - /* InitEmpty for blockdev_getbsz (0) */ { - char device[] = "/dev/sda"; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; device[5] = devchar; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); + r = guestfs_mkfs (g, fstype, device); if (r == -1) return -1; } { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; int r; suppress_error = 0; - r = guestfs_umount_all (g); + r = guestfs_mount (g, device, mountpoint); if (r == -1) return -1; } + /* TestOutput for command (6) */ + char expected[] = ""; { + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_lvm_remove_all (g); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } - /* TestOutputInt for blockdev_getbsz (0) */ { - char device[] = "/dev/sda"; - device[5] = devchar; + char path[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_blockdev_getbsz (g, device); + r = guestfs_chmod (g, 493, path); if (r == -1) return -1; - if (r != 4096) { - fprintf (stderr, "test_blockdev_getbsz_0: expected 4096 but got %d\n", (int) r); + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "7"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char *r; + suppress_error = 0; + r = guestfs_command (g, arguments); + if (r == NULL) + return -1; + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_command_6: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } + free (r); } return 0; } -static int test_blockdev_getss_0 (void) +static int test_command_7 (void) { - /* InitEmpty for blockdev_getss (0) */ + /* InitBasicFS for command (7): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -4160,78 +7072,83 @@ static int test_blockdev_getss_0 (void) if (r == -1) return -1; } - /* TestOutputInt for blockdev_getss (0) */ { char device[] = "/dev/sda"; device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; int r; suppress_error = 0; - r = guestfs_blockdev_getss (g, device); + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); if (r == -1) return -1; - if (r != 512) { - fprintf (stderr, "test_blockdev_getss_0: expected 512 but got %d\n", (int) r); - return -1; - } } - return 0; -} - -static int test_blockdev_getro_0 (void) -{ - /* InitEmpty for blockdev_getro (0) */ { - char device[] = "/dev/sda"; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; device[5] = devchar; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); + r = guestfs_mkfs (g, fstype, device); if (r == -1) return -1; } { + char device[] = "/dev/sda1"; + device[5] = devchar; + char mountpoint[] = "/"; int r; suppress_error = 0; - r = guestfs_umount_all (g); + r = guestfs_mount (g, device, mountpoint); if (r == -1) return -1; } + /* TestOutput for command (7) */ + char expected[] = "\n"; { + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_lvm_remove_all (g); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } - /* TestOutputTrue for blockdev_getro (0) */ { - char device[] = "/dev/sda"; - device[5] = devchar; + char path[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_blockdev_setro (g, device); + r = guestfs_chmod (g, 493, path); if (r == -1) return -1; } { - char device[] = "/dev/sda"; - device[5] = devchar; - int r; + char arguments_0[] = "/test-command"; + char arguments_1[] = "8"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char *r; suppress_error = 0; - r = guestfs_blockdev_getro (g, device); - if (r == -1) + r = guestfs_command (g, arguments); + if (r == NULL) return -1; - if (!r) { - fprintf (stderr, "test_blockdev_getro_0: expected true, got false\n"); + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_command_7: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } + free (r); } return 0; } -static int test_blockdev_setrw_0 (void) +static int test_command_8 (void) { - /* InitEmpty for blockdev_setrw (0) */ + /* InitBasicFS for command (8): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -4255,87 +7172,83 @@ static int test_blockdev_setrw_0 (void) if (r == -1) return -1; } - /* TestOutputFalse for blockdev_setrw (0) */ { char device[] = "/dev/sda"; device[5] = devchar; + char lines_0[] = ","; + char *lines[] = { + lines_0, + NULL + }; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); + r = guestfs_sfdisk (g, device, 0, 0, 0, lines); if (r == -1) return -1; } { - char device[] = "/dev/sda"; + char fstype[] = "ext2"; + char device[] = "/dev/sda1"; device[5] = devchar; int r; suppress_error = 0; - r = guestfs_blockdev_getro (g, device); + r = guestfs_mkfs (g, fstype, device); if (r == -1) return -1; - if (r) { - fprintf (stderr, "test_blockdev_setrw_0: expected false, got true\n"); - return -1; - } } - return 0; -} - -static int test_blockdev_setro_0 (void) -{ - /* InitEmpty for blockdev_setro (0) */ { - char device[] = "/dev/sda"; + char device[] = "/dev/sda1"; device[5] = devchar; + char mountpoint[] = "/"; int r; suppress_error = 0; - r = guestfs_blockdev_setrw (g, device); - if (r == -1) - return -1; - } - { - int r; - suppress_error = 0; - r = guestfs_umount_all (g); + r = guestfs_mount (g, device, mountpoint); if (r == -1) return -1; } + /* TestOutput for command (8) */ + char expected[] = "\n\n"; { + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_lvm_remove_all (g); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } - /* TestOutputTrue for blockdev_setro (0) */ { - char device[] = "/dev/sda"; - device[5] = devchar; + char path[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_blockdev_setro (g, device); + r = guestfs_chmod (g, 493, path); if (r == -1) return -1; } { - char device[] = "/dev/sda"; - device[5] = devchar; - int r; + char arguments_0[] = "/test-command"; + char arguments_1[] = "9"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char *r; suppress_error = 0; - r = guestfs_blockdev_getro (g, device); - if (r == -1) + r = guestfs_command (g, arguments); + if (r == NULL) return -1; - if (!r) { - fprintf (stderr, "test_blockdev_setro_0: expected true, got false\n"); + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_command_8: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } + free (r); } return 0; } -static int test_statvfs_0 (void) +static int test_command_9 (void) { - /* InitBasicFS for statvfs (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (9): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -4393,27 +7306,39 @@ static int test_statvfs_0 (void) if (r == -1) return -1; } - /* TestOutputStruct for statvfs (0) */ + /* TestOutput for command (9) */ + char expected[] = "Result10-1\nResult10-2\n"; { - char path[] = "/"; - struct guestfs_statvfs *r; + char remotefilename[] = "/test-command"; + int r; suppress_error = 0; - r = guestfs_statvfs (g, path); - if (r == NULL) + r = guestfs_upload (g, "test-command", remotefilename); + if (r == -1) return -1; - if (r->bfree != 487702) { - fprintf (stderr, "test_statvfs_0: bfree was %d, expected 487702\n", - (int) r->bfree); + } + { + char path[] = "/test-command"; + int r; + suppress_error = 0; + r = guestfs_chmod (g, 493, path); + if (r == -1) return -1; - } - if (r->blocks != 490020) { - fprintf (stderr, "test_statvfs_0: blocks was %d, expected 490020\n", - (int) r->blocks); + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "10"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char *r; + suppress_error = 0; + r = guestfs_command (g, arguments); + if (r == NULL) return -1; - } - if (r->bsize != 1024) { - fprintf (stderr, "test_statvfs_0: bsize was %d, expected 1024\n", - (int) r->bsize); + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_command_9: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -4421,9 +7346,9 @@ static int test_statvfs_0 (void) return 0; } -static int test_lstat_0 (void) +static int test_command_10 (void) { - /* InitBasicFS for lstat (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (10): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -4481,25 +7406,39 @@ static int test_lstat_0 (void) if (r == -1) return -1; } - /* TestOutputStruct for lstat (0) */ + /* TestOutput for command (10) */ + char expected[] = "Result11-1\nResult11-2"; { - char path[] = "/new"; + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_touch (g, path); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { - char path[] = "/new"; - struct guestfs_stat *r; + char path[] = "/test-command"; + int r; suppress_error = 0; - r = guestfs_lstat (g, path); + r = guestfs_chmod (g, 493, path); + if (r == -1) + return -1; + } + { + char arguments_0[] = "/test-command"; + char arguments_1[] = "11"; + char *arguments[] = { + arguments_0, + arguments_1, + NULL + }; + char *r; + suppress_error = 0; + r = guestfs_command (g, arguments); if (r == NULL) return -1; - if (r->size != 0) { - fprintf (stderr, "test_lstat_0: size was %d, expected 0\n", - (int) r->size); + if (strcmp (r, expected) != 0) { + fprintf (stderr, "test_command_10: expected \"%s\" but got \"%s\"\n", expected, r); return -1; } free (r); @@ -4507,9 +7446,9 @@ static int test_lstat_0 (void) return 0; } -static int test_stat_0 (void) +static int test_command_11 (void) { - /* InitBasicFS for stat (0): create ext2 on /dev/sda1 */ + /* InitBasicFS for command (11): create ext2 on /dev/sda1 */ { char device[] = "/dev/sda"; device[5] = devchar; @@ -4567,27 +7506,34 @@ static int test_stat_0 (void) if (r == -1) return -1; } - /* TestOutputStruct for stat (0) */ + /* TestLastFail for command (11) */ { - char path[] = "/new"; + char remotefilename[] = "/test-command"; int r; suppress_error = 0; - r = guestfs_touch (g, path); + r = guestfs_upload (g, "test-command", remotefilename); if (r == -1) return -1; } { - char path[] = "/new"; - struct guestfs_stat *r; + char path[] = "/test-command"; + int r; suppress_error = 0; - r = guestfs_stat (g, path); - if (r == NULL) + r = guestfs_chmod (g, 493, path); + if (r == -1) return -1; - if (r->size != 0) { - fprintf (stderr, "test_stat_0: size was %d, expected 0\n", - (int) r->size); + } + { + char arguments_0[] = "/test-command"; + char *arguments[] = { + arguments_0, + NULL + }; + char *r; + suppress_error = 1; + r = guestfs_command (g, arguments); + if (r != NULL) return -1; - } free (r); } return 0; @@ -9864,9 +12810,33 @@ int main (int argc, char *argv[]) free (devs[i]); free (devs); - nr_tests = 107; + nr_tests = 134; test_num++; + printf ("%3d/%3d test_hexdump_0\n", test_num, nr_tests); + if (test_hexdump_0 () == -1) { + printf ("test_hexdump_0 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_strings_e_0\n", test_num, nr_tests); + if (test_strings_e_0 () == -1) { + printf ("test_strings_e_0 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_strings_0\n", test_num, nr_tests); + if (test_strings_0 () == -1) { + printf ("test_strings_0 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_strings_1\n", test_num, nr_tests); + if (test_strings_1 () == -1) { + printf ("test_strings_1 FAILED\n"); + failed++; + } + test_num++; printf ("%3d/%3d test_equal_0\n", test_num, nr_tests); if (test_equal_0 () == -1) { printf ("test_equal_0 FAILED\n"); @@ -10197,6 +13167,144 @@ int main (int argc, char *argv[]) failed++; } test_num++; + printf ("%3d/%3d test_command_lines_0\n", test_num, nr_tests); + if (test_command_lines_0 () == -1) { + printf ("test_command_lines_0 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_1\n", test_num, nr_tests); + if (test_command_lines_1 () == -1) { + printf ("test_command_lines_1 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_2\n", test_num, nr_tests); + if (test_command_lines_2 () == -1) { + printf ("test_command_lines_2 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_3\n", test_num, nr_tests); + if (test_command_lines_3 () == -1) { + printf ("test_command_lines_3 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_4\n", test_num, nr_tests); + if (test_command_lines_4 () == -1) { + printf ("test_command_lines_4 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_5\n", test_num, nr_tests); + if (test_command_lines_5 () == -1) { + printf ("test_command_lines_5 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_6\n", test_num, nr_tests); + if (test_command_lines_6 () == -1) { + printf ("test_command_lines_6 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_7\n", test_num, nr_tests); + if (test_command_lines_7 () == -1) { + printf ("test_command_lines_7 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_8\n", test_num, nr_tests); + if (test_command_lines_8 () == -1) { + printf ("test_command_lines_8 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_9\n", test_num, nr_tests); + if (test_command_lines_9 () == -1) { + printf ("test_command_lines_9 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_lines_10\n", test_num, nr_tests); + if (test_command_lines_10 () == -1) { + printf ("test_command_lines_10 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_0\n", test_num, nr_tests); + if (test_command_0 () == -1) { + printf ("test_command_0 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_1\n", test_num, nr_tests); + if (test_command_1 () == -1) { + printf ("test_command_1 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_2\n", test_num, nr_tests); + if (test_command_2 () == -1) { + printf ("test_command_2 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_3\n", test_num, nr_tests); + if (test_command_3 () == -1) { + printf ("test_command_3 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_4\n", test_num, nr_tests); + if (test_command_4 () == -1) { + printf ("test_command_4 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_5\n", test_num, nr_tests); + if (test_command_5 () == -1) { + printf ("test_command_5 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_6\n", test_num, nr_tests); + if (test_command_6 () == -1) { + printf ("test_command_6 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_7\n", test_num, nr_tests); + if (test_command_7 () == -1) { + printf ("test_command_7 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_8\n", test_num, nr_tests); + if (test_command_8 () == -1) { + printf ("test_command_8 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_9\n", test_num, nr_tests); + if (test_command_9 () == -1) { + printf ("test_command_9 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_10\n", test_num, nr_tests); + if (test_command_10 () == -1) { + printf ("test_command_10 FAILED\n"); + failed++; + } + test_num++; + printf ("%3d/%3d test_command_11\n", test_num, nr_tests); + if (test_command_11 () == -1) { + printf ("test_command_11 FAILED\n"); + failed++; + } + test_num++; printf ("%3d/%3d test_file_0\n", test_num, nr_tests); if (test_file_0 () == -1) { printf ("test_file_0 FAILED\n");