diff --git a/tests/Makefile.am b/tests/Makefile.am index 30cdd1d70b1bb69c1181dd065e6c90739e6735b4..eb96f3899486d22a78a7d8032b126023f8a98efe 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -325,6 +325,7 @@ test_libraries = libshunload.la \ virnetserverclientmock.la \ vircgroupmock.la \ virpcimock.la \ + qemuxml2argvmock.la \ $(NULL) if WITH_QEMU test_libraries += libqemumonitortestutils.la @@ -441,6 +442,12 @@ qemuxml2argvtest_SOURCES = \ testutils.c testutils.h qemuxml2argvtest_LDADD = $(qemu_LDADDS) $(LIBXML_LIBS) +qemuxml2argvmock_la_SOURCES = \ + qemuxml2argvmock.c +qemuxml2argvmock_la_CFLAGS = $(AM_CFLAGS) +qemuxml2argvmock_la_LDFLAGS = -module -avoid-version \ + -rpath /evil/libtool/hack/to/force/shared/lib/creation + qemuxml2xmltest_SOURCES = \ qemuxml2xmltest.c testutilsqemu.c testutilsqemu.h \ testutils.c testutils.h diff --git a/tests/qemuxml2argvdata/qemuxml2argv-clock-localtime-basis-localtime.args b/tests/qemuxml2argvdata/qemuxml2argv-clock-localtime-basis-localtime.args new file mode 100644 index 0000000000000000000000000000000000000000..24fe89ca5faf93b0692e6e7d3621189e83b8fbfb --- /dev/null +++ b/tests/qemuxml2argvdata/qemuxml2argv-clock-localtime-basis-localtime.args @@ -0,0 +1,5 @@ +LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none \ +/usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic \ +-monitor unix:/tmp/test-monitor,server,nowait -rtc base=2009-02-14T01:31:30 \ +-no-acpi -boot c -usb -hda /dev/HostVG/QEMUGuest1 -net none -serial none \ +-parallel none diff --git a/tests/qemuxml2argvdata/qemuxml2argv-clock-localtime-basis-localtime.xml b/tests/qemuxml2argvdata/qemuxml2argv-clock-localtime-basis-localtime.xml new file mode 100644 index 0000000000000000000000000000000000000000..91d57b95434d1c3067181fb0818e877643bf2eea --- /dev/null +++ b/tests/qemuxml2argvdata/qemuxml2argv-clock-localtime-basis-localtime.xml @@ -0,0 +1,28 @@ + + QEMUGuest1 + 1c15a1f6-f4f0-4d3c-9002-667ddb458736 + 219100 + 219100 + 1 + + hvm + + + + destroy + restart + destroy + + /usr/bin/qemu + + + + +
+ + + + + + + diff --git a/tests/qemuxml2argvdata/qemuxml2argv-clock-variable.args b/tests/qemuxml2argvdata/qemuxml2argv-clock-variable.args index d67fbf5d29238bc49363b91cde557c6dd8685378..3b7ebdaae7759ff25c516c7a937b41071992c0b9 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-clock-variable.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-clock-variable.args @@ -1,5 +1,5 @@ LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none \ /usr/bin/qemu -S -M \ pc -m 214 -smp 1 -nographic -monitor unix:/tmp/test-monitor,server,nowait -rtc \ -base=2010-2-2T18:22:10 -no-acpi -boot c -usb -hda /dev/HostVG/QEMUGuest1 -net none \ --serial none -parallel none +base=2009-02-15T09:49:06 -no-acpi -boot c -usb -hda /dev/HostVG/QEMUGuest1 \ +-net none -serial none -parallel none diff --git a/tests/qemuxml2argvmock.c b/tests/qemuxml2argvmock.c new file mode 100644 index 0000000000000000000000000000000000000000..ed9fb13e22328e875acba79932c86a4fa5229fdb --- /dev/null +++ b/tests/qemuxml2argvmock.c @@ -0,0 +1,37 @@ +/* + * Copyright (C) 2014 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: Michal Privoznik + */ + +#include + +#ifdef __linux__ +# include "internal.h" +# include + +time_t time(time_t *t) +{ + const time_t ret = 1234567890; + if (t) + *t = ret; + return ret; +} + +#else +/* Nothing to override on non-__linux__ platforms */ +#endif diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index a25264e8e0c64ea90d8222b3a5e6f5f60d533196..c8b385722489abb731320ad184847eff2033e102 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -618,10 +618,8 @@ mymain(void) DO_TEST("bios", QEMU_CAPS_DEVICE, QEMU_CAPS_SGA); DO_TEST("clock-utc", NONE); DO_TEST("clock-localtime", NONE); - /* - * Can't be enabled since the absolute timestamp changes every time + DO_TEST("clock-localtime-basis-localtime", QEMU_CAPS_RTC); DO_TEST("clock-variable", QEMU_CAPS_RTC); - */ DO_TEST("clock-france", QEMU_CAPS_RTC); DO_TEST("clock-hpet-off", QEMU_CAPS_RTC, QEMU_CAPS_NO_HPET, QEMU_CAPS_NO_KVM_PIT); @@ -1335,7 +1333,7 @@ mymain(void) return ret==0 ? EXIT_SUCCESS : EXIT_FAILURE; } -VIRT_TEST_MAIN(mymain) +VIRT_TEST_MAIN_PRELOAD(mymain, abs_builddir "/.libs/qemuxml2argvmock.so") #else