def testOutOfBounds(self): r = db.RowId('r', db.Id('x', 1), db.Id('y', 1)) with self.assertRaises(ValueError): r.create(2, 2) with self.assertRaises(ValueError): r.parse(4) with self.assertRaises(ValueError): r.get_range(2)
def testCreateAndParse(self): r = db.RowId('r', db.Id('g', 2), db.Id('l', 2)) for x, y in itertools.product(range(3), range(3)): self.assertEqual((x, y), r.parse(r.create(x, y)))
def testGetRange(self): r = db.RowId('r', db.Id('x', 4), db.Id('y', 4)) self.assertEqual((0x00, 0x0F), r.get_range(0x0)) self.assertEqual((0xF0, 0xFF), r.get_range(0xF))
def testTooManyBits(self): db.RowId('r', db.Id('g', 32), db.Id('l', 31)) with self.assertRaises(ValueError): db.RowId('r', db.Id('g', 32), db.Id('l', 32))