Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate Mutpy functionalities into the project instead of relying on the library #64

Merged
merged 77 commits into from
Jun 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
df1abad
Include files from mutpy in the project
BergLucas Mar 20, 2024
4b19b33
Add type hints and remove useless parameters and classes
BergLucas Mar 20, 2024
30e7b87
Fix type hint
BergLucas Mar 20, 2024
75a22bf
Remove notmutate decorator
BergLucas Mar 20, 2024
3e7402b
Remove useless ModulesLoader by importlib.import_module
BergLucas Mar 20, 2024
d41bf94
Remove unused to_mutate parameter
BergLucas Mar 20, 2024
30f4425
Remove unused ModulesLoaderException class
BergLucas Mar 20, 2024
4d3055f
Use inspect.getsource instead of open to get the source code of a module
BergLucas Mar 20, 2024
52e99de
Refactor ParentNodeTransformer to use setattr, getattr and hasattr
BergLucas Mar 20, 2024
655c1a7
Refactor ParentNodeTransformer to be more performant and explicit
BergLucas Mar 20, 2024
500640f
Refactor controller module
BergLucas Mar 20, 2024
c5b8d0a
Remove unused dependencies
BergLucas Mar 20, 2024
709747f
Move HOM strategies to another file
BergLucas Mar 21, 2024
c057ab4
Refactor is_docstring
BergLucas Mar 21, 2024
74a933f
Move mutators to another file
BergLucas Mar 21, 2024
868c1be
Remove operators names
BergLucas Mar 21, 2024
8473dca
Remove unused mutation operators
BergLucas Mar 21, 2024
e5b387a
Remove MutationResign exception
BergLucas Mar 21, 2024
6a07687
Improve visitor functions
BergLucas Mar 21, 2024
429d951
Refactor MutationOperator
BergLucas Mar 21, 2024
613e1f7
Extract some functions
BergLucas Mar 21, 2024
c980a84
Convert copy_node from a decorator to a function
BergLucas Mar 21, 2024
965f425
Refactor MutationOperator.visit
BergLucas Mar 21, 2024
bd6820a
Refactor operators lists
BergLucas Mar 21, 2024
6c6850f
Remove MutationController
BergLucas Mar 21, 2024
dfcf160
Move utils.create_module to MutationAdapter
BergLucas Mar 21, 2024
2645560
Move is_docstring to misc module
BergLucas Mar 21, 2024
ed598d7
Move RandomSampler to sampler module
BergLucas Mar 21, 2024
88a9b27
Switch from random module to Pynguin randomness module
BergLucas Mar 21, 2024
d7cfccf
Move create_ast to ParentNodeTransformer.create_ast
BergLucas Mar 21, 2024
cdad459
Rename utils module to transformer module
BergLucas Mar 21, 2024
8b91210
Rename mutationadapter module to controller module
BergLucas Mar 21, 2024
336819c
Rename MutationAdapter to MutationController
BergLucas Mar 21, 2024
c81b7d4
Extract code to create_mutants method
BergLucas Mar 21, 2024
45e41e8
Remove over identation
BergLucas Mar 21, 2024
4c0d0c4
Use a dataclass for Mutation class
BergLucas Mar 21, 2024
99547a0
Catch exceptions while creating mutants
BergLucas Mar 21, 2024
d84fb2d
Fix forgotten utils
BergLucas Mar 21, 2024
c82eeb3
Use getattr instead of node.children
BergLucas Mar 21, 2024
fe9975f
Remove redundant calls to generic_visit
BergLucas Mar 21, 2024
913bb77
Use an assert instead of hidding an error
BergLucas Mar 21, 2024
1e65cff
Remove sampler as it was always set to 100%
BergLucas Mar 22, 2024
350290e
Fix typing
BergLucas Mar 22, 2024
63a893a
Fix ruff errors
BergLucas Mar 22, 2024
2fc8aa5
Fix AbstractSuperCallingModification
BergLucas Mar 22, 2024
4c674c6
Fix test_mutate_module
BergLucas Mar 22, 2024
3640fc5
Remove Mutpy dependency
BergLucas Mar 22, 2024
acbbc8a
Improve modules docstrings
BergLucas Mar 22, 2024
d620b99
Fix typo in module name
BergLucas Mar 22, 2024
f697a7d
Add replacement_node field in Mutation
BergLucas Mar 22, 2024
db8527b
Remove visitor for deprecated ast.Num and ast.Str
BergLucas Mar 22, 2024
d301464
Force module to be not None
BergLucas Mar 25, 2024
213cb9f
Fix doc requirements
BergLucas Mar 25, 2024
8b5a1f9
Move create_module to transformer module
BergLucas Mar 25, 2024
8a5df8b
Fix MutationOperator._find_visitors
BergLucas Mar 26, 2024
e7aa44d
Add tests for operators
BergLucas Mar 26, 2024
1930818
Move operators location
BergLucas Mar 26, 2024
f719329
Freeze Mutation class
BergLucas Mar 26, 2024
bdf80b6
Add __post_init__ in Mutation
BergLucas Mar 26, 2024
9026cfb
Add tests for strategies
BergLucas Mar 26, 2024
c02a7d9
Add a test for first order mutator
BergLucas Mar 26, 2024
7760f14
Improve the test of first order mutator
BergLucas Mar 26, 2024
c48e8f6
Fix a bug with hiding variables
BergLucas Mar 26, 2024
3df0013
Add tests for high order mutator
BergLucas Mar 26, 2024
9ed875a
Improve constant in tests
BergLucas Mar 26, 2024
5346765
Remove shuffle function
BergLucas Mar 27, 2024
2c202c6
Refactor MutationController and MutationAnalysisAssertionGenerator
BergLucas Mar 27, 2024
cb20437
Improve MutationOperator specifications
BergLucas Mar 27, 2024
c40987d
Rename a variable
BergLucas Mar 27, 2024
a8a0d38
Fix current_thread_identifier
BergLucas Apr 23, 2024
d4cf739
Replace the list by a generator in create_mutants return type
BergLucas Apr 23, 2024
a8cbe96
Add mutant_count method
BergLucas Apr 23, 2024
f8ecd14
Remove mutated_modules property
BergLucas Apr 23, 2024
8a6705d
Return None when a mutant module cannot be created
BergLucas Apr 23, 2024
8102785
Return None instead of an ExecutionResult when a mutant cannot be cre…
BergLucas Apr 23, 2024
6142744
Merge branch 'main' into improvement/remove-mutpy
BergLucas Apr 25, 2024
79319a3
Reset tracer before creating mutant
BergLucas Apr 25, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 10 additions & 15 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,56 +1,51 @@
alabaster==0.7.16 ; python_version >= "3.10" and python_version < "3.11"
asciitree==0.3.3 ; python_version >= "3.10" and python_version < "3.11"
astmonkey==0.3.6 ; python_version >= "3.10" and python_version < "3.11"
astroid==3.1.0 ; python_version >= "3.10" and python_version < "3.11"
babel==2.14.0 ; python_version >= "3.10" and python_version < "3.11"
black==24.3.0 ; python_version >= "3.10" and python_version < "3.11"
black==24.4.1 ; python_version >= "3.10" and python_version < "3.11"
bytecode==0.15.1 ; python_version >= "3.10" and python_version < "3.11"
certifi==2024.2.2 ; python_version >= "3.10" and python_version < "3.11"
charset-normalizer==3.3.2 ; python_version >= "3.10" and python_version < "3.11"
click==8.1.7 ; python_version >= "3.10" and python_version < "3.11"
colorama==0.4.6 ; python_version >= "3.10" and python_version < "3.11" and (sys_platform == "win32" or platform_system == "Windows")
docstring-parser==0.16 ; python_version >= "3.10" and python_version < "3.11"
docutils==0.20.1 ; python_version >= "3.10" and python_version < "3.11"
exceptiongroup==1.2.0 ; python_version >= "3.10" and python_version < "3.11"
idna==3.6 ; python_version >= "3.10" and python_version < "3.11"
exceptiongroup==1.2.1 ; python_version >= "3.10" and python_version < "3.11"
idna==3.7 ; python_version >= "3.10" and python_version < "3.11"
imagesize==1.4.1 ; python_version >= "3.10" and python_version < "3.11"
iniconfig==2.0.0 ; python_version >= "3.10" and python_version < "3.11"
jellyfish==1.0.3 ; python_version >= "3.10" and python_version < "3.11"
jinja2==3.1.3 ; python_version >= "3.10" and python_version < "3.11"
libcst==1.2.0 ; python_version >= "3.10" and python_version < "3.11"
libcst==1.3.1 ; python_version >= "3.10" and python_version < "3.11"
markdown-it-py==3.0.0 ; python_version >= "3.10" and python_version < "3.11"
markupsafe==2.1.5 ; python_version >= "3.10" and python_version < "3.11"
mdurl==0.1.2 ; python_version >= "3.10" and python_version < "3.11"
mutpy-pynguin==0.7.1 ; python_version >= "3.10" and python_version < "3.11"
mypy-extensions==1.0.0 ; python_version >= "3.10" and python_version < "3.11"
networkx==3.2.1 ; python_version >= "3.10" and python_version < "3.11"
networkx==3.3 ; python_version >= "3.10" and python_version < "3.11"
packaging==24.0 ; python_version >= "3.10" and python_version < "3.11"
pathspec==0.12.1 ; python_version >= "3.10" and python_version < "3.11"
platformdirs==4.2.0 ; python_version >= "3.10" and python_version < "3.11"
pluggy==1.4.0 ; python_version >= "3.10" and python_version < "3.11"
pydot==2.0.0 ; python_version >= "3.10" and python_version < "3.11"
platformdirs==4.2.1 ; python_version >= "3.10" and python_version < "3.11"
pluggy==1.5.0 ; python_version >= "3.10" and python_version < "3.11"
pygments==2.17.2 ; python_version >= "3.10" and python_version < "3.11"
pyparsing==3.1.2 ; python_version >= "3.10" and python_version < "3.11"
pytest==8.1.1 ; python_version >= "3.10" and python_version < "3.11"
pyyaml==6.0.1 ; python_version >= "3.10" and python_version < "3.11"
requests==2.31.0 ; python_version >= "3.10" and python_version < "3.11"
rich==13.7.1 ; python_version >= "3.10" and python_version < "3.11"
simple-parsing==0.1.5 ; python_version >= "3.10" and python_version < "3.11"
snowballstemmer==2.2.0 ; python_version >= "3.10" and python_version < "3.11"
sphinx-autodoc-typehints==2.0.0 ; python_version >= "3.10" and python_version < "3.11"
sphinx-autodoc-typehints==2.1.0 ; python_version >= "3.10" and python_version < "3.11"
sphinx-hoverxref==1.3.0 ; python_version >= "3.10" and python_version < "3.11"
sphinx-rtd-theme==2.0.0 ; python_version >= "3.10" and python_version < "3.11"
sphinx-selective-exclude==1.0.3 ; python_version >= "3.10" and python_version < "3.11"
sphinx==7.2.6 ; python_version >= "3.10" and python_version < "3.11"
sphinx==7.3.7 ; python_version >= "3.10" and python_version < "3.11"
sphinxcontrib-applehelp==1.0.8 ; python_version >= "3.10" and python_version < "3.11"
sphinxcontrib-devhelp==1.0.6 ; python_version >= "3.10" and python_version < "3.11"
sphinxcontrib-htmlhelp==2.0.5 ; python_version >= "3.10" and python_version < "3.11"
sphinxcontrib-jquery==4.1 ; python_version >= "3.10" and python_version < "3.11"
sphinxcontrib-jsmath==1.0.1 ; python_version >= "3.10" and python_version < "3.11"
sphinxcontrib-qthelp==1.0.7 ; python_version >= "3.10" and python_version < "3.11"
sphinxcontrib-serializinghtml==1.1.10 ; python_version >= "3.10" and python_version < "3.11"
termcolor==2.4.0 ; python_version >= "3.10" and python_version < "3.11"
tomli==2.0.1 ; python_version >= "3.10" and python_version < "3.11"
typing-extensions==4.10.0 ; python_version >= "3.10" and python_version < "3.11"
typing-extensions==4.11.0 ; python_version >= "3.10" and python_version < "3.11"
typing-inspect==0.9.0 ; python_version >= "3.10" and python_version < "3.11"
urllib3==2.2.1 ; python_version >= "3.10" and python_version < "3.11"
Loading
Loading