Beispiel #1
0
def run_test_in_temp(config):
    with TempManager(config.keep_level, config.ks_test_name) as temp_dir:
        setup_logger(temp_dir)
        runner = Runner(config, temp_dir)
        rc = runner.run_test()

    return rc
    def run_test(self):
        log_path = os.path.join(self._tmp_dir, "kstest.log")
        setup_logger(log_path)

        try:
            if not self._prepare_test():
                return 99

            v_conf = self._create_virtual_conf(log_path)

            virt_manager = VirtualManager(v_conf)

            try:
                virt_manager.run()
            except InstallError as e:
                self._result_formatter.report_result(False, str(e))
                return 1

            ret = self._validate_all(v_conf)

            self._cleanup()
            return ret.return_code
        finally:
            close_logger()
        if validator.result:
            validator.check_virt_errors(virt_configuration.log_path)

        return validator

    def _validate_result(self):
        output = self._shell.validate()

        if not output.check_ret_code():
            msg = "Validation failed with return code {}".format(
                output.return_code)
            self._result_formatter.report_result(False, msg)

        return output


if __name__ == '__main__':
    config = RunnerConfiguration()

    config.process_argument()

    print("================================================================")

    with TempManager(config.keep_level, config.ks_test_name) as temp_dir:
        setup_logger(temp_dir)
        runner = Runner(config, temp_dir)
        ret_code = runner.run_test()

    exit(ret_code)