Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
22 lines
626 B
Python
22 lines
626 B
Python
import pytest
|
|
import json
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
ch6_e2e = Path(__file__).resolve().parent.parent / "chapter6" / "end-to-end-speech"
|
|
if str(ch6_e2e) not in sys.path:
|
|
sys.path.insert(0, str(ch6_e2e))
|
|
|
|
from validate_evidence import validate
|
|
|
|
|
|
def test_validate_handles_none_case_arms(tmp_path):
|
|
evidence_file = tmp_path / "evidence.json"
|
|
evidence_file.write_text(
|
|
json.dumps({"cases": [{"direct": None, "self_cascade": None}]}),
|
|
encoding="utf-8",
|
|
)
|
|
result = validate(evidence_file)
|
|
assert result["passed"] is False
|
|
assert result["checks"]["both_arms_complete"] is False
|