Skip to content

Commit

Permalink
Add basic unit tests around reposync filters
Browse files Browse the repository at this point in the history
  • Loading branch information
meaksh committed Feb 12, 2025
1 parent 1cb2867 commit b129850
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions python/test/unit/spacewalk/satellite_tools/test_yum_src.py
Original file line number Diff line number Diff line change
Expand Up @@ -111,8 +111,64 @@ def test_list_packages_empty(self):

self.assertEqual(cs.list_packages(filters=None, latest=False), [])

def test_list_packages_filters(self):
cs = self._make_dummy_cs()

class ChecksumMock():
def typestr(self):
pass

def hex(self):
pass

class SolvableMock():
def __init__(self, name, evr, nevra, arch):
self.name = name
self.evr = evr
self.nevra = nevra
self.arch = arch

def lookup_checksum(self, x):
return ChecksumMock()

def lookup_num(self, x):
pass

def lookup_location(self):
return ["foobar"]

def __str__(self):
return self.nevra

cs._get_solvable_packages = MagicMock(side_effect = lambda:
[
SolvableMock("pkg1", "1.2.3-xx.0.foobar", "pkg1-1.2.3-xx.0.foobar.x86_64", "x86_64"),
SolvableMock("pkg1", "1.2.4-xx.0.foobar", "pkg1-1.2.4-xx.0.foobar.x86_64", "x86_64"),
SolvableMock("pkg2", "3.2.1-1", "pkg2-3.2.1-1.x86_64", "x86_64"),
SolvableMock("pkg2", "3.2.2-1", "pkg2-3.2.2-1.x86_64", "x86_64"),
]
)
cs._get_solvable_dependencies = MagicMock(side_effect = lambda x: x)

self.assertEqual(len(cs.list_packages(filters=None, latest=False)), 4)

cs.nevra_filter = False
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg*"])], latest=False)), 4)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1*"])], latest=False)), 2)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1-1.2*"])], latest=False)), 0)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1"])], latest=False)), 2)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1-1.2.3-xx.0.foobar.x86_64"])], latest=False)), 0)

cs.nevra_filter = True
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg*"])], latest=False)), 4)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1*"])], latest=False)), 2)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1-1.2*"])], latest=False)), 2)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1"])], latest=False)), 0)
self.assertEqual(len(cs.list_packages(filters=[("+", ["pkg1-1.2.3-xx.0.foobar.x86_64"])], latest=False)), 1)

@unittest.skip
def test_list_packages_with_pack(self):

cs = self._make_dummy_cs()

package_attrs = [
Expand Down

0 comments on commit b129850

Please sign in to comment.