diff --git a/rewrite-java-test/src/test/java/org/openrewrite/java/RemoveUnusedImportsTest.java b/rewrite-java-test/src/test/java/org/openrewrite/java/RemoveUnusedImportsTest.java index cae81b2e3b7..f269a88cc19 100755 --- a/rewrite-java-test/src/test/java/org/openrewrite/java/RemoveUnusedImportsTest.java +++ b/rewrite-java-test/src/test/java/org/openrewrite/java/RemoveUnusedImportsTest.java @@ -1983,4 +1983,56 @@ public void foo() { ) ); } + + @Test + void retainExplicitImportWhenConflictingClassInSamePackage() { + rewriteRun( + java( + """ + package com.a; + + class ConflictingClass { + } + """, + SourceSpec::skip + ), + java( + """ + package com.b; + + public class ConflictingClass { + public ConflictingClass() { + } + } + """, + SourceSpec::skip + ), + java( + """ + package com.c; + + import com.b.ConflictingClass; + + public class ImplProvider { + static ConflictingClass getImpl(){ + return new ConflictingClass(); + } + } + """, + SourceSpec::skip + ), + java( + """ + package com.a; + + import com.b.ConflictingClass; + import com.c.ImplProvider; + + class CImpl { + ConflictingClass impl = ImplProvider.getImpl(); + } + """ + ) + ); + } }