diff --git a/.travis.yml b/.travis.yml index 9a0a62f10..b8a69bb8e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -26,47 +26,6 @@ notifications: rooms: secure: A6n6Gdz3dsE+KQcOd1nWTvdjOF2YbgItT1E40r25poG6p04WHd8qWtC4T2FuZaxPN/TQdKr/dKa/WCkmiEdxT5O0SOwAnAD3u6Fn2nthoI4M5916UrK1ZrqupvnFPSQc8Ivh51PGkcmB4wrb0ylRhMB94RmLcUZcVuXLDx57GO8bPFyLC3E9bgcVVFWaX45sKs74sBSQWi9EBbzHIuduLdjIpW7wX07dA++HlY14W5WgiurmiYohfP11VdAMmMxJs2WdWk16O/qy0HZXaldNIsSnuDBkhAZOMeSrcvp+62yOiN8jK0nSa1IRr3IoUkITdC9YGys3xFJb8gyIQE9T3hUnTYAKCcgsgpVFS6UzsRN42JUAJ8rFTgK9/J299yTk4lqL8uWzcV1QcKXIPNoG0QfqkmlB9B1fKbXuE/KkPEXPCKAcVQpCzEon09FgTCrlVZqJ6HxQonnLcPlIpVzWHAFokLZVHLAFMKYJnGBcZ6zaRK5pdc1babcOXMIPBC8j028G5bhBaCviDvZlimxOsUK1sJTpjzMU0tBQZa8lI+0O5otvMKiX8jPyaedjVvUmsftF2O5FH5nz2ofJC7BThb76/Tac2pNTCn0pWiVz9wi/YXALOMdIzkYgHnyZdEqAjRlpFwZuOrzR6MuvivBebPxjYaRWzCjOeC1uIwz+48E= deploy: -- provider: s3 - access_key_id: AKIAJLWYN4T4D5WU4APA - secret_access_key: &1 - secure: EUiC93M7BI563BTIZV8tR2PvA1iIVKliKIiiFOJ9F8MJDB4Eya0ZfMLC1hsopJ1gZPWv4CjcW04CWqHf62FQJHDDTFtERMXEhJjVGOTgCC+7fkGEKV5pBJCtVdSGlQwd8HjlcfUZ8M7qlnqwLMj2IcTSiMzCVr8RpuSNHM9DF88n3k0EEiF+h83wB1PSmA+4I+CRevFg6xK1ezjSxCZV9N4A9vd1mrX+BSsH0ikbUA66ccAPMGy0yVR3CtzrI9AObutc9mO8qzLXI0SuCYFvyFEHXdXqqcWw4XJ28hYsayHO4gEX1ndYSNzIcCJKXseJRs6idcE0xRpipigYyx83SqvbPtrBlga47MPHXpP8Xl8xTKtVLo9k+Itbx96t1pllrhFqoysHfV8yRrh+otmED2sziB1VTiecPP0IvlVlWGEzUHMepkQhZKfDmFUtcpa7BrJx0Fxzsu9mL9tKx5H7PVA9uMC67Tc6qI3PNSE5XsNfBUjSOzaSY7UFUdKmvINXRk9PIP+NXOsH0kzILl7EzvUoBIbFf8+/1EDmvMc88J5yg4QCmVnIhw5JqnC1uQyDUy41VOsdqgwVUHy7hJuXtKMnUSYuDOltP2fdkArLby0VFgcQgoT+N87I4xcjVzLjEvNgwlZ1nHuBf9v+aB0aD9e/LB03gIt23Nrucu9ON1M= - local_dir: dpl_cd_upload - skip_cleanup: true - region: eu-west-1 - on: &2 - repo: alphagov/notifications-admin - bucket: notify.works-notifications-admin-codedeploy -- provider: codedeploy - access_key_id: AKIAJLWYN4T4D5WU4APA - secret_access_key: *1 - bucket: notify.works-notifications-admin-codedeploy - key: notifications-admin-$TRAVIS_BRANCH-$TRAVIS_BUILD_NUMBER-$TRAVIS_COMMIT.zip - bundle_type: zip - application: admin - deployment_group: notifications_admin_deployment_group - region: eu-west-1 - on: *2 -- provider: s3 - access_key_id: AKIAJCOSRR7IFXS2WJUA - secret_access_key: &1 - secure: LBprDWBFawNvG9M0AVHJkS0txP4IapXG6K8OIzY6T3yDJP8vTnN6M34C++AprkZEqehzug36Vms5PVv9p2gkJOjZkwBKMRFZtjdxGXfRaZnbGQgcBbleMhdXsDWlGJm7RnMS/SX79tiezQ2h6GYyb96vBT0mdfyo/OPr5HJ6IWa/fblUXzZF1a5kCvP2uvR+nXKutsfNnP7lFzrFiH6efyeI1XPD18TU7Nuy6xOZDkDlX2RAvq+Qe5zX0o7VzXFkFdf7NfVT7AswoAEEVZeWNrm84oQJsH88QymDgpdLLzAlwmrWHDTGQtRCOQvXWhK6HvZMgP9n4EcWSIq4WMCjXMcnUqW6mvB+dBjJEe3I+oVgf1TWpdCSAWyffkJ805/xSF/BP92KHg8PAYJKlzrpHWuHaysf05a0QyKsFW09SzzQbpMrs0KLErqOLbG9NKZ5MaUepnsMyuKTr3shysNzlbcC5TghpGQO+D2yj/cJYmKp835Nx9tSU49woDbMDycdgF0rIczfwM8+OrywPw4fY6NAir6uAGx3aYrCx2BNEsGW4tjY7ab8EGCk4pgWpBw1/ERclA6D5sx7ppLI3wnVKsUyPUDvjOFjqdWkBrsONM4xHENRyaJupzQEuzJt/nxtHHGsayyKqYWT24+6ira8p4vJVqnJ+qBM3C7IYVIVXM8= - local_dir: dpl_cd_upload - skip_cleanup: true - region: eu-west-1 - on: &2 - repo: alphagov/notifications-admin - branch: staging - bucket: staging-notify.works-notifications-admin-codedeploy -- provider: codedeploy - access_key_id: AKIAJCOSRR7IFXS2WJUA - secret_access_key: *1 - bucket: staging-notify.works-notifications-admin-codedeploy - key: notifications-admin-$TRAVIS_BRANCH-$TRAVIS_BUILD_NUMBER-$TRAVIS_COMMIT.zip - bundle_type: zip - application: admin - deployment_group: notifications_admin_deployment_group - region: eu-west-1 - on: *2 - provider: s3 access_key_id: AKIAIFLN7IJIIQT6S37Q secret_access_key: &1 diff --git a/Makefile b/Makefile index f046f9c04..37a19a736 100644 --- a/Makefile +++ b/Makefile @@ -101,6 +101,9 @@ build-with-docker: prepare-docker-build-image ## Build inside a Docker container --name "${DOCKER_CONTAINER_PREFIX}-build" \ -v `pwd`:/var/project \ -v ${PIP_ACCEL_CACHE}:/var/project/cache/pip-accel \ + -e GIT_COMMIT=${GIT_COMMIT} \ + -e BUILD_NUMBER=${BUILD_NUMBER} \ + -e BUILD_URL=${BUILD_URL} \ ${DOCKER_BUILDER_IMAGE_NAME} \ make build @@ -109,6 +112,9 @@ test-with-docker: prepare-docker-build-image ## Run tests inside a Docker contai docker run -i --rm \ --name "${DOCKER_CONTAINER_PREFIX}-test" \ -v `pwd`:/var/project \ + -e GIT_COMMIT=${GIT_COMMIT} \ + -e BUILD_NUMBER=${BUILD_NUMBER} \ + -e BUILD_URL=${BUILD_URL} \ ${DOCKER_BUILDER_IMAGE_NAME} \ make test diff --git a/app/notify_client/service_api_client.py b/app/notify_client/service_api_client.py index 0e67f28ca..db837e53c 100644 --- a/app/notify_client/service_api_client.py +++ b/app/notify_client/service_api_client.py @@ -89,6 +89,7 @@ class ServiceAPIClient(NotificationsAPIClient): 'restricted', 'email_from', 'reply_to_email_address', + 'research_mode', 'sms_sender', 'created_by', 'branding', diff --git a/tests/app/main/views/test_service_settings.py b/tests/app/main/views/test_service_settings.py index 8b214b647..77817e033 100644 --- a/tests/app/main/views/test_service_settings.py +++ b/tests/app/main/views/test_service_settings.py @@ -592,25 +592,29 @@ def test_if_reply_to_email_address_set_then_form_populated(app_, def test_switch_service_to_research_mode( - app_, - service_one, - mock_login, - mock_get_user, - active_user_with_permissions, - mock_get_service, - mock_has_permissions, - mocker): - with app_.test_request_context(): - with app_.test_client() as client: - mocker.patch('app.service_api_client.update_service_with_properties', return_value=service_one) + app_, + service_one, + mock_login, + mock_get_user, + active_user_with_permissions, + mock_get_service, + mock_has_permissions, + mocker +): + with app_.test_request_context(), app_.test_client() as client: + mocker.patch('app.service_api_client.post', return_value=service_one) - client.login(active_user_with_permissions) - response = client.get(url_for('main.service_switch_research_mode', service_id=service_one['id'])) - assert response.status_code == 302 - assert response.location == url_for('main.service_settings', service_id=service_one['id'], _external=True) - app.service_api_client.update_service_with_properties.assert_called_with( - service_one['id'], {"research_mode": True} - ) + client.login(active_user_with_permissions) + response = client.get(url_for('main.service_switch_research_mode', service_id=service_one['id'])) + assert response.status_code == 302 + assert response.location == url_for('main.service_settings', service_id=service_one['id'], _external=True) + app.service_api_client.post.assert_called_with( + '/service/{}'.format(service_one['id']), + { + 'research_mode': True, + 'created_by': active_user_with_permissions.id + } + ) def test_switch_service_from_research_mode_to_normal(