ENH: Throw exception if requested Jail is actually not defined at all

pull/185/head
Yaroslav Halchenko 2013-04-22 16:59:00 -04:00
parent 24e4cfe1b7
commit 8a0ac30bd9
2 changed files with 11 additions and 1 deletions

View File

@ -54,7 +54,13 @@ class JailReader(ConfigReader):
return self.__name
def read(self):
return ConfigReader.read(self, "jail")
out = ConfigReader.read(self, "jail")
# Before returning -- verify that requested section
# exists at all
if not (self.__name in self.sections()):
raise ValueError("Jail %r was not found among available"
% self.__name)
return out
def isEnabled(self):
return self.__force_enable or self.__opts["enabled"]

View File

@ -107,6 +107,10 @@ option = %s
class JailReaderTest(unittest.TestCase):
def testIncorrectJail(self):
jail = JailReader('XXXABSENTXXX', basedir=CONFIG_DIR)
self.assertRaises(ValueError, jail.read)
def testStockSSHJail(self):
jail = JailReader('ssh-iptables', basedir=CONFIG_DIR) # we are running tests from root project dir atm
self.assertTrue(jail.read())