This fixes the vpn unit test that breaks with a randomized PYTHONHASHSEED
(see the bug report).
The test assumed that the new_peers list from self.new_update_request had
elements in a particular order. Found with PYTHONHASHSEED=
2455351445.
The fix refactors the test case to handle an unsorted new_peers list by
sorting it before running the test.
Partial-bug: #
1348818
Note: There are several other unrelated unit tests that also break with a
randomized PYTHONHASHSEED, but they are not addressed here. They will be
addressed in separate patches.
Change-Id: I86e7f84cedbdc8e1d7404363a560fd759d264c49
self.assertEqual(expected_status_int, res.status_int)
if expected_status_int == 200:
res_dict = self.deserialize(self.fmt, res)
+ actual = res_dict['ipsec_site_connection']
for k, v in update.items():
- self.assertEqual(
- res_dict['ipsec_site_connection'][k], v)
+ # Sort lists before checking equality
+ if isinstance(actual[k], list):
+ self.assertEqual(v, sorted(actual[k]))
+ else:
+ self.assertEqual(v, actual[k])
def test_show_ipsec_site_connection(self):
"""Test case to show a ipsec_site_connection."""