From 25ce3851eb0807bee1943196245c93ace7f5aff8 Mon Sep 17 00:00:00 2001 From: Imdad Ahad Date: Tue, 25 Apr 2017 10:36:37 +0100 Subject: [PATCH] Add international support flag for providers --- app/models.py | 3 +++ .../0074_add_intl_flag_to_provider.py | 27 +++++++++++++++++++ tests/app/provider_details/test_rest.py | 4 +-- 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 migrations/versions/0074_add_intl_flag_to_provider.py diff --git a/app/models.py b/app/models.py index d54f413e4..11cb1803c 100644 --- a/app/models.py +++ b/app/models.py @@ -443,6 +443,8 @@ class ProviderDetails(db.Model): updated_at = db.Column(db.DateTime, nullable=True, onupdate=datetime.datetime.utcnow) created_by_id = db.Column(UUID(as_uuid=True), db.ForeignKey('users.id'), index=True, nullable=True) created_by = db.relationship('User') + supports_international = db.Column(db.Boolean, nullable=False, default=False) + class ProviderDetailsHistory(db.Model, HistoryModel): @@ -458,6 +460,7 @@ class ProviderDetailsHistory(db.Model, HistoryModel): updated_at = db.Column(db.DateTime, nullable=True, onupdate=datetime.datetime.utcnow) created_by_id = db.Column(UUID(as_uuid=True), db.ForeignKey('users.id'), index=True, nullable=True) created_by = db.relationship('User') + supports_international = db.Column(db.Boolean, nullable=False, default=False) JOB_STATUS_PENDING = 'pending' diff --git a/migrations/versions/0074_add_intl_flag_to_provider.py b/migrations/versions/0074_add_intl_flag_to_provider.py new file mode 100644 index 000000000..687eb5ea3 --- /dev/null +++ b/migrations/versions/0074_add_intl_flag_to_provider.py @@ -0,0 +1,27 @@ +"""empty message + +Revision ID: 0074_add_intl_flag_to_provider +Revises: 0073_add_international_sms_flag +Create Date: 2017-04-25 09:44:13.194164 + +""" + +# revision identifiers, used by Alembic. +revision = '0074_add_intl_flag_to_provider' +down_revision = '0073_add_international_sms_flag' + +from alembic import op +import sqlalchemy as sa + + +def upgrade(): + op.add_column('provider_details', sa.Column('supports_international', sa.Boolean(), nullable=False, server_default=sa.false())) + op.add_column('provider_details_history', sa.Column('supports_international', sa.Boolean(), nullable=False, server_default=sa.false())) + + op.execute("UPDATE provider_details SET supports_international=True WHERE identifier='mmg'") + op.execute("UPDATE provider_details_history SET supports_international=True WHERE identifier='mmg'") + + +def downgrade(): + op.drop_column('provider_details_history', 'supports_international') + op.drop_column('provider_details', 'supports_international') diff --git a/tests/app/provider_details/test_rest.py b/tests/app/provider_details/test_rest.py index 15e2381be..36a40d2a0 100644 --- a/tests/app/provider_details/test_rest.py +++ b/tests/app/provider_details/test_rest.py @@ -47,7 +47,7 @@ def test_get_provider_details_contains_correct_fields(client, notify_db): allowed_keys = { "id", "created_by", "display_name", "identifier", "priority", 'notification_type', - "active", "version", "updated_at" + "active", "version", "updated_at", "supports_international" } assert allowed_keys == set(json_resp[0].keys()) @@ -116,7 +116,7 @@ def test_get_provider_versions_contains_correct_fields(client, notify_db): allowed_keys = { "id", "created_by", "display_name", "identifier", "priority", 'notification_type', - "active", "version", "updated_at" + "active", "version", "updated_at", "supports_international" } assert allowed_keys == set(json_resp[0].keys())