333026143b
Пилот: F7PrimaryButton/F7SecondaryButton рендерятся в PNG (390dp xxhdpi) через Robolectric+Roborazzi, recordRoborazziDebug зелёный. Основа автономного Fd-прохода: экран → PNG → сравнение с веб-мобильной forbion. Роли добавляют тесты на свои экраны.
53 lines
1.4 KiB
Groovy
53 lines
1.4 KiB
Groovy
plugins {
|
|
id 'com.android.library'
|
|
id 'org.jetbrains.kotlin.android'
|
|
id 'org.jetbrains.kotlin.plugin.compose'
|
|
id 'io.github.takahirom.roborazzi'
|
|
}
|
|
|
|
android {
|
|
namespace 'ru.forbion.f7cloud.core.designsystem'
|
|
compileSdk 36
|
|
|
|
defaultConfig {
|
|
minSdk 26
|
|
}
|
|
|
|
buildFeatures {
|
|
compose true
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_17
|
|
targetCompatibility JavaVersion.VERSION_17
|
|
}
|
|
kotlinOptions {
|
|
jvmTarget = '17'
|
|
}
|
|
// Roborazzi/Robolectric: рендер Compose в PNG на JVM (Fd-сверка без эмулятора).
|
|
testOptions {
|
|
unitTests {
|
|
includeAndroidResources = true
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
def composeBom = platform(libs.compose.bom)
|
|
implementation composeBom
|
|
implementation libs.compose.ui
|
|
implementation libs.compose.foundation
|
|
implementation libs.compose.material3
|
|
implementation libs.coil.compose
|
|
implementation libs.coil.svg
|
|
|
|
// Screenshot-тесты (JVM)
|
|
testImplementation composeBom
|
|
testImplementation libs.junit
|
|
testImplementation libs.robolectric
|
|
testImplementation libs.roborazzi
|
|
testImplementation libs.roborazzi.compose
|
|
testImplementation libs.roborazzi.junit.rule
|
|
testImplementation libs.compose.ui.test.junit4
|
|
debugImplementation libs.compose.ui.test.manifest
|
|
}
|