import os from idea176_goc_synth_automated.dsl import LocalProblem, SharedVariables, GraphOfContractsSeed from idea176_goc_synth_automated.generator import generate_mvp_adapters def test_generate_mvp_adapters_creates_skeletons(tmp_path): # Simple DSL seed for two-domain MVP lp = LocalProblem(domain="Energy", objective="minimize_cost", constraints={"power": 100}) seed = GraphOfContractsSeed(name="test_goc", seeds={ "LocalProblem": lp, "SharedVariables": SharedVariables().variables, "PlanDelta": {}, "DualVariables": {}, "PrivacyBudget": {}, "AuditLog": [], "PolicyBlock": {} }) out = tmp_path result = generate_mvp_adapters(seed, out_dir=str(out)) assert os.path.exists(os.path.join(out, "energy_adapter.py")) assert os.path.exists(os.path.join(out, "robotics_adapter.py"))