aboutsummaryrefslogtreecommitdiffstats
path: root/runtests.sh
diff options
context:
space:
mode:
Diffstat (limited to 'runtests.sh')
-rwxr-xr-xruntests.sh39
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