mirror of
https://github.com/sdkman/sdkman-cli.git
synced 2026-08-03 02:58:05 -04:00
Fix race condition in InstallSpec using PollingConditions.
This commit is contained in:
@@ -4,6 +4,7 @@ import com.github.tomakehurst.wiremock.WireMockServer
|
||||
import sdkman.env.CleanBashEnvBuilder
|
||||
import sdkman.support.BashEnvSpecification
|
||||
import sdkman.support.WireMockServerProvider
|
||||
import spock.util.concurrent.PollingConditions
|
||||
|
||||
import java.nio.file.Files
|
||||
import java.nio.file.Paths
|
||||
@@ -19,6 +20,8 @@ class InstallSpec extends BashEnvSpecification {
|
||||
|
||||
File sdkmanBaseDirectory
|
||||
|
||||
def pollingConditions = new PollingConditions()
|
||||
|
||||
void setup() {
|
||||
sdkmanBaseDirectory = prepareBaseDir()
|
||||
bash = CleanBashEnvBuilder.create(sdkmanBaseDirectory).build()
|
||||
@@ -41,8 +44,10 @@ class InstallSpec extends BashEnvSpecification {
|
||||
bash.execute("curl -s ${service} | bash")
|
||||
|
||||
then:
|
||||
sdkmanBinFolder.exists()
|
||||
sdkmanInitScript.exists()
|
||||
pollingConditions.eventually {
|
||||
assert sdkmanBinFolder.exists()
|
||||
assert sdkmanInitScript.exists()
|
||||
}
|
||||
}
|
||||
|
||||
void "should skip installation if SDKMAN has been already installed"() {
|
||||
|
||||
Reference in New Issue
Block a user