Skip to content

Commit 95967c9

Browse files
Oliver Weilermarc0der
authored andcommitted
Add parametrised test for .sdkmanrc generation
1 parent 24098ad commit 95967c9

File tree

1 file changed

+43
-2
lines changed

1 file changed

+43
-2
lines changed

src/test/groovy/sdkman/specs/EnvCommandSpec.groovy

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ package sdkman.specs
22

33
import sdkman.support.SdkmanEnvSpecification
44

5+
import java.nio.file.Paths
6+
7+
import static java.nio.file.Files.createSymbolicLink
8+
59
class EnvCommandSpec extends SdkmanEnvSpecification {
610
static final String CANDIDATES_API = "http://localhost:8080/2"
711

@@ -11,7 +15,44 @@ class EnvCommandSpec extends SdkmanEnvSpecification {
1115
def "should generate an .sdkmanrc when called with 'init'"() {
1216
given:
1317
curlStub.primeWith(BROADCAST_API_LATEST_ID_ENDPOINT, "echo dbfb025be9f97fda2052b5febcca0155")
14-
.primeWith(CANDIDATES_DEFAULT_JAVA, "echo 11.0.6.hs-adpt")
18+
.primeWith(CANDIDATES_DEFAULT_JAVA, "echo 11.0.6.hs-adpt")
19+
20+
setupCandidates(candidatesDirectory)
21+
22+
bash = sdkmanBashEnvBuilder
23+
.withOfflineMode(true)
24+
.withVersionCache("x.y.z")
25+
.build()
26+
27+
bash.start()
28+
bash.execute("source $bootstrapScript")
29+
30+
when:
31+
bash.execute("sdk env init")
32+
33+
then:
34+
new File(bash.workDir, '.sdkmanrc').text == expected
35+
36+
where:
37+
setupCandidates << [
38+
{ directory ->
39+
new FileTreeBuilder(directory).with {
40+
"java" {
41+
"8.0.252.hs" {
42+
"bin" {}
43+
}
44+
}
45+
}
46+
47+
createSymbolicLink(Paths.get("$directory/java/current"), Paths.get("$directory/java/8.0.252.hs"))
48+
},
49+
{}
50+
]
51+
expected << ["java=8.0.252.hs\n", "java=11.0.6.hs-adpt\n"]
52+
}
53+
54+
def "should generate an .sdkmanrc with the default Java version when called with 'init'"() {
55+
given:
1556

1657
bash = sdkmanBashEnvBuilder
1758
.withVersionCache("x.y.z")
@@ -47,7 +88,7 @@ class EnvCommandSpec extends SdkmanEnvSpecification {
4788

4889
bash.start()
4990
bash.execute("source $bootstrapScript")
50-
91+
5192
when:
5293
bash.execute("sdk env")
5394

0 commit comments

Comments
 (0)