This also removes a test setup command that added an uploads directory. It's no longer necessary.
56 lines
1.4 KiB
Plaintext
56 lines
1.4 KiB
Plaintext
# run_test: Execute code checkers and unit tests
|
|
|
|
# Load test functions
|
|
source ./script/include/test_functions.inc.sh
|
|
|
|
## Set option defaults
|
|
# If PYTHON_FILES is not set, give it the default value of "app.py"
|
|
if [ -z "${PYTHON_FILES+is_set}" ]; then
|
|
PYTHON_FILES="app.py"
|
|
fi
|
|
|
|
# reset test database
|
|
if [ "${RESET_DB}" = "true" ]; then
|
|
# Fetch postgres settings and set them as ENV vars
|
|
source ./script/get_db_settings
|
|
|
|
if [ -n "${PGDATABASE}" ]; then
|
|
output_divider "Reset database ${PGDATABASE}"
|
|
# Reset the db
|
|
reset_db "${PGDATABASE}"
|
|
else
|
|
warning "warning: RESET_DB is set, but PGDATABASE is not!"
|
|
warning "Skipping database reset..."
|
|
fi
|
|
fi
|
|
|
|
## Main
|
|
if [ "${RUN_PYTHON_TESTS}" = "true" ]; then
|
|
python_test_status=0
|
|
set +e
|
|
|
|
output_divider "Lint Python files"
|
|
run_python_lint "${PYTHON_FILES}"
|
|
((python_test_status+=$?))
|
|
output_divider "Perform static analysis on Python files"
|
|
run_python_static_analysis "${PYTHON_FILES}"
|
|
((python_test_status+=$?))
|
|
output_divider "Run Python unit test suite"
|
|
run_python_unit_tests "${PYTHON_FILES}"
|
|
((python_test_status+=$?))
|
|
|
|
if [ "${python_test_status}" != "0" ]; then
|
|
warning "Failed to pass one or more Python checks"
|
|
exit ${python_test_status}
|
|
fi
|
|
|
|
set -e
|
|
fi
|
|
|
|
if [ "${RUN_JS_TESTS}" = "true" ]; then
|
|
output_divider "Render Vue components"
|
|
run_python_render_vue_component
|
|
output_divider "Run JavaScript unit test suite"
|
|
run_javascript_tests
|
|
fi
|