orion0616 commented on issue #3488: URL: https://github.com/apache/maven-surefire/issues/3488#issuecomment-5807036617
@ZiadMarey I authored #3466, so I checked how 3.6.0 handles a package containing "java". `JUnitPlatformProvider#newFilters` removes every occurrence of `.java` from each non-regex include/exclude pattern, not just the suffix (`StringUtils.replace(pattern, ".java", "")`). This happens before `matchClassName`, which could explain why your port did not reproduce it. A pattern containing a dotted class name gets mangled: | pattern | after replacement | | --- | --- | | `com.example.its.java.SomeIT` | `com.example.its.SomeIT` | | `com.example.its.javaprobe.ProbeIT` | `com.example.itsprobe.ProbeIT` | | `com.example.its.probe.ProbeIT` | unchanged | That would match your split. A slash-style pattern such as `com/example/its/java/*IT.java` keeps its package intact under this replacement. Could you share the affected module's effective `<includes>`/`<excludes>`, any `<includesFile>`/`<excludesFile>` contents, and the exact command line, including any `-Dit.test` or `-Dtest`? If a dotted pattern containing `.java` is involved, this could be the cause. #3466 is merged into master (milestone 3.6.1) and removes that replacement entirely. Testing your project with a local build of master would help confirm whether it resolves your case. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
