@@ -52,8 +52,7 @@ final class FunctionalSpec extends Specification {
52
52
implementation(platform('com.squareup.okhttp3:okhttp-bom:4.10.0'))
53
53
implementation('com.squareup.okhttp3:okhttp:4.10.0')
54
54
implementation('com.squareup.okio:okio:3.2.0')
55
- }
56
- """ . stripIndent()
55
+ }""" . stripIndent()
57
56
}
58
57
59
58
def " can sort build.gradle" () {
@@ -80,8 +79,7 @@ final class FunctionalSpec extends Specification {
80
79
implementation(platform('com.squareup.okhttp3:okhttp-bom:4.10.0'))
81
80
implementation('com.squareup.okhttp3:okhttp:4.10.0')
82
81
implementation('com.squareup.okio:okio:3.2.0')
83
- }
84
- """ . stripIndent()
82
+ }""" . stripIndent()
85
83
}
86
84
87
85
def " can sort build.gradle.kts" () {
@@ -108,8 +106,37 @@ final class FunctionalSpec extends Specification {
108
106
implementation(platform("com.squareup.okhttp3:okhttp-bom:4.10.0"))
109
107
implementation("com.squareup.okhttp3:okhttp:4.10.0")
110
108
implementation("com.squareup.okio:okio:3.2.0")
109
+ }""" . stripIndent()
110
+ }
111
+
112
+ def " can sort build.gradle.kts with string property declaration" () {
113
+ given : ' A build script with unsorted dependencies'
114
+ def buildScript = dir. resolve(' build.gradle.kts' )
115
+ Files . writeString(buildScript, BUILD_SCRIPT_KTS_STRING )
116
+
117
+ when : ' We sort dependencies'
118
+ build(dir, ' sortDependencies' )
119
+
120
+ then : ' Dependencies are sorted'
121
+ buildScript. text == """ \
122
+ plugins {
123
+ `java-library`
124
+ id("com.squareup.sort-dependencies")
125
+ }
126
+
127
+ repositories {
128
+ mavenCentral()
129
+ maven { url = uri("$REPO ") }
111
130
}
112
- """ . stripIndent()
131
+
132
+ val okhttp3 = "com.squareup.okhttp3:okhttp:4.10.0"
133
+ val okhttp3Bom = "com.squareup.okhttp3:okhttp-bom:4.10.0"
134
+
135
+ dependencies {
136
+ implementation(platform(okhttp3Bom))
137
+ implementation("com.squareup.okio:okio:3.2.0")
138
+ implementation(okhttp3)
139
+ }""" . stripIndent()
113
140
}
114
141
115
142
def " can check sort order" () {
@@ -149,8 +176,7 @@ final class FunctionalSpec extends Specification {
149
176
'''
150
177
sortDependencies {
151
178
check false
152
- }
153
- ''' . stripIndent(),
179
+ }''' . stripIndent(),
154
180
StandardOpenOption . APPEND
155
181
)
156
182
@@ -244,8 +270,7 @@ final class FunctionalSpec extends Specification {
244
270
implementation('com.squareup.okio:okio:3.2.0')
245
271
implementation('com.squareup.okhttp3:okhttp:4.10.0')
246
272
implementation(platform('com.squareup.okhttp3:okhttp-bom:4.10.0'))
247
- }
248
- """ . stripIndent()
273
+ }""" . stripIndent()
249
274
250
275
private String buildScriptWithVersion (String version ) {
251
276
""" \
@@ -267,8 +292,7 @@ final class FunctionalSpec extends Specification {
267
292
implementation('com.squareup.okio:okio:3.2.0')
268
293
implementation('com.squareup.okhttp3:okhttp:4.10.0')
269
294
implementation(platform('com.squareup.okhttp3:okhttp-bom:4.10.0'))
270
- }
271
- """ . stripIndent()
295
+ }""" . stripIndent()
272
296
}
273
297
274
298
private static final BUILD_SCRIPT_KTS = """ \
@@ -286,6 +310,25 @@ final class FunctionalSpec extends Specification {
286
310
implementation("com.squareup.okio:okio:3.2.0")
287
311
implementation("com.squareup.okhttp3:okhttp:4.10.0")
288
312
implementation(platform("com.squareup.okhttp3:okhttp-bom:4.10.0"))
313
+ }""" . stripIndent()
314
+
315
+ private static final BUILD_SCRIPT_KTS_STRING = """ \
316
+ plugins {
317
+ `java-library`
318
+ id("com.squareup.sort-dependencies")
319
+ }
320
+
321
+ repositories {
322
+ mavenCentral()
323
+ maven { url = uri("$REPO ") }
289
324
}
290
- """ . stripIndent()
325
+
326
+ val okhttp3 = "com.squareup.okhttp3:okhttp:4.10.0"
327
+ val okhttp3Bom = "com.squareup.okhttp3:okhttp-bom:4.10.0"
328
+
329
+ dependencies {
330
+ implementation("com.squareup.okio:okio:3.2.0")
331
+ implementation(okhttp3)
332
+ implementation(platform(okhttp3Bom))
333
+ }""" . stripIndent()
291
334
}
0 commit comments