From cb37ba5f783c1a6dd65171526235a40ef8725b52 Mon Sep 17 00:00:00 2001 From: Imdad Ahad Date: Tue, 26 Sep 2017 15:09:02 +0100 Subject: [PATCH] Update schema to return default letter contact for a service --- app/schemas.py | 6 +++++- app/service/rest.py | 1 - tests/app/conftest.py | 3 +-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/schemas.py b/app/schemas.py index e880a1589..38799baa2 100644 --- a/app/schemas.py +++ b/app/schemas.py @@ -183,6 +183,7 @@ class ServiceSchema(BaseSchema): permissions = fields.Method("service_permissions") override_flag = False reply_to_email_address = fields.Method(method_name="get_reply_to_email_address") + letter_contact_block = fields.Method(method_name="get_letter_contact") def get_free_sms_fragment_limit(selfs, service): return service.free_sms_fragment_limit() @@ -193,9 +194,12 @@ class ServiceSchema(BaseSchema): def get_reply_to_email_address(self, service): return service.get_default_reply_to_email_address() + def get_letter_contact(self, service): + return service.get_default_letter_contact() + class Meta: model = models.Service - dump_only = ['free_sms_fragment_limit', 'reply_to_email_address'] + dump_only = ['free_sms_fragment_limit', 'reply_to_email_address', 'letter_contact_block'] exclude = ( 'updated_at', 'created_at', diff --git a/app/service/rest.py b/app/service/rest.py index df1457556..c4a2d9e59 100644 --- a/app/service/rest.py +++ b/app/service/rest.py @@ -147,7 +147,6 @@ def update_service(service_id): fetched_service = dao_fetch_service_by_id(service_id) # Capture the status change here as Marshmallow changes this later service_going_live = fetched_service.restricted and not req_json.get('restricted', True) - current_data = dict(service_schema.dump(fetched_service).data.items()) current_data.update(request.get_json()) update_dict = service_schema.load(current_data).data diff --git a/tests/app/conftest.py b/tests/app/conftest.py index 042a20905..86c748df3 100644 --- a/tests/app/conftest.py +++ b/tests/app/conftest.py @@ -150,8 +150,7 @@ def sample_service( 'message_limit': limit, 'restricted': restricted, 'email_from': email_from, - 'created_by': user, - 'letter_contact_block': letter_contact_block, + 'created_by': user } service = Service.query.filter_by(name=service_name).first() if not service: