コード例 #1
0
    def test_edit_by_adding_slaves_to_bond(self, BondMock, dhclient_mock,
                                           address_mock, ConfMock):
        config_mock = ConfMock()

        bond_slaves = {'nic1', 'nic2'}
        bond_options = 'mode=1 miimon=120'
        bond_attrs = {
            'nics': list(bond_slaves),
            'options': bond_options,
            'switch': 'foo',
        }
        setup_edit_bond = {BOND1_NAME: bond_attrs}

        setup_bonds = linksetup.SetupBonds({}, setup_edit_bond, {},
                                           config_mock)
        # Initial state: Bond exists with no slaves.
        BondMock.return_value.master = BOND1_NAME
        BondMock.return_value.slaves = set()

        setup_bonds.edit_bonds()

        assert bond_slaves | {BOND1_NAME} == setup_bonds.ifaces_for_acquirement
        BondMock.assert_called_with(BOND1_NAME)
        BondMock.return_value.add_slaves.assert_called_once_with(bond_slaves)
        config_mock.setBonding.assert_called_with(BOND1_NAME, bond_attrs)
コード例 #2
0
    def test_add_bonds(self, BondMock, dhclient_mock, address_mock, ConfMock):
        config_mock = ConfMock()

        bond_slaves = ['nic1', 'nic2']
        bond_options = 'mode=1 miimon=120'
        bond_attrs = {
            'nics': bond_slaves,
            'options': bond_options,
            'switch': 'foo',
        }
        setup_new_bond = {BOND1_NAME: bond_attrs}
        setup_bonds = linksetup.SetupBonds(setup_new_bond, {}, {}, config_mock)
        setup_bonds.add_bonds()

        expected_ifaces = set(bond_slaves + [BOND1_NAME])
        assert expected_ifaces == setup_bonds.ifaces_for_acquirement
        BondMock.assert_called_once_with(
            BOND1_NAME,
            slaves=set(bond_slaves),
            options={
                'mode': '1',
                'miimon': '120'
            },
        )
        config_mock.setBonding.assert_called_once_with(BOND1_NAME, bond_attrs)
        self._assert_ip_flush_called(bond_slaves, dhclient_mock, address_mock)
コード例 #3
0
    def test_remove_bonds(self, BondMock, dhclient_mock, address_mock,
                          ConfMock):
        config_mock = ConfMock()

        setup_remove_bond = {BOND1_NAME: {'remove': True}}
        setup_bonds = linksetup.SetupBonds({}, {}, setup_remove_bond,
                                           config_mock)
        setup_bonds.remove_bonds()

        BondMock.assert_called_once_with(BOND1_NAME)
        config_mock.removeBonding.assert_called_once_with(BOND1_NAME)
コード例 #4
0
ファイル: link_setup_test.py プロジェクト: igoihman/vdsm
    def test_add_bonds(self, BondMock, dhclient_mock, address_mock, ConfMock):
        config_mock = ConfMock()

        bond_slaves = ['nic1', 'nic2']
        bond_attrs = {'nics': bond_slaves}
        setup_new_bond = {BOND1_NAME: bond_attrs}
        setup_bonds = linksetup.SetupBonds(setup_new_bond, {}, {}, config_mock)
        setup_bonds.add_bonds()

        self.assertEqual(set(bond_slaves + [BOND1_NAME]),
                         setup_bonds.ifaces_for_acquirement)
        BondMock.assert_called_once_with(BOND1_NAME, slaves=set(bond_slaves))
        config_mock.setBonding.assert_called_once_with(BOND1_NAME, bond_attrs)
        self._assert_ip_flush_called(bond_slaves, dhclient_mock, address_mock)