mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-05-29 18:40:10 -04:00
Run tests directly from the Makefile
Depends on: https://github.com/alphagov/notifications-aws/pull/905 Previously this would print some custom text with each step, and as optionally loading a virtual environment. This moves the actual test commands to the Makefile. While this no longer prints custom text, it does print the command that was run: Before (skipping other output): ./scripts/run_tests.sh Code style check passed Import order check passed ... JavaScript tests have passed ... Unit tests have passed After (skipping other output): flake8 . isort --check-only ./app ./tests npm test ... py.test -n auto --maxfail=10 tests/ ... I think it's more useful to see the command being run, rather than having to wait until it succeeds to know what was happening. Having the command also makes it easier to run it again if it fails, rather than having to go and find it in a script.
This commit is contained in:
5
Makefile
5
Makefile
@@ -49,7 +49,10 @@ generate-version-file: ## Generates the app version file
|
||||
|
||||
.PHONY: test
|
||||
test: ## Run tests
|
||||
./scripts/run_tests.sh
|
||||
flake8 .
|
||||
isort --check-only ./app ./tests
|
||||
npm test
|
||||
py.test -n auto --maxfail=10 tests/
|
||||
|
||||
.PHONY: fix-imports
|
||||
fix-imports:
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Run project tests
|
||||
#
|
||||
# NOTE: This script expects to be run from the project root with
|
||||
# ./scripts/run_tests.sh
|
||||
|
||||
set -o pipefail
|
||||
|
||||
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
|
||||
|
||||
flake8 .
|
||||
display_result $? 1 "Code style check"
|
||||
|
||||
isort --check-only ./app ./tests
|
||||
display_result $? 2 "Import order check"
|
||||
|
||||
npm test
|
||||
display_result $? 3 "Javascript tests have"
|
||||
|
||||
py.test -n auto --maxfail=10 tests/
|
||||
display_result $? 4 "Unit tests have"
|
||||
Reference in New Issue
Block a user