qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: qemu-devel@nongnu.org
Cc: Peter Maydell <peter.maydell@linaro.org>,
	Pierrick Bouvier <pierrick.bouvier@linaro.org>
Subject: [PULL 08/44] tests/functional: Convert the powernv tests from boot_linux_console.py
Date: Wed, 25 Sep 2024 13:09:49 +0200	[thread overview]
Message-ID: <20240925111029.24082-9-thuth@redhat.com> (raw)
In-Reply-To: <20240925111029.24082-1-thuth@redhat.com>

Move the tests into the already existing test_ppc64_powernv.py
file.

Message-ID: <20240920150319.81723-1-thuth@redhat.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/avocado/boot_linux_console.py    | 46 --------------------------
 tests/functional/test_ppc64_powernv.py | 42 +++++++++++++++++++++--
 2 files changed, 39 insertions(+), 49 deletions(-)

diff --git a/tests/avocado/boot_linux_console.py b/tests/avocado/boot_linux_console.py
index 759fda9cc8..23d1b3587b 100644
--- a/tests/avocado/boot_linux_console.py
+++ b/tests/avocado/boot_linux_console.py
@@ -907,49 +907,3 @@ def test_arm_ast2600_debian(self):
         self.wait_for_console_pattern("SMP: Total of 2 processors activated")
         self.wait_for_console_pattern("No filesystem could mount root")
 
-    def do_test_ppc64_powernv(self, proc):
-        self.require_accelerator("tcg")
-        images_url = ('https://github.com/open-power/op-build/releases/download/v2.7/')
-
-        kernel_url = images_url + 'zImage.epapr'
-        kernel_hash = '0ab237df661727e5392cee97460e8674057a883c5f74381a128fa772588d45cd'
-        kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash,
-                                       algorithm='sha256')
-        self.vm.set_console()
-        self.vm.add_args('-kernel', kernel_path,
-                         '-append', 'console=tty0 console=hvc0',
-                         '-device', 'pcie-pci-bridge,id=bridge1,bus=pcie.1,addr=0x0',
-                         '-device', 'nvme,bus=pcie.2,addr=0x0,serial=1234',
-                         '-device', 'e1000e,bus=bridge1,addr=0x3',
-                         '-device', 'nec-usb-xhci,bus=bridge1,addr=0x2')
-        self.vm.launch()
-
-        self.wait_for_console_pattern("CPU: " + proc + " generation processor")
-        self.wait_for_console_pattern("zImage starting: loaded")
-        self.wait_for_console_pattern("Run /init as init process")
-        # Device detection output driven by udev probing is sometimes cut off
-        # from console output, suspect S14silence-console init script.
-
-    def test_ppc_powernv8(self):
-        """
-        :avocado: tags=arch:ppc64
-        :avocado: tags=machine:powernv8
-        :avocado: tags=accel:tcg
-        """
-        self.do_test_ppc64_powernv('P8')
-
-    def test_ppc_powernv9(self):
-        """
-        :avocado: tags=arch:ppc64
-        :avocado: tags=machine:powernv9
-        :avocado: tags=accel:tcg
-        """
-        self.do_test_ppc64_powernv('P9')
-
-    def test_ppc_powernv10(self):
-        """
-        :avocado: tags=arch:ppc64
-        :avocado: tags=machine:powernv10
-        :avocado: tags=accel:tcg
-        """
-        self.do_test_ppc64_powernv('P10')
diff --git a/tests/functional/test_ppc64_powernv.py b/tests/functional/test_ppc64_powernv.py
index 67497d6404..685e2178ed 100755
--- a/tests/functional/test_ppc64_powernv.py
+++ b/tests/functional/test_ppc64_powernv.py
@@ -7,10 +7,10 @@
 # This work is licensed under the terms of the GNU GPL, version 2 or
 # later.  See the COPYING file in the top-level directory.
 
-from qemu_test import QemuSystemTest, Asset
+from qemu_test import LinuxKernelTest, Asset
 from qemu_test import wait_for_console_pattern
 
-class powernvMachine(QemuSystemTest):
+class powernvMachine(LinuxKernelTest):
 
     timeout = 90
     KERNEL_COMMON_COMMAND_LINE = 'printk.time=0 console=hvc0 '
@@ -78,5 +78,41 @@ def test_linux_big_boot(self):
         wait_for_console_pattern(self, console_pattern, self.panic_message)
         wait_for_console_pattern(self, self.good_message, self.panic_message)
 
+
+    ASSET_EPAPR_KERNEL = Asset(
+        ('https://github.com/open-power/op-build/releases/download/v2.7/'
+         'zImage.epapr'),
+        '0ab237df661727e5392cee97460e8674057a883c5f74381a128fa772588d45cd')
+
+    def do_test_ppc64_powernv(self, proc):
+        self.require_accelerator("tcg")
+        kernel_path = self.ASSET_EPAPR_KERNEL.fetch()
+        self.vm.set_console()
+        self.vm.add_args('-kernel', kernel_path,
+                         '-append', 'console=tty0 console=hvc0',
+                         '-device', 'pcie-pci-bridge,id=bridge1,bus=pcie.1,addr=0x0',
+                         '-device', 'nvme,bus=pcie.2,addr=0x0,serial=1234',
+                         '-device', 'e1000e,bus=bridge1,addr=0x3',
+                         '-device', 'nec-usb-xhci,bus=bridge1,addr=0x2')
+        self.vm.launch()
+
+        self.wait_for_console_pattern("CPU: " + proc + " generation processor")
+        self.wait_for_console_pattern("zImage starting: loaded")
+        self.wait_for_console_pattern("Run /init as init process")
+        # Device detection output driven by udev probing is sometimes cut off
+        # from console output, suspect S14silence-console init script.
+
+    def test_powernv8(self):
+        self.set_machine('powernv8')
+        self.do_test_ppc64_powernv('P8')
+
+    def test_powernv9(self):
+        self.set_machine('powernv9')
+        self.do_test_ppc64_powernv('P9')
+
+    def test_powernv10(self):
+        self.set_machine('powernv10')
+        self.do_test_ppc64_powernv('P10')
+
 if __name__ == '__main__':
-    QemuSystemTest.main()
+    LinuxKernelTest.main()
-- 
2.46.0



  parent reply	other threads:[~2024-09-25 11:13 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-25 11:09 [PULL 00/44] Functional test conversion, and assert(0) cleanup Thomas Huth
2024-09-25 11:09 ` [PULL 01/44] tests/functional/qemu_test: Add a function for launching kernels more easily Thomas Huth
2024-09-25 11:09 ` [PULL 02/44] tests/functional: Convert the vexpressa9 Avocado test Thomas Huth
2024-09-30 16:47   ` Peter Maydell
2024-09-30 17:21     ` Thomas Huth
2024-09-25 11:09 ` [PULL 03/44] tests/functional: Convert the xtensa lx60 " Thomas Huth
2024-09-25 11:09 ` [PULL 04/44] tests/functional: Convert the SPARCStation " Thomas Huth
2024-09-25 11:09 ` [PULL 05/44] tests/functional: Convert the e500 ppc64 " Thomas Huth
2024-09-25 11:09 ` [PULL 06/44] tests/functional: Convert the mac ppc Avocado tests Thomas Huth
2024-09-25 11:09 ` [PULL 07/44] tests/functional: Convert the r2d sh4 Avocado test Thomas Huth
2024-09-25 11:09 ` Thomas Huth [this message]
2024-09-25 11:09 ` [PULL 09/44] hw/acpi: replace assert(0) with g_assert_not_reached() Thomas Huth
2024-09-25 11:09 ` [PULL 10/44] hw/arm: " Thomas Huth
2024-09-25 11:09 ` [PULL 11/44] hw/net: " Thomas Huth
2024-09-25 11:09 ` [PULL 12/44] migration: " Thomas Huth
2024-09-25 11:09 ` [PULL 13/44] qobject: " Thomas Huth
2024-09-25 11:09 ` [PULL 14/44] target/ppc: " Thomas Huth
2024-09-25 11:09 ` [PULL 15/44] block: replace assert(false) " Thomas Huth
2024-09-25 11:09 ` [PULL 16/44] hw/hyperv: " Thomas Huth
2024-09-25 11:09 ` [PULL 17/44] hw/net: " Thomas Huth
2024-09-25 11:09 ` [PULL 18/44] hw/nvme: " Thomas Huth
2024-09-25 11:10 ` [PULL 19/44] hw/pci: " Thomas Huth
2024-09-25 11:10 ` [PULL 20/44] hw/ppc: " Thomas Huth
2024-09-25 11:10 ` [PULL 21/44] migration: " Thomas Huth
2024-09-25 11:10 ` [PULL 22/44] target/i386/kvm: " Thomas Huth
2024-09-25 11:10 ` [PULL 23/44] accel/tcg: remove break after g_assert_not_reached() Thomas Huth
2024-09-25 11:10 ` [PULL 24/44] block: " Thomas Huth
2024-09-25 11:10 ` [PULL 25/44] hw/acpi: " Thomas Huth
2024-09-25 11:10 ` [PULL 26/44] hw/net: " Thomas Huth
2024-09-25 11:10 ` [PULL 27/44] hw/scsi: " Thomas Huth
2024-09-25 11:10 ` [PULL 28/44] hw/tpm: " Thomas Huth
2024-09-25 11:10 ` [PULL 29/44] target/arm: " Thomas Huth
2024-09-25 11:10 ` [PULL 30/44] target/riscv: " Thomas Huth
2024-09-25 11:10 ` [PULL 31/44] fpu: " Thomas Huth
2024-09-25 11:10 ` [PULL 32/44] tcg/loongarch64: " Thomas Huth
2024-09-25 11:10 ` [PULL 33/44] include/qemu: remove return " Thomas Huth
2024-09-25 11:10 ` [PULL 34/44] hw/hyperv: " Thomas Huth
2024-09-25 11:10 ` [PULL 35/44] hw/net: " Thomas Huth
2024-09-25 11:10 ` [PULL 36/44] hw/pci: " Thomas Huth
2024-09-25 11:10 ` [PULL 37/44] hw/ppc: " Thomas Huth
2024-09-25 11:10 ` [PULL 38/44] migration: " Thomas Huth
2024-09-25 11:10 ` [PULL 39/44] qobject: " Thomas Huth
2024-09-25 11:10 ` [PULL 40/44] qom: " Thomas Huth
2024-09-25 11:10 ` [PULL 41/44] tests/qtest: " Thomas Huth
2024-09-25 11:10 ` [PULL 42/44] scripts/checkpatch.pl: emit error when using assert(false) Thomas Huth
2024-09-25 11:10 ` [PULL 43/44] .gitlab-ci.d: Split build and test in cross build job templates Thomas Huth
2024-09-25 11:10 ` [PULL 44/44] .gitlab-ci.d: Make separate collapsible log sections for build and test Thomas Huth
2024-09-25 17:24 ` [PULL 00/44] Functional test conversion, and assert(0) cleanup Pierrick Bouvier
2024-09-28 13:37 ` Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240925111029.24082-9-thuth@redhat.com \
    --to=thuth@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=pierrick.bouvier@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).