The test can return positive value even though it should have failed. It just
returns the value parser returned, which should be flipped back to -1 if
something went wrong or the result was unexpected, but it isn't.
---
tests/virlogtest.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/tests/virlogtest.c b/tests/virlogtest.c
index 4eef4fd..acb0b08 100644
--- a/tests/virlogtest.c
+++ b/tests/virlogtest.c
@@ -47,10 +47,11 @@ static int
testLogParseOutputs(const void *opaque)
{
int ret = -1;
+ int noutputs;
const struct testLogData *data = opaque;
- ret = virLogParseOutputs(data->str);
- if (ret < 0) {
+ noutputs = virLogParseOutputs(data->str);
+ if (noutputs < 0) {
if (!data->pass) {
VIR_TEST_DEBUG("Got expected error: %s\n",
virGetLastErrorMessage());
@@ -58,9 +59,9 @@ testLogParseOutputs(const void *opaque)
ret = 0;
goto cleanup;
}
- } else if (ret != data->count) {
+ } else if (noutputs != data->count) {
VIR_TEST_DEBUG("Expected number of parsed outputs is %d, "
- "but got %d\n", data->count, ret);
+ "but got %d\n", data->count, noutputs);
goto cleanup;
} else if (!data->pass) {
VIR_TEST_DEBUG("Test should have failed\n");
--
2.4.3