diff --git a/tests/fixtures/repos/cockpit-lookaside/repodata/446ee5f2b8296322faf8b19259b26350655f77e813277453f7819447ec52ad1e-filelists.xml.gz b/tests/fixtures/repos/cockpit-lookaside/repodata/446ee5f2b8296322faf8b19259b26350655f77e813277453f7819447ec52ad1e-filelists.xml.gz
new file mode 100644
index 00000000..c1468a7d
Binary files /dev/null and b/tests/fixtures/repos/cockpit-lookaside/repodata/446ee5f2b8296322faf8b19259b26350655f77e813277453f7819447ec52ad1e-filelists.xml.gz differ
diff --git a/tests/fixtures/repos/cockpit-lookaside/repodata/4f8f323b48f989035622217a41c205b450073edabac546c35af84b7bcec85be3-other.xml.gz b/tests/fixtures/repos/cockpit-lookaside/repodata/4f8f323b48f989035622217a41c205b450073edabac546c35af84b7bcec85be3-other.xml.gz
new file mode 100644
index 00000000..2b999387
Binary files /dev/null and b/tests/fixtures/repos/cockpit-lookaside/repodata/4f8f323b48f989035622217a41c205b450073edabac546c35af84b7bcec85be3-other.xml.gz differ
diff --git a/tests/fixtures/repos/cockpit-lookaside/repodata/d07c8273d3954bd3257f6351f3b23fed0e3896293e2a1dde8274cf3028dce692-primary.xml.gz b/tests/fixtures/repos/cockpit-lookaside/repodata/d07c8273d3954bd3257f6351f3b23fed0e3896293e2a1dde8274cf3028dce692-primary.xml.gz
new file mode 100644
index 00000000..b5ca15f0
Binary files /dev/null and b/tests/fixtures/repos/cockpit-lookaside/repodata/d07c8273d3954bd3257f6351f3b23fed0e3896293e2a1dde8274cf3028dce692-primary.xml.gz differ
diff --git a/tests/fixtures/repos/cockpit-lookaside/repodata/repomd.xml b/tests/fixtures/repos/cockpit-lookaside/repodata/repomd.xml
new file mode 100644
index 00000000..a384a517
--- /dev/null
+++ b/tests/fixtures/repos/cockpit-lookaside/repodata/repomd.xml
@@ -0,0 +1,28 @@
+
+
+ 1498210122
+
+ d07c8273d3954bd3257f6351f3b23fed0e3896293e2a1dde8274cf3028dce692
+ ecba59d2b4924b1c13d4b718fef81b337e97b91e955e7c8ad41b16ba5d7c2c5f
+
+ 1498210121
+ 778
+ 3113
+
+
+ 446ee5f2b8296322faf8b19259b26350655f77e813277453f7819447ec52ad1e
+ ceff2801221c629a8dbc7ed069c0aa9427c5b195afe49b4170b56d22eb0ab6e6
+
+ 1498210121
+ 338
+ 649
+
+
+ 4f8f323b48f989035622217a41c205b450073edabac546c35af84b7bcec85be3
+ 16d5ac89d35aaa823cc080d8aa413cf9ce598484f415e027f1f0fed3c1ab6c33
+
+ 1498210121
+ 435
+ 1047
+
+
diff --git a/tests/fixtures/repos/cockpit/repodata/54cbdff4c313405103d8b21bf7e66cb1a7eba751a3f47b84031eea266ea585b3-primary.xml.gz b/tests/fixtures/repos/cockpit/repodata/54cbdff4c313405103d8b21bf7e66cb1a7eba751a3f47b84031eea266ea585b3-primary.xml.gz
new file mode 100644
index 00000000..0a33eabe
Binary files /dev/null and b/tests/fixtures/repos/cockpit/repodata/54cbdff4c313405103d8b21bf7e66cb1a7eba751a3f47b84031eea266ea585b3-primary.xml.gz differ
diff --git a/tests/fixtures/repos/cockpit/repodata/ba23b0026102b0510915964775cb2b1679591a4da33c0022f9d872899705002c-filelists.xml.gz b/tests/fixtures/repos/cockpit/repodata/ba23b0026102b0510915964775cb2b1679591a4da33c0022f9d872899705002c-filelists.xml.gz
new file mode 100644
index 00000000..6f95972c
Binary files /dev/null and b/tests/fixtures/repos/cockpit/repodata/ba23b0026102b0510915964775cb2b1679591a4da33c0022f9d872899705002c-filelists.xml.gz differ
diff --git a/tests/fixtures/repos/cockpit/repodata/e08e47cf6ecc4d6654cc0d462b42a3c6b20965bdffc501b89d9f0c806f6af1af-other.xml.gz b/tests/fixtures/repos/cockpit/repodata/e08e47cf6ecc4d6654cc0d462b42a3c6b20965bdffc501b89d9f0c806f6af1af-other.xml.gz
new file mode 100644
index 00000000..a2c7091b
Binary files /dev/null and b/tests/fixtures/repos/cockpit/repodata/e08e47cf6ecc4d6654cc0d462b42a3c6b20965bdffc501b89d9f0c806f6af1af-other.xml.gz differ
diff --git a/tests/fixtures/repos/cockpit/repodata/repomd.xml b/tests/fixtures/repos/cockpit/repodata/repomd.xml
new file mode 100644
index 00000000..d4e4096d
--- /dev/null
+++ b/tests/fixtures/repos/cockpit/repodata/repomd.xml
@@ -0,0 +1,28 @@
+
+
+ 1498210174
+
+ 54cbdff4c313405103d8b21bf7e66cb1a7eba751a3f47b84031eea266ea585b3
+ 96a76c77a8294050bb304522166e356e814e9425d45dea7bf247c2db631c199e
+
+ 1498210174
+ 775
+ 3113
+
+
+ ba23b0026102b0510915964775cb2b1679591a4da33c0022f9d872899705002c
+ 7449a1d56e4cd07e8e3ed442d74d29de8d03124577a40158a89599e095b1ad49
+
+ 1498210174
+ 337
+ 649
+
+
+ e08e47cf6ecc4d6654cc0d462b42a3c6b20965bdffc501b89d9f0c806f6af1af
+ e005b74bf6598da3c4bc05322d5f9cce102ae546903ca80bee9b3abaf95e6c4e
+
+ 1498210174
+ 432
+ 1047
+
+
diff --git a/tests/test_gather.py b/tests/test_gather.py
index 80218036..df04a931 100644
--- a/tests/test_gather.py
+++ b/tests/test_gather.py
@@ -646,6 +646,52 @@ class DepsolvingBase(object):
"Dummy-xulrunner-debuginfo-16.0.1-1.x86_64.rpm",
])
+ def test_old_dep_in_lookaside_is_not_pulled_in(self):
+ # main repo:
+ # dummy-cockpit-docker-141-1 depends on dummy-cockpit-system
+ # dummy-cockpit-system-141-1
+ # lookaside:
+ # dummy-cockpit-system-138-1
+ #
+ # By default newer version should be pulled in.
+ self.repo = os.path.join(os.path.dirname(__file__), "fixtures/repos/cockpit")
+ self.lookaside = os.path.join(os.path.dirname(__file__),
+ "fixtures/repos/cockpit-lookaside")
+ packages = [
+ 'dummy-cockpit-docker',
+ ]
+ pkg_map = self.go(packages, None, lookaside=self.lookaside)
+
+ self.assertEqual(self.broken_deps, {})
+ self.assertItemsEqual(pkg_map["rpm"], [
+ "dummy-cockpit-docker-141-1.noarch.rpm",
+ "dummy-cockpit-system-141-1.noarch.rpm",
+ ])
+
+ def test_does_not_exclude_from_lookaside(self):
+ # main repo:
+ # dummy-cockpit-docker-141-1 depends on dummy-cockpit-system
+ # dummy-cockpit-system-141-1
+ # lookaside:
+ # dummy-cockpit-system-138-1
+ #
+ # The -system package is excluded and the dependency should be
+ # satisfied by the older version in lookaside. No broken dependencies
+ # should be reported.
+ self.repo = os.path.join(os.path.dirname(__file__), "fixtures/repos/cockpit")
+ self.lookaside = os.path.join(os.path.dirname(__file__),
+ "fixtures/repos/cockpit-lookaside")
+ packages = [
+ 'dummy-cockpit-docker',
+ '-dummy-cockpit-system',
+ ]
+ pkg_map = self.go(packages, None, lookaside=self.lookaside)
+
+ self.assertEqual(self.broken_deps, {})
+ self.assertItemsEqual(pkg_map["rpm"], [
+ "dummy-cockpit-docker-141-1.noarch.rpm",
+ ])
+
def test_firefox_fulltree(self):
packages = [
"Dummy-firefox",