Skip to content

Commit

Permalink
desnz prefix update and test history update
Browse files Browse the repository at this point in the history
  • Loading branch information
Tllew committed Nov 26, 2024
1 parent 484b3dc commit d3dc88e
Show file tree
Hide file tree
Showing 4 changed files with 137 additions and 33 deletions.
2 changes: 1 addition & 1 deletion caseworker/advice/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,6 @@ class AdviceType:


class AdviceView:
DESNZ_RECOMMEND_APPROVAL = "desnz_recommend_approval"
RECOMMEND_APPROVAL = "recommend_approval"
LICENCE_CONDITIONS = "licence_conditions"
LICENCE_FOOTNOTES = "licence_footnotes"
10 changes: 5 additions & 5 deletions caseworker/advice/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -359,15 +359,15 @@ def get_context_data(self, **kwargs):
class GiveApprovalAdviceView(LoginRequiredMixin, CaseContextMixin, BaseSessionWizardView):

form_list = [
(AdviceView.DESNZ_RECOMMEND_APPROVAL, forms.RecommendAnApproval),
(AdviceView.RECOMMEND_APPROVAL, forms.RecommendAnApproval),
(AdviceView.LICENCE_CONDITIONS, forms.LicenceConditionsForm),
(AdviceView.LICENCE_FOOTNOTES, forms.FootnotesApprovalAdviceForm),
]

condition_dict = {
AdviceView.DESNZ_RECOMMEND_APPROVAL: C(is_desnz_team),
AdviceView.LICENCE_CONDITIONS: C(form_add_licence_conditions("desnz_recommend_approval")),
AdviceView.LICENCE_FOOTNOTES: C(form_add_licence_conditions("desnz_recommend_approval")),
AdviceView.RECOMMEND_APPROVAL: C(is_desnz_team),
AdviceView.LICENCE_CONDITIONS: C(form_add_licence_conditions("recommend_approval")),
AdviceView.LICENCE_FOOTNOTES: C(form_add_licence_conditions("recommend_approval")),
}

def get_form_kwargs(self, step=None):
Expand Down Expand Up @@ -406,7 +406,7 @@ def done(self, form_list, form_dict, **kwargs):
class EditAdviceView(GiveApprovalAdviceView):

form_list = [
(AdviceView.DESNZ_RECOMMEND_APPROVAL, forms.RecommendAnApproval),
(AdviceView.RECOMMEND_APPROVAL, forms.RecommendAnApproval),
(AdviceView.LICENCE_CONDITIONS, forms.PicklistApprovalAdviceFormEdit),
(AdviceView.LICENCE_FOOTNOTES, forms.FootnotesApprovalAdviceForm),
]
Expand Down
148 changes: 126 additions & 22 deletions unit_tests/caseworker/advice/views/test_edit_advice.py
Original file line number Diff line number Diff line change
Expand Up @@ -260,24 +260,76 @@ def test_DESNZ_give_approval_advice_post_valid(
)

response = post_to_step(
AdviceView.DESNZ_RECOMMEND_APPROVAL,
AdviceView.RECOMMEND_APPROVAL,
{"approval_reasons": "reason updated", "add_licence_conditions": False},
)
assert response.status_code == 302
history = [item for item in requests_mock.request_history if user_advice_create_url in item.url]
assert len(history) == 1
history = history[0]
assert history.method == "POST"
assert history.json()[0] == {
"type": "approve",
"text": "reason updated",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"end_user": "95d3ea36-6ab9-41ea-a744-7284d17b9cc5",
"denial_reasons": [],
}
assert history.json() == [
{
"type": "approve",
"text": "reason updated",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"end_user": "95d3ea36-6ab9-41ea-a744-7284d17b9cc5",
"denial_reasons": [],
},
{
"type": "approve",
"text": "reason updated",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"consignee": "cd2263b4-a427-4f14-8552-505e1d192bb8",
"denial_reasons": [],
},
{
"type": "approve",
"text": "reason updated",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"ultimate_end_user": "9f077b3c-6116-4111-b9a0-b2491198aa72",
"denial_reasons": [],
},
{
"type": "approve",
"text": "reason updated",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"third_party": "95c2d6b7-5cfd-47e8-b3c8-dc76e1ac9747",
"denial_reasons": [],
},
{
"type": "approve",
"text": "reason updated",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"good": "9fbffa7f-ef50-402e-93ac-2f3f37d09030",
"denial_reasons": [],
},
{
"type": "no_licence_required",
"text": "",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"good": "d4feac1e-851d-41a5-b833-eb28addb8547",
"denial_reasons": [],
},
]


@mock.patch("caseworker.advice.views.get_gov_user")
Expand Down Expand Up @@ -320,7 +372,7 @@ def test_DESNZ_give_approval_advice_post_valid_add_conditional(
)

response = post_to_step(
AdviceView.DESNZ_RECOMMEND_APPROVAL,
AdviceView.RECOMMEND_APPROVAL,
{"approval_reasons": "reason updated", "add_licence_conditions": True},
)
assert response.status_code == 200
Expand Down Expand Up @@ -348,13 +400,65 @@ def test_DESNZ_give_approval_advice_post_valid_add_conditional(
assert len(history) == 1
history = history[0]
assert history.method == "POST"
assert history.json()[0] == {
"type": "proviso",
"text": "reason updated",
"proviso": "proviso updated",
"note": "instructions updated",
"footnote_required": True,
"footnote": "footnotes updated",
"end_user": "95d3ea36-6ab9-41ea-a744-7284d17b9cc5",
"denial_reasons": [],
}
assert history.json() == [
{
"type": "proviso",
"text": "reason updated",
"proviso": "proviso updated",
"note": "instructions updated",
"footnote_required": True,
"footnote": "footnotes updated",
"end_user": "95d3ea36-6ab9-41ea-a744-7284d17b9cc5",
"denial_reasons": [],
},
{
"type": "proviso",
"text": "reason updated",
"proviso": "proviso updated",
"note": "instructions updated",
"footnote_required": True,
"footnote": "footnotes updated",
"consignee": "cd2263b4-a427-4f14-8552-505e1d192bb8",
"denial_reasons": [],
},
{
"type": "proviso",
"text": "reason updated",
"proviso": "proviso updated",
"note": "instructions updated",
"footnote_required": True,
"footnote": "footnotes updated",
"ultimate_end_user": "9f077b3c-6116-4111-b9a0-b2491198aa72",
"denial_reasons": [],
},
{
"type": "proviso",
"text": "reason updated",
"proviso": "proviso updated",
"note": "instructions updated",
"footnote_required": True,
"footnote": "footnotes updated",
"third_party": "95c2d6b7-5cfd-47e8-b3c8-dc76e1ac9747",
"denial_reasons": [],
},
{
"type": "proviso",
"text": "reason updated",
"proviso": "proviso updated",
"note": "instructions updated",
"footnote_required": True,
"footnote": "footnotes updated",
"good": "9fbffa7f-ef50-402e-93ac-2f3f37d09030",
"denial_reasons": [],
},
{
"type": "no_licence_required",
"text": "",
"proviso": "",
"note": "",
"footnote_required": False,
"footnote": "",
"good": "d4feac1e-851d-41a5-b833-eb28addb8547",
"denial_reasons": [],
},
]
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ def test_DESNZ_give_approval_advice_post_valid(
requests_mock.post(f"/cases/{data_standard_case['case']['id']}/user-advice/", json={})

response = post_to_step(
AdviceView.DESNZ_RECOMMEND_APPROVAL,
AdviceView.RECOMMEND_APPROVAL,
{"approval_reasons": "Data"},
)
assert response.status_code == 302
Expand Down Expand Up @@ -189,7 +189,7 @@ def test_DESNZ_give_approval_advice_post_valid_add_conditional(
requests_mock.post(f"/cases/{data_standard_case['case']['id']}/user-advice/", json={})

response = post_to_step(
AdviceView.DESNZ_RECOMMEND_APPROVAL,
AdviceView.RECOMMEND_APPROVAL,
{"approval_reasons": "reason", "add_licence_conditions": True},
)
assert response.status_code == 200
Expand Down Expand Up @@ -243,7 +243,7 @@ def test_DESNZ_give_approval_advice_post_valid_add_conditional_optional(
requests_mock.post(f"/cases/{data_standard_case['case']['id']}/user-advice/", json={})

response = post_to_step(
AdviceView.DESNZ_RECOMMEND_APPROVAL,
AdviceView.RECOMMEND_APPROVAL,
{"approval_reasons": "reason", "add_licence_conditions": True},
)
assert response.status_code == 200
Expand Down Expand Up @@ -297,7 +297,7 @@ def test_DESNZ_give_approval_advice_post_invalid(
requests_mock.post(f"/cases/{data_standard_case['case']['id']}/user-advice/", json={})

response = post_to_step(
AdviceView.DESNZ_RECOMMEND_APPROVAL,
AdviceView.RECOMMEND_APPROVAL,
{"approval_reasons": ""},
)
assert response.status_code == 200
Expand Down Expand Up @@ -334,6 +334,6 @@ def test_DESNZ_give_approval_advice_post_invalid_user(
# DESNZ only.
with pytest.raises(IndexError) as err:
response = post_to_step(
AdviceView.DESNZ_RECOMMEND_APPROVAL,
AdviceView.RECOMMEND_APPROVAL,
{"approval_reasons": ""},
)

0 comments on commit d3dc88e

Please sign in to comment.