This commit is contained in:
Tryndaron
2024-01-05 11:56:49 +01:00
parent 2e0989b7e4
commit f90d16859e
2 changed files with 0 additions and 0 deletions
+83
View File
@@ -0,0 +1,83 @@
import pytest
#from scraibe import Transcriber
#from unittest.mock import patch, mock_open
#import unittest
#import os
from .audio import AudioProcessor
import torch
test_waveform = torch.tensor([]).to('cuda')
test_sr = 16000
SAMPLE_RATE = 16000
NORMALIZATION_FACTOR = 32768
@pytest.fixture
def probe_audio_processor():
return AudioProcessor(test_waveform, test_sr)
def test_AudioProcessor_init(probe_audio_processor):
assert isinstance(probe_audio_processor, AudioProcessor)
assert probe_audio_processor.waveform.device == test_waveform.device
assert torch.equal(probe_audio_processor.waveform, test_waveform)
assert probe_audio_processor.sr == test_sr
def test_cut():
waveform = torch.Tensor(10, 3)
sr = 16000
start = 4
end = 7
assert AudioProcessor(waveform, sr).cut(start, end).size() == int((end - start) * test_sr)
""" def test_cut(probe_audio_processor):
start = 10
end = 100
test_segment = probe_audio_processor.cut(start, end)
print(test_segment)
erwartetes_segment = int((end - start) * test_sr)
print(test_segment.size())
assert len(test_segment) == erwartetes_segment
"""
def test_audio_processor_invalid_sr():
with pytest.raises(ValueError):
AudioProcessor(test_waveform, [44100,48000])
def test_audio_processor_SAMPLE_RATE():
probe_audio_processor = AudioProcessor(test_waveform)
assert probe_audio_processor.sr == SAMPLE_RATE
+27
View File
@@ -0,0 +1,27 @@
import pytest
import os
from unittest import mock
from scraibe import Diariser
@pytest.fixture
def diariser_instance():
with mock.patch.object(Diariser, '_get_token', return_value = 'personal Hugging-Face token')
return Diariser('pyannote')
def test_Diariser_init(diariser_instance):
assert diariser_instance.model == 'pyannote'
def test_diarisation_function(diariser_instance):
with mock.patch.object(diariser_instance.model, 'apply', return_value='diarization_result'):
diarization_output = diariser_instance.diarization('example_audio_file.wav')
assert diarization_output == 'diarization_result'