Files
zkxw/backend/tests/test_market_presign_mobile_actions.py
T

29 lines
895 B
Python

import pytest
from app.services.market_support import decorate_allowed_actions
@pytest.mark.parametrize('status', ['', 'draft', 'active'])
def test_presign_detail_authorizes_transfer_creation_for_writable_parent(status):
result = decorate_allowed_actions(
'presign',
{'orderStatus': status, 'transfers': []},
scope_kind='specialist',
detail=True,
)
assert result['allowedActions'] == ['edit', 'convert', 'delete']
assert result['transferAllowedActions'] == ['create-transfer']
@pytest.mark.parametrize('status', ['void', 'converted', 'unexpected'])
def test_presign_detail_denies_transfer_creation_for_locked_parent(status):
result = decorate_allowed_actions(
'presign',
{'orderStatus': status, 'transfers': []},
scope_kind='manager',
detail=True,
)
assert result['transferAllowedActions'] == []