Публикация тестовых фикстур с подмодулями, gradle
Я искал способ включить тестовые приборы в свои публикации Gradle.https://developer.android.com/studio/publish-library/configure-test-fixtures#kts предполагает, что он должен работать автоматически, если имя проекта установлено правильно, что я сделал вsettings.gradle
файл. Кажется, это решает проблему в случае с https://github.com/slackhq/EitherNet/issues/44.
Для контекста мой проект состоит из нескольких подмодулей, и я определил пользовательскую публикацию для каждого (я подозреваю, что это ключ к проблеме), как показано здесь:
subprojects {
// ... some repos and unimportant plugin applications
tasks {
register("prepareKotlinBuildScriptModel") {}
withType<BootJar> {
enabled = false // this is enabled in the jar I wish to be bootable
}
withType<Test> {
useJUnitPlatform()
}
getByName<Jar>("jar") {
enabled = true
archiveClassifier.set("")
}
}
publishing {
publications {
create<MavenPublication>(project.name) {
version = projectVersion
artifactId = tasks.jar.get().archiveBaseName.get()
groupId = "${projectGroup}.${rootProject.name}"
from(components["kotlin"])
}
}
}
Для справки, в настоящее время это то, как выглядит моя структура модуля и build.gradle для рассматриваемого модуля:
plugins {
id("java-test-fixtures")
id("java-library")
}
dependencies {
testFixturesApi(project(":model"))
... unrelated stuff
Тестовые фикстуры прекрасно работают как внутренние зависимости в самом проекте, но они не публикуются, чтобы их можно было использовать во внешних проектах.
Итак, мой вопрос: есть ли способ запечь тестовые приборы в мои банки подмодулей, чтобы их можно было использовать во внешних проектах?
Любой вклад будет высоко оценен.
Пробовал, ожидал, результат: Публикация в локальном репозитории, ожидалось, что тестовые приспособления будут в комплекте, но их не было.