`mutations show <id>` results in `No mutation performed`
See original GitHub issueThesis
Some mutations are marked as failed. However, they are not making any changes to the source code. And the tests are working. So, there’s an issue somewhere.
How to reproduce
Steps to reproduce (however, I am not sure that this can be reproduced with 100%):
- Follow the installation steps of https://github.com/wemake-services/wemake-django-template
- Install dependencies + install
mutmut
(it is not included) - Add this lines to the
setup.cfg
:
[mutmut]
paths_to_mutate = server/main_app
backup = False
runner = pytest
tests_dir = tests/
- Run
mutmut run
Related output
(.venv) ~/Desktop/test_project
» mutmut run
- Mutation testing starting -
These are the steps:
1. A full test suite run will be made to make sure we
can run the tests successfully and we know how long
it takes (to detect infinite loops for example)
2. Mutants will be generated and checked
Mutants are written to the cache in the .mutmut-cache
directory. Print found mutants with `mutmut results`.
Legend for output:
🎉 Killed mutants. The goal is for everything to end up in this bucket.
⏰ Timeout. Test suite took 10 times as long as the baseline so were killed.
🤔 Suspicious. Tests took a long time, but not long enough to be fatal.
🙁 Survived. This means your tests needs to be expanded.
1. Running tests without mutations
⠙ Running... Done
2. Checking mutants
⠦ 6/6 🎉 2 ⏰ 0 🤔 0 🙁 4
(.venv) ~/Desktop/test_project
» mutmut results
Timed out ⏰
Suspicious 🤔
Survived 🙁
mutmut apply 1
mutmut apply 2
mutmut apply 3
mutmut apply 4
(.venv) ~/Desktop/test_project
» mutmut show 1
No mutation performed
(.venv) ~/Desktop/test_project
» mutmut show 2
No mutation performed
(.venv) ~/Desktop/test_project
» mutmut show 3
--- server/main_app/urls.py
+++ server/main_app/urls.py
@@ -7,6 +7,6 @@
# Place your URLs here:
urlpatterns = [
- url(r'^hello/$', index, name='hello'),
+ url(r'XX^hello/$XX', index, name='hello'),
]
(.venv) ~/Desktop/test_project
» mutmut show 4
--- server/main_app/urls.py
+++ server/main_app/urls.py
@@ -7,6 +7,6 @@
# Place your URLs here:
urlpatterns = [
- url(r'^hello/$', index, name='hello'),
+ url(r'^hello/$', index, name='XXhelloXX'),
]
Originally posted as https://github.com/boxed/mutmut/issues/31#issuecomment-439907098
Issue Analytics
- State:
- Created 5 years ago
- Comments:6 (4 by maintainers)
Top Results From Across the Web
Genetics 101: detecting mutations in human genes - NCBI - NIH
A mutation in a protein signal sequence may mean that a properly folded, functional protein never reaches its final destination in the cell....
Read more >Mutations in Apollo Client - Apollo GraphQL Docs
The default value is none , meaning that the mutation result includes error details but not partial results. onCompleted. (data?: TData, clientOptions?:
Read more >Mutational Analysis | Bio-Rad
In any living cell, mutations occur when there is a failure in DNA repair. In this section we review the different types of...
Read more >BRAF Genetic Test: MedlinePlus Medical Test
A BRAF genetic test is most often used to guide treatment for certain cancers. Mutations in the BRAF gene are common in melanoma...
Read more >Systematic identification of mutations and copy number ... - eLife
Gene copy number provides more prognostic information than gene mutation status in cancer.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
I just changed it to use sqlite for the database… I really disagree with the choices made in this cookiecutter template I must say. Super complex and python 3.6.6 specific (why so specific?), crazy amounts of dependencies, docker maybe?, coverage by default, explicit utf8 encoding markers on all files, but it’s python 3 so that’s the default anyway… it’s just a bit of a mess quite frankly.
In any case, after all that I can’t even reproduce the problem 😦
The config you specified seems a bit strange as you should only really need the paths_to_mutate setting, but even with it the same it give me the mutants fine:
etc
😦
Ok, I will update this issue if this happens once again. Thanks for all your efforts!
Closing this issue for now.
P.S. Super sad, that I did not like our template. Its main idea it to create super strict code quality and security checks for developers. So we can control quality of the project. And everything is turned on be default. And can not be switched off. Including coverage, all quality checks, etc, etc.
So we use the most specific instruments, patterns, and versions.
coding: utf-8
saves a lot of time in some setups. There are different tools, terminal emulators, text editors, etc that still relies on it. We had a lot of problems with it. Explicit is better than implicit.