# store results in a file that contains the git hash
# and also shows differences if any
#
+# if this command is run as all-tests3, then we will just do
+# make PYTHON=python3
+#
+# xxx - WARNING : most likely the python2 and python3 tests
+# cannot safely be run together; need to check the nepi exp_ids
+# used more closely
+
+COMMAND=$(basename $0)
-targets="test-node test-app"
+PYTHON=python
+version=2
+echo $COMMAND | grep -q 3 && { PYTHON=python3; version=3; }
hash=$(git log -n 1 | head -1 | sed -e 's,commit ,,' -e 's,\(........\).*,\1,')
# compute output file name
-output="all-tests.$hash"
+output="zz.py$version.$hash"
# if there is any pending change, use another name
is_pristine=""
-git diff HEAD | cmp --quiet - /dev/zero && is_pristine=true
-[ -n "is_pristine" ] || output="$output-pending"
+changes=$(git diff HEAD | wc -l); changes=$(echo $changes)
+[ "$changes" == 0 ] && is_pristine=true
+[ -n "$is_pristine" ] || output="$output-pending"
function all_tests () {
echo all-tests : begin at; date
echo ========================================
echo tests
echo ========================================
- make all-tests
+ make PYTHON=$PYTHON all-tests
echo ========================================
end=$(date +%s)
echo all-tests : end at; date; echo total duration $(($end-$begin)) seconds
}
+# WARNING: the current code for analyzing the output is not quite right
+# I've seen cases where the tests session goes very badly - with broken imports for example
+# but it's considered OK though
+# we mght wish to take the opposite angle : check we have as many OK as expected
+# but then the list of default targets should be declared here and not in Makefile
+# in any case this is good enough for now
+
all_tests >& $output
retcod=$?