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

pluggable mutators #930

Merged
merged 1 commit into from
Sep 1, 2021
Merged

pluggable mutators #930

merged 1 commit into from
Sep 1, 2021

Conversation

hcoles
Copy link
Owner

@hcoles hcoles commented Aug 31, 2021

Mutators are now pluggable via an expanded version of the service
discovery system.

Mutator names must now match the string used to specify them on the
commandline (which is less confusing).

A new interface MutatorGroup allows mutators to be grouped together
under a name, as was previously achieved via the static calls in
Mutator.

The service loader now accepts the following types of classes

  • Classes with a no arg constructor
  • Enums with a single instance
  • Classes with a static method named 'factory' returning a list of the
    interface

This allow most of the existing mutators to be discovered with little
modification.

Mutators can now be added by creating a plugin with an entry in a
org.pitest.mutationtest.engine.gregor.MethodMutatorFactory file.

Mutators are now pluggable via an expanded version of the service
discovery system.

Mutator names must now match the string used to specify them on the
commandline (which is less confusing).

A new interface MutatorGroup allows mutators to be grouped together
under a name, as was previously achieved via the static calls in
Mutator.

The service loader now accepts the following types of classes

* Classes with a no arg constructor
* Enums with a single instance
* Classes with a static method named 'factory' returning a list of the
  interface

This allow most of the existing mutators to be discovered with little
modification.

Mutators can now be added by creating a plugin with an entry in a
 org.pitest.mutationtest.engine.gregor.MethodMutatorFactory file.
@hcoles hcoles merged commit 979a7df into master Sep 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant