summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2010-06-03 14:30:36 +0100
committerRichard Jones <rjones@redhat.com>2010-06-03 14:33:59 +0100
commitcbe80b2bcfdee437d195f25aaf6f5d96329ab360 (patch)
tree8754a2e87235fcbfc667b45d2d4a61ca0424a46c
parent8fca8549edb1581448fa45d08d90bad399c5dbfa (diff)
downloadlibguestfs-cbe80b2bcfdee437d195f25aaf6f5d96329ab360.tar.gz
libguestfs-cbe80b2bcfdee437d195f25aaf6f5d96329ab360.tar.xz
libguestfs-cbe80b2bcfdee437d195f25aaf6f5d96329ab360.zip
tests: Factor out common code into 'is_available' function.
This commit is just code motion.
-rwxr-xr-xsrc/generator.ml26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/generator.ml b/src/generator.ml
index 5cd704f4..939f1f60 100755
--- a/src/generator.ml
+++ b/src/generator.ml
@@ -6838,6 +6838,19 @@ static void print_table (char const *const *argv)
}
*/
+static int
+is_available (const char *group)
+{
+ const char *groups[] = { group, NULL };
+ int r;
+
+ suppress_error = 1;
+ r = guestfs_available (g, (char **) groups);
+ suppress_error = 0;
+
+ return r == 0;
+}
+
";
(* Generate a list of commands which are not tested anywhere. *)
@@ -7080,16 +7093,9 @@ static int %s (void)
List.iter (
function
| Optional group ->
- pr " {\n";
- pr " const char *groups[] = { \"%s\", NULL };\n" group;
- pr " int r;\n";
- pr " suppress_error = 1;\n";
- pr " r = guestfs_available (g, (char **) groups);\n";
- pr " suppress_error = 0;\n";
- pr " if (r == -1) {\n";
- pr " printf (\" %%s skipped (reason: group %%s not available in daemon)\\n\", \"%s\", groups[0]);\n" test_name;
- pr " return 0;\n";
- pr " }\n";
+ pr " if (!is_available (\"%s\")) {\n" group;
+ pr " printf (\" %%s skipped (reason: group %%s not available in daemon)\\n\", \"%s\", \"%s\");\n" test_name group;
+ pr " return 0;\n";
pr " }\n";
| _ -> ()
) flags;