Пример #1
0
 def testInitInvalid(self):
     with self.assertRaises(ValueError):
         m = ldmud.Mapping([(1, ), (2, 3)])
     with self.assertRaises(ValueError):
         m = ldmud.Mapping([(), ()])
     with self.assertRaises(ValueError):
         m = ldmud.Mapping(width=-1)
Пример #2
0
    def testGetSetInvalid(self):
        m = ldmud.Mapping(width=0)
        with self.assertRaises(Exception):
            m[10] = 1
        with self.assertRaises(Exception):
            val = m[10]

        m = ldmud.Mapping(width=2)
        with self.assertRaises(IndexError):
            m['Hi', 'There'] = 'Me'
        with self.assertRaises(IndexError):
            m['Hi', 2] = 0
Пример #3
0
 def testLvalueMappingItem(self):
     m = ldmud.Mapping({1: 1, 2: 4, 3: 9, 4: 16})
     lv = ldmud.Lvalue(m)
     lv[3].value = 27
     self.assertEqual(m[3], 27)
     m[3] = 81
     self.assertEqual(lv[3, 0].value, 81)
Пример #4
0
 def testLvalueMappingNewItem(self):
     m = ldmud.Mapping()
     lv = ldmud.Lvalue(m)
     item = lv[3]
     self.assertEqual(item.value, 0)
     self.assertEqual(len(m), 0)
     item.value = 9
     self.assertEqual(len(m), 1)
     self.assertEqual(m[3], 9)
     self.assertEqual(item.value, 9)
Пример #5
0
 def testInitList(self):
     m = ldmud.Mapping([(1,2,3),(4,5,6),(7,8,9),(10,11,12),(13,14,15)])
     self.assertIsNotNone(m)
     self.assertEqual(len(m), 5)
     self.assertEqual(m.width, 2)
     self.assertEqual(m[1], 2)
     self.assertEqual(m[4,1], 6)
     self.assertEqual(m[7,0], 8)
     self.assertTrue(13 in m)
     self.assertFalse(14 in m)
Пример #6
0
 def testInitDict(self):
     m = ldmud.Mapping({1: 1, 2: 4, 3: 9, 4: 16})
     self.assertIsNotNone(m)
     self.assertEqual(len(m), 4)
     self.assertEqual(m.width, 1)
     self.assertEqual(m[1], 1)
     self.assertEqual(m[2], 4)
     self.assertEqual(m[3], 9)
     self.assertEqual(m[4], 16)
     self.assertTrue(4 in m)
     self.assertFalse(5 in m)
Пример #7
0
    def testGetSetSimple(self):
        m = ldmud.Mapping()
        self.assertIsNotNone(m)

        m['Hello'] = 1
        m['World'] = 2
        self.assertEqual(len(m), 2)
        self.assertEqual(m.width, 1)
        self.assertEqual(m['Hello'], 1)
        self.assertEqual(m['World'], 2)
        self.assertEqual(m['!'], 0)
        self.assertFalse('!' in m)
Пример #8
0
    def testDeletion(self):
        m = ldmud.Mapping({"One": 1, "Two": 2, "Three": 3})
        self.assertIsNotNone(m)

        self.assertEqual(len(m), 3)
        self.assertEqual(m.width, 1)
        del m["Two"]

        self.assertEqual(len(m), 2)
        self.assertEqual(m.width, 1)
        self.assertFalse('Two' in m)
        self.assertEqual(m['One'], 1)
        self.assertEqual(m['Three'], 3)
Пример #9
0
 def testIterator(self):
     m = ldmud.Mapping({
         "One": 1,
         "Two": 2,
         "Three": 3
     })
     self.assertEqual(dict(m), {"One": 1, "Two": 2, "Three": 3})
     self.assertEqual(set(m.keys()), set((
         "One",
         "Two",
         "Three",
     )))
     self.assertEqual(set(m.values()), set((
         1,
         2,
         3,
     )))
Пример #10
0
    def testGetSetWide(self):
        m = ldmud.Mapping(width=2)
        self.assertIsNotNone(m)

        m['Hello', 0] = 1
        m['Hello', 1] = 42
        m['World'] = 2
        m['World', 1] = 100

        self.assertEqual(len(m), 2)
        self.assertEqual(m.width, 2)
        self.assertEqual(m['Hello'], 1)
        self.assertEqual(m['Hello', 0], 1)
        self.assertEqual(m['Hello', 1], 42)
        self.assertEqual(m['World'], 2)
        self.assertEqual(m['World', 0], 2)
        self.assertEqual(m['World', 1], 100)
Пример #11
0
 def testInitWidth(self):
     m = ldmud.Mapping(width=10)
     self.assertIsNotNone(m)
     self.assertEqual(len(m), 0)
     self.assertEqual(m.width, 10)
Пример #12
0
 def testInitEmpty(self):
     m = ldmud.Mapping()
     self.assertIsNotNone(m)
     self.assertEqual(len(m), 0)
     self.assertEqual(m.width, 1)
Пример #13
0
 def parse_object(self, *args, **kwargs):
     (val, end) = self.orig_parse_object(*args, **kwargs)
     return (ldmud.Mapping(val), end)