diff options
Diffstat (limited to 'pmstestsuite/library')
-rw-r--r-- | pmstestsuite/library/standard/banned_commands.py | 56 |
1 files changed, 36 insertions, 20 deletions
diff --git a/pmstestsuite/library/standard/banned_commands.py b/pmstestsuite/library/standard/banned_commands.py index 4438f12..b261f43 100644 --- a/pmstestsuite/library/standard/banned_commands.py +++ b/pmstestsuite/library/standard/banned_commands.py @@ -30,16 +30,24 @@ class DoHardCommandTest(BannedCommandTest): def check_dbus_result(self, output, pm): try: BannedCommandTest.check_dbus_result(self, output, pm) - finally: - try: - res = True if output[0] == '0' else False - except IndexError: - res = None - if self.eapi < 4: - self.assertTrue(res, 'hardlink created') - else: - self.assertFalse(res, 'hardlink created', - undefined = True) + except AssertionError as e: + exc = e + else: + exc = None + + try: + res = True if output[0] == '0' else False + except IndexError: + res = None + + if self.eapi < 4: + self.assertTrue(res, 'hardlink created') + elif res is not None or exc: + self.assertFalse(res, 'hardlink created', + undefined = True) + + if exc: + raise exc class DoSedCommandTest(BannedCommandTest): """ Test whether dosed command is actually banned. """ @@ -53,13 +61,21 @@ class DoSedCommandTest(BannedCommandTest): def check_dbus_result(self, output, pm): try: BannedCommandTest.check_dbus_result(self, output, pm) - finally: - try: - res = output[0].strip() - except IndexError: - res = None - if self.eapi < 4: - self.assertEqual(res, 'SED WORKED', 'dosed result') - else: - self.assertNotEqual(res, 'SED WORKED', 'dosed result', - undefined = True) + except AssertionError as e: + exc = e + else: + exc = None + + try: + res = output[0].strip() + except IndexError: + res = None + + if self.eapi < 4: + self.assertEqual(res, 'SED WORKED', 'dosed result') + elif res is not None or exc: + self.assertNotEqual(res, 'SED WORKED', 'dosed result', + undefined = True) + + if exc: + raise exc |