Awaaz / tests /unit /test_validator.py
Ziggy
Awaaz: consumer voice coaching — session-scoped history, config-aware analyzer filters, softened narratives, Awaaz design identity
2a762ba
Raw
History Blame Contribute Delete
677 Bytes
"""Unit tests for audio validation."""
import numpy as np
import pytest
from app.audio.validator import validate_audio_array
def test_empty_audio_fails():
result = validate_audio_array(np.array([]), 16000)
assert not result.valid
def test_silent_audio_fails():
audio = np.zeros(16000 * 3, dtype=np.float32)
result = validate_audio_array(audio, 16000)
assert not result.valid
def test_valid_audio_passes():
t = np.linspace(0, 3, 16000 * 3)
audio = 0.3 * np.sin(2 * np.pi * 440 * t).astype(np.float32)
result = validate_audio_array(audio, 16000)
assert result.valid
assert result.details["duration"] == pytest.approx(3.0, abs=0.1)