diff options
Diffstat (limited to 'tests/t-db')
26 files changed, 319 insertions, 0 deletions
diff --git a/tests/t-db/Makefile b/tests/t-db/Makefile new file mode 100644 index 0000000..2e5b621 --- /dev/null +++ b/tests/t-db/Makefile @@ -0,0 +1,60 @@ +# Copyright © 2012 Guillem Jover <guillem@debian.org> + +TESTS_DEB := + +include ../Test.mk + +PKG_TUPLE = LC_ALL=C $(DPKG_QUERY) -f '$${Package}:$${Architecture}:$${Version}' -W + +TEST_CASES += test-field-blank-lines +TEST_CASES += test-field-blank-lines-update +TEST_CASES += test-dupe-multi +TEST_CASES += test-cross-single-update +TEST_CASES += test-cross-multi-update +TEST_CASES += test-bogus-single +TEST_CASES += test-bogus-dupe-same-single +TEST_CASES += test-bogus-dupe-diff-single +TEST_CASES += test-bogus-multi +TEST_CASES += test-bogus-multi-update + +test-case: $(TEST_CASES) + +test-field-blank-lines: override DPKG_ADMINDIR = db-field-blank-lines +test-field-blank-lines: + $(call stderr_has,$(PKG_TUPLE),warning) + +test-field-blank-lines-update: override DPKG_ADMINDIR = db-field-blank-lines-update +test-field-blank-lines-update: + $(call stderr_has,$(PKG_TUPLE),warning) + +test-dupe-multi: override DPKG_ADMINDIR = db-dupe-multi +test-dupe-multi: + $(call stdout_is,$(PKG_TUPLE),pkg-multi:amd64:1.0) + +test-cross-single-update: override DPKG_ADMINDIR = db-cross-single-update +test-cross-single-update: + $(call stdout_is,$(PKG_TUPLE),pkg-single:armel:3.0) + +test-cross-multi-update: override DPKG_ADMINDIR = db-cross-multi-update +test-cross-multi-update: + $(call stdout_is,$(PKG_TUPLE),pkg-multi:armel:4.0) + +test-bogus-dupe-same-single: override DPKG_ADMINDIR = db-bogus-dupe-same-single +test-bogus-dupe-same-single: + $(call stderr_has,$(PKG_TUPLE),error) + +test-bogus-dupe-diff-single: override DPKG_ADMINDIR = db-bogus-dupe-diff-single +test-bogus-dupe-diff-single: + $(call stderr_has,$(PKG_TUPLE),error) + +test-bogus-single: override DPKG_ADMINDIR = db-bogus-single +test-bogus-single: + $(call stderr_has,$(PKG_TUPLE),error) + +test-bogus-multi: override DPKG_ADMINDIR = db-bogus-multi +test-bogus-multi: + $(call stderr_has,$(PKG_TUPLE),error) + +test-bogus-multi-update: override DPKG_ADMINDIR = db-bogus-multi-update +test-bogus-multi-update: + $(call stderr_has,$(PKG_TUPLE),error) diff --git a/tests/t-db/db-bogus-dupe-diff-single/status b/tests/t-db/db-bogus-dupe-diff-single/status new file mode 100644 index 0000000..0274528 --- /dev/null +++ b/tests/t-db/db-bogus-dupe-diff-single/status @@ -0,0 +1,18 @@ +Package: pkg-single +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 1.0 +Description: test package + +Package: pkg-single +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: i386 +Version: 2.0 +Description: test package + diff --git a/tests/t-db/db-bogus-dupe-diff-single/updates/.keep b/tests/t-db/db-bogus-dupe-diff-single/updates/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t-db/db-bogus-dupe-diff-single/updates/.keep diff --git a/tests/t-db/db-bogus-dupe-same-single/status b/tests/t-db/db-bogus-dupe-same-single/status new file mode 100644 index 0000000..b336494 --- /dev/null +++ b/tests/t-db/db-bogus-dupe-same-single/status @@ -0,0 +1,18 @@ +Package: pkg-single +Status: install ok config-files +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 1.0 +Description: test package + +Package: pkg-single +Status: install ok half-installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 2.0 +Description: test package + diff --git a/tests/t-db/db-bogus-dupe-same-single/updates/.keep b/tests/t-db/db-bogus-dupe-same-single/updates/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t-db/db-bogus-dupe-same-single/updates/.keep diff --git a/tests/t-db/db-bogus-multi-update/status b/tests/t-db/db-bogus-multi-update/status new file mode 100644 index 0000000..d605d4b --- /dev/null +++ b/tests/t-db/db-bogus-multi-update/status @@ -0,0 +1,16 @@ +Package: pkg-multi +Status: install ok config-files +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Multi-Arch: same +Version: 1.0 +Description: test package + +Package: pkg-multi +Status: install ok not-installed +Priority: extra +Section: test +Architecture: armel + diff --git a/tests/t-db/db-bogus-multi-update/updates/0001 b/tests/t-db/db-bogus-multi-update/updates/0001 new file mode 100644 index 0000000..4c00629 --- /dev/null +++ b/tests/t-db/db-bogus-multi-update/updates/0001 @@ -0,0 +1,10 @@ +Package: pkg-multi +Status: install ok half-installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: i386 +Multi-Arch: same +Version: 1.0 +Description: test package + diff --git a/tests/t-db/db-bogus-multi-update/updates/0002 b/tests/t-db/db-bogus-multi-update/updates/0002 new file mode 100644 index 0000000..468518a --- /dev/null +++ b/tests/t-db/db-bogus-multi-update/updates/0002 @@ -0,0 +1,9 @@ +Package: pkg-multi +Status: install ok unpacked +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: armel +Version: 1.0 +Description: test package + diff --git a/tests/t-db/db-bogus-multi/status b/tests/t-db/db-bogus-multi/status new file mode 100644 index 0000000..c79b950 --- /dev/null +++ b/tests/t-db/db-bogus-multi/status @@ -0,0 +1,29 @@ +Package: pkg-multi +Status: install ok config-files +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Multi-Arch: same +Version: 1.0 +Description: test package + +Package: pkg-multi +Status: install ok half-installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: armel +Version: 1.0 +Description: test package + +Package: pkg-multi +Status: install ok unpacked +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: i386 +Multi-Arch: same +Version: 1.0 +Description: test package + diff --git a/tests/t-db/db-bogus-multi/updates/.keep b/tests/t-db/db-bogus-multi/updates/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t-db/db-bogus-multi/updates/.keep diff --git a/tests/t-db/db-bogus-single/status b/tests/t-db/db-bogus-single/status new file mode 100644 index 0000000..87eed5d --- /dev/null +++ b/tests/t-db/db-bogus-single/status @@ -0,0 +1,19 @@ +Package: pkg-single +Status: install ok config-files +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Multi-Arch: same +Version: 1.0 +Description: test package + +Package: pkg-single +Status: install ok half-configured +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: i386 +Version: 1.0 +Description: test package + diff --git a/tests/t-db/db-bogus-single/updates/.keep b/tests/t-db/db-bogus-single/updates/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t-db/db-bogus-single/updates/.keep diff --git a/tests/t-db/db-cross-multi-update/status b/tests/t-db/db-cross-multi-update/status new file mode 100644 index 0000000..cfa1c04 --- /dev/null +++ b/tests/t-db/db-cross-multi-update/status @@ -0,0 +1,10 @@ +Package: pkg-multi +Status: install ok config-files +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Multi-Arch: same +Version: 1.0 +Description: test package + diff --git a/tests/t-db/db-cross-multi-update/updates/0001 b/tests/t-db/db-cross-multi-update/updates/0001 new file mode 100644 index 0000000..a0fea54 --- /dev/null +++ b/tests/t-db/db-cross-multi-update/updates/0001 @@ -0,0 +1,10 @@ +Package: pkg-multi +Status: install ok half-installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: i386 +Multi-Arch: same +Version: 2.0 +Description: test package + diff --git a/tests/t-db/db-cross-multi-update/updates/0002 b/tests/t-db/db-cross-multi-update/updates/0002 new file mode 100644 index 0000000..7850eef --- /dev/null +++ b/tests/t-db/db-cross-multi-update/updates/0002 @@ -0,0 +1,10 @@ +Package: pkg-multi +Status: install ok not-installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: i386 +Multi-Arch: same +Version: 2.0 +Description: test package + diff --git a/tests/t-db/db-cross-multi-update/updates/0003 b/tests/t-db/db-cross-multi-update/updates/0003 new file mode 100644 index 0000000..3759577 --- /dev/null +++ b/tests/t-db/db-cross-multi-update/updates/0003 @@ -0,0 +1,9 @@ +Package: pkg-multi +Status: install ok unpacked +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: armel +Version: 4.0 +Description: test package + diff --git a/tests/t-db/db-cross-single-update/status b/tests/t-db/db-cross-single-update/status new file mode 100644 index 0000000..10c934b --- /dev/null +++ b/tests/t-db/db-cross-single-update/status @@ -0,0 +1,9 @@ +Package: pkg-single +Status: install ok config-files +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 1.0 +Description: test package + diff --git a/tests/t-db/db-cross-single-update/updates/0001 b/tests/t-db/db-cross-single-update/updates/0001 new file mode 100644 index 0000000..ae9d517 --- /dev/null +++ b/tests/t-db/db-cross-single-update/updates/0001 @@ -0,0 +1,10 @@ +Package: pkg-single +Status: install ok half-installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: i386 +Multi-Arch: same +Version: 2.0 +Description: test package + diff --git a/tests/t-db/db-cross-single-update/updates/0002 b/tests/t-db/db-cross-single-update/updates/0002 new file mode 100644 index 0000000..11be9c5 --- /dev/null +++ b/tests/t-db/db-cross-single-update/updates/0002 @@ -0,0 +1,9 @@ +Package: pkg-single +Status: install ok unpacked +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: armel +Version: 3.0 +Description: test package + diff --git a/tests/t-db/db-dupe-multi/status b/tests/t-db/db-dupe-multi/status new file mode 100644 index 0000000..e2e1a7d --- /dev/null +++ b/tests/t-db/db-dupe-multi/status @@ -0,0 +1,20 @@ +Package: pkg-multi +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Multi-Arch: same +Version: 1.0 +Description: test package + +Package: pkg-multi +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Multi-Arch: same +Version: 1.0 +Description: test package + diff --git a/tests/t-db/db-dupe-multi/updates/.keep b/tests/t-db/db-dupe-multi/updates/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t-db/db-dupe-multi/updates/.keep diff --git a/tests/t-db/db-field-blank-lines-update/status b/tests/t-db/db-field-blank-lines-update/status new file mode 100644 index 0000000..7b58a81 --- /dev/null +++ b/tests/t-db/db-field-blank-lines-update/status @@ -0,0 +1,13 @@ +Package: pkg-correct +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 1.0 +Description: test package + This description splits + . + lines correctly + . + with dots. diff --git a/tests/t-db/db-field-blank-lines-update/updates/.keep b/tests/t-db/db-field-blank-lines-update/updates/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t-db/db-field-blank-lines-update/updates/.keep diff --git a/tests/t-db/db-field-blank-lines-update/updates/0001 b/tests/t-db/db-field-blank-lines-update/updates/0001 new file mode 100644 index 0000000..6d9c599 --- /dev/null +++ b/tests/t-db/db-field-blank-lines-update/updates/0001 @@ -0,0 +1,13 @@ +Package: pkg-blank-lines +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 1.0 +Description: test package + This description splits + + lines incorrectly + + with blank lines, but is still tolerated. diff --git a/tests/t-db/db-field-blank-lines/status b/tests/t-db/db-field-blank-lines/status new file mode 100644 index 0000000..a9759da --- /dev/null +++ b/tests/t-db/db-field-blank-lines/status @@ -0,0 +1,27 @@ +Package: pkg-blank-lines +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 1.0 +Description: test package + This description splits + + lines incorrectly + + with blank lines, but is still tolerated. + +Package: pkg-correct +Status: install ok installed +Priority: extra +Section: test +Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org> +Architecture: amd64 +Version: 1.0 +Description: test package + This description splits + . + lines correctly + . + with dots. diff --git a/tests/t-db/db-field-blank-lines/updates/.keep b/tests/t-db/db-field-blank-lines/updates/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/t-db/db-field-blank-lines/updates/.keep |