def should_skip(self): """Handle of 'skip' in test.yaml. If the test should be skipped according to test.yaml, push the result and return True. Otherwise, just return false. """ status = None if 'skip' in self.test_env: eval_env = { 'env': self.env, 'test_env': self.test_env, 'disk_space': lambda: df(self.env.working_dir) } for candidate_status, expr in self.test_env['skip']: try: if eval(expr, eval_env): status = TestStatus[candidate_status] break except Exception: logging.error(traceback.format_exc()) status = TestStatus.ERROR break if status is None: return False else: self.result.set_status(status) self.push_result() return True
def test_control_creator(self): return YAMLTestControlCreator({ 'env': self.env, 'test_env': self.test_env, 'disk_space': lambda: df(self.env.working_dir) })
def should_skip(self): """Handle of 'skip' in test.yaml. :return: None if the test should not be skipped, a TestStatus otherwise. :rtype: None | TestStatus """ if 'skip' in self.test_env: eval_env = { 'env': self.env, 'test_env': self.test_env, 'disk_space': lambda: df(self.env.working_dir)} for status, expr in self.test_env['skip']: try: if eval(expr, eval_env): return TestStatus[status] except Exception: logging.error(traceback.format_exc()) return TestStatus.ERROR return None