feat(trash): /api/trash blueprint + flip REST DELETE handlers to soft-delete
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
"""Structural tests for the trash blueprint + delete-flip contracts."""
|
||||
import inspect
|
||||
|
||||
|
||||
def test_trash_blueprint_registered():
|
||||
from fabledassistant.routes.trash import trash_bp
|
||||
assert trash_bp.name == "trash"
|
||||
assert trash_bp.url_prefix == "/api/trash"
|
||||
|
||||
|
||||
def test_trash_blueprint_registered_in_app():
|
||||
from fabledassistant.app import create_app
|
||||
app = create_app()
|
||||
assert "trash" in app.blueprints
|
||||
|
||||
|
||||
def test_trash_handlers_callable():
|
||||
from fabledassistant.routes import trash as trash_routes
|
||||
for name in ("list_trash", "restore_batch", "purge_batch"):
|
||||
assert callable(getattr(trash_routes, name))
|
||||
|
||||
|
||||
def test_trash_service_surface():
|
||||
from fabledassistant.services import trash as svc
|
||||
for fn_name in ("delete", "restore", "purge", "list_trash", "purge_expired", "alive"):
|
||||
assert hasattr(svc, fn_name), f"trash service missing {fn_name}"
|
||||
|
||||
|
||||
def test_delete_service_signature():
|
||||
from fabledassistant.services.trash import delete
|
||||
params = inspect.signature(delete).parameters
|
||||
assert "user_id" in params and "entity_type" in params and "entity_id" in params
|
||||
Reference in New Issue
Block a user