diff mbox series

tests/pxe: Test more NICs when running in SPEED=slow mode

Message ID 1505898127-5914-1-git-send-email-thuth@redhat.com
State New
Headers show
Series tests/pxe: Test more NICs when running in SPEED=slow mode | expand

Commit Message

Thomas Huth Sept. 20, 2017, 9:02 a.m. UTC
The pxe-test is a very good test to excercise NICs, thus we should use
it to test all NICs that can be used by the BIOS for booting via network.
However, to avoid that the default testing time increases too much, the
additional NICs are only tested in the "make check SPEED=slow" mode.

The virtio-net NIC on ppc64 is now also only tested in slow mode, since
the test on ppc64 is really quite slow and we've got test coverage for
virtio-net in big endian mode now on s390x, too.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/pxe-test.c | 31 +++++++++++++++++++++----------
 1 file changed, 21 insertions(+), 10 deletions(-)

Comments

Thomas Huth Oct. 12, 2017, 12:27 p.m. UTC | #1
On 20.09.2017 11:02, Thomas Huth wrote:
> The pxe-test is a very good test to excercise NICs, thus we should use
> it to test all NICs that can be used by the BIOS for booting via network.
> However, to avoid that the default testing time increases too much, the
> additional NICs are only tested in the "make check SPEED=slow" mode.
> 
> The virtio-net NIC on ppc64 is now also only tested in slow mode, since
> the test on ppc64 is really quite slow and we've got test coverage for
> virtio-net in big endian mode now on s390x, too.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  tests/pxe-test.c | 31 +++++++++++++++++++++----------
>  1 file changed, 21 insertions(+), 10 deletions(-)
> 
> diff --git a/tests/pxe-test.c b/tests/pxe-test.c
> index 0d70afc..937f29e 100644
> --- a/tests/pxe-test.c
> +++ b/tests/pxe-test.c
> @@ -1,11 +1,12 @@
>  /*
>   * PXE test cases.
>   *
> - * Copyright (c) 2016 Red Hat Inc.
> + * Copyright (c) 2016, 2017 Red Hat Inc.
>   *
>   * Authors:
>   *  Michael S. Tsirkin <mst@redhat.com>,
>   *  Victor Kaplansky <victork@redhat.com>
> + *  Thomas Huth <thuth@redhat.com>
>   *
>   * This work is licensed under the terms of the GNU GPL, version 2 or later.
>   * See the COPYING file in the top-level directory.
> @@ -36,14 +37,14 @@ static void test_pxe_one(const char *params, bool ipv6)
>      g_free(args);
>  }
>  
> -static void test_pxe_e1000(void)
> +static void test_pxe_ipv4(gconstpointer data)
>  {
> -    test_pxe_one("-device e1000,netdev=" NETNAME, false);
> -}
> +    const char *model = data;
> +    char *dev_arg;
>  
> -static void test_pxe_virtio_pci(void)
> -{
> -    test_pxe_one("-device virtio-net-pci,netdev=" NETNAME, false);
> +    dev_arg = g_strdup_printf("-device %s,netdev=" NETNAME, model);
> +    test_pxe_one(dev_arg, false);
> +    g_free(dev_arg);
>  }
>  
>  static void test_pxe_spapr_vlan(void)
> @@ -68,11 +69,21 @@ int main(int argc, char *argv[])
>      g_test_init(&argc, &argv, NULL);
>  
>      if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> -        qtest_add_func("pxe/e1000", test_pxe_e1000);
> -        qtest_add_func("pxe/virtio", test_pxe_virtio_pci);
> +        qtest_add_data_func("pxe/e1000", "e1000", test_pxe_ipv4);
> +        qtest_add_data_func("pxe/virtio", "virtio-net-pci", test_pxe_ipv4);
> +        if (g_test_slow()) {
> +            qtest_add_data_func("pxe/ne2000", "ne2k_pci", test_pxe_ipv4);
> +            qtest_add_data_func("pxe/eepro100", "i82550", test_pxe_ipv4);
> +            qtest_add_data_func("pxe/pcnet", "pcnet", test_pxe_ipv4);
> +            qtest_add_data_func("pxe/rtl8139", "rtl8139", test_pxe_ipv4);
> +            qtest_add_data_func("pxe/vmxnet3", "vmxnet3", test_pxe_ipv4);
> +        }
>      } else if (strcmp(arch, "ppc64") == 0) {
> -        qtest_add_func("pxe/virtio", test_pxe_virtio_pci);
>          qtest_add_func("pxe/spapr-vlan", test_pxe_spapr_vlan);
> +        if (g_test_slow()) {
> +            qtest_add_data_func("pxe/virtio", "virtio-net-pci", test_pxe_ipv4);
> +            qtest_add_data_func("pxe/e1000", "e1000", test_pxe_ipv4);
> +        }
>      } else if (g_str_equal(arch, "s390x")) {
>          qtest_add_func("pxe/virtio-ccw", test_pxe_virtio_ccw);
>      }
> 

Ping?

 Thomas
diff mbox series

Patch

diff --git a/tests/pxe-test.c b/tests/pxe-test.c
index 0d70afc..937f29e 100644
--- a/tests/pxe-test.c
+++ b/tests/pxe-test.c
@@ -1,11 +1,12 @@ 
 /*
  * PXE test cases.
  *
- * Copyright (c) 2016 Red Hat Inc.
+ * Copyright (c) 2016, 2017 Red Hat Inc.
  *
  * Authors:
  *  Michael S. Tsirkin <mst@redhat.com>,
  *  Victor Kaplansky <victork@redhat.com>
+ *  Thomas Huth <thuth@redhat.com>
  *
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
@@ -36,14 +37,14 @@  static void test_pxe_one(const char *params, bool ipv6)
     g_free(args);
 }
 
-static void test_pxe_e1000(void)
+static void test_pxe_ipv4(gconstpointer data)
 {
-    test_pxe_one("-device e1000,netdev=" NETNAME, false);
-}
+    const char *model = data;
+    char *dev_arg;
 
-static void test_pxe_virtio_pci(void)
-{
-    test_pxe_one("-device virtio-net-pci,netdev=" NETNAME, false);
+    dev_arg = g_strdup_printf("-device %s,netdev=" NETNAME, model);
+    test_pxe_one(dev_arg, false);
+    g_free(dev_arg);
 }
 
 static void test_pxe_spapr_vlan(void)
@@ -68,11 +69,21 @@  int main(int argc, char *argv[])
     g_test_init(&argc, &argv, NULL);
 
     if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
-        qtest_add_func("pxe/e1000", test_pxe_e1000);
-        qtest_add_func("pxe/virtio", test_pxe_virtio_pci);
+        qtest_add_data_func("pxe/e1000", "e1000", test_pxe_ipv4);
+        qtest_add_data_func("pxe/virtio", "virtio-net-pci", test_pxe_ipv4);
+        if (g_test_slow()) {
+            qtest_add_data_func("pxe/ne2000", "ne2k_pci", test_pxe_ipv4);
+            qtest_add_data_func("pxe/eepro100", "i82550", test_pxe_ipv4);
+            qtest_add_data_func("pxe/pcnet", "pcnet", test_pxe_ipv4);
+            qtest_add_data_func("pxe/rtl8139", "rtl8139", test_pxe_ipv4);
+            qtest_add_data_func("pxe/vmxnet3", "vmxnet3", test_pxe_ipv4);
+        }
     } else if (strcmp(arch, "ppc64") == 0) {
-        qtest_add_func("pxe/virtio", test_pxe_virtio_pci);
         qtest_add_func("pxe/spapr-vlan", test_pxe_spapr_vlan);
+        if (g_test_slow()) {
+            qtest_add_data_func("pxe/virtio", "virtio-net-pci", test_pxe_ipv4);
+            qtest_add_data_func("pxe/e1000", "e1000", test_pxe_ipv4);
+        }
     } else if (g_str_equal(arch, "s390x")) {
         qtest_add_func("pxe/virtio-ccw", test_pxe_virtio_ccw);
     }