[ https://issues.apache.org/jira/browse/SUREFIRE-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17095481#comment-17095481 ]
Gili edited comment on SUREFIRE-1755 at 4/29/20, 2:01 PM: ---------------------------------------------------------- [~tibordigana] Yes, I've written some Surefire integration tests before though honestly it was a lot of work :) Let's come to an agreement on the expected behavior first and then we'll look at building integration tests for it. Thanks for the link to the related issue. I will continue the discussion over there. was (Author: cowwoc): [~tibordigana] Yes, I've written some Surefire integration tests before though honestly it was a lot of work :) Let's come to an agreement on the expected behavior first and then we'll look at building integration tests for it. > Put dependencies from module-info in test sources on module path > ---------------------------------------------------------------- > > Key: SUREFIRE-1755 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1755 > Project: Maven Surefire > Issue Type: Wish > Components: Maven Surefire Plugin > Affects Versions: 3.0.0-M4 > Reporter: Stephan van Hulst > Priority: Minor > > When testing a Maven project that contains a {{module-info.java}} in both the > main source folder and the test source folder, modules that are required for > testing only (such as {{org.junit.jupiter.api}}) are not put on the module > path, causing the tests to fail with an exception similar to: > {code:none} > java.lang.module.FindException: Module org.junit.jupiter.api not found, > required by com.example.module{code} > It would be nice if Surefire patched the module-info in the main source > folder with extra dependencies from the module-info in the test source folder. > Example of main {{module-info.java}}: > {code:java} > module com.example.module { > exports com.example.module; > requires com.example.another.module; > }{code} > Example of test {{module-info.java}}: > {code:java} > open module com.example.module { > exports com.example.module; > requires com.example.another.module; > requires org.junit.jupiter.api; > }{code} > This example implies that {{org.junit.jupiter.api}} would be available on the > module path during testing, but not during regular compilation and runtime. -- This message was sent by Atlassian Jira (v8.3.4#803005)