Beispiel #1
0
 def test_apply_v2_renames_skips_without_setname_or_mac(
     self, config_attr: str
 ):
     networking = LinuxNetworking()
     netcfg = yaml.load(getattr(self, config_attr))
     with mock.patch.object(
         networking, "_rename_interfaces"
     ) as m_rename_interfaces:
         networking.apply_network_config_names(netcfg)
     m_rename_interfaces.assert_called_with([])
Beispiel #2
0
    def test_returns_true_if_device_is_physical(self, sys_class_net):
        devname = "eth0"
        device_dir = sys_class_net.join(devname)
        device_dir.mkdir()
        device_dir.join("device").write("")

        assert LinuxNetworking().is_physical(devname)
Beispiel #3
0
    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
Beispiel #4
0
    def test_calls_subp_return_false(self, m_subp, m_is_up):
        devname = "eth0"
        m_is_up.return_value = False
        is_success = LinuxNetworking().try_set_link_up(devname)

        assert (mock.call(["ip", "link", "set", devname,
                           "up"]) == m_subp.call_args_list[-1])
        assert not is_success
Beispiel #5
0
    def test_calls_subp_return_false(self, m_subp, m_is_up):
        devname = "eth0"
        m_is_up.return_value = False
        is_success = LinuxNetworking().try_set_link_up(devname)

        assert (mock.call(['ip', 'link', 'set', devname,
                           'up']) == m_subp.call_args_list[-1])
        assert not is_success
Beispiel #6
0
    def test_apply_renames(
        self,
        m_device_driver,
        m_device_devid,
        config_attr: str,
    ):
        networking = LinuxNetworking()
        m_device_driver.return_value = "virtio_net"
        m_device_devid.return_value = "0x15d8"
        netcfg = yaml.load(getattr(self, config_attr))

        with mock.patch.object(
            networking, "_rename_interfaces"
        ) as m_rename_interfaces:
            networking.apply_network_config_names(netcfg)

        assert (
            mock.call(
                [["52:54:00:12:34:00", "interface0", "virtio_net", "0x15d8"]]
            )
            == m_rename_interfaces.call_args_list[-1]
        )
Beispiel #7
0
 def test_returns_false_if_devname_exists_but_not_physical(
         self, sys_class_net):
     devname = "eth0"
     sys_class_net.join(devname).mkdir()
     assert not LinuxNetworking().is_physical(devname)
Beispiel #8
0
 def test_returns_false_by_default(self, sys_class_net):
     assert not LinuxNetworking().is_physical("eth0")
Beispiel #9
0
    def test_no_arguments(self, m_udevadm_settle):
        LinuxNetworking().settle()

        assert [mock.call(exists=None)] == m_udevadm_settle.call_args_list
Beispiel #10
0
 def test_apply_v2_renames_raises_runtime_error_on_unknown_version(self):
     networking = LinuxNetworking()
     with pytest.raises(RuntimeError):
         networking.apply_network_config_names(yaml.load("version: 3"))