mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-14 17:22:17 -05:00
previously they were using sample_service fixture under the hood, but with full permissions added - this works fine, **unless** there's already a service with the name "sample service" in the database. This can happen for two reasons: * A previous test didn't tear down correctly * This test already invoked the sample_service fixture somehow If this happens, we just return the existing service, without modifying its values - values that we might change in tests, such as research mode or letters permissions. In the future, we'll have to be vigilant! and aware! and careful! to not use sample_service if we're doing tests involving letters, since they create a service with a different name now
36 lines
744 B
Bash
Executable File
36 lines
744 B
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Run project tests
|
|
#
|
|
# 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
|
|
TEST=$3
|
|
|
|
if [ $RESULT -ne 0 ]; then
|
|
echo -e "\033[31m$TEST failed\033[0m"
|
|
exit $EXIT_STATUS
|
|
else
|
|
echo -e "\033[32m$TEST passed\033[0m"
|
|
fi
|
|
}
|
|
|
|
if [[ -z "$VIRTUAL_ENV" ]] && [[ -d venv ]]; then
|
|
source ./venv/bin/activate
|
|
fi
|
|
pycodestyle .
|
|
display_result $? 1 "Code style check"
|
|
|
|
# run with four concurrent threads
|
|
py.test --cov=app --cov-report=term-missing tests/ --junitxml=test_results.xml -n 4 -v
|
|
display_result $? 2 "Unit tests"
|