[libvirt] [PATCH] tests: Fix detection of expected errors
Jiri Denemark
jdenemar at redhat.com
Mon Nov 29 13:14:52 UTC 2010
---
tests/nwfilterxml2xmltest.c | 15 +++++----------
tests/qemuxml2argvtest.c | 8 +++-----
2 files changed, 8 insertions(+), 15 deletions(-)
diff --git a/tests/nwfilterxml2xmltest.c b/tests/nwfilterxml2xmltest.c
index 070aa98..9cad913 100644
--- a/tests/nwfilterxml2xmltest.c
+++ b/tests/nwfilterxml2xmltest.c
@@ -25,7 +25,7 @@ static char *abs_srcdir;
static int testCompareXMLToXMLFiles(const char *inxml,
const char *outxml,
- bool expect_warning) {
+ bool expect_error) {
char inXmlData[MAX_FILE];
char *inXmlPtr = &(inXmlData[0]);
char outXmlData[MAX_FILE];
@@ -33,26 +33,21 @@ static int testCompareXMLToXMLFiles(const char *inxml,
char *actual = NULL;
int ret = -1;
virNWFilterDefPtr dev = NULL;
- char *log;
if (virtTestLoadFile(inxml, &inXmlPtr, MAX_FILE) < 0)
goto fail;
if (virtTestLoadFile(outxml, &outXmlPtr, MAX_FILE) < 0)
goto fail;
- if (!(dev = virNWFilterDefParseString(NULL, inXmlData)))
- goto fail;
+ virResetLastError();
- if ((log = virtTestLogContentAndReset()) == NULL)
+ if (!(dev = virNWFilterDefParseString(NULL, inXmlData)))
goto fail;
- if ((*log != '\0') != expect_warning) {
- free(log);
+ if (!!virGetLastError() != expect_error)
goto fail;
- }
- free(log);
- if (expect_warning) {
+ if (expect_error) {
/* need to suppress the errors */
virResetLastError();
}
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
index b149ef4..c5e0448 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
@@ -84,6 +84,7 @@ static int testCompareXMLToArgvFiles(const char *xml,
free(virtTestLogContentAndReset());
+ virResetLastError();
if (qemudBuildCommandLine(conn, &driver,
vmdef, &monitor_chr, 0, flags,
@@ -91,11 +92,8 @@ static int testCompareXMLToArgvFiles(const char *xml,
NULL, NULL, migrateFrom, NULL) < 0)
goto fail;
- if ((log = virtTestLogContentAndReset()) == NULL)
- goto fail;
-
- if (!!strstr(log, ": error :") != expectError) {
- if (virTestGetDebug())
+ if (!!virGetLastError() != expectError) {
+ if (virTestGetDebug() && (log = virtTestLogContentAndReset()))
fprintf(stderr, "\n%s", log);
goto fail;
}
--
1.7.3.2
More information about the libvir-list
mailing list