swtpm/tests/test_swtpm_setup_misc
Stefan Berger cce7503cbf tests: exit with error code if mktemp fails
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2021-11-02 08:35:49 -04:00

80 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/env bash
# For the license, see the LICENSE file in the root directory.
if [ "$(id -u)" -eq 0 ]; then
echo "Not running this test as root."
exit 77
fi
ROOT=${abs_top_builddir:-$(dirname "$0")/..}
TESTDIR=${abs_top_testdir:-$(dirname "$0")}
SRCDIR=${abs_top_srcdir:-$(dirname "$0")/..}
source ${TESTDIR}/common
trap "cleanup" SIGTERM EXIT
function cleanup()
{
rm -rf ${workdir}
}
workdir="$(mktemp -d)" || exit 1
FILES="swtpm-localca.conf swtpm-localca.options swtpm_setup.conf"
XDG_CONFIG_HOME="${workdir}" ${SWTPM_SETUP} \
--create-config-files 1>/dev/null
if [ $? -ne 0 ]; then
echo "Error: Could not created config files (without parameters)"
exit 1
fi
for f in ${FILES}; do
if ! [ -f "${workdir}/${f}" ]; then
echo "Error: File ${workedir}/${f} was not created"
exit 1
fi
done
if ! [ -d "${workdir}/var/lib/swtpm-localca" ]; then
echo "Error: Directory var/lib/swtpm-localca was not created"
exit 1
fi
XDG_CONFIG_HOME="${workdir}" ${SWTPM_SETUP} \
--create-config-files skip-if-exist 1>/dev/null
if [ $? -ne 0 ]; then
echo "Error: skip-if-exists should have exit'ed with 0."
exit 1
fi
echo "Test 1: Ok"
cleanup
workdir="$(mktemp -d)" || exit 1
XDG_CONFIG_HOME="${workdir}" ${SWTPM_SETUP} \
--create-config-files skip-if-exist 1>/dev/null
if [ $? -ne 0 ]; then
echo "Error: skip-if-exists should have exit'ed with 0."
exit 1
fi
for f in ${FILES}; do
if ! [ -f "${workdir}/${f}" ]; then
echo "Error: File ${workedir}/${f} was not created"
exit 1
fi
done
if ! [ -d "${workdir}/var/lib/swtpm-localca" ]; then
echo "Error: Directory var/lib/swtpm-localca was not created"
exit 1
fi
echo "Test 2: Ok"
cleanup
exit 0