private void addBondToParamsAndModel(Bond bond, BondNetworkInterfaceModel bondModel, List<LogicalNetworkModel> networks) { CreateOrUpdateBond createOrUpdateBond = CreateOrUpdateBond.fromBond(bond); dataFromHostSetupNetworksModel.getBonds().add(createOrUpdateBond); when(bondModel.getOriginalIface()).thenReturn(bond); when(bondModel.getCreateOrUpdateBond()).thenReturn(createOrUpdateBond); when(bondModel.getItems()).thenReturn(networks); } }
private void initCreateOrUpdateBondParameters() { NetworkCommonUtils.fillBondSlaves(allExistingNics); for (VdsNetworkInterface nic : allExistingNics) { if (nic.isBond()) { getHostSetupNetworksParametersData().getBonds() .add(CreateOrUpdateBond.fromBond((Bond) nic)); } } hostSetupNetworksParametersData.setOriginalBondsByName(Entities.entitiesByName(hostSetupNetworksParametersData.getBonds())); }
@Test public void testBreakingExistingBond() { CreateOrUpdateBond createOrUpdateBond = CreateOrUpdateBond.fromBond(existingBond); dataFromHostSetupNetworksModel.getBonds().add(createOrUpdateBond); when(bondNetworkInterfaceModelA.getItems()).thenReturn(Collections.emptyList()); when(bondNetworkInterfaceModelA.getCreateOrUpdateBond()).thenReturn(createOrUpdateBond); NetworkOperation.BREAK_BOND.getTarget().executeNetworkCommand( bondNetworkInterfaceModelA, null, dataFromHostSetupNetworksModel); assertThat(dataFromHostSetupNetworksModel.getNetworkAttachments().size(), is(0)); assertThat(dataFromHostSetupNetworksModel.getRemovedNetworkAttachments().size(), is(0)); assertThat(dataFromHostSetupNetworksModel.getBonds().size(), is(0)); assertThat(dataFromHostSetupNetworksModel.getRemovedBonds().size(), is(1)); Guid removedBondId = dataFromHostSetupNetworksModel.getRemovedBonds().iterator().next(); assertThat("id mismatch", removedBondId, is(existingBond.getId())); //$NON-NLS-1$ }
@Test public void testReBondingTwoNicsWithReattachingNetworkAttachmentOnNewlyCreatedBond() { addBondToParamsAndModel(existingBond, bondNetworkInterfaceModelA, Collections.emptyList()); initOrginalBondNameToIdMap(CreateOrUpdateBond.fromBond(existingBond)); NetworkOperation.BREAK_BOND.getTarget().executeNetworkCommand( bondNetworkInterfaceModelA, null, dataFromHostSetupNetworksModel); NetworkOperation.BOND_WITH.getTarget().executeNetworkCommand( networkInterfaceModelOfNicA, networkInterfaceModelOfNicB, dataFromHostSetupNetworksModel, createBond(null, existingBondName, Collections.emptyList())); // related network attachment will be updated, not removed and created new one. assertThat(dataFromHostSetupNetworksModel.getNetworkAttachments().size(), is(0)); assertThat(dataFromHostSetupNetworksModel.getRemovedNetworkAttachments().size(), is(0)); assertThat(dataFromHostSetupNetworksModel.getBonds().size(), is(1)); CreateOrUpdateBond newOrModifiedBond = dataFromHostSetupNetworksModel.getBonds().iterator().next(); assertBond(newOrModifiedBond, existingBondId, Arrays.asList(nicA, nicB)); assertThat(dataFromHostSetupNetworksModel.getRemovedBonds().size(), is(0)); }
public CreateOrUpdateBond mapBonds(BusinessEntityMap<Bond> bonds, HostNic model) { Mapper<HostNic, Bond> hostNicMapper = getMapper(HostNic.class, Bond.class); Bond bond; if (model.isSetId()) { Guid nicId = asGuid(model.getId()); bond = hostNicMapper.map(model, bonds.get(nicId)); } else { Bond template = model.isSetName() ? bonds.get(model.getName()) : null; bond = hostNicMapper.map(model, template); } return CreateOrUpdateBond.fromBond(bond); }