From d4d06dfd18d8d085ccd390d6ebae7e3808fa8d09 Mon Sep 17 00:00:00 2001 From: Matt Riedemann Date: Fri, 20 Sep 2013 08:47:25 -0700 Subject: [PATCH] Handle long integer conversion in NEC portinfo validation tests There are a couple of tests for NEC portinfo validation that pass an id which gets converted to a base-16 integer and then that gets converted to a hex string. The problem is the integer conversion can make it a long integer and then the hex built-in appends 'L' to the string, and the tests do not account for that. This patch handles that case. Closes-Bug: #1228212 Change-Id: Id3aed686329dae9cc4777213a4d2bcf406652e15 --- neutron/tests/unit/nec/test_portbindings.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/neutron/tests/unit/nec/test_portbindings.py b/neutron/tests/unit/nec/test_portbindings.py index 2c096af8f..e534e2a5f 100644 --- a/neutron/tests/unit/nec/test_portbindings.py +++ b/neutron/tests/unit/nec/test_portbindings.py @@ -265,14 +265,22 @@ class TestNecPortBindingValidatePortInfo(test_nec_plugin.NecPluginV2TestCase): profile = {'portinfo:datapath_id': '0x1234567890abcdef', 'portinfo:port_no': 123} portinfo = self.plugin._validate_portinfo(profile) - self.assertEqual(portinfo['datapath_id'], '0x1234567890abcdef') + # NOTE(mriedem): Handle long integer conversion universally. + self.assertEqual( + 0x1234567890abcdef, + int(portinfo['datapath_id'].replace('L', ''), 16) + ) self.assertEqual(portinfo['port_no'], 123) def test_validate_portinfo_ok_without_0x(self): profile = {'portinfo:datapath_id': '1234567890abcdef', 'portinfo:port_no': 123} portinfo = self.plugin._validate_portinfo(profile) - self.assertEqual(portinfo['datapath_id'], '0x1234567890abcdef') + # NOTE(mriedem): Handle long integer conversion universally. + self.assertEqual( + 0x1234567890abcdef, + int(portinfo['datapath_id'].replace('L', ''), 16) + ) self.assertEqual(portinfo['port_no'], 123) def _test_validate_exception(self, profile, expected_msg):