テスト時 テストダブル(ex. Fake)を使用 インターフェースで抽象化(2) Interface Abstraction Layer Outbound Core DataFlow Dependency class ExoPlayerAdapter( private val context: Context ) : AudioPlayer { private var exoPlayer: ExoPlayer? = null override suspend fun play(audioId: String) { mediaPlayer = ExoPlayer.create(context, ...) mediaPlayer?.start() } }