TranscripteurLocalFake.kt 27 lignes · 867 octets
package fr.ebii.card2vcf.audio

/**
 * Implémentation factice de [TranscripteurLocal] pour les tests unitaires.
 */
class TranscripteurLocalFake(disponible: Boolean = true) : TranscripteurLocal {

    override val etat: TranscripteurLocal.Etat =
        if (disponible) TranscripteurLocal.Etat.DISPONIBLE else TranscripteurLocal.Etat.INDISPONIBLE

    private val buffersRecus = mutableListOf<Pair<ShortArray, Int>>()
    var reinitialiseAppele = false

    override fun accepterEchantillons(data: ShortArray, longueur: Int): String? {
        buffersRecus += data to longueur
        return null // pas de résultat partiel simulé
    }

    override fun finaliser(): String = "transcription simulée"

    override fun reinitialiser() {
        reinitialiseAppele = true
        buffersRecus.clear()
    }

    fun nombreBuffersRecus(): Int = buffersRecus.size
}