提交 814b2ec6 编写于 作者: E Erik Skultety

tests: Slightly tweak virlogtest

Patch adds a generic DO_TEST_FULL macro, some PASS/FAIL macros to better
visually distinguish tests that should fail and tests that should pass. Also,
some cosmetic changes like renames and direct call to fprintf is replaced with
our VIR_TEST_DEBUG macro, as using testutils should be our preferred way of
reporting errors in tests.
上级 c1276177
......@@ -23,20 +23,20 @@
#include "virlog.h"
struct testLogMatchData {
struct testLogData {
const char *str;
bool res;
bool pass;
};
static int
testLogMatch(const void *opaque)
{
const struct testLogMatchData *data = opaque;
const struct testLogData *data = opaque;
bool got = virLogProbablyLogMessage(data->str);
if (got != data->res) {
fprintf(stderr, "Expected '%d' but got '%d' for '%s'\n",
data->res, got, data->str);
if (got != data->pass) {
VIR_TEST_DEBUG("Expected '%d' but got '%d' for '%s'\n",
data->pass, got, data->str);
return -1;
}
return 0;
......@@ -48,18 +48,23 @@ mymain(void)
{
int ret = 0;
#define TEST_LOG_MATCH(str, res) \
do { \
struct testLogMatchData data = { \
str, res \
}; \
if (virtTestRun("testLogMatch " # str, testLogMatch, &data) < 0) \
ret = -1; \
#define DO_TEST_FULL(name, test, str, pass) \
do { \
struct testLogData data = { \
str, pass \
}; \
if (virtTestRun(name, test, &data) < 0) \
ret = -1; \
} while (0)
TEST_LOG_MATCH("2013-10-11 15:43:43.866+0000: 28302: info : libvirt version: 1.1.3", true);
#define TEST_LOG_MATCH_FAIL(str) \
DO_TEST_FULL("testLogMatch " # str, testLogMatch, str, false)
#define TEST_LOG_MATCH(str) \
DO_TEST_FULL("testLogMatch " # str, testLogMatch, str, true)
TEST_LOG_MATCH("libvirt: error : cannot execute binary /usr/libexec/libvirt_lxc: No such file or directory", false);
TEST_LOG_MATCH("2013-10-11 15:43:43.866+0000: 28302: info : libvirt version: 1.1.3");
TEST_LOG_MATCH_FAIL("libvirt: error : cannot execute binary /usr/libexec/libvirt_lxc: No such file or directory");
return ret;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册