new File(fixtureDir, 'gradle.properties').text = """systemProp.http.proxyHost=proxy.example
systemProp.http.proxyPort=8080
systemProp.https.proxyHost=proxy.example
systemProp.https.proxyPort=8080
"""

def result = GradleRunner.create()
    .withProjectDir(fixtureDir)
    .withArguments('assemble')
    .build()

Bruk den eksisterende fixture-mappen som withProjectDir velger, sammen med build/settings-filene. Slå sammen proxy-egenskaper med det fixturen allerede trenger; proxy-verter og -porter holdes adskilt. For tillatte nedlastinger fra offentlige repositorier leverer HTTP-proxy-listen kandidater for disse egenskapene.

Det ytre bygget til plugin-en kan lykkes mens dette funksjonelle testbygget feiler. Import av testklassen kopierer ikke den ytre gradle.properties, og egenskaper på JUnit-JVM-en beskriver ikke i seg selv inndataene til det separate bygget.

TestKit bruker som standard et isolert Gradle-brukerhjem, så utviklerens vanlige private egenskaper kan mangle. Omvendt kan kommandolinje--D eller brukerhjemsegenskaper overstyre oppføringene i fixturen.

Dette konfigurerer forespørsler til Gradle-repositorier. En plugin som starter en annen nedlaster eller har egen HTTP-transport, kan trenge en annen rute.

Relaterte artikler