From a946bc0f04a82a5d9faa44bbc79c4df440d9ce8a Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Thu, 31 Jan 2013 08:11:31 -0500 Subject: [PATCH] Output an error message when a test user is missing. Add two tests for multiple command-line arguments. --- run-tests.sh | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 64 insertions(+), 1 deletion(-) diff --git a/run-tests.sh b/run-tests.sh index 900ac16..86b22c2 100755 --- a/run-tests.sh +++ b/run-tests.sh @@ -4,6 +4,8 @@ # Exit codes # +EXIT_SUCCESS=0 + # Exit with this when a test fails. EXIT_FAILURE=1 @@ -21,7 +23,12 @@ USERS=( bin daemon ) # Check to see if the above users exist. If not, bail. for idx in $( seq 0 $((${#USERS[@]} - 1)) ); do - id ${USERS[idx]} >/dev/null 2>&1 || exit $EXIT_MISSING_USERS + id "${USERS[idx]}" >/dev/null 2>&1 + + if [ $? -ne $EXIT_SUCCESS ]; then + echo "Error: missing test user ${USERS[idx]}." 1>&2 + exit $EXIT_MISSING_USERS + fi done # The program name. @@ -603,3 +610,59 @@ EOF ACTUAL=`getfacl --omit-header "${TARGET}"` compare + + +# Same as test #2, except we pass multiple files on the command +# line and check the result of the first one. +TESTNUM=23 +setfacl -d -m user::r-- "${TESTDIR}" +setfacl -d -m group::r-- "${TESTDIR}" +setfacl -d -m other::r-- "${TESTDIR}" +setfacl -d -m user:${USERS[0]}:rwx "${TESTDIR}" +DUMMY="${TESTDIR}/dummy" +touch "${DUMMY}" +chmod 777 "${DUMMY}" +touch "${TARGET}" +chmod 777 "${TARGET}" +$BIN "${TARGET}" "${DUMMY}" + +EXPECTED=$(cat <