Exemple #1
0
 def testArgs(self):
     """Test that correct exceptions happen when top-level args are not valid"""
     m = tdb._Map()
     self.assertRaises(tdb.MapError, m.set, (), 'yab')
     self.assertRaises(tdb.MapError, m.get, ())
     self.assertRaises(tdb.MapError, m.set, 'foo', {'yab': 'dab'})
     self.assertRaises(tdb.MapError, m.set, 'foo', None)
Exemple #2
0
 def testParams(self):
     """Test multiple-level put/get"""
     m = tdb._Map()
     m.set(('param', 'foo'), 'bar')
     self.assertEquals(m.get('param'), {'foo': 'bar'})
     self.assertEquals(m.get(('param', 'foo')), 'bar')
     m.set(('param', 'fee', 'baz'), 'bar')
     m.set(('param', 'yab', 'dab'), 'doo')
     self.assertEquals(m.get('param'), {'fee': {'baz': 'bar'}, 'foo': 'bar', 'yab': {'dab': 'doo'}})
Exemple #3
0
 def testMismatch(self):
     '''shouldn't be able to set a value and try to access it as an array, or
     the reverse.'''
     m = tdb._Map()
     m.set('foo', 'bar')
     self.assertRaises(tdb.MapError, m.get, ('foo', 'foo'))
     # having both param['foo'] and param['foo']['bar'] isn't permitted
     m.set(('param', 'foo', 'baz'), 'bar')
     self.assertRaises(tdb.MapError, m.set, ('param', 'foo'), 'yab')
     m.set(('param', 'doo'), 'yab')
     self.assertRaises(tdb.MapError, m.set, ('param', 'doo', 'baz'), 'bar')
Exemple #4
0
 def testSimple(self):
     """Test simple put/get"""
     m = tdb._Map()
     # What goes in is what comes out.
     m.set('key', 'value')
     self.assertEquals(m.get('key'), 'value')
     # Singletons and atoms work as keys.
     self.assertEquals(m.get(('key')), 'value')
     self.assertEquals(m.get('foo'), None)
     # Values are write-once
     self.assertRaises(tdb.MapError, m.set, 'key', 'value')