Beispiel #1
0
 def test_avp_DiameterIdentity(self):
     '测试DiameterIdentity类型 '
     self.test_avp['AVP_CODE'] = '293'
     self.test_avp['AVP_DATA'] = 'www.zhangdl.com'
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp(3)
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('00000125000000177777772E7A68616E67646C2E636F6D00'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('00000125000000177777772E7A68616E67646C2E636F6D00')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], 'www.zhangdl.com')
Beispiel #2
0
 def test_avp_Enumerated(self):
     '测试Enumerated类型 '
     self.test_avp['AVP_CODE'] = '416'
     self.test_avp['AVP_DATA'] = 1
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp(3)
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000001A04000000C00000001'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000001A04000000C00000001')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], 1)
Beispiel #3
0
 def test_avp_Time(self):
     '测试Time类型 '
     self.test_avp['AVP_CODE'] = '55'
     self.test_avp['AVP_DATA'] = '20101017215500'
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000000370000000CD0657EB4'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000000370000000CD0657EB4')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], '20101017215500')
Beispiel #4
0
 def test_avp_UTF8String(self):
     '测试UTF8String类型 '
     self.test_avp['AVP_CODE'] = '444'
     self.test_avp['AVP_DATA'] = '张栋梁'
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp(3)
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000001BC00000011E5BCA0E6A08BE6A281000000'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000001BC00000011E5BCA0E6A08BE6A281000000')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], '张栋梁')
Beispiel #5
0
 def _test_avp_Float64(self):
     '测试Float64类型 '
     self.test_avp['AVP_CODE'] = '429'
     self.test_avp['AVP_DATA'] = 123
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000001AD0000000C0000007B'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000001AD0000000C0000007B')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], 123)
Beispiel #6
0
 def test_avp_Address(self):
     '测试Address类型 '
     self.test_avp['AVP_CODE'] = '1227'
     self.test_avp['AVP_DATA'] = '127.0.0.1'
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp(3)
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000004CB80000012000028AF00017F0000010000'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000004CB80000012000028AF00017F0000010000')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 1),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], '127.0.0.1')
Beispiel #7
0
 def test_avp_Grouped(self):
     '测试Grouped类型 '
     self.test_avp['445'] =[]
     self.test_avp['445'].append({'447':200})
     self.test_avp['445'].append({'429':300})
     
     #pprint.pprint(self.test_avp)
     
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = '445',
                                     avp_data = self.test_avp['445'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000001BD00000024000001BF0000001000000000000000C8000001AD0000000C0000012C'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000001BD00000024000001BF0000001000000000000000C8000001AD0000000C0000012C')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], [{447: 200}, {429: 300}])
Beispiel #8
0
 def test_avp_OctetString(self):
     '测试OctetString类型 '
     self.test_avp['AVP_CODE'] = '11'
     self.test_avp['AVP_DATA'] = 'zhang.dongliang'
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp(3)
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('0000000B000000177A68616E672E646F6E676C69616E6700'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('0000000B000000177A68616E672E646F6E676C69616E6700')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], 'zhang.dongliang')
Beispiel #9
0
 def test_avp_Unsigned64(self):
     '测试Unsigned64类型 '
     self.test_avp['AVP_CODE'] = '421'
     self.test_avp['AVP_DATA'] = 123456789999
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000001A5000000100000001CBE991DEF'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000001A5000000100000001CBE991DEF')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], 123456789999)
Beispiel #10
0
 def test_avp_Unsigned32(self):
     '测试Unsigned32类型 '
     self.test_avp['AVP_CODE'] = '268'
     self.test_avp['AVP_DATA'] = 12345
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('0000010C0000000C00003039'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('0000010C0000000C00003039')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], 12345)
Beispiel #11
0
 def test_avp_Integer64(self):
     '测试Integer64类型 '
     self.test_avp['AVP_CODE'] = '30114'
     self.test_avp['AVP_DATA'] = -1234567890
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = self.test_avp['AVP_CODE'],
                                     avp_data = self.test_avp['AVP_DATA'],
                                     decode_buf = None,
                                     dcc_instance = self.dcc
                                     )
     self.avp.encode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_BUF'], binascii.a2b_hex('000075A28000001400000F3EFFFFFFFFB669FD2E'))
     
     self.test_avp['AVP_BUF'] = self.dcc.ascii2bin_hex('000075A28000001400000F3EFFFFFFFFB669FD2E')
     self.avp = PyDccCore.create_avp(cmd_code = (272, 0),
                                     avp_code = None,
                                     avp_data = None,
                                     decode_buf = self.test_avp['AVP_BUF'],
                                     dcc_instance = self.dcc
                                     )
     self.avp.decode()
     
     #pprint.pprint(self.avp.avp)
     #self.avp.pavp()
     self.assertEqual(self.avp.avp['AVP_DATA'], -1234567890)