generated from coulomb/repo-seed
Complete extension SDK maturity
This commit is contained in:
@@ -2,6 +2,7 @@ from __future__ import annotations
|
||||
|
||||
import http.client
|
||||
import json
|
||||
import shutil
|
||||
import time
|
||||
import unittest
|
||||
from tempfile import TemporaryDirectory
|
||||
@@ -193,6 +194,52 @@ class CoreArchitectureTests(unittest.TestCase):
|
||||
):
|
||||
validate_target_profile(target_path, extensions)
|
||||
|
||||
def test_runs_sdk_fixture_from_external_extension_repo(self) -> None:
|
||||
with TemporaryDirectory() as temporary_directory:
|
||||
temp_root = Path(temporary_directory)
|
||||
extension_dir = temp_root / "sdk-fixture"
|
||||
shutil.copytree(ROOT / "extensions" / "sdk-fixture", extension_dir)
|
||||
|
||||
result = run_assessment(
|
||||
temp_root,
|
||||
extension_dir / "profiles" / "targets" / "sdk-fixture-target.json",
|
||||
extension_dir / "profiles" / "assessments" / "sdk-fixture-assessment.json",
|
||||
temp_root / "runs" / "sdk-fixture",
|
||||
[extension_dir],
|
||||
)
|
||||
run_dir = Path(result["run_dir"])
|
||||
plan = json.loads((run_dir / "plan.json").read_text(encoding="utf-8"))
|
||||
evidence = json.loads(
|
||||
(run_dir / "normalized" / "evidence.json").read_text(encoding="utf-8")
|
||||
)["evidence"]
|
||||
mappings = json.loads(
|
||||
(run_dir / "normalized" / "mappings.json").read_text(encoding="utf-8")
|
||||
)["mappings"]
|
||||
assessment_package = json.loads(
|
||||
(run_dir / "reports" / "assessment-package.json").read_text(encoding="utf-8")
|
||||
)
|
||||
|
||||
self.assertEqual(result["status"], "completed")
|
||||
self.assertEqual(plan["extension_snapshots"][0]["source"], "external")
|
||||
self.assertEqual(plan["target_profile_snapshot"]["subject_type"], "sdk-fixture-target")
|
||||
self.assertEqual([item["result"] for item in evidence], ["skipped", "pass"])
|
||||
check_evidence = evidence[1]
|
||||
self.assertEqual(
|
||||
check_evidence["facts"]["normalizer_refs"],
|
||||
["native-probe-normalizer"],
|
||||
)
|
||||
self.assertEqual(check_evidence["facts"]["native_score"], 98)
|
||||
self.assertEqual(
|
||||
check_evidence["requirement_refs"],
|
||||
["guide-board.sdk-fixture.v1.native-output"],
|
||||
)
|
||||
self.assertEqual(
|
||||
check_evidence["artifact_refs"],
|
||||
["artifacts/sdk-fixture/native-result.json"],
|
||||
)
|
||||
self.assertEqual(mappings[0]["target_id"], "normalizer-plugin")
|
||||
self.assertEqual(assessment_package["summary"], {"pass": 1, "skipped": 1})
|
||||
|
||||
def test_runs_sample_noop_assessment(self) -> None:
|
||||
with TemporaryDirectory() as temporary_directory:
|
||||
result = run_assessment(
|
||||
|
||||
Reference in New Issue
Block a user