1 /* libguestfs generated file
2 * WARNING: THIS FILE IS GENERATED BY 'src/generator.ml'.
3 * ANY CHANGES YOU MAKE TO THIS FILE WILL BE LOST.
5 * Copyright (C) 2009 Red Hat Inc.
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License along
18 * with this program; if not, write to the Free Software Foundation, Inc.,
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
26 #include <sys/types.h>
32 static int suppress_error = 0;
34 static void print_error (guestfs_h *g, void *data, const char *msg)
37 fprintf (stderr, "%s\n", msg);
40 static void print_strings (char * const * const argv)
44 for (argc = 0; argv[argc] != NULL; ++argc)
45 printf ("\t%s\n", argv[argc]);
49 static void print_table (char * const * const argv)
53 for (i = 0; argv[i] != NULL; i += 2)
54 printf ("%s: %s\n", argv[i], argv[i+1]);
58 static void no_test_warnings (void)
60 fprintf (stderr, "warning: \"guestfs_test0\" has no tests\n");
61 fprintf (stderr, "warning: \"guestfs_test0rint\" has no tests\n");
62 fprintf (stderr, "warning: \"guestfs_test0rinterr\" has no tests\n");
63 fprintf (stderr, "warning: \"guestfs_test0rint64\" has no tests\n");
64 fprintf (stderr, "warning: \"guestfs_test0rint64err\" has no tests\n");
65 fprintf (stderr, "warning: \"guestfs_test0rbool\" has no tests\n");
66 fprintf (stderr, "warning: \"guestfs_test0rboolerr\" has no tests\n");
67 fprintf (stderr, "warning: \"guestfs_test0rconststring\" has no tests\n");
68 fprintf (stderr, "warning: \"guestfs_test0rconststringerr\" has no tests\n");
69 fprintf (stderr, "warning: \"guestfs_test0rstring\" has no tests\n");
70 fprintf (stderr, "warning: \"guestfs_test0rstringerr\" has no tests\n");
71 fprintf (stderr, "warning: \"guestfs_test0rstringlist\" has no tests\n");
72 fprintf (stderr, "warning: \"guestfs_test0rstringlisterr\" has no tests\n");
73 fprintf (stderr, "warning: \"guestfs_test0rintbool\" has no tests\n");
74 fprintf (stderr, "warning: \"guestfs_test0rintboolerr\" has no tests\n");
75 fprintf (stderr, "warning: \"guestfs_test0rpvlist\" has no tests\n");
76 fprintf (stderr, "warning: \"guestfs_test0rpvlisterr\" has no tests\n");
77 fprintf (stderr, "warning: \"guestfs_test0rvglist\" has no tests\n");
78 fprintf (stderr, "warning: \"guestfs_test0rvglisterr\" has no tests\n");
79 fprintf (stderr, "warning: \"guestfs_test0rlvlist\" has no tests\n");
80 fprintf (stderr, "warning: \"guestfs_test0rlvlisterr\" has no tests\n");
81 fprintf (stderr, "warning: \"guestfs_test0rstat\" has no tests\n");
82 fprintf (stderr, "warning: \"guestfs_test0rstaterr\" has no tests\n");
83 fprintf (stderr, "warning: \"guestfs_test0rstatvfs\" has no tests\n");
84 fprintf (stderr, "warning: \"guestfs_test0rstatvfserr\" has no tests\n");
85 fprintf (stderr, "warning: \"guestfs_test0rhashtable\" has no tests\n");
86 fprintf (stderr, "warning: \"guestfs_test0rhashtableerr\" has no tests\n");
87 fprintf (stderr, "warning: \"guestfs_launch\" has no tests\n");
88 fprintf (stderr, "warning: \"guestfs_wait_ready\" has no tests\n");
89 fprintf (stderr, "warning: \"guestfs_kill_subprocess\" has no tests\n");
90 fprintf (stderr, "warning: \"guestfs_add_drive\" has no tests\n");
91 fprintf (stderr, "warning: \"guestfs_add_cdrom\" has no tests\n");
92 fprintf (stderr, "warning: \"guestfs_add_drive_ro\" has no tests\n");
93 fprintf (stderr, "warning: \"guestfs_config\" has no tests\n");
94 fprintf (stderr, "warning: \"guestfs_set_qemu\" has no tests\n");
95 fprintf (stderr, "warning: \"guestfs_get_qemu\" has no tests\n");
96 fprintf (stderr, "warning: \"guestfs_set_path\" has no tests\n");
97 fprintf (stderr, "warning: \"guestfs_get_path\" has no tests\n");
98 fprintf (stderr, "warning: \"guestfs_set_append\" has no tests\n");
99 fprintf (stderr, "warning: \"guestfs_get_append\" has no tests\n");
100 fprintf (stderr, "warning: \"guestfs_set_autosync\" has no tests\n");
101 fprintf (stderr, "warning: \"guestfs_get_autosync\" has no tests\n");
102 fprintf (stderr, "warning: \"guestfs_set_verbose\" has no tests\n");
103 fprintf (stderr, "warning: \"guestfs_get_verbose\" has no tests\n");
104 fprintf (stderr, "warning: \"guestfs_is_ready\" has no tests\n");
105 fprintf (stderr, "warning: \"guestfs_is_config\" has no tests\n");
106 fprintf (stderr, "warning: \"guestfs_is_launching\" has no tests\n");
107 fprintf (stderr, "warning: \"guestfs_is_busy\" has no tests\n");
108 fprintf (stderr, "warning: \"guestfs_get_state\" has no tests\n");
109 fprintf (stderr, "warning: \"guestfs_set_busy\" has no tests\n");
110 fprintf (stderr, "warning: \"guestfs_set_ready\" has no tests\n");
111 fprintf (stderr, "warning: \"guestfs_end_busy\" has no tests\n");
112 fprintf (stderr, "warning: \"guestfs_set_memsize\" has no tests\n");
113 fprintf (stderr, "warning: \"guestfs_get_memsize\" has no tests\n");
114 fprintf (stderr, "warning: \"guestfs_ll\" has no tests\n");
115 fprintf (stderr, "warning: \"guestfs_pvs_full\" has no tests\n");
116 fprintf (stderr, "warning: \"guestfs_vgs_full\" has no tests\n");
117 fprintf (stderr, "warning: \"guestfs_lvs_full\" has no tests\n");
118 fprintf (stderr, "warning: \"guestfs_aug_init\" has no tests\n");
119 fprintf (stderr, "warning: \"guestfs_aug_close\" has no tests\n");
120 fprintf (stderr, "warning: \"guestfs_aug_defvar\" has no tests\n");
121 fprintf (stderr, "warning: \"guestfs_aug_defnode\" has no tests\n");
122 fprintf (stderr, "warning: \"guestfs_aug_get\" has no tests\n");
123 fprintf (stderr, "warning: \"guestfs_aug_set\" has no tests\n");
124 fprintf (stderr, "warning: \"guestfs_aug_insert\" has no tests\n");
125 fprintf (stderr, "warning: \"guestfs_aug_rm\" has no tests\n");
126 fprintf (stderr, "warning: \"guestfs_aug_mv\" has no tests\n");
127 fprintf (stderr, "warning: \"guestfs_aug_match\" has no tests\n");
128 fprintf (stderr, "warning: \"guestfs_aug_save\" has no tests\n");
129 fprintf (stderr, "warning: \"guestfs_aug_load\" has no tests\n");
130 fprintf (stderr, "warning: \"guestfs_aug_ls\" has no tests\n");
131 fprintf (stderr, "warning: \"guestfs_chmod\" has no tests\n");
132 fprintf (stderr, "warning: \"guestfs_chown\" has no tests\n");
133 fprintf (stderr, "warning: \"guestfs_sfdisk\" has no tests\n");
134 fprintf (stderr, "warning: \"guestfs_lvm_remove_all\" has no tests\n");
135 fprintf (stderr, "warning: \"guestfs_tune2fs_l\" has no tests\n");
136 fprintf (stderr, "warning: \"guestfs_blockdev_setbsz\" has no tests\n");
137 fprintf (stderr, "warning: \"guestfs_tar_out\" has no tests\n");
138 fprintf (stderr, "warning: \"guestfs_tgz_out\" has no tests\n");
139 fprintf (stderr, "warning: \"guestfs_mount_options\" has no tests\n");
140 fprintf (stderr, "warning: \"guestfs_mount_vfs\" has no tests\n");
141 fprintf (stderr, "warning: \"guestfs_debug\" has no tests\n");
142 fprintf (stderr, "warning: \"guestfs_get_e2label\" has no tests\n");
143 fprintf (stderr, "warning: \"guestfs_get_e2uuid\" has no tests\n");
144 fprintf (stderr, "warning: \"guestfs_pvresize\" has no tests\n");
145 fprintf (stderr, "warning: \"guestfs_sfdisk_N\" has no tests\n");
146 fprintf (stderr, "warning: \"guestfs_sfdisk_l\" has no tests\n");
147 fprintf (stderr, "warning: \"guestfs_sfdisk_kernel_geometry\" has no tests\n");
148 fprintf (stderr, "warning: \"guestfs_sfdisk_disk_geometry\" has no tests\n");
149 fprintf (stderr, "warning: \"guestfs_vg_activate_all\" has no tests\n");
150 fprintf (stderr, "warning: \"guestfs_vg_activate\" has no tests\n");
151 fprintf (stderr, "warning: \"guestfs_resize2fs\" has no tests\n");
152 fprintf (stderr, "warning: \"guestfs_e2fsck_f\" has no tests\n");
153 fprintf (stderr, "warning: \"guestfs_sh\" has no tests\n");
154 fprintf (stderr, "warning: \"guestfs_sh_lines\" has no tests\n");
155 fprintf (stderr, "warning: \"guestfs_scrub_freespace\" has no tests\n");
156 fprintf (stderr, "warning: \"guestfs_df\" has no tests\n");
157 fprintf (stderr, "warning: \"guestfs_df_h\" has no tests\n");
158 fprintf (stderr, "warning: \"guestfs_mount_loop\" has no tests\n");
159 fprintf (stderr, "warning: \"guestfs_umask\" has no tests\n");
162 static int test_mknod_c_0_skip (void)
166 str = getenv ("TEST_ONLY");
168 return strstr (str, "mknod_c") == NULL;
169 str = getenv ("SKIP_TEST_MKNOD_C_0");
170 if (str && strcmp (str, "1") == 0) return 1;
171 str = getenv ("SKIP_TEST_MKNOD_C");
172 if (str && strcmp (str, "1") == 0) return 1;
176 static int test_mknod_c_0 (void)
178 if (test_mknod_c_0_skip ()) {
179 printf ("%s skipped (reason: environment variable set)\n", "test_mknod_c_0");
183 /* InitBasicFS for test_mknod_c_0: create ext2 on /dev/sda1 */
185 char device[] = "/dev/sda";
188 r = guestfs_blockdev_setrw (g, device);
195 r = guestfs_umount_all (g);
202 r = guestfs_lvm_remove_all (g);
207 char device[] = "/dev/sda";
208 char lines_0[] = ",";
215 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
220 char fstype[] = "ext2";
221 char device[] = "/dev/sda1";
224 r = guestfs_mkfs (g, fstype, device);
229 char device[] = "/dev/sda1";
230 char mountpoint[] = "/";
233 r = guestfs_mount (g, device, mountpoint);
237 /* TestOutputStruct for mknod_c (0) */
239 char path[] = "/node";
242 r = guestfs_mknod_c (g, 511, 99, 66, path);
247 char path[] = "/node";
248 struct guestfs_stat *r;
250 r = guestfs_stat (g, path);
253 if (r->mode != 8685) {
254 fprintf (stderr, "test_mknod_c_0: mode was %d, expected 8685\n",
263 static int test_mknod_b_0_skip (void)
267 str = getenv ("TEST_ONLY");
269 return strstr (str, "mknod_b") == NULL;
270 str = getenv ("SKIP_TEST_MKNOD_B_0");
271 if (str && strcmp (str, "1") == 0) return 1;
272 str = getenv ("SKIP_TEST_MKNOD_B");
273 if (str && strcmp (str, "1") == 0) return 1;
277 static int test_mknod_b_0 (void)
279 if (test_mknod_b_0_skip ()) {
280 printf ("%s skipped (reason: environment variable set)\n", "test_mknod_b_0");
284 /* InitBasicFS for test_mknod_b_0: create ext2 on /dev/sda1 */
286 char device[] = "/dev/sda";
289 r = guestfs_blockdev_setrw (g, device);
296 r = guestfs_umount_all (g);
303 r = guestfs_lvm_remove_all (g);
308 char device[] = "/dev/sda";
309 char lines_0[] = ",";
316 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
321 char fstype[] = "ext2";
322 char device[] = "/dev/sda1";
325 r = guestfs_mkfs (g, fstype, device);
330 char device[] = "/dev/sda1";
331 char mountpoint[] = "/";
334 r = guestfs_mount (g, device, mountpoint);
338 /* TestOutputStruct for mknod_b (0) */
340 char path[] = "/node";
343 r = guestfs_mknod_b (g, 511, 99, 66, path);
348 char path[] = "/node";
349 struct guestfs_stat *r;
351 r = guestfs_stat (g, path);
354 if (r->mode != 25069) {
355 fprintf (stderr, "test_mknod_b_0: mode was %d, expected 25069\n",
364 static int test_mkfifo_0_skip (void)
368 str = getenv ("TEST_ONLY");
370 return strstr (str, "mkfifo") == NULL;
371 str = getenv ("SKIP_TEST_MKFIFO_0");
372 if (str && strcmp (str, "1") == 0) return 1;
373 str = getenv ("SKIP_TEST_MKFIFO");
374 if (str && strcmp (str, "1") == 0) return 1;
378 static int test_mkfifo_0 (void)
380 if (test_mkfifo_0_skip ()) {
381 printf ("%s skipped (reason: environment variable set)\n", "test_mkfifo_0");
385 /* InitBasicFS for test_mkfifo_0: create ext2 on /dev/sda1 */
387 char device[] = "/dev/sda";
390 r = guestfs_blockdev_setrw (g, device);
397 r = guestfs_umount_all (g);
404 r = guestfs_lvm_remove_all (g);
409 char device[] = "/dev/sda";
410 char lines_0[] = ",";
417 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
422 char fstype[] = "ext2";
423 char device[] = "/dev/sda1";
426 r = guestfs_mkfs (g, fstype, device);
431 char device[] = "/dev/sda1";
432 char mountpoint[] = "/";
435 r = guestfs_mount (g, device, mountpoint);
439 /* TestOutputStruct for mkfifo (0) */
441 char path[] = "/node";
444 r = guestfs_mkfifo (g, 511, path);
449 char path[] = "/node";
450 struct guestfs_stat *r;
452 r = guestfs_stat (g, path);
455 if (r->mode != 4589) {
456 fprintf (stderr, "test_mkfifo_0: mode was %d, expected 4589\n",
465 static int test_mknod_0_skip (void)
469 str = getenv ("TEST_ONLY");
471 return strstr (str, "mknod") == NULL;
472 str = getenv ("SKIP_TEST_MKNOD_0");
473 if (str && strcmp (str, "1") == 0) return 1;
474 str = getenv ("SKIP_TEST_MKNOD");
475 if (str && strcmp (str, "1") == 0) return 1;
479 static int test_mknod_0 (void)
481 if (test_mknod_0_skip ()) {
482 printf ("%s skipped (reason: environment variable set)\n", "test_mknod_0");
486 /* InitBasicFS for test_mknod_0: create ext2 on /dev/sda1 */
488 char device[] = "/dev/sda";
491 r = guestfs_blockdev_setrw (g, device);
498 r = guestfs_umount_all (g);
505 r = guestfs_lvm_remove_all (g);
510 char device[] = "/dev/sda";
511 char lines_0[] = ",";
518 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
523 char fstype[] = "ext2";
524 char device[] = "/dev/sda1";
527 r = guestfs_mkfs (g, fstype, device);
532 char device[] = "/dev/sda1";
533 char mountpoint[] = "/";
536 r = guestfs_mount (g, device, mountpoint);
540 /* TestOutputStruct for mknod (0) */
542 char path[] = "/node";
545 r = guestfs_mknod (g, 4607, 0, 0, path);
550 char path[] = "/node";
551 struct guestfs_stat *r;
553 r = guestfs_stat (g, path);
556 if (r->mode != 4589) {
557 fprintf (stderr, "test_mknod_0: mode was %d, expected 4589\n",
566 static int test_mknod_1_skip (void)
570 str = getenv ("TEST_ONLY");
572 return strstr (str, "mknod") == NULL;
573 str = getenv ("SKIP_TEST_MKNOD_1");
574 if (str && strcmp (str, "1") == 0) return 1;
575 str = getenv ("SKIP_TEST_MKNOD");
576 if (str && strcmp (str, "1") == 0) return 1;
580 static int test_mknod_1 (void)
582 if (test_mknod_1_skip ()) {
583 printf ("%s skipped (reason: environment variable set)\n", "test_mknod_1");
587 /* InitBasicFS for test_mknod_1: create ext2 on /dev/sda1 */
589 char device[] = "/dev/sda";
592 r = guestfs_blockdev_setrw (g, device);
599 r = guestfs_umount_all (g);
606 r = guestfs_lvm_remove_all (g);
611 char device[] = "/dev/sda";
612 char lines_0[] = ",";
619 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
624 char fstype[] = "ext2";
625 char device[] = "/dev/sda1";
628 r = guestfs_mkfs (g, fstype, device);
633 char device[] = "/dev/sda1";
634 char mountpoint[] = "/";
637 r = guestfs_mount (g, device, mountpoint);
641 /* TestOutputStruct for mknod (1) */
643 char path[] = "/node";
646 r = guestfs_mknod (g, 25087, 66, 99, path);
651 char path[] = "/node";
652 struct guestfs_stat *r;
654 r = guestfs_stat (g, path);
657 if (r->mode != 25069) {
658 fprintf (stderr, "test_mknod_1: mode was %d, expected 25069\n",
667 static int test_mkswap_U_0_skip (void)
671 str = getenv ("TEST_ONLY");
673 return strstr (str, "mkswap_U") == NULL;
674 str = getenv ("SKIP_TEST_MKSWAP_U_0");
675 if (str && strcmp (str, "1") == 0) return 1;
676 str = getenv ("SKIP_TEST_MKSWAP_U");
677 if (str && strcmp (str, "1") == 0) return 1;
681 static int test_mkswap_U_0 (void)
683 if (test_mkswap_U_0_skip ()) {
684 printf ("%s skipped (reason: environment variable set)\n", "test_mkswap_U_0");
688 /* InitNone|InitEmpty for test_mkswap_U_0 */
690 char device[] = "/dev/sda";
693 r = guestfs_blockdev_setrw (g, device);
700 r = guestfs_umount_all (g);
707 r = guestfs_lvm_remove_all (g);
711 /* TestRun for mkswap_U (0) */
713 char device[] = "/dev/sda";
714 char lines_0[] = ",";
721 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
726 char uuid[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d";
727 char device[] = "/dev/sda1";
730 r = guestfs_mkswap_U (g, uuid, device);
737 static int test_mkswap_L_0_skip (void)
741 str = getenv ("TEST_ONLY");
743 return strstr (str, "mkswap_L") == NULL;
744 str = getenv ("SKIP_TEST_MKSWAP_L_0");
745 if (str && strcmp (str, "1") == 0) return 1;
746 str = getenv ("SKIP_TEST_MKSWAP_L");
747 if (str && strcmp (str, "1") == 0) return 1;
751 static int test_mkswap_L_0 (void)
753 if (test_mkswap_L_0_skip ()) {
754 printf ("%s skipped (reason: environment variable set)\n", "test_mkswap_L_0");
758 /* InitNone|InitEmpty for test_mkswap_L_0 */
760 char device[] = "/dev/sda";
763 r = guestfs_blockdev_setrw (g, device);
770 r = guestfs_umount_all (g);
777 r = guestfs_lvm_remove_all (g);
781 /* TestRun for mkswap_L (0) */
783 char device[] = "/dev/sda";
784 char lines_0[] = ",";
791 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
796 char label[] = "hello";
797 char device[] = "/dev/sda1";
800 r = guestfs_mkswap_L (g, label, device);
807 static int test_mkswap_0_skip (void)
811 str = getenv ("TEST_ONLY");
813 return strstr (str, "mkswap") == NULL;
814 str = getenv ("SKIP_TEST_MKSWAP_0");
815 if (str && strcmp (str, "1") == 0) return 1;
816 str = getenv ("SKIP_TEST_MKSWAP");
817 if (str && strcmp (str, "1") == 0) return 1;
821 static int test_mkswap_0 (void)
823 if (test_mkswap_0_skip ()) {
824 printf ("%s skipped (reason: environment variable set)\n", "test_mkswap_0");
828 /* InitNone|InitEmpty for test_mkswap_0 */
830 char device[] = "/dev/sda";
833 r = guestfs_blockdev_setrw (g, device);
840 r = guestfs_umount_all (g);
847 r = guestfs_lvm_remove_all (g);
851 /* TestRun for mkswap (0) */
853 char device[] = "/dev/sda";
854 char lines_0[] = ",";
861 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
866 char device[] = "/dev/sda1";
869 r = guestfs_mkswap (g, device);
876 static int test_initrd_list_0_skip (void)
880 str = getenv ("TEST_ONLY");
882 return strstr (str, "initrd_list") == NULL;
883 str = getenv ("SKIP_TEST_INITRD_LIST_0");
884 if (str && strcmp (str, "1") == 0) return 1;
885 str = getenv ("SKIP_TEST_INITRD_LIST");
886 if (str && strcmp (str, "1") == 0) return 1;
890 static int test_initrd_list_0 (void)
892 if (test_initrd_list_0_skip ()) {
893 printf ("%s skipped (reason: environment variable set)\n", "test_initrd_list_0");
897 /* InitBasicFS for test_initrd_list_0: create ext2 on /dev/sda1 */
899 char device[] = "/dev/sda";
902 r = guestfs_blockdev_setrw (g, device);
909 r = guestfs_umount_all (g);
916 r = guestfs_lvm_remove_all (g);
921 char device[] = "/dev/sda";
922 char lines_0[] = ",";
929 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
934 char fstype[] = "ext2";
935 char device[] = "/dev/sda1";
938 r = guestfs_mkfs (g, fstype, device);
943 char device[] = "/dev/sda1";
944 char mountpoint[] = "/";
947 r = guestfs_mount (g, device, mountpoint);
951 /* TestOutputList for initrd_list (0) */
953 char options[] = "ro";
954 char vfstype[] = "squashfs";
955 char device[] = "/dev/sdd";
956 char mountpoint[] = "/";
959 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
964 char path[] = "/initrd";
968 r = guestfs_initrd_list (g, path);
972 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
977 char expected[] = "empty";
978 if (strcmp (r[0], expected) != 0) {
979 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
984 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
989 char expected[] = "known-1";
990 if (strcmp (r[1], expected) != 0) {
991 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
996 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
1001 char expected[] = "known-2";
1002 if (strcmp (r[2], expected) != 0) {
1003 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1008 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
1013 char expected[] = "known-3";
1014 if (strcmp (r[3], expected) != 0) {
1015 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
1020 fprintf (stderr, "test_initrd_list_0: extra elements returned from command\n");
1024 for (i = 0; r[i] != NULL; ++i)
1031 static int test_du_0_skip (void)
1035 str = getenv ("TEST_ONLY");
1037 return strstr (str, "du") == NULL;
1038 str = getenv ("SKIP_TEST_DU_0");
1039 if (str && strcmp (str, "1") == 0) return 1;
1040 str = getenv ("SKIP_TEST_DU");
1041 if (str && strcmp (str, "1") == 0) return 1;
1045 static int test_du_0 (void)
1047 if (test_du_0_skip ()) {
1048 printf ("%s skipped (reason: environment variable set)\n", "test_du_0");
1052 /* InitBasicFS for test_du_0: create ext2 on /dev/sda1 */
1054 char device[] = "/dev/sda";
1057 r = guestfs_blockdev_setrw (g, device);
1064 r = guestfs_umount_all (g);
1071 r = guestfs_lvm_remove_all (g);
1076 char device[] = "/dev/sda";
1077 char lines_0[] = ",";
1084 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1089 char fstype[] = "ext2";
1090 char device[] = "/dev/sda1";
1093 r = guestfs_mkfs (g, fstype, device);
1098 char device[] = "/dev/sda1";
1099 char mountpoint[] = "/";
1102 r = guestfs_mount (g, device, mountpoint);
1106 /* TestOutputInt for du (0) */
1111 r = guestfs_mkdir (g, path);
1119 r = guestfs_du (g, path);
1123 fprintf (stderr, "test_du_0: expected 1 but got %d\n", (int) r);
1130 static int test_tail_n_0_skip (void)
1134 str = getenv ("TEST_ONLY");
1136 return strstr (str, "tail_n") == NULL;
1137 str = getenv ("SKIP_TEST_TAIL_N_0");
1138 if (str && strcmp (str, "1") == 0) return 1;
1139 str = getenv ("SKIP_TEST_TAIL_N");
1140 if (str && strcmp (str, "1") == 0) return 1;
1144 static int test_tail_n_0 (void)
1146 if (test_tail_n_0_skip ()) {
1147 printf ("%s skipped (reason: environment variable set)\n", "test_tail_n_0");
1151 /* InitBasicFS for test_tail_n_0: create ext2 on /dev/sda1 */
1153 char device[] = "/dev/sda";
1156 r = guestfs_blockdev_setrw (g, device);
1163 r = guestfs_umount_all (g);
1170 r = guestfs_lvm_remove_all (g);
1175 char device[] = "/dev/sda";
1176 char lines_0[] = ",";
1183 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1188 char fstype[] = "ext2";
1189 char device[] = "/dev/sda1";
1192 r = guestfs_mkfs (g, fstype, device);
1197 char device[] = "/dev/sda1";
1198 char mountpoint[] = "/";
1201 r = guestfs_mount (g, device, mountpoint);
1205 /* TestOutputList for tail_n (0) */
1207 char options[] = "ro";
1208 char vfstype[] = "squashfs";
1209 char device[] = "/dev/sdd";
1210 char mountpoint[] = "/";
1213 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1218 char path[] = "/10klines";
1222 r = guestfs_tail_n (g, 3, path);
1226 fprintf (stderr, "test_tail_n_0: short list returned from command\n");
1231 char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
1232 if (strcmp (r[0], expected) != 0) {
1233 fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1238 fprintf (stderr, "test_tail_n_0: short list returned from command\n");
1243 char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
1244 if (strcmp (r[1], expected) != 0) {
1245 fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1250 fprintf (stderr, "test_tail_n_0: short list returned from command\n");
1255 char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
1256 if (strcmp (r[2], expected) != 0) {
1257 fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1262 fprintf (stderr, "test_tail_n_0: extra elements returned from command\n");
1266 for (i = 0; r[i] != NULL; ++i)
1273 static int test_tail_n_1_skip (void)
1277 str = getenv ("TEST_ONLY");
1279 return strstr (str, "tail_n") == NULL;
1280 str = getenv ("SKIP_TEST_TAIL_N_1");
1281 if (str && strcmp (str, "1") == 0) return 1;
1282 str = getenv ("SKIP_TEST_TAIL_N");
1283 if (str && strcmp (str, "1") == 0) return 1;
1287 static int test_tail_n_1 (void)
1289 if (test_tail_n_1_skip ()) {
1290 printf ("%s skipped (reason: environment variable set)\n", "test_tail_n_1");
1294 /* InitBasicFS for test_tail_n_1: create ext2 on /dev/sda1 */
1296 char device[] = "/dev/sda";
1299 r = guestfs_blockdev_setrw (g, device);
1306 r = guestfs_umount_all (g);
1313 r = guestfs_lvm_remove_all (g);
1318 char device[] = "/dev/sda";
1319 char lines_0[] = ",";
1326 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1331 char fstype[] = "ext2";
1332 char device[] = "/dev/sda1";
1335 r = guestfs_mkfs (g, fstype, device);
1340 char device[] = "/dev/sda1";
1341 char mountpoint[] = "/";
1344 r = guestfs_mount (g, device, mountpoint);
1348 /* TestOutputList for tail_n (1) */
1350 char options[] = "ro";
1351 char vfstype[] = "squashfs";
1352 char device[] = "/dev/sdd";
1353 char mountpoint[] = "/";
1356 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1361 char path[] = "/10klines";
1365 r = guestfs_tail_n (g, -9998, path);
1369 fprintf (stderr, "test_tail_n_1: short list returned from command\n");
1374 char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
1375 if (strcmp (r[0], expected) != 0) {
1376 fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1381 fprintf (stderr, "test_tail_n_1: short list returned from command\n");
1386 char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
1387 if (strcmp (r[1], expected) != 0) {
1388 fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1393 fprintf (stderr, "test_tail_n_1: short list returned from command\n");
1398 char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
1399 if (strcmp (r[2], expected) != 0) {
1400 fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1405 fprintf (stderr, "test_tail_n_1: extra elements returned from command\n");
1409 for (i = 0; r[i] != NULL; ++i)
1416 static int test_tail_n_2_skip (void)
1420 str = getenv ("TEST_ONLY");
1422 return strstr (str, "tail_n") == NULL;
1423 str = getenv ("SKIP_TEST_TAIL_N_2");
1424 if (str && strcmp (str, "1") == 0) return 1;
1425 str = getenv ("SKIP_TEST_TAIL_N");
1426 if (str && strcmp (str, "1") == 0) return 1;
1430 static int test_tail_n_2 (void)
1432 if (test_tail_n_2_skip ()) {
1433 printf ("%s skipped (reason: environment variable set)\n", "test_tail_n_2");
1437 /* InitBasicFS for test_tail_n_2: create ext2 on /dev/sda1 */
1439 char device[] = "/dev/sda";
1442 r = guestfs_blockdev_setrw (g, device);
1449 r = guestfs_umount_all (g);
1456 r = guestfs_lvm_remove_all (g);
1461 char device[] = "/dev/sda";
1462 char lines_0[] = ",";
1469 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1474 char fstype[] = "ext2";
1475 char device[] = "/dev/sda1";
1478 r = guestfs_mkfs (g, fstype, device);
1483 char device[] = "/dev/sda1";
1484 char mountpoint[] = "/";
1487 r = guestfs_mount (g, device, mountpoint);
1491 /* TestOutputList for tail_n (2) */
1493 char options[] = "ro";
1494 char vfstype[] = "squashfs";
1495 char device[] = "/dev/sdd";
1496 char mountpoint[] = "/";
1499 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1504 char path[] = "/10klines";
1508 r = guestfs_tail_n (g, 0, path);
1512 fprintf (stderr, "test_tail_n_2: extra elements returned from command\n");
1516 for (i = 0; r[i] != NULL; ++i)
1523 static int test_tail_0_skip (void)
1527 str = getenv ("TEST_ONLY");
1529 return strstr (str, "tail") == NULL;
1530 str = getenv ("SKIP_TEST_TAIL_0");
1531 if (str && strcmp (str, "1") == 0) return 1;
1532 str = getenv ("SKIP_TEST_TAIL");
1533 if (str && strcmp (str, "1") == 0) return 1;
1537 static int test_tail_0 (void)
1539 if (test_tail_0_skip ()) {
1540 printf ("%s skipped (reason: environment variable set)\n", "test_tail_0");
1544 /* InitBasicFS for test_tail_0: create ext2 on /dev/sda1 */
1546 char device[] = "/dev/sda";
1549 r = guestfs_blockdev_setrw (g, device);
1556 r = guestfs_umount_all (g);
1563 r = guestfs_lvm_remove_all (g);
1568 char device[] = "/dev/sda";
1569 char lines_0[] = ",";
1576 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1581 char fstype[] = "ext2";
1582 char device[] = "/dev/sda1";
1585 r = guestfs_mkfs (g, fstype, device);
1590 char device[] = "/dev/sda1";
1591 char mountpoint[] = "/";
1594 r = guestfs_mount (g, device, mountpoint);
1598 /* TestOutputList for tail (0) */
1600 char options[] = "ro";
1601 char vfstype[] = "squashfs";
1602 char device[] = "/dev/sdd";
1603 char mountpoint[] = "/";
1606 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1611 char path[] = "/10klines";
1615 r = guestfs_tail (g, path);
1619 fprintf (stderr, "test_tail_0: short list returned from command\n");
1624 char expected[] = "9990abcdefghijklmnopqrstuvwxyz";
1625 if (strcmp (r[0], expected) != 0) {
1626 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1631 fprintf (stderr, "test_tail_0: short list returned from command\n");
1636 char expected[] = "9991abcdefghijklmnopqrstuvwxyz";
1637 if (strcmp (r[1], expected) != 0) {
1638 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1643 fprintf (stderr, "test_tail_0: short list returned from command\n");
1648 char expected[] = "9992abcdefghijklmnopqrstuvwxyz";
1649 if (strcmp (r[2], expected) != 0) {
1650 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1655 fprintf (stderr, "test_tail_0: short list returned from command\n");
1660 char expected[] = "9993abcdefghijklmnopqrstuvwxyz";
1661 if (strcmp (r[3], expected) != 0) {
1662 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
1667 fprintf (stderr, "test_tail_0: short list returned from command\n");
1672 char expected[] = "9994abcdefghijklmnopqrstuvwxyz";
1673 if (strcmp (r[4], expected) != 0) {
1674 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[4]);
1679 fprintf (stderr, "test_tail_0: short list returned from command\n");
1684 char expected[] = "9995abcdefghijklmnopqrstuvwxyz";
1685 if (strcmp (r[5], expected) != 0) {
1686 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[5]);
1691 fprintf (stderr, "test_tail_0: short list returned from command\n");
1696 char expected[] = "9996abcdefghijklmnopqrstuvwxyz";
1697 if (strcmp (r[6], expected) != 0) {
1698 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[6]);
1703 fprintf (stderr, "test_tail_0: short list returned from command\n");
1708 char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
1709 if (strcmp (r[7], expected) != 0) {
1710 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[7]);
1715 fprintf (stderr, "test_tail_0: short list returned from command\n");
1720 char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
1721 if (strcmp (r[8], expected) != 0) {
1722 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[8]);
1727 fprintf (stderr, "test_tail_0: short list returned from command\n");
1732 char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
1733 if (strcmp (r[9], expected) != 0) {
1734 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[9]);
1738 if (r[10] != NULL) {
1739 fprintf (stderr, "test_tail_0: extra elements returned from command\n");
1743 for (i = 0; r[i] != NULL; ++i)
1750 static int test_head_n_0_skip (void)
1754 str = getenv ("TEST_ONLY");
1756 return strstr (str, "head_n") == NULL;
1757 str = getenv ("SKIP_TEST_HEAD_N_0");
1758 if (str && strcmp (str, "1") == 0) return 1;
1759 str = getenv ("SKIP_TEST_HEAD_N");
1760 if (str && strcmp (str, "1") == 0) return 1;
1764 static int test_head_n_0 (void)
1766 if (test_head_n_0_skip ()) {
1767 printf ("%s skipped (reason: environment variable set)\n", "test_head_n_0");
1771 /* InitBasicFS for test_head_n_0: create ext2 on /dev/sda1 */
1773 char device[] = "/dev/sda";
1776 r = guestfs_blockdev_setrw (g, device);
1783 r = guestfs_umount_all (g);
1790 r = guestfs_lvm_remove_all (g);
1795 char device[] = "/dev/sda";
1796 char lines_0[] = ",";
1803 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1808 char fstype[] = "ext2";
1809 char device[] = "/dev/sda1";
1812 r = guestfs_mkfs (g, fstype, device);
1817 char device[] = "/dev/sda1";
1818 char mountpoint[] = "/";
1821 r = guestfs_mount (g, device, mountpoint);
1825 /* TestOutputList for head_n (0) */
1827 char options[] = "ro";
1828 char vfstype[] = "squashfs";
1829 char device[] = "/dev/sdd";
1830 char mountpoint[] = "/";
1833 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1838 char path[] = "/10klines";
1842 r = guestfs_head_n (g, 3, path);
1846 fprintf (stderr, "test_head_n_0: short list returned from command\n");
1851 char expected[] = "0abcdefghijklmnopqrstuvwxyz";
1852 if (strcmp (r[0], expected) != 0) {
1853 fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1858 fprintf (stderr, "test_head_n_0: short list returned from command\n");
1863 char expected[] = "1abcdefghijklmnopqrstuvwxyz";
1864 if (strcmp (r[1], expected) != 0) {
1865 fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1870 fprintf (stderr, "test_head_n_0: short list returned from command\n");
1875 char expected[] = "2abcdefghijklmnopqrstuvwxyz";
1876 if (strcmp (r[2], expected) != 0) {
1877 fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1882 fprintf (stderr, "test_head_n_0: extra elements returned from command\n");
1886 for (i = 0; r[i] != NULL; ++i)
1893 static int test_head_n_1_skip (void)
1897 str = getenv ("TEST_ONLY");
1899 return strstr (str, "head_n") == NULL;
1900 str = getenv ("SKIP_TEST_HEAD_N_1");
1901 if (str && strcmp (str, "1") == 0) return 1;
1902 str = getenv ("SKIP_TEST_HEAD_N");
1903 if (str && strcmp (str, "1") == 0) return 1;
1907 static int test_head_n_1 (void)
1909 if (test_head_n_1_skip ()) {
1910 printf ("%s skipped (reason: environment variable set)\n", "test_head_n_1");
1914 /* InitBasicFS for test_head_n_1: create ext2 on /dev/sda1 */
1916 char device[] = "/dev/sda";
1919 r = guestfs_blockdev_setrw (g, device);
1926 r = guestfs_umount_all (g);
1933 r = guestfs_lvm_remove_all (g);
1938 char device[] = "/dev/sda";
1939 char lines_0[] = ",";
1946 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1951 char fstype[] = "ext2";
1952 char device[] = "/dev/sda1";
1955 r = guestfs_mkfs (g, fstype, device);
1960 char device[] = "/dev/sda1";
1961 char mountpoint[] = "/";
1964 r = guestfs_mount (g, device, mountpoint);
1968 /* TestOutputList for head_n (1) */
1970 char options[] = "ro";
1971 char vfstype[] = "squashfs";
1972 char device[] = "/dev/sdd";
1973 char mountpoint[] = "/";
1976 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1981 char path[] = "/10klines";
1985 r = guestfs_head_n (g, -9997, path);
1989 fprintf (stderr, "test_head_n_1: short list returned from command\n");
1994 char expected[] = "0abcdefghijklmnopqrstuvwxyz";
1995 if (strcmp (r[0], expected) != 0) {
1996 fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
2001 fprintf (stderr, "test_head_n_1: short list returned from command\n");
2006 char expected[] = "1abcdefghijklmnopqrstuvwxyz";
2007 if (strcmp (r[1], expected) != 0) {
2008 fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
2013 fprintf (stderr, "test_head_n_1: short list returned from command\n");
2018 char expected[] = "2abcdefghijklmnopqrstuvwxyz";
2019 if (strcmp (r[2], expected) != 0) {
2020 fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
2025 fprintf (stderr, "test_head_n_1: extra elements returned from command\n");
2029 for (i = 0; r[i] != NULL; ++i)
2036 static int test_head_n_2_skip (void)
2040 str = getenv ("TEST_ONLY");
2042 return strstr (str, "head_n") == NULL;
2043 str = getenv ("SKIP_TEST_HEAD_N_2");
2044 if (str && strcmp (str, "1") == 0) return 1;
2045 str = getenv ("SKIP_TEST_HEAD_N");
2046 if (str && strcmp (str, "1") == 0) return 1;
2050 static int test_head_n_2 (void)
2052 if (test_head_n_2_skip ()) {
2053 printf ("%s skipped (reason: environment variable set)\n", "test_head_n_2");
2057 /* InitBasicFS for test_head_n_2: create ext2 on /dev/sda1 */
2059 char device[] = "/dev/sda";
2062 r = guestfs_blockdev_setrw (g, device);
2069 r = guestfs_umount_all (g);
2076 r = guestfs_lvm_remove_all (g);
2081 char device[] = "/dev/sda";
2082 char lines_0[] = ",";
2089 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2094 char fstype[] = "ext2";
2095 char device[] = "/dev/sda1";
2098 r = guestfs_mkfs (g, fstype, device);
2103 char device[] = "/dev/sda1";
2104 char mountpoint[] = "/";
2107 r = guestfs_mount (g, device, mountpoint);
2111 /* TestOutputList for head_n (2) */
2113 char options[] = "ro";
2114 char vfstype[] = "squashfs";
2115 char device[] = "/dev/sdd";
2116 char mountpoint[] = "/";
2119 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
2124 char path[] = "/10klines";
2128 r = guestfs_head_n (g, 0, path);
2132 fprintf (stderr, "test_head_n_2: extra elements returned from command\n");
2136 for (i = 0; r[i] != NULL; ++i)
2143 static int test_head_0_skip (void)
2147 str = getenv ("TEST_ONLY");
2149 return strstr (str, "head") == NULL;
2150 str = getenv ("SKIP_TEST_HEAD_0");
2151 if (str && strcmp (str, "1") == 0) return 1;
2152 str = getenv ("SKIP_TEST_HEAD");
2153 if (str && strcmp (str, "1") == 0) return 1;
2157 static int test_head_0 (void)
2159 if (test_head_0_skip ()) {
2160 printf ("%s skipped (reason: environment variable set)\n", "test_head_0");
2164 /* InitBasicFS for test_head_0: create ext2 on /dev/sda1 */
2166 char device[] = "/dev/sda";
2169 r = guestfs_blockdev_setrw (g, device);
2176 r = guestfs_umount_all (g);
2183 r = guestfs_lvm_remove_all (g);
2188 char device[] = "/dev/sda";
2189 char lines_0[] = ",";
2196 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2201 char fstype[] = "ext2";
2202 char device[] = "/dev/sda1";
2205 r = guestfs_mkfs (g, fstype, device);
2210 char device[] = "/dev/sda1";
2211 char mountpoint[] = "/";
2214 r = guestfs_mount (g, device, mountpoint);
2218 /* TestOutputList for head (0) */
2220 char options[] = "ro";
2221 char vfstype[] = "squashfs";
2222 char device[] = "/dev/sdd";
2223 char mountpoint[] = "/";
2226 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
2231 char path[] = "/10klines";
2235 r = guestfs_head (g, path);
2239 fprintf (stderr, "test_head_0: short list returned from command\n");
2244 char expected[] = "0abcdefghijklmnopqrstuvwxyz";
2245 if (strcmp (r[0], expected) != 0) {
2246 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
2251 fprintf (stderr, "test_head_0: short list returned from command\n");
2256 char expected[] = "1abcdefghijklmnopqrstuvwxyz";
2257 if (strcmp (r[1], expected) != 0) {
2258 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
2263 fprintf (stderr, "test_head_0: short list returned from command\n");
2268 char expected[] = "2abcdefghijklmnopqrstuvwxyz";
2269 if (strcmp (r[2], expected) != 0) {
2270 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
2275 fprintf (stderr, "test_head_0: short list returned from command\n");
2280 char expected[] = "3abcdefghijklmnopqrstuvwxyz";
2281 if (strcmp (r[3], expected) != 0) {
2282 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
2287 fprintf (stderr, "test_head_0: short list returned from command\n");
2292 char expected[] = "4abcdefghijklmnopqrstuvwxyz";
2293 if (strcmp (r[4], expected) != 0) {
2294 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[4]);
2299 fprintf (stderr, "test_head_0: short list returned from command\n");
2304 char expected[] = "5abcdefghijklmnopqrstuvwxyz";
2305 if (strcmp (r[5], expected) != 0) {
2306 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[5]);
2311 fprintf (stderr, "test_head_0: short list returned from command\n");
2316 char expected[] = "6abcdefghijklmnopqrstuvwxyz";
2317 if (strcmp (r[6], expected) != 0) {
2318 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[6]);
2323 fprintf (stderr, "test_head_0: short list returned from command\n");
2328 char expected[] = "7abcdefghijklmnopqrstuvwxyz";
2329 if (strcmp (r[7], expected) != 0) {
2330 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[7]);
2335 fprintf (stderr, "test_head_0: short list returned from command\n");
2340 char expected[] = "8abcdefghijklmnopqrstuvwxyz";
2341 if (strcmp (r[8], expected) != 0) {
2342 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[8]);
2347 fprintf (stderr, "test_head_0: short list returned from command\n");
2352 char expected[] = "9abcdefghijklmnopqrstuvwxyz";
2353 if (strcmp (r[9], expected) != 0) {
2354 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[9]);
2358 if (r[10] != NULL) {
2359 fprintf (stderr, "test_head_0: extra elements returned from command\n");
2363 for (i = 0; r[i] != NULL; ++i)
2370 static int test_wc_c_0_skip (void)
2374 str = getenv ("TEST_ONLY");
2376 return strstr (str, "wc_c") == NULL;
2377 str = getenv ("SKIP_TEST_WC_C_0");
2378 if (str && strcmp (str, "1") == 0) return 1;
2379 str = getenv ("SKIP_TEST_WC_C");
2380 if (str && strcmp (str, "1") == 0) return 1;
2384 static int test_wc_c_0 (void)
2386 if (test_wc_c_0_skip ()) {
2387 printf ("%s skipped (reason: environment variable set)\n", "test_wc_c_0");
2391 /* InitBasicFS for test_wc_c_0: create ext2 on /dev/sda1 */
2393 char device[] = "/dev/sda";
2396 r = guestfs_blockdev_setrw (g, device);
2403 r = guestfs_umount_all (g);
2410 r = guestfs_lvm_remove_all (g);
2415 char device[] = "/dev/sda";
2416 char lines_0[] = ",";
2423 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2428 char fstype[] = "ext2";
2429 char device[] = "/dev/sda1";
2432 r = guestfs_mkfs (g, fstype, device);
2437 char device[] = "/dev/sda1";
2438 char mountpoint[] = "/";
2441 r = guestfs_mount (g, device, mountpoint);
2445 /* TestOutputInt for wc_c (0) */
2447 char options[] = "ro";
2448 char vfstype[] = "squashfs";
2449 char device[] = "/dev/sdd";
2450 char mountpoint[] = "/";
2453 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
2458 char path[] = "/100kallspaces";
2461 r = guestfs_wc_c (g, path);
2465 fprintf (stderr, "test_wc_c_0: expected 102400 but got %d\n", (int) r);
2472 static int test_wc_w_0_skip (void)
2476 str = getenv ("TEST_ONLY");
2478 return strstr (str, "wc_w") == NULL;
2479 str = getenv ("SKIP_TEST_WC_W_0");
2480 if (str && strcmp (str, "1") == 0) return 1;
2481 str = getenv ("SKIP_TEST_WC_W");
2482 if (str && strcmp (str, "1") == 0) return 1;
2486 static int test_wc_w_0 (void)
2488 if (test_wc_w_0_skip ()) {
2489 printf ("%s skipped (reason: environment variable set)\n", "test_wc_w_0");
2493 /* InitBasicFS for test_wc_w_0: create ext2 on /dev/sda1 */
2495 char device[] = "/dev/sda";
2498 r = guestfs_blockdev_setrw (g, device);
2505 r = guestfs_umount_all (g);
2512 r = guestfs_lvm_remove_all (g);
2517 char device[] = "/dev/sda";
2518 char lines_0[] = ",";
2525 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2530 char fstype[] = "ext2";
2531 char device[] = "/dev/sda1";
2534 r = guestfs_mkfs (g, fstype, device);
2539 char device[] = "/dev/sda1";
2540 char mountpoint[] = "/";
2543 r = guestfs_mount (g, device, mountpoint);
2547 /* TestOutputInt for wc_w (0) */
2549 char options[] = "ro";
2550 char vfstype[] = "squashfs";
2551 char device[] = "/dev/sdd";
2552 char mountpoint[] = "/";
2555 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
2560 char path[] = "/10klines";
2563 r = guestfs_wc_w (g, path);
2567 fprintf (stderr, "test_wc_w_0: expected 10000 but got %d\n", (int) r);
2574 static int test_wc_l_0_skip (void)
2578 str = getenv ("TEST_ONLY");
2580 return strstr (str, "wc_l") == NULL;
2581 str = getenv ("SKIP_TEST_WC_L_0");
2582 if (str && strcmp (str, "1") == 0) return 1;
2583 str = getenv ("SKIP_TEST_WC_L");
2584 if (str && strcmp (str, "1") == 0) return 1;
2588 static int test_wc_l_0 (void)
2590 if (test_wc_l_0_skip ()) {
2591 printf ("%s skipped (reason: environment variable set)\n", "test_wc_l_0");
2595 /* InitBasicFS for test_wc_l_0: create ext2 on /dev/sda1 */
2597 char device[] = "/dev/sda";
2600 r = guestfs_blockdev_setrw (g, device);
2607 r = guestfs_umount_all (g);
2614 r = guestfs_lvm_remove_all (g);
2619 char device[] = "/dev/sda";
2620 char lines_0[] = ",";
2627 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2632 char fstype[] = "ext2";
2633 char device[] = "/dev/sda1";
2636 r = guestfs_mkfs (g, fstype, device);
2641 char device[] = "/dev/sda1";
2642 char mountpoint[] = "/";
2645 r = guestfs_mount (g, device, mountpoint);
2649 /* TestOutputInt for wc_l (0) */
2651 char options[] = "ro";
2652 char vfstype[] = "squashfs";
2653 char device[] = "/dev/sdd";
2654 char mountpoint[] = "/";
2657 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
2662 char path[] = "/10klines";
2665 r = guestfs_wc_l (g, path);
2669 fprintf (stderr, "test_wc_l_0: expected 10000 but got %d\n", (int) r);
2676 static int test_mkdtemp_0_skip (void)
2680 str = getenv ("TEST_ONLY");
2682 return strstr (str, "mkdtemp") == NULL;
2683 str = getenv ("SKIP_TEST_MKDTEMP_0");
2684 if (str && strcmp (str, "1") == 0) return 1;
2685 str = getenv ("SKIP_TEST_MKDTEMP");
2686 if (str && strcmp (str, "1") == 0) return 1;
2690 static int test_mkdtemp_0 (void)
2692 if (test_mkdtemp_0_skip ()) {
2693 printf ("%s skipped (reason: environment variable set)\n", "test_mkdtemp_0");
2697 /* InitBasicFS for test_mkdtemp_0: create ext2 on /dev/sda1 */
2699 char device[] = "/dev/sda";
2702 r = guestfs_blockdev_setrw (g, device);
2709 r = guestfs_umount_all (g);
2716 r = guestfs_lvm_remove_all (g);
2721 char device[] = "/dev/sda";
2722 char lines_0[] = ",";
2729 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2734 char fstype[] = "ext2";
2735 char device[] = "/dev/sda1";
2738 r = guestfs_mkfs (g, fstype, device);
2743 char device[] = "/dev/sda1";
2744 char mountpoint[] = "/";
2747 r = guestfs_mount (g, device, mountpoint);
2751 /* TestRun for mkdtemp (0) */
2753 char path[] = "/tmp";
2756 r = guestfs_mkdir (g, path);
2761 char template[] = "/tmp/tmpXXXXXX";
2764 r = guestfs_mkdtemp (g, template);
2772 static int test_scrub_file_0_skip (void)
2776 str = getenv ("TEST_ONLY");
2778 return strstr (str, "scrub_file") == NULL;
2779 str = getenv ("SKIP_TEST_SCRUB_FILE_0");
2780 if (str && strcmp (str, "1") == 0) return 1;
2781 str = getenv ("SKIP_TEST_SCRUB_FILE");
2782 if (str && strcmp (str, "1") == 0) return 1;
2786 static int test_scrub_file_0 (void)
2788 if (test_scrub_file_0_skip ()) {
2789 printf ("%s skipped (reason: environment variable set)\n", "test_scrub_file_0");
2793 /* InitBasicFS for test_scrub_file_0: create ext2 on /dev/sda1 */
2795 char device[] = "/dev/sda";
2798 r = guestfs_blockdev_setrw (g, device);
2805 r = guestfs_umount_all (g);
2812 r = guestfs_lvm_remove_all (g);
2817 char device[] = "/dev/sda";
2818 char lines_0[] = ",";
2825 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2830 char fstype[] = "ext2";
2831 char device[] = "/dev/sda1";
2834 r = guestfs_mkfs (g, fstype, device);
2839 char device[] = "/dev/sda1";
2840 char mountpoint[] = "/";
2843 r = guestfs_mount (g, device, mountpoint);
2847 /* TestRun for scrub_file (0) */
2849 char path[] = "/file";
2850 char content[] = "content";
2853 r = guestfs_write_file (g, path, content, 0);
2858 char file[] = "/file";
2861 r = guestfs_scrub_file (g, file);
2868 static int test_scrub_device_0_skip (void)
2872 str = getenv ("TEST_ONLY");
2874 return strstr (str, "scrub_device") == NULL;
2875 str = getenv ("SKIP_TEST_SCRUB_DEVICE_0");
2876 if (str && strcmp (str, "1") == 0) return 1;
2877 str = getenv ("SKIP_TEST_SCRUB_DEVICE");
2878 if (str && strcmp (str, "1") == 0) return 1;
2882 static int test_scrub_device_0 (void)
2884 if (test_scrub_device_0_skip ()) {
2885 printf ("%s skipped (reason: environment variable set)\n", "test_scrub_device_0");
2889 /* InitNone|InitEmpty for test_scrub_device_0 */
2891 char device[] = "/dev/sda";
2894 r = guestfs_blockdev_setrw (g, device);
2901 r = guestfs_umount_all (g);
2908 r = guestfs_lvm_remove_all (g);
2912 /* TestRun for scrub_device (0) */
2914 char device[] = "/dev/sdc";
2917 r = guestfs_scrub_device (g, device);
2924 static int test_glob_expand_0_skip (void)
2928 str = getenv ("TEST_ONLY");
2930 return strstr (str, "glob_expand") == NULL;
2931 str = getenv ("SKIP_TEST_GLOB_EXPAND_0");
2932 if (str && strcmp (str, "1") == 0) return 1;
2933 str = getenv ("SKIP_TEST_GLOB_EXPAND");
2934 if (str && strcmp (str, "1") == 0) return 1;
2938 static int test_glob_expand_0 (void)
2940 if (test_glob_expand_0_skip ()) {
2941 printf ("%s skipped (reason: environment variable set)\n", "test_glob_expand_0");
2945 /* InitBasicFS for test_glob_expand_0: create ext2 on /dev/sda1 */
2947 char device[] = "/dev/sda";
2950 r = guestfs_blockdev_setrw (g, device);
2957 r = guestfs_umount_all (g);
2964 r = guestfs_lvm_remove_all (g);
2969 char device[] = "/dev/sda";
2970 char lines_0[] = ",";
2977 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2982 char fstype[] = "ext2";
2983 char device[] = "/dev/sda1";
2986 r = guestfs_mkfs (g, fstype, device);
2991 char device[] = "/dev/sda1";
2992 char mountpoint[] = "/";
2995 r = guestfs_mount (g, device, mountpoint);
2999 /* TestOutputList for glob_expand (0) */
3001 char path[] = "/a/b/c";
3004 r = guestfs_mkdir_p (g, path);
3009 char path[] = "/a/b/c/d";
3012 r = guestfs_touch (g, path);
3017 char path[] = "/a/b/c/e";
3020 r = guestfs_touch (g, path);
3025 char pattern[] = "/a/b/c/*";
3029 r = guestfs_glob_expand (g, pattern);
3033 fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
3038 char expected[] = "/a/b/c/d";
3039 if (strcmp (r[0], expected) != 0) {
3040 fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3045 fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
3050 char expected[] = "/a/b/c/e";
3051 if (strcmp (r[1], expected) != 0) {
3052 fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
3057 fprintf (stderr, "test_glob_expand_0: extra elements returned from command\n");
3061 for (i = 0; r[i] != NULL; ++i)
3068 static int test_glob_expand_1_skip (void)
3072 str = getenv ("TEST_ONLY");
3074 return strstr (str, "glob_expand") == NULL;
3075 str = getenv ("SKIP_TEST_GLOB_EXPAND_1");
3076 if (str && strcmp (str, "1") == 0) return 1;
3077 str = getenv ("SKIP_TEST_GLOB_EXPAND");
3078 if (str && strcmp (str, "1") == 0) return 1;
3082 static int test_glob_expand_1 (void)
3084 if (test_glob_expand_1_skip ()) {
3085 printf ("%s skipped (reason: environment variable set)\n", "test_glob_expand_1");
3089 /* InitBasicFS for test_glob_expand_1: create ext2 on /dev/sda1 */
3091 char device[] = "/dev/sda";
3094 r = guestfs_blockdev_setrw (g, device);
3101 r = guestfs_umount_all (g);
3108 r = guestfs_lvm_remove_all (g);
3113 char device[] = "/dev/sda";
3114 char lines_0[] = ",";
3121 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3126 char fstype[] = "ext2";
3127 char device[] = "/dev/sda1";
3130 r = guestfs_mkfs (g, fstype, device);
3135 char device[] = "/dev/sda1";
3136 char mountpoint[] = "/";
3139 r = guestfs_mount (g, device, mountpoint);
3143 /* TestOutputList for glob_expand (1) */
3145 char path[] = "/a/b/c";
3148 r = guestfs_mkdir_p (g, path);
3153 char path[] = "/a/b/c/d";
3156 r = guestfs_touch (g, path);
3161 char path[] = "/a/b/c/e";
3164 r = guestfs_touch (g, path);
3169 char pattern[] = "/a/*/c/*";
3173 r = guestfs_glob_expand (g, pattern);
3177 fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
3182 char expected[] = "/a/b/c/d";
3183 if (strcmp (r[0], expected) != 0) {
3184 fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3189 fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
3194 char expected[] = "/a/b/c/e";
3195 if (strcmp (r[1], expected) != 0) {
3196 fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
3201 fprintf (stderr, "test_glob_expand_1: extra elements returned from command\n");
3205 for (i = 0; r[i] != NULL; ++i)
3212 static int test_glob_expand_2_skip (void)
3216 str = getenv ("TEST_ONLY");
3218 return strstr (str, "glob_expand") == NULL;
3219 str = getenv ("SKIP_TEST_GLOB_EXPAND_2");
3220 if (str && strcmp (str, "1") == 0) return 1;
3221 str = getenv ("SKIP_TEST_GLOB_EXPAND");
3222 if (str && strcmp (str, "1") == 0) return 1;
3226 static int test_glob_expand_2 (void)
3228 if (test_glob_expand_2_skip ()) {
3229 printf ("%s skipped (reason: environment variable set)\n", "test_glob_expand_2");
3233 /* InitBasicFS for test_glob_expand_2: create ext2 on /dev/sda1 */
3235 char device[] = "/dev/sda";
3238 r = guestfs_blockdev_setrw (g, device);
3245 r = guestfs_umount_all (g);
3252 r = guestfs_lvm_remove_all (g);
3257 char device[] = "/dev/sda";
3258 char lines_0[] = ",";
3265 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3270 char fstype[] = "ext2";
3271 char device[] = "/dev/sda1";
3274 r = guestfs_mkfs (g, fstype, device);
3279 char device[] = "/dev/sda1";
3280 char mountpoint[] = "/";
3283 r = guestfs_mount (g, device, mountpoint);
3287 /* TestOutputList for glob_expand (2) */
3289 char path[] = "/a/b/c";
3292 r = guestfs_mkdir_p (g, path);
3297 char path[] = "/a/b/c/d";
3300 r = guestfs_touch (g, path);
3305 char path[] = "/a/b/c/e";
3308 r = guestfs_touch (g, path);
3313 char pattern[] = "/a/*/x/*";
3317 r = guestfs_glob_expand (g, pattern);
3321 fprintf (stderr, "test_glob_expand_2: extra elements returned from command\n");
3325 for (i = 0; r[i] != NULL; ++i)
3332 static int test_ntfs_3g_probe_0_skip (void)
3336 str = getenv ("TEST_ONLY");
3338 return strstr (str, "ntfs_3g_probe") == NULL;
3339 str = getenv ("SKIP_TEST_NTFS_3G_PROBE_0");
3340 if (str && strcmp (str, "1") == 0) return 1;
3341 str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
3342 if (str && strcmp (str, "1") == 0) return 1;
3346 static int test_ntfs_3g_probe_0 (void)
3348 if (test_ntfs_3g_probe_0_skip ()) {
3349 printf ("%s skipped (reason: environment variable set)\n", "test_ntfs_3g_probe_0");
3353 /* InitNone|InitEmpty for test_ntfs_3g_probe_0 */
3355 char device[] = "/dev/sda";
3358 r = guestfs_blockdev_setrw (g, device);
3365 r = guestfs_umount_all (g);
3372 r = guestfs_lvm_remove_all (g);
3376 /* TestOutputInt for ntfs_3g_probe (0) */
3378 char device[] = "/dev/sda";
3379 char lines_0[] = ",";
3386 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3391 char fstype[] = "ntfs";
3392 char device[] = "/dev/sda1";
3395 r = guestfs_mkfs (g, fstype, device);
3400 char device[] = "/dev/sda1";
3403 r = guestfs_ntfs_3g_probe (g, 1, device);
3407 fprintf (stderr, "test_ntfs_3g_probe_0: expected 0 but got %d\n", (int) r);
3414 static int test_ntfs_3g_probe_1_skip (void)
3418 str = getenv ("TEST_ONLY");
3420 return strstr (str, "ntfs_3g_probe") == NULL;
3421 str = getenv ("SKIP_TEST_NTFS_3G_PROBE_1");
3422 if (str && strcmp (str, "1") == 0) return 1;
3423 str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
3424 if (str && strcmp (str, "1") == 0) return 1;
3428 static int test_ntfs_3g_probe_1 (void)
3430 if (test_ntfs_3g_probe_1_skip ()) {
3431 printf ("%s skipped (reason: environment variable set)\n", "test_ntfs_3g_probe_1");
3435 /* InitNone|InitEmpty for test_ntfs_3g_probe_1 */
3437 char device[] = "/dev/sda";
3440 r = guestfs_blockdev_setrw (g, device);
3447 r = guestfs_umount_all (g);
3454 r = guestfs_lvm_remove_all (g);
3458 /* TestOutputInt for ntfs_3g_probe (1) */
3460 char device[] = "/dev/sda";
3461 char lines_0[] = ",";
3468 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3473 char fstype[] = "ext2";
3474 char device[] = "/dev/sda1";
3477 r = guestfs_mkfs (g, fstype, device);
3482 char device[] = "/dev/sda1";
3485 r = guestfs_ntfs_3g_probe (g, 1, device);
3489 fprintf (stderr, "test_ntfs_3g_probe_1: expected 12 but got %d\n", (int) r);
3496 static int test_sleep_0_skip (void)
3500 str = getenv ("TEST_ONLY");
3502 return strstr (str, "sleep") == NULL;
3503 str = getenv ("SKIP_TEST_SLEEP_0");
3504 if (str && strcmp (str, "1") == 0) return 1;
3505 str = getenv ("SKIP_TEST_SLEEP");
3506 if (str && strcmp (str, "1") == 0) return 1;
3510 static int test_sleep_0 (void)
3512 if (test_sleep_0_skip ()) {
3513 printf ("%s skipped (reason: environment variable set)\n", "test_sleep_0");
3517 /* InitNone|InitEmpty for test_sleep_0 */
3519 char device[] = "/dev/sda";
3522 r = guestfs_blockdev_setrw (g, device);
3529 r = guestfs_umount_all (g);
3536 r = guestfs_lvm_remove_all (g);
3540 /* TestRun for sleep (0) */
3544 r = guestfs_sleep (g, 1);
3551 static int test_find_0_skip (void)
3555 str = getenv ("TEST_ONLY");
3557 return strstr (str, "find") == NULL;
3558 str = getenv ("SKIP_TEST_FIND_0");
3559 if (str && strcmp (str, "1") == 0) return 1;
3560 str = getenv ("SKIP_TEST_FIND");
3561 if (str && strcmp (str, "1") == 0) return 1;
3565 static int test_find_0 (void)
3567 if (test_find_0_skip ()) {
3568 printf ("%s skipped (reason: environment variable set)\n", "test_find_0");
3572 /* InitBasicFS for test_find_0: create ext2 on /dev/sda1 */
3574 char device[] = "/dev/sda";
3577 r = guestfs_blockdev_setrw (g, device);
3584 r = guestfs_umount_all (g);
3591 r = guestfs_lvm_remove_all (g);
3596 char device[] = "/dev/sda";
3597 char lines_0[] = ",";
3604 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3609 char fstype[] = "ext2";
3610 char device[] = "/dev/sda1";
3613 r = guestfs_mkfs (g, fstype, device);
3618 char device[] = "/dev/sda1";
3619 char mountpoint[] = "/";
3622 r = guestfs_mount (g, device, mountpoint);
3626 /* TestOutputList for find (0) */
3628 char directory[] = "/";
3632 r = guestfs_find (g, directory);
3636 fprintf (stderr, "test_find_0: short list returned from command\n");
3641 char expected[] = "lost+found";
3642 if (strcmp (r[0], expected) != 0) {
3643 fprintf (stderr, "test_find_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3648 fprintf (stderr, "test_find_0: extra elements returned from command\n");
3652 for (i = 0; r[i] != NULL; ++i)
3659 static int test_find_1_skip (void)
3663 str = getenv ("TEST_ONLY");
3665 return strstr (str, "find") == NULL;
3666 str = getenv ("SKIP_TEST_FIND_1");
3667 if (str && strcmp (str, "1") == 0) return 1;
3668 str = getenv ("SKIP_TEST_FIND");
3669 if (str && strcmp (str, "1") == 0) return 1;
3673 static int test_find_1 (void)
3675 if (test_find_1_skip ()) {
3676 printf ("%s skipped (reason: environment variable set)\n", "test_find_1");
3680 /* InitBasicFS for test_find_1: create ext2 on /dev/sda1 */
3682 char device[] = "/dev/sda";
3685 r = guestfs_blockdev_setrw (g, device);
3692 r = guestfs_umount_all (g);
3699 r = guestfs_lvm_remove_all (g);
3704 char device[] = "/dev/sda";
3705 char lines_0[] = ",";
3712 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3717 char fstype[] = "ext2";
3718 char device[] = "/dev/sda1";
3721 r = guestfs_mkfs (g, fstype, device);
3726 char device[] = "/dev/sda1";
3727 char mountpoint[] = "/";
3730 r = guestfs_mount (g, device, mountpoint);
3734 /* TestOutputList for find (1) */
3739 r = guestfs_touch (g, path);
3747 r = guestfs_mkdir (g, path);
3752 char path[] = "/b/c";
3755 r = guestfs_touch (g, path);
3760 char directory[] = "/";
3764 r = guestfs_find (g, directory);
3768 fprintf (stderr, "test_find_1: short list returned from command\n");
3773 char expected[] = "a";
3774 if (strcmp (r[0], expected) != 0) {
3775 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3780 fprintf (stderr, "test_find_1: short list returned from command\n");
3785 char expected[] = "b";
3786 if (strcmp (r[1], expected) != 0) {
3787 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
3792 fprintf (stderr, "test_find_1: short list returned from command\n");
3797 char expected[] = "b/c";
3798 if (strcmp (r[2], expected) != 0) {
3799 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
3804 fprintf (stderr, "test_find_1: short list returned from command\n");
3809 char expected[] = "lost+found";
3810 if (strcmp (r[3], expected) != 0) {
3811 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[3]);
3816 fprintf (stderr, "test_find_1: extra elements returned from command\n");
3820 for (i = 0; r[i] != NULL; ++i)
3827 static int test_find_2_skip (void)
3831 str = getenv ("TEST_ONLY");
3833 return strstr (str, "find") == NULL;
3834 str = getenv ("SKIP_TEST_FIND_2");
3835 if (str && strcmp (str, "1") == 0) return 1;
3836 str = getenv ("SKIP_TEST_FIND");
3837 if (str && strcmp (str, "1") == 0) return 1;
3841 static int test_find_2 (void)
3843 if (test_find_2_skip ()) {
3844 printf ("%s skipped (reason: environment variable set)\n", "test_find_2");
3848 /* InitBasicFS for test_find_2: create ext2 on /dev/sda1 */
3850 char device[] = "/dev/sda";
3853 r = guestfs_blockdev_setrw (g, device);
3860 r = guestfs_umount_all (g);
3867 r = guestfs_lvm_remove_all (g);
3872 char device[] = "/dev/sda";
3873 char lines_0[] = ",";
3880 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3885 char fstype[] = "ext2";
3886 char device[] = "/dev/sda1";
3889 r = guestfs_mkfs (g, fstype, device);
3894 char device[] = "/dev/sda1";
3895 char mountpoint[] = "/";
3898 r = guestfs_mount (g, device, mountpoint);
3902 /* TestOutputList for find (2) */
3904 char path[] = "/a/b/c";
3907 r = guestfs_mkdir_p (g, path);
3912 char path[] = "/a/b/c/d";
3915 r = guestfs_touch (g, path);
3920 char directory[] = "/a/b/";
3924 r = guestfs_find (g, directory);
3928 fprintf (stderr, "test_find_2: short list returned from command\n");
3933 char expected[] = "c";
3934 if (strcmp (r[0], expected) != 0) {
3935 fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3940 fprintf (stderr, "test_find_2: short list returned from command\n");
3945 char expected[] = "c/d";
3946 if (strcmp (r[1], expected) != 0) {
3947 fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[1]);
3952 fprintf (stderr, "test_find_2: extra elements returned from command\n");
3956 for (i = 0; r[i] != NULL; ++i)
3963 static int test_lvresize_0_skip (void)
3967 str = getenv ("TEST_ONLY");
3969 return strstr (str, "lvresize") == NULL;
3970 str = getenv ("SKIP_TEST_LVRESIZE_0");
3971 if (str && strcmp (str, "1") == 0) return 1;
3972 str = getenv ("SKIP_TEST_LVRESIZE");
3973 if (str && strcmp (str, "1") == 0) return 1;
3977 static int test_lvresize_0 (void)
3979 if (test_lvresize_0_skip ()) {
3980 printf ("%s skipped (reason: environment variable set)\n", "test_lvresize_0");
3984 /* InitNone|InitEmpty for test_lvresize_0 */
3986 char device[] = "/dev/sda";
3989 r = guestfs_blockdev_setrw (g, device);