feat: publish approved RF4 media catalog
This commit is contained in:
@@ -6,7 +6,7 @@ import io
|
||||
import pytest
|
||||
from PIL import Image
|
||||
|
||||
from rf4_research.media_assets import audit_media_catalog, extract_media_candidates, inspect_image, media_coverage, merge_manifest, reconcile_queued_duplicates, review_asset, store_asset
|
||||
from rf4_research.media_assets import approve_stored_assets, audit_media_catalog, extract_media_candidates, inspect_image, media_coverage, merge_manifest, reconcile_queued_duplicates, review_asset, store_asset
|
||||
|
||||
|
||||
def test_extracts_and_classifies_unique_https_media() -> None:
|
||||
@@ -166,3 +166,16 @@ def test_reconcile_queue_preserves_source_but_skips_normalized_duplicate(tmp_pat
|
||||
assert assets[1]["status"] == "duplicate"
|
||||
assert assets[1]["duplicate_of"] == "https://a/fish.png"
|
||||
assert assets[2]["status"] == "queued"
|
||||
|
||||
|
||||
def test_bulk_approval_only_publishes_stored_assets(tmp_path: Path) -> None:
|
||||
path = tmp_path / "manifest.json"
|
||||
path.write_text(json.dumps({"assets": [
|
||||
{"entity_type": "fish", "external_id": "pike", "status": "stored", "asset_url": "https://a/pike.webp", "sha256": "a" * 64},
|
||||
{"entity_type": "fish", "status": "queued", "asset_url": "https://a/perch.webp"},
|
||||
]}), encoding="utf-8")
|
||||
assert approve_stored_assets(path, note="owner approved") == {"approved": 1}
|
||||
assets = json.loads(path.read_text(encoding="utf-8"))["assets"]
|
||||
assert assets[0]["entity_key"] == "fish:pike"
|
||||
assert assets[0]["review_note"] == "owner approved"
|
||||
assert assets[1]["status"] == "queued"
|
||||
|
||||
Reference in New Issue
Block a user