aboutsummaryrefslogtreecommitdiff
path: root/script/runtests.sh
diff options
context:
space:
mode:
authorChristopher Peplin <chris.peplin@rhubarbtech.com>2014-09-09 23:09:35 -0400
committerChristopher Peplin <chris.peplin@rhubarbtech.com>2014-09-09 23:17:15 -0400
commitc86ce093ce93eb8da1136acd1e81973ef0bb54fc (patch)
tree9113fe08113c3548b84ba02b4d55db8cee49395f /script/runtests.sh
parente30bb5c28a42152007d70325477f364605b73f34 (diff)
Add a script to compile examples as an automated test suite.
* Added script/boostrap.sh to download the Arduino IDE and MPIDE (for chipKIT). Tested in Linux, should work in Cygwin and OS X too. * Added script/runtests.sh to run "make" in each example project and collect the results. The script returns -1 if any fails. * Moved currently testable examples to a "tests" directory, separate from examples that require alternative cores.
Diffstat (limited to 'script/runtests.sh')
-rwxr-xr-xscript/runtests.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/script/runtests.sh b/script/runtests.sh
new file mode 100755
index 0000000..ad42f74
--- /dev/null
+++ b/script/runtests.sh
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+
+failures=()
+
+for dir in tests/*/
+do
+ dir=${dir%*/}
+ example=${dir##*/}
+ pushd $dir
+ echo "Compiling $example..."
+ make_output=`make clean`
+ make_output=`make`
+ if [[ $? -ne 0 ]]; then
+ failures+=("$example")
+ echo "Example $example failed"
+ fi
+ popd
+done
+
+for failure in "${failures[@]}"; do
+ echo "Example $failure failed"
+done
+
+if [[ ${#failures[@]} -eq 0 ]]; then
+ echo "All tests passed."
+else
+ exit 1
+fi