示例#1
0
class TestConfigModel(TestCase):
    filename = "config.test"

    std_cfg = [
        {
            'name': 'MAIN',
            'items': [
                dict(header='header', value='value'),
                dict(header='header2', value='value2'),
                dict(header='header3', value='value3'),
            ]
        }
    ]

    def setUp(self):
        TestConfigCreater()
        self.config = Config(self.filename)

    def test_to_dict(self):
        to_dict = self.config.to_dict()
        self.assertEqual(to_dict, self.std_cfg)

    def test_delete(self):
        mutate_cfg = copy.deepcopy(self.std_cfg) # remove row from items on
        mutate_cfg[0]['items'] = mutate_cfg[0]['items'][1:]
        self.config.delete(*('MAIN', 'header'))
        to_dict = self.config.to_dict()
        self.assertEqual(to_dict, mutate_cfg)

    def test_edit(self):
        mutate_cfg = copy.deepcopy(self.std_cfg)
        mutate_cfg[0]['items'][0] = dict(header='header', value='value23') # change row from items on dict(header='header23', value='value23')
        self.config.edit(*('MAIN', 'header', 'value23'))
        to_dict = self.config.to_dict()
        self.assertEqual(to_dict, mutate_cfg)