-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Vintage engine reports intermediate containers as finished before executing dynamic children #1819
Comments
Originally reported in gradle/gradle#8787 |
marcphilipp
added a commit
that referenced
this issue
Mar 16, 2019
Since JUnit 4 does report events for intermediate containers, the Vintage engine has to synthesize them. Until now this was done lazily for start events, i.e. when the first child was started, but eagerly for finish events, i.e. when the last static child of a container was finished. However, the latter approach is problematic for containers that contain both static and dynamic children, for example a Spock specification with a regular and an unrolled feature method. Instead, intermediate containers are now reported as finished as soon as a test is started for which the container is not an ancestor. Fixes #1819.
marcphilipp
added a commit
that referenced
this issue
Mar 16, 2019
Since JUnit 4 does report events for intermediate containers, the Vintage engine has to synthesize them. Until now this was done lazily for start events, i.e. when the first child was started, but eagerly for finish events, i.e. when the last static child of a container was finished. However, the latter approach is problematic for containers that contain both static and dynamic children, for example a Spock specification with a regular and an unrolled feature method. Instead, intermediate containers are now reported as finished as soon as a test is started for which the container is not an ancestor. Fixes #1819.
marcphilipp
added a commit
that referenced
this issue
Mar 16, 2019
Since JUnit 4 does report events for intermediate containers, the Vintage engine has to synthesize them. Until now this was done lazily for start events, i.e. when the first child was started, but eagerly for finish events, i.e. when the last static child of a container was finished. However, the latter approach is problematic for containers that contain both static and dynamic children, for example a Spock specification with a regular and an unrolled feature method. Instead, intermediate containers are now reported as finished as soon as a test is started for which the container is not an ancestor. Fixes #1819.
Fixed in #1820. |
marcphilipp
added a commit
that referenced
this issue
Mar 17, 2019
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
For the demo project below, Vintage reports the
AbcTest
class as finished before starting its dynamic children:Steps to reproduce
run
./gradlew test
with https://github.com/tomekgajdos/tmp-test-lib-aContext
Deliverables
Parameterized
)The text was updated successfully, but these errors were encountered: