junest/tests/utils/utils.sh
Filippo Squillace 0295f37758 Add shellcheck
2022-03-01 00:05:09 +01:00

62 lines
1.5 KiB
Bash

#!/usr/bin/env bash
OLD_CWD=${PWD}
function cwdSetUp(){
ORIGIN_CWD=$(TMPDIR=/tmp mktemp -d -t junest-cwd.XXXXXXXXXX)
cd "$ORIGIN_CWD" || return 1
}
function cwdTearDown(){
rm -rf "$ORIGIN_CWD"
cd "$OLD_CWD" || return 1
}
function junestSetUp(){
JUNEST_HOME=$(TMPDIR=/tmp mktemp -d -t junest-home.XXXXXXXXXX)
mkdir -p "${JUNEST_HOME}/usr/bin"
mkdir -p "${JUNEST_HOME}/etc/junest"
echo "JUNEST_ARCH=x86_64" > "${JUNEST_HOME}/etc/junest/info"
mkdir -p "${JUNEST_HOME}/etc/ca-certificates"
}
function junestTearDown(){
# the CA directories are read only and can be deleted only by changing the mod
[ -d "${JUNEST_HOME}/etc/ca-certificates" ] && chmod -R +w "${JUNEST_HOME}/etc/ca-certificates"
rm -rf "$JUNEST_HOME"
unset JUNEST_HOME
}
function setUpUnitTests(){
OUTPUT_DIR="${SHUNIT_TMPDIR}/output"
mkdir "${OUTPUT_DIR}"
STDOUTF="${OUTPUT_DIR}/stdout"
STDERRF="${OUTPUT_DIR}/stderr"
}
function assertCommandSuccess(){
# shellcheck disable=SC2091
$(set -e
"$@" > "$STDOUTF" 2> "$STDERRF"
)
assertTrue "The command $1 did not return 0 exit status" $?
}
function assertCommandFail(){
# shellcheck disable=SC2091
$(set -e
"$@" > "$STDOUTF" 2> "$STDERRF"
)
assertFalse "The command $1 returned 0 exit status" $?
}
# $1: expected exit status
# $2-: The command under test
function assertCommandFailOnStatus(){
local status=$1
shift
# shellcheck disable=SC2091
$(set -e
"$@" > "$STDOUTF" 2> "$STDERRF"
)
assertEquals "$status" $?
}