jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/355123 )
Change subject: Add BGPUpdateMessage test cases
......................................................................
Add BGPUpdateMessage test cases
Test addAttributes, clearAttributes and addSomeNLRI methods
Test overloaded operators and freeSpace() method.
Change-Id: Id0f790b04e25ffec7ad4acc263598af3d0f07d6d
---
M pybal/bgp/test_bgp.py
1 file changed, 37 insertions(+), 0 deletions(-)
Approvals:
Ema: Looks good to me, but someone else must approve
Mark Bergsma: Looks good to me, approved
jenkins-bot: Verified
diff --git a/pybal/bgp/test_bgp.py b/pybal/bgp/test_bgp.py
index 9db5ff6..3615341 100644
--- a/pybal/bgp/test_bgp.py
+++ b/pybal/bgp/test_bgp.py
@@ -31,6 +31,14 @@
self.msg = bgp.BGPUpdateMessage()
self.assertEquals(self.msg.msgLenOffset, 16)
self.assertEquals(len(self.msg.msg), 4)
+ self.assertEquals(len(self.msg), 23)
+ self.assertIn("UPDATE", repr(self.msg))
+
+ self.attrs = bgp.FrozenAttributeDict(
+ [bgp.OriginAttribute(),
+ bgp.ASPathAttribute([64600, 64601]),
+ bgp.NextHopAttribute("192.0.2.1"),
+ bgp.MEDAttribute(100)])
def testAddSomeWithdrawals(self):
self.assertEquals(self.msg.addSomeWithdrawals(set()), 0)
@@ -45,3 +53,32 @@
# Not all prefixes will fit within maxLen
self.assertEquals(self.msg.addSomeWithdrawals(prefixset), 813)
self.assertEquals(len(prefixset), 211)
+
+ def testAttributes(self):
+ self.msg.addAttributes(bgp.FrozenAttributeDict({}))
+ self.assertEqual(len(self.msg), 23)
+ self.msg.addAttributes(self.attrs)
+ self.assertEqual(len(self.msg), 50)
+ self.msg.clearAttributes()
+ self.assertEquals(len(self.msg), 23)
+
+ prefixset = set([ ip.IPv4IP(idx) for idx in range(810) ])
+ self.assertEquals(self.msg.addSomeWithdrawals(prefixset), 810)
+ self.assertRaises(ValueError, self.msg.addAttributes, self.attrs)
+
+ def testAddSomeNLRI(self):
+ self.assertEquals(self.msg.addSomeNLRI(set()), 0)
+
+ prefixset = set([ip.IPv6IP('::1'),])
+ self.assertEquals(self.msg.addSomeNLRI(prefixset), 1)
+
+ # The prefix should have been removed from the set
+ self.assertEquals(len(prefixset), 0)
+
+ prefixset = set([ ip.IPv6IP(hex(idx)) for idx in range(1024) ])
+ # Not all prefixes will fit within maxLen
+ self.assertEquals(self.msg.addSomeNLRI(prefixset), 238)
+ self.assertEquals(len(prefixset), 1024-238)
+
+ def testFreeSpace(self):
+ self.assertEquals(self.msg.freeSpace(), bgp.MAX_LEN-len(self.msg))
--
To view, visit https://gerrit.wikimedia.org/r/355123
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Id0f790b04e25ffec7ad4acc263598af3d0f07d6d
Gerrit-PatchSet: 3
Gerrit-Project: operations/debs/pybal
Gerrit-Branch: master
Gerrit-Owner: Mark Bergsma <[email protected]>
Gerrit-Reviewer: Ema <[email protected]>
Gerrit-Reviewer: Mark Bergsma <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits