Fix and refactor action_required_by
This commit is contained in:
@@ -1,19 +1,26 @@
|
||||
import factory
|
||||
from uuid import uuid4
|
||||
|
||||
from atst.models import Request
|
||||
from atst.models import Request, RequestStatusEvent
|
||||
from atst.models.pe_number import PENumber
|
||||
from atst.models.task_order import TaskOrder
|
||||
from atst.models.user import User
|
||||
from atst.models.role import Role
|
||||
|
||||
|
||||
class RequestStatusFactory(factory.alchemy.SQLAlchemyModelFactory):
|
||||
|
||||
class Meta:
|
||||
model = RequestStatusEvent
|
||||
|
||||
|
||||
class RequestFactory(factory.alchemy.SQLAlchemyModelFactory):
|
||||
|
||||
class Meta:
|
||||
model = Request
|
||||
|
||||
id = factory.Sequence(lambda x: uuid4())
|
||||
status_events = factory.RelatedFactory(RequestStatusFactory, "request", new_status="started")
|
||||
|
||||
|
||||
class PENumberFactory(factory.alchemy.SQLAlchemyModelFactory):
|
||||
|
@@ -1,5 +1,21 @@
|
||||
from tests.factories import RequestFactory
|
||||
from atst.domain.requests import Requests, RequestStatus
|
||||
|
||||
|
||||
def test_started_request_requires_mo_action():
|
||||
request = RequestFactory.create()
|
||||
assert Requests.action_required_by(request) == "mission_owner"
|
||||
|
||||
|
||||
def test_pending_financial_requires_mo_action():
|
||||
request = RequestFactory.create()
|
||||
request = Requests.set_status(request, RequestStatus.PENDING_FINANCIAL_VERIFICATION)
|
||||
|
||||
assert Requests.action_required_by(request) == "mission_owner"
|
||||
|
||||
|
||||
def test_pending_ccpo_approval_requires_ccpo():
|
||||
request = RequestFactory.create()
|
||||
request = Requests.set_status(request, RequestStatus.PENDING_CCPO_APPROVAL)
|
||||
|
||||
assert Requests.action_required_by(request) == "ccpo"
|
||||
|
Reference in New Issue
Block a user