@@ -2,6 +2,7 @@ package sdkman.env
22
33import groovy.transform.ToString
44import sdkman.stubs.CurlStub
5+ import sdkman.stubs.UnameStub
56
67@ToString (includeNames = true )
78class SdkmanBashEnvBuilder {
@@ -13,6 +14,7 @@ class SdkmanBashEnvBuilder {
1314
1415 // optional fields with sensible defaults
1516 private Optional<CurlStub > curlStub = Optional . empty()
17+ private Optional<UnameStub > unameStub = Optional . empty()
1618 private List candidates = [' groovy' , ' grails' , ' java' ]
1719 private boolean offlineMode = false
1820 private String broadcast = " This is a LIVE broadcast!"
@@ -43,6 +45,11 @@ class SdkmanBashEnvBuilder {
4345 this
4446 }
4547
48+ SdkmanBashEnvBuilder withUnameStub (UnameStub unameStub ) {
49+ this . unameStub = Optional . of(unameStub)
50+ this
51+ }
52+
4653 SdkmanBashEnvBuilder withCandidates (List candidates ) {
4754 this . candidates = candidates
4855 this
@@ -104,7 +111,8 @@ class SdkmanBashEnvBuilder {
104111 sdkmanTmpDir = prepareDirectory(sdkmanDir, " tmp" )
105112 sdkmanCandidatesDir = prepareDirectory(sdkmanDir, " candidates" )
106113
107- curlStub. map { cs -> cs. build() }
114+ curlStub. map { it. build() }
115+ unameStub. map { it. build() }
108116
109117 initializeCandidates(sdkmanCandidatesDir, candidates)
110118 initializeCandidatesCache(sdkmanVarDir, candidates)
0 commit comments