Ejemplo n.º 1
0
    def on_testcase_stop(self, testcase):
        log.remove_log_handler(self.log_handler)

        if self.classify and testcase.record.status in (TestCaseResultRecord.Status.SKIPPED,
                                                        TestCaseResultRecord.Status.FAILED,
                                                        TestCaseResultRecord.Status.ERRONEOUS,
                                                        TestCaseResultRecord.Status.WARNING):
            new_log_dir = os.path.join(testcase.log_dir, testcase.record.status.name.lower())
            testcase.log_dir = new_log_dir
            try:
                fs.mkdirs(new_log_dir)
                src = self.log_name
                dst = os.path.join(new_log_dir, os.path.basename(self.log_name))
                logger.info("move: %s -> %s", src, dst)
                shutil.move(src, dst)
                for index, ext_log_name in enumerate(testcase.ext_log_names):
                    logger.info("move: %s -> %s", ext_log_name, new_log_dir)
                    shutil.move(ext_log_name, new_log_dir)
                    testcase.ext_log_names[index] = os.path.join(new_log_dir, os.path.basename(ext_log_name))
            except (shutil.Error, IOError):
                logger.exception("")
        self.log_name = None
        self.log_handler = None
Ejemplo n.º 2
0
 def on_testrunner_stop(self, testrunner):
     if self._log_handler is not None:
         log.remove_log_handler(self._log_handler)
         self._log_handler = None
Ejemplo n.º 3
0
 def on_testcase_stop(self, testcase):
     log.remove_log_handler(self.log_handler)
     self.log_handler = None