@@ -48,6 +48,18 @@ def test_run_with_timeout(self, target_with_fakeconsole, mocker):
4848 res = d .run ("test" )
4949 assert res == (['success' ], [], 0 )
5050
51+ def test_default_interface_device_name (self , target_with_fakeconsole , mocker ):
52+ fake_default_route_show = "default via 10.0.2.2 dev br-lan src 10.0.2.15"
53+
54+ t = target_with_fakeconsole
55+ d = ShellDriver (t , "shell" , prompt = "dummy" , login_prompt = "dummy" , username = "dummy" )
56+ d .on_activate = mocker .MagicMock ()
57+ d = t .get_driver ("ShellDriver" )
58+ d ._run = mocker .MagicMock (return_value = ([fake_default_route_show ], [], 0 ))
59+
60+ res = d .get_default_interface_device_name ()
61+ assert res == "br-lan"
62+
5163 def test_get_ip_addresses (self , target_with_fakeconsole , mocker ):
5264 fake_ip_addr_show = r"""
536518: br-lan.42 inet 192.168.42.1/24 brd 192.168.42.255 scope global br-lan.42\ valid_lft forever preferred_lft forever
@@ -62,3 +74,26 @@ def test_get_ip_addresses(self, target_with_fakeconsole, mocker):
6274
6375 res = d .get_ip_addresses ("br-lan.42" )
6476 assert res [0 ] == IPv4Interface ("192.168.42.1/24" )
77+
78+ def test_get_ip_addresses_default (self , target_with_fakeconsole , mocker ):
79+ t = target_with_fakeconsole
80+ d = ShellDriver (t , "shell" , prompt = "dummy" , login_prompt = "dummy" , username = "dummy" )
81+ d .on_activate = mocker .MagicMock ()
82+ d = t .get_driver ("ShellDriver" )
83+ d ._run = mocker .MagicMock ()
84+ d ._run .side_effect = [
85+ (["default via 192.168.42.255 dev br-lan.42 src 192.168.42.1" ], [], 0 ),
86+ (
87+ [
88+ r"""
89+ 18: br-lan.42 inet 192.168.42.1/24 brd 192.168.42.255 scope global br-lan.42\ valid_lft forever preferred_lft forever
90+ 18: br-lan.42 inet6 fe80::9683:c4ff:fea6:fb6b/64 scope link \ valid_lft forever preferred_lft forever
91+ """
92+ ],
93+ [],
94+ 0 ,
95+ ),
96+ ]
97+
98+ res = d .get_ip_addresses ()
99+ assert res [0 ] == IPv4Interface ("192.168.42.1/24" )
0 commit comments