Files
scm_breeze/run_tests.sh
Matthew Rothenberg b6fd7ae829 split tests up by shell for concurrency
More parallelism = faster tests.  Also better isolation for changes that
might only break on zsh or bash respectively.

This is defined via env variable, so someone running locally will have
all tests run sequentially as before.
2014-10-16 15:24:53 -04:00

27 lines
584 B
Bash
Executable File

#!/bin/sh
# Run SCM Breeze shUnit2 tests
failed=false
# allow list of shells to run tests in to be overriden by environment variable
# if empty or null, use defaults
if [ -z "$TEST_SHELLS" ]; then
TEST_SHELLS="bash zsh"
fi
echo "== Will run all tests with following shells: ${TEST_SHELLS}"
for test in $(find test/lib -name *_test.sh); do
for shell in $TEST_SHELLS; do
echo "== Running tests with [$shell]: $test"
$shell $test || failed=true
done
done
if [ "$failed" = "true" ]; then
echo "Tests failed!"
return 1;
else
echo "All tests passed!"
return 0;
fi