Change in vdsm[master]: net: tests: make monitor test_events_keys more readable
phoracek at redhat.com
phoracek at redhat.com
Mon Aug 17 13:28:11 UTC 2015
Petr Horáček has uploaded a new change for review.
Change subject: net: tests: make monitor test_events_keys more readable
......................................................................
net: tests: make monitor test_events_keys more readable
When this tests fails, print lists of expected and caught events.
Change-Id: I543c12b1d02d426472807831da3a875ec4c3289c
Signed-off-by: Petr Horáček <phoracek at redhat.com>
---
M tests/netlinkTests.py
1 file changed, 17 insertions(+), 4 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/27/44927/1
diff --git a/tests/netlinkTests.py b/tests/netlinkTests.py
index 9751c53..f225341 100644
--- a/tests/netlinkTests.py
+++ b/tests/netlinkTests.py
@@ -94,10 +94,17 @@
@ValidateRunningAsRoot
def test_events_keys(self):
+ def _simplify_event(event):
+ """ Strips event keys except event, address, name, destination,
+ family.
+ """
+ allow = set(['event', 'address', 'name', 'destination', 'family'])
+ return {k: v for (k, v) in event.items() if k in allow}
+
def _expected_events(nic, address, cidr):
events_add = [
+ {'event': 'new_addr', 'address': address + '/' + cidr}, # down
{'event': 'new_link', 'name': nic},
- {'event': 'new_addr', 'address': address + '/' + cidr},
{'event': 'new_link', 'name': nic}]
events_del = [
{'address': address + '/' + cidr, 'event': 'del_addr'},
@@ -120,17 +127,23 @@
dummy.remove(dummy_name)
expected_events = _expected_events(dummy_name, IP_ADDRESS, IP_CIDR)
+ _expected = list(expected_events)
+ _caught = []
expected = expected_events.popleft()
for event in mon:
+ _caught.append(event)
if _is_subdict(expected, event):
expected = expected_events.popleft()
if len(expected_events) == 0:
break
- self.assertEqual(0, len(expected_events), '%d expected events have not'
- ' been caught (in the right order)'
- % (1 + len(expected_events)))
+ self.assertEqual(0, len(expected_events), 'Expected events have not '
+ 'been caught (in the right order).\n'
+ 'Expected:\n%s.\nCaught:\n%s.' %
+ ('\n'.join([str(d) for d in _expected]),
+ '\n'.join([str(_simplify_event(d))
+ for d in _caught])))
def test_timeout(self):
with self.assertRaises(monitor.MonitorError):
--
To view, visit https://gerrit.ovirt.org/44927
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I543c12b1d02d426472807831da3a875ec4c3289c
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Petr Horáček <phoracek at redhat.com>
More information about the vdsm-patches
mailing list