@@ -16,6 +16,8 @@ export CIRCLE_BUILD_URL=""
1616
1717TEST_NAME=" test_bmo"
1818DOCKER_COMPOSE_FILE=docker-compose.test-mysql.yml
19+ DEFAULT_TEST_ARGS=(-q -f t/bmo/* .t)
20+ SUITE_ARGS=()
1921if [ " $# " -eq 0 ]; then
2022 echo " Available test options:"
2123 echo " 1) sanity - Run sanity tests"
@@ -36,28 +38,41 @@ if [ "$#" -eq 0 ]; then
3638 * ) echo " Invalid choice. Using default (mysql)" ; set -- " mysql" ;;
3739 esac
3840fi
39- if [ " $1 " == " sanity" ]; then
41+ SUITE=" $1 "
42+ shift
43+ SUITE_ARGS=(" $@ " )
44+
45+ if [ " $SUITE " == " sanity" ]; then
4046 DOCKER_COMPOSE_FILE=docker-compose.test-mysql.yml
4147 TEST_NAME=" test_sanity"
42- elif [ " $1 " == " mysql" ]; then
48+ elif [ " $SUITE " == " mysql" ]; then
4349 DOCKER_COMPOSE_FILE=docker-compose.test-mysql.yml
44- elif [ " $1 " == " pg" ]; then
50+ elif [ " $SUITE " == " pg" ]; then
4551 DOCKER_COMPOSE_FILE=docker-compose.test-pg.yml
46- elif [ " $1 " == " sqlite" ]; then
52+ elif [ " $SUITE " == " sqlite" ]; then
4753 DOCKER_COMPOSE_FILE=docker-compose.test-sqlite.yml
48- elif [ " $1 " == " mariadb" ]; then
54+ elif [ " $SUITE " == " mariadb" ]; then
4955 DOCKER_COMPOSE_FILE=docker-compose.test-mariadb.yml
50- elif [ " $1 " == " release" ]; then
56+ elif [ " $SUITE " == " release" ]; then
5157 DOCKER_FILE=docker/images/Dockerfile.perl-testsuite
5258 if $DOCKER build -t bugzilla-release-test -f " $DOCKER_FILE " . ; then
53- $DOCKER run --rm bugzilla-release-test
59+ $DOCKER run --rm bugzilla-release-test " ${SUITE_ARGS[@]} "
5460 else
5561 echo " docker build failed."
5662 fi
5763 exit $?
64+ else
65+ echo " Unknown test suite: $SUITE "
66+ echo " Usage: $0 [sanity|mysql|pg|sqlite|mariadb|release] [suite args...]"
67+ exit 1
5868fi
69+
70+ if [ " ${# SUITE_ARGS[@]} " -eq 0 ]; then
71+ SUITE_ARGS=(" ${DEFAULT_TEST_ARGS[@]} " )
72+ fi
73+
5974if $DOCKER compose -f " $DOCKER_COMPOSE_FILE " build; then
60- if $DOCKER compose -f " $DOCKER_COMPOSE_FILE " run --rm --name bugzilla6.test bugzilla6.test " $TEST_NAME " -q -f t/bmo/ * .t ; then
75+ if $DOCKER compose -f " $DOCKER_COMPOSE_FILE " run --rm --name bugzilla6.test bugzilla6.test " $TEST_NAME " " ${SUITE_ARGS[@]} " ; then
6176 $DOCKER compose -f " $DOCKER_COMPOSE_FILE " down
6277 else
6378 echo " docker compose run failed."
0 commit comments