[Parallelized test runs.
tobias@goedderz.info**20140721140855
 Ignore-this: 900c0610aabe48b36854faca73909666
] addfile ./run_test.bash
hunk ./run_test.bash 1
+#!/bin/bash
+
+batch_fn="$1"
+expected_output_fn="$(dirname "$batch_fn")/$(basename -s .bat "$batch_fn").out"
+
+log() {
+    echo "[$(date +"%F %X")]" "$@"
+}
+
+if [ ! -r "$expected_output_fn" ]
+then
+    echo "Expected output file missing or unreadable: ``$expected_output_fn''" >&2
+fi
+
+./igor2 -b "$batch_fn" 2>&1 \
+    | grep -v '^File loaded in [0-9.]\+s$\|^\s*CPU: [0-9.]\+s$' \
+    | diff -q "$expected_output_fn" - > /dev/null
+
+if [ $? = 0 ]
+then
+    log Success: "$batch_fn"
+else
+    log Failure: "$batch_fn"
+fi
hunk ./run_tests.bash 10
-
-log() {
-    echo "[$(date +"%F %X")]" "$@"
-}
-
-for batch_fn in "${tests_dir}"/*.bat
-do
-    expected_output_fn="${tests_dir}/$(basename -s .bat "$batch_fn").out"
-    if [ ! -r "$expected_output_fn" ]
-    then
-        echo "Expected output file missing or unreadable: ``$expected_output_fn''" >&2
-    fi
-    ./igor2 -b "$batch_fn" 2>&1 \
-        | grep -v '^File loaded in [0-9.]\+s$\|^\s*CPU: [0-9.]\+s$' \
-        | diff "$expected_output_fn" -
-    if [ $? = 0 ]
-    then
-        log Success: "$batch_fn"
-    else
-        log Failure: "$batch_fn"
-    fi
-done
+parallel ./run_test.bash ::: "${tests_dir}"/*.bat