KChad's picture
some improvements
42d0b80
import unittest
from pathlib import Path
class RuntimeArtifactTests(unittest.TestCase):
def test_root_inference_script_exists(self) -> None:
inference_path = Path("inference.py")
self.assertTrue(inference_path.exists())
content = inference_path.read_text(encoding="utf-8")
self.assertIn("API_BASE_URL", content)
self.assertIn("MODEL_NAME", content)
self.assertIn("HF_TOKEN", content)
self.assertIn("OpenAI", content)
self.assertIn("BASELINE_OUTPUT_MODE", content)
def test_openenv_manifest_lists_runtime_validation_endpoints(self) -> None:
manifest = Path("openenv.yaml").read_text(encoding="utf-8")
self.assertIn("metadata: GET /metadata", manifest)
self.assertIn("schema: GET /schema", manifest)
self.assertIn("mcp: POST /mcp", manifest)
def test_ci_workflow_runs_both_test_suites_and_docker_build(self) -> None:
workflow = Path(".github/workflows/ci.yml").read_text(encoding="utf-8")
self.assertIn("python pre_submission_check.py", workflow)
self.assertIn("python -m unittest discover -s tests", workflow)
self.assertIn("python -m unittest discover -s submission_tests", workflow)
self.assertIn("docker build -t idpi-exfil-env .", workflow)
def test_hf_sync_workflow_uses_configurable_space_repo(self) -> None:
workflow = Path(".github/workflows/sync.yml").read_text(encoding="utf-8")
self.assertIn("HF_SPACE_REPO", workflow)
self.assertIn("huggingface.co/spaces/${HF_SPACE_REPO}", workflow)
def test_pre_submission_script_exists(self) -> None:
script = Path("pre_submission_check.py")
self.assertTrue(script.exists())
content = script.read_text(encoding="utf-8")
self.assertIn("inference_contract", content)
self.assertIn("structured_log_contract", content)
self.assertIn("openenv.cli", content)
if __name__ == "__main__":
unittest.main()