def test_exists_argument(self, m_udevadm_settle): LinuxNetworking().settle(exists="ens3") expected_path = net.sys_dev_path("ens3") assert [ mock.call(exists=expected_path) ] == m_udevadm_settle.call_args_list
def test_wait_for_physdevs_calls_udev_settle_on_missing(self): physdevs = [ ['aa:bb:cc:dd:ee:ff', 'eth0', 'virtio', '0x1000'], ['00:11:22:33:44:55', 'ens3', 'e1000', '0x1643'], ] netcfg = { 'version': 2, 'ethernets': {args[1]: _mk_v2_phys(*args) for args in physdevs}, } self.m_get_iface_mac.side_effect = iter([ { 'aa:bb:cc:dd:ee:ff': 'eth0' }, # first call ens3 is missing { 'aa:bb:cc:dd:ee:ff': 'eth0', '00:11:22:33:44:55': 'ens3' }, # second call has both ]) net.wait_for_physdevs(netcfg) self.m_udev_settle.assert_called_with(exists=net.sys_dev_path('ens3'))
def test_sys_dev_path_without_path(self): """When path param isn't provided it defaults to empty string.""" dev = 'something' expected = net.SYS_CLASS_NET + dev + '/' self.assertEqual(expected, net.sys_dev_path(dev))
def test_sys_dev_path(self): """sys_dev_path returns a path under SYS_CLASS_NET for a device.""" dev = 'something' path = 'attribute' expected = net.SYS_CLASS_NET + dev + '/' + path self.assertEqual(expected, net.sys_dev_path(dev, path))
def settle(self, *, exists=None) -> None: if exists is not None: exists = net.sys_dev_path(exists) util.udevadm_settle(exists=exists)
def is_physical(self, devname: DeviceName) -> bool: return os.path.exists(net.sys_dev_path(devname, "device"))
def test_sys_dev_path_without_path(self): """When path param isn't provided it defaults to empty string.""" dev = 'something' expected = net.SYS_CLASS_NET + dev + '/' self.assertEqual(expected, net.sys_dev_path(dev))
def test_sys_dev_path(self): """sys_dev_path returns a path under SYS_CLASS_NET for a device.""" dev = 'something' path = 'attribute' expected = net.SYS_CLASS_NET + dev + '/' + path self.assertEqual(expected, net.sys_dev_path(dev, path))