readonly TESTUSER=owner
readonly TEST_SUBSESSIONS=("TestSuite_sub1" "TestSuite_sub2" "TestSuite_sub3" "TestSuite_sub4" "TestSuite_sub5")
-readonly GROUP=users
# Setting it to `true` makes the script more verbose, making debugging easier.
VERBOSE=
sleep "$DELAYVAL"
done
- if [ "$created" != "true" ]; then
+ if [ "$1" == "true" ] && [ "$created" != "true" ]; then
echo "Creating user $subsession failed. Bailing out!"
exit 1
fi
sleep "$DELAYVAL"
done
- if [ "$removed" != "true" ]; then
+ if [ "$1" == "true" ] && [ "$removed" != "true" ]; then
echo "Removing user $subsession failed. Bailing out!"
exit 1
fi
verbose_echo "User id: $userid, home directory: $homedir, apps_rw user directory: $apps_rwdir"
-create_test_users
+create_test_users true
# Compare directories.
skeldir="/etc/skel/apps_rw"
u_usergroup=$(stat --format '%U:%G:%A' "$userf")
u_user=$(echo "$u_usergroup" | cut -d: -f1)
u_group=$(echo "$u_usergroup" | cut -d: -f2)
+ verbose_echo "subsession file/dir = $f; home file/dir = $userf"
+ verbose_echo "subsession file/dir [user, group] = [$user, $group], home dir file/dir [user, group] = [$u_user, $u_group]"
- if [ "$user" != "$TESTUSER" ] || [ "$group" != "$u_group" ]; then
+ if [ "$user" != "$u_user" ] || [ "$group" != "$u_group" ]; then
echo "$f: incorrect permissions set!"
+ remove_test_users false
exit 1
fi
if [ "$fattrs" != "$tattrs" ]; then
echo "$f: SMACK attributes differ from the template!"
+ remove_test_users false
exit 1
fi
copiedl=$(readlink "$templf" | sha256sum | cut -d' ' -f1)
if [ "$origl" != "$copiedl" ]; then
echo "$f: link points to a different file than the one from the template!"
+ remove_test_users false
exit 1
fi
elif [ -f "$f" ]; then
copiedf=$(sha256sum "$templf" | cut -d' ' -f1)
if [ "$origf" != "$copiedf" ]; then
echo "$f: file content differs from the template!"
+ remove_test_users false
exit 1
fi
fi
# in the two directories.
if [ "$templatefiles" != "$totalfiles" ]; then
echo "Number of files in subsession $subsession vary from the number of files in the template!"
+ remove_test_users false
exit 1
fi
done
-remove_test_users
+remove_test_users true
exit 0