Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Add a test about dynamic conflicts checking
Baptiste Daroussin committed 11 years ago
commit cd1c196e563123d040c151a7cee6d9a82ab4b33b
parent a45fec0
3 files changed +106 -1
modified tests/Makefile.am
@@ -75,7 +75,8 @@ EXTRA_DIST= frontend/png.uclin \
		frontend/packagesplit.shin \
		frontend/lock.shin \
		frontend/delete.shin \
-
		frontend/create.shin
+
		frontend/create.shin \
+
		frontend/conflicts.shin

TESTS =
tests_programs=	pkg_printf \
@@ -94,6 +95,7 @@ check_SCRIPTS= frontend/pkg.sh \
		frontend/lock.sh \
		frontend/delete.sh \
		frontend/create.sh \
+
		frontend/conflicts.sh \
		frontend/test_environment.sh \
		frontend/png.ucl \
		frontend/sqlite3.ucl
modified tests/frontend/Kyuafile
@@ -11,3 +11,4 @@ atf_test_program{name='packagesplit.sh'}
atf_test_program{name='lock.sh'}
atf_test_program{name='delete.sh'}
atf_test_program{name='create.sh'}
+
atf_test_program{name='conflicts.sh'}
added tests/frontend/conflicts.shin
@@ -0,0 +1,102 @@
+
#! /usr/bin/env atf-sh
+
atf_test_case find_conflicts
+
find_conflicts_head() {
+
	atf_set "descr" "Testing dynamic conflicts resolution"
+
}
+

+
find_conflicts_body() {
+
	export INSTALL_AS_USER=yes
+
	export PKG_DBDIR=.
+
	touch a
+
	cat << EOF >> manifest
+
name: test
+
origin: test
+
version: 1
+
maintainer: test
+
categories: [test]
+
comment: a test
+
www: http://test
+
prefix: /
+
abi = "*";
+
desc: <<EOD
+
Yet another test
+
EOD
+
files: {
+
	${TMPDIR}/a: "",
+
}
+
EOF
+

+
	cat << EOF >> manifest2
+
name: test2
+
origin: test
+
version: 1
+
maintainer: test
+
categories: [test]
+
comment: a test
+
www: http://test
+
prefix: /
+
abi = "*";
+
desc: <<EOD
+
Yet another test
+
EOD
+
files: {
+
	${TMPDIR}/a: "",
+
}
+
EOF
+
	atf_check \
+
		-o match:".*Installing.*\.\.\.$" \
+
		-e empty \
+
		-s exit:0 \
+
		pkg register -M manifest
+

+
	atf_check \
+
		-o empty \
+
		-e empty \
+
		-s exit:0 \
+
		pkg create -M manifest2 -o .
+

+
	atf_check \
+
		-o inline:"Creating repository in .... done\nPacking files for repository... done\n" \
+
		-e empty \
+
		-s exit:0 \
+
		pkg repo .
+

+
	cat << EOF >> repo.conf
+
local: {
+
	url: file:///${TMPDIR},
+
	enabled: true
+
}
+
EOF
+

+
	cat << EOF >> output.txt
+
Updating local repository catalogue...
+
Fetching meta.txz... done
+
Fetching packagesite.txz... done
+
Processing entries... done
+
local repository update completed. 1 packages processed.
+
Updating database digests format... done
+
Checking integrity... done (1 conflicting)
+
Checking integrity... done (0 conflicting)
+
The following 2 packages will be affected (of 0 checked):
+

+
Installed packages to be REMOVED:
+
	test-1
+

+
New packages to be INSTALLED:
+
	test2: 1
+
[1/2] Deinstalling test-1...
+
[1/2] Deleting files for test-1... done
+
[2/2] Installing test2-1...
+
[2/2] Extracting test2-1... done
+
EOF
+
	atf_check \
+
		-o file:output.txt \
+
		-e empty \
+
		-s exit:0 \
+
		pkg -o REPOS_DIR="${TMPDIR}" -o PKG_CACHEDIR="${TMPDIR}" install -y test2-1
+
}
+

+
atf_init_test_cases() {
+
	. $(atf_get_srcdir)/test_environment.sh
+
	atf_add_test_case find_conflicts
+
}