Skip to content
HDCharts

Validation Matrix

Each pull-request test job checks the same merge commit prepared by Prepare PR. The jobs run only when the pull request changes code or build files. Workflow: test.yml

CI jobGradle entry taskTests includedRuns on
JVM Tests./gradlew ciTestJvmjvmTest for every chart library module.Ubuntu, Zulu JDK 17.
Android Tests./gradlew ciTestAndroidAndroid screenshot validation, plus connectedAndroidTest for every chart library module except charts-core.Ubuntu; API 35 google_apis x86_64 Nexus 6 emulator with KVM.
Wasm Tests./gradlew ciTestWebwasmJsTest for every chart library module.Ubuntu, Kotlin/Wasm browser tests.
iOS Tests./gradlew ciTestIosiosSimulatorArm64Test for every chart library module.macOS, ARM64 iOS Simulator.

The ciTest* tasks are CI entry points. They delegate to the platform-specific chartsTest* tasks in the root build.

Local Validation Selection

Use the smallest applicable command:

ScopeCommand
One chart module./gradlew :charts-<module>:jvmTest
Cross-module or charts-core./gradlew chartsTestJvm
Kotlin or build logic./gradlew ktlintCheck
Compile gate./gradlew ciCompile
Repository checks./gradlew chartsCheck
Public API compatibility./gradlew apiCompatibilityCheck
Playground compile (library or sample/shared changes)../charts-playground/gradlew -p ../charts-playground -DchartsLocalPath="$PWD" ciCompile
Compose or screenshots./gradlew :androidApp:validateDebugScreenshotTest
Intentional screenshot updates./gradlew updateScreenshots

The playground command expects charts-playground next to this checkout. From a git worktree, replace both ../charts-playground paths with the path to your playground checkout.

CI owns chartsTestAndroid, chartsTestWasm, chartsTestIos, and validateDocsGifBaselines unless explicitly requested locally.