Merge pull request #412 from dod-ccpo/status-change-emails

Notify PSO or MO of request status change
This commit is contained in:
richard-dds
2018-11-01 10:13:39 -04:00
committed by GitHub
14 changed files with 198 additions and 66 deletions

View File

@@ -0,0 +1,52 @@
from tests.factories import UserFactory, RequestFactory
from atst.models.request_status_event import RequestStatus
def test_creator_pending_finver(client, user_session):
request = RequestFactory.create_with_status(
RequestStatus.PENDING_FINANCIAL_VERIFICATION
)
user_session(request.creator)
response = client.get(
"/requests/edit/{}".format(request.id), follow_redirects=False
)
assert "verify" in response.location
def test_creator_pending_finver_changes(client, user_session):
request = RequestFactory.create_with_status(
RequestStatus.CHANGES_REQUESTED_TO_FINVER
)
user_session(request.creator)
response = client.get(
"/requests/edit/{}".format(request.id), follow_redirects=False
)
assert "verify" in response.location
def test_creator_approved(client, user_session):
request = RequestFactory.create_with_status(RequestStatus.APPROVED)
user_session(request.creator)
response = client.get(
"/requests/edit/{}".format(request.id), follow_redirects=False
)
assert "details" in response.location
def test_creator_approved(client, user_session):
request = RequestFactory.create_with_status(RequestStatus.STARTED)
user_session(request.creator)
response = client.get(
"/requests/edit/{}".format(request.id), follow_redirects=False
)
assert "new" in response.location
def test_ccpo(client, user_session):
ccpo = UserFactory.from_atat_role("ccpo")
request = RequestFactory.create_with_status(RequestStatus.STARTED)
user_session(ccpo)
response = client.get(
"/requests/edit/{}".format(request.id), follow_redirects=False
)
assert "approval" in response.location

View File

@@ -237,13 +237,11 @@ def test_displays_ccpo_review_comment(user_session, client):
ccpo = UserFactory.from_atat_role("ccpo")
user_session(creator)
request = RequestFactory.create(creator=creator)
status = RequestStatusEventFactory.create(
request=request,
revision=request.latest_revision,
new_status=RequestStatus.CHANGES_REQUESTED,
)
request = Requests.set_status(request, RequestStatus.CHANGES_REQUESTED)
review_comment = "add all of the correct info, instead of the incorrect info"
RequestReviewFactory.create(reviewer=ccpo, comment=review_comment, status=status)
RequestReviewFactory.create(
reviewer=ccpo, comment=review_comment, status=request.status_events[-1]
)
response = client.get("/requests/new/1/{}".format(request.id))
body = response.data.decode()
assert review_comment in body

View File

@@ -23,18 +23,3 @@ def test_action_required_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
)