Skip to content

Commit 919b481

Browse files
authored
Fix ktlint tests
1 parent 0224d35 commit 919b481

File tree

6 files changed

+26
-8
lines changed

6 files changed

+26
-8
lines changed

lib/src/main/java/com/diffplug/spotless/kotlin/KtLintStep.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ private KtLintStep() {}
3939
private static final String DEFAULT_VERSION = "1.0.0";
4040
static final String NAME = "ktlint";
4141
static final String MAVEN_COORDINATE_0_DOT = "com.pinterest:ktlint:";
42-
static final String MAVEN_COORDINATE_1_DOT = "com.pinterest.ktlint:ktlint-cli:";
42+
public static final String MAVEN_COORDINATE_1_DOT = "com.pinterest.ktlint:ktlint-cli:";
4343

4444
public static FormatterStep create(Provisioner provisioner) {
4545
return create(defaultVersion(), provisioner);

plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GradleProvisioner.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
import com.diffplug.common.base.Unhandled;
3535
import com.diffplug.common.collect.ImmutableList;
3636
import com.diffplug.spotless.Provisioner;
37+
import com.diffplug.spotless.kotlin.KtLintStep;
3738

3839
/** Should be package-private. */
3940
class GradleProvisioner {
@@ -121,7 +122,14 @@ private static Provisioner forConfigurationContainer(Project project, Configurat
121122
config.setCanBeConsumed(false);
122123
config.setVisible(false);
123124
config.attributes(attr -> {
124-
attr.attribute(Bundling.BUNDLING_ATTRIBUTE, project.getObjects().named(Bundling.class, Bundling.EXTERNAL));
125+
final String type;
126+
// See https://github.com/diffplug/spotless/pull/1808#discussion_r1321682984.
127+
if (mavenCoords.stream().anyMatch(it -> it.startsWith(KtLintStep.MAVEN_COORDINATE_1_DOT))) {
128+
type = Bundling.SHADOWED;
129+
} else {
130+
type = Bundling.EXTERNAL;
131+
}
132+
attr.attribute(Bundling.BUNDLING_ATTRIBUTE, project.getObjects().named(Bundling.class, type));
125133
});
126134
return config.resolve();
127135
} catch (Exception e) {

plugin-gradle/src/test/java/com/diffplug/gradle/spotless/KotlinExtensionTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ void withExperimentalEditorConfigOverride() throws IOException {
7373
"spotless {",
7474
" kotlin {",
7575
" ktlint().editorConfigOverride([",
76+
" ktlint_code_style: \"intellij_idea\",",
7677
" ktlint_experimental: \"enabled\",",
7778
" ij_kotlin_allow_trailing_comma: true,",
7879
" ij_kotlin_allow_trailing_comma_on_call_site: true",

plugin-gradle/src/test/java/com/diffplug/gradle/spotless/KotlinGradleExtensionTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ void withExperimentalEditorConfigOverride() throws IOException {
5252
"spotless {",
5353
" kotlinGradle {",
5454
" ktlint().editorConfigOverride([",
55+
" ktlint_code_style: \"intellij_idea\",",
5556
" ktlint_experimental: \"enabled\",",
5657
" ij_kotlin_allow_trailing_comma: true,",
5758
" ij_kotlin_allow_trailing_comma_on_call_site: true",

testlib/src/main/java/com/diffplug/spotless/TestProvisioner.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2016-2021 DiffPlug
2+
* Copyright 2016-2023 DiffPlug
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -39,6 +39,7 @@
3939
import com.diffplug.common.base.Suppliers;
4040
import com.diffplug.common.collect.ImmutableSet;
4141
import com.diffplug.common.io.Files;
42+
import com.diffplug.spotless.kotlin.KtLintStep;
4243

4344
public class TestProvisioner {
4445
public static Project gradleProject(File dir) {
@@ -70,7 +71,14 @@ private static Provisioner createWithRepositories(Consumer<RepositoryHandler> re
7071
config.setTransitive(withTransitives);
7172
config.setDescription(mavenCoords.toString());
7273
config.attributes(attr -> {
73-
attr.attribute(Bundling.BUNDLING_ATTRIBUTE, project.getObjects().named(Bundling.class, Bundling.EXTERNAL));
74+
final String type;
75+
// See https://github.com/diffplug/spotless/pull/1808#discussion_r1321682984.
76+
if (mavenCoords.stream().anyMatch(it -> it.startsWith(KtLintStep.MAVEN_COORDINATE_1_DOT))) {
77+
type = Bundling.SHADOWED;
78+
} else {
79+
type = Bundling.EXTERNAL;
80+
}
81+
attr.attribute(Bundling.BUNDLING_ATTRIBUTE, project.getObjects().named(Bundling.class, type));
7482
});
7583
try {
7684
return config.resolve();

testlib/src/test/java/com/diffplug/spotless/kotlin/KtLintStepTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ void works1_0_0() {
8080
StepHarnessWithFile.forStep(this, step)
8181
.testResource("kotlin/ktlint/basic.dirty", "kotlin/ktlint/basic.clean")
8282
.testResourceExceptionMsg("kotlin/ktlint/unsolvable.dirty").isEqualTo("Error on line: 1, column: 1\n" +
83-
"rule: standard:no-wildcard-imports\n" +
84-
"Wildcard import");
83+
"rule: standard:no-empty-file\n" +
84+
"File 'unsolvable.dirty' should not be empty");
8585
}
8686

8787
@Test
@@ -90,8 +90,8 @@ void behavior() {
9090
StepHarnessWithFile.forStep(this, step)
9191
.testResource("kotlin/ktlint/basic.dirty", "kotlin/ktlint/basic.clean")
9292
.testResourceExceptionMsg("kotlin/ktlint/unsolvable.dirty").isEqualTo("Error on line: 1, column: 1\n" +
93-
"rule: standard:no-wildcard-imports\n" +
94-
"Wildcard import");
93+
"rule: standard:no-empty-file\n" +
94+
"File 'unsolvable.dirty' should not be empty");
9595
}
9696

9797
@Test

0 commit comments

Comments
 (0)