Skip to content

Commit d3d2157

Browse files
Add failing test for JavaSourceSet#gavFromPath on TypeTable jar paths
After #7528 TypeTable now materializes artifacts as jars at ~/.rewrite/classpath/.tt/<group>/<artifact>/<version>/<artifact>-<version>.jar instead of as a classes directory. JavaSourceSet#gavFromPath was written against the older directory layout and now produces a malformed GAV for the jar layout, breaking recipes that key off JavaSourceSet#getGavToTypes.
1 parent 9337667 commit d3d2157

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

rewrite-java/src/test/java/org/openrewrite/java/marker/JavaSourceSetTest.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import java.nio.file.Files;
2323
import java.nio.file.Path;
24+
import java.nio.file.Paths;
2425
import java.util.List;
2526
import java.util.jar.JarEntry;
2627
import java.util.jar.JarOutputStream;
@@ -71,4 +72,28 @@ private static void writeEntry(JarOutputStream jos, String name, byte[] content)
7172
jos.write(content);
7273
jos.closeEntry();
7374
}
75+
76+
@Test
77+
void gavFromTypeTableClassesDirPath() {
78+
Path p = Paths.get(System.getProperty("user.home"),
79+
".rewrite/classpath/.tt/org/junit/jupiter/junit-jupiter-api/6.0.2");
80+
assertThat(JavaSourceSet.gavFromPath(p))
81+
.isEqualTo("org.junit.jupiter:junit-jupiter-api:6.0.2");
82+
}
83+
84+
@Test
85+
void gavFromTypeTableJarPath() {
86+
Path p = Paths.get(System.getProperty("user.home"),
87+
".rewrite/classpath/.tt/org/junit/jupiter/junit-jupiter-api/6.0.2/junit-jupiter-api-6.0.2.jar");
88+
assertThat(JavaSourceSet.gavFromPath(p))
89+
.isEqualTo("org.junit.jupiter:junit-jupiter-api:6.0.2");
90+
}
91+
92+
@Test
93+
void gavFromGradleCachePath() {
94+
Path p = Paths.get(System.getProperty("user.home"),
95+
".gradle/caches/modules-2/files-2.1/org.openrewrite/rewrite-core/8.32.0/64ddcc371f1bf29593b4b27e907757d5554d1a83/rewrite-core-8.32.0.jar");
96+
assertThat(JavaSourceSet.gavFromPath(p))
97+
.isEqualTo("org.openrewrite:rewrite-core:8.32.0");
98+
}
7499
}

0 commit comments

Comments
 (0)