import json from spacesafeml_certification_benchmark_and_.verification import generate_certificate from spacesafeml_certification_benchmark_and_.dsl import SafetyContract, SafetyPreConditions, SafetyPostConditions, ResourceBudgets, LocalCapabilities, DataSharingPolicy def test_verification_certificate_basic(): plan = { "name": "sample-mission", "actions": ["scan", "navigate", "dock"], "budgets": {"cpu_cores": 1.0, "memory_gb": 2.0, "energy_wh": 100.0, "time_seconds": 1800}, } contract = SafetyContract( contract_id="contract-1", local_capabilities=[LocalCapabilities(name="Planner", capabilities=["plan"] )], budgets=ResourceBudgets(cpu_cores=2.0, memory_gb=4.0, energy_wh=150.0, time_seconds=3600), data_policy=DataSharingPolicy(policy_id="policy-1", allowed_data=["telemetry"]), version="1.0", ) cert = generate_certificate(plan, contract) assert cert["status"] in ("safe", "unsafe") assert "certificate_id" in cert assert cert["plan_hash"] assert isinstance(cert["details"], list)