summaryrefslogtreecommitdiff
path: root/check
diff options
context:
space:
mode:
Diffstat (limited to 'check')
-rwxr-xr-xcheck37
1 files changed, 37 insertions, 0 deletions
diff --git a/check b/check
new file mode 100755
index 0000000..8e40071
--- /dev/null
+++ b/check
@@ -0,0 +1,37 @@
+#!/bin/bash
+#
+# Run automated tests for the project.
+
+set -euo pipefail
+
+quiet=-q
+hideok=
+if command -v chronic >/dev/null; then
+ hideok=chronic
+fi
+
+if [ "$#" -gt 0 ]; then
+ case "$1" in
+ verbose | -v | --verbose)
+ quiet=
+ hideok=
+ ;;
+ esac
+fi
+
+got_cargo_cmd() {
+ cargo --list | grep " $1 " >/dev/null
+}
+
+# shellcheck disable=2086
+got_cargo_cmd clippy && cargo clippy $quiet
+got_cargo_cmd fmt && cargo fmt -- --check
+
+# shellcheck disable=2086
+cargo build --all-targets $quiet
+$hideok cargo test
+
+subplot docgen cachedir.md -o cachedir.html
+subplot docgen cachedir.md -o cachedir.pdf
+
+echo "Everything seems to be in order."