Merge pull request #1661 from alphagov/pytest-env

Automatically set environment vars before tests
This commit is contained in:
Chris Hill-Scott
2018-02-15 09:34:49 +00:00
committed by GitHub
5 changed files with 22 additions and 22 deletions

View File

@@ -128,7 +128,7 @@ test-with-docker: prepare-docker-build-image create-docker-test-db ## Run tests
--link "${DOCKER_CONTAINER_PREFIX}-db:postgres" \
-e UID=$(shell id -u) \
-e GID=$(shell id -g) \
-e TEST_DATABASE=postgresql://postgres:postgres@postgres/test_notification_api \
-e SQLALCHEMY_DATABASE_URI=postgresql://postgres:postgres@postgres/test_notification_api \
-e GIT_COMMIT=${GIT_COMMIT} \
-e BUILD_NUMBER=${BUILD_NUMBER} \
-e BUILD_URL=${BUILD_URL} \

View File

@@ -1,17 +0,0 @@
export SQLALCHEMY_DATABASE_URI=${TEST_DATABASE:='postgresql://localhost/test_notification_api'}
export SECRET_KEY='secret-key'
export DANGEROUS_SALT='dangerous-salt'
export NOTIFY_ENVIRONMENT='test'
export ADMIN_CLIENT_SECRET='dev-notify-secret-key'
export ADMIN_BASE_URL='http://localhost:6012'
export FROM_NUMBER='from_number'
export MMG_URL="https://api.mmg.co.uk/json/api.php"
export MMG_API_KEY='mmg-secret-key'
export LOADTESTING_API_KEY="loadtesting"
export FIRETEXT_API_KEY="Firetext"
export STATSD_PREFIX="stats-prefix"
export NOTIFICATION_QUEUE_PREFIX='testing'
export REDIS_URL="redis://localhost:6379/0"
export FLASK_APP=application.py
export FLASK_DEBUG=1
export WERKZEUG_DEBUG_PIN=off

20
pytest.ini Normal file
View File

@@ -0,0 +1,20 @@
[pytest]
testpaths = tests
env =
D:SQLALCHEMY_DATABASE_URI=postgresql://@localhost/test_notification_api
SECRET_KEY=secret-key
DANGEROUS_SALT=dangerous-salt
NOTIFY_ENVIRONMENT=test
ADMIN_CLIENT_SECRET=dev-notify-secret-key
ADMIN_BASE_URL=http://localhost:6012
FROM_NUMBER=from_number
MMG_URL=https://api.mmg.co.uk/json/api.php
MMG_API_KEY=mmg-secret-key
LOADTESTING_API_KEY=loadtesting
FIRETEXT_API_KEY=Firetext
STATSD_PREFIX=stats-prefix
NOTIFICATION_QUEUE_PREFIX=testing
REDIS_URL=redis://localhost:6379/0
FLASK_APP=application.py
FLASK_DEBUG=1
WERKZEUG_DEBUG_PIN=off

View File

@@ -1,6 +1,7 @@
-r requirements.txt
flake8==3.5.0
pytest==3.4.0
pytest-env==0.6.2
pytest-mock==1.6.3
pytest-cov==2.5.1
pytest-xdist==1.22.0

View File

@@ -5,12 +5,8 @@
# NOTE: This script expects to be run from the project root with
# ./scripts/run_tests.sh
# Use default environment vars for localhost if not already set
set -o pipefail
source environment_test.sh
function display_result {
RESULT=$1
EXIT_STATUS=$2