| |
@@ -20,25 +20,49 @@
|
| |
self.compose = helpers.DummyCompose(self.topdir, {})
|
| |
self.compose.DEBUG = False
|
| |
self.mmd = self.compose.variants["Server"].add_fake_module(
|
| |
- "testmodule:master:1:2017", rpm_nvrs=["pkg-1.0.0-1"])
|
| |
+ "testmodule:master:1:2017", rpm_nvrs=["pkg-1.0.0-1.x86_64", "pkg-1.0.0-1.i686"])
|
| |
|
| |
mock_rpm = mock.Mock(version='1.0.0', release='1',
|
| |
epoch=0, excludearch=None, exclusivearch=None,
|
| |
- sourcerpm='pkg-1.0.0-1', nevra='pkg-1.0.0-1')
|
| |
+ sourcerpm='pkg-1.0.0-1', nevra='pkg-1.0.0-1.x86_64',
|
| |
+ arch="x86_64")
|
| |
mock_rpm.name = 'pkg'
|
| |
self.compose.variants['Server'].pkgset.rpms_by_arch['x86_64'] = [mock_rpm]
|
| |
+ mock_rpm = mock.Mock(version='1.0.0', release='1',
|
| |
+ epoch=0, excludearch=None, exclusivearch=None,
|
| |
+ sourcerpm='pkg-1.0.0-1', nevra='pkg-1.0.0-1.i686',
|
| |
+ arch="i686")
|
| |
+ mock_rpm.name = 'pkg'
|
| |
+ self.compose.variants['Server'].pkgset.rpms_by_arch['i686'] = [mock_rpm]
|
| |
|
| |
def test_gather_module(self):
|
| |
source = GatherSourceModule(self.compose)
|
| |
packages, groups = source("x86_64", self.compose.variants["Server"])
|
| |
self.assertEqual(len(packages), 1)
|
| |
- self.assertEqual(list(packages)[0][0].nevra, "pkg-1.0.0-1")
|
| |
+ self.assertEqual(list(packages)[0][0].nevra, "pkg-1.0.0-1.x86_64")
|
| |
+ self.assertEqual(len(groups), 0)
|
| |
+
|
| |
+ variant = self.compose.variants["Server"]
|
| |
+ arch_mmd = variant.arch_mmds["x86_64"]["testmodule-master"]
|
| |
+ self.assertEqual(set(arch_mmd.get_rpm_artifacts().get()),
|
| |
+ set(["pkg-1.0.0-1.x86_64"]))
|
| |
+
|
| |
+ def test_gather_multilib(self):
|
| |
+ multilib = Modulemd.SimpleSet()
|
| |
+ multilib.add("x86_64")
|
| |
+ self.mmd.get_rpm_components()["pkg"].set_multilib(multilib)
|
| |
+
|
| |
+ source = GatherSourceModule(self.compose)
|
| |
+ packages, groups = source("x86_64", self.compose.variants["Server"])
|
| |
+ self.assertEqual(len(packages), 2)
|
| |
+ self.assertEqual(set(package[0].nevra for package in packages),
|
| |
+ set(["pkg-1.0.0-1.x86_64", "pkg-1.0.0-1.i686"]))
|
| |
self.assertEqual(len(groups), 0)
|
| |
|
| |
variant = self.compose.variants["Server"]
|
| |
arch_mmd = variant.arch_mmds["x86_64"]["testmodule-master"]
|
| |
self.assertEqual(set(arch_mmd.get_rpm_artifacts().get()),
|
| |
- set(["pkg-1.0.0-1"]))
|
| |
+ set(["pkg-1.0.0-1.x86_64", "pkg-1.0.0-1.i686"]))
|
| |
|
| |
def test_gather_filtered_module(self):
|
| |
filter_set = Modulemd.SimpleSet()
|
| |
Handle per-component
multilib
field in modulemd metadata.This field contains the architecture(s) as named in Koji. If the architecture is for example
x86_64
. It means that the packages built as result of component for multilib arches ofx86_64
should be included inx86_64
version of the compose. So forx86_64
example, thei686
packages should be included.