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

Brug den eksisterende fixture-mappe, som withProjectDir vælger, sammen med dens build/settings-filer. Flet proxy-egenskaber med det, fixturen allerede har brug for; proxy-værter og -porte holdes adskilt. Til tilladte offentlige repository-downloads leverer HTTP-proxy-listen kandidater til disse fixture-egenskaber.

Pluginets ydre build kan lykkes, mens dette funktionelle test-build fejler. Import af dets testklasse kopierer ikke den ydre gradle.properties, og egenskaber på JUnit-JVM'en beskriver ikke i sig selv det separate builds input.

TestKit bruger som standard et isoleret Gradle-brugerhjem, så udviklerens sædvanlige private egenskaber kan mangle. Omvendt kan kommandolinje--D eller brugerhjemsegenskaber tilsidesætte fixturens poster.

Dette konfigurerer Gradle-repository-anmodninger. Et plugin, der starter en anden downloader eller har sin egen HTTP-transport, kan have brug for en anden rute.

Relaterede artikler