43 lines
1.3 KiB
Python
43 lines
1.3 KiB
Python
from flask import url_for
|
|
|
|
from atst.routes.requests.index import RequestsIndex
|
|
from tests.factories import RequestFactory, UserFactory
|
|
from atst.domain.requests import Requests
|
|
|
|
|
|
def test_action_required_mission_owner():
|
|
creator = UserFactory.create()
|
|
requests = RequestFactory.create_batch(5, creator=creator)
|
|
Requests.submit(requests[0])
|
|
context = RequestsIndex(creator).execute()
|
|
|
|
assert context["requests"][0]["action_required"] == False
|
|
|
|
|
|
def test_action_required_ccpo():
|
|
creator = UserFactory.create()
|
|
requests = RequestFactory.create_batch(5, creator=creator)
|
|
Requests.submit(requests[0])
|
|
|
|
ccpo = UserFactory.from_atat_role("ccpo")
|
|
context = RequestsIndex(ccpo).execute()
|
|
|
|
assert context["num_action_required"] == 1
|
|
|
|
|
|
def test_ccpo_sees_approval_screen():
|
|
ccpo = UserFactory.from_atat_role("ccpo")
|
|
request = RequestFactory.create()
|
|
Requests.submit(request)
|
|
ccpo_context = RequestsIndex(ccpo).execute()
|
|
assert (
|
|
ccpo_context["requests"][0]["edit_link"]
|
|
== url_for("requests.approval", request_id=request.id)
|
|
)
|
|
|
|
mo_context = RequestsIndex(request.creator).execute()
|
|
assert (
|
|
mo_context["requests"][0]["edit_link"]
|
|
!= url_for("requests.approval", request_id=request.id)
|
|
)
|