From eb05cb0d5c4ab013622a3695bcd60b72eeaa7dfe Mon Sep 17 00:00:00 2001 From: Pavel Hrdina Date: Wed, 25 Mar 2015 15:35:46 +0100 Subject: [PATCH] tests: introduce qemucaps2xmlmock We need to mock virFileExists to return true for "/dev/kvm" because the test should not depend on host system. Signed-off-by: Pavel Hrdina --- tests/Makefile.am | 7 +++++++ tests/qemucaps2xmlmock.c | 33 +++++++++++++++++++++++++++++++++ tests/qemucaps2xmltest.c | 2 +- 3 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 tests/qemucaps2xmlmock.c diff --git a/tests/Makefile.am b/tests/Makefile.am index bd2ea16347..046cd085ce 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -406,6 +406,7 @@ test_libraries = libshunload.la \ if WITH_QEMU test_libraries += libqemumonitortestutils.la \ qemuxml2argvmock.la \ + qemucaps2xmlmock.la \ $(NULL) endif WITH_QEMU @@ -606,6 +607,12 @@ qemucaps2xmltest_SOURCES = \ $(NULL) qemucaps2xmltest_LDADD = $(qemu_LDADDS) $(LDADDS) +qemucaps2xmlmock_la_SOURCES = \ + qemucaps2xmlmock.c +qemucaps2xmlmock_la_CFLAGS = $(AM_CFLAGS) +qemucaps2xmlmock_la_LDFLAGS = -module -avoid-version \ + -rpath /evil/libtool/hack/to/force/shared/lib/creation + qemuagenttest_SOURCES = \ qemuagenttest.c \ testutils.c testutils.h \ diff --git a/tests/qemucaps2xmlmock.c b/tests/qemucaps2xmlmock.c new file mode 100644 index 0000000000..bd6c356abd --- /dev/null +++ b/tests/qemucaps2xmlmock.c @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2015 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + * + * Author: Pavel Hrdina + */ + +#include +#include + +#include "internal.h" +#include "virfile.h" + +bool +virFileExists(const char *path) +{ + if (STREQ(path, "/dev/kvm")) + return true; + return access(path, F_OK) == 0; +} diff --git a/tests/qemucaps2xmltest.c b/tests/qemucaps2xmltest.c index b3975b4afe..fd2056d0a9 100644 --- a/tests/qemucaps2xmltest.c +++ b/tests/qemucaps2xmltest.c @@ -207,4 +207,4 @@ mymain(void) return (ret == 0) ? EXIT_SUCCESS : EXIT_FAILURE; } -VIRT_TEST_MAIN(mymain) +VIRT_TEST_MAIN_PRELOAD(mymain, abs_builddir "/.libs/qemucaps2xmlmock.so")