Class: Mutant::Integration Private
- Inherits:
-
Object
- Object
- Mutant::Integration
- Includes:
- Unparser::AbstractType, Unparser::Adamantium
- Defined in:
- lib/mutant/integration.rb,
lib/mutant/integration/null.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Abstract base class mutant test framework integrations
Direct Known Subclasses
Defined Under Namespace
Constant Summary collapse
- LOAD_MESSAGE =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
"Unable to load integration mutant-%<integration_name>s:\n%<exception>s\nYou may have to install the gem mutant-%<integration_name>s!\n"- CONST_MESSAGE =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
"Unable to load integration mutant-%<integration_name>s:\n%<exception>s\nThis is a bug in the integration you have to report.\nThe integration is supposed to define %<constant_name>s!\n"- INTEGRATION_MISSING =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
"No test framework integration configured.\nSee https://github.com/mbj/mutant/blob/master/docs/configuration.md#integration\n"
Class Method Summary collapse
-
.setup(env) ⇒ Either<String, Integration>
private
Setup integration.
Instance Method Summary collapse
-
#all_tests ⇒ Enumerable<Test>
private
All tests this integration can run.
-
#available_tests ⇒ Enumerable<Test>
private
All tests available for mutation testing.
-
#call ⇒ Result::Test
private
Run a collection of tests.
-
#setup ⇒ self
private
Perform integration setup.
Class Method Details
.setup(env) ⇒ Either<String, Integration>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Setup integration
62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/mutant/integration.rb', line 62 def self.setup(env) integration_config = env.config.integration return Either::Left.new(INTEGRATION_MISSING) unless integration_config.name attempt_require(env).bind { attempt_const_get(env) }.fmap do |klass| klass.new( arguments: integration_config.arguments, expression_parser: env.config.expression_parser, world: env.world ).setup end end |
Instance Method Details
#all_tests ⇒ Enumerable<Test>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
All tests this integration can run
Some tests may not be available for mutation testing. See #available_tests
126 |
# File 'lib/mutant/integration.rb', line 126 abstract_method :all_tests |
#available_tests ⇒ Enumerable<Test>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
All tests available for mutation testing
Subset ofr #al_tests
133 |
# File 'lib/mutant/integration.rb', line 133 abstract_method :available_tests |
#call ⇒ Result::Test
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Run a collection of tests
118 |
# File 'lib/mutant/integration.rb', line 118 abstract_method :call |
#setup ⇒ self
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Perform integration setup
109 110 111 |
# File 'lib/mutant/integration.rb', line 109 def setup self end |