def testMisc(self): ''' Test miscellaneous Location capabilities ''' l1 = Location("TS",'foo') l2 = Location("TC",'R-H-K8-S') self.assertNotEqual(hash(l1),hash(l2)) self.assertEquals(hash(l1),hash(l1)) self.assertEqual(l1.get_id(),'TS') self.assertEqual(l2.get_id(),'TC')
def testLocation(self): ''' Test location is handled correctly ''' s = struct.Struct("3p256p") fmt = 0x5445535400000003 loc = Location('C','MB-SL3-ET1-PT2') raw_data = s.pack(loc.get_id(),loc.get_location()) ed = ExtensionData(fmt,None, raw_data) self.assertEqual(raw_data,ed['raw_data']) self.assertEqual(loc,ed['neighbor']) self.assertEqual(len(ed.keys()),2) self.assertEqual(fmt,ed.get_format())
def testComplexBadDefered(self): ''' Test invalid complex locations with validation deferred ''' cbad1 = Location('TZ', 'R-H') self.assertEqual('TZ: R-H', str(cbad1)) self.assertRaises(KeyError, cbad1.get_substitution_dict) self.assertRaises(KeyError, cbad1.get_comp_value, 'dummy') self.assertRaises(KeyError, cbad1.new_location_by_scope, 'dummy') self.assertEqual('TZ', cbad1.get_id()) self.assertEqual('R-H', cbad1.get_location()) cbad2 = Location('TZ', 'R-H') cbad3 = Location('TZ', 'R-I') self.assertTrue(cbad1 == cbad2) self.assertFalse(cbad1 == cbad3) self.assertTrue(cbad1.match(cbad2, None)) self.assertRaises(KeyError, cbad1.match, cbad2, 'dummy') return
def testToFromDict(self): ''' Test to and from dict is handled correctly ''' s = struct.Struct("3p256p") fmt = 0x5445535400000003 loc = Location('C','MB-SL3-ET1-PT2') raw_data = s.pack(loc.get_id(),loc.get_location()) ed = ExtensionData(fmt,None, raw_data) self.assertEqual(raw_data,ed['raw_data']) self.assertEqual(loc,ed['neighbor']) self.assertEqual(len(ed.keys()),2) self.assertEqual(fmt,ed.get_format()) tmp_dict = ed.write_to_dictionary() new_ed = ExtensionData(fmt, None, None, tmp_dict) self.assertEqual(raw_data, new_ed['raw_data']) self.assertEqual(loc, new_ed['neighbor']) self.assertEqual(len(new_ed.keys()), 2) self.assertEqual(fmt, new_ed.get_format()) return