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_ll\" has no tests\n");
113 fprintf (stderr, "warning: \"guestfs_pvs_full\" has no tests\n");
114 fprintf (stderr, "warning: \"guestfs_vgs_full\" has no tests\n");
115 fprintf (stderr, "warning: \"guestfs_lvs_full\" has no tests\n");
116 fprintf (stderr, "warning: \"guestfs_aug_init\" has no tests\n");
117 fprintf (stderr, "warning: \"guestfs_aug_close\" has no tests\n");
118 fprintf (stderr, "warning: \"guestfs_aug_defvar\" has no tests\n");
119 fprintf (stderr, "warning: \"guestfs_aug_defnode\" has no tests\n");
120 fprintf (stderr, "warning: \"guestfs_aug_get\" has no tests\n");
121 fprintf (stderr, "warning: \"guestfs_aug_set\" has no tests\n");
122 fprintf (stderr, "warning: \"guestfs_aug_insert\" has no tests\n");
123 fprintf (stderr, "warning: \"guestfs_aug_rm\" has no tests\n");
124 fprintf (stderr, "warning: \"guestfs_aug_mv\" has no tests\n");
125 fprintf (stderr, "warning: \"guestfs_aug_match\" has no tests\n");
126 fprintf (stderr, "warning: \"guestfs_aug_save\" has no tests\n");
127 fprintf (stderr, "warning: \"guestfs_aug_load\" has no tests\n");
128 fprintf (stderr, "warning: \"guestfs_aug_ls\" has no tests\n");
129 fprintf (stderr, "warning: \"guestfs_chmod\" has no tests\n");
130 fprintf (stderr, "warning: \"guestfs_chown\" has no tests\n");
131 fprintf (stderr, "warning: \"guestfs_sfdisk\" has no tests\n");
132 fprintf (stderr, "warning: \"guestfs_lvm_remove_all\" has no tests\n");
133 fprintf (stderr, "warning: \"guestfs_tune2fs_l\" has no tests\n");
134 fprintf (stderr, "warning: \"guestfs_blockdev_setbsz\" has no tests\n");
135 fprintf (stderr, "warning: \"guestfs_tar_out\" has no tests\n");
136 fprintf (stderr, "warning: \"guestfs_tgz_out\" has no tests\n");
137 fprintf (stderr, "warning: \"guestfs_mount_options\" has no tests\n");
138 fprintf (stderr, "warning: \"guestfs_mount_vfs\" has no tests\n");
139 fprintf (stderr, "warning: \"guestfs_debug\" has no tests\n");
140 fprintf (stderr, "warning: \"guestfs_get_e2label\" has no tests\n");
141 fprintf (stderr, "warning: \"guestfs_get_e2uuid\" has no tests\n");
142 fprintf (stderr, "warning: \"guestfs_pvresize\" has no tests\n");
143 fprintf (stderr, "warning: \"guestfs_sfdisk_N\" has no tests\n");
144 fprintf (stderr, "warning: \"guestfs_sfdisk_l\" has no tests\n");
145 fprintf (stderr, "warning: \"guestfs_sfdisk_kernel_geometry\" has no tests\n");
146 fprintf (stderr, "warning: \"guestfs_sfdisk_disk_geometry\" has no tests\n");
147 fprintf (stderr, "warning: \"guestfs_vg_activate_all\" has no tests\n");
148 fprintf (stderr, "warning: \"guestfs_vg_activate\" has no tests\n");
149 fprintf (stderr, "warning: \"guestfs_resize2fs\" has no tests\n");
150 fprintf (stderr, "warning: \"guestfs_e2fsck_f\" has no tests\n");
151 fprintf (stderr, "warning: \"guestfs_sh\" has no tests\n");
152 fprintf (stderr, "warning: \"guestfs_sh_lines\" has no tests\n");
153 fprintf (stderr, "warning: \"guestfs_scrub_freespace\" has no tests\n");
156 static int test_mkdtemp_0_skip (void)
160 str = getenv ("TEST_ONLY");
162 return strstr (str, "mkdtemp") == NULL;
163 str = getenv ("SKIP_TEST_MKDTEMP_0");
164 if (str && strcmp (str, "1") == 0) return 1;
165 str = getenv ("SKIP_TEST_MKDTEMP");
166 if (str && strcmp (str, "1") == 0) return 1;
170 static int test_mkdtemp_0 (void)
172 if (test_mkdtemp_0_skip ()) {
173 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_mkdtemp_0");
177 /* InitBasicFS for test_mkdtemp_0: create ext2 on /dev/sda1 */
179 char device[] = "/dev/sda";
182 r = guestfs_blockdev_setrw (g, device);
189 r = guestfs_umount_all (g);
196 r = guestfs_lvm_remove_all (g);
201 char device[] = "/dev/sda";
202 char lines_0[] = ",";
209 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
214 char fstype[] = "ext2";
215 char device[] = "/dev/sda1";
218 r = guestfs_mkfs (g, fstype, device);
223 char device[] = "/dev/sda1";
224 char mountpoint[] = "/";
227 r = guestfs_mount (g, device, mountpoint);
231 /* TestRun for mkdtemp (0) */
233 char path[] = "/tmp";
236 r = guestfs_mkdir (g, path);
241 char template[] = "/tmp/tmpXXXXXX";
244 r = guestfs_mkdtemp (g, template);
252 static int test_scrub_file_0_skip (void)
256 str = getenv ("TEST_ONLY");
258 return strstr (str, "scrub_file") == NULL;
259 str = getenv ("SKIP_TEST_SCRUB_FILE_0");
260 if (str && strcmp (str, "1") == 0) return 1;
261 str = getenv ("SKIP_TEST_SCRUB_FILE");
262 if (str && strcmp (str, "1") == 0) return 1;
266 static int test_scrub_file_0 (void)
268 if (test_scrub_file_0_skip ()) {
269 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_scrub_file_0");
273 /* InitBasicFS for test_scrub_file_0: create ext2 on /dev/sda1 */
275 char device[] = "/dev/sda";
278 r = guestfs_blockdev_setrw (g, device);
285 r = guestfs_umount_all (g);
292 r = guestfs_lvm_remove_all (g);
297 char device[] = "/dev/sda";
298 char lines_0[] = ",";
305 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
310 char fstype[] = "ext2";
311 char device[] = "/dev/sda1";
314 r = guestfs_mkfs (g, fstype, device);
319 char device[] = "/dev/sda1";
320 char mountpoint[] = "/";
323 r = guestfs_mount (g, device, mountpoint);
327 /* TestRun for scrub_file (0) */
329 char path[] = "/file";
330 char content[] = "content";
333 r = guestfs_write_file (g, path, content, 0);
338 char file[] = "/file";
341 r = guestfs_scrub_file (g, file);
348 static int test_scrub_device_0_skip (void)
352 str = getenv ("TEST_ONLY");
354 return strstr (str, "scrub_device") == NULL;
355 str = getenv ("SKIP_TEST_SCRUB_DEVICE_0");
356 if (str && strcmp (str, "1") == 0) return 1;
357 str = getenv ("SKIP_TEST_SCRUB_DEVICE");
358 if (str && strcmp (str, "1") == 0) return 1;
362 static int test_scrub_device_0 (void)
364 if (test_scrub_device_0_skip ()) {
365 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_scrub_device_0");
369 /* InitNone|InitEmpty for test_scrub_device_0 */
371 char device[] = "/dev/sda";
374 r = guestfs_blockdev_setrw (g, device);
381 r = guestfs_umount_all (g);
388 r = guestfs_lvm_remove_all (g);
392 /* TestRun for scrub_device (0) */
394 char device[] = "/dev/sdc";
397 r = guestfs_scrub_device (g, device);
404 static int test_glob_expand_0_skip (void)
408 str = getenv ("TEST_ONLY");
410 return strstr (str, "glob_expand") == NULL;
411 str = getenv ("SKIP_TEST_GLOB_EXPAND_0");
412 if (str && strcmp (str, "1") == 0) return 1;
413 str = getenv ("SKIP_TEST_GLOB_EXPAND");
414 if (str && strcmp (str, "1") == 0) return 1;
418 static int test_glob_expand_0 (void)
420 if (test_glob_expand_0_skip ()) {
421 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_glob_expand_0");
425 /* InitBasicFS for test_glob_expand_0: create ext2 on /dev/sda1 */
427 char device[] = "/dev/sda";
430 r = guestfs_blockdev_setrw (g, device);
437 r = guestfs_umount_all (g);
444 r = guestfs_lvm_remove_all (g);
449 char device[] = "/dev/sda";
450 char lines_0[] = ",";
457 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
462 char fstype[] = "ext2";
463 char device[] = "/dev/sda1";
466 r = guestfs_mkfs (g, fstype, device);
471 char device[] = "/dev/sda1";
472 char mountpoint[] = "/";
475 r = guestfs_mount (g, device, mountpoint);
479 /* TestOutputList for glob_expand (0) */
481 char path[] = "/a/b/c";
484 r = guestfs_mkdir_p (g, path);
489 char path[] = "/a/b/c/d";
492 r = guestfs_touch (g, path);
497 char path[] = "/a/b/c/e";
500 r = guestfs_touch (g, path);
505 char pattern[] = "/a/b/c/*";
509 r = guestfs_glob_expand (g, pattern);
513 fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
518 char expected[] = "/a/b/c/d";
519 if (strcmp (r[0], expected) != 0) {
520 fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
525 fprintf (stderr, "test_glob_expand_0: short list returned from command\n");
530 char expected[] = "/a/b/c/e";
531 if (strcmp (r[1], expected) != 0) {
532 fprintf (stderr, "test_glob_expand_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
537 fprintf (stderr, "test_glob_expand_0: extra elements returned from command\n");
541 for (i = 0; r[i] != NULL; ++i)
548 static int test_glob_expand_1_skip (void)
552 str = getenv ("TEST_ONLY");
554 return strstr (str, "glob_expand") == NULL;
555 str = getenv ("SKIP_TEST_GLOB_EXPAND_1");
556 if (str && strcmp (str, "1") == 0) return 1;
557 str = getenv ("SKIP_TEST_GLOB_EXPAND");
558 if (str && strcmp (str, "1") == 0) return 1;
562 static int test_glob_expand_1 (void)
564 if (test_glob_expand_1_skip ()) {
565 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_glob_expand_1");
569 /* InitBasicFS for test_glob_expand_1: create ext2 on /dev/sda1 */
571 char device[] = "/dev/sda";
574 r = guestfs_blockdev_setrw (g, device);
581 r = guestfs_umount_all (g);
588 r = guestfs_lvm_remove_all (g);
593 char device[] = "/dev/sda";
594 char lines_0[] = ",";
601 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
606 char fstype[] = "ext2";
607 char device[] = "/dev/sda1";
610 r = guestfs_mkfs (g, fstype, device);
615 char device[] = "/dev/sda1";
616 char mountpoint[] = "/";
619 r = guestfs_mount (g, device, mountpoint);
623 /* TestOutputList for glob_expand (1) */
625 char path[] = "/a/b/c";
628 r = guestfs_mkdir_p (g, path);
633 char path[] = "/a/b/c/d";
636 r = guestfs_touch (g, path);
641 char path[] = "/a/b/c/e";
644 r = guestfs_touch (g, path);
649 char pattern[] = "/a/*/c/*";
653 r = guestfs_glob_expand (g, pattern);
657 fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
662 char expected[] = "/a/b/c/d";
663 if (strcmp (r[0], expected) != 0) {
664 fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
669 fprintf (stderr, "test_glob_expand_1: short list returned from command\n");
674 char expected[] = "/a/b/c/e";
675 if (strcmp (r[1], expected) != 0) {
676 fprintf (stderr, "test_glob_expand_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
681 fprintf (stderr, "test_glob_expand_1: extra elements returned from command\n");
685 for (i = 0; r[i] != NULL; ++i)
692 static int test_glob_expand_2_skip (void)
696 str = getenv ("TEST_ONLY");
698 return strstr (str, "glob_expand") == NULL;
699 str = getenv ("SKIP_TEST_GLOB_EXPAND_2");
700 if (str && strcmp (str, "1") == 0) return 1;
701 str = getenv ("SKIP_TEST_GLOB_EXPAND");
702 if (str && strcmp (str, "1") == 0) return 1;
706 static int test_glob_expand_2 (void)
708 if (test_glob_expand_2_skip ()) {
709 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_glob_expand_2");
713 /* InitBasicFS for test_glob_expand_2: create ext2 on /dev/sda1 */
715 char device[] = "/dev/sda";
718 r = guestfs_blockdev_setrw (g, device);
725 r = guestfs_umount_all (g);
732 r = guestfs_lvm_remove_all (g);
737 char device[] = "/dev/sda";
738 char lines_0[] = ",";
745 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
750 char fstype[] = "ext2";
751 char device[] = "/dev/sda1";
754 r = guestfs_mkfs (g, fstype, device);
759 char device[] = "/dev/sda1";
760 char mountpoint[] = "/";
763 r = guestfs_mount (g, device, mountpoint);
767 /* TestOutputList for glob_expand (2) */
769 char path[] = "/a/b/c";
772 r = guestfs_mkdir_p (g, path);
777 char path[] = "/a/b/c/d";
780 r = guestfs_touch (g, path);
785 char path[] = "/a/b/c/e";
788 r = guestfs_touch (g, path);
793 char pattern[] = "/a/*/x/*";
797 r = guestfs_glob_expand (g, pattern);
801 fprintf (stderr, "test_glob_expand_2: extra elements returned from command\n");
805 for (i = 0; r[i] != NULL; ++i)
812 static int test_ntfs_3g_probe_0_skip (void)
816 str = getenv ("TEST_ONLY");
818 return strstr (str, "ntfs_3g_probe") == NULL;
819 str = getenv ("SKIP_TEST_NTFS_3G_PROBE_0");
820 if (str && strcmp (str, "1") == 0) return 1;
821 str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
822 if (str && strcmp (str, "1") == 0) return 1;
826 static int test_ntfs_3g_probe_0 (void)
828 if (test_ntfs_3g_probe_0_skip ()) {
829 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_ntfs_3g_probe_0");
833 /* InitNone|InitEmpty for test_ntfs_3g_probe_0 */
835 char device[] = "/dev/sda";
838 r = guestfs_blockdev_setrw (g, device);
845 r = guestfs_umount_all (g);
852 r = guestfs_lvm_remove_all (g);
856 /* TestOutputInt for ntfs_3g_probe (0) */
858 char device[] = "/dev/sda";
859 char lines_0[] = ",";
866 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
871 char fstype[] = "ntfs";
872 char device[] = "/dev/sda1";
875 r = guestfs_mkfs (g, fstype, device);
880 char device[] = "/dev/sda1";
883 r = guestfs_ntfs_3g_probe (g, 1, device);
887 fprintf (stderr, "test_ntfs_3g_probe_0: expected 0 but got %d\n", (int) r);
894 static int test_ntfs_3g_probe_1_skip (void)
898 str = getenv ("TEST_ONLY");
900 return strstr (str, "ntfs_3g_probe") == NULL;
901 str = getenv ("SKIP_TEST_NTFS_3G_PROBE_1");
902 if (str && strcmp (str, "1") == 0) return 1;
903 str = getenv ("SKIP_TEST_NTFS_3G_PROBE");
904 if (str && strcmp (str, "1") == 0) return 1;
908 static int test_ntfs_3g_probe_1 (void)
910 if (test_ntfs_3g_probe_1_skip ()) {
911 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_ntfs_3g_probe_1");
915 /* InitNone|InitEmpty for test_ntfs_3g_probe_1 */
917 char device[] = "/dev/sda";
920 r = guestfs_blockdev_setrw (g, device);
927 r = guestfs_umount_all (g);
934 r = guestfs_lvm_remove_all (g);
938 /* TestOutputInt for ntfs_3g_probe (1) */
940 char device[] = "/dev/sda";
941 char lines_0[] = ",";
948 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
953 char fstype[] = "ext2";
954 char device[] = "/dev/sda1";
957 r = guestfs_mkfs (g, fstype, device);
962 char device[] = "/dev/sda1";
965 r = guestfs_ntfs_3g_probe (g, 1, device);
969 fprintf (stderr, "test_ntfs_3g_probe_1: expected 12 but got %d\n", (int) r);
976 static int test_sleep_0_skip (void)
980 str = getenv ("TEST_ONLY");
982 return strstr (str, "sleep") == NULL;
983 str = getenv ("SKIP_TEST_SLEEP_0");
984 if (str && strcmp (str, "1") == 0) return 1;
985 str = getenv ("SKIP_TEST_SLEEP");
986 if (str && strcmp (str, "1") == 0) return 1;
990 static int test_sleep_0 (void)
992 if (test_sleep_0_skip ()) {
993 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_sleep_0");
997 /* InitNone|InitEmpty for test_sleep_0 */
999 char device[] = "/dev/sda";
1002 r = guestfs_blockdev_setrw (g, device);
1009 r = guestfs_umount_all (g);
1016 r = guestfs_lvm_remove_all (g);
1020 /* TestRun for sleep (0) */
1024 r = guestfs_sleep (g, 1);
1031 static int test_find_0_skip (void)
1035 str = getenv ("TEST_ONLY");
1037 return strstr (str, "find") == NULL;
1038 str = getenv ("SKIP_TEST_FIND_0");
1039 if (str && strcmp (str, "1") == 0) return 1;
1040 str = getenv ("SKIP_TEST_FIND");
1041 if (str && strcmp (str, "1") == 0) return 1;
1045 static int test_find_0 (void)
1047 if (test_find_0_skip ()) {
1048 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_find_0");
1052 /* InitBasicFS for test_find_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 /* TestOutputList for find (0) */
1108 char directory[] = "/";
1112 r = guestfs_find (g, directory);
1116 fprintf (stderr, "test_find_0: short list returned from command\n");
1121 char expected[] = "lost+found";
1122 if (strcmp (r[0], expected) != 0) {
1123 fprintf (stderr, "test_find_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1128 fprintf (stderr, "test_find_0: extra elements returned from command\n");
1132 for (i = 0; r[i] != NULL; ++i)
1139 static int test_find_1_skip (void)
1143 str = getenv ("TEST_ONLY");
1145 return strstr (str, "find") == NULL;
1146 str = getenv ("SKIP_TEST_FIND_1");
1147 if (str && strcmp (str, "1") == 0) return 1;
1148 str = getenv ("SKIP_TEST_FIND");
1149 if (str && strcmp (str, "1") == 0) return 1;
1153 static int test_find_1 (void)
1155 if (test_find_1_skip ()) {
1156 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_find_1");
1160 /* InitBasicFS for test_find_1: create ext2 on /dev/sda1 */
1162 char device[] = "/dev/sda";
1165 r = guestfs_blockdev_setrw (g, device);
1172 r = guestfs_umount_all (g);
1179 r = guestfs_lvm_remove_all (g);
1184 char device[] = "/dev/sda";
1185 char lines_0[] = ",";
1192 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1197 char fstype[] = "ext2";
1198 char device[] = "/dev/sda1";
1201 r = guestfs_mkfs (g, fstype, device);
1206 char device[] = "/dev/sda1";
1207 char mountpoint[] = "/";
1210 r = guestfs_mount (g, device, mountpoint);
1214 /* TestOutputList for find (1) */
1219 r = guestfs_touch (g, path);
1227 r = guestfs_mkdir (g, path);
1232 char path[] = "/b/c";
1235 r = guestfs_touch (g, path);
1240 char directory[] = "/";
1244 r = guestfs_find (g, directory);
1248 fprintf (stderr, "test_find_1: short list returned from command\n");
1253 char expected[] = "a";
1254 if (strcmp (r[0], expected) != 0) {
1255 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1260 fprintf (stderr, "test_find_1: short list returned from command\n");
1265 char expected[] = "b";
1266 if (strcmp (r[1], expected) != 0) {
1267 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1272 fprintf (stderr, "test_find_1: short list returned from command\n");
1277 char expected[] = "b/c";
1278 if (strcmp (r[2], expected) != 0) {
1279 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[2]);
1284 fprintf (stderr, "test_find_1: short list returned from command\n");
1289 char expected[] = "lost+found";
1290 if (strcmp (r[3], expected) != 0) {
1291 fprintf (stderr, "test_find_1: expected \"%s\" but got \"%s\"\n", expected, r[3]);
1296 fprintf (stderr, "test_find_1: extra elements returned from command\n");
1300 for (i = 0; r[i] != NULL; ++i)
1307 static int test_find_2_skip (void)
1311 str = getenv ("TEST_ONLY");
1313 return strstr (str, "find") == NULL;
1314 str = getenv ("SKIP_TEST_FIND_2");
1315 if (str && strcmp (str, "1") == 0) return 1;
1316 str = getenv ("SKIP_TEST_FIND");
1317 if (str && strcmp (str, "1") == 0) return 1;
1321 static int test_find_2 (void)
1323 if (test_find_2_skip ()) {
1324 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_find_2");
1328 /* InitBasicFS for test_find_2: create ext2 on /dev/sda1 */
1330 char device[] = "/dev/sda";
1333 r = guestfs_blockdev_setrw (g, device);
1340 r = guestfs_umount_all (g);
1347 r = guestfs_lvm_remove_all (g);
1352 char device[] = "/dev/sda";
1353 char lines_0[] = ",";
1360 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1365 char fstype[] = "ext2";
1366 char device[] = "/dev/sda1";
1369 r = guestfs_mkfs (g, fstype, device);
1374 char device[] = "/dev/sda1";
1375 char mountpoint[] = "/";
1378 r = guestfs_mount (g, device, mountpoint);
1382 /* TestOutputList for find (2) */
1384 char path[] = "/a/b/c";
1387 r = guestfs_mkdir_p (g, path);
1392 char path[] = "/a/b/c/d";
1395 r = guestfs_touch (g, path);
1400 char directory[] = "/a/b/";
1404 r = guestfs_find (g, directory);
1408 fprintf (stderr, "test_find_2: short list returned from command\n");
1413 char expected[] = "c";
1414 if (strcmp (r[0], expected) != 0) {
1415 fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[0]);
1420 fprintf (stderr, "test_find_2: short list returned from command\n");
1425 char expected[] = "c/d";
1426 if (strcmp (r[1], expected) != 0) {
1427 fprintf (stderr, "test_find_2: expected \"%s\" but got \"%s\"\n", expected, r[1]);
1432 fprintf (stderr, "test_find_2: extra elements returned from command\n");
1436 for (i = 0; r[i] != NULL; ++i)
1443 static int test_lvresize_0_skip (void)
1447 str = getenv ("TEST_ONLY");
1449 return strstr (str, "lvresize") == NULL;
1450 str = getenv ("SKIP_TEST_LVRESIZE_0");
1451 if (str && strcmp (str, "1") == 0) return 1;
1452 str = getenv ("SKIP_TEST_LVRESIZE");
1453 if (str && strcmp (str, "1") == 0) return 1;
1457 static int test_lvresize_0 (void)
1459 if (test_lvresize_0_skip ()) {
1460 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_lvresize_0");
1464 /* InitNone|InitEmpty for test_lvresize_0 */
1466 char device[] = "/dev/sda";
1469 r = guestfs_blockdev_setrw (g, device);
1476 r = guestfs_umount_all (g);
1483 r = guestfs_lvm_remove_all (g);
1487 /* TestOutput for lvresize (0) */
1488 char expected[] = "test content";
1490 char device[] = "/dev/sda";
1491 char lines_0[] = ",";
1498 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1503 char device[] = "/dev/sda1";
1506 r = guestfs_pvcreate (g, device);
1511 char volgroup[] = "VG";
1512 char physvols_0[] = "/dev/sda1";
1513 char *physvols[] = {
1519 r = guestfs_vgcreate (g, volgroup, physvols);
1524 char logvol[] = "LV";
1525 char volgroup[] = "VG";
1528 r = guestfs_lvcreate (g, logvol, volgroup, 10);
1533 char fstype[] = "ext2";
1534 char device[] = "/dev/VG/LV";
1537 r = guestfs_mkfs (g, fstype, device);
1542 char device[] = "/dev/VG/LV";
1543 char mountpoint[] = "/";
1546 r = guestfs_mount (g, device, mountpoint);
1551 char path[] = "/new";
1552 char content[] = "test content";
1555 r = guestfs_write_file (g, path, content, 0);
1560 char pathordevice[] = "/";
1563 r = guestfs_umount (g, pathordevice);
1568 char device[] = "/dev/VG/LV";
1571 r = guestfs_lvresize (g, device, 20);
1576 char device[] = "/dev/VG/LV";
1579 r = guestfs_e2fsck_f (g, device);
1584 char device[] = "/dev/VG/LV";
1587 r = guestfs_resize2fs (g, device);
1592 char device[] = "/dev/VG/LV";
1593 char mountpoint[] = "/";
1596 r = guestfs_mount (g, device, mountpoint);
1601 char path[] = "/new";
1604 r = guestfs_cat (g, path);
1607 if (strcmp (r, expected) != 0) {
1608 fprintf (stderr, "test_lvresize_0: expected \"%s\" but got \"%s\"\n", expected, r);
1616 static int test_zerofree_0_skip (void)
1620 str = getenv ("TEST_ONLY");
1622 return strstr (str, "zerofree") == NULL;
1623 str = getenv ("SKIP_TEST_ZEROFREE_0");
1624 if (str && strcmp (str, "1") == 0) return 1;
1625 str = getenv ("SKIP_TEST_ZEROFREE");
1626 if (str && strcmp (str, "1") == 0) return 1;
1630 static int test_zerofree_0 (void)
1632 if (test_zerofree_0_skip ()) {
1633 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_zerofree_0");
1637 /* InitNone|InitEmpty for test_zerofree_0 */
1639 char device[] = "/dev/sda";
1642 r = guestfs_blockdev_setrw (g, device);
1649 r = guestfs_umount_all (g);
1656 r = guestfs_lvm_remove_all (g);
1660 /* TestOutput for zerofree (0) */
1661 char expected[] = "test file";
1663 char device[] = "/dev/sda";
1664 char lines_0[] = ",";
1671 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1676 char fstype[] = "ext3";
1677 char device[] = "/dev/sda1";
1680 r = guestfs_mkfs (g, fstype, device);
1685 char device[] = "/dev/sda1";
1686 char mountpoint[] = "/";
1689 r = guestfs_mount (g, device, mountpoint);
1694 char path[] = "/new";
1695 char content[] = "test file";
1698 r = guestfs_write_file (g, path, content, 0);
1703 char pathordevice[] = "/dev/sda1";
1706 r = guestfs_umount (g, pathordevice);
1711 char device[] = "/dev/sda1";
1714 r = guestfs_zerofree (g, device);
1719 char device[] = "/dev/sda1";
1720 char mountpoint[] = "/";
1723 r = guestfs_mount (g, device, mountpoint);
1728 char path[] = "/new";
1731 r = guestfs_cat (g, path);
1734 if (strcmp (r, expected) != 0) {
1735 fprintf (stderr, "test_zerofree_0: expected \"%s\" but got \"%s\"\n", expected, r);
1743 static int test_hexdump_0_skip (void)
1747 str = getenv ("TEST_ONLY");
1749 return strstr (str, "hexdump") == NULL;
1750 str = getenv ("SKIP_TEST_HEXDUMP_0");
1751 if (str && strcmp (str, "1") == 0) return 1;
1752 str = getenv ("SKIP_TEST_HEXDUMP");
1753 if (str && strcmp (str, "1") == 0) return 1;
1757 static int test_hexdump_0 (void)
1759 if (test_hexdump_0_skip ()) {
1760 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_hexdump_0");
1764 /* InitBasicFS for test_hexdump_0: create ext2 on /dev/sda1 */
1766 char device[] = "/dev/sda";
1769 r = guestfs_blockdev_setrw (g, device);
1776 r = guestfs_umount_all (g);
1783 r = guestfs_lvm_remove_all (g);
1788 char device[] = "/dev/sda";
1789 char lines_0[] = ",";
1796 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1801 char fstype[] = "ext2";
1802 char device[] = "/dev/sda1";
1805 r = guestfs_mkfs (g, fstype, device);
1810 char device[] = "/dev/sda1";
1811 char mountpoint[] = "/";
1814 r = guestfs_mount (g, device, mountpoint);
1818 /* TestOutput for hexdump (0) */
1819 char expected[] = "00000000 68 65 6c 6c 6f 0a 77 6f 72 6c 64 0a |hello.world.|\n0000000c\n";
1821 char path[] = "/new";
1822 char content[] = "hello\nworld\n";
1825 r = guestfs_write_file (g, path, content, 12);
1830 char path[] = "/new";
1833 r = guestfs_hexdump (g, path);
1836 if (strcmp (r, expected) != 0) {
1837 fprintf (stderr, "test_hexdump_0: expected \"%s\" but got \"%s\"\n", expected, r);
1845 static int test_hexdump_1_skip (void)
1849 str = getenv ("TEST_ONLY");
1851 return strstr (str, "hexdump") == NULL;
1852 str = getenv ("SKIP_TEST_HEXDUMP_1");
1853 if (str && strcmp (str, "1") == 0) return 1;
1854 str = getenv ("SKIP_TEST_HEXDUMP");
1855 if (str && strcmp (str, "1") == 0) return 1;
1859 static int test_hexdump_1 (void)
1861 if (test_hexdump_1_skip ()) {
1862 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_hexdump_1");
1866 /* InitBasicFS for test_hexdump_1: create ext2 on /dev/sda1 */
1868 char device[] = "/dev/sda";
1871 r = guestfs_blockdev_setrw (g, device);
1878 r = guestfs_umount_all (g);
1885 r = guestfs_lvm_remove_all (g);
1890 char device[] = "/dev/sda";
1891 char lines_0[] = ",";
1898 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
1903 char fstype[] = "ext2";
1904 char device[] = "/dev/sda1";
1907 r = guestfs_mkfs (g, fstype, device);
1912 char device[] = "/dev/sda1";
1913 char mountpoint[] = "/";
1916 r = guestfs_mount (g, device, mountpoint);
1920 /* TestRun for hexdump (1) */
1922 char options[] = "ro";
1923 char vfstype[] = "squashfs";
1924 char device[] = "/dev/sdd";
1925 char mountpoint[] = "/";
1928 r = guestfs_mount_vfs (g, options, vfstype, device, mountpoint);
1933 char path[] = "/100krandom";
1936 r = guestfs_hexdump (g, path);
1944 static int test_strings_e_0_skip (void)
1948 str = getenv ("TEST_ONLY");
1950 return strstr (str, "strings_e") == NULL;
1951 str = getenv ("SKIP_TEST_STRINGS_E_0");
1952 if (str && strcmp (str, "1") == 0) return 1;
1953 str = getenv ("SKIP_TEST_STRINGS_E");
1954 if (str && strcmp (str, "1") == 0) return 1;
1958 static int test_strings_e_0 (void)
1960 if (test_strings_e_0_skip ()) {
1961 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_strings_e_0");
1965 /* InitBasicFS for test_strings_e_0: create ext2 on /dev/sda1 */
1967 char device[] = "/dev/sda";
1970 r = guestfs_blockdev_setrw (g, device);
1977 r = guestfs_umount_all (g);
1984 r = guestfs_lvm_remove_all (g);
1989 char device[] = "/dev/sda";
1990 char lines_0[] = ",";
1997 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2002 char fstype[] = "ext2";
2003 char device[] = "/dev/sda1";
2006 r = guestfs_mkfs (g, fstype, device);
2011 char device[] = "/dev/sda1";
2012 char mountpoint[] = "/";
2015 r = guestfs_mount (g, device, mountpoint);
2019 /* TestOutputList for strings_e (0) */
2021 char path[] = "/new";
2022 char content[] = "hello\nworld\n";
2025 r = guestfs_write_file (g, path, content, 0);
2030 char encoding[] = "b";
2031 char path[] = "/new";
2035 r = guestfs_strings_e (g, encoding, path);
2039 fprintf (stderr, "test_strings_e_0: extra elements returned from command\n");
2043 for (i = 0; r[i] != NULL; ++i)
2050 static int test_strings_e_1_skip (void)
2054 str = getenv ("TEST_ONLY");
2056 return strstr (str, "strings_e") == NULL;
2057 str = getenv ("SKIP_TEST_STRINGS_E_1");
2058 if (str && strcmp (str, "1") == 0) return 1;
2059 str = getenv ("SKIP_TEST_STRINGS_E");
2060 if (str && strcmp (str, "1") == 0) return 1;
2064 static int test_strings_e_1 (void)
2066 if (test_strings_e_1_skip ()) {
2067 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_strings_e_1");
2071 printf ("%s skipped (reason: test disabled in generator)\n", "test_strings_e_1");
2075 static int test_strings_0_skip (void)
2079 str = getenv ("TEST_ONLY");
2081 return strstr (str, "strings") == NULL;
2082 str = getenv ("SKIP_TEST_STRINGS_0");
2083 if (str && strcmp (str, "1") == 0) return 1;
2084 str = getenv ("SKIP_TEST_STRINGS");
2085 if (str && strcmp (str, "1") == 0) return 1;
2089 static int test_strings_0 (void)
2091 if (test_strings_0_skip ()) {
2092 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_strings_0");
2096 /* InitBasicFS for test_strings_0: create ext2 on /dev/sda1 */
2098 char device[] = "/dev/sda";
2101 r = guestfs_blockdev_setrw (g, device);
2108 r = guestfs_umount_all (g);
2115 r = guestfs_lvm_remove_all (g);
2120 char device[] = "/dev/sda";
2121 char lines_0[] = ",";
2128 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2133 char fstype[] = "ext2";
2134 char device[] = "/dev/sda1";
2137 r = guestfs_mkfs (g, fstype, device);
2142 char device[] = "/dev/sda1";
2143 char mountpoint[] = "/";
2146 r = guestfs_mount (g, device, mountpoint);
2150 /* TestOutputList for strings (0) */
2152 char path[] = "/new";
2153 char content[] = "hello\nworld\n";
2156 r = guestfs_write_file (g, path, content, 0);
2161 char path[] = "/new";
2165 r = guestfs_strings (g, path);
2169 fprintf (stderr, "test_strings_0: short list returned from command\n");
2174 char expected[] = "hello";
2175 if (strcmp (r[0], expected) != 0) {
2176 fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[0]);
2181 fprintf (stderr, "test_strings_0: short list returned from command\n");
2186 char expected[] = "world";
2187 if (strcmp (r[1], expected) != 0) {
2188 fprintf (stderr, "test_strings_0: expected \"%s\" but got \"%s\"\n", expected, r[1]);
2193 fprintf (stderr, "test_strings_0: extra elements returned from command\n");
2197 for (i = 0; r[i] != NULL; ++i)
2204 static int test_strings_1_skip (void)
2208 str = getenv ("TEST_ONLY");
2210 return strstr (str, "strings") == NULL;
2211 str = getenv ("SKIP_TEST_STRINGS_1");
2212 if (str && strcmp (str, "1") == 0) return 1;
2213 str = getenv ("SKIP_TEST_STRINGS");
2214 if (str && strcmp (str, "1") == 0) return 1;
2218 static int test_strings_1 (void)
2220 if (test_strings_1_skip ()) {
2221 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_strings_1");
2225 /* InitBasicFS for test_strings_1: create ext2 on /dev/sda1 */
2227 char device[] = "/dev/sda";
2230 r = guestfs_blockdev_setrw (g, device);
2237 r = guestfs_umount_all (g);
2244 r = guestfs_lvm_remove_all (g);
2249 char device[] = "/dev/sda";
2250 char lines_0[] = ",";
2257 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2262 char fstype[] = "ext2";
2263 char device[] = "/dev/sda1";
2266 r = guestfs_mkfs (g, fstype, device);
2271 char device[] = "/dev/sda1";
2272 char mountpoint[] = "/";
2275 r = guestfs_mount (g, device, mountpoint);
2279 /* TestOutputList for strings (1) */
2281 char path[] = "/new";
2284 r = guestfs_touch (g, path);
2289 char path[] = "/new";
2293 r = guestfs_strings (g, path);
2297 fprintf (stderr, "test_strings_1: extra elements returned from command\n");
2301 for (i = 0; r[i] != NULL; ++i)
2308 static int test_equal_0_skip (void)
2312 str = getenv ("TEST_ONLY");
2314 return strstr (str, "equal") == NULL;
2315 str = getenv ("SKIP_TEST_EQUAL_0");
2316 if (str && strcmp (str, "1") == 0) return 1;
2317 str = getenv ("SKIP_TEST_EQUAL");
2318 if (str && strcmp (str, "1") == 0) return 1;
2322 static int test_equal_0 (void)
2324 if (test_equal_0_skip ()) {
2325 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_equal_0");
2329 /* InitBasicFS for test_equal_0: create ext2 on /dev/sda1 */
2331 char device[] = "/dev/sda";
2334 r = guestfs_blockdev_setrw (g, device);
2341 r = guestfs_umount_all (g);
2348 r = guestfs_lvm_remove_all (g);
2353 char device[] = "/dev/sda";
2354 char lines_0[] = ",";
2361 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2366 char fstype[] = "ext2";
2367 char device[] = "/dev/sda1";
2370 r = guestfs_mkfs (g, fstype, device);
2375 char device[] = "/dev/sda1";
2376 char mountpoint[] = "/";
2379 r = guestfs_mount (g, device, mountpoint);
2383 /* TestOutputTrue for equal (0) */
2385 char path[] = "/file1";
2386 char content[] = "contents of a file";
2389 r = guestfs_write_file (g, path, content, 0);
2394 char src[] = "/file1";
2395 char dest[] = "/file2";
2398 r = guestfs_cp (g, src, dest);
2403 char file1[] = "/file1";
2404 char file2[] = "/file2";
2407 r = guestfs_equal (g, file1, file2);
2411 fprintf (stderr, "test_equal_0: expected true, got false\n");
2418 static int test_equal_1_skip (void)
2422 str = getenv ("TEST_ONLY");
2424 return strstr (str, "equal") == NULL;
2425 str = getenv ("SKIP_TEST_EQUAL_1");
2426 if (str && strcmp (str, "1") == 0) return 1;
2427 str = getenv ("SKIP_TEST_EQUAL");
2428 if (str && strcmp (str, "1") == 0) return 1;
2432 static int test_equal_1 (void)
2434 if (test_equal_1_skip ()) {
2435 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_equal_1");
2439 /* InitBasicFS for test_equal_1: 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 /* TestOutputFalse for equal (1) */
2495 char path[] = "/file1";
2496 char content[] = "contents of a file";
2499 r = guestfs_write_file (g, path, content, 0);
2504 char path[] = "/file2";
2505 char content[] = "contents of another file";
2508 r = guestfs_write_file (g, path, content, 0);
2513 char file1[] = "/file1";
2514 char file2[] = "/file2";
2517 r = guestfs_equal (g, file1, file2);
2521 fprintf (stderr, "test_equal_1: expected false, got true\n");
2528 static int test_equal_2_skip (void)
2532 str = getenv ("TEST_ONLY");
2534 return strstr (str, "equal") == NULL;
2535 str = getenv ("SKIP_TEST_EQUAL_2");
2536 if (str && strcmp (str, "1") == 0) return 1;
2537 str = getenv ("SKIP_TEST_EQUAL");
2538 if (str && strcmp (str, "1") == 0) return 1;
2542 static int test_equal_2 (void)
2544 if (test_equal_2_skip ()) {
2545 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_equal_2");
2549 /* InitBasicFS for test_equal_2: create ext2 on /dev/sda1 */
2551 char device[] = "/dev/sda";
2554 r = guestfs_blockdev_setrw (g, device);
2561 r = guestfs_umount_all (g);
2568 r = guestfs_lvm_remove_all (g);
2573 char device[] = "/dev/sda";
2574 char lines_0[] = ",";
2581 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2586 char fstype[] = "ext2";
2587 char device[] = "/dev/sda1";
2590 r = guestfs_mkfs (g, fstype, device);
2595 char device[] = "/dev/sda1";
2596 char mountpoint[] = "/";
2599 r = guestfs_mount (g, device, mountpoint);
2603 /* TestLastFail for equal (2) */
2605 char file1[] = "/file1";
2606 char file2[] = "/file2";
2609 r = guestfs_equal (g, file1, file2);
2616 static int test_ping_daemon_0_skip (void)
2620 str = getenv ("TEST_ONLY");
2622 return strstr (str, "ping_daemon") == NULL;
2623 str = getenv ("SKIP_TEST_PING_DAEMON_0");
2624 if (str && strcmp (str, "1") == 0) return 1;
2625 str = getenv ("SKIP_TEST_PING_DAEMON");
2626 if (str && strcmp (str, "1") == 0) return 1;
2630 static int test_ping_daemon_0 (void)
2632 if (test_ping_daemon_0_skip ()) {
2633 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_ping_daemon_0");
2637 /* InitNone|InitEmpty for test_ping_daemon_0 */
2639 char device[] = "/dev/sda";
2642 r = guestfs_blockdev_setrw (g, device);
2649 r = guestfs_umount_all (g);
2656 r = guestfs_lvm_remove_all (g);
2660 /* TestRun for ping_daemon (0) */
2664 r = guestfs_ping_daemon (g);
2671 static int test_dmesg_0_skip (void)
2675 str = getenv ("TEST_ONLY");
2677 return strstr (str, "dmesg") == NULL;
2678 str = getenv ("SKIP_TEST_DMESG_0");
2679 if (str && strcmp (str, "1") == 0) return 1;
2680 str = getenv ("SKIP_TEST_DMESG");
2681 if (str && strcmp (str, "1") == 0) return 1;
2685 static int test_dmesg_0 (void)
2687 if (test_dmesg_0_skip ()) {
2688 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_dmesg_0");
2692 /* InitNone|InitEmpty for test_dmesg_0 */
2694 char device[] = "/dev/sda";
2697 r = guestfs_blockdev_setrw (g, device);
2704 r = guestfs_umount_all (g);
2711 r = guestfs_lvm_remove_all (g);
2715 /* TestRun for dmesg (0) */
2719 r = guestfs_dmesg (g);
2727 static int test_drop_caches_0_skip (void)
2731 str = getenv ("TEST_ONLY");
2733 return strstr (str, "drop_caches") == NULL;
2734 str = getenv ("SKIP_TEST_DROP_CACHES_0");
2735 if (str && strcmp (str, "1") == 0) return 1;
2736 str = getenv ("SKIP_TEST_DROP_CACHES");
2737 if (str && strcmp (str, "1") == 0) return 1;
2741 static int test_drop_caches_0 (void)
2743 if (test_drop_caches_0_skip ()) {
2744 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_drop_caches_0");
2748 /* InitNone|InitEmpty for test_drop_caches_0 */
2750 char device[] = "/dev/sda";
2753 r = guestfs_blockdev_setrw (g, device);
2760 r = guestfs_umount_all (g);
2767 r = guestfs_lvm_remove_all (g);
2771 /* TestRun for drop_caches (0) */
2775 r = guestfs_drop_caches (g, 3);
2782 static int test_mv_0_skip (void)
2786 str = getenv ("TEST_ONLY");
2788 return strstr (str, "mv") == NULL;
2789 str = getenv ("SKIP_TEST_MV_0");
2790 if (str && strcmp (str, "1") == 0) return 1;
2791 str = getenv ("SKIP_TEST_MV");
2792 if (str && strcmp (str, "1") == 0) return 1;
2796 static int test_mv_0 (void)
2798 if (test_mv_0_skip ()) {
2799 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_mv_0");
2803 /* InitBasicFS for test_mv_0: create ext2 on /dev/sda1 */
2805 char device[] = "/dev/sda";
2808 r = guestfs_blockdev_setrw (g, device);
2815 r = guestfs_umount_all (g);
2822 r = guestfs_lvm_remove_all (g);
2827 char device[] = "/dev/sda";
2828 char lines_0[] = ",";
2835 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2840 char fstype[] = "ext2";
2841 char device[] = "/dev/sda1";
2844 r = guestfs_mkfs (g, fstype, device);
2849 char device[] = "/dev/sda1";
2850 char mountpoint[] = "/";
2853 r = guestfs_mount (g, device, mountpoint);
2857 /* TestOutput for mv (0) */
2858 char expected[] = "file content";
2860 char path[] = "/old";
2861 char content[] = "file content";
2864 r = guestfs_write_file (g, path, content, 0);
2869 char src[] = "/old";
2870 char dest[] = "/new";
2873 r = guestfs_mv (g, src, dest);
2878 char path[] = "/new";
2881 r = guestfs_cat (g, path);
2884 if (strcmp (r, expected) != 0) {
2885 fprintf (stderr, "test_mv_0: expected \"%s\" but got \"%s\"\n", expected, r);
2893 static int test_mv_1_skip (void)
2897 str = getenv ("TEST_ONLY");
2899 return strstr (str, "mv") == NULL;
2900 str = getenv ("SKIP_TEST_MV_1");
2901 if (str && strcmp (str, "1") == 0) return 1;
2902 str = getenv ("SKIP_TEST_MV");
2903 if (str && strcmp (str, "1") == 0) return 1;
2907 static int test_mv_1 (void)
2909 if (test_mv_1_skip ()) {
2910 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_mv_1");
2914 /* InitBasicFS for test_mv_1: create ext2 on /dev/sda1 */
2916 char device[] = "/dev/sda";
2919 r = guestfs_blockdev_setrw (g, device);
2926 r = guestfs_umount_all (g);
2933 r = guestfs_lvm_remove_all (g);
2938 char device[] = "/dev/sda";
2939 char lines_0[] = ",";
2946 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
2951 char fstype[] = "ext2";
2952 char device[] = "/dev/sda1";
2955 r = guestfs_mkfs (g, fstype, device);
2960 char device[] = "/dev/sda1";
2961 char mountpoint[] = "/";
2964 r = guestfs_mount (g, device, mountpoint);
2968 /* TestOutputFalse for mv (1) */
2970 char path[] = "/old";
2971 char content[] = "file content";
2974 r = guestfs_write_file (g, path, content, 0);
2979 char src[] = "/old";
2980 char dest[] = "/new";
2983 r = guestfs_mv (g, src, dest);
2988 char path[] = "/old";
2991 r = guestfs_is_file (g, path);
2995 fprintf (stderr, "test_mv_1: expected false, got true\n");
3002 static int test_cp_a_0_skip (void)
3006 str = getenv ("TEST_ONLY");
3008 return strstr (str, "cp_a") == NULL;
3009 str = getenv ("SKIP_TEST_CP_A_0");
3010 if (str && strcmp (str, "1") == 0) return 1;
3011 str = getenv ("SKIP_TEST_CP_A");
3012 if (str && strcmp (str, "1") == 0) return 1;
3016 static int test_cp_a_0 (void)
3018 if (test_cp_a_0_skip ()) {
3019 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_cp_a_0");
3023 /* InitBasicFS for test_cp_a_0: create ext2 on /dev/sda1 */
3025 char device[] = "/dev/sda";
3028 r = guestfs_blockdev_setrw (g, device);
3035 r = guestfs_umount_all (g);
3042 r = guestfs_lvm_remove_all (g);
3047 char device[] = "/dev/sda";
3048 char lines_0[] = ",";
3055 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3060 char fstype[] = "ext2";
3061 char device[] = "/dev/sda1";
3064 r = guestfs_mkfs (g, fstype, device);
3069 char device[] = "/dev/sda1";
3070 char mountpoint[] = "/";
3073 r = guestfs_mount (g, device, mountpoint);
3077 /* TestOutput for cp_a (0) */
3078 char expected[] = "file content";
3080 char path[] = "/olddir";
3083 r = guestfs_mkdir (g, path);
3088 char path[] = "/newdir";
3091 r = guestfs_mkdir (g, path);
3096 char path[] = "/olddir/file";
3097 char content[] = "file content";
3100 r = guestfs_write_file (g, path, content, 0);
3105 char src[] = "/olddir";
3106 char dest[] = "/newdir";
3109 r = guestfs_cp_a (g, src, dest);
3114 char path[] = "/newdir/olddir/file";
3117 r = guestfs_cat (g, path);
3120 if (strcmp (r, expected) != 0) {
3121 fprintf (stderr, "test_cp_a_0: expected \"%s\" but got \"%s\"\n", expected, r);
3129 static int test_cp_0_skip (void)
3133 str = getenv ("TEST_ONLY");
3135 return strstr (str, "cp") == NULL;
3136 str = getenv ("SKIP_TEST_CP_0");
3137 if (str && strcmp (str, "1") == 0) return 1;
3138 str = getenv ("SKIP_TEST_CP");
3139 if (str && strcmp (str, "1") == 0) return 1;
3143 static int test_cp_0 (void)
3145 if (test_cp_0_skip ()) {
3146 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_cp_0");
3150 /* InitBasicFS for test_cp_0: create ext2 on /dev/sda1 */
3152 char device[] = "/dev/sda";
3155 r = guestfs_blockdev_setrw (g, device);
3162 r = guestfs_umount_all (g);
3169 r = guestfs_lvm_remove_all (g);
3174 char device[] = "/dev/sda";
3175 char lines_0[] = ",";
3182 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3187 char fstype[] = "ext2";
3188 char device[] = "/dev/sda1";
3191 r = guestfs_mkfs (g, fstype, device);
3196 char device[] = "/dev/sda1";
3197 char mountpoint[] = "/";
3200 r = guestfs_mount (g, device, mountpoint);
3204 /* TestOutput for cp (0) */
3205 char expected[] = "file content";
3207 char path[] = "/old";
3208 char content[] = "file content";
3211 r = guestfs_write_file (g, path, content, 0);
3216 char src[] = "/old";
3217 char dest[] = "/new";
3220 r = guestfs_cp (g, src, dest);
3225 char path[] = "/new";
3228 r = guestfs_cat (g, path);
3231 if (strcmp (r, expected) != 0) {
3232 fprintf (stderr, "test_cp_0: expected \"%s\" but got \"%s\"\n", expected, r);
3240 static int test_cp_1_skip (void)
3244 str = getenv ("TEST_ONLY");
3246 return strstr (str, "cp") == NULL;
3247 str = getenv ("SKIP_TEST_CP_1");
3248 if (str && strcmp (str, "1") == 0) return 1;
3249 str = getenv ("SKIP_TEST_CP");
3250 if (str && strcmp (str, "1") == 0) return 1;
3254 static int test_cp_1 (void)
3256 if (test_cp_1_skip ()) {
3257 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_cp_1");
3261 /* InitBasicFS for test_cp_1: create ext2 on /dev/sda1 */
3263 char device[] = "/dev/sda";
3266 r = guestfs_blockdev_setrw (g, device);
3273 r = guestfs_umount_all (g);
3280 r = guestfs_lvm_remove_all (g);
3285 char device[] = "/dev/sda";
3286 char lines_0[] = ",";
3293 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3298 char fstype[] = "ext2";
3299 char device[] = "/dev/sda1";
3302 r = guestfs_mkfs (g, fstype, device);
3307 char device[] = "/dev/sda1";
3308 char mountpoint[] = "/";
3311 r = guestfs_mount (g, device, mountpoint);
3315 /* TestOutputTrue for cp (1) */
3317 char path[] = "/old";
3318 char content[] = "file content";
3321 r = guestfs_write_file (g, path, content, 0);
3326 char src[] = "/old";
3327 char dest[] = "/new";
3330 r = guestfs_cp (g, src, dest);
3335 char path[] = "/old";
3338 r = guestfs_is_file (g, path);
3342 fprintf (stderr, "test_cp_1: expected true, got false\n");
3349 static int test_cp_2_skip (void)
3353 str = getenv ("TEST_ONLY");
3355 return strstr (str, "cp") == NULL;
3356 str = getenv ("SKIP_TEST_CP_2");
3357 if (str && strcmp (str, "1") == 0) return 1;
3358 str = getenv ("SKIP_TEST_CP");
3359 if (str && strcmp (str, "1") == 0) return 1;
3363 static int test_cp_2 (void)
3365 if (test_cp_2_skip ()) {
3366 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_cp_2");
3370 /* InitBasicFS for test_cp_2: create ext2 on /dev/sda1 */
3372 char device[] = "/dev/sda";
3375 r = guestfs_blockdev_setrw (g, device);
3382 r = guestfs_umount_all (g);
3389 r = guestfs_lvm_remove_all (g);
3394 char device[] = "/dev/sda";
3395 char lines_0[] = ",";
3402 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3407 char fstype[] = "ext2";
3408 char device[] = "/dev/sda1";
3411 r = guestfs_mkfs (g, fstype, device);
3416 char device[] = "/dev/sda1";
3417 char mountpoint[] = "/";
3420 r = guestfs_mount (g, device, mountpoint);
3424 /* TestOutput for cp (2) */
3425 char expected[] = "file content";
3427 char path[] = "/old";
3428 char content[] = "file content";
3431 r = guestfs_write_file (g, path, content, 0);
3436 char path[] = "/dir";
3439 r = guestfs_mkdir (g, path);
3444 char src[] = "/old";
3445 char dest[] = "/dir/new";
3448 r = guestfs_cp (g, src, dest);
3453 char path[] = "/dir/new";
3456 r = guestfs_cat (g, path);
3459 if (strcmp (r, expected) != 0) {
3460 fprintf (stderr, "test_cp_2: expected \"%s\" but got \"%s\"\n", expected, r);
3468 static int test_grub_install_0_skip (void)
3472 str = getenv ("TEST_ONLY");
3474 return strstr (str, "grub_install") == NULL;
3475 str = getenv ("SKIP_TEST_GRUB_INSTALL_0");
3476 if (str && strcmp (str, "1") == 0) return 1;
3477 str = getenv ("SKIP_TEST_GRUB_INSTALL");
3478 if (str && strcmp (str, "1") == 0) return 1;
3482 static int test_grub_install_0 (void)
3484 if (test_grub_install_0_skip ()) {
3485 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_grub_install_0");
3489 /* InitBasicFS for test_grub_install_0: create ext2 on /dev/sda1 */
3491 char device[] = "/dev/sda";
3494 r = guestfs_blockdev_setrw (g, device);
3501 r = guestfs_umount_all (g);
3508 r = guestfs_lvm_remove_all (g);
3513 char device[] = "/dev/sda";
3514 char lines_0[] = ",";
3521 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3526 char fstype[] = "ext2";
3527 char device[] = "/dev/sda1";
3530 r = guestfs_mkfs (g, fstype, device);
3535 char device[] = "/dev/sda1";
3536 char mountpoint[] = "/";
3539 r = guestfs_mount (g, device, mountpoint);
3543 /* TestOutputTrue for grub_install (0) */
3546 char device[] = "/dev/sda1";
3549 r = guestfs_grub_install (g, root, device);
3554 char path[] = "/boot";
3557 r = guestfs_is_dir (g, path);
3561 fprintf (stderr, "test_grub_install_0: expected true, got false\n");
3568 static int test_zero_0_skip (void)
3572 str = getenv ("TEST_ONLY");
3574 return strstr (str, "zero") == NULL;
3575 str = getenv ("SKIP_TEST_ZERO_0");
3576 if (str && strcmp (str, "1") == 0) return 1;
3577 str = getenv ("SKIP_TEST_ZERO");
3578 if (str && strcmp (str, "1") == 0) return 1;
3582 static int test_zero_0 (void)
3584 if (test_zero_0_skip ()) {
3585 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_zero_0");
3589 /* InitBasicFS for test_zero_0: create ext2 on /dev/sda1 */
3591 char device[] = "/dev/sda";
3594 r = guestfs_blockdev_setrw (g, device);
3601 r = guestfs_umount_all (g);
3608 r = guestfs_lvm_remove_all (g);
3613 char device[] = "/dev/sda";
3614 char lines_0[] = ",";
3621 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3626 char fstype[] = "ext2";
3627 char device[] = "/dev/sda1";
3630 r = guestfs_mkfs (g, fstype, device);
3635 char device[] = "/dev/sda1";
3636 char mountpoint[] = "/";
3639 r = guestfs_mount (g, device, mountpoint);
3643 /* TestOutput for zero (0) */
3644 char expected[] = "data";
3646 char pathordevice[] = "/dev/sda1";
3649 r = guestfs_umount (g, pathordevice);
3654 char device[] = "/dev/sda1";
3657 r = guestfs_zero (g, device);
3662 char path[] = "/dev/sda1";
3665 r = guestfs_file (g, path);
3668 if (strcmp (r, expected) != 0) {
3669 fprintf (stderr, "test_zero_0: expected \"%s\" but got \"%s\"\n", expected, r);
3677 static int test_fsck_0_skip (void)
3681 str = getenv ("TEST_ONLY");
3683 return strstr (str, "fsck") == NULL;
3684 str = getenv ("SKIP_TEST_FSCK_0");
3685 if (str && strcmp (str, "1") == 0) return 1;
3686 str = getenv ("SKIP_TEST_FSCK");
3687 if (str && strcmp (str, "1") == 0) return 1;
3691 static int test_fsck_0 (void)
3693 if (test_fsck_0_skip ()) {
3694 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_fsck_0");
3698 /* InitBasicFS for test_fsck_0: create ext2 on /dev/sda1 */
3700 char device[] = "/dev/sda";
3703 r = guestfs_blockdev_setrw (g, device);
3710 r = guestfs_umount_all (g);
3717 r = guestfs_lvm_remove_all (g);
3722 char device[] = "/dev/sda";
3723 char lines_0[] = ",";
3730 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3735 char fstype[] = "ext2";
3736 char device[] = "/dev/sda1";
3739 r = guestfs_mkfs (g, fstype, device);
3744 char device[] = "/dev/sda1";
3745 char mountpoint[] = "/";
3748 r = guestfs_mount (g, device, mountpoint);
3752 /* TestOutputInt for fsck (0) */
3754 char pathordevice[] = "/dev/sda1";
3757 r = guestfs_umount (g, pathordevice);
3762 char fstype[] = "ext2";
3763 char device[] = "/dev/sda1";
3766 r = guestfs_fsck (g, fstype, device);
3770 fprintf (stderr, "test_fsck_0: expected 0 but got %d\n", (int) r);
3777 static int test_fsck_1_skip (void)
3781 str = getenv ("TEST_ONLY");
3783 return strstr (str, "fsck") == NULL;
3784 str = getenv ("SKIP_TEST_FSCK_1");
3785 if (str && strcmp (str, "1") == 0) return 1;
3786 str = getenv ("SKIP_TEST_FSCK");
3787 if (str && strcmp (str, "1") == 0) return 1;
3791 static int test_fsck_1 (void)
3793 if (test_fsck_1_skip ()) {
3794 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_fsck_1");
3798 /* InitBasicFS for test_fsck_1: create ext2 on /dev/sda1 */
3800 char device[] = "/dev/sda";
3803 r = guestfs_blockdev_setrw (g, device);
3810 r = guestfs_umount_all (g);
3817 r = guestfs_lvm_remove_all (g);
3822 char device[] = "/dev/sda";
3823 char lines_0[] = ",";
3830 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3835 char fstype[] = "ext2";
3836 char device[] = "/dev/sda1";
3839 r = guestfs_mkfs (g, fstype, device);
3844 char device[] = "/dev/sda1";
3845 char mountpoint[] = "/";
3848 r = guestfs_mount (g, device, mountpoint);
3852 /* TestOutputInt for fsck (1) */
3854 char pathordevice[] = "/dev/sda1";
3857 r = guestfs_umount (g, pathordevice);
3862 char device[] = "/dev/sda1";
3865 r = guestfs_zero (g, device);
3870 char fstype[] = "ext2";
3871 char device[] = "/dev/sda1";
3874 r = guestfs_fsck (g, fstype, device);
3878 fprintf (stderr, "test_fsck_1: expected 8 but got %d\n", (int) r);
3885 static int test_set_e2uuid_0_skip (void)
3889 str = getenv ("TEST_ONLY");
3891 return strstr (str, "set_e2uuid") == NULL;
3892 str = getenv ("SKIP_TEST_SET_E2UUID_0");
3893 if (str && strcmp (str, "1") == 0) return 1;
3894 str = getenv ("SKIP_TEST_SET_E2UUID");
3895 if (str && strcmp (str, "1") == 0) return 1;
3899 static int test_set_e2uuid_0 (void)
3901 if (test_set_e2uuid_0_skip ()) {
3902 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_set_e2uuid_0");
3906 /* InitBasicFS for test_set_e2uuid_0: create ext2 on /dev/sda1 */
3908 char device[] = "/dev/sda";
3911 r = guestfs_blockdev_setrw (g, device);
3918 r = guestfs_umount_all (g);
3925 r = guestfs_lvm_remove_all (g);
3930 char device[] = "/dev/sda";
3931 char lines_0[] = ",";
3938 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
3943 char fstype[] = "ext2";
3944 char device[] = "/dev/sda1";
3947 r = guestfs_mkfs (g, fstype, device);
3952 char device[] = "/dev/sda1";
3953 char mountpoint[] = "/";
3956 r = guestfs_mount (g, device, mountpoint);
3960 /* TestOutput for set_e2uuid (0) */
3961 char expected[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d";
3963 char device[] = "/dev/sda1";
3964 char uuid[] = "a3a61220-882b-4f61-89f4-cf24dcc7297d";
3967 r = guestfs_set_e2uuid (g, device, uuid);
3972 char device[] = "/dev/sda1";
3975 r = guestfs_get_e2uuid (g, device);
3978 if (strcmp (r, expected) != 0) {
3979 fprintf (stderr, "test_set_e2uuid_0: expected \"%s\" but got \"%s\"\n", expected, r);
3987 static int test_set_e2uuid_1_skip (void)
3991 str = getenv ("TEST_ONLY");
3993 return strstr (str, "set_e2uuid") == NULL;
3994 str = getenv ("SKIP_TEST_SET_E2UUID_1");
3995 if (str && strcmp (str, "1") == 0) return 1;
3996 str = getenv ("SKIP_TEST_SET_E2UUID");
3997 if (str && strcmp (str, "1") == 0) return 1;
4001 static int test_set_e2uuid_1 (void)
4003 if (test_set_e2uuid_1_skip ()) {
4004 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_set_e2uuid_1");
4008 /* InitBasicFS for test_set_e2uuid_1: create ext2 on /dev/sda1 */
4010 char device[] = "/dev/sda";
4013 r = guestfs_blockdev_setrw (g, device);
4020 r = guestfs_umount_all (g);
4027 r = guestfs_lvm_remove_all (g);
4032 char device[] = "/dev/sda";
4033 char lines_0[] = ",";
4040 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4045 char fstype[] = "ext2";
4046 char device[] = "/dev/sda1";
4049 r = guestfs_mkfs (g, fstype, device);
4054 char device[] = "/dev/sda1";
4055 char mountpoint[] = "/";
4058 r = guestfs_mount (g, device, mountpoint);
4062 /* TestOutput for set_e2uuid (1) */
4063 char expected[] = "";
4065 char device[] = "/dev/sda1";
4066 char uuid[] = "clear";
4069 r = guestfs_set_e2uuid (g, device, uuid);
4074 char device[] = "/dev/sda1";
4077 r = guestfs_get_e2uuid (g, device);
4080 if (strcmp (r, expected) != 0) {
4081 fprintf (stderr, "test_set_e2uuid_1: expected \"%s\" but got \"%s\"\n", expected, r);
4089 static int test_set_e2uuid_2_skip (void)
4093 str = getenv ("TEST_ONLY");
4095 return strstr (str, "set_e2uuid") == NULL;
4096 str = getenv ("SKIP_TEST_SET_E2UUID_2");
4097 if (str && strcmp (str, "1") == 0) return 1;
4098 str = getenv ("SKIP_TEST_SET_E2UUID");
4099 if (str && strcmp (str, "1") == 0) return 1;
4103 static int test_set_e2uuid_2 (void)
4105 if (test_set_e2uuid_2_skip ()) {
4106 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_set_e2uuid_2");
4110 /* InitBasicFS for test_set_e2uuid_2: 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 /* TestRun for set_e2uuid (2) */
4166 char device[] = "/dev/sda1";
4167 char uuid[] = "random";
4170 r = guestfs_set_e2uuid (g, device, uuid);
4177 static int test_set_e2uuid_3_skip (void)
4181 str = getenv ("TEST_ONLY");
4183 return strstr (str, "set_e2uuid") == NULL;
4184 str = getenv ("SKIP_TEST_SET_E2UUID_3");
4185 if (str && strcmp (str, "1") == 0) return 1;
4186 str = getenv ("SKIP_TEST_SET_E2UUID");
4187 if (str && strcmp (str, "1") == 0) return 1;
4191 static int test_set_e2uuid_3 (void)
4193 if (test_set_e2uuid_3_skip ()) {
4194 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_set_e2uuid_3");
4198 /* InitBasicFS for test_set_e2uuid_3: create ext2 on /dev/sda1 */
4200 char device[] = "/dev/sda";
4203 r = guestfs_blockdev_setrw (g, device);
4210 r = guestfs_umount_all (g);
4217 r = guestfs_lvm_remove_all (g);
4222 char device[] = "/dev/sda";
4223 char lines_0[] = ",";
4230 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4235 char fstype[] = "ext2";
4236 char device[] = "/dev/sda1";
4239 r = guestfs_mkfs (g, fstype, device);
4244 char device[] = "/dev/sda1";
4245 char mountpoint[] = "/";
4248 r = guestfs_mount (g, device, mountpoint);
4252 /* TestRun for set_e2uuid (3) */
4254 char device[] = "/dev/sda1";
4255 char uuid[] = "time";
4258 r = guestfs_set_e2uuid (g, device, uuid);
4265 static int test_set_e2label_0_skip (void)
4269 str = getenv ("TEST_ONLY");
4271 return strstr (str, "set_e2label") == NULL;
4272 str = getenv ("SKIP_TEST_SET_E2LABEL_0");
4273 if (str && strcmp (str, "1") == 0) return 1;
4274 str = getenv ("SKIP_TEST_SET_E2LABEL");
4275 if (str && strcmp (str, "1") == 0) return 1;
4279 static int test_set_e2label_0 (void)
4281 if (test_set_e2label_0_skip ()) {
4282 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_set_e2label_0");
4286 /* InitBasicFS for test_set_e2label_0: create ext2 on /dev/sda1 */
4288 char device[] = "/dev/sda";
4291 r = guestfs_blockdev_setrw (g, device);
4298 r = guestfs_umount_all (g);
4305 r = guestfs_lvm_remove_all (g);
4310 char device[] = "/dev/sda";
4311 char lines_0[] = ",";
4318 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4323 char fstype[] = "ext2";
4324 char device[] = "/dev/sda1";
4327 r = guestfs_mkfs (g, fstype, device);
4332 char device[] = "/dev/sda1";
4333 char mountpoint[] = "/";
4336 r = guestfs_mount (g, device, mountpoint);
4340 /* TestOutput for set_e2label (0) */
4341 char expected[] = "testlabel";
4343 char device[] = "/dev/sda1";
4344 char label[] = "testlabel";
4347 r = guestfs_set_e2label (g, device, label);
4352 char device[] = "/dev/sda1";
4355 r = guestfs_get_e2label (g, device);
4358 if (strcmp (r, expected) != 0) {
4359 fprintf (stderr, "test_set_e2label_0: expected \"%s\" but got \"%s\"\n", expected, r);
4367 static int test_pvremove_0_skip (void)
4371 str = getenv ("TEST_ONLY");
4373 return strstr (str, "pvremove") == NULL;
4374 str = getenv ("SKIP_TEST_PVREMOVE_0");
4375 if (str && strcmp (str, "1") == 0) return 1;
4376 str = getenv ("SKIP_TEST_PVREMOVE");
4377 if (str && strcmp (str, "1") == 0) return 1;
4381 static int test_pvremove_0 (void)
4383 if (test_pvremove_0_skip ()) {
4384 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_pvremove_0");
4388 /* InitNone|InitEmpty for test_pvremove_0 */
4390 char device[] = "/dev/sda";
4393 r = guestfs_blockdev_setrw (g, device);
4400 r = guestfs_umount_all (g);
4407 r = guestfs_lvm_remove_all (g);
4411 /* TestOutputListOfDevices for pvremove (0) */
4413 char device[] = "/dev/sda";
4414 char lines_0[] = ",";
4421 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4426 char device[] = "/dev/sda1";
4429 r = guestfs_pvcreate (g, device);
4434 char volgroup[] = "VG";
4435 char physvols_0[] = "/dev/sda1";
4436 char *physvols[] = {
4442 r = guestfs_vgcreate (g, volgroup, physvols);
4447 char logvol[] = "LV1";
4448 char volgroup[] = "VG";
4451 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4456 char logvol[] = "LV2";
4457 char volgroup[] = "VG";
4460 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4465 char vgname[] = "VG";
4468 r = guestfs_vgremove (g, vgname);
4473 char device[] = "/dev/sda1";
4476 r = guestfs_pvremove (g, device);
4484 r = guestfs_lvs (g);
4488 fprintf (stderr, "test_pvremove_0: extra elements returned from command\n");
4492 for (i = 0; r[i] != NULL; ++i)
4499 static int test_pvremove_1_skip (void)
4503 str = getenv ("TEST_ONLY");
4505 return strstr (str, "pvremove") == NULL;
4506 str = getenv ("SKIP_TEST_PVREMOVE_1");
4507 if (str && strcmp (str, "1") == 0) return 1;
4508 str = getenv ("SKIP_TEST_PVREMOVE");
4509 if (str && strcmp (str, "1") == 0) return 1;
4513 static int test_pvremove_1 (void)
4515 if (test_pvremove_1_skip ()) {
4516 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_pvremove_1");
4520 /* InitNone|InitEmpty for test_pvremove_1 */
4522 char device[] = "/dev/sda";
4525 r = guestfs_blockdev_setrw (g, device);
4532 r = guestfs_umount_all (g);
4539 r = guestfs_lvm_remove_all (g);
4543 /* TestOutputListOfDevices for pvremove (1) */
4545 char device[] = "/dev/sda";
4546 char lines_0[] = ",";
4553 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4558 char device[] = "/dev/sda1";
4561 r = guestfs_pvcreate (g, device);
4566 char volgroup[] = "VG";
4567 char physvols_0[] = "/dev/sda1";
4568 char *physvols[] = {
4574 r = guestfs_vgcreate (g, volgroup, physvols);
4579 char logvol[] = "LV1";
4580 char volgroup[] = "VG";
4583 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4588 char logvol[] = "LV2";
4589 char volgroup[] = "VG";
4592 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4597 char vgname[] = "VG";
4600 r = guestfs_vgremove (g, vgname);
4605 char device[] = "/dev/sda1";
4608 r = guestfs_pvremove (g, device);
4616 r = guestfs_vgs (g);
4620 fprintf (stderr, "test_pvremove_1: extra elements returned from command\n");
4624 for (i = 0; r[i] != NULL; ++i)
4631 static int test_pvremove_2_skip (void)
4635 str = getenv ("TEST_ONLY");
4637 return strstr (str, "pvremove") == NULL;
4638 str = getenv ("SKIP_TEST_PVREMOVE_2");
4639 if (str && strcmp (str, "1") == 0) return 1;
4640 str = getenv ("SKIP_TEST_PVREMOVE");
4641 if (str && strcmp (str, "1") == 0) return 1;
4645 static int test_pvremove_2 (void)
4647 if (test_pvremove_2_skip ()) {
4648 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_pvremove_2");
4652 /* InitNone|InitEmpty for test_pvremove_2 */
4654 char device[] = "/dev/sda";
4657 r = guestfs_blockdev_setrw (g, device);
4664 r = guestfs_umount_all (g);
4671 r = guestfs_lvm_remove_all (g);
4675 /* TestOutputListOfDevices for pvremove (2) */
4677 char device[] = "/dev/sda";
4678 char lines_0[] = ",";
4685 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4690 char device[] = "/dev/sda1";
4693 r = guestfs_pvcreate (g, device);
4698 char volgroup[] = "VG";
4699 char physvols_0[] = "/dev/sda1";
4700 char *physvols[] = {
4706 r = guestfs_vgcreate (g, volgroup, physvols);
4711 char logvol[] = "LV1";
4712 char volgroup[] = "VG";
4715 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4720 char logvol[] = "LV2";
4721 char volgroup[] = "VG";
4724 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4729 char vgname[] = "VG";
4732 r = guestfs_vgremove (g, vgname);
4737 char device[] = "/dev/sda1";
4740 r = guestfs_pvremove (g, device);
4748 r = guestfs_pvs (g);
4752 fprintf (stderr, "test_pvremove_2: extra elements returned from command\n");
4756 for (i = 0; r[i] != NULL; ++i)
4763 static int test_vgremove_0_skip (void)
4767 str = getenv ("TEST_ONLY");
4769 return strstr (str, "vgremove") == NULL;
4770 str = getenv ("SKIP_TEST_VGREMOVE_0");
4771 if (str && strcmp (str, "1") == 0) return 1;
4772 str = getenv ("SKIP_TEST_VGREMOVE");
4773 if (str && strcmp (str, "1") == 0) return 1;
4777 static int test_vgremove_0 (void)
4779 if (test_vgremove_0_skip ()) {
4780 printf ("%s skipped (reason: SKIP_TEST_* variable set)\n", "test_vgremove_0");
4784 /* InitNone|InitEmpty for test_vgremove_0 */
4786 char device[] = "/dev/sda";
4789 r = guestfs_blockdev_setrw (g, device);
4796 r = guestfs_umount_all (g);
4803 r = guestfs_lvm_remove_all (g);
4807 /* TestOutputList for vgremove (0) */
4809 char device[] = "/dev/sda";
4810 char lines_0[] = ",";
4817 r = guestfs_sfdisk (g, device, 0, 0, 0, lines);
4822 char device[] = "/dev/sda1";
4825 r = guestfs_pvcreate (g, device);
4830 char volgroup[] = "VG";
4831 char physvols_0[] = "/dev/sda1";
4832 char *physvols[] = {
4838 r = guestfs_vgcreate (g, volgroup, physvols);
4843 char logvol[] = "LV1";
4844 char volgroup[] = "VG";
4847 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4852 char logvol[] = "LV2";
4853 char volgroup[] = "VG";
4856 r = guestfs_lvcreate (g, logvol, volgroup, 50);
4861 char vgname[] = "VG";
4864 r = guestfs_vgremove (g, vgname);
4872 r = guestfs_lvs (g);
4876 fprintf (stderr, "test_vgremove_0: extra elements returned from command\n");
4880 for (i = 0; r[i] != NULL; ++i)
4887 static int test_vgremove_1_skip (void)