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()

Použijte stávající adresář fixture vybraný přes withProjectDir spolu s jeho soubory build/settings. Slučte proxy vlastnosti s tím, co fixture už potřebuje; proxy hostitelé a porty zůstávají oddělené. Pro povolená stahování z veřejných repozitářů poskytuje seznam HTTP proxy kandidáty pro tyto vlastnosti.

Vnější build pluginu může uspět, zatímco tento build funkčního testu selže. Import testovací třídy nezkopíruje vnější gradle.properties a vlastnosti na JVM JUnit samy o sobě nepopsují vstupy samostatného buildu.

TestKit ve výchozím nastavení používá izolovaný domovský adresář Gradle, takže obvyklé soukromé vlastnosti vývojáře mohou chybět. Naopak vlastnosti z příkazového řádku -D nebo z domovského adresáře uživatele mohou položky fixture přepsat.

Tímto se konfigurují požadavky na repozitáře Gradle. Plugin, který spouští jiný stahovač nebo má vlastní HTTP transport, může potřebovat jinou cestu.

Související články