Настройка свойств прокси в fixture Gradle TestKit
Задайте gradle.properties в корне fixture перед запуском той отдельной сборки, явно проверив переопределения и изолированный домашний каталог пользователя.
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()Используйте существующий каталог fixture, выбираемый через withProjectDir, вместе с его файлами build/settings. Объедините свойства прокси с тем, что fixture уже требует; хосты и порты прокси остаются отдельными. Для разрешённых загрузок из публичных репозиториев список HTTP-прокси даёт кандидатов для этих свойств.
Внешняя сборка плагина может пройти, тогда как эта сборка функционального теста падает. Импорт её тестового класса не копирует внешний gradle.properties, а свойства на JVM JUnit сами по себе не описывают входы отдельной сборки.
TestKit по умолчанию использует изолированный домашний каталог Gradle, поэтому обычные приватные свойства разработчика могут отсутствовать. И наоборот, свойства командной строки -D или домашнего каталога пользователя могут переопределить записи fixture.
Это настраивает запросы к репозиториям Gradle. Плагину, запускающему другой загрузчик или имеющему собственный HTTP-транспорт, может понадобиться другой маршрут.