Skip to content

Commit

Permalink
Merge pull request #828 from uktrade/LTD-1277-report-summary-fix
Browse files Browse the repository at this point in the history
Save report_summary on GoodOnApplication
  • Loading branch information
eadpearce authored Oct 1, 2021
2 parents f6a8b99 + 95f36a1 commit dd8260c
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 11 deletions.
1 change: 0 additions & 1 deletion api/goods/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -825,7 +825,6 @@ def update(self, instance, validated_data):
super().update(instance, validated_data)
instance.good.status = GoodStatus.VERIFIED
instance.good.control_list_entries.set(validated_data["control_list_entries"])
instance.good.report_summary = validated_data["report_summary"]
instance.good.save()
instance.good.flags.remove(SystemFlags.GOOD_NOT_YET_VERIFIED_ID)
return instance
Expand Down
41 changes: 31 additions & 10 deletions api/goods/tests/test_control_codes.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ def test_verify_multiple_goods(self):
data = {
"objects": [self.good_1.pk, self.good_2.pk],
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"control_list_entries": ["ML1a"],
"is_good_controlled": True,
}
Expand All @@ -71,14 +71,35 @@ def test_verify_multiple_goods(self):
self.assertEqual(verified_good_1.control_list_entries.get().rating, "ML1a")
self.assertEqual(verified_good_2.control_list_entries.get().rating, "ML1a")

def test_report_summary_saved_goodonapplication(self):
"""
Make sure report_summary is saved to the GoodOnApplication
"""

data = {
"objects": [self.good_1.pk],
"control_list_entries": ["ML1a"],
"is_precedent": False,
"is_good_controlled": True,
"end_use_control": [],
"report_summary": self.report_summary.text,
"comment": "Lorem ipsum",
}

response = self.client.post(self.url, data, **self.gov_headers)
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.good_on_application_1.refresh_from_db()

self.assertEqual(self.good_on_application_1.report_summary, self.report_summary.text)

def test_verify_multiple_goods_NLR(self):
"""
Post multiple goods to the endpoint, and check that the control code is not set if good is not controlled
"""
data = {
"objects": [self.good_1.pk, self.good_2.pk],
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"control_list_entries": ["ML1a"],
"is_good_controlled": False,
}
Expand All @@ -96,7 +117,7 @@ def test_invalid_good_pk(self):
data = {
"objects": [self.team.pk, self.good_1.pk],
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"is_good_controlled": False,
"control_list_entries": ["ML1b"],
}
Expand Down Expand Up @@ -141,7 +162,7 @@ def test_invalid_good_pk(self):
def test_is_precedent_is_set(self, input, expected_is_precedent):
defaults = {
"objects": [self.good_1.pk],
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
}
data = {**defaults, **input}

Expand All @@ -160,7 +181,7 @@ def test_standard_invalid_control_list_entries(self):
data = {
"objects": [self.good_1.pk, self.good_2.pk],
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"is_good_controlled": True,
"control_list_entries": ["invalid"],
}
Expand All @@ -179,7 +200,7 @@ def test_standard_controlled_good_empty_control_list_entries(self):
data = {
"objects": [self.good_1.pk, self.good_2.pk],
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"is_good_controlled": True,
"control_list_entries": [],
}
Expand Down Expand Up @@ -217,7 +238,7 @@ def test_cannot_set_control_list_entries_when_application_in_terminal_state(self
data = {
"objects": self.good_1.pk,
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"control_list_entries": "ML1a",
"is_good_controlled": "yes",
}
Expand Down Expand Up @@ -256,7 +277,7 @@ def test_verify_single_good(self):
data = {
"objects": self.good_1.pk,
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"is_good_controlled": True,
"control_list_entries": ["ML1a"],
}
Expand All @@ -280,7 +301,7 @@ def test_verify_only_change_comment_doesnt_remove_flags(self):
data = {
"objects": self.good_1.pk,
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"control_list_entries": ["ML1a"],
"is_good_controlled": True,
}
Expand All @@ -302,7 +323,7 @@ def test_invalid_control_list_entries(self):
data = {
"objects": [self.good_1.pk, self.good_2.pk],
"comment": "I Am Easy to Find",
"report_summary": self.report_summary.pk,
"report_summary": self.report_summary.text,
"control_list_entries": ["invalid"],
"is_good_controlled": "True",
}
Expand Down

0 comments on commit dd8260c

Please sign in to comment.