import Foundation import Recording /// A transcribing service with a configurable delay, output, and failure. @MainActor final class TranscribingMock: Transcribing { /// The duration of the simulated transcription work. var delay: Duration = .seconds(0.2) /// The error the service throws, or `nil` when it should succeed. var error: Error? /// The transcription the service returns. var transcription = "This is a mocked transcription." func callAsFunction( _ audio: URL, locale: Locale ) async throws -> Transcription { try await Task.sleep(for: delay) if let error { throw error } return .init(text: transcription) } }