1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
import pytest
from pyroute2.netlink import nlmsg
prime = {
'attrs': (
('A', 2),
('A', 3),
('A', 4),
('B', {'attrs': (('C', 5), ('D', {'attrs': (('E', 6), ('F', 7))}))}),
)
}
@pytest.fixture
def msg():
msg = nlmsg()
msg.setvalue(prime)
yield msg
def test_get_attr(msg):
assert msg.get_attr('A') == 2
assert msg.get_attr('C') is None
def test_get_attrs(msg):
assert msg.get_attrs('A') == [2, 3, 4]
assert msg.get_attrs('C') == []
def test_get_nested(msg):
assert msg.get_nested('B', 'D', 'E') == 6
assert msg.get_nested('B', 'D', 'F') == 7
assert msg.get_nested('B', 'D', 'G') is None
assert msg.get_nested('C', 'D', 'E') is None
|