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

[Core] Include DefaultObjectFactory as part of the API #2400

Merged
merged 1 commit into from
Oct 8, 2021

Conversation

mpkorstanje
Copy link
Contributor

Cucumber can be used with different ObjectFactory implementations. When
multiple implementations are available the cucumber.object-factory property
allows Cucumber to disambiguate between the preferred choice.

Because the DefaultObjectFactory was not actually loaded via SPI it was not
possible to explicitly select the default implementation. By using
cucumber.object-factory=io.cucumber.core.backend.DefaultObjectFactory
users can now select the DefaultObjectFactory implementation.

This may benefit users who use Cucumber in both unit and integration tests.
Some object factory implementations such as Cucumber Spring are slow to startup
using the DefaultObjectFactory would allow the suite of unit tests to be
executed faster.

@mpkorstanje mpkorstanje added this to the v7.x.x milestone Oct 8, 2021
@mpkorstanje mpkorstanje force-pushed the include-default-object-factory-in-api branch from 5824afd to ec4eb64 Compare October 8, 2021 20:20
Cucumber can be used with different ObjectFactory implementations. When
multiple implementations are available the `cucumber.object-factory` property
allows Cucumber to disambiguate between the preferred choice.

Because the `DefaultObjectFactory` was not actually loaded via SPI it was not
possible to explicitly select the default implementation. By using
`cucumber.object-factory=io.cucumber.core.backend.DefaultObjectFactory`
users can now select the `DefaultObjectFactory` implementation.

This may benefit users who use Cucumber in both unit and integration tests.
Some object factory implementations such as Cucumber Spring are slow to startup
using the `DefaultObjectFactory` would allow the suite of unit tests to be
executed faster.
@mpkorstanje mpkorstanje force-pushed the include-default-object-factory-in-api branch from ec4eb64 to 273aecb Compare October 8, 2021 20:24
@codecov
Copy link

codecov bot commented Oct 8, 2021

Codecov Report

Merging #2400 (273aecb) into main (e82b87c) will increase coverage by 0.07%.
The diff coverage is 67.85%.

Impacted file tree graph

@@             Coverage Diff              @@
##               main    #2400      +/-   ##
============================================
+ Coverage     83.53%   83.61%   +0.07%     
- Complexity     2623     2634      +11     
============================================
  Files           316      317       +1     
  Lines          9306     9312       +6     
  Branches        902      905       +3     
============================================
+ Hits           7774     7786      +12     
+ Misses         1197     1191       -6     
  Partials        335      335              
Impacted Files Coverage Δ
...umber/core/runtime/ObjectFactoryServiceLoader.java 60.00% <40.00%> (+8.93%) ⬆️
...io/cucumber/core/backend/DefaultObjectFactory.java 83.33% <83.33%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e82b87c...273aecb. Read the comment docs.

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