예제 #1
0
    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')
예제 #2
0
 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())
예제 #3
0
 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
예제 #4
0
 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