e3fb518ab2
- Remove workspace_id from Pydantic models in project_management routes - Remove workspace_id from SQLAlchemy and SQLite project management repos - Remove workspace_id from worker tasks (storage keys, entity creation) - Remove workspace_id from video dedup and title usage modules - Remove workspace_id from generation and ingest worker tasks - Clean workspace_id from all test files and scripts - Remove workspace-specific test files (list_workspaces, workspace repos) Task: #14 workspace_id 残留清理
41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
import sys
|
|
from pathlib import Path
|
|
|
|
sys.path.insert(0, str(Path(__file__).resolve().parents[2] / "apps" / "worker"))
|
|
|
|
from worker_app.core.asset_usage import mark_asset_used_for_generation
|
|
|
|
from packages.domain import Asset, AssetStatus
|
|
|
|
|
|
def _asset() -> Asset:
|
|
return Asset.create(
|
|
project_id="project-1",
|
|
library_id="library-1",
|
|
name="video.mp4",
|
|
storage_key="uploads/video.mp4",
|
|
mime_type="video/mp4",
|
|
file_size=1024,
|
|
status=AssetStatus.READY,
|
|
)
|
|
|
|
|
|
def test_mark_asset_used_for_generation_sets_first_review_state():
|
|
asset = _asset()
|
|
|
|
mark_asset_used_for_generation(asset)
|
|
|
|
assert asset.metadata["generation_use_count"] == 1
|
|
assert asset.metadata["review_status"] == "pending_review"
|
|
assert asset.metadata["last_used_at"]
|
|
|
|
|
|
def test_mark_asset_used_for_generation_increments_without_overwriting_review_state():
|
|
asset = _asset()
|
|
asset.metadata = {"generation_use_count": 2, "review_status": "approved"}
|
|
|
|
mark_asset_used_for_generation(asset)
|
|
|
|
assert asset.metadata["generation_use_count"] == 3
|
|
assert asset.metadata["review_status"] == "approved"
|