|
11 | 11 | from tests.common.reboot import reboot as rebootDut
|
12 | 12 | from tests.common.helpers.sad_path import SadOperation
|
13 | 13 | from tests.ptf_runner import ptf_runner
|
| 14 | +from tests.common.helpers.assertions import pytest_assert |
14 | 15 |
|
15 | 16 | logger = logging.getLogger(__name__)
|
16 | 17 |
|
@@ -424,25 +425,25 @@ def runRebootTest(self):
|
424 | 425 | # Run advanced-reboot.ReloadTest for item in preboot/inboot list
|
425 | 426 | count = 0
|
426 | 427 | result = True
|
427 |
| - final_result = True |
| 428 | + failed_list = list() |
428 | 429 | for rebootOper in self.rebootData['sadList']:
|
429 | 430 | count += 1
|
430 | 431 | try:
|
431 | 432 | self.__setupRebootOper(rebootOper)
|
432 | 433 | result = self.__runPtfRunner(rebootOper)
|
433 | 434 | self.__verifyRebootOper(rebootOper)
|
434 | 435 | except Exception:
|
435 |
| - result = False |
| 436 | + failed_list.append(rebootOper) |
436 | 437 | finally:
|
437 | 438 | # always capture the test logs
|
438 | 439 | self.__fetchTestLogs(rebootOper)
|
439 | 440 | self.__clearArpAndFdbTables()
|
440 | 441 | self.__revertRebootOper(rebootOper)
|
441 |
| - if not result: |
442 |
| - final_result = False |
443 | 442 | if len(self.rebootData['sadList']) > 1 and count != len(self.rebootData['sadList']):
|
444 | 443 | time.sleep(TIME_BETWEEN_SUCCESSIVE_TEST_OPER)
|
445 |
| - return final_result |
| 444 | + pytest_assert(len(failed_list) == 0,\ |
| 445 | + "Advanced-reboot failure. Failed cases: {}".format(failed_list)) |
| 446 | + return result |
446 | 447 |
|
447 | 448 | def runRebootTestcase(self, prebootList=None, inbootList=None, prebootFiles=None):
|
448 | 449 | '''
|
@@ -536,23 +537,18 @@ def __runPtfRunner(self, rebootOper=None):
|
536 | 537 | self.__updateAndRestartArpResponder(rebootOper)
|
537 | 538 |
|
538 | 539 | logger.info('Run advanced-reboot ReloadTest on the PTF host')
|
539 |
| - try: |
540 |
| - result = ptf_runner( |
541 |
| - self.ptfhost, |
542 |
| - "ptftests", |
543 |
| - "advanced-reboot.ReloadTest", |
544 |
| - qlen=PTFRUNNER_QLEN, |
545 |
| - platform_dir="ptftests", |
546 |
| - platform="remote", |
547 |
| - params=params, |
548 |
| - log_file=u'/tmp/advanced-reboot.ReloadTest.log', |
549 |
| - module_ignore_errors=self.moduleIgnoreErrors, |
550 |
| - timeout=REBOOT_CASE_TIMEOUT |
551 |
| - ) |
552 |
| - except Exception as err: |
553 |
| - logger.error("Timed out after {}s of executing advance reboot case: {}.".format( |
554 |
| - REBOOT_CASE_TIMEOUT, str(rebootOper)) + ". Error message: {}".format(err.message)) |
555 |
| - raise Exception |
| 540 | + result = ptf_runner( |
| 541 | + self.ptfhost, |
| 542 | + "ptftests", |
| 543 | + "advanced-reboot.ReloadTest", |
| 544 | + qlen=PTFRUNNER_QLEN, |
| 545 | + platform_dir="ptftests", |
| 546 | + platform="remote", |
| 547 | + params=params, |
| 548 | + log_file=u'/tmp/advanced-reboot.ReloadTest.log', |
| 549 | + module_ignore_errors=self.moduleIgnoreErrors, |
| 550 | + timeout=REBOOT_CASE_TIMEOUT |
| 551 | + ) |
556 | 552 |
|
557 | 553 | return result
|
558 | 554 |
|
|
0 commit comments