summaryrefslogtreecommitdiffstats
path: root/tests/t-conflicts
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tests/t-conflicts-replaces/Makefile33
-rw-r--r--tests/t-conflicts-replaces/pkg-a/DEBIAN/control8
-rw-r--r--tests/t-conflicts-replaces/pkg-a/test-conflict0
-rw-r--r--tests/t-conflicts-replaces/pkg-b/DEBIAN/control10
-rw-r--r--tests/t-conflicts-replaces/pkg-b/test-conflict0
-rw-r--r--tests/t-conflicts/Makefile24
-rw-r--r--tests/t-conflicts/pkg-a/DEBIAN/control8
-rw-r--r--tests/t-conflicts/pkg-b/DEBIAN/control7
8 files changed, 90 insertions, 0 deletions
diff --git a/tests/t-conflicts-replaces/Makefile b/tests/t-conflicts-replaces/Makefile
new file mode 100644
index 0000000..350a068
--- /dev/null
+++ b/tests/t-conflicts-replaces/Makefile
@@ -0,0 +1,33 @@
+TESTS_DEB := pkg-a pkg-b
+
+include ../Test.mk
+
+test-case:
+ # test if the conflicting package replaces on install
+ $(DPKG_INSTALL) pkg-a.deb
+ $(DPKG_INSTALL) pkg-b.deb
+ $(call pkg_is_installed,pkg-b)
+ $(call pkg_is_not_installed,pkg-a)
+ -$(DPKG_PURGE) pkg-a pkg-b
+
+ # test if the conflicting package replaces on install
+ $(DPKG_INSTALL) pkg-a.deb pkg-b.deb
+ $(call pkg_is_installed,pkg-b)
+ $(call pkg_is_not_installed,pkg-a)
+ -$(DPKG_PURGE) pkg-a pkg-b
+
+ # test if the conflicting package fails on install
+ $(DPKG_INSTALL) pkg-b.deb
+ ! $(DPKG_INSTALL) pkg-a.deb
+ $(call pkg_is_not_installed,pkg-a)
+ $(call pkg_is_installed,pkg-b)
+ -$(DPKG_PURGE) pkg-a pkg-b
+
+ # test if the conflicting package fails on install
+ ! $(DPKG_INSTALL) pkg-b.deb pkg-a.deb
+ $(call pkg_is_not_installed,pkg-a)
+ -$(DPKG_PURGE) pkg-a pkg-b
+
+test-clean:
+ -$(DPKG_PURGE) pkg-a pkg-b
+
diff --git a/tests/t-conflicts-replaces/pkg-a/DEBIAN/control b/tests/t-conflicts-replaces/pkg-a/DEBIAN/control
new file mode 100644
index 0000000..7bf61bb
--- /dev/null
+++ b/tests/t-conflicts-replaces/pkg-a/DEBIAN/control
@@ -0,0 +1,8 @@
+Package: pkg-a
+Version: 0
+Section: test
+Priority: extra
+Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
+Architecture: all
+Description: test package - conflicting file
+
diff --git a/tests/t-conflicts-replaces/pkg-a/test-conflict b/tests/t-conflicts-replaces/pkg-a/test-conflict
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/t-conflicts-replaces/pkg-a/test-conflict
diff --git a/tests/t-conflicts-replaces/pkg-b/DEBIAN/control b/tests/t-conflicts-replaces/pkg-b/DEBIAN/control
new file mode 100644
index 0000000..e621762
--- /dev/null
+++ b/tests/t-conflicts-replaces/pkg-b/DEBIAN/control
@@ -0,0 +1,10 @@
+Package: pkg-b
+Version: 0
+Section: test
+Priority: extra
+Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
+Architecture: all
+Conflicts: pkg-a
+Replaces: pkg-a
+Description: test package - conflicting file with Conflicts+Replaces fields
+
diff --git a/tests/t-conflicts-replaces/pkg-b/test-conflict b/tests/t-conflicts-replaces/pkg-b/test-conflict
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/t-conflicts-replaces/pkg-b/test-conflict
diff --git a/tests/t-conflicts/Makefile b/tests/t-conflicts/Makefile
new file mode 100644
index 0000000..56dcf49
--- /dev/null
+++ b/tests/t-conflicts/Makefile
@@ -0,0 +1,24 @@
+TESTS_DEB := pkg-a pkg-b
+
+include ../Test.mk
+
+test-case:
+ # test if the conflicting packages fail on install
+ ! $(DPKG_INSTALL) pkg-b.deb pkg-a.deb
+ $(call pkg_is_not_installed,pkg-a)
+ -$(DPKG_PURGE) pkg-a pkg-b
+ ! $(DPKG_INSTALL) pkg-a.deb pkg-b.deb
+ $(call pkg_is_not_installed,pkg-b)
+ -$(DPKG_PURGE) pkg-a pkg-b
+
+ # Test installation generating removal of conflicts.
+ $(DPKG_INSTALL) pkg-b.deb
+ # Set up the desired transaction.
+ echo pkg-b deinstall | $(BEROOT) $(DPKG) --set-selections
+ $(DPKG_INSTALL) pkg-a.deb
+ $(call pkg_is_installed,pkg-a)
+ $(call pkg_is_not_installed,pkg-b)
+ -$(DPKG_PURGE) pkg-a pkg-b
+
+test-clean:
+ -$(DPKG_PURGE) pkg-a pkg-b
diff --git a/tests/t-conflicts/pkg-a/DEBIAN/control b/tests/t-conflicts/pkg-a/DEBIAN/control
new file mode 100644
index 0000000..ca34e72
--- /dev/null
+++ b/tests/t-conflicts/pkg-a/DEBIAN/control
@@ -0,0 +1,8 @@
+Package: pkg-a
+Version: 0
+Section: test
+Priority: extra
+Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
+Architecture: all
+Conflicts: pkg-b
+Description: test package - conflicting against pkg-b
diff --git a/tests/t-conflicts/pkg-b/DEBIAN/control b/tests/t-conflicts/pkg-b/DEBIAN/control
new file mode 100644
index 0000000..f723a59
--- /dev/null
+++ b/tests/t-conflicts/pkg-b/DEBIAN/control
@@ -0,0 +1,7 @@
+Package: pkg-b
+Version: 0
+Section: test
+Priority: extra
+Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
+Architecture: all
+Description: test package - conflicting package