Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Merge pull request #1172 from andrejzverev/pkglocktest
Matthew Seaman committed 11 years ago
commit 14cc3ea8644b890d34ff2713820578deca258dde
parent 8fd8c02
3 files changed +101 -1
modified tests/Makefile.am
@@ -71,7 +71,8 @@ EXTRA_DIST= frontend/png.uclin \
		frontend/version.shin \
		frontend/test_environment.shin \
		frontend/register.shin \
-
		frontend/packagesplit.shin
+
		frontend/packagesplit.shin \
+
		frontend/lock.shin

TESTS =
tests_programs=	pkg_printf \
@@ -87,6 +88,7 @@ check_SCRIPTS= frontend/pkg.sh \
		frontend/version.sh \
		frontend/register.sh \
		frontend/packagesplit.sh \
+
		frontend/lock.sh \
		frontend/test_environment.sh \
		frontend/png.ucl \
		frontend/sqlite3.ucl
modified tests/frontend/Kyuafile
@@ -8,3 +8,5 @@ atf_test_program{name='search.sh'}
atf_test_program{name='annotate.sh'}
atf_test_program{name='register.sh'}
atf_test_program{name='packagesplit.sh'}
+
atf_test_program{name='lock.sh'}
+

added tests/frontend/lock.shin
@@ -0,0 +1,96 @@
+
#! /usr/bin/env atf-sh
+

+
atf_test_case lock
+
lock_head() {
+
	atf_set "descr" "pkg lock"
+
	atf_set "require.files" \
+
	   "$(atf_get_srcdir)/png.ucl $(atf_get_srcdir)/sqlite3.ucl"
+
}
+

+
lock_body() {
+
        export INSTALL_AS_USER=yes
+
	export PKG_DBDIR=.
+

+
	for pkg in 'png' 'sqlite3' ; do
+
	    atf_check \
+
		-o match:".*Installing.*\.\.\.$" \
+
		-e empty \
+
		-s exit:0 \
+
		pkg register -t -M $(atf_get_srcdir)/$pkg.ucl
+
	done
+

+
	[ -f "./local.sqlite" ] || \
+
	    atf_fail "Can't populate $PKG_DBDIR/local.sqlite"
+

+
	atf_check \
+
		-o match:"Locking sqlite3.*" \
+
		-e empty \
+
		-s exit:0 \
+
		pkg lock -y sqlite3
+

+
	atf_check \
+
		-o match:"sqlite3-3.8.6" \
+
		-e empty \
+
		-s exit:74 \
+
		pkg lock -l
+

+
	atf_check \
+
                -o inline:"sqlite3-3.8.6: already locked\n" \
+
                -e empty \
+
                -s exit:0 \
+
                pkg lock -y sqlite3
+

+

+
	atf_check \
+
                -o match:"Unlocking sqlite3.*" \
+
                -e empty \
+
                -s exit:0 \
+
                pkg unlock -y sqlite3
+

+
	atf_check \
+
                -o inline:"Currently locked packages:\n" \
+
                -e empty \
+
                -s exit:74 \
+
                pkg lock -l
+

+
	atf_check \
+
                -o inline:"sqlite3-3.8.6: already unlocked\n" \
+
                -e empty \
+
                -s exit:0 \
+
                pkg unlock -y sqlite3
+

+
	atf_check \
+
                -o match:"Locking.*" \
+
                -e empty \
+
                -s exit:0 \
+
                pkg lock -y -a
+

+
	atf_check \
+
                -o match:"sqlite3.*" \
+
		-o match:"png.*" \
+
                -e empty \
+
                -s exit:74 \
+
                pkg lock -l
+

+
       atf_check \
+
                -o match:"Unlocking.*" \
+
                -e empty \
+
                -s exit:0 \
+
                pkg unlock -y -a
+

+
        atf_check \
+
                -o inline:"Currently locked packages:\n" \
+
                -e empty \
+
                -s exit:74 \
+
                pkg lock -l
+

+

+
}
+

+
atf_init_test_cases() {
+
        . $(atf_get_srcdir)/test_environment.sh
+

+
	# Tests are run in alphabetical order
+
	atf_add_test_case lock
+

+
}