def test10_Ecoms(self): eComs1 = ExtendedCommunities() eComs1.communities.append(Encapsulation(Encapsulation.Type.VXLAN)) atts1 = Attributes() atts1.add(eComs1) eComs2 = ExtendedCommunities() eComs2.communities.append(Encapsulation(Encapsulation.Type.VXLAN)) eComs2.communities.append(RouteTarget(64512, 1)) atts2 = Attributes() atts2.add(eComs2) self.assertFalse(atts1.sameValuesAs(atts2)) self.assertFalse(atts2.sameValuesAs(atts1))
def test4_DistinctAttributes(self): atts1 = Attributes() atts1.add(LocalPreference(10)) atts2 = Attributes() atts2.add(LocalPreference(20)) self.assertNotEqual(atts1, atts2)
def test5_SameAttributes(self): atts1 = Attributes() atts1.add(LocalPreference(10)) atts2 = Attributes() atts2.add(LocalPreference(10)) self.assertEqual(hash(atts1), hash(atts2)) self.assertEqual(atts1, atts2)
def test6_SameAttributesOrderMultivalued(self): atts1 = Attributes() eComs1 = ExtendedCommunities() eComs1.communities.append(RouteTarget(64512, 1)) eComs1.communities.append(Encapsulation(Encapsulation.Type.VXLAN)) eComs1.communities.append(RouteTarget(64512, 2)) atts1.add(eComs1) atts2 = Attributes() eComs2 = ExtendedCommunities() eComs2.communities.append(RouteTarget(64512, 2)) eComs2.communities.append(RouteTarget(64512, 1)) eComs2.communities.append(Encapsulation(Encapsulation.Type.VXLAN)) atts2.add(eComs2) self.assertEqual(hash(atts1), hash(atts2)) self.assertEqual(atts1, atts2)
from exabgp.bgp.message.keepalive import new_KeepAlive from exabgp.bgp.message.update import Update from exabgp.bgp.message.update import Attributes from exabgp.rib.table import Table from exabgp.rib.delta import Delta from exabgp.reactor.protocol import Protocol from exabgp.bgp.neighbor import Neighbor from StringIO import StringIO class Network (StringIO): def pending (self): return True route1 = Update([],[to_NLRI('10.0.0.1','32')],Attributes()) route1.next_hop = '10.0.0.254' route2 = Update([],[to_NLRI('10.0.1.1','32')],Attributes()) route2.next_hop = '10.0.0.254' route3 = Update([],[to_NLRI('10.0.2.1','32')],Attributes()) route3.next_hop = '10.0.0.254' routes = [route1,route2,route3] routes.sort() class TestProtocol (unittest.TestCase): def setUp(self): self.table = Table()