diff options
Diffstat (limited to 'runtests.sh')
-rwxr-xr-x | runtests.sh | 39 |
1 files changed, 35 insertions, 4 deletions
diff --git a/runtests.sh b/runtests.sh index 94e77da2..a4ceec2e 100755 --- a/runtests.sh +++ b/runtests.sh @@ -16,9 +16,19 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -if [ -f ./bin/nosetests ]; then - echo "Using ./bin/nosetests"; - export NOSETESTS="./bin/nosetests"; +basedir="`dirname $0`" +# Directory to seaerch for: +subdir="mediagoblin/tests" +[ '!' -d "$basedir/$subdir" ] && basedir="." +if [ '!' -d "$basedir/$subdir" ] +then + echo "Could not find base directory" >&2 + exit 1 +fi + +if [ -x "$basedir/bin/nosetests" ]; then + export NOSETESTS="$basedir/bin/nosetests"; + echo "Using $NOSETESTS"; elif which nosetests > /dev/null; then echo "Using nosetests from \$PATH"; export NOSETESTS="nosetests"; @@ -28,4 +38,25 @@ else exit 1 fi -CELERY_CONFIG_MODULE=mediagoblin.init.celery.from_tests $NOSETESTS $@ +need_arg=1 +for i in "$@" +do + case "$i" in + -*) ;; + *) need_arg=0; break ;; + esac +done + +CELERY_CONFIG_MODULE=mediagoblin.init.celery.from_tests +export CELERY_CONFIG_MODULE +echo "+ CELERY_CONFIG_MODULE=$CELERY_CONFIG_MODULE" + +if [ "$need_arg" = 1 ] +then + testdir="$basedir/mediagoblin/tests" + set -x + exec "$NOSETESTS" "$@" "$testdir" +else + set -x + exec "$NOSETESTS" "$@" +fi |