Skip to content

Commit d7d13e2

Browse files
committed
Use LazyFiles on testLib and Maven plugin
1 parent 3a6d83a commit d7d13e2

File tree

3 files changed

+18
-7
lines changed

3 files changed

+18
-7
lines changed

lib/src/test/java/com/diffplug/spotless/JarStateTest.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import java.net.URLClassLoader;
2626
import java.nio.file.Files;
2727
import java.nio.file.Path;
28+
import java.util.Set;
2829
import java.util.stream.Collectors;
2930

3031
import org.assertj.core.api.SoftAssertions;
@@ -42,7 +43,10 @@ class JarStateTest {
4243

4344
File b;
4445

45-
Provisioner provisioner = (withTransitives, deps) -> deps.stream().map(name -> name.equals("a") ? a : b).collect(Collectors.toSet());
46+
Provisioner provisioner = (withTransitives, deps) -> {
47+
Set<File> files = deps.stream().map(name -> name.equals("a") ? a : b).collect(Collectors.toSet());
48+
return LazyFiles.of(files);
49+
};
4650

4751
@BeforeEach
4852
void setUp() throws IOException {

plugin-maven/src/main/java/com/diffplug/spotless/maven/ArtifactResolver.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
import static java.util.stream.Collectors.toList;
1919
import static java.util.stream.Collectors.toSet;
2020

21+
import com.diffplug.spotless.LazyFiles;
22+
2123
import java.io.File;
2224
import java.util.ArrayList;
2325
import java.util.Collection;
@@ -60,7 +62,7 @@ public ArtifactResolver(RepositorySystem repositorySystem, RepositorySystemSessi
6062
* Given a set of maven coordinates, returns a set of jars which include all
6163
* of the specified coordinates and optionally their transitive dependencies.
6264
*/
63-
public Set<File> resolve(boolean withTransitives, Collection<String> mavenCoordinates) {
65+
public LazyFiles resolve(boolean withTransitives, Collection<String> mavenCoordinates) {
6466
Collection<Exclusion> excludeTransitive = new ArrayList<>(1);
6567
if (!withTransitives) {
6668
excludeTransitive.add(EXCLUDE_ALL_TRANSITIVES);
@@ -73,12 +75,13 @@ public Set<File> resolve(boolean withTransitives, Collection<String> mavenCoordi
7375
DependencyRequest dependencyRequest = new DependencyRequest(collectRequest, null);
7476
DependencyResult dependencyResult = resolveDependencies(dependencyRequest);
7577

76-
return dependencyResult.getArtifactResults()
78+
Set<File> jars = dependencyResult.getArtifactResults()
7779
.stream()
7880
.peek(this::logResolved)
7981
.map(ArtifactResult::getArtifact)
8082
.map(Artifact::getFile)
8183
.collect(toSet());
84+
return LazyFiles.of(jars);
8285
}
8386

8487
private DependencyResult resolveDependencies(DependencyRequest dependencyRequest) {

testlib/src/test/java/com/diffplug/spotless/ProvisionerTest.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717

1818
import java.io.File;
1919
import java.util.Arrays;
20+
import java.util.Set;
2021
import java.util.stream.Collectors;
2122

2223
import org.assertj.core.api.Assertions;
@@ -25,12 +26,15 @@
2526
class ProvisionerTest {
2627
@Test
2728
void testManipulation() {
28-
Provisioner provisioner = (withTransitives, deps) -> deps.stream().map(File::new).collect(Collectors.toSet());
29-
Assertions.assertThat(provisioner.provisionWithTransitives(true, "a"))
29+
Provisioner provisioner = (withTransitives, deps) -> {
30+
Set<File> files = deps.stream().map(File::new).collect(Collectors.toSet());
31+
return LazyFiles.of(files);
32+
};
33+
Assertions.assertThat(provisioner.provisionWithTransitives(true, "a").files())
3034
.containsExactlyInAnyOrder(new File("a"));
31-
Assertions.assertThat(provisioner.provisionWithTransitives(true, "a", "a"))
35+
Assertions.assertThat(provisioner.provisionWithTransitives(true, "a", "a").files())
3236
.containsExactlyInAnyOrder(new File("a"));
33-
Assertions.assertThat(provisioner.provisionWithTransitives(true, Arrays.asList("a", "a")))
37+
Assertions.assertThat(provisioner.provisionWithTransitives(true, Arrays.asList("a", "a")).files())
3438
.containsExactlyInAnyOrder(new File("a"));
3539
}
3640
}

0 commit comments

Comments
 (0)