Exemplo n.º 1
0
class InheritanceTestCase(unittest.TestCase):

    def setUp(self):
        self.x = ExtendedConfigParser()
        self.x.read('./test_cfg.ini')

    def test_get_section_name(self):
        self.assertEqual(self.x.get_section_name('sect1'), 'sect1:sect2:sect3')

    def test_get_section_name_fail(self):
        self.assertRaises(NoSectionError, self.x.get_section_name, 'sect4')

    def test_get_basic2(self):
        self.assertEqual(self.x.get('sect1', 'key1'), 'val1')

    def test_get_basic_fail2(self):
        self.assertRaises(NoOptionError, self.x.get, 'sect1', 'key412')

    def test_get_sections(self):
        sections = ['sect1:sect2:sect3', 'sect2', 'sect3']
        self.assertEqual(self.x.get_corresponding_sections('sect1'), sections)

    def test_get_sections_fail(self):
        self.assertRaises(NoSectionError, lambda:
                          self.x.get_corresponding_sections('sect173'))

    def test_get_parent_key(self):
        self.assertEqual(self.x.get('sect1', 'key2'), 'val2')

    def test_get_grandparent_key(self):
        self.assertEqual(self.x.get('sect1', 'key3'), 'val3')

    def test_get_key_dict(self):
        self.assertEqual(self.x['sect1']['key1'], 'val1')

    def test_get_parent_key_dict(self):
        self.assertEqual(self.x['sect1']['key2'], 'val2')

    def test_get_grandparent_key_dict(self):
        self.assertEqual(self.x['sect1']['key3'], 'val3')

    def test_get_default_key_dict(self):
        self.assertEqual(self.x['sect1']['key049'], 'DEFAULT')

    def test_get_key_dict_fail(self):
        self.assertRaises(KeyError, lambda: self.x['sect2']['key4'])

    def test_get_sect_dict_fail(self):
        self.assertRaises(KeyError, lambda: self.x['sect42']['key1'])