atst/tests/routes/test_requests_index.py
2018-09-10 11:22:59 -04:00

41 lines
1.2 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
)