Module Source: src\poodle\mutators\constant.py

Project: poodle version 1.2.0   <Index
Mutants: 73, Found: 73, Not Found: 0, Timeout: 0, Error: 0
Module Score: 100.00%
1
"""Mutate Constant Values."""
2

        
3
from __future__ import annotations
4

        
5
import ast
6

        
7
from poodle.data_types import FileMutation, Mutator
8

        
9

        
10
class NumberMutator(ast.NodeVisitor, Mutator):
11
    """Mutate Numbers."""
12

        
13
    # Various Keywords:
14
    # complex   3j
15
    # int       3, 0o3 0x3, 0b11
16
    # float     3.0
17

        
18
    mutator_name = "Number"

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:18
@@ -15,7 +15,7 @@
     # int       3, 0o3 0x3, 0b11
     # float     3.0
 
-    mutator_name = "Number"
+    mutator_name = 'XXNumberXX'
     mutants: list[FileMutation]
 
     def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
19
    mutants: list[FileMutation]
20

        
21
    def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
22
        """Visit all nodes and return created mutants."""
23
        self.mutants = []
24
        self.visit(parsed_ast)

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:24
@@ -21,7 +21,7 @@
     def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
         """Visit all nodes and return created mutants."""
         self.mutants = []
-        self.visit(parsed_ast)
+        None
         return self.mutants
 
     def visit_Constant(self, node: ast.Constant) -> None:
25
        return self.mutants

Status: Mutant Found

Mutator Name: Return

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:25
@@ -22,7 +22,7 @@
         """Visit all nodes and return created mutants."""
         self.mutants = []
         self.visit(parsed_ast)
-        return self.mutants
+        return None
 
     def visit_Constant(self, node: ast.Constant) -> None:
         """Increase and Decrease values."""
26

        
27
    def visit_Constant(self, node: ast.Constant) -> None:
28
        """Increase and Decrease values."""
29
        if isinstance(node.value, bool):

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:29
@@ -26,7 +26,7 @@
 
     def visit_Constant(self, node: ast.Constant) -> None:
         """Increase and Decrease values."""
-        if isinstance(node.value, bool):
+        if None:
             return
         if isinstance(node.value, int):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
30
            return
31
        if isinstance(node.value, int):

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:31
@@ -28,7 +28,7 @@
         """Increase and Decrease values."""
         if isinstance(node.value, bool):
             return
-        if isinstance(node.value, int):
+        if None:
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
32
            self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:32
@@ -29,7 +29,7 @@
         if isinstance(node.value, bool):
             return
         if isinstance(node.value, int):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:32
@@ -29,7 +29,7 @@
         if isinstance(node.value, bool):
             return
         if isinstance(node.value, int):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value * 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:32
@@ -29,7 +29,7 @@
         if isinstance(node.value, bool):
             return
         if isinstance(node.value, int):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value + 2)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:32
@@ -29,7 +29,7 @@
         if isinstance(node.value, bool):
             return
         if isinstance(node.value, int):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value + 0)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:32
@@ -29,7 +29,7 @@
         if isinstance(node.value, bool):
             return
         if isinstance(node.value, int):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
+            None
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
33
            self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:33
@@ -30,7 +30,7 @@
             return
         if isinstance(node.value, int):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:33
@@ -30,7 +30,7 @@
             return
         if isinstance(node.value, int):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value / 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:33
@@ -30,7 +30,7 @@
             return
         if isinstance(node.value, int):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value - 2)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:33
@@ -30,7 +30,7 @@
             return
         if isinstance(node.value, int):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value - 0)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:33
@@ -30,7 +30,7 @@
             return
         if isinstance(node.value, int):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
+            None
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
34
        if isinstance(node.value, complex):

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:34
@@ -31,7 +31,7 @@
         if isinstance(node.value, int):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
-        if isinstance(node.value, complex):
+        if None:
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
35
            self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:35
@@ -32,7 +32,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:35
@@ -32,7 +32,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value * 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:35
@@ -32,7 +32,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value + 2j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:35
@@ -32,7 +32,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value + 0j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:35
@@ -32,7 +32,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
-            self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
+            None
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:
36
            self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:36
@@ -33,7 +33,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
         if isinstance(node.value, float):
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:36
@@ -33,7 +33,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value / 1j)))
         if isinstance(node.value, float):
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:36
@@ -33,7 +33,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value - 2j)))
         if isinstance(node.value, float):
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:36
@@ -33,7 +33,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
+            self.mutants.append(self.create_file_mutation(node, str(node.value - 0j)))
         if isinstance(node.value, float):
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:36
@@ -33,7 +33,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1)))
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
-            self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
+            None
         if isinstance(node.value, float):
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
37
        if isinstance(node.value, float):

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:37
@@ -34,7 +34,7 @@
         if isinstance(node.value, complex):
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
-        if isinstance(node.value, float):
+        if None:
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
38
            if node.value == 0:

Status: Mutant Found

Mutator Name: Compare

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:38
@@ -35,7 +35,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
-            if node.value == 0:
+            if node.value != 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:38
@@ -35,7 +35,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
-            if node.value == 0:
+            if node.value == 1:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:38
@@ -35,7 +35,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value + 1j)))
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
-            if node.value == 0:
+            if node.value == -1:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
39
                self.mutants.append(self.create_file_mutation(node, str(1.0)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:39
@@ -36,7 +36,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:
-                self.mutants.append(self.create_file_mutation(node, str(1.0)))
+                self.mutants.append(self.create_file_mutation(node, str(2.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:39
@@ -36,7 +36,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:
-                self.mutants.append(self.create_file_mutation(node, str(1.0)))
+                self.mutants.append(self.create_file_mutation(node, str(0.5)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:39
@@ -36,7 +36,7 @@
             self.mutants.append(self.create_file_mutation(node, str(node.value - 1j)))
         if isinstance(node.value, float):
             if node.value == 0:
-                self.mutants.append(self.create_file_mutation(node, str(1.0)))
+                None
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
40
            else:
41
                self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:41
@@ -38,7 +38,7 @@
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
-                self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
 
 

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:41
@@ -38,7 +38,7 @@
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
-                self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value + 2)))
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
 
 

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:41
@@ -38,7 +38,7 @@
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
-                self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value * 3)))
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
 
 

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:41
@@ -38,7 +38,7 @@
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
-                self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value * 1)))
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
 
 

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:41
@@ -38,7 +38,7 @@
             if node.value == 0:
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
-                self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
+                None
                 self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
 
 
42
                self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:42
@@ -39,7 +39,7 @@
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
-                self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
 
 
 class StringMutator(ast.NodeVisitor, Mutator):

Status: Mutant Found

Mutator Name: BinOp

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:42
@@ -39,7 +39,7 @@
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
-                self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value - 2)))
 
 
 class StringMutator(ast.NodeVisitor, Mutator):

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:42
@@ -39,7 +39,7 @@
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
-                self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value / 3)))
 
 
 class StringMutator(ast.NodeVisitor, Mutator):

Status: Mutant Found

Mutator Name: Number

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:42
@@ -39,7 +39,7 @@
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
-                self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
+                self.mutants.append(self.create_file_mutation(node, str(node.value / 1)))
 
 
 class StringMutator(ast.NodeVisitor, Mutator):

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:42
@@ -39,7 +39,7 @@
                 self.mutants.append(self.create_file_mutation(node, str(1.0)))
             else:
                 self.mutants.append(self.create_file_mutation(node, str(node.value * 2)))
-                self.mutants.append(self.create_file_mutation(node, str(node.value / 2)))
+                None
 
 
 class StringMutator(ast.NodeVisitor, Mutator):
43

        
44

        
45
class StringMutator(ast.NodeVisitor, Mutator):
46
    """Mutate String."""
47

        
48
    mutator_name = "String"

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:48
@@ -45,7 +45,7 @@
 class StringMutator(ast.NodeVisitor, Mutator):
     """Mutate String."""
 
-    mutator_name = "String"
+    mutator_name = 'XXStringXX'
     mutants: list[FileMutation]
 
     def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
49
    mutants: list[FileMutation]
50

        
51
    def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
52
        """Visit all nodes and return created mutants."""
53
        self.mutants = []
54
        self.add_parent_attr(parsed_ast)

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:54
@@ -51,7 +51,7 @@
     def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
         """Visit all nodes and return created mutants."""
         self.mutants = []
-        self.add_parent_attr(parsed_ast)
+        None
         self.visit(parsed_ast)
         return self.mutants
 
55
        self.visit(parsed_ast)

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:55
@@ -52,7 +52,7 @@
         """Visit all nodes and return created mutants."""
         self.mutants = []
         self.add_parent_attr(parsed_ast)
-        self.visit(parsed_ast)
+        None
         return self.mutants
 
     def visit_Constant(self, node: ast.Constant) -> None:
56
        return self.mutants

Status: Mutant Found

Mutator Name: Return

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:56
@@ -53,7 +53,7 @@
         self.mutants = []
         self.add_parent_attr(parsed_ast)
         self.visit(parsed_ast)
-        return self.mutants
+        return None
 
     def visit_Constant(self, node: ast.Constant) -> None:
         """Mutate String values."""
57

        
58
    def visit_Constant(self, node: ast.Constant) -> None:
59
        """Mutate String values."""
60
        if isinstance(node.parent, ast.Expr):  # type: ignore [attr-defined]

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:60
@@ -57,7 +57,7 @@
 
     def visit_Constant(self, node: ast.Constant) -> None:
         """Mutate String values."""
-        if isinstance(node.parent, ast.Expr):  # type: ignore [attr-defined]
+        if None:  # type: ignore [attr-defined]
             return
 
         if isinstance(node.value, str):
61
            return
62

        
63
        if isinstance(node.value, str):

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:63
@@ -60,7 +60,7 @@
         if isinstance(node.parent, ast.Expr):  # type: ignore [attr-defined]
             return
 
-        if isinstance(node.value, str):
+        if None:
             node.value = f"XX{node.value}XX"
             self.mutants.append(self.create_file_mutation(node, ast.unparse(node)))
 
64
            node.value = f"XX{node.value}XX"

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:64
@@ -61,7 +61,7 @@
             return
 
         if isinstance(node.value, str):
-            node.value = f"XX{node.value}XX"
+            node.value = f"'XXXXXX'{node.value}XX"
             self.mutants.append(self.create_file_mutation(node, ast.unparse(node)))
 
 

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:64
@@ -61,7 +61,7 @@
             return
 
         if isinstance(node.value, str):
-            node.value = f"XX{node.value}XX"
+            node.value = f"XX{node.value}'XXXXXX'"
             self.mutants.append(self.create_file_mutation(node, ast.unparse(node)))
 
 
65
            self.mutants.append(self.create_file_mutation(node, ast.unparse(node)))

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:65
@@ -62,7 +62,7 @@
 
         if isinstance(node.value, str):
             node.value = f"XX{node.value}XX"
-            self.mutants.append(self.create_file_mutation(node, ast.unparse(node)))
+            None
 
 
 class KeywordMutator(ast.NodeVisitor, Mutator):
66

        
67

        
68
class KeywordMutator(ast.NodeVisitor, Mutator):
69
    """Mutate Keywords.
70

        
71
    continue, break, False, True, None
72
    """
73

        
74
    mutator_name = "Keyword"

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:74
@@ -71,7 +71,7 @@
     continue, break, False, True, None
     """
 
-    mutator_name = "Keyword"
+    mutator_name = 'XXKeywordXX'
     mutants: list[FileMutation]
 
     def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
75
    mutants: list[FileMutation]
76

        
77
    def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
78
        """Visit all nodes and return created mutants."""
79
        self.mutants = []
80
        self.add_parent_attr(parsed_ast)

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:80
@@ -77,7 +77,7 @@
     def create_mutations(self, parsed_ast: ast.Module, *_, **__) -> list[FileMutation]:
         """Visit all nodes and return created mutants."""
         self.mutants = []
-        self.add_parent_attr(parsed_ast)
+        None
         self.visit(parsed_ast)
         return self.mutants
 
81
        self.visit(parsed_ast)

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:81
@@ -78,7 +78,7 @@
         """Visit all nodes and return created mutants."""
         self.mutants = []
         self.add_parent_attr(parsed_ast)
-        self.visit(parsed_ast)
+        None
         return self.mutants
 
     def visit_Break(self, node: ast.Break) -> None:
82
        return self.mutants

Status: Mutant Found

Mutator Name: Return

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:82
@@ -79,7 +79,7 @@
         self.mutants = []
         self.add_parent_attr(parsed_ast)
         self.visit(parsed_ast)
-        return self.mutants
+        return None
 
     def visit_Break(self, node: ast.Break) -> None:
         """Replace break with continue."""
83

        
84
    def visit_Break(self, node: ast.Break) -> None:
85
        """Replace break with continue."""
86
        self.mutants.append(self.create_file_mutation(node, "continue"))

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:86
@@ -83,7 +83,7 @@
 
     def visit_Break(self, node: ast.Break) -> None:
         """Replace break with continue."""
-        self.mutants.append(self.create_file_mutation(node, "continue"))
+        self.mutants.append(self.create_file_mutation(node, 'XXcontinueXX'))
 
     def visit_Continue(self, node: ast.Continue) -> None:
         """Replace continue with break."""

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:86
@@ -83,7 +83,7 @@
 
     def visit_Break(self, node: ast.Break) -> None:
         """Replace break with continue."""
-        self.mutants.append(self.create_file_mutation(node, "continue"))
+        None
 
     def visit_Continue(self, node: ast.Continue) -> None:
         """Replace continue with break."""
87

        
88
    def visit_Continue(self, node: ast.Continue) -> None:
89
        """Replace continue with break."""
90
        self.mutants.append(self.create_file_mutation(node, "break"))

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:90
@@ -87,7 +87,7 @@
 
     def visit_Continue(self, node: ast.Continue) -> None:
         """Replace continue with break."""
-        self.mutants.append(self.create_file_mutation(node, "break"))
+        self.mutants.append(self.create_file_mutation(node, 'XXbreakXX'))
 
     def visit_Constant(self, node: ast.Constant) -> None:
         """Replace True, False, and None."""

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:90
@@ -87,7 +87,7 @@
 
     def visit_Continue(self, node: ast.Continue) -> None:
         """Replace continue with break."""
-        self.mutants.append(self.create_file_mutation(node, "break"))
+        None
 
     def visit_Constant(self, node: ast.Constant) -> None:
         """Replace True, False, and None."""
91

        
92
    def visit_Constant(self, node: ast.Constant) -> None:
93
        """Replace True, False, and None."""
94
        if self.is_annotation(node):

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:94
@@ -91,7 +91,7 @@
 
     def visit_Constant(self, node: ast.Constant) -> None:
         """Replace True, False, and None."""
-        if self.is_annotation(node):
+        if None:
             return
 
         if node.value is True:
95
            return
96

        
97
        if node.value is True:

Status: Mutant Found

Mutator Name: Compare

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:97
@@ -94,7 +94,7 @@
         if self.is_annotation(node):
             return
 
-        if node.value is True:
+        if node.value is not True:
             self.mutants.append(self.create_file_mutation(node, "False"))
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))

Status: Mutant Found

Mutator Name: Keyword

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:97
@@ -94,7 +94,7 @@
         if self.is_annotation(node):
             return
 
-        if node.value is True:
+        if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "False"))
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))
98
            self.mutants.append(self.create_file_mutation(node, "False"))

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:98
@@ -95,7 +95,7 @@
             return
 
         if node.value is True:
-            self.mutants.append(self.create_file_mutation(node, "False"))
+            self.mutants.append(self.create_file_mutation(node, 'XXFalseXX'))
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))
         if node.value is None:

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:98
@@ -95,7 +95,7 @@
             return
 
         if node.value is True:
-            self.mutants.append(self.create_file_mutation(node, "False"))
+            None
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))
         if node.value is None:
99
        if node.value is False:

Status: Mutant Found

Mutator Name: Compare

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:99
@@ -96,7 +96,7 @@
 
         if node.value is True:
             self.mutants.append(self.create_file_mutation(node, "False"))
-        if node.value is False:
+        if node.value is not False:
             self.mutants.append(self.create_file_mutation(node, "True"))
         if node.value is None:
             self.mutants.append(self.create_file_mutation(node, "' '"))

Status: Mutant Found

Mutator Name: Keyword

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:99
@@ -96,7 +96,7 @@
 
         if node.value is True:
             self.mutants.append(self.create_file_mutation(node, "False"))
-        if node.value is False:
+        if node.value is True:
             self.mutants.append(self.create_file_mutation(node, "True"))
         if node.value is None:
             self.mutants.append(self.create_file_mutation(node, "' '"))
100
            self.mutants.append(self.create_file_mutation(node, "True"))

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:100
@@ -97,6 +97,6 @@
         if node.value is True:
             self.mutants.append(self.create_file_mutation(node, "False"))
         if node.value is False:
-            self.mutants.append(self.create_file_mutation(node, "True"))
+            self.mutants.append(self.create_file_mutation(node, 'XXTrueXX'))
         if node.value is None:
             self.mutants.append(self.create_file_mutation(node, "' '"))

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:100
@@ -97,6 +97,6 @@
         if node.value is True:
             self.mutants.append(self.create_file_mutation(node, "False"))
         if node.value is False:
-            self.mutants.append(self.create_file_mutation(node, "True"))
+            None
         if node.value is None:
             self.mutants.append(self.create_file_mutation(node, "' '"))
101
        if node.value is None:

Status: Mutant Found

Mutator Name: Compare

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:101
@@ -98,5 +98,5 @@
             self.mutants.append(self.create_file_mutation(node, "False"))
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))
-        if node.value is None:
+        if node.value is not None:
             self.mutants.append(self.create_file_mutation(node, "' '"))

Status: Mutant Found

Mutator Name: Keyword

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:101
@@ -98,5 +98,5 @@
             self.mutants.append(self.create_file_mutation(node, "False"))
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))
-        if node.value is None:
+        if node.value is ' ':
             self.mutants.append(self.create_file_mutation(node, "' '"))
102
            self.mutants.append(self.create_file_mutation(node, "' '"))

Status: Mutant Found

Mutator Name: String

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:102
@@ -99,4 +99,4 @@
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))
         if node.value is None:
-            self.mutants.append(self.create_file_mutation(node, "' '"))
+            self.mutants.append(self.create_file_mutation(node, "XX' 'XX"))

Status: Mutant Found

Mutator Name: FuncCall

Unified Diff:

--- src\poodle\mutators\constant.py
+++ [Mutant] src\poodle\mutators\constant.py:102
@@ -99,4 +99,4 @@
         if node.value is False:
             self.mutants.append(self.create_file_mutation(node, "True"))
         if node.value is None:
-            self.mutants.append(self.create_file_mutation(node, "' '"))
+            None