Esempio n. 1
0
    def test_varying_indents(self):
        file_string = """\
empty_section:
level1 = new val
section1:
    item1 = item 1
    subsection:
        item2 = item 2
section2:
 subsection:
     item3 = 3
very_last = 7
"""
        cfg = SimplerConfig()
        cfg.loads(file_string)
        self.assertSetEqual(
            set(cfg.keys()),
            {'empty_section', 'level1', 'section1', 'section2', 'very_last'})
        self.assertSetEqual(set(cfg.section1.keys()), {'item1', 'subsection'})
        self.assertTrue(cfg['empty_section'].is_empty())
        self.assertEqual(cfg.level1, "new val")
        self.assertEqual(cfg.section1.item1, "item 1")
        self.assertEqual(cfg.section1.subsection.item2, "item 2")
        self.assertEqual(cfg.section2.subsection.item3, 3)
        self.assertEqual(cfg['very_last'], 7)
Esempio n. 2
0
    def test_loads(self):
        file_string = """\
# Some comment
empty_section:
level1 = new val
section1:
# this is a comment for section1.item1:
    item1 = item 1
          # this is another comment
    # Indented comment
    subsection:
        item2 = item 2
# Should be after section 1
section2:
    subsection:
        item3 = 3
very_last = 7
# Trailing comment
"""
        cfg = SimplerConfig()
        cfg.loads(file_string)
        self.assertSetEqual(
            set(cfg.keys()),
            {'empty_section', 'level1', 'section1', 'section2', 'very_last'})
        self.assertSetEqual(set(cfg.section1.keys()), {'item1', 'subsection'})
        self.assertTrue(cfg['empty_section'].is_empty())
        self.assertEqual(cfg.level1, "new val")
        self.assertEqual(cfg.section1.item1, "item 1")
        self.assertEqual(cfg.section1.subsection.item2, "item 2")
        self.assertEqual(cfg.section2.subsection.item3, 3)
        self.assertEqual(cfg['very last'], 7)