25 lines
724 B
Python
25 lines
724 B
Python
import sys
|
|
import types
|
|
from unittest.mock import MagicMock
|
|
|
|
|
|
def _load_module(monkeypatch):
|
|
db_stub = types.ModuleType("core.database")
|
|
db_stub.EditorDraft = MagicMock()
|
|
db_stub.SessionLocal = MagicMock()
|
|
monkeypatch.setitem(sys.modules, "core.database", db_stub)
|
|
monkeypatch.delitem(sys.modules, "routes.editor_draft_routes", raising=False)
|
|
|
|
import routes.editor_draft_routes as mod
|
|
|
|
return mod
|
|
|
|
|
|
def test_load_payload_rejects_non_object_json(monkeypatch):
|
|
mod = _load_module(monkeypatch)
|
|
|
|
assert mod._load_payload("[]") == {}
|
|
assert mod._load_payload('"draft"') == {}
|
|
assert mod._load_payload("{bad json") == {}
|
|
assert mod._load_payload('{"layers": []}') == {"layers": []}
|