summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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()