[libvirt] [PATCH] Move the expected output data from virshdata/*.txt into virshtest.c.

Jim Meyering jim at meyering.net
Fri Nov 21 08:31:57 UTC 2008


This is mainly just reorganization and factorization, with an eye
towards making it easier to add more tests in virshtest.c later.

>From 21352a07b073d52bcd3c442c76d7fb985aeef845 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering at redhat.com>
Date: Thu, 20 Nov 2008 20:35:57 +0100
Subject: [PATCH] Move the expected output data from virshdata/*.txt into virshtest.c.

* tests/virshtest.c: Embed literal, expected output here, rather than
using virshdata/*.txt file names.
Factor out some common constructs.
(testCompareOutputLit): New function.
(testCompareOutput): #ifdef-out, not that it's unused.
* tests/Makefile.am (SUBDIRS): Remove virshdata/ and all files in it.
* docs/testnode.xml: Fix typo in a comment.
---
 docs/testnode.xml                    |    2 +-
 tests/Makefile.am                    |    2 +-
 tests/virshdata/.cvsignore           |    2 -
 tests/virshdata/.gitignore           |    2 -
 tests/virshdata/Makefile.am          |    2 -
 tests/virshdata/domid-fc4.txt        |    2 -
 tests/virshdata/dominfo-fc4.txt      |   10 --
 tests/virshdata/domname-fc4.txt      |    2 -
 tests/virshdata/domstate-fc4.txt     |    2 -
 tests/virshdata/domuuid-fc4.txt      |    2 -
 tests/virshdata/list-custom.txt      |    5 -
 tests/virshdata/list-default.txt     |    4 -
 tests/virshdata/nodeinfo-custom.txt  |    9 --
 tests/virshdata/nodeinfo-default.txt |    9 --
 tests/virshtest.c                    |  264 ++++++++++++++--------------------
 15 files changed, 111 insertions(+), 208 deletions(-)
 delete mode 100644 tests/virshdata/.cvsignore
 delete mode 100644 tests/virshdata/.gitignore
 delete mode 100644 tests/virshdata/Makefile.am
 delete mode 100644 tests/virshdata/domid-fc4.txt
 delete mode 100644 tests/virshdata/dominfo-fc4.txt
 delete mode 100644 tests/virshdata/domname-fc4.txt
 delete mode 100644 tests/virshdata/domstate-fc4.txt
 delete mode 100644 tests/virshdata/domuuid-fc4.txt
 delete mode 100644 tests/virshdata/list-custom.txt
 delete mode 100644 tests/virshdata/list-default.txt
 delete mode 100644 tests/virshdata/nodeinfo-custom.txt
 delete mode 100644 tests/virshdata/nodeinfo-default.txt

diff --git a/docs/testnode.xml b/docs/testnode.xml
index 7df10b0..be7121d 100644
--- a/docs/testnode.xml
+++ b/docs/testnode.xml
@@ -1,6 +1,6 @@
 <node>
 <!-- This file gives an example config for the mock 'test' backend
-     driver to libvirt. This is intended to allow relible unit testing
+     driver to libvirt. This is intended to allow reliable unit testing
      of applications using libvirt. To use this with virsh, run something
      like:

diff --git a/tests/Makefile.am b/tests/Makefile.am
index 3b4f0dc..bdbf927 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -2,7 +2,7 @@

 SHELL = $(PREFERABLY_POSIX_SHELL)

-SUBDIRS = virshdata confdata sexpr2xmldata \
+SUBDIRS = confdata sexpr2xmldata \
   xml2sexprdata xmconfigdata xencapsdata

 INCLUDES = \
diff --git a/tests/virshdata/.cvsignore b/tests/virshdata/.cvsignore
deleted file mode 100644
index 282522d..0000000
--- a/tests/virshdata/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/tests/virshdata/.gitignore b/tests/virshdata/.gitignore
deleted file mode 100644
index 282522d..0000000
--- a/tests/virshdata/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/tests/virshdata/Makefile.am b/tests/virshdata/Makefile.am
deleted file mode 100644
index c46fc93..0000000
--- a/tests/virshdata/Makefile.am
+++ /dev/null
@@ -1,2 +0,0 @@
-
-EXTRA_DIST = $(wildcard *.txt)
diff --git a/tests/virshdata/domid-fc4.txt b/tests/virshdata/domid-fc4.txt
deleted file mode 100644
index 9a7456b..0000000
--- a/tests/virshdata/domid-fc4.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-2
-
diff --git a/tests/virshdata/dominfo-fc4.txt b/tests/virshdata/dominfo-fc4.txt
deleted file mode 100644
index 0cce9be..0000000
--- a/tests/virshdata/dominfo-fc4.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-Id:             2
-Name:           fc4
-UUID:           ef861801-45b9-11cb-88e3-afbfe5370493
-OS Type:        linux
-State:          running
-CPU(s):         1
-Max memory:     261072 kB
-Used memory:    131072 kB
-Autostart:      disable
-
diff --git a/tests/virshdata/domname-fc4.txt b/tests/virshdata/domname-fc4.txt
deleted file mode 100644
index fd55058..0000000
--- a/tests/virshdata/domname-fc4.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-fc4
-
diff --git a/tests/virshdata/domstate-fc4.txt b/tests/virshdata/domstate-fc4.txt
deleted file mode 100644
index 9c724a4..0000000
--- a/tests/virshdata/domstate-fc4.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-running
-
diff --git a/tests/virshdata/domuuid-fc4.txt b/tests/virshdata/domuuid-fc4.txt
deleted file mode 100644
index face70e..0000000
--- a/tests/virshdata/domuuid-fc4.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-ef861801-45b9-11cb-88e3-afbfe5370493
-
diff --git a/tests/virshdata/list-custom.txt b/tests/virshdata/list-custom.txt
deleted file mode 100644
index 2b48b26..0000000
--- a/tests/virshdata/list-custom.txt
+++ /dev/null
@@ -1,5 +0,0 @@
- Id Name                 State
-----------------------------------
-  1 fv0                  running
-  2 fc4                  running
-
diff --git a/tests/virshdata/list-default.txt b/tests/virshdata/list-default.txt
deleted file mode 100644
index d05095c..0000000
--- a/tests/virshdata/list-default.txt
+++ /dev/null
@@ -1,4 +0,0 @@
- Id Name                 State
-----------------------------------
-  1 test                 running
-
diff --git a/tests/virshdata/nodeinfo-custom.txt b/tests/virshdata/nodeinfo-custom.txt
deleted file mode 100644
index 1e98d63..0000000
--- a/tests/virshdata/nodeinfo-custom.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-CPU model:           i986
-CPU(s):              50
-CPU frequency:       6000 MHz
-CPU socket(s):       4
-Core(s) per socket:  4
-Thread(s) per core:  2
-NUMA cell(s):        4
-Memory size:         8192000 kB
-
diff --git a/tests/virshdata/nodeinfo-default.txt b/tests/virshdata/nodeinfo-default.txt
deleted file mode 100644
index 99d9754..0000000
--- a/tests/virshdata/nodeinfo-default.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-CPU model:           i686
-CPU(s):              16
-CPU frequency:       1400 MHz
-CPU socket(s):       2
-Core(s) per socket:  2
-Thread(s) per core:  2
-NUMA cell(s):        2
-Memory size:         3145728 kB
-
diff --git a/tests/virshtest.c b/tests/virshtest.c
index c9ba6b2..2745df1 100644
--- a/tests/virshtest.c
+++ b/tests/virshtest.c
@@ -12,6 +12,24 @@ static char *progname;
 static char *abs_srcdir;
 #define MAX_FILE 4096

+#define DOM_UUID "ef861801-45b9-11cb-88e3-afbfe5370493"
+
+static const char *dominfo_fc4 = "\
+Id:             2\n\
+Name:           fc4\n\
+UUID:           " DOM_UUID "\n\
+OS Type:        linux\n\
+State:          running\n\
+CPU(s):         1\n\
+Max memory:     261072 kB\n\
+Used memory:    131072 kB\n\
+Autostart:      disable\n\
+\n";
+static const char *domuuid_fc4 = DOM_UUID "\n\n";
+static const char *domid_fc4 = "2\n\n";
+static const char *domname_fc4 = "fc4\n\n";
+static const char *domstate_fc4 = "running\n\n";
+
 static int testFilterLine(char *buffer,
                           const char *toRemove) {
   char *start;
@@ -28,18 +46,10 @@ static int testFilterLine(char *buffer,
   return 0;
 }

-static int testCompareOutput(const char *expect_rel, const char *filter,
-                             const char *const argv[]) {
-  char expectData[MAX_FILE];
+static int testCompareOutputLit(const char *expectData,
+                                const char *filter, const char *const argv[]) {
   char actualData[MAX_FILE];
-  char *expectPtr = &(expectData[0]);
   char *actualPtr = &(actualData[0]);
-  char expect[PATH_MAX];
-
-  snprintf(expect, sizeof expect - 1, "%s/%s", abs_srcdir, expect_rel);
-
-  if (virtTestLoadFile(expect, &expectPtr, MAX_FILE) < 0)
-    return -1;

   if (virtTestCaptureProgramOutput(argv, &actualPtr, MAX_FILE) < 0)
     return -1;
@@ -56,6 +66,21 @@ static int testCompareOutput(const char *expect_rel, const char *filter,
   return 0;
 }

+#if unused
+static int testCompareOutput(const char *expect_rel, const char *filter,
+                             const char *const argv[]) {
+  char expectData[MAX_FILE];
+  char *expectPtr = &(expectData[0]);
+  char expect[PATH_MAX];
+
+  snprintf(expect, sizeof expect - 1, "%s/%s", abs_srcdir, expect_rel);
+
+  if (virtTestLoadFile(expect, &expectPtr, MAX_FILE) < 0)
+    return -1;
+
+  return testCompareOutputLit(expectData, filter, argv);
+}
+#endif

 #define VIRSH_DEFAULT     "../src/virsh", \
     "--connect", \
@@ -67,40 +92,40 @@ static char *custom_uri;
     "--connect", \
     custom_uri

-
-
 static int testCompareListDefault(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_DEFAULT,
-    "list",
-    NULL
-  };
-  return testCompareOutput("virshdata/list-default.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_DEFAULT, "list", NULL };
+  const char *exp = "\
+ Id Name                 State\n\
+----------------------------------\n\
+  1 test                 running\n\
+\n";
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int testCompareListCustom(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "list",
-    NULL
-  };
-  return testCompareOutput("virshdata/list-custom.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "list", NULL };
+  const char *exp = "\
+ Id Name                 State\n\
+----------------------------------\n\
+  1 fv0                  running\n\
+  2 fc4                  running\n\
+\n";
+  return testCompareOutputLit(exp, NULL, argv);
 }

-
 static int testCompareNodeinfoDefault(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_DEFAULT,
-    "nodeinfo",
-    NULL
-  };
-  return testCompareOutput("virshdata/nodeinfo-default.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_DEFAULT, "nodeinfo", NULL };
+  const char *exp = "\
+CPU model:           i686\n\
+CPU(s):              16\n\
+CPU frequency:       1400 MHz\n\
+CPU socket(s):       2\n\
+Core(s) per socket:  2\n\
+Thread(s) per core:  2\n\
+NUMA cell(s):        2\n\
+Memory size:         3145728 kB\n\
+\n";
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int testCompareNodeinfoCustom(const void *data ATTRIBUTE_UNUSED) {
@@ -109,160 +134,89 @@ static int testCompareNodeinfoCustom(const void *data ATTRIBUTE_UNUSED) {
     "nodeinfo",
     NULL
   };
-  return testCompareOutput("virshdata/nodeinfo-custom.txt",
-                           NULL,
-                           argv);
+  const char *exp = "\
+CPU model:           i986\n\
+CPU(s):              50\n\
+CPU frequency:       6000 MHz\n\
+CPU socket(s):       4\n\
+Core(s) per socket:  4\n\
+Thread(s) per core:  2\n\
+NUMA cell(s):        4\n\
+Memory size:         8192000 kB\n\
+\n";
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int testCompareDominfoByID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "dominfo",
-    "2",
-    NULL
-  };
-  return testCompareOutput("virshdata/dominfo-fc4.txt",
-                           "\nCPU time:",
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "dominfo", "2", NULL };
+  const char *exp = dominfo_fc4;
+  return testCompareOutputLit(exp, "\nCPU time:", argv);
 }

-
 static int testCompareDominfoByUUID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "dominfo",
-    "ef861801-45b9-11cb-88e3-afbfe5370493",
-    NULL
-  };
-  return testCompareOutput("virshdata/dominfo-fc4.txt",
-                           "\nCPU time:",
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "dominfo", DOM_UUID, NULL };
+  const char *exp = dominfo_fc4;
+  return testCompareOutputLit(exp, "\nCPU time:", argv);
 }

-
 static int testCompareDominfoByName(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "dominfo",
-    "fc4",
-    NULL
-  };
-  return testCompareOutput("virshdata/dominfo-fc4.txt",
-                           "\nCPU time:",
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "dominfo", "fc4", NULL };
+  const char *exp = dominfo_fc4;
+  return testCompareOutputLit(exp, "\nCPU time:", argv);
 }

-
 static int testCompareDomuuidByID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domuuid",
-    "2",
-    NULL
-  };
-  return testCompareOutput("virshdata/domuuid-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domuuid", "2", NULL };
+  const char *exp = domuuid_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int testCompareDomuuidByName(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domuuid",
-    "fc4",
-    NULL
-  };
-  return testCompareOutput("virshdata/domuuid-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domuuid", "fc4", NULL };
+  const char *exp = domuuid_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int testCompareDomidByName(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domid",
-    "fc4",
-    NULL
-  };
-  return testCompareOutput("virshdata/domid-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domid", "fc4", NULL };
+  const char *exp = domid_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

-
 static int testCompareDomidByUUID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domid",
-    "ef861801-45b9-11cb-88e3-afbfe5370493",
-    NULL
-  };
-  return testCompareOutput("virshdata/domid-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domid", DOM_UUID, NULL };
+  const char *exp = domid_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

-
 static int testCompareDomnameByID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domname",
-    "2",
-    NULL
-  };
-  return testCompareOutput("virshdata/domname-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domname", "2", NULL };
+  const char *exp = domname_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

-
 static int testCompareDomnameByUUID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domname",
-    "ef861801-45b9-11cb-88e3-afbfe5370493",
-    NULL
-  };
-  return testCompareOutput("virshdata/domname-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domname", DOM_UUID, NULL };
+  const char *exp = domname_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int testCompareDomstateByID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domstate",
-    "2",
-    NULL
-  };
-  return testCompareOutput("virshdata/domstate-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domstate", "2", NULL };
+  const char *exp = domstate_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

-
 static int testCompareDomstateByUUID(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domstate",
-    "ef861801-45b9-11cb-88e3-afbfe5370493",
-    NULL
-  };
-  return testCompareOutput("virshdata/domstate-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domstate", DOM_UUID, NULL };
+  const char *exp = domstate_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int testCompareDomstateByName(const void *data ATTRIBUTE_UNUSED) {
-  const char *const argv[] = {
-    VIRSH_CUSTOM,
-    "domstate",
-    "fc4",
-    NULL
-  };
-  return testCompareOutput("virshdata/domstate-fc4.txt",
-                           NULL,
-                           argv);
+  const char *const argv[] = { VIRSH_CUSTOM, "domstate", "fc4", NULL };
+  const char *exp = domstate_fc4;
+  return testCompareOutputLit(exp, NULL, argv);
 }

 static int
--
1.6.0.4.911.gc990




More information about the libvir-list mailing list