This PR fixes the check for the text key in the post data.

This commit is contained in:
Rebecca Law
2018-08-10 17:27:58 +01:00
parent ccaa1dfeb2
commit febc6f4e23
2 changed files with 21 additions and 2 deletions

View File

@@ -37,7 +37,7 @@ def create_email_branding():
validate(data, post_create_email_branding_schema)
email_branding = EmailBranding(**data)
if not data.get('text'):
if 'text' not in data.keys():
email_branding.text = email_branding.name
dao_create_email_branding(email_branding)
@@ -51,7 +51,7 @@ def update_email_branding(email_branding_id):
validate(data, post_update_email_branding_schema)
fetched_email_branding = dao_get_email_branding_by_id(email_branding_id)
if not data.get('text') and data.get('name'):
if 'text' not in data.keys() and 'name' in data.keys():
data['text'] = data['name']
dao_update_email_branding(fetched_email_branding, **data)

View File

@@ -120,6 +120,24 @@ def test_post_create_email_branding_with_text_and_name(admin_request, notify_db_
assert response['data']['text'] == 'text for brand'
def test_post_create_email_branding_with_text_as_none_and_name(admin_request, notify_db_session):
data = {
'name': 'name for brand',
'text': None,
'logo': 'images/text_x2.png'
}
response = admin_request.post(
'email_branding.create_email_branding',
_data=data,
_expected_status=201
)
assert response['data']['logo'] == data['logo']
assert response['data']['name'] == 'name for brand'
assert response['data']['colour'] is None
assert response['data']['text'] is None
@pytest.mark.parametrize('data_update', [
({'name': 'test email_branding 1'}),
({'logo': 'images/text_x3.png', 'colour': '#ffffff'}),
@@ -155,6 +173,7 @@ def test_post_update_email_branding_updates_field(admin_request, notify_db_sessi
@pytest.mark.parametrize('data_update', [
({'text': 'text email branding'}),
({'text': 'new text', 'name': 'new name'}),
({'text': None, 'name': 'test name'}),
])
def test_post_update_email_branding_updates_field_with_text(admin_request, notify_db_session, data_update):
data = {