summaryrefslogtreecommitdiff
path: root/share/spack/qa/run-shell-tests
diff options
context:
space:
mode:
Diffstat (limited to 'share/spack/qa/run-shell-tests')
-rwxr-xr-xshare/spack/qa/run-shell-tests43
1 files changed, 43 insertions, 0 deletions
diff --git a/share/spack/qa/run-shell-tests b/share/spack/qa/run-shell-tests
new file mode 100755
index 0000000000..31c1c1548b
--- /dev/null
+++ b/share/spack/qa/run-shell-tests
@@ -0,0 +1,43 @@
+#!/bin/bash -e
+#
+# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+#
+# Description:
+# Runs Spack shell tests.
+#
+# Usage:
+# run-shell-tests
+
+#-----------------------------------------------------------
+# Run a few initial commands and set up test environment
+#-----------------------------------------------------------
+ORIGINAL_PATH="$PATH"
+
+. "$(dirname $0)/setup.sh"
+check_dependencies $coverage git hg svn
+
+# Clean the environment by removing Spack from the path and getting rid of
+# the spack shell function
+export PATH="$ORIGINAL_PATH"
+unset spack
+
+# Start in the spack root directory
+cd "$SPACK_ROOT"
+
+# Run bash tests with coverage enabled, but pipe output to /dev/null
+# because it seems that kcov seems to undo the script's redirection
+if [ "$COVERAGE" = true ]; then
+ "$QA_DIR/bashcov" "$QA_DIR/setup-env-test.sh" &> /dev/null
+ "$QA_DIR/bashcov" "$QA_DIR/completion-test.sh" &> /dev/null
+else
+ bash "$QA_DIR/setup-env-test.sh"
+ bash "$QA_DIR/completion-test.sh"
+fi
+
+# Run the test scripts for their output (these will print nicely)
+zsh "$QA_DIR/setup-env-test.sh"
+dash "$QA_DIR/setup-env-test.sh"