tests: Added check for the basic commands of ocpasswd.

This commit is contained in:
Nikos Mavrogiannopoulos
2014-06-24 14:00:23 +02:00
parent 4117bf2661
commit 6ebaac8839
2 changed files with 71 additions and 2 deletions

View File

@@ -5,10 +5,12 @@ EXTRA_DIST = ca-key.pem ca.pem common.sh server-cert.pem server-key.pem test1.co
test-group-pass.config user-group-cert.pem user-group-key.pem test-user-group-cert.config
dist_check_SCRIPTS = test-pass test-pass-cert test-cert test-iroute test-pass-script \
test-multi-cookie test-pam test-stress full-test test-group-pass test-pass-group-cert
test-multi-cookie test-pam test-stress full-test test-group-pass test-pass-group-cert \
ocpasswd-test
TESTS = test-pass test-pass-cert test-cert test-iroute test-pass-script \
test-multi-cookie full-test test-group-pass test-pass-group-cert
test-multi-cookie full-test test-group-pass test-pass-group-cert \
ocpasswd-test
TESTS_ENVIRONMENT = srcdir="$(srcdir)" \
top_builddir="$(top_builddir)"

67
tests/ocpasswd-test Executable file
View File

@@ -0,0 +1,67 @@
#!/bin/sh
#
# Copyright (C) 2014 Red Hat
#
# This file is part of ocserv.
#
# ocserv is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at
# your option) any later version.
#
# ocserv is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GnuTLS; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
OCPASSWD="${OCPASSWD:-../src/ocpasswd}"
srcdir=${srcdir:-.}
echo "Testing ocpasswd"
rm -f passwd.out
echo "Creating user... "
echo test|$OCPASSWD -c passwd.out -g group test
if test $? != 0;then
echo "Failed creating user test"
exit 1
fi
grep group passwd.out >/dev/null 2>&1
if test $? != 0;then
echo "Failed creating user test. Group 'group' was not found"
exit 1
fi
echo "Locking user... "
$OCPASSWD -c passwd.out -l test
if test $? != 0;then
echo "Failed locking user test"
exit 1
fi
grep -e "\:\!\$5" passwd.out >/dev/null 2>&1
if test $? != 0;then
echo "Failed locking user test. The exclamation mark wasn't found"
exit 1
fi
echo "Deleting user... "
$OCPASSWD -c passwd.out -d test
if test $? != 0;then
echo "Failed deleting user test"
exit 1
fi
grep "test" passwd.out >/dev/null 2>&1
if test $? = 0;then
echo "Failed deleting user test. User was found in file"
exit 1
fi
exit 0