2022-08-27 02:49:32 -05:00
|
|
|
#!/usr/bin/env sh
|
|
|
|
|
2019-01-27 03:54:04 -06:00
|
|
|
export APP_ENV=test
|
2020-09-26 03:43:50 -05:00
|
|
|
export TEST_ENV=api
|
2024-02-16 16:02:46 -06:00
|
|
|
export TEST_RUNTIME="${TEST_RUNTIME:-"rr"}" # rr is the only runtime currently supported
|
2022-08-27 02:49:32 -05:00
|
|
|
export DB_DRIVER="${DB_DRIVER:-"postgres"}"
|
|
|
|
export GENERATE_COVERAGE="${GENERATE_COVERAGE:-"no"}"
|
2019-01-27 03:54:04 -06:00
|
|
|
|
2024-10-21 04:54:45 -05:00
|
|
|
[ "$GENERATE_COVERAGE" != 'no' ] && export XDEBUG_MODE=coverage
|
|
|
|
|
2022-01-05 15:14:09 -06:00
|
|
|
# Reset logs
|
2022-08-27 02:09:14 -05:00
|
|
|
OUTPUT_LOGS=data/log/api-tests/output.log
|
2021-02-13 04:40:19 -06:00
|
|
|
rm -rf data/log/api-tests
|
2022-01-05 15:14:09 -06:00
|
|
|
mkdir data/log/api-tests
|
2022-08-27 02:09:14 -05:00
|
|
|
touch $OUTPUT_LOGS
|
2021-02-13 04:40:19 -06:00
|
|
|
|
2019-01-27 03:54:04 -06:00
|
|
|
# Try to stop server just in case it hanged in last execution
|
2024-02-23 12:30:58 -06:00
|
|
|
[ "$TEST_RUNTIME" = 'rr' ] && bin/rr stop -f -w .
|
2019-01-27 03:54:04 -06:00
|
|
|
|
|
|
|
echo 'Starting server...'
|
2024-02-23 12:30:58 -06:00
|
|
|
[ "$TEST_RUNTIME" = 'rr' ] && bin/rr serve -p -w . -c=config/roadrunner/.rr.test.yml \
|
2022-08-27 02:43:20 -05:00
|
|
|
-o=logs.output="${PWD}/${OUTPUT_LOGS}" \
|
|
|
|
-o=logs.channels.http.output="${PWD}/${OUTPUT_LOGS}" \
|
|
|
|
-o=logs.channels.server.output="${PWD}/${OUTPUT_LOGS}" &
|
2022-08-27 02:09:14 -05:00
|
|
|
sleep 2 # Let's give the server a couple of seconds to start
|
2019-01-27 03:54:04 -06:00
|
|
|
|
2024-08-04 06:13:03 -05:00
|
|
|
vendor/bin/phpunit --order-by=random -c phpunit-api.xml --testdox --testdox-summary $*
|
2024-02-10 02:54:59 -06:00
|
|
|
TESTS_EXIT_CODE=$?
|
2019-11-09 04:25:33 -06:00
|
|
|
|
2024-02-23 12:30:58 -06:00
|
|
|
[ "$TEST_RUNTIME" = 'rr' ] && bin/rr stop -w .
|
2019-11-09 04:25:33 -06:00
|
|
|
|
|
|
|
# Exit this script with the same code as the tests. If tests failed, this script has to fail
|
2024-02-10 02:54:59 -06:00
|
|
|
exit $TESTS_EXIT_CODE
|