diff options
Diffstat (limited to 'tests/test_distro.py')
-rw-r--r-- | tests/test_distro.py | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/tests/test_distro.py b/tests/test_distro.py index 409c1c6..21df2c0 100644 --- a/tests/test_distro.py +++ b/tests/test_distro.py @@ -19,16 +19,17 @@ import unittest from mock import patch try: - import lsb_release - have_lsb_release=True + import lsb_release # noqa: F401 + have_lsb_release = True except ImportError: - have_lsb_release=False - + have_lsb_release = False from whatmaps.distro import Distro, detect + class Pkg(object): name = 'doesnotmatter' + class TestDistro(unittest.TestCase): def test_abstract(self): """Check abstract method signatures""" @@ -45,7 +46,6 @@ class TestDistro(unittest.TestCase): self.assertEqual(Distro.pkg_service_blacklist(Pkg), []) self.assertFalse(Distro.has_apt()) - @unittest.skipUnless(have_lsb_release, "lsb_release not installed") def test_detect_via_lsb_release_module(self): "Detect distro via lsb_release" @@ -54,3 +54,20 @@ class TestDistro(unittest.TestCase): with patch('os.path.exists', return_value=False): d = detect() self.assertEqual(d.id, 'Debian') + + def test_filter_services_empty(self): + d = Distro() + self.assertEqual(set(['foo', 'bar']), + d.filter_services(['foo', 'bar'])) + + def test_filter_services_one(self): + d = Distro() + d.service_blacklist_re = ['^f..'] + self.assertEqual(set(['bar']), + d.filter_services(['foo', 'bar'])) + + def test_filter_services_all(self): + d = Distro() + d.service_blacklist_re = ['^f..', '^b..'] + self.assertEqual(set(), + d.filter_services(['foo', 'bar'])) |