Esempio n. 1
0
    def test_eq (self):
        a = Dictionary('Text', {})
        a.append('Key1', 'Value1')
        a.append('Key2', 'Value2')

        self.assertEqual(a.name, 'Text')
        self.assertEqual(a, {'Key1': 'Value1', 'Key2': 'Value2'})
        self.assertEqual(dict(a), {'Key1': 'Value1', 'Key2': 'Value2'})
        self.assertEqual(a.value, {'Key1': 'Value1', 'Key2': 'Value2'})
        self.assertEqual(dict(a.value), {'Key1': 'Value1', 'Key2': 'Value2'})

        b = Dictionary('Text', {})
        b.append('Key2', 'Value2')
        b.append('Key1', 'Value1')

        self.assertEqual(b.name, 'Text')
        self.assertEqual(b, {'Key2': 'Value2', 'Key1': 'Value1'})

        c = Dictionary('Name', a)

        self.assertEqual(c.name, 'Name')
        self.assertEqual(c, {'Key1': 'Value1', 'Key2': 'Value2'})
        self.assertEqual(c, dict(a))

        self.assertEqual(a, c)
        self.assertNotEqual(a, b)
        self.assertNotEqual(c, b)

        self.assertEqual(a, dict(b.value))
        self.assertEqual(a, dict(b))
Esempio n. 2
0
    def test_prepend (self):
        d = Dictionary('Empty', {})

        self.assertEqual(d, {})
        self.assertEqual(d.keys(), [])
        self.assertEqual(d.selected, None)

        d.prepend('Key4', 'Value4', select_new=False)

        self.assertEqual(d, {'Key4': 'Value4'})
        self.assertEqual(d.keys(), ['Key4'])
        self.assertEqual(d.selected, 'Key4')

        d.prepend('Key1', 'Value1', select_new=False)

        self.assertEqual(d, {'Key1': 'Value1', 'Key4': 'Value4'})
        self.assertEqual(d.keys(), ['Key1', 'Key4'])
        self.assertEqual(d.selected, 'Key4')

        d.prepend('Key2', 'Value2')

        self.assertEqual(d, {'Key1': 'Value1', 'Key2': 'Value2', 'Key4': 'Value4'})
        self.assertEqual(d.keys(), ['Key1', 'Key2', 'Key4'])
        self.assertEqual(d.selected, 'Key2')

        d.select('Key4')

        self.assertEqual(d.selected, 'Key4')

        d.prepend('Key3', 'Value3')

        self.assertEqual(d, {'Key1': 'Value1', 'Key2': 'Value2', 'Key3': 'Value3', 'Key4': 'Value4'})
        self.assertEqual(d.keys(), ['Key1', 'Key2', 'Key3', 'Key4'])
        self.assertEqual(d.selected, 'Key3')


        self.assertRaises(KeyError, d.prepend, 'Key1', 'Value1')
Esempio n. 3
0
    def test_append_nested (self):
        d = Dictionary('Section1', {})
        d.append('Key1', 'Value1')

        self.assertEqual(d.keys(), ['Key1'])
        self.assertEqual(d.selected, 'Key1')

        d.append('Section2', {}, select_new=False)

        self.assertEqual(d.keys(), ['Key1', 'Section2'])
        self.assertEqual(d.selected, 'Key1')

        d.append('Key2', 'Value2')

        self.assertEqual(d.keys(), ['Key1', 'Key2', 'Section2'])
        self.assertEqual(d.selected, 'Key2')

        d.append('Section3', {})

        self.assertEqual(d.keys(), ['Key1', 'Key2', 'Section2', 'Section3'])
        self.assertEqual(d.selected, 'Section3')

        d.append('Key3', 'Value3')

        self.assertEqual(d.keys(), ['Key1', 'Key2', 'Key3', 'Section2', 'Section3'])
        self.assertEqual(d.selected, 'Key3')