Message ID | 20191010122128.29000-3-f4bug@amsat.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/acceptance: Add tests for the PA-RISC machine | expand |
On 10/10/19 9:21 AM, Philippe Mathieu-Daudé wrote: > Add a test which boots a HP-UX firmware upgrade CD-ROM. > It exercise the PCI LSI53C895A SCSI controller. > > The ISO image comes from: > https://web.archive.org/web/20101204061612/http://ftp.parisc-linux.org/kernels/712/PF_C7120023 > > This test is very quick, less than 3s: > > $ avocado --show=app,console run -t arch:hppa tests/acceptance/boot_linux_console.py > console: Firmware Version 6.1 > console: Duplex Console IO Dependent Code (IODC) revision 1 > console: Memory Test/Initialization Completed > console: ------------------------------------------------------------------------------ > console: (c) Copyright 2017-2018 Helge Deller <deller@gmx.de> and SeaBIOS developers. > console: ------------------------------------------------------------------------------ > console: Processor Speed State Coprocessor State Cache Size > console: --------- -------- --------------------- ----------------- ---------- > console: 0 250 MHz Active Functional 0 KB > console: Available memory: 512 MB > console: Good memory required: 16 MB > console: Primary boot path: FWSCSI.0.0 > console: Alternate boot path: FWSCSI.2.0 > console: Console path: SERIAL_1.9600.8.none > console: Keyboard path: PS2 > console: Available boot devices: > console: 1. DVD/CD [lsi 00:00.0 2:0 Drive QEMU QEMU CD-ROM 2.5+] > console: Booting from DVD/CD [lsi 00:00.0 2:0 Drive QEMU QEMU CD-ROM 2.5+] > console: Booting... > console: Boot IO Dependent Code (IODC) revision 153 > console: HARD Booted. > console: ISL Revision A.00.25 November 18, 1992 > console: ISL booting ODE UPDATE ; stable off ; RUN > console: Loading... > console: *************************************************************************** > console: ****** ****** > console: ****** Offline Diagnostic Environment ****** > console: ****** ****** > console: ****** (C) Copyright Hewlett-Packard Co 1993 ****** > console: ****** All Rights Reserved ****** > console: ****** ****** > console: ****** HP shall not be liable for any damages resulting from the ****** > console: ****** use of this program. ****** > console: ****** ****** > console: ****** TC Version A.00.15 ****** > console: ****** SysLib Version A.00.44 ****** > console: ****** ****** > console: *************************************************************************** > console: Type HELP for command information. > console: ISL_CMD> UPDATE ; stable off ; RUN > console: *************************************************************************** > console: ****** ****** > console: ****** PDC UPDATER ****** > console: ****** ****** > console: ****** Copyright (C) 1993, 1994, 1995 by Hewlett-Packard Company ****** > console: ****** Version A.00.19 ****** > console: ****** ****** > console: *************************************************************************** > console: Type HELP for command information. > console: Stable Storage will NOT be updated > console: STARTING EXECUTION OF UPDATE > console: Unrecognized MODEL TYPE = 502 > console: ERROR 0001 > console: UPDATE PAUSED> exit > console: UPDATE> > console: UPDATE> ls > console: Modules on this boot media are: > console: filename type size created description > console: ----------------------------------------------------------------------------- > console: DAGGER DATA 118 96/02/15 ? > console: IMAGE1A DATA 512 96/02/15 ? > console: IMAGE1B DATA 388 96/02/15 ? > console: UPDATE> exit > console: THIS UTILITY WILL NOW RESET THE SYSTEM..... > PASS (2.39 s) > JOB TIME : 2.54 s > > Suggested-by: Sven Schnelle <svens@stackframe.org> > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > I know this is not a 'Linux' test, but all our console functions > reside in this file and I don't want to duplicate again. > Maybe we could rename this file as 'boot_console_tests.py' or > extract the console related functions. Yeah, there is some discussion about the fact that boot_linux_console contain more than just Linux boot tests. Also the 'boot something' acceptance tests list is growing fast, thus IMO soon we gonna need to re-organize the code. So I'm ok to merge this in boot_linux_console, then later refactor it all. I could not test it because the changes no longer applies. The code looks good though, so: Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com> - Wainer > --- > tests/acceptance/boot_linux_console.py | 25 +++++++++++++++++++++++++ > 1 file changed, 25 insertions(+) > > diff --git a/tests/acceptance/boot_linux_console.py b/tests/acceptance/boot_linux_console.py > index f05452824e..8bfcd0625a 100644 > --- a/tests/acceptance/boot_linux_console.py > +++ b/tests/acceptance/boot_linux_console.py > @@ -378,3 +378,28 @@ class BootLinuxConsole(Test): > self.vm.launch() > console_pattern = 'Kernel command line: %s' % kernel_command_line > self.wait_for_console_pattern(console_pattern) > + > + def test_hppa_fwupdate(self): > + """ > + :avocado: tags=arch:hppa > + :avocado: tags=device:lsi53c895a > + """ > + cdrom_url = ('https://github.com/philmd/qemu-testing-blob/raw/ec1b741/' > + 'hppa/hp9000/712/C7120023.frm') > + cdrom_hash = '17944dee46f768791953009bcda551be5ab9fac9' > + cdrom_path = self.fetch_asset(cdrom_url, asset_hash=cdrom_hash) > + > + self.vm.set_console() > + self.vm.add_args('-cdrom', cdrom_path, > + '-boot', 'd', > + '-no-reboot') > + self.vm.launch() > + self.wait_for_console_pattern('Unrecognized MODEL TYPE = 502') > + > + self.exec_command_and_wait_for_pattern('exit', > + 'UPDATE>') > + self.exec_command_and_wait_for_pattern('ls', > + 'IMAGE1B') > + self.exec_command_and_wait_for_pattern('exit', > + 'THIS UTILITY WILL NOW ' > + 'RESET THE SYSTEM.....')
diff --git a/tests/acceptance/boot_linux_console.py b/tests/acceptance/boot_linux_console.py index f05452824e..8bfcd0625a 100644 --- a/tests/acceptance/boot_linux_console.py +++ b/tests/acceptance/boot_linux_console.py @@ -378,3 +378,28 @@ class BootLinuxConsole(Test): self.vm.launch() console_pattern = 'Kernel command line: %s' % kernel_command_line self.wait_for_console_pattern(console_pattern) + + def test_hppa_fwupdate(self): + """ + :avocado: tags=arch:hppa + :avocado: tags=device:lsi53c895a + """ + cdrom_url = ('https://github.com/philmd/qemu-testing-blob/raw/ec1b741/' + 'hppa/hp9000/712/C7120023.frm') + cdrom_hash = '17944dee46f768791953009bcda551be5ab9fac9' + cdrom_path = self.fetch_asset(cdrom_url, asset_hash=cdrom_hash) + + self.vm.set_console() + self.vm.add_args('-cdrom', cdrom_path, + '-boot', 'd', + '-no-reboot') + self.vm.launch() + self.wait_for_console_pattern('Unrecognized MODEL TYPE = 502') + + self.exec_command_and_wait_for_pattern('exit', + 'UPDATE>') + self.exec_command_and_wait_for_pattern('ls', + 'IMAGE1B') + self.exec_command_and_wait_for_pattern('exit', + 'THIS UTILITY WILL NOW ' + 'RESET THE SYSTEM.....')
Add a test which boots a HP-UX firmware upgrade CD-ROM. It exercise the PCI LSI53C895A SCSI controller. The ISO image comes from: https://web.archive.org/web/20101204061612/http://ftp.parisc-linux.org/kernels/712/PF_C7120023 This test is very quick, less than 3s: $ avocado --show=app,console run -t arch:hppa tests/acceptance/boot_linux_console.py console: Firmware Version 6.1 console: Duplex Console IO Dependent Code (IODC) revision 1 console: Memory Test/Initialization Completed console: ------------------------------------------------------------------------------ console: (c) Copyright 2017-2018 Helge Deller <deller@gmx.de> and SeaBIOS developers. console: ------------------------------------------------------------------------------ console: Processor Speed State Coprocessor State Cache Size console: --------- -------- --------------------- ----------------- ---------- console: 0 250 MHz Active Functional 0 KB console: Available memory: 512 MB console: Good memory required: 16 MB console: Primary boot path: FWSCSI.0.0 console: Alternate boot path: FWSCSI.2.0 console: Console path: SERIAL_1.9600.8.none console: Keyboard path: PS2 console: Available boot devices: console: 1. DVD/CD [lsi 00:00.0 2:0 Drive QEMU QEMU CD-ROM 2.5+] console: Booting from DVD/CD [lsi 00:00.0 2:0 Drive QEMU QEMU CD-ROM 2.5+] console: Booting... console: Boot IO Dependent Code (IODC) revision 153 console: HARD Booted. console: ISL Revision A.00.25 November 18, 1992 console: ISL booting ODE UPDATE ; stable off ; RUN console: Loading... console: *************************************************************************** console: ****** ****** console: ****** Offline Diagnostic Environment ****** console: ****** ****** console: ****** (C) Copyright Hewlett-Packard Co 1993 ****** console: ****** All Rights Reserved ****** console: ****** ****** console: ****** HP shall not be liable for any damages resulting from the ****** console: ****** use of this program. ****** console: ****** ****** console: ****** TC Version A.00.15 ****** console: ****** SysLib Version A.00.44 ****** console: ****** ****** console: *************************************************************************** console: Type HELP for command information. console: ISL_CMD> UPDATE ; stable off ; RUN console: *************************************************************************** console: ****** ****** console: ****** PDC UPDATER ****** console: ****** ****** console: ****** Copyright (C) 1993, 1994, 1995 by Hewlett-Packard Company ****** console: ****** Version A.00.19 ****** console: ****** ****** console: *************************************************************************** console: Type HELP for command information. console: Stable Storage will NOT be updated console: STARTING EXECUTION OF UPDATE console: Unrecognized MODEL TYPE = 502 console: ERROR 0001 console: UPDATE PAUSED> exit console: UPDATE> console: UPDATE> ls console: Modules on this boot media are: console: filename type size created description console: ----------------------------------------------------------------------------- console: DAGGER DATA 118 96/02/15 ? console: IMAGE1A DATA 512 96/02/15 ? console: IMAGE1B DATA 388 96/02/15 ? console: UPDATE> exit console: THIS UTILITY WILL NOW RESET THE SYSTEM..... PASS (2.39 s) JOB TIME : 2.54 s Suggested-by: Sven Schnelle <svens@stackframe.org> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- I know this is not a 'Linux' test, but all our console functions reside in this file and I don't want to duplicate again. Maybe we could rename this file as 'boot_console_tests.py' or extract the console related functions. --- tests/acceptance/boot_linux_console.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+)