diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2019-03-29 11:16:46 +0100 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2019-03-29 11:16:46 +0100 |
commit | 10cdb68c0af7d9ba2d8dd8f064978a584560cce2 (patch) | |
tree | 98d86eeb87ee35abab22ee16950da169c9c99add | |
parent | 9ab4f60f575da52d14b9b84e3ba811b58be33276 (diff) | |
download | drminfo-10cdb68c0af7d9ba2d8dd8f064978a584560cce2.tar.gz |
misc test tweaks
-rw-r--r-- | tests/basic.py | 47 | ||||
-rw-r--r-- | tests/drminfo/__init__.py | 11 | ||||
-rw-r--r-- | tests/edid.py | 11 |
3 files changed, 44 insertions, 25 deletions
diff --git a/tests/basic.py b/tests/basic.py index 5ba64dc..ffb7757 100644 --- a/tests/basic.py +++ b/tests/basic.py @@ -19,11 +19,13 @@ class BaseDRM(TestDRM): """ checksums = { + 'AR24' : 'adf315fe78e8f7e2947d65158545b4d3', 'XR24' : '661a70b8dca5436443ce09014e6c326c', + 'BX24' : '0ab929a5c0ccd0123c6a64fe6fdcc24f', 'RG16' : '0dcbe8573e0bf44bb7363cd22639f3b9', } - def run_one_test(self, vga): + def common_tests(self, vga, display = None): modes = [ "800x600", "1024x768", @@ -32,7 +34,7 @@ class BaseDRM(TestDRM): "1920x1080", ] - self.boot_gfx_vm(vga); + self.boot_gfx_vm(vga, display); self.console_prepare(); self.console_run('drminfo -a') @@ -71,15 +73,6 @@ class BaseDRM(TestDRM): if mcount == 0: self.fail("no drm modes"); - if vga == 'virtio-vga': - self.console_run('virtiotest -i') - self.console_wait('---root---') - - self.console_run('virtiotest -a -s 10') - self.console_wait('---ok---', '---root---', 'virtiotest error') - self.screen_dump(vga, 'virtio') - self.console_wait('---root---') - self.console_run('fbinfo') fbinfo = self.console_wait('---root---') self.write_text(vga, "fbinfo", fbinfo) @@ -89,6 +82,16 @@ class BaseDRM(TestDRM): self.screen_dump(vga, 'fbdev') self.console_wait('---root---') + def virtio_tests(self, vga): + self.console_run('virtiotest -i') + virtinfo = self.console_wait('---root---') + self.write_text(vga, "virtio", virtinfo) + + self.console_run('virtiotest -a -s 10') + self.console_wait('---ok---', '---root---', 'virtiotest error') + self.screen_dump(vga, 'virtio') + self.console_wait('---root---') + @avocado.skipUnless(os.path.exists('/usr/bin/dracut'), "no dracut") @avocado.skipUnless(os.path.exists('/usr/bin/drminfo'), "no drminfo") @avocado.skipUnless(os.path.exists('/usr/bin/edid-decode'), "no edid-decode") @@ -98,13 +101,25 @@ class BaseDRM(TestDRM): self.prepare_kernel_initrd() def test_stdvga(self): - self.run_one_test('VGA') + self.common_tests('VGA') def test_cirrus(self): - self.run_one_test('cirrus-vga') + self.common_tests('cirrus-vga') + + def test_qxl_vga(self): + self.common_tests('qxl-vga') def test_qxl(self): - self.run_one_test('qxl-vga') + self.common_tests('qxl') + + def test_virtio_vga(self): + self.common_tests('virtio-vga') + self.virtio_tests('virtio-vga') + + def test_virtio_gpu(self): + self.common_tests('virtio-gpu-pci') + self.virtio_tests('virtio-gpu-pci') - def test_virtio(self): - self.run_one_test('virtio-vga') + def test_virgl(self): + self.common_tests('virtio-vga', 'egl-headless') + self.virtio_tests('virtio-vga') diff --git a/tests/drminfo/__init__.py b/tests/drminfo/__init__.py index d92d969..506956b 100644 --- a/tests/drminfo/__init__.py +++ b/tests/drminfo/__init__.py @@ -79,7 +79,7 @@ class TestDRM(avocado.Test): cmdline += " \"%s\" \"%s\"" % (self.initrd, kversion) run(cmdline) - def boot_gfx_vm(self, vga): + def boot_gfx_vm(self, vga, display = None): append = "console=ttyS0" self.log.info("### boot kernel with display device \"%s\"" % vga) @@ -87,11 +87,12 @@ class TestDRM(avocado.Test): self.vm.set_console() self.vm.add_args('-enable-kvm') self.vm.add_args('-m', '1G') - self.vm.add_args('-vga', 'none') - self.vm.add_args('-device', vga) self.vm.add_args('-kernel', self.kernel) self.vm.add_args('-initrd', self.initrd) self.vm.add_args('-append', append) + self.vm.add_args('-device', vga) + if not display is None: + self.vm.add_args('-display', display) self.vm.launch() self.rconsole = self.vm.console_socket.makefile('r') @@ -145,7 +146,7 @@ class TestDRM(avocado.Test): return output def screen_dump(self, vga, name, expected = None): - if vga == 'qxl-vga': + if vga == 'qxl-vga' or vga == 'qxl': self.vm.qmp('screendump', filename = '/dev/null'); time.sleep(0.1) out_ppm = '%s/%s-%s.ppm' % (self.outputdir, name, vga) @@ -158,7 +159,7 @@ class TestDRM(avocado.Test): if not expected is None: self.log.debug("expected: %s" % expected) if checksum != expected: - self.warn("checksum mismatch") + self.log.warning("checksum mismatch") if os.path.isfile("/usr/bin/convert"): run("/usr/bin/convert %s %s" % (out_ppm, out_jpg)) os.remove(out_ppm) diff --git a/tests/edid.py b/tests/edid.py index 564c3bb..10943ae 100644 --- a/tests/edid.py +++ b/tests/edid.py @@ -20,7 +20,7 @@ class EDID(TestDRM): :avocado: tags=x86_64 """ - def run_one_test(self, vga): + def run_edid_test(self, vga): self.boot_gfx_vm(vga); self.console_prepare(); @@ -41,7 +41,10 @@ class EDID(TestDRM): self.prepare_kernel_initrd() def test_stdvga(self): - self.run_one_test('VGA,edid=on') + self.run_edid_test('VGA,edid=on') - def test_virtio(self): - self.run_one_test('virtio-vga,edid=on') + def test_virtio_vga(self): + self.run_edid_test('virtio-vga,edid=on') + + def test_virtio_gpu(self): + self.run_edid_test('virtio-gpu-pci,edid=on') |