- Implement streaming lc3 without the usage of files - use pydantic for config management Reviewed-on: https://gitea.pstruebi.xyz/auracaster/multilang-translator-local/pulls/2
44 lines
1.4 KiB
Python
44 lines
1.4 KiB
Python
import pytest
|
|
import logging as log
|
|
import time
|
|
import os
|
|
import subprocess
|
|
|
|
from multilang_translator.translator_config import LANG_CONFIG
|
|
from multilang_translator.backend_controller.broadcaster_play_once import broadcaster_play_file
|
|
from multilang_translator.backend_controller.broadcaster_copy_files import copy_to_broadcaster
|
|
|
|
|
|
def test_config_broadcaster(ft_configure_broadcaster):
|
|
ret = ft_configure_broadcaster
|
|
|
|
def test_play_files(
|
|
#ft_configure_broadcaster
|
|
):
|
|
for i, d in enumerate(list(LANG_CONFIG.items())):
|
|
key, val = d
|
|
ret = broadcaster_play_file(i, f'{os.path.basename(val["file"])}.lc3')
|
|
assert "err" not in ret
|
|
assert "Failed" not in ret
|
|
time.sleep(3)
|
|
|
|
def test_copy_to_broadcaster(ft_configure_broadcaster):
|
|
log.info("Current working directory is: " + os.getcwd())
|
|
start = time.time()
|
|
copy_to_broadcaster('./tests/announcement_de.lc3')
|
|
log.info(f"Copy to broadcaster took {round(time.time() - start, 3)} seconds")
|
|
|
|
def test_copy_and_play():
|
|
|
|
copy_to_broadcaster('./tests/announcement_de.lc3')
|
|
copy_to_broadcaster('./tests/announcement_en.lc3')
|
|
time.sleep(0.5)
|
|
|
|
ret = broadcaster_play_file(0, 'announcement_de.lc3')
|
|
assert "err" not in ret
|
|
assert "Failed" not in ret
|
|
time.sleep(.5)
|
|
ret = broadcaster_play_file(1, 'announcement_en.lc3')
|
|
assert "err" not in ret
|
|
assert "Failed" not in ret
|