Ange proxyegenskaper i en Gradle TestKit-fixture
Ange gradle.properties i fixture-roten innan den separata byggnationen körs, med åsidosättningar och isolerat användarhem uttryckligen kontrollerade.
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()Använd den befintliga fixture-katalogen som withProjectDir väljer, tillsammans med dess build/settings-filer. Slå samman proxyegenskaper med det fixturen redan behöver; proxyvärdar och -portar hålls åtskilda. För tillåtna nedladdningar från offentliga repon levererar HTTP-proxylistan kandidater för dessa egenskaper.
Pluginets yttre bygge kan lyckas medan detta funktionella testbygge misslyckas. Import av dess testklass kopierar inte det yttre gradle.properties, och egenskaper på JUnit-JVM:en beskriver inte i sig indata för det separata bygget.
TestKit använder som standard ett isolerat Gradle-användarhem, så utvecklarens vanliga privata egenskaper kan saknas. Omvänt kan kommandorads--D eller användarhemsegenskaper åsidosätta fixturens poster.
Detta konfigurerar förfrågningar till Gradle-repon. Ett plugin som startar en annan nedladdare eller har egen HTTP-transport kan behöva en annan väg.