summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2012-09-14 16:01:00 -0400
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2012-09-14 16:01:00 -0400
commit6c32289410fb59c05040d1f507b2fa9b8b62540b (patch)
treef6ab364fbbc2869d8414ea1d5bf3fd4d46ff02ee
parent5e776abd20ce60c12d9f188675183dae870d67ff (diff)
downloadbcfg2-6c32289410fb59c05040d1f507b2fa9b8b62540b.tar.gz
bcfg2-6c32289410fb59c05040d1f507b2fa9b8b62540b.tar.bz2
bcfg2-6c32289410fb59c05040d1f507b2fa9b8b62540b.zip
SEModules: fixed unit tests
-rw-r--r--src/lib/Bcfg2/Server/Plugins/SEModules.py5
-rw-r--r--testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestSEModules.py19
2 files changed, 13 insertions, 11 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/SEModules.py b/src/lib/Bcfg2/Server/Plugins/SEModules.py
index 8093d34ca..324c2309f 100644
--- a/src/lib/Bcfg2/Server/Plugins/SEModules.py
+++ b/src/lib/Bcfg2/Server/Plugins/SEModules.py
@@ -25,9 +25,10 @@ class SEModules(Bcfg2.Server.Plugin.GroupSpool):
to be able to specify module entries as name='foo' or
name='foo.pp', so we put this abstraction in between """
if entry.get("name").endswith(".pp"):
- return entry.get("name")
+ name = entry.get("name")
else:
- return entry.get("name") + ".pp"
+ name = entry.get("name") + ".pp"
+ return name.lstrip("/")
def HandlesEntry(self, entry, metadata):
if entry.tag in self.Entries and entry.get('type') == 'module':
diff --git a/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestSEModules.py b/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestSEModules.py
index c319ed663..bf9ef681a 100644
--- a/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestSEModules.py
+++ b/testsuite/Testsrc/Testlib/TestServer/TestPlugins/TestSEModules.py
@@ -41,26 +41,27 @@ class TestSEModules(TestGroupSpool):
modules = self.get_obj()
for mname in ["foo", "foo.pp"]:
entry = lxml.etree.Element("SELinux", type="module", name=mname)
- self.assertEqual(modules._get_module_name(entry), "/foo.pp")
+ self.assertEqual(modules._get_module_name(entry), "foo.pp")
@patch("Bcfg2.Server.Plugins.SEModules.SEModules._get_module_name")
def test_HandlesEntry(self, mock_get_name):
modules = self.get_obj()
modules.Entries['SELinux']['/foo.pp'] = Mock()
modules.Entries['SELinux']['/bar.pp'] = Mock()
- for el in [lxml.etree.Element("Path", name="/foo.pp"),
+ for el in [lxml.etree.Element("Path", name="foo.pp"),
lxml.etree.Element("SELinux", type="fcontext",
- name="/foo.pp"),
+ name="foo.pp"),
lxml.etree.Element("SELinux", type="module",
- name="/baz.pp")]:
+ name="baz.pp")]:
mock_get_name.return_value = el.get("name")
self.assertFalse(modules.HandlesEntry(el, Mock()))
- mock_get_name.assert_called_with(el)
+ if el.get("type") == "module":
+ mock_get_name.assert_called_with(el)
for el in [lxml.etree.Element("SELinux", type="module",
- name="/foo.pp"),
+ name="foo.pp"),
lxml.etree.Element("SELinux", type="module",
- name="/bar.pp")]:
+ name="bar.pp")]:
mock_get_name.return_value = el.get("name")
self.assertTrue(modules.HandlesEntry(el, Mock()),
msg="SEModules fails to handle %s" % el.get("name"))
@@ -69,11 +70,11 @@ class TestSEModules(TestGroupSpool):
TestGroupSpool.test_HandlesEntry(self)
@patch("Bcfg2.Server.Plugins.SEModules.SEModules._get_module_name")
- def test_HandlesEntry(self, mock_get_name):
+ def test_HandleEntry(self, mock_get_name):
modules = self.get_obj()
handler = Mock()
modules.Entries['SELinux']['/foo.pp'] = handler
- mock_get_name.return_value = "/foo.pp"
+ mock_get_name.return_value = "foo.pp"
entry = lxml.etree.Element("SELinux", type="module", name="foo")
metadata = Mock()