def mutate_Str(self, node): if utils.is_docstring(node): raise MutationResign() if node.s != self.FIRST_CONST_STRING: return ast.Str(s=self.FIRST_CONST_STRING) else: return ast.Str(s=self.SECOND_CONST_STRING)
def help_str(self, node): if utils.is_docstring(node): raise MutationResign() if node.s != self.FIRST_CONST_STRING: return self.FIRST_CONST_STRING else: return self.SECOND_CONST_STRING
def mutate_Expr(self, node): if utils.is_docstring(node.value): raise MutationResign() return ast.Pass()
def mutate_Str_empty(self, node): if not node.s or utils.is_docstring(node): raise MutationResign() return ast.Str(s='')
def inject_before_visit(self, node): node = self.generic_visit(node) if self.is_future_statement(node) or (isinstance(node, ast.Expr) and utils.is_docstring(node.value)): return node coverage_node = self.generate_coverage_node(node) return [coverage_node, node]
def help_str_empty(self, node): if not node.s or utils.is_docstring(node): raise MutationResign() return ''