diff --git a/app/models.py b/app/models.py index 9a830652b..6678d91e6 100644 --- a/app/models.py +++ b/app/models.py @@ -1306,7 +1306,7 @@ class Notification(db.Model): serialized['line_4'] = col.get('address_line_4') serialized['line_5'] = col.get('address_line_5') serialized['line_6'] = col.get('address_line_6') - serialized['postcode'] = self.personalisation['postcode'] + serialized['postcode'] = col.get('postcode') serialized['estimated_delivery'] = \ get_letter_timings(serialized['created_at'])\ .earliest_delivery\ diff --git a/tests/app/test_model.py b/tests/app/test_model.py index af73e1460..a0b8d4804 100644 --- a/tests/app/test_model.py +++ b/tests/app/test_model.py @@ -307,3 +307,15 @@ def test_letter_notification_serializes_correctly(client, sample_letter_notifica assert json['line_1'] == 'test' assert json['line_2'] == 'London' assert json['postcode'] == 'N1' + + +def test_letter_notification_postcode_can_be_null_for_precompiled_letters(client, sample_letter_notification): + sample_letter_notification.personalisation = { + 'address_line_1': 'test', + 'address_line_2': 'London', + } + + json = sample_letter_notification.serialize() + assert json['line_1'] == 'test' + assert json['line_2'] == 'London' + assert json['postcode'] is None