File size: 848 Bytes
751945a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import importlib
import sys
from types import SimpleNamespace
def test_omnivoice_adapter_registers_zero_gpu_decorator(monkeypatch) -> None:
decorated = {}
def fake_gpu(fn=None, **kwargs):
def decorate(inner):
decorated["name"] = inner.__name__
decorated["kwargs"] = kwargs
setattr(inner, "_zero_gpu_wrapped", True)
return inner
if fn is not None:
return decorate(fn)
return decorate
monkeypatch.setitem(sys.modules, "spaces", SimpleNamespace(GPU=fake_gpu))
sys.modules.pop("backend.omnivoice_adapter", None)
module = importlib.import_module("backend.omnivoice_adapter")
assert decorated == {"name": "synthesize", "kwargs": {"duration": 300}}
assert getattr(module.OmniVoiceAdapter.synthesize, "_zero_gpu_wrapped", False) is True
|