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");
161 static int test_mkswap_U_0_skip (void)
165 str = getenv ("TEST_ONLY");
167 return strstr (str, "mkswap_U") == NULL;
168 str = getenv ("SKIP_TEST_MKSWAP_U_0");
169 if (str && strcmp (str, "1") == 0) return 1;
170 str = getenv ("SKIP_TEST_MKSWAP_U");
171 if (str && strcmp (str, "1") == 0) return 1;
175 static int test_mkswap_U_0 (void)
177 if (test_mkswap_U_0_skip ()) {
178 printf ("%s skipped (reason: environment variable set)\n", "test_mkswap_U_0");
182 /* InitNone|InitEmpty for test_mkswap_U_0 */
184 char device[] = "/dev/sda";
187 r = guestfs_blockdev_setrw (g, device);
194 r = guestfs_umount_all (g);
201 r = guestfs_lvm_remove_all (g);
205 /* TestRun for mkswap_U (0) */
207 char device[] = "/dev/sda";
208 char lines_0[] = ",";
215 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
220 char uuid[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d";
221 char device[] = "/dev/sda1";
224 r = guestfs_mkswap_U (g, uuid, device);
231 static int test_mkswap_L_0_skip (void)
235 str = getenv ("TEST_ONLY");
237 return strstr (str, "mkswap_L") == NULL;
238 str = getenv ("SKIP_TEST_MKSWAP_L_0");
239 if (str && strcmp (str, "1") == 0) return 1;
240 str = getenv ("SKIP_TEST_MKSWAP_L");
241 if (str && strcmp (str, "1") == 0) return 1;
245 static int test_mkswap_L_0 (void)
247 if (test_mkswap_L_0_skip ()) {
248 printf ("%s skipped (reason: environment variable set)\n", "test_mkswap_L_0");
252 /* InitNone|InitEmpty for test_mkswap_L_0 */
254 char device[] = "/dev/sda";
257 r = guestfs_blockdev_setrw (g, device);
264 r = guestfs_umount_all (g);
271 r = guestfs_lvm_remove_all (g);
275 /* TestRun for mkswap_L (0) */
277 char device[] = "/dev/sda";
278 char lines_0[] = ",";
285 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
290 char label[] = "hello";
291 char device[] = "/dev/sda1";
294 r = guestfs_mkswap_L (g, label, device);
301 static int test_mkswap_0_skip (void)
305 str = getenv ("TEST_ONLY");
307 return strstr (str, "mkswap") == NULL;
308 str = getenv ("SKIP_TEST_MKSWAP_0");
309 if (str && strcmp (str, "1") == 0) return 1;
310 str = getenv ("SKIP_TEST_MKSWAP");
311 if (str && strcmp (str, "1") == 0) return 1;
315 static int test_mkswap_0 (void)
317 if (test_mkswap_0_skip ()) {
318 printf ("%s skipped (reason: environment variable set)\n", "test_mkswap_0");
322 /* InitNone|InitEmpty for test_mkswap_0 */
324 char device[] = "/dev/sda";
327 r = guestfs_blockdev_setrw (g, device);
334 r = guestfs_umount_all (g);
341 r = guestfs_lvm_remove_all (g);
345 /* TestRun for mkswap (0) */
347 char device[] = "/dev/sda";
348 char lines_0[] = ",";
355 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
360 char device[] = "/dev/sda1";
363 r = guestfs_mkswap (g, device);
370 static int test_initrd_list_0_skip (void)
374 str = getenv ("TEST_ONLY");
376 return strstr (str, "initrd_list") == NULL;
377 str = getenv ("SKIP_TEST_INITRD_LIST_0");
378 if (str && strcmp (str, "1") == 0) return 1;
379 str = getenv ("SKIP_TEST_INITRD_LIST");
380 if (str && strcmp (str, "1") == 0) return 1;
384 static int test_initrd_list_0 (void)
386 if (test_initrd_list_0_skip ()) {
387 printf ("%s skipped (reason: environment variable set)\n", "test_initrd_list_0");
391 /* InitBasicFS for test_initrd_list_0: create ext2 on /dev/sda1 */
393 char device[] = "/dev/sda";
396 r = guestfs_blockdev_setrw (g, device);
403 r = guestfs_umount_all (g);
410 r = guestfs_lvm_remove_all (g);
415 char device[] = "/dev/sda";
416 char lines_0[] = ",";
423 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
428 char fstype[] = "ext2";
429 char device[] = "/dev/sda1";
432 r = guestfs_mkfs (g, fstype, device);
437 char device[] = "/dev/sda1";
438 char mountpoint[] = "/";
441 r = guestfs_mount (g, device, mountpoint);
445 /* TestOutputList for initrd_list (0) */
447 char options[] = "ro";
448 char vfstype[] = "squashfs";
449 char device[] = "/dev/sdd";
450 char mountpoint[] = "/";
453 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
458 char path[] = "/initrd";
462 r = guestfs_initrd_list (g, path);
466 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
471 char expected[] = "empty";
472 if (strcmp (r[0], expected) != 0) {
473 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
478 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
483 char expected[] = "known-1";
484 if (strcmp (r[1], expected) != 0) {
485 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
490 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
495 char expected[] = "known-2";
496 if (strcmp (r[2], expected) != 0) {
497 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
502 fprintf (stderr, "test_initrd_list_0: short list returned from command\n");
507 char expected[] = "known-3";
508 if (strcmp (r[3], expected) != 0) {
509 fprintf (stderr, "test_initrd_list_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
514 fprintf (stderr, "test_initrd_list_0: extra elements returned from command\n");
518 for (i = 0; r[i] != NULL; ++i)
525 static int test_du_0_skip (void)
529 str = getenv ("TEST_ONLY");
531 return strstr (str, "du") == NULL;
532 str = getenv ("SKIP_TEST_DU_0");
533 if (str && strcmp (str, "1") == 0) return 1;
534 str = getenv ("SKIP_TEST_DU");
535 if (str && strcmp (str, "1") == 0) return 1;
539 static int test_du_0 (void)
541 if (test_du_0_skip ()) {
542 printf ("%s skipped (reason: environment variable set)\n", "test_du_0");
546 /* InitBasicFS for test_du_0: create ext2 on /dev/sda1 */
548 char device[] = "/dev/sda";
551 r = guestfs_blockdev_setrw (g, device);
558 r = guestfs_umount_all (g);
565 r = guestfs_lvm_remove_all (g);
570 char device[] = "/dev/sda";
571 char lines_0[] = ",";
578 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
583 char fstype[] = "ext2";
584 char device[] = "/dev/sda1";
587 r = guestfs_mkfs (g, fstype, device);
592 char device[] = "/dev/sda1";
593 char mountpoint[] = "/";
596 r = guestfs_mount (g, device, mountpoint);
600 /* TestOutputInt for du (0) */
605 r = guestfs_mkdir (g, path);
613 r = guestfs_du (g, path);
617 fprintf (stderr, "test_du_0: expected 1 but got %d\n", (int) r);
624 static int test_tail_n_0_skip (void)
628 str = getenv ("TEST_ONLY");
630 return strstr (str, "tail_n") == NULL;
631 str = getenv ("SKIP_TEST_TAIL_N_0");
632 if (str && strcmp (str, "1") == 0) return 1;
633 str = getenv ("SKIP_TEST_TAIL_N");
634 if (str && strcmp (str, "1") == 0) return 1;
638 static int test_tail_n_0 (void)
640 if (test_tail_n_0_skip ()) {
641 printf ("%s skipped (reason: environment variable set)\n", "test_tail_n_0");
645 /* InitBasicFS for test_tail_n_0: create ext2 on /dev/sda1 */
647 char device[] = "/dev/sda";
650 r = guestfs_blockdev_setrw (g, device);
657 r = guestfs_umount_all (g);
664 r = guestfs_lvm_remove_all (g);
669 char device[] = "/dev/sda";
670 char lines_0[] = ",";
677 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
682 char fstype[] = "ext2";
683 char device[] = "/dev/sda1";
686 r = guestfs_mkfs (g, fstype, device);
691 char device[] = "/dev/sda1";
692 char mountpoint[] = "/";
695 r = guestfs_mount (g, device, mountpoint);
699 /* TestOutputList for tail_n (0) */
701 char options[] = "ro";
702 char vfstype[] = "squashfs";
703 char device[] = "/dev/sdd";
704 char mountpoint[] = "/";
707 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
712 char path[] = "/10klines";
716 r = guestfs_tail_n (g, 3, path);
720 fprintf (stderr, "test_tail_n_0: short list returned from command\n");
725 char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
726 if (strcmp (r[0], expected) != 0) {
727 fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
732 fprintf (stderr, "test_tail_n_0: short list returned from command\n");
737 char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
738 if (strcmp (r[1], expected) != 0) {
739 fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
744 fprintf (stderr, "test_tail_n_0: short list returned from command\n");
749 char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
750 if (strcmp (r[2], expected) != 0) {
751 fprintf (stderr, "test_tail_n_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
756 fprintf (stderr, "test_tail_n_0: extra elements returned from command\n");
760 for (i = 0; r[i] != NULL; ++i)
767 static int test_tail_n_1_skip (void)
771 str = getenv ("TEST_ONLY");
773 return strstr (str, "tail_n") == NULL;
774 str = getenv ("SKIP_TEST_TAIL_N_1");
775 if (str && strcmp (str, "1") == 0) return 1;
776 str = getenv ("SKIP_TEST_TAIL_N");
777 if (str && strcmp (str, "1") == 0) return 1;
781 static int test_tail_n_1 (void)
783 if (test_tail_n_1_skip ()) {
784 printf ("%s skipped (reason: environment variable set)\n", "test_tail_n_1");
788 /* InitBasicFS for test_tail_n_1: create ext2 on /dev/sda1 */
790 char device[] = "/dev/sda";
793 r = guestfs_blockdev_setrw (g, device);
800 r = guestfs_umount_all (g);
807 r = guestfs_lvm_remove_all (g);
812 char device[] = "/dev/sda";
813 char lines_0[] = ",";
820 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
825 char fstype[] = "ext2";
826 char device[] = "/dev/sda1";
829 r = guestfs_mkfs (g, fstype, device);
834 char device[] = "/dev/sda1";
835 char mountpoint[] = "/";
838 r = guestfs_mount (g, device, mountpoint);
842 /* TestOutputList for tail_n (1) */
844 char options[] = "ro";
845 char vfstype[] = "squashfs";
846 char device[] = "/dev/sdd";
847 char mountpoint[] = "/";
850 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
855 char path[] = "/10klines";
859 r = guestfs_tail_n (g, -9998, path);
863 fprintf (stderr, "test_tail_n_1: short list returned from command\n");
868 char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
869 if (strcmp (r[0], expected) != 0) {
870 fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
875 fprintf (stderr, "test_tail_n_1: short list returned from command\n");
880 char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
881 if (strcmp (r[1], expected) != 0) {
882 fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
887 fprintf (stderr, "test_tail_n_1: short list returned from command\n");
892 char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
893 if (strcmp (r[2], expected) != 0) {
894 fprintf (stderr, "test_tail_n_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
899 fprintf (stderr, "test_tail_n_1: extra elements returned from command\n");
903 for (i = 0; r[i] != NULL; ++i)
910 static int test_tail_n_2_skip (void)
914 str = getenv ("TEST_ONLY");
916 return strstr (str, "tail_n") == NULL;
917 str = getenv ("SKIP_TEST_TAIL_N_2");
918 if (str && strcmp (str, "1") == 0) return 1;
919 str = getenv ("SKIP_TEST_TAIL_N");
920 if (str && strcmp (str, "1") == 0) return 1;
924 static int test_tail_n_2 (void)
926 if (test_tail_n_2_skip ()) {
927 printf ("%s skipped (reason: environment variable set)\n", "test_tail_n_2");
931 /* InitBasicFS for test_tail_n_2: create ext2 on /dev/sda1 */
933 char device[] = "/dev/sda";
936 r = guestfs_blockdev_setrw (g, device);
943 r = guestfs_umount_all (g);
950 r = guestfs_lvm_remove_all (g);
955 char device[] = "/dev/sda";
956 char lines_0[] = ",";
963 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
968 char fstype[] = "ext2";
969 char device[] = "/dev/sda1";
972 r = guestfs_mkfs (g, fstype, device);
977 char device[] = "/dev/sda1";
978 char mountpoint[] = "/";
981 r = guestfs_mount (g, device, mountpoint);
985 /* TestOutputList for tail_n (2) */
987 char options[] = "ro";
988 char vfstype[] = "squashfs";
989 char device[] = "/dev/sdd";
990 char mountpoint[] = "/";
993 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
998 char path[] = "/10klines";
1002 r = guestfs_tail_n (g, 0, path);
1006 fprintf (stderr, "test_tail_n_2: extra elements returned from command\n");
1010 for (i = 0; r[i] != NULL; ++i)
1017 static int test_tail_0_skip (void)
1021 str = getenv ("TEST_ONLY");
1023 return strstr (str, "tail") == NULL;
1024 str = getenv ("SKIP_TEST_TAIL_0");
1025 if (str && strcmp (str, "1") == 0) return 1;
1026 str = getenv ("SKIP_TEST_TAIL");
1027 if (str && strcmp (str, "1") == 0) return 1;
1031 static int test_tail_0 (void)
1033 if (test_tail_0_skip ()) {
1034 printf ("%s skipped (reason: environment variable set)\n", "test_tail_0");
1038 /* InitBasicFS for test_tail_0: create ext2 on /dev/sda1 */
1040 char device[] = "/dev/sda";
1043 r = guestfs_blockdev_setrw (g, device);
1050 r = guestfs_umount_all (g);
1057 r = guestfs_lvm_remove_all (g);
1062 char device[] = "/dev/sda";
1063 char lines_0[] = ",";
1070 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1075 char fstype[] = "ext2";
1076 char device[] = "/dev/sda1";
1079 r = guestfs_mkfs (g, fstype, device);
1084 char device[] = "/dev/sda1";
1085 char mountpoint[] = "/";
1088 r = guestfs_mount (g, device, mountpoint);
1092 /* TestOutputList for tail (0) */
1094 char options[] = "ro";
1095 char vfstype[] = "squashfs";
1096 char device[] = "/dev/sdd";
1097 char mountpoint[] = "/";
1100 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1105 char path[] = "/10klines";
1109 r = guestfs_tail (g, path);
1113 fprintf (stderr, "test_tail_0: short list returned from command\n");
1118 char expected[] = "9990abcdefghijklmnopqrstuvwxyz";
1119 if (strcmp (r[0], expected) != 0) {
1120 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1125 fprintf (stderr, "test_tail_0: short list returned from command\n");
1130 char expected[] = "9991abcdefghijklmnopqrstuvwxyz";
1131 if (strcmp (r[1], expected) != 0) {
1132 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1137 fprintf (stderr, "test_tail_0: short list returned from command\n");
1142 char expected[] = "9992abcdefghijklmnopqrstuvwxyz";
1143 if (strcmp (r[2], expected) != 0) {
1144 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1149 fprintf (stderr, "test_tail_0: short list returned from command\n");
1154 char expected[] = "9993abcdefghijklmnopqrstuvwxyz";
1155 if (strcmp (r[3], expected) != 0) {
1156 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
1161 fprintf (stderr, "test_tail_0: short list returned from command\n");
1166 char expected[] = "9994abcdefghijklmnopqrstuvwxyz";
1167 if (strcmp (r[4], expected) != 0) {
1168 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[4]);
1173 fprintf (stderr, "test_tail_0: short list returned from command\n");
1178 char expected[] = "9995abcdefghijklmnopqrstuvwxyz";
1179 if (strcmp (r[5], expected) != 0) {
1180 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[5]);
1185 fprintf (stderr, "test_tail_0: short list returned from command\n");
1190 char expected[] = "9996abcdefghijklmnopqrstuvwxyz";
1191 if (strcmp (r[6], expected) != 0) {
1192 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[6]);
1197 fprintf (stderr, "test_tail_0: short list returned from command\n");
1202 char expected[] = "9997abcdefghijklmnopqrstuvwxyz";
1203 if (strcmp (r[7], expected) != 0) {
1204 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[7]);
1209 fprintf (stderr, "test_tail_0: short list returned from command\n");
1214 char expected[] = "9998abcdefghijklmnopqrstuvwxyz";
1215 if (strcmp (r[8], expected) != 0) {
1216 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[8]);
1221 fprintf (stderr, "test_tail_0: short list returned from command\n");
1226 char expected[] = "9999abcdefghijklmnopqrstuvwxyz";
1227 if (strcmp (r[9], expected) != 0) {
1228 fprintf (stderr, "test_tail_0: expected \"%s\" but got \"%s\"\n", expected, r[9]);
1232 if (r[10] != NULL) {
1233 fprintf (stderr, "test_tail_0: extra elements returned from command\n");
1237 for (i = 0; r[i] != NULL; ++i)
1244 static int test_head_n_0_skip (void)
1248 str = getenv ("TEST_ONLY");
1250 return strstr (str, "head_n") == NULL;
1251 str = getenv ("SKIP_TEST_HEAD_N_0");
1252 if (str && strcmp (str, "1") == 0) return 1;
1253 str = getenv ("SKIP_TEST_HEAD_N");
1254 if (str && strcmp (str, "1") == 0) return 1;
1258 static int test_head_n_0 (void)
1260 if (test_head_n_0_skip ()) {
1261 printf ("%s skipped (reason: environment variable set)\n", "test_head_n_0");
1265 /* InitBasicFS for test_head_n_0: create ext2 on /dev/sda1 */
1267 char device[] = "/dev/sda";
1270 r = guestfs_blockdev_setrw (g, device);
1277 r = guestfs_umount_all (g);
1284 r = guestfs_lvm_remove_all (g);
1289 char device[] = "/dev/sda";
1290 char lines_0[] = ",";
1297 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1302 char fstype[] = "ext2";
1303 char device[] = "/dev/sda1";
1306 r = guestfs_mkfs (g, fstype, device);
1311 char device[] = "/dev/sda1";
1312 char mountpoint[] = "/";
1315 r = guestfs_mount (g, device, mountpoint);
1319 /* TestOutputList for head_n (0) */
1321 char options[] = "ro";
1322 char vfstype[] = "squashfs";
1323 char device[] = "/dev/sdd";
1324 char mountpoint[] = "/";
1327 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1332 char path[] = "/10klines";
1336 r = guestfs_head_n (g, 3, path);
1340 fprintf (stderr, "test_head_n_0: short list returned from command\n");
1345 char expected[] = "0abcdefghijklmnopqrstuvwxyz";
1346 if (strcmp (r[0], expected) != 0) {
1347 fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1352 fprintf (stderr, "test_head_n_0: short list returned from command\n");
1357 char expected[] = "1abcdefghijklmnopqrstuvwxyz";
1358 if (strcmp (r[1], expected) != 0) {
1359 fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1364 fprintf (stderr, "test_head_n_0: short list returned from command\n");
1369 char expected[] = "2abcdefghijklmnopqrstuvwxyz";
1370 if (strcmp (r[2], expected) != 0) {
1371 fprintf (stderr, "test_head_n_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1376 fprintf (stderr, "test_head_n_0: extra elements returned from command\n");
1380 for (i = 0; r[i] != NULL; ++i)
1387 static int test_head_n_1_skip (void)
1391 str = getenv ("TEST_ONLY");
1393 return strstr (str, "head_n") == NULL;
1394 str = getenv ("SKIP_TEST_HEAD_N_1");
1395 if (str && strcmp (str, "1") == 0) return 1;
1396 str = getenv ("SKIP_TEST_HEAD_N");
1397 if (str && strcmp (str, "1") == 0) return 1;
1401 static int test_head_n_1 (void)
1403 if (test_head_n_1_skip ()) {
1404 printf ("%s skipped (reason: environment variable set)\n", "test_head_n_1");
1408 /* InitBasicFS for test_head_n_1: create ext2 on /dev/sda1 */
1410 char device[] = "/dev/sda";
1413 r = guestfs_blockdev_setrw (g, device);
1420 r = guestfs_umount_all (g);
1427 r = guestfs_lvm_remove_all (g);
1432 char device[] = "/dev/sda";
1433 char lines_0[] = ",";
1440 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1445 char fstype[] = "ext2";
1446 char device[] = "/dev/sda1";
1449 r = guestfs_mkfs (g, fstype, device);
1454 char device[] = "/dev/sda1";
1455 char mountpoint[] = "/";
1458 r = guestfs_mount (g, device, mountpoint);
1462 /* TestOutputList for head_n (1) */
1464 char options[] = "ro";
1465 char vfstype[] = "squashfs";
1466 char device[] = "/dev/sdd";
1467 char mountpoint[] = "/";
1470 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1475 char path[] = "/10klines";
1479 r = guestfs_head_n (g, -9997, path);
1483 fprintf (stderr, "test_head_n_1: short list returned from command\n");
1488 char expected[] = "0abcdefghijklmnopqrstuvwxyz";
1489 if (strcmp (r[0], expected) != 0) {
1490 fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1495 fprintf (stderr, "test_head_n_1: short list returned from command\n");
1500 char expected[] = "1abcdefghijklmnopqrstuvwxyz";
1501 if (strcmp (r[1], expected) != 0) {
1502 fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1507 fprintf (stderr, "test_head_n_1: short list returned from command\n");
1512 char expected[] = "2abcdefghijklmnopqrstuvwxyz";
1513 if (strcmp (r[2], expected) != 0) {
1514 fprintf (stderr, "test_head_n_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1519 fprintf (stderr, "test_head_n_1: extra elements returned from command\n");
1523 for (i = 0; r[i] != NULL; ++i)
1530 static int test_head_n_2_skip (void)
1534 str = getenv ("TEST_ONLY");
1536 return strstr (str, "head_n") == NULL;
1537 str = getenv ("SKIP_TEST_HEAD_N_2");
1538 if (str && strcmp (str, "1") == 0) return 1;
1539 str = getenv ("SKIP_TEST_HEAD_N");
1540 if (str && strcmp (str, "1") == 0) return 1;
1544 static int test_head_n_2 (void)
1546 if (test_head_n_2_skip ()) {
1547 printf ("%s skipped (reason: environment variable set)\n", "test_head_n_2");
1551 /* InitBasicFS for test_head_n_2: create ext2 on /dev/sda1 */
1553 char device[] = "/dev/sda";
1556 r = guestfs_blockdev_setrw (g, device);
1563 r = guestfs_umount_all (g);
1570 r = guestfs_lvm_remove_all (g);
1575 char device[] = "/dev/sda";
1576 char lines_0[] = ",";
1583 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1588 char fstype[] = "ext2";
1589 char device[] = "/dev/sda1";
1592 r = guestfs_mkfs (g, fstype, device);
1597 char device[] = "/dev/sda1";
1598 char mountpoint[] = "/";
1601 r = guestfs_mount (g, device, mountpoint);
1605 /* TestOutputList for head_n (2) */
1607 char options[] = "ro";
1608 char vfstype[] = "squashfs";
1609 char device[] = "/dev/sdd";
1610 char mountpoint[] = "/";
1613 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1618 char path[] = "/10klines";
1622 r = guestfs_head_n (g, 0, path);
1626 fprintf (stderr, "test_head_n_2: extra elements returned from command\n");
1630 for (i = 0; r[i] != NULL; ++i)
1637 static int test_head_0_skip (void)
1641 str = getenv ("TEST_ONLY");
1643 return strstr (str, "head") == NULL;
1644 str = getenv ("SKIP_TEST_HEAD_0");
1645 if (str && strcmp (str, "1") == 0) return 1;
1646 str = getenv ("SKIP_TEST_HEAD");
1647 if (str && strcmp (str, "1") == 0) return 1;
1651 static int test_head_0 (void)
1653 if (test_head_0_skip ()) {
1654 printf ("%s skipped (reason: environment variable set)\n", "test_head_0");
1658 /* InitBasicFS for test_head_0: create ext2 on /dev/sda1 */
1660 char device[] = "/dev/sda";
1663 r = guestfs_blockdev_setrw (g, device);
1670 r = guestfs_umount_all (g);
1677 r = guestfs_lvm_remove_all (g);
1682 char device[] = "/dev/sda";
1683 char lines_0[] = ",";
1690 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1695 char fstype[] = "ext2";
1696 char device[] = "/dev/sda1";
1699 r = guestfs_mkfs (g, fstype, device);
1704 char device[] = "/dev/sda1";
1705 char mountpoint[] = "/";
1708 r = guestfs_mount (g, device, mountpoint);
1712 /* TestOutputList for head (0) */
1714 char options[] = "ro";
1715 char vfstype[] = "squashfs";
1716 char device[] = "/dev/sdd";
1717 char mountpoint[] = "/";
1720 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1725 char path[] = "/10klines";
1729 r = guestfs_head (g, path);
1733 fprintf (stderr, "test_head_0: short list returned from command\n");
1738 char expected[] = "0abcdefghijklmnopqrstuvwxyz";
1739 if (strcmp (r[0], expected) != 0) {
1740 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1745 fprintf (stderr, "test_head_0: short list returned from command\n");
1750 char expected[] = "1abcdefghijklmnopqrstuvwxyz";
1751 if (strcmp (r[1], expected) != 0) {
1752 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1757 fprintf (stderr, "test_head_0: short list returned from command\n");
1762 char expected[] = "2abcdefghijklmnopqrstuvwxyz";
1763 if (strcmp (r[2], expected) != 0) {
1764 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1769 fprintf (stderr, "test_head_0: short list returned from command\n");
1774 char expected[] = "3abcdefghijklmnopqrstuvwxyz";
1775 if (strcmp (r[3], expected) != 0) {
1776 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[3]);
1781 fprintf (stderr, "test_head_0: short list returned from command\n");
1786 char expected[] = "4abcdefghijklmnopqrstuvwxyz";
1787 if (strcmp (r[4], expected) != 0) {
1788 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[4]);
1793 fprintf (stderr, "test_head_0: short list returned from command\n");
1798 char expected[] = "5abcdefghijklmnopqrstuvwxyz";
1799 if (strcmp (r[5], expected) != 0) {
1800 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[5]);
1805 fprintf (stderr, "test_head_0: short list returned from command\n");
1810 char expected[] = "6abcdefghijklmnopqrstuvwxyz";
1811 if (strcmp (r[6], expected) != 0) {
1812 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[6]);
1817 fprintf (stderr, "test_head_0: short list returned from command\n");
1822 char expected[] = "7abcdefghijklmnopqrstuvwxyz";
1823 if (strcmp (r[7], expected) != 0) {
1824 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[7]);
1829 fprintf (stderr, "test_head_0: short list returned from command\n");
1834 char expected[] = "8abcdefghijklmnopqrstuvwxyz";
1835 if (strcmp (r[8], expected) != 0) {
1836 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[8]);
1841 fprintf (stderr, "test_head_0: short list returned from command\n");
1846 char expected[] = "9abcdefghijklmnopqrstuvwxyz";
1847 if (strcmp (r[9], expected) != 0) {
1848 fprintf (stderr, "test_head_0: expected \"%s\" but got \"%s\"\n", expected, r[9]);
1852 if (r[10] != NULL) {
1853 fprintf (stderr, "test_head_0: extra elements returned from command\n");
1857 for (i = 0; r[i] != NULL; ++i)
1864 static int test_wc_c_0_skip (void)
1868 str = getenv ("TEST_ONLY");
1870 return strstr (str, "wc_c") == NULL;
1871 str = getenv ("SKIP_TEST_WC_C_0");
1872 if (str && strcmp (str, "1") == 0) return 1;
1873 str = getenv ("SKIP_TEST_WC_C");
1874 if (str && strcmp (str, "1") == 0) return 1;
1878 static int test_wc_c_0 (void)
1880 if (test_wc_c_0_skip ()) {
1881 printf ("%s skipped (reason: environment variable set)\n", "test_wc_c_0");
1885 /* InitBasicFS for test_wc_c_0: create ext2 on /dev/sda1 */
1887 char device[] = "/dev/sda";
1890 r = guestfs_blockdev_setrw (g, device);
1897 r = guestfs_umount_all (g);
1904 r = guestfs_lvm_remove_all (g);
1909 char device[] = "/dev/sda";
1910 char lines_0[] = ",";
1917 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1922 char fstype[] = "ext2";
1923 char device[] = "/dev/sda1";
1926 r = guestfs_mkfs (g, fstype, device);
1931 char device[] = "/dev/sda1";
1932 char mountpoint[] = "/";
1935 r = guestfs_mount (g, device, mountpoint);
1939 /* TestOutputInt for wc_c (0) */
1941 char options[] = "ro";
1942 char vfstype[] = "squashfs";
1943 char device[] = "/dev/sdd";
1944 char mountpoint[] = "/";
1947 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1952 char path[] = "/100kallspaces";
1955 r = guestfs_wc_c (g, path);
1959 fprintf (stderr, "test_wc_c_0: expected 102400 but got %d\n", (int) r);
1966 static int test_wc_w_0_skip (void)
1970 str = getenv ("TEST_ONLY");
1972 return strstr (str, "wc_w") == NULL;
1973 str = getenv ("SKIP_TEST_WC_W_0");
1974 if (str && strcmp (str, "1") == 0) return 1;
1975 str = getenv ("SKIP_TEST_WC_W");
1976 if (str && strcmp (str, "1") == 0) return 1;
1980 static int test_wc_w_0 (void)
1982 if (test_wc_w_0_skip ()) {
1983 printf ("%s skipped (reason: environment variable set)\n", "test_wc_w_0");
1987 /* InitBasicFS for test_wc_w_0: create ext2 on /dev/sda1 */
1989 char device[] = "/dev/sda";
1992 r = guestfs_blockdev_setrw (g, device);
1999 r = guestfs_umount_all (g);
2006 r = guestfs_lvm_remove_all (g);
2011 char device[] = "/dev/sda";
2012 char lines_0[] = ",";
2019 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2024 char fstype[] = "ext2";
2025 char device[] = "/dev/sda1";
2028 r = guestfs_mkfs (g, fstype, device);
2033 char device[] = "/dev/sda1";
2034 char mountpoint[] = "/";
2037 r = guestfs_mount (g, device, mountpoint);
2041 /* TestOutputInt for wc_w (0) */
2043 char options[] = "ro";
2044 char vfstype[] = "squashfs";
2045 char device[] = "/dev/sdd";
2046 char mountpoint[] = "/";
2049 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
2054 char path[] = "/10klines";
2057 r = guestfs_wc_w (g, path);
2061 fprintf (stderr, "test_wc_w_0: expected 10000 but got %d\n", (int) r);
2068 static int test_wc_l_0_skip (void)
2072 str = getenv ("TEST_ONLY");
2074 return strstr (str, "wc_l") == NULL;
2075 str = getenv ("SKIP_TEST_WC_L_0");
2076 if (str && strcmp (str, "1") == 0) return 1;
2077 str = getenv ("SKIP_TEST_WC_L");
2078 if (str && strcmp (str, "1") == 0) return 1;
2082 static int test_wc_l_0 (void)
2084 if (test_wc_l_0_skip ()) {
2085 printf ("%s skipped (reason: environment variable set)\n", "test_wc_l_0");
2089 /* InitBasicFS for test_wc_l_0: create ext2 on /dev/sda1 */
2091 char device[] = "/dev/sda";
2094 r = guestfs_blockdev_setrw (g, device);
2101 r = guestfs_umount_all (g);
2108 r = guestfs_lvm_remove_all (g);
2113 char device[] = "/dev/sda";
2114 char lines_0[] = ",";
2121 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2126 char fstype[] = "ext2";
2127 char device[] = "/dev/sda1";
2130 r = guestfs_mkfs (g, fstype, device);
2135 char device[] = "/dev/sda1";
2136 char mountpoint[] = "/";
2139 r = guestfs_mount (g, device, mountpoint);
2143 /* TestOutputInt for wc_l (0) */
2145 char options[] = "ro";
2146 char vfstype[] = "squashfs";
2147 char device[] = "/dev/sdd";
2148 char mountpoint[] = "/";
2151 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
2156 char path[] = "/10klines";
2159 r = guestfs_wc_l (g, path);
2163 fprintf (stderr, "test_wc_l_0: expected 10000 but got %d\n", (int) r);
2170 static int test_mkdtemp_0_skip (void)
2174 str = getenv ("TEST_ONLY");
2176 return strstr (str, "mkdtemp") == NULL;
2177 str = getenv ("SKIP_TEST_MKDTEMP_0");
2178 if (str && strcmp (str, "1") == 0) return 1;
2179 str = getenv ("SKIP_TEST_MKDTEMP");
2180 if (str && strcmp (str, "1") == 0) return 1;
2184 static int test_mkdtemp_0 (void)
2186 if (test_mkdtemp_0_skip ()) {
2187 printf ("%s skipped (reason: environment variable set)\n", "test_mkdtemp_0");
2191 /* InitBasicFS for test_mkdtemp_0: create ext2 on /dev/sda1 */
2193 char device[] = "/dev/sda";
2196 r = guestfs_blockdev_setrw (g, device);
2203 r = guestfs_umount_all (g);
2210 r = guestfs_lvm_remove_all (g);
2215 char device[] = "/dev/sda";
2216 char lines_0[] = ",";
2223 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2228 char fstype[] = "ext2";
2229 char device[] = "/dev/sda1";
2232 r = guestfs_mkfs (g, fstype, device);
2237 char device[] = "/dev/sda1";
2238 char mountpoint[] = "/";
2241 r = guestfs_mount (g, device, mountpoint);
2245 /* TestRun for mkdtemp (0) */
2247 char path[] = "/tmp";
2250 r = guestfs_mkdir (g, path);
2255 char template[] = "/tmp/tmpXXXXXX";
2258 r = guestfs_mkdtemp (g, template);
2266 static int test_scrub_file_0_skip (void)
2270 str = getenv ("TEST_ONLY");
2272 return strstr (str, "scrub_file") == NULL;
2273 str = getenv ("SKIP_TEST_SCRUB_FILE_0");
2274 if (str && strcmp (str, "1") == 0) return 1;
2275 str = getenv ("SKIP_TEST_SCRUB_FILE");
2276 if (str && strcmp (str, "1") == 0) return 1;
2280 static int test_scrub_file_0 (void)
2282 if (test_scrub_file_0_skip ()) {
2283 printf ("%s skipped (reason: environment variable set)\n", "test_scrub_file_0");
2287 /* InitBasicFS for test_scrub_file_0: create ext2 on /dev/sda1 */
2289 char device[] = "/dev/sda";
2292 r = guestfs_blockdev_setrw (g, device);
2299 r = guestfs_umount_all (g);
2306 r = guestfs_lvm_remove_all (g);
2311 char device[] = "/dev/sda";
2312 char lines_0[] = ",";
2319 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2324 char fstype[] = "ext2";
2325 char device[] = "/dev/sda1";
2328 r = guestfs_mkfs (g, fstype, device);
2333 char device[] = "/dev/sda1";
2334 char mountpoint[] = "/";
2337 r = guestfs_mount (g, device, mountpoint);
2341 /* TestRun for scrub_file (0) */
2343 char path[] = "/file";
2344 char content[] = "content";
2347 r = guestfs_write_file (g, path, content, 0);
2352 char file[] = "/file";
2355 r = guestfs_scrub_file (g, file);
2362 static int test_scrub_device_0_skip (void)
2366 str = getenv ("TEST_ONLY");
2368 return strstr (str, "scrub_device") == NULL;
2369 str = getenv ("SKIP_TEST_SCRUB_DEVICE_0");
2370 if (str && strcmp (str, "1") == 0) return 1;
2371 str = getenv ("SKIP_TEST_SCRUB_DEVICE");
2372 if (str && strcmp (str, "1") == 0) return 1;
2376 static int test_scrub_device_0 (void)
2378 if (test_scrub_device_0_skip ()) {
2379 printf ("%s skipped (reason: environment variable set)\n", "test_scrub_device_0");
2383 /* InitNone|InitEmpty for test_scrub_device_0 */
2385 char device[] = "/dev/sda";
2388 r = guestfs_blockdev_setrw (g, device);
2395 r = guestfs_umount_all (g);
2402 r = guestfs_lvm_remove_all (g);
2406 /* TestRun for scrub_device (0) */
2408 char device[] = "/dev/sdc";
2411 r = guestfs_scrub_device (g, device);
2418 static int test_glob_expand_0_skip (void)
2422 str = getenv ("TEST_ONLY");
2424 return strstr (str, "glob_expand") == NULL;
2425 str = getenv ("SKIP_TEST_GLOB_EXPAND_0");
2426 if (str && strcmp (str, "1") == 0) return 1;
2427 str = getenv ("SKIP_TEST_GLOB_EXPAND");
2428 if (str && strcmp (str, "1") == 0) return 1;
2432 static int test_glob_expand_0 (void)
2434 if (test_glob_expand_0_skip ()) {
2435 printf ("%s skipped (reason: environment variable set)\n", "test_glob_expand_0");
2439 /* InitBasicFS for test_glob_expand_0: create ext2 on /dev/sda1 */
2441 char device[] = "/dev/sda";
2444 r = guestfs_blockdev_setrw (g, device);
2451 r = guestfs_umount_all (g);
2458 r = guestfs_lvm_remove_all (g);
2463 char device[] = "/dev/sda";
2464 char lines_0[] = ",";
2471 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2476 char fstype[] = "ext2";
2477 char device[] = "/dev/sda1";
2480 r = guestfs_mkfs (g, fstype, device);
2485 char device[] = "/dev/sda1";
2486 char mountpoint[] = "/";
2489 r = guestfs_mount (g, device, mountpoint);
2493 /* TestOutputList for glob_expand (0) */
2495 char path[] = "/a/b/c";
2498 r = guestfs_mkdir_p (g, path);
2503 char path[] = "/a/b/c/d";
2506 r = guestfs_touch (g, path);
2511 char path[] = "/a/b/c/e";
2514 r = guestfs_touch (g, path);
2519 char pattern[] = "/a/b/c/*";
2523 r = guestfs_glob_expand (g, pattern);
2527 fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
2532 char expected[] = "/a/b/c/d";
2533 if (strcmp (r[0], expected) != 0) {
2534 fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
2539 fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
2544 char expected[] = "/a/b/c/e";
2545 if (strcmp (r[1], expected) != 0) {
2546 fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
2551 fprintf (stderr, "test_glob_expand_0: extra elements returned from command\n");
2555 for (i = 0; r[i] != NULL; ++i)
2562 static int test_glob_expand_1_skip (void)
2566 str = getenv ("TEST_ONLY");
2568 return strstr (str, "glob_expand") == NULL;
2569 str = getenv ("SKIP_TEST_GLOB_EXPAND_1");
2570 if (str && strcmp (str, "1") == 0) return 1;
2571 str = getenv ("SKIP_TEST_GLOB_EXPAND");
2572 if (str && strcmp (str, "1") == 0) return 1;
2576 static int test_glob_expand_1 (void)
2578 if (test_glob_expand_1_skip ()) {
2579 printf ("%s skipped (reason: environment variable set)\n", "test_glob_expand_1");
2583 /* InitBasicFS for test_glob_expand_1: create ext2 on /dev/sda1 */
2585 char device[] = "/dev/sda";
2588 r = guestfs_blockdev_setrw (g, device);
2595 r = guestfs_umount_all (g);
2602 r = guestfs_lvm_remove_all (g);
2607 char device[] = "/dev/sda";
2608 char lines_0[] = ",";
2615 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2620 char fstype[] = "ext2";
2621 char device[] = "/dev/sda1";
2624 r = guestfs_mkfs (g, fstype, device);
2629 char device[] = "/dev/sda1";
2630 char mountpoint[] = "/";
2633 r = guestfs_mount (g, device, mountpoint);
2637 /* TestOutputList for glob_expand (1) */
2639 char path[] = "/a/b/c";
2642 r = guestfs_mkdir_p (g, path);
2647 char path[] = "/a/b/c/d";
2650 r = guestfs_touch (g, path);
2655 char path[] = "/a/b/c/e";
2658 r = guestfs_touch (g, path);
2663 char pattern[] = "/a/*/c/*";
2667 r = guestfs_glob_expand (g, pattern);
2671 fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
2676 char expected[] = "/a/b/c/d";
2677 if (strcmp (r[0], expected) != 0) {
2678 fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
2683 fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
2688 char expected[] = "/a/b/c/e";
2689 if (strcmp (r[1], expected) != 0) {
2690 fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
2695 fprintf (stderr, "test_glob_expand_1: extra elements returned from command\n");
2699 for (i = 0; r[i] != NULL; ++i)
2706 static int test_glob_expand_2_skip (void)
2710 str = getenv ("TEST_ONLY");
2712 return strstr (str, "glob_expand") == NULL;
2713 str = getenv ("SKIP_TEST_GLOB_EXPAND_2");
2714 if (str && strcmp (str, "1") == 0) return 1;
2715 str = getenv ("SKIP_TEST_GLOB_EXPAND");
2716 if (str && strcmp (str, "1") == 0) return 1;
2720 static int test_glob_expand_2 (void)
2722 if (test_glob_expand_2_skip ()) {
2723 printf ("%s skipped (reason: environment variable set)\n", "test_glob_expand_2");
2727 /* InitBasicFS for test_glob_expand_2: create ext2 on /dev/sda1 */
2729 char device[] = "/dev/sda";
2732 r = guestfs_blockdev_setrw (g, device);
2739 r = guestfs_umount_all (g);
2746 r = guestfs_lvm_remove_all (g);
2751 char device[] = "/dev/sda";
2752 char lines_0[] = ",";
2759 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2764 char fstype[] = "ext2";
2765 char device[] = "/dev/sda1";
2768 r = guestfs_mkfs (g, fstype, device);
2773 char device[] = "/dev/sda1";
2774 char mountpoint[] = "/";
2777 r = guestfs_mount (g, device, mountpoint);
2781 /* TestOutputList for glob_expand (2) */
2783 char path[] = "/a/b/c";
2786 r = guestfs_mkdir_p (g, path);
2791 char path[] = "/a/b/c/d";
2794 r = guestfs_touch (g, path);
2799 char path[] = "/a/b/c/e";
2802 r = guestfs_touch (g, path);
2807 char pattern[] = "/a/*/x/*";
2811 r = guestfs_glob_expand (g, pattern);
2815 fprintf (stderr, "test_glob_expand_2: extra elements returned from command\n");
2819 for (i = 0; r[i] != NULL; ++i)
2826 static int test_ntfs_3g_probe_0_skip (void)
2830 str = getenv ("TEST_ONLY");
2832 return strstr (str, "ntfs_3g_probe") == NULL;
2833 str = getenv ("SKIP_TEST_NTFS_3G_PROBE_0");
2834 if (str && strcmp (str, "1") == 0) return 1;
2835 str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
2836 if (str && strcmp (str, "1") == 0) return 1;
2840 static int test_ntfs_3g_probe_0 (void)
2842 if (test_ntfs_3g_probe_0_skip ()) {
2843 printf ("%s skipped (reason: environment variable set)\n", "test_ntfs_3g_probe_0");
2847 /* InitNone|InitEmpty for test_ntfs_3g_probe_0 */
2849 char device[] = "/dev/sda";
2852 r = guestfs_blockdev_setrw (g, device);
2859 r = guestfs_umount_all (g);
2866 r = guestfs_lvm_remove_all (g);
2870 /* TestOutputInt for ntfs_3g_probe (0) */
2872 char device[] = "/dev/sda";
2873 char lines_0[] = ",";
2880 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2885 char fstype[] = "ntfs";
2886 char device[] = "/dev/sda1";
2889 r = guestfs_mkfs (g, fstype, device);
2894 char device[] = "/dev/sda1";
2897 r = guestfs_ntfs_3g_probe (g, 1, device);
2901 fprintf (stderr, "test_ntfs_3g_probe_0: expected 0 but got %d\n", (int) r);
2908 static int test_ntfs_3g_probe_1_skip (void)
2912 str = getenv ("TEST_ONLY");
2914 return strstr (str, "ntfs_3g_probe") == NULL;
2915 str = getenv ("SKIP_TEST_NTFS_3G_PROBE_1");
2916 if (str && strcmp (str, "1") == 0) return 1;
2917 str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
2918 if (str && strcmp (str, "1") == 0) return 1;
2922 static int test_ntfs_3g_probe_1 (void)
2924 if (test_ntfs_3g_probe_1_skip ()) {
2925 printf ("%s skipped (reason: environment variable set)\n", "test_ntfs_3g_probe_1");
2929 /* InitNone|InitEmpty for test_ntfs_3g_probe_1 */
2931 char device[] = "/dev/sda";
2934 r = guestfs_blockdev_setrw (g, device);
2941 r = guestfs_umount_all (g);
2948 r = guestfs_lvm_remove_all (g);
2952 /* TestOutputInt for ntfs_3g_probe (1) */
2954 char device[] = "/dev/sda";
2955 char lines_0[] = ",";
2962 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2967 char fstype[] = "ext2";
2968 char device[] = "/dev/sda1";
2971 r = guestfs_mkfs (g, fstype, device);
2976 char device[] = "/dev/sda1";
2979 r = guestfs_ntfs_3g_probe (g, 1, device);
2983 fprintf (stderr, "test_ntfs_3g_probe_1: expected 12 but got %d\n", (int) r);
2990 static int test_sleep_0_skip (void)
2994 str = getenv ("TEST_ONLY");
2996 return strstr (str, "sleep") == NULL;
2997 str = getenv ("SKIP_TEST_SLEEP_0");
2998 if (str && strcmp (str, "1") == 0) return 1;
2999 str = getenv ("SKIP_TEST_SLEEP");
3000 if (str && strcmp (str, "1") == 0) return 1;
3004 static int test_sleep_0 (void)
3006 if (test_sleep_0_skip ()) {
3007 printf ("%s skipped (reason: environment variable set)\n", "test_sleep_0");
3011 /* InitNone|InitEmpty for test_sleep_0 */
3013 char device[] = "/dev/sda";
3016 r = guestfs_blockdev_setrw (g, device);
3023 r = guestfs_umount_all (g);
3030 r = guestfs_lvm_remove_all (g);
3034 /* TestRun for sleep (0) */
3038 r = guestfs_sleep (g, 1);
3045 static int test_find_0_skip (void)
3049 str = getenv ("TEST_ONLY");
3051 return strstr (str, "find") == NULL;
3052 str = getenv ("SKIP_TEST_FIND_0");
3053 if (str && strcmp (str, "1") == 0) return 1;
3054 str = getenv ("SKIP_TEST_FIND");
3055 if (str && strcmp (str, "1") == 0) return 1;
3059 static int test_find_0 (void)
3061 if (test_find_0_skip ()) {
3062 printf ("%s skipped (reason: environment variable set)\n", "test_find_0");
3066 /* InitBasicFS for test_find_0: create ext2 on /dev/sda1 */
3068 char device[] = "/dev/sda";
3071 r = guestfs_blockdev_setrw (g, device);
3078 r = guestfs_umount_all (g);
3085 r = guestfs_lvm_remove_all (g);
3090 char device[] = "/dev/sda";
3091 char lines_0[] = ",";
3098 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3103 char fstype[] = "ext2";
3104 char device[] = "/dev/sda1";
3107 r = guestfs_mkfs (g, fstype, device);
3112 char device[] = "/dev/sda1";
3113 char mountpoint[] = "/";
3116 r = guestfs_mount (g, device, mountpoint);
3120 /* TestOutputList for find (0) */
3122 char directory[] = "/";
3126 r = guestfs_find (g, directory);
3130 fprintf (stderr, "test_find_0: short list returned from command\n");
3135 char expected[] = "lost+found";
3136 if (strcmp (r[0], expected) != 0) {
3137 fprintf (stderr, "test_find_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3142 fprintf (stderr, "test_find_0: extra elements returned from command\n");
3146 for (i = 0; r[i] != NULL; ++i)
3153 static int test_find_1_skip (void)
3157 str = getenv ("TEST_ONLY");
3159 return strstr (str, "find") == NULL;
3160 str = getenv ("SKIP_TEST_FIND_1");
3161 if (str && strcmp (str, "1") == 0) return 1;
3162 str = getenv ("SKIP_TEST_FIND");
3163 if (str && strcmp (str, "1") == 0) return 1;
3167 static int test_find_1 (void)
3169 if (test_find_1_skip ()) {
3170 printf ("%s skipped (reason: environment variable set)\n", "test_find_1");
3174 /* InitBasicFS for test_find_1: create ext2 on /dev/sda1 */
3176 char device[] = "/dev/sda";
3179 r = guestfs_blockdev_setrw (g, device);
3186 r = guestfs_umount_all (g);
3193 r = guestfs_lvm_remove_all (g);
3198 char device[] = "/dev/sda";
3199 char lines_0[] = ",";
3206 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3211 char fstype[] = "ext2";
3212 char device[] = "/dev/sda1";
3215 r = guestfs_mkfs (g, fstype, device);
3220 char device[] = "/dev/sda1";
3221 char mountpoint[] = "/";
3224 r = guestfs_mount (g, device, mountpoint);
3228 /* TestOutputList for find (1) */
3233 r = guestfs_touch (g, path);
3241 r = guestfs_mkdir (g, path);
3246 char path[] = "/b/c";
3249 r = guestfs_touch (g, path);
3254 char directory[] = "/";
3258 r = guestfs_find (g, directory);
3262 fprintf (stderr, "test_find_1: short list returned from command\n");
3267 char expected[] = "a";
3268 if (strcmp (r[0], expected) != 0) {
3269 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3274 fprintf (stderr, "test_find_1: short list returned from command\n");
3279 char expected[] = "b";
3280 if (strcmp (r[1], expected) != 0) {
3281 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
3286 fprintf (stderr, "test_find_1: short list returned from command\n");
3291 char expected[] = "b/c";
3292 if (strcmp (r[2], expected) != 0) {
3293 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
3298 fprintf (stderr, "test_find_1: short list returned from command\n");
3303 char expected[] = "lost+found";
3304 if (strcmp (r[3], expected) != 0) {
3305 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[3]);
3310 fprintf (stderr, "test_find_1: extra elements returned from command\n");
3314 for (i = 0; r[i] != NULL; ++i)
3321 static int test_find_2_skip (void)
3325 str = getenv ("TEST_ONLY");
3327 return strstr (str, "find") == NULL;
3328 str = getenv ("SKIP_TEST_FIND_2");
3329 if (str && strcmp (str, "1") == 0) return 1;
3330 str = getenv ("SKIP_TEST_FIND");
3331 if (str && strcmp (str, "1") == 0) return 1;
3335 static int test_find_2 (void)
3337 if (test_find_2_skip ()) {
3338 printf ("%s skipped (reason: environment variable set)\n", "test_find_2");
3342 /* InitBasicFS for test_find_2: create ext2 on /dev/sda1 */
3344 char device[] = "/dev/sda";
3347 r = guestfs_blockdev_setrw (g, device);
3354 r = guestfs_umount_all (g);
3361 r = guestfs_lvm_remove_all (g);
3366 char device[] = "/dev/sda";
3367 char lines_0[] = ",";
3374 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3379 char fstype[] = "ext2";
3380 char device[] = "/dev/sda1";
3383 r = guestfs_mkfs (g, fstype, device);
3388 char device[] = "/dev/sda1";
3389 char mountpoint[] = "/";
3392 r = guestfs_mount (g, device, mountpoint);
3396 /* TestOutputList for find (2) */
3398 char path[] = "/a/b/c";
3401 r = guestfs_mkdir_p (g, path);
3406 char path[] = "/a/b/c/d";
3409 r = guestfs_touch (g, path);
3414 char directory[] = "/a/b/";
3418 r = guestfs_find (g, directory);
3422 fprintf (stderr, "test_find_2: short list returned from command\n");
3427 char expected[] = "c";
3428 if (strcmp (r[0], expected) != 0) {
3429 fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[0]);
3434 fprintf (stderr, "test_find_2: short list returned from command\n");
3439 char expected[] = "c/d";
3440 if (strcmp (r[1], expected) != 0) {
3441 fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[1]);
3446 fprintf (stderr, "test_find_2: extra elements returned from command\n");
3450 for (i = 0; r[i] != NULL; ++i)
3457 static int test_lvresize_0_skip (void)
3461 str = getenv ("TEST_ONLY");
3463 return strstr (str, "lvresize") == NULL;
3464 str = getenv ("SKIP_TEST_LVRESIZE_0");
3465 if (str && strcmp (str, "1") == 0) return 1;
3466 str = getenv ("SKIP_TEST_LVRESIZE");
3467 if (str && strcmp (str, "1") == 0) return 1;
3471 static int test_lvresize_0 (void)
3473 if (test_lvresize_0_skip ()) {
3474 printf ("%s skipped (reason: environment variable set)\n", "test_lvresize_0");
3478 /* InitNone|InitEmpty for test_lvresize_0 */
3480 char device[] = "/dev/sda";
3483 r = guestfs_blockdev_setrw (g, device);
3490 r = guestfs_umount_all (g);
3497 r = guestfs_lvm_remove_all (g);
3501 /* TestOutput for lvresize (0) */
3502 char expected[] = "test content";
3504 char device[] = "/dev/sda";
3505 char lines_0[] = ",";
3512 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3517 char device[] = "/dev/sda1";
3520 r = guestfs_pvcreate (g, device);
3525 char volgroup[] = "VG";
3526 char physvols_0[] = "/dev/sda1";
3527 char *physvols[] = {
3533 r = guestfs_vgcreate (g, volgroup, physvols);
3538 char logvol[] = "LV";
3539 char volgroup[] = "VG";
3542 r = guestfs_lvcreate (g, logvol, volgroup, 10);
3547 char fstype[] = "ext2";
3548 char device[] = "/dev/VG/LV";
3551 r = guestfs_mkfs (g, fstype, device);
3556 char device[] = "/dev/VG/LV";
3557 char mountpoint[] = "/";
3560 r = guestfs_mount (g, device, mountpoint);
3565 char path[] = "/new";
3566 char content[] = "test content";
3569 r = guestfs_write_file (g, path, content, 0);
3574 char pathordevice[] = "/";
3577 r = guestfs_umount (g, pathordevice);
3582 char device[] = "/dev/VG/LV";
3585 r = guestfs_lvresize (g, device, 20);
3590 char device[] = "/dev/VG/LV";
3593 r = guestfs_e2fsck_f (g, device);
3598 char device[] = "/dev/VG/LV";
3601 r = guestfs_resize2fs (g, device);
3606 char device[] = "/dev/VG/LV";
3607 char mountpoint[] = "/";
3610 r = guestfs_mount (g, device, mountpoint);
3615 char path[] = "/new";
3618 r = guestfs_cat (g, path);
3621 if (strcmp (r, expected) != 0) {
3622 fprintf (stderr, "test_lvresize_0: expected \"%s\" but got \"%s\"\n", expected, r);
3630 static int test_zerofree_0_skip (void)
3634 str = getenv ("TEST_ONLY");
3636 return strstr (str, "zerofree") == NULL;
3637 str = getenv ("SKIP_TEST_ZEROFREE_0");
3638 if (str && strcmp (str, "1") == 0) return 1;
3639 str = getenv ("SKIP_TEST_ZEROFREE");
3640 if (str && strcmp (str, "1") == 0) return 1;
3644 static int test_zerofree_0 (void)
3646 if (test_zerofree_0_skip ()) {
3647 printf ("%s skipped (reason: environment variable set)\n", "test_zerofree_0");
3651 /* InitNone|InitEmpty for test_zerofree_0 */
3653 char device[] = "/dev/sda";
3656 r = guestfs_blockdev_setrw (g, device);
3663 r = guestfs_umount_all (g);
3670 r = guestfs_lvm_remove_all (g);
3674 /* TestOutput for zerofree (0) */
3675 char expected[] = "test file";
3677 char device[] = "/dev/sda";
3678 char lines_0[] = ",";
3685 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3690 char fstype[] = "ext3";
3691 char device[] = "/dev/sda1";
3694 r = guestfs_mkfs (g, fstype, device);
3699 char device[] = "/dev/sda1";
3700 char mountpoint[] = "/";
3703 r = guestfs_mount (g, device, mountpoint);
3708 char path[] = "/new";
3709 char content[] = "test file";
3712 r = guestfs_write_file (g, path, content, 0);
3717 char pathordevice[] = "/dev/sda1";
3720 r = guestfs_umount (g, pathordevice);
3725 char device[] = "/dev/sda1";
3728 r = guestfs_zerofree (g, device);
3733 char device[] = "/dev/sda1";
3734 char mountpoint[] = "/";
3737 r = guestfs_mount (g, device, mountpoint);
3742 char path[] = "/new";
3745 r = guestfs_cat (g, path);
3748 if (strcmp (r, expected) != 0) {
3749 fprintf (stderr, "test_zerofree_0: expected \"%s\" but got \"%s\"\n", expected, r);
3757 static int test_hexdump_0_skip (void)
3761 str = getenv ("TEST_ONLY");
3763 return strstr (str, "hexdump") == NULL;
3764 str = getenv ("SKIP_TEST_HEXDUMP_0");
3765 if (str && strcmp (str, "1") == 0) return 1;
3766 str = getenv ("SKIP_TEST_HEXDUMP");
3767 if (str && strcmp (str, "1") == 0) return 1;
3771 static int test_hexdump_0 (void)
3773 if (test_hexdump_0_skip ()) {
3774 printf ("%s skipped (reason: environment variable set)\n", "test_hexdump_0");
3778 /* InitBasicFS for test_hexdump_0: create ext2 on /dev/sda1 */
3780 char device[] = "/dev/sda";
3783 r = guestfs_blockdev_setrw (g, device);
3790 r = guestfs_umount_all (g);
3797 r = guestfs_lvm_remove_all (g);
3802 char device[] = "/dev/sda";
3803 char lines_0[] = ",";
3810 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3815 char fstype[] = "ext2";
3816 char device[] = "/dev/sda1";
3819 r = guestfs_mkfs (g, fstype, device);
3824 char device[] = "/dev/sda1";
3825 char mountpoint[] = "/";
3828 r = guestfs_mount (g, device, mountpoint);
3832 /* TestOutput for hexdump (0) */
3833 char expected[] = "00000000 68 65 6c 6c 6f 0a 77 6f 72 6c 64 0a |hello.world.|\n0000000c\n";
3835 char path[] = "/new";
3836 char content[] = "hello\nworld\n";
3839 r = guestfs_write_file (g, path, content, 12);
3844 char path[] = "/new";
3847 r = guestfs_hexdump (g, path);
3850 if (strcmp (r, expected) != 0) {
3851 fprintf (stderr, "test_hexdump_0: expected \"%s\" but got \"%s\"\n", expected, r);
3859 static int test_hexdump_1_skip (void)
3863 str = getenv ("TEST_ONLY");
3865 return strstr (str, "hexdump") == NULL;
3866 str = getenv ("SKIP_TEST_HEXDUMP_1");
3867 if (str && strcmp (str, "1") == 0) return 1;
3868 str = getenv ("SKIP_TEST_HEXDUMP");
3869 if (str && strcmp (str, "1") == 0) return 1;
3873 static int test_hexdump_1 (void)
3875 if (test_hexdump_1_skip ()) {
3876 printf ("%s skipped (reason: environment variable set)\n", "test_hexdump_1");
3880 /* InitBasicFS for test_hexdump_1: create ext2 on /dev/sda1 */
3882 char device[] = "/dev/sda";
3885 r = guestfs_blockdev_setrw (g, device);
3892 r = guestfs_umount_all (g);
3899 r = guestfs_lvm_remove_all (g);
3904 char device[] = "/dev/sda";
3905 char lines_0[] = ",";
3912 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3917 char fstype[] = "ext2";
3918 char device[] = "/dev/sda1";
3921 r = guestfs_mkfs (g, fstype, device);
3926 char device[] = "/dev/sda1";
3927 char mountpoint[] = "/";
3930 r = guestfs_mount (g, device, mountpoint);
3934 /* TestRun for hexdump (1) */
3936 char options[] = "ro";
3937 char vfstype[] = "squashfs";
3938 char device[] = "/dev/sdd";
3939 char mountpoint[] = "/";
3942 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
3947 char path[] = "/100krandom";
3950 r = guestfs_hexdump (g, path);
3958 static int test_strings_e_0_skip (void)
3962 str = getenv ("TEST_ONLY");
3964 return strstr (str, "strings_e") == NULL;
3965 str = getenv ("SKIP_TEST_STRINGS_E_0");
3966 if (str && strcmp (str, "1") == 0) return 1;
3967 str = getenv ("SKIP_TEST_STRINGS_E");
3968 if (str && strcmp (str, "1") == 0) return 1;
3972 static int test_strings_e_0 (void)
3974 if (test_strings_e_0_skip ()) {
3975 printf ("%s skipped (reason: environment variable set)\n", "test_strings_e_0");
3979 /* InitBasicFS for test_strings_e_0: create ext2 on /dev/sda1 */
3981 char device[] = "/dev/sda";
3984 r = guestfs_blockdev_setrw (g, device);
3991 r = guestfs_umount_all (g);
3998 r = guestfs_lvm_remove_all (g);
4003 char device[] = "/dev/sda";
4004 char lines_0[] = ",";
4011 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4016 char fstype[] = "ext2";
4017 char device[] = "/dev/sda1";
4020 r = guestfs_mkfs (g, fstype, device);
4025 char device[] = "/dev/sda1";
4026 char mountpoint[] = "/";
4029 r = guestfs_mount (g, device, mountpoint);
4033 /* TestOutputList for strings_e (0) */
4035 char path[] = "/new";
4036 char content[] = "hello\nworld\n";
4039 r = guestfs_write_file (g, path, content, 0);
4044 char encoding[] = "b";
4045 char path[] = "/new";
4049 r = guestfs_strings_e (g, encoding, path);
4053 fprintf (stderr, "test_strings_e_0: extra elements returned from command\n");
4057 for (i = 0; r[i] != NULL; ++i)
4064 static int test_strings_e_1_skip (void)
4068 str = getenv ("TEST_ONLY");
4070 return strstr (str, "strings_e") == NULL;
4071 str = getenv ("SKIP_TEST_STRINGS_E_1");
4072 if (str && strcmp (str, "1") == 0) return 1;
4073 str = getenv ("SKIP_TEST_STRINGS_E");
4074 if (str && strcmp (str, "1") == 0) return 1;
4078 static int test_strings_e_1 (void)
4080 if (test_strings_e_1_skip ()) {
4081 printf ("%s skipped (reason: environment variable set)\n", "test_strings_e_1");
4085 printf ("%s skipped (reason: test disabled in generator)\n", "test_strings_e_1");
4089 static int test_strings_0_skip (void)
4093 str = getenv ("TEST_ONLY");
4095 return strstr (str, "strings") == NULL;
4096 str = getenv ("SKIP_TEST_STRINGS_0");
4097 if (str && strcmp (str, "1") == 0) return 1;
4098 str = getenv ("SKIP_TEST_STRINGS");
4099 if (str && strcmp (str, "1") == 0) return 1;
4103 static int test_strings_0 (void)
4105 if (test_strings_0_skip ()) {
4106 printf ("%s skipped (reason: environment variable set)\n", "test_strings_0");
4110 /* InitBasicFS for test_strings_0: create ext2 on /dev/sda1 */
4112 char device[] = "/dev/sda";
4115 r = guestfs_blockdev_setrw (g, device);
4122 r = guestfs_umount_all (g);
4129 r = guestfs_lvm_remove_all (g);
4134 char device[] = "/dev/sda";
4135 char lines_0[] = ",";
4142 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4147 char fstype[] = "ext2";
4148 char device[] = "/dev/sda1";
4151 r = guestfs_mkfs (g, fstype, device);
4156 char device[] = "/dev/sda1";
4157 char mountpoint[] = "/";
4160 r = guestfs_mount (g, device, mountpoint);
4164 /* TestOutputList for strings (0) */
4166 char path[] = "/new";
4167 char content[] = "hello\nworld\n";
4170 r = guestfs_write_file (g, path, content, 0);
4175 char path[] = "/new";
4179 r = guestfs_strings (g, path);
4183 fprintf (stderr, "test_strings_0: short list returned from command\n");
4188 char expected[] = "hello";
4189 if (strcmp (r[0], expected) != 0) {
4190 fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
4195 fprintf (stderr, "test_strings_0: short list returned from command\n");
4200 char expected[] = "world";
4201 if (strcmp (r[1], expected) != 0) {
4202 fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
4207 fprintf (stderr, "test_strings_0: extra elements returned from command\n");
4211 for (i = 0; r[i] != NULL; ++i)
4218 static int test_strings_1_skip (void)
4222 str = getenv ("TEST_ONLY");
4224 return strstr (str, "strings") == NULL;
4225 str = getenv ("SKIP_TEST_STRINGS_1");
4226 if (str && strcmp (str, "1") == 0) return 1;
4227 str = getenv ("SKIP_TEST_STRINGS");
4228 if (str && strcmp (str, "1") == 0) return 1;
4232 static int test_strings_1 (void)
4234 if (test_strings_1_skip ()) {
4235 printf ("%s skipped (reason: environment variable set)\n", "test_strings_1");
4239 /* InitBasicFS for test_strings_1: create ext2 on /dev/sda1 */
4241 char device[] = "/dev/sda";
4244 r = guestfs_blockdev_setrw (g, device);
4251 r = guestfs_umount_all (g);
4258 r = guestfs_lvm_remove_all (g);
4263 char device[] = "/dev/sda";
4264 char lines_0[] = ",";
4271 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4276 char fstype[] = "ext2";
4277 char device[] = "/dev/sda1";
4280 r = guestfs_mkfs (g, fstype, device);
4285 char device[] = "/dev/sda1";
4286 char mountpoint[] = "/";
4289 r = guestfs_mount (g, device, mountpoint);
4293 /* TestOutputList for strings (1) */
4295 char path[] = "/new";
4298 r = guestfs_touch (g, path);
4303 char path[] = "/new";
4307 r = guestfs_strings (g, path);
4311 fprintf (stderr, "test_strings_1: extra elements returned from command\n");
4315 for (i = 0; r[i] != NULL; ++i)
4322 static int test_equal_0_skip (void)
4326 str = getenv ("TEST_ONLY");
4328 return strstr (str, "equal") == NULL;
4329 str = getenv ("SKIP_TEST_EQUAL_0");
4330 if (str && strcmp (str, "1") == 0) return 1;
4331 str = getenv ("SKIP_TEST_EQUAL");
4332 if (str && strcmp (str, "1") == 0) return 1;
4336 static int test_equal_0 (void)
4338 if (test_equal_0_skip ()) {
4339 printf ("%s skipped (reason: environment variable set)\n", "test_equal_0");
4343 /* InitBasicFS for test_equal_0: create ext2 on /dev/sda1 */
4345 char device[] = "/dev/sda";
4348 r = guestfs_blockdev_setrw (g, device);
4355 r = guestfs_umount_all (g);
4362 r = guestfs_lvm_remove_all (g);
4367 char device[] = "/dev/sda";
4368 char lines_0[] = ",";
4375 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4380 char fstype[] = "ext2";
4381 char device[] = "/dev/sda1";
4384 r = guestfs_mkfs (g, fstype, device);
4389 char device[] = "/dev/sda1";
4390 char mountpoint[] = "/";
4393 r = guestfs_mount (g, device, mountpoint);
4397 /* TestOutputTrue for equal (0) */
4399 char path[] = "/file1";
4400 char content[] = "contents of a file";
4403 r = guestfs_write_file (g, path, content, 0);
4408 char src[] = "/file1";
4409 char dest[] = "/file2";
4412 r = guestfs_cp (g, src, dest);
4417 char file1[] = "/file1";
4418 char file2[] = "/file2";
4421 r = guestfs_equal (g, file1, file2);
4425 fprintf (stderr, "test_equal_0: expected true, got false\n");
4432 static int test_equal_1_skip (void)
4436 str = getenv ("TEST_ONLY");
4438 return strstr (str, "equal") == NULL;
4439 str = getenv ("SKIP_TEST_EQUAL_1");
4440 if (str && strcmp (str, "1") == 0) return 1;
4441 str = getenv ("SKIP_TEST_EQUAL");
4442 if (str && strcmp (str, "1") == 0) return 1;
4446 static int test_equal_1 (void)
4448 if (test_equal_1_skip ()) {
4449 printf ("%s skipped (reason: environment variable set)\n", "test_equal_1");
4453 /* InitBasicFS for test_equal_1: create ext2 on /dev/sda1 */
4455 char device[] = "/dev/sda";
4458 r = guestfs_blockdev_setrw (g, device);
4465 r = guestfs_umount_all (g);
4472 r = guestfs_lvm_remove_all (g);
4477 char device[] = "/dev/sda";
4478 char lines_0[] = ",";
4485 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4490 char fstype[] = "ext2";
4491 char device[] = "/dev/sda1";
4494 r = guestfs_mkfs (g, fstype, device);
4499 char device[] = "/dev/sda1";
4500 char mountpoint[] = "/";
4503 r = guestfs_mount (g, device, mountpoint);
4507 /* TestOutputFalse for equal (1) */
4509 char path[] = "/file1";
4510 char content[] = "contents of a file";
4513 r = guestfs_write_file (g, path, content, 0);
4518 char path[] = "/file2";
4519 char content[] = "contents of another file";
4522 r = guestfs_write_file (g, path, content, 0);
4527 char file1[] = "/file1";
4528 char file2[] = "/file2";
4531 r = guestfs_equal (g, file1, file2);
4535 fprintf (stderr, "test_equal_1: expected false, got true\n");
4542 static int test_equal_2_skip (void)
4546 str = getenv ("TEST_ONLY");
4548 return strstr (str, "equal") == NULL;
4549 str = getenv ("SKIP_TEST_EQUAL_2");
4550 if (str && strcmp (str, "1") == 0) return 1;
4551 str = getenv ("SKIP_TEST_EQUAL");
4552 if (str && strcmp (str, "1") == 0) return 1;
4556 static int test_equal_2 (void)
4558 if (test_equal_2_skip ()) {
4559 printf ("%s skipped (reason: environment variable set)\n", "test_equal_2");
4563 /* InitBasicFS for test_equal_2: create ext2 on /dev/sda1 */
4565 char device[] = "/dev/sda";
4568 r = guestfs_blockdev_setrw (g, device);
4575 r = guestfs_umount_all (g);
4582 r = guestfs_lvm_remove_all (g);
4587 char device[] = "/dev/sda";
4588 char lines_0[] = ",";
4595 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4600 char fstype[] = "ext2";
4601 char device[] = "/dev/sda1";
4604 r = guestfs_mkfs (g, fstype, device);
4609 char device[] = "/dev/sda1";
4610 char mountpoint[] = "/";
4613 r = guestfs_mount (g, device, mountpoint);
4617 /* TestLastFail for equal (2) */
4619 char file1[] = "/file1";
4620 char file2[] = "/file2";
4623 r = guestfs_equal (g, file1, file2);
4630 static int test_ping_daemon_0_skip (void)
4634 str = getenv ("TEST_ONLY");
4636 return strstr (str, "ping_daemon") == NULL;
4637 str = getenv ("SKIP_TEST_PING_DAEMON_0");
4638 if (str && strcmp (str, "1") == 0) return 1;
4639 str = getenv ("SKIP_TEST_PING_DAEMON");
4640 if (str && strcmp (str, "1") == 0) return 1;
4644 static int test_ping_daemon_0 (void)
4646 if (test_ping_daemon_0_skip ()) {
4647 printf ("%s skipped (reason: environment variable set)\n", "test_ping_daemon_0");
4651 /* InitNone|InitEmpty for test_ping_daemon_0 */
4653 char device[] = "/dev/sda";
4656 r = guestfs_blockdev_setrw (g, device);
4663 r = guestfs_umount_all (g);
4670 r = guestfs_lvm_remove_all (g);
4674 /* TestRun for ping_daemon (0) */
4678 r = guestfs_ping_daemon (g);
4685 static int test_dmesg_0_skip (void)
4689 str = getenv ("TEST_ONLY");
4691 return strstr (str, "dmesg") == NULL;
4692 str = getenv ("SKIP_TEST_DMESG_0");
4693 if (str && strcmp (str, "1") == 0) return 1;
4694 str = getenv ("SKIP_TEST_DMESG");
4695 if (str && strcmp (str, "1") == 0) return 1;
4699 static int test_dmesg_0 (void)
4701 if (test_dmesg_0_skip ()) {
4702 printf ("%s skipped (reason: environment variable set)\n", "test_dmesg_0");
4706 /* InitNone|InitEmpty for test_dmesg_0 */
4708 char device[] = "/dev/sda";
4711 r = guestfs_blockdev_setrw (g, device);
4718 r = guestfs_umount_all (g);
4725 r = guestfs_lvm_remove_all (g);
4729 /* TestRun for dmesg (0) */
4733 r = guestfs_dmesg (g);
4741 static int test_drop_caches_0_skip (void)
4745 str = getenv ("TEST_ONLY");
4747 return strstr (str, "drop_caches") == NULL;
4748 str = getenv ("SKIP_TEST_DROP_CACHES_0");
4749 if (str && strcmp (str, "1") == 0) return 1;
4750 str = getenv ("SKIP_TEST_DROP_CACHES");
4751 if (str && strcmp (str, "1") == 0) return 1;
4755 static int test_drop_caches_0 (void)
4757 if (test_drop_caches_0_skip ()) {
4758 printf ("%s skipped (reason: environment variable set)\n", "test_drop_caches_0");
4762 /* InitNone|InitEmpty for test_drop_caches_0 */
4764 char device[] = "/dev/sda";
4767 r = guestfs_blockdev_setrw (g, device);
4774 r = guestfs_umount_all (g);
4781 r = guestfs_lvm_remove_all (g);
4785 /* TestRun for drop_caches (0) */
4789 r = guestfs_drop_caches (g, 3);
4796 static int test_mv_0_skip (void)
4800 str = getenv ("TEST_ONLY");
4802 return strstr (str, "mv") == NULL;
4803 str = getenv ("SKIP_TEST_MV_0");
4804 if (str && strcmp (str, "1") == 0) return 1;
4805 str = getenv ("SKIP_TEST_MV");
4806 if (str && strcmp (str, "1") == 0) return 1;
4810 static int test_mv_0 (void)
4812 if (test_mv_0_skip ()) {
4813 printf ("%s skipped (reason: environment variable set)\n", "test_mv_0");
4817 /* InitBasicFS for test_mv_0: create ext2 on /dev/sda1 */
4819 char device[] = "/dev/sda";
4822 r = guestfs_blockdev_setrw (g, device);