"""Synthetic bridge contract; no real API token or GPU job.""" import io,json,tempfile,unittest,wave from pathlib import Path from types import SimpleNamespace from unittest.mock import patch import server import deck_bridge as bridge class BridgeTest(unittest.TestCase): def test_forward_and_audio_library(self): with tempfile.TemporaryDirectory() as temp: root=Path(temp);connection=root/'connection.json';connection.write_text(json.dumps({'model':'Synthetic Music','token':'synthetic'})) raw=io.BytesIO() with wave.open(raw,'wb') as wav:wav.setnchannels(2);wav.setsampwidth(2);wav.setframerate(48000);wav.writeframes(b'\0'*192000) job=SimpleNamespace(id='synthetic',cancel_flag=SimpleNamespace(is_set=lambda:False),push=lambda **k:None) spec={'style':'synthetic piano','lyrics':'synthetic test','seed':123,'id':'synthetic','cot':'off'} with patch.object(bridge,'CONNECTION',connection),patch.object(server,'OUTPUTS',root),patch.object(bridge,'request',return_value=raw.getvalue()) as request: result=server.render_gguf(job,spec) payload=request.call_args.args[1] self.assertEqual(payload['model'],'Synthetic Music');self.assertEqual(payload['steps'],6) self.assertEqual(payload['max_tokens'],9000);self.assertNotIn('abc',payload) saved=result.save_artifacts(root/'take');self.assertEqual(saved['audio_seconds'],1) self.assertTrue((root/'take/audio.flac').is_file()) def test_unsupported_score_does_not_start_deck(self): with patch.object(bridge,'request') as request: with self.assertRaisesRegex(RuntimeError,'Score'): server.render_gguf(None,{'abc':'synthetic'}) request.assert_not_called() if __name__=='__main__':unittest.main()