tests: Add eepro100 qtest
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de>
This commit is contained in:
parent
85f68d552b
commit
92838a19c1
@ -72,6 +72,8 @@ gcov-files-pci-y += hw/net/rtl8139.c
|
||||
check-qtest-pci-y += tests/pcnet-test$(EXESUF)
|
||||
gcov-files-pci-y += hw/net/pcnet.c
|
||||
gcov-files-pci-y += hw/net/pcnet-pci.c
|
||||
check-qtest-pci-y += tests/eepro100-test$(EXESUF)
|
||||
gcov-files-pci-y += hw/net/eepro100.c
|
||||
|
||||
check-qtest-i386-y = tests/endianness-test$(EXESUF)
|
||||
check-qtest-i386-y += tests/fdc-test$(EXESUF)
|
||||
@ -214,6 +216,7 @@ tests/fw_cfg-test$(EXESUF): tests/fw_cfg-test.o $(libqos-pc-obj-y)
|
||||
tests/e1000-test$(EXESUF): tests/e1000-test.o
|
||||
tests/rtl8139-test$(EXESUF): tests/rtl8139-test.o
|
||||
tests/pcnet-test$(EXESUF): tests/pcnet-test.o
|
||||
tests/eepro100-test$(EXESUF): tests/eepro100-test.o
|
||||
tests/vmxnet3-test$(EXESUF): tests/vmxnet3-test.o
|
||||
tests/qom-test$(EXESUF): tests/qom-test.o
|
||||
tests/blockdev-test$(EXESUF): tests/blockdev-test.o $(libqos-pc-obj-y)
|
||||
|
63
tests/eepro100-test.c
Normal file
63
tests/eepro100-test.c
Normal file
@ -0,0 +1,63 @@
|
||||
/*
|
||||
* QTest testcase for eepro100 NIC
|
||||
*
|
||||
* Copyright (c) 2013-2014 SUSE LINUX Products GmbH
|
||||
*
|
||||
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
||||
* See the COPYING file in the top-level directory.
|
||||
*/
|
||||
|
||||
#include <glib.h>
|
||||
#include <string.h>
|
||||
#include "libqtest.h"
|
||||
#include "qemu/osdep.h"
|
||||
|
||||
static void test_device(gconstpointer data)
|
||||
{
|
||||
const char *model = data;
|
||||
QTestState *s;
|
||||
char *args;
|
||||
|
||||
args = g_strdup_printf("-device %s", model);
|
||||
s = qtest_start(args);
|
||||
|
||||
/* Tests only initialization so far. TODO: Implement functional tests */
|
||||
|
||||
if (s) {
|
||||
qtest_quit(s);
|
||||
}
|
||||
g_free(args);
|
||||
}
|
||||
|
||||
static const char *models[] = {
|
||||
"i82550",
|
||||
"i82551",
|
||||
"i82557a",
|
||||
"i82557b",
|
||||
"i82557c",
|
||||
"i82558a",
|
||||
"i82558b",
|
||||
"i82559a",
|
||||
"i82559b",
|
||||
"i82559c",
|
||||
"i82559er",
|
||||
"i82562",
|
||||
"i82801",
|
||||
};
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int i;
|
||||
|
||||
g_test_init(&argc, &argv, NULL);
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(models); i++) {
|
||||
char *path;
|
||||
|
||||
path = g_strdup_printf("/%s/eepro100/%s",
|
||||
qtest_get_arch(), models[i]);
|
||||
g_test_add_data_func(path, models[i], test_device);
|
||||
}
|
||||
|
||||
return g_test_run();
|
||||
}
|
Loading…
Reference in New Issue
Block a user