mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-04-19 05:21:22 -04:00
1.8 KiB
1.8 KiB
Decision: Testing Consolidation — core:testing Module
Date: 2026-03-11 Status: Implemented
Context
Each KMP module independently declared scattered test dependencies (junit, mockk, coroutines-test, turbine), leading to version drift and duplicated test doubles across modules.
Decision
Created core:testing as a lightweight shared module for test doubles, fakes, and utilities. It depends only on core:model and core:repository (no heavy deps like core:database). All modules declare implementation(projects.core.testing) in commonTest to get a unified test dependency set.
Consequences
- Single source for test fakes (
FakeRadioController,FakeNodeRepository,TestDataFactory) - Clean dependency graph —
core:testingis lightweight; heavy modules depend on it in test scope, not vice versa - No production leakage — only declared in
commonTest, never in release artifacts - Reduced maintenance — updating test libraries touches one
build.gradle.kts
See core/testing/README.md for usage guide and API reference.