-
Notifications
You must be signed in to change notification settings - Fork 188
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
fix: Refactor C# mutation orchestration to a simpler design #2831
Conversation
# Conflicts: # src/Stryker.Core/Stryker.Core/Mutants/CsharpMutantOrchestrator.cs
363925c
to
95acd20
Compare
95acd20
to
adada5b
Compare
081ea47
to
ba1e510
Compare
ba1e510
to
f7a877e
Compare
fc03498
to
014af1f
Compare
629a8c7
to
8ae782d
Compare
8ae782d
to
38b3f3b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I reviewed the technical reference doc. Comments are purely regarding grammar/formatting as I have no real knowledge of the Stryker internals (yet..)
In general it's an absolutely amazing write-up which is great for someone who's new to the project such as me. Thanks!
Thanks for the amazing editing work!! And sorry for these awful errors and typos Co-authored-by: Jasper Keijzer <[email protected]>
@JAKeijzer96 : many thanks for the amazing editorial work here!!. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@dupdob Thanks a lot for this improvement! Mainly the documentation is a real lifesaver, I understand what's going on a lot better now. Some small remarks here and there but I agree with the changes in general
...er.Core/Stryker.Core/Mutants/CsharpNodeOrchestrators/ExpressionBodiedPropertyOrchestrator.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Richard Werkman <[email protected]>
@richardwerkman : your feedback is most welcomed. And thanks for the taking the time to read all this. This PR is probably no picnic to review |
8ae2fba
to
f78a179
Compare
Quality Gate passedIssues Measures |
Redesigned MutationStore and MutationContext classes to a simpler and more consistent design.
Redesigned function/method/accessor/lambda orchestrator via a common parent class. Removed all
xxxExpressionToBodyEngine
classes.Fixed following (non reported) bugs:
return
to void method (can be seen in the old unit test 🤦 )return default
injection policy. Those are injected only when:void
(includingasync Task
) return typereturn
present in the blockreturn
statementyield
modifiers present)Many classes and lines of code have been removed, and hundreds of documentation lines have been added.
I must say I am quite happy with this one, borderline on proud.
😆
EDIT: obviously the associated documentation refers to this design and not the existing one