6
Created by Thomas Mangin on 2009-09-06.
7
Copyright (c) 2009-2013 Exa Networks. All rights reserved.
12
from exabgp.structure.environment import environment
13
env = environment.setup('')
15
from exabgp.protocol.family import AFI,SAFI
16
from exabgp.protocol.ip.inet import *
18
class TestData (unittest.TestCase):
19
def test_1_nlri_1 (self):
20
self.assertEqual(''.join([chr(c) for c in [32,1,2,3,4]]),to_NLRI('1.2.3.4','32').pack())
21
def test_1_nlri_2 (self):
22
self.assertEqual(''.join([chr(c) for c in [24,1,2,3]]),to_NLRI('1.2.3.4','24').pack())
23
def test_1_nlri_3 (self):
24
self.assertEqual(''.join([chr(c) for c in [20,1,2,3]]),to_NLRI('1.2.3.4','20').pack())
26
def test_2_ip_2 (self):
27
self.assertEqual(str(InetIP('::ffff:192.168.1.26')),'::ffff:192.168.1.26/128')
28
self.assertEqual(str(InetIP('::ffff:192.168.1.26').ip),'::ffff:192.168.1.26')
30
def test_3_ipv6_1 (self):
31
default = InetIP('::')
32
self.assertEqual(str(default),'::/128')
33
self.assertEqual(default.ip,'::')
34
self.assertEqual(default.packedip(),'\0'*16)
36
def test_3_ipv6_2 (self):
37
default = InetIP('1234:5678::')
38
self.assertEqual(str(default),'1234:5678::/128')
39
self.assertEqual(default.ip,'1234:5678::')
40
self.assertEqual(default.packedip(),'\x12\x34\x56\x78'+'\0'*12)
42
def test_3_ipv6_3 (self):
43
default = InetIP('1234:5678::1')
44
self.assertEqual(str(default),'1234:5678::1/128')
45
self.assertEqual(default.ip,'1234:5678::1')
46
self.assertEqual(default.packedip(),'\x12\x34\x56\x78'+'\0'*11 + '\x01')
50
net = chr (192) + chr(0) + chr(2) +chr(0)
51
bnt = chr(24) + chr (192) + chr(0) + chr(2)
53
pfx = Prefix(AFI.ipv4,ip,24)
54
bgp = BGPNLRI(AFI.ipv4,bnt)
56
self.assertEqual(str(pfx),"%s/24" % ip)
57
self.assertEqual(str(afi),"%s/24" % ip)
58
self.assertEqual(str(bgp),"%s/24" % ip)
60
self.assertEqual(pfx.pack(),bnt)
61
self.assertEqual(afi.pack(),bnt)
62
self.assertEqual(bgp.pack(),bnt)
64
# README: NEED To add ASN test
65
# README: NEED To add NLRI test
67
if __name__ == '__main__':