| 123456789101112131415161718192021222324252627282930313233343536373839 |
- import os
- import pytest
- from scripts.run_v4_m6_real_acceptance import ALLOWED_DATA_ORIGINS, main
- def test_v4_m6_real_acceptance_requires_explicit_opt_in(monkeypatch):
- monkeypatch.delenv("CONTENT_AGENT_M6_REAL_ACCEPTANCE", raising=False)
- if os.environ.get("CONTENT_AGENT_M6_REAL_ACCEPTANCE") != "1":
- pytest.skip("M6 real acceptance requires CONTENT_AGENT_M6_REAL_ACCEPTANCE=1")
- @pytest.mark.skipif(
- os.environ.get("CONTENT_AGENT_M6_REAL_ACCEPTANCE") != "1",
- reason="M6 real acceptance must be explicitly enabled",
- )
- def test_v4_m6_real_acceptance_runs_three_real_platforms(capsys):
- exit_code = main()
- captured = capsys.readouterr()
- assert exit_code == 0, captured.out
- import json
- payload = json.loads(captured.out)
- assert payload["status"] == "pass"
- assert [row["platform"] for row in payload["results"]] == [
- "douyin",
- "kuaishou",
- "shipinhao",
- ]
- for row in payload["results"]:
- assert row["run_id"].startswith("v1_run_")
- assert row["db_run_record_present"] is True
- assert row["data_origin"] in ALLOWED_DATA_ORIGINS
- assert row["m6_report"]["schema_version"] == "v4_m6_acceptance_report.v1"
- if row["status"] == "failed":
- assert row["failure_classification"]
|