Message ID | 1564760158-27536-2-git-send-email-aleksandar.markovic@rt-rk.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/acceptance: Update MIPS Malta ssh test | expand |
On 8/2/19 5:35 PM, Aleksandar Markovic wrote: > From: Aleksandar Markovic <amarkovic@wavecomp.com> > > This patch restructures code organization around the test case > executions. At the same time, rather than outputing a cryptic message: > > FAIL: True not found in [False], > > the following will be reported too, if the command output does not meet > specified expectations: > > 'lspci -d 11ab:4620' output doesn't contain the word 'GT-64120' > > Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com> > --- > tests/acceptance/linux_ssh_mips_malta.py | 36 +++++++++++++++++++------------- > 1 file changed, 21 insertions(+), 15 deletions(-) > > diff --git a/tests/acceptance/linux_ssh_mips_malta.py b/tests/acceptance/linux_ssh_mips_malta.py > index aafb0c3..8368e1f 100644 > --- a/tests/acceptance/linux_ssh_mips_malta.py > +++ b/tests/acceptance/linux_ssh_mips_malta.py > @@ -145,27 +145,33 @@ class LinuxSSH(Test): > self.ssh_disconnect_vm() > self.wait_for_console_pattern('Power down') > > - def run_common_commands(self): > - stdout, stderr = self.ssh_command('lspci -d 11ab:4620') > - self.assertIn(True, ["GT-64120" in line for line in stdout]) > - > - stdout, stderr = self.ssh_command('cat /sys/bus/i2c/devices/i2c-0/name') > - self.assertIn(True, ["SMBus PIIX4 adapter" in line > - for line in stdout]) > - > - stdout, stderr = self.ssh_command('cat /proc/mtd') > - self.assertIn(True, ["YAMON" in line > - for line in stdout]) > + def ssh_command_output_contains(self, cmd, exp): > + stdout, _ = self.ssh_command(cmd) > + for line in stdout: > + if exp in line: > + break > + else: > + self.fail('"%s" output does not contain "%s"' % (cmd, exp)) Or easier using 'return': def ssh_command_output_contains(self, cmd, exp): stdout, _ = self.ssh_command(cmd) for line in stdout: if exp in line: return self.fail('"%s" output does not contain "%s"' % (cmd, exp)) Regardless, thanks for the cleanup! Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> > > + def run_common_commands(self): > + self.ssh_command_output_contains( > + 'lspci -d 11ab:4620', > + 'GT-64120') > + self.ssh_command_output_contains( > + 'cat /sys/bus/i2c/devices/i2c-0/name', > + 'SMBus PIIX4 adapter') > + self.ssh_command_output_contains( > + 'cat /proc/mtd', > + 'YAMON') > # Empty 'Board Config' > - stdout, stderr = self.ssh_command('md5sum /dev/mtd2ro') > - self.assertIn(True, ["0dfbe8aa4c20b52e1b8bf3cb6cbdf193" in line > - for line in stdout]) > + self.ssh_command_output_contains( > + 'md5sum /dev/mtd2ro', > + '0dfbe8aa4c20b52e1b8bf3cb6cbdf193') > > def do_test_mips_malta(self, endianess, kernel_path, uname_m): > self.boot_debian_wheezy_image_and_ssh_login(endianess, kernel_path) > > - stdout, stderr = self.ssh_command('uname -a') > + stdout, _ = self.ssh_command('uname -a') > self.assertIn(True, [uname_m + " GNU/Linux" in line for line in stdout]) > > self.run_common_commands() >
On Fri, Aug 02, 2019 at 05:35:57PM +0200, Aleksandar Markovic wrote: > From: Aleksandar Markovic <amarkovic@wavecomp.com> > > This patch restructures code organization around the test case > executions. At the same time, rather than outputing a cryptic message: > > FAIL: True not found in [False], > > the following will be reported too, if the command output does not meet > specified expectations: > > 'lspci -d 11ab:4620' output doesn't contain the word 'GT-64120' > > Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com> > --- > tests/acceptance/linux_ssh_mips_malta.py | 36 +++++++++++++++++++------------- > 1 file changed, 21 insertions(+), 15 deletions(-) > > diff --git a/tests/acceptance/linux_ssh_mips_malta.py b/tests/acceptance/linux_ssh_mips_malta.py > index aafb0c3..8368e1f 100644 > --- a/tests/acceptance/linux_ssh_mips_malta.py > +++ b/tests/acceptance/linux_ssh_mips_malta.py > @@ -145,27 +145,33 @@ class LinuxSSH(Test): > self.ssh_disconnect_vm() > self.wait_for_console_pattern('Power down') > > - def run_common_commands(self): > - stdout, stderr = self.ssh_command('lspci -d 11ab:4620') > - self.assertIn(True, ["GT-64120" in line for line in stdout]) > - > - stdout, stderr = self.ssh_command('cat /sys/bus/i2c/devices/i2c-0/name') > - self.assertIn(True, ["SMBus PIIX4 adapter" in line > - for line in stdout]) > - > - stdout, stderr = self.ssh_command('cat /proc/mtd') > - self.assertIn(True, ["YAMON" in line > - for line in stdout]) > + def ssh_command_output_contains(self, cmd, exp): > + stdout, _ = self.ssh_command(cmd) > + for line in stdout: > + if exp in line: > + break > + else: > + self.fail('"%s" output does not contain "%s"' % (cmd, exp)) > > + def run_common_commands(self): > + self.ssh_command_output_contains( > + 'lspci -d 11ab:4620', > + 'GT-64120') > + self.ssh_command_output_contains( > + 'cat /sys/bus/i2c/devices/i2c-0/name', > + 'SMBus PIIX4 adapter') > + self.ssh_command_output_contains( > + 'cat /proc/mtd', > + 'YAMON') > # Empty 'Board Config' > - stdout, stderr = self.ssh_command('md5sum /dev/mtd2ro') > - self.assertIn(True, ["0dfbe8aa4c20b52e1b8bf3cb6cbdf193" in line > - for line in stdout]) > + self.ssh_command_output_contains( > + 'md5sum /dev/mtd2ro', > + '0dfbe8aa4c20b52e1b8bf3cb6cbdf193') > > def do_test_mips_malta(self, endianess, kernel_path, uname_m): > self.boot_debian_wheezy_image_and_ssh_login(endianess, kernel_path) > > - stdout, stderr = self.ssh_command('uname -a') > + stdout, _ = self.ssh_command('uname -a') > self.assertIn(True, [uname_m + " GNU/Linux" in line for line in stdout]) This should also make use of ssh_command_output_contains(), that is: self.ssh_command_output_contains('uname -a', uname_m + " GNU/Linux") Other than that, it LGTM. - Cleber. > > self.run_common_commands() > -- > 2.7.4 >
diff --git a/tests/acceptance/linux_ssh_mips_malta.py b/tests/acceptance/linux_ssh_mips_malta.py index aafb0c3..8368e1f 100644 --- a/tests/acceptance/linux_ssh_mips_malta.py +++ b/tests/acceptance/linux_ssh_mips_malta.py @@ -145,27 +145,33 @@ class LinuxSSH(Test): self.ssh_disconnect_vm() self.wait_for_console_pattern('Power down') - def run_common_commands(self): - stdout, stderr = self.ssh_command('lspci -d 11ab:4620') - self.assertIn(True, ["GT-64120" in line for line in stdout]) - - stdout, stderr = self.ssh_command('cat /sys/bus/i2c/devices/i2c-0/name') - self.assertIn(True, ["SMBus PIIX4 adapter" in line - for line in stdout]) - - stdout, stderr = self.ssh_command('cat /proc/mtd') - self.assertIn(True, ["YAMON" in line - for line in stdout]) + def ssh_command_output_contains(self, cmd, exp): + stdout, _ = self.ssh_command(cmd) + for line in stdout: + if exp in line: + break + else: + self.fail('"%s" output does not contain "%s"' % (cmd, exp)) + def run_common_commands(self): + self.ssh_command_output_contains( + 'lspci -d 11ab:4620', + 'GT-64120') + self.ssh_command_output_contains( + 'cat /sys/bus/i2c/devices/i2c-0/name', + 'SMBus PIIX4 adapter') + self.ssh_command_output_contains( + 'cat /proc/mtd', + 'YAMON') # Empty 'Board Config' - stdout, stderr = self.ssh_command('md5sum /dev/mtd2ro') - self.assertIn(True, ["0dfbe8aa4c20b52e1b8bf3cb6cbdf193" in line - for line in stdout]) + self.ssh_command_output_contains( + 'md5sum /dev/mtd2ro', + '0dfbe8aa4c20b52e1b8bf3cb6cbdf193') def do_test_mips_malta(self, endianess, kernel_path, uname_m): self.boot_debian_wheezy_image_and_ssh_login(endianess, kernel_path) - stdout, stderr = self.ssh_command('uname -a') + stdout, _ = self.ssh_command('uname -a') self.assertIn(True, [uname_m + " GNU/Linux" in line for line in stdout]) self.run_common_commands()