Add audio separation web app and verified recovery sources
This commit is contained in:
1 parent
b5ee7c1e01
commit
433e6709cf
25 files changed
+381
-46
No files matched your search
@@ -0,0 +1,19 @@
|
||||
import hashlib,json,tempfile,unittest
|
||||
from pathlib import Path
|
||||
from unittest.mock import patch
|
||||
from separator_runtime import SOURCES,MODELS,verify_package,package_files
|
||||
class Tests(unittest.TestCase):
|
||||
def test_demucs_ensemble_complete_and_sources_https(self):
|
||||
self.assertEqual(set(SOURCES),set(MODELS))
|
||||
self.assertEqual(len(package_files('htdemucs_ft.yaml')),5)
|
||||
self.assertEqual(len(package_files('htdemucs_6s.yaml')),2)
|
||||
for recipe in SOURCES.values():
|
||||
for f in recipe['files']:
|
||||
self.assertEqual(len(f['sha256']),64)
|
||||
self.assertTrue(all(u.startswith('https://') for u in f['urls']))
|
||||
def test_wrong_or_missing_weight_rejected(self):
|
||||
with tempfile.TemporaryDirectory() as d:
|
||||
recipe={'x':{'files':[{'file':'weight','sha256':hashlib.sha256(b'valid').hexdigest()}]}}
|
||||
with patch.dict(SOURCES,recipe):
|
||||
self.assertFalse(verify_package(d,'x'));Path(d,'weight').write_bytes(b'wrong');self.assertFalse(verify_package(d,'x'))
|
||||
Path(d,'weight').write_bytes(b'valid');self.assertTrue(verify_package(d,'x'))
|
||||
Reference in new issue
Block a user