Comments (7)
I can create a small Git repo and share the link: https://github.com/piefel/junit5-migration-maven
from jqwik.
Thanks for pointing that out. I'll have a look at it...
from jqwik.
If I understand you correctly, it's basically an IntelliJ bug - maybe you can paste in the youtrack ID from youtrack.jetbrains.com so that I can follow the progress.
Creating two artefacts would be
- quite a big change to the way I currently do releases
- an additional burden for those users that don't run into your problem
Your second suggestion does also not feel right, because it would lie about the real dependency.
I'm not a maven expert, so here's my question: Does Maven provide a way to exclude transparent dependencies (I loosely remember an tag)? Gradle also has such a mechanism, and I could document the steps to work around this IntelliJ issue until it will be resolved.
What do you think?
from jqwik.
It is an IntelliJ problem, that’s correct. There is no YouTrack ticket, only my support ticket which is not public. I don’t see why test discovery should be affected by things on the classpath, but there it is. The IntelliJ test support may depend too much on the structure that JUnit 5 uses itself (separated API and engine).
I don’t know what transparent dependencies are, but assuming you mean transitive, then of course, they can be excluded, and that is in fact what I’m doing:
<dependency>
<groupId>net.jqwik</groupId>
<artifactId>jqwik</artifactId>
<version>${jqwik.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
About the ‘lying’ part: I’m not sure it is lying. Nothing in the jqwik library depends on the platform engine. To actually run the tests it is needed, but that is a dependency of the test runtime. You wouldn’t normally include the EL dependency in a WAR when you know it’s going to run in a Tomcat.
Feel free not to fix the dependency, but perhaps leave open this ticket for reference if other people stumble upon the same issue.
from jqwik.
"transparent" should be "transitive" of course :-)
Leaving the issue open for the time being sounds like a good suggestion. I will add the related Gradle code in another comment.
from jqwik.
@piefel Can you point to an example where I can see the IntelliJ bug or the issue tracker ID for it? I could not reproduce your problem in my experiments.
from jqwik.
Has hopefully been resolved with #37
from jqwik.
Related Issues (20)
- Consider supporting @UseType for sealed interfaces HOT 8
- Shrinking of large arrays uses a very large amount of memory HOT 11
- StackOverflowError when shrinking large arrays HOT 14
- question: any way to imperatively summon a pre-configured arbitrary? HOT 15
- Make nested groups work for JDK >= 18 HOT 31
- Combinators.combine.as nullability of arguments HOT 4
- Can't figure out how to create an Arbitrary I want HOT 10
- Bug: Arbitraries.strings().uniqueChars() will sometimes shrink to values with duplicate chars HOT 5
- Bug: Uniform Distribution of Integers does not work if range is >= Integer.MAX_VALUE HOT 2
- Kotlin K2 Support HOT 23
- Time Module: Support generating java.sql.Timestamp
- adding `jqwik-kotlin` causes existing tests written in java to fail with NPE HOT 18
- Potential idea for running `SAMPLE_FIRST`/`SAMPLE_ONLY` for stateful tests HOT 2
- Lifecycle method called twice when subclassing HOT 4
- Cannot use Arbitrary.generator() outside jqwik HOT 6
- Is Arbitrary<@Nullable T> correct/intended under JSpecify semantics? HOT 32
- TypeUsage example from user guide fails in 1.8.x HOT 8
- Right Way to Integrate jqwik with DataFaker HOT 23
- Generic @Provide methods are sensitive to the type variables' names HOT 3
- Allowing Sampling of Arbitraries with Injected Seed HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jqwik.