X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=southbound%2Fsouthbound-impl%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fovsdb%2Fsouthbound%2Ftransactions%2Fmd%2FOvsdbPortUpdateCommandTest.java;h=4d9fa0af0fd27f53385f0a59d85ba2a07ca4eaa3;hb=refs%2Fchanges%2F44%2F101744%2F9;hp=e9e82a3ce6e86e958e800a8df77b3d954e9b02e1;hpb=42127c1a5053071389047e885e9bc09973e62190;p=ovsdb.git diff --git a/southbound/southbound-impl/src/test/java/org/opendaylight/ovsdb/southbound/transactions/md/OvsdbPortUpdateCommandTest.java b/southbound/southbound-impl/src/test/java/org/opendaylight/ovsdb/southbound/transactions/md/OvsdbPortUpdateCommandTest.java index e9e82a3ce..4d9fa0af0 100644 --- a/southbound/southbound-impl/src/test/java/org/opendaylight/ovsdb/southbound/transactions/md/OvsdbPortUpdateCommandTest.java +++ b/southbound/southbound-impl/src/test/java/org/opendaylight/ovsdb/southbound/transactions/md/OvsdbPortUpdateCommandTest.java @@ -5,13 +5,11 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - package org.opendaylight.ovsdb.southbound.transactions.md; import static org.junit.Assert.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyString; -import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; @@ -21,28 +19,22 @@ import static org.powermock.api.support.membermodification.MemberMatcher.field; import static org.powermock.api.support.membermodification.MemberMatcher.method; import static org.powermock.api.support.membermodification.MemberModifier.suppress; -import com.google.common.base.Optional; -import com.google.common.util.concurrent.CheckedFuture; +import com.google.common.util.concurrent.FluentFuture; import java.util.AbstractMap.SimpleEntry; -import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Map.Entry; +import java.util.Optional; import java.util.Set; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.Matchers; import org.mockito.Mockito; -import org.mockito.invocation.InvocationOnMock; -import org.mockito.stubbing.Answer; -import org.opendaylight.controller.md.sal.binding.api.ReadTransaction; -import org.opendaylight.controller.md.sal.binding.api.ReadWriteTransaction; -import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; -import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException; +import org.opendaylight.mdsal.binding.api.ReadWriteTransaction; +import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.ovsdb.lib.message.TableUpdates; import org.opendaylight.ovsdb.lib.notation.Column; import org.opendaylight.ovsdb.lib.notation.UUID; @@ -59,7 +51,6 @@ import org.opendaylight.ovsdb.southbound.SouthboundMapper; import org.opendaylight.ovsdb.southbound.SouthboundUtil; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid; import org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.VlanId; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.InterfaceTypeBase; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.InterfaceTypeInternal; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeRef; @@ -69,14 +60,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.re import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentationBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.ManagedNodeEntry; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.InterfaceExternalIds; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.InterfaceExternalIdsBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.InterfaceOtherConfigs; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.InterfaceOtherConfigsBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.PortExternalIds; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.PortExternalIdsBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.PortOtherConfigs; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.PortOtherConfigsBuilder; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.ManagedNodeEntryBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.port._interface.attributes.TrunksBuilder; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId; @@ -89,6 +73,8 @@ import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology. import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPointBuilder; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPointKey; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +import org.opendaylight.yangtools.yang.common.Uint16; +import org.opendaylight.yangtools.yang.common.Uint32; import org.powermock.api.mockito.PowerMockito; import org.powermock.api.support.membermodification.MemberMatcher; import org.powermock.api.support.membermodification.MemberModifier; @@ -166,7 +152,7 @@ public class OvsdbPortUpdateCommandTest { any(Node.class)); ReadWriteTransaction transaction = mock(ReadWriteTransaction.class); PowerMockito.mockStatic(SouthboundUtil.class); - PowerMockito.when(SouthboundUtil.readNode(any(ReadTransaction.class), any(InstanceIdentifier.class))) + PowerMockito.when(SouthboundUtil.readNode(any(ReadWriteTransaction.class), any(InstanceIdentifier.class))) .thenReturn(node); ovsdbPortUpdateCommand.execute(transaction); verify(ovsdbConnectionInstance).getInstanceIdentifier(); @@ -236,8 +222,7 @@ public class OvsdbPortUpdateCommandTest { OvsdbTerminationPointAugmentationBuilder.class, Interface.class)); when(tpAugmentationBuilder.build()).thenReturn(mock(OvsdbTerminationPointAugmentation.class)); - when(tpBuilder.addAugmentation(eq(OvsdbTerminationPointAugmentation.class), - any(OvsdbTerminationPointAugmentation.class))).thenReturn(tpBuilder); + when(tpBuilder.addAugmentation(any(OvsdbTerminationPointAugmentation.class))).thenReturn(tpBuilder); when(tpBuilder.build()).thenReturn(mock(TerminationPoint.class)); portOldRows = new HashMap<>(); portOldRows.put(uuid, port); @@ -328,10 +313,10 @@ public class OvsdbPortUpdateCommandTest { ReadWriteTransaction transaction = mock(ReadWriteTransaction.class); InstanceIdentifier nodePath = mock(InstanceIdentifier.class); Optional node = Optional.of(mock(Node.class)); - CheckedFuture, ReadFailedException> checkedFuture = mock(CheckedFuture.class); + FluentFuture> fluentFuture = mock(FluentFuture.class); when(transaction.read(any(LogicalDatastoreType.class), any(InstanceIdentifier.class))) - .thenReturn(checkedFuture); - when(checkedFuture.checkedGet()).thenReturn(node); + .thenReturn(fluentFuture); + when(fluentFuture.get()).thenReturn(node); assertEquals(node, Whitebox.invokeMethod(ovsdbPortUpdateCommand, "readNode", transaction, nodePath)); } @@ -341,40 +326,38 @@ public class OvsdbPortUpdateCommandTest { Node node = mock(Node.class); OvsdbNodeAugmentation ovsdbNode = mock(OvsdbNodeAugmentation.class); when(node.augmentation(OvsdbNodeAugmentation.class)).thenReturn(ovsdbNode); - List managedNodes = new ArrayList<>(); - ManagedNodeEntry managedNodeEntry = mock(ManagedNodeEntry.class); - managedNodes.add(managedNodeEntry); - when(ovsdbNode.getManagedNodeEntry()).thenReturn(managedNodes); - Node managedNode = mock(Node.class); - OvsdbBridgeRef ovsdbBridgeRef = mock(OvsdbBridgeRef.class); - when(managedNodeEntry.getBridgeRef()).thenReturn(ovsdbBridgeRef); InstanceIdentifier iidNode = mock(InstanceIdentifier.class); - when((InstanceIdentifier) ovsdbBridgeRef.getValue()).thenReturn(iidNode); + + ManagedNodeEntry managedNodeEntry = new ManagedNodeEntryBuilder() + .setBridgeRef(new OvsdbBridgeRef(iidNode)) + .build(); + when(ovsdbNode.nonnullManagedNodeEntry()).thenCallRealMethod(); + when(ovsdbNode.getManagedNodeEntry()).thenReturn(Map.of(managedNodeEntry.key(), managedNodeEntry)); + + Node managedNode = mock(Node.class); Optional optionalNode = Optional.of(managedNode); PowerMockito.doReturn(optionalNode).when(ovsdbPortUpdateCommand, "readNode", any(ReadWriteTransaction.class), any(InstanceIdentifier.class)); PowerMockito.mockStatic(SouthboundUtil.class); - PowerMockito.when(SouthboundUtil.readNode(Matchers.any(ReadWriteTransaction.class), - Matchers.any(InstanceIdentifier.class))) + PowerMockito.when(SouthboundUtil.readNode(any(ReadWriteTransaction.class), + any(InstanceIdentifier.class))) .thenReturn(optionalNode); + + TerminationPoint terminationPoint = new TerminationPointBuilder().setTpId(new TpId(TP_NAME)).build(); + TerminationPointBuilder tpBuilder = mock(TerminationPointBuilder.class); - PowerMockito.whenNew(TerminationPointBuilder.class).withNoArguments().thenReturn(tpBuilder); - PowerMockito.whenNew(TpId.class).withAnyArguments().thenReturn(mock(TpId.class)); - PowerMockito.whenNew(TerminationPointKey.class).withAnyArguments().thenReturn(mock(TerminationPointKey.class)); when(tpBuilder.withKey(any(TerminationPointKey.class))).thenReturn(tpBuilder); - - List terminationPointList = new ArrayList<>(); - TerminationPoint terminationPoint = mock(TerminationPoint.class); - terminationPointList.add(terminationPoint); when(tpBuilder.build()).thenReturn(terminationPoint); - when(managedNode.getTerminationPoint()).thenReturn(terminationPointList); + + PowerMockito.whenNew(TerminationPointBuilder.class).withNoArguments().thenReturn(tpBuilder); + + when(managedNode.nonnullTerminationPoint()).thenCallRealMethod(); + when(managedNode.getTerminationPoint()).thenReturn(Map.of(terminationPoint.key(), terminationPoint)); when(managedNode.augmentation(OvsdbBridgeAugmentation.class)) .thenReturn(mock(OvsdbBridgeAugmentation.class)); - TpId tpId = new TpId(TP_NAME); - when(terminationPoint.getTpId()).thenReturn(tpId); Optional> testResult = Optional.of(iidNode); ReadWriteTransaction transaction = mock(ReadWriteTransaction.class); @@ -403,7 +386,6 @@ public class OvsdbPortUpdateCommandTest { } @Test - @SuppressWarnings("unchecked") public void testUpdateInterface() throws Exception { Interface interf = mock(Interface.class); OvsdbTerminationPointAugmentationBuilder ovsdbTerminationPointBuilder = mock( @@ -412,13 +394,8 @@ public class OvsdbPortUpdateCommandTest { PowerMockito.whenNew(Uuid.class).withAnyArguments().thenReturn(mock(Uuid.class)); when(ovsdbTerminationPointBuilder.setInterfaceUuid(any(Uuid.class))).thenReturn(ovsdbTerminationPointBuilder); PowerMockito.mockStatic(SouthboundMapper.class); - PowerMockito.when(SouthboundMapper.createInterfaceType(Matchers.anyString())) - .thenAnswer(new Answer>() { - public Class answer(InvocationOnMock invocation) throws Exception { - return InterfaceTypeInternal.class; - } - }); - when(ovsdbTerminationPointBuilder.setInterfaceType(any(Class.class))).thenReturn(ovsdbTerminationPointBuilder); + PowerMockito.when(SouthboundMapper.createInterfaceType(anyString())).thenReturn(InterfaceTypeInternal.VALUE); + when(ovsdbTerminationPointBuilder.setInterfaceType(any())).thenReturn(ovsdbTerminationPointBuilder); suppress(method(OvsdbPortUpdateCommand.class, "updateOfPort", Interface.class, OvsdbTerminationPointAugmentationBuilder.class)); suppress(method(OvsdbPortUpdateCommand.class, "updateOfPortRequest", Interface.class, @@ -441,7 +418,7 @@ public class OvsdbPortUpdateCommandTest { Whitebox.invokeMethod(ovsdbPortUpdateCommand, "updateInterface", interf, OVSDB_INTERFACE_TYPE, ovsdbTerminationPointBuilder); verify(ovsdbTerminationPointBuilder).setInterfaceUuid(any(Uuid.class)); - verify(ovsdbTerminationPointBuilder).setInterfaceType(any(Class.class)); + verify(ovsdbTerminationPointBuilder).setInterfaceType(any()); verify(ovsdbPortUpdateCommand).updateOfPort(any(Interface.class), any(OvsdbTerminationPointAugmentationBuilder.class)); verify(ovsdbPortUpdateCommand).updateOfPortRequest(any(Interface.class), @@ -560,10 +537,10 @@ public class OvsdbPortUpdateCommandTest { when(column.getData()).thenReturn(ofPorts); OvsdbTerminationPointAugmentationBuilder ovsdbTerminationPointBuilder = mock( OvsdbTerminationPointAugmentationBuilder.class); - when(ovsdbTerminationPointBuilder.setOfport(any(Long.class))).thenReturn(ovsdbTerminationPointBuilder); + when(ovsdbTerminationPointBuilder.setOfport(any(Uint32.class))).thenReturn(ovsdbTerminationPointBuilder); when(interf.getName()).thenReturn(INTERFACE_NAME); Whitebox.invokeMethod(ovsdbPortUpdateCommand, "updateOfPort", interf, ovsdbTerminationPointBuilder); - verify(ovsdbTerminationPointBuilder).setOfport(any(Long.class)); + verify(ovsdbTerminationPointBuilder).setOfport(any(Uint32.class)); } @SuppressWarnings("unchecked") @@ -577,11 +554,11 @@ public class OvsdbPortUpdateCommandTest { when(column.getData()).thenReturn(ofPortRequests); OvsdbTerminationPointAugmentationBuilder ovsdbTerminationPointBuilder = mock( OvsdbTerminationPointAugmentationBuilder.class); - when(ovsdbTerminationPointBuilder.setOfportRequest(any(Integer.class))) + when(ovsdbTerminationPointBuilder.setOfportRequest(any(Uint16.class))) .thenReturn(ovsdbTerminationPointBuilder); when(interf.getName()).thenReturn(INTERFACE_NAME); Whitebox.invokeMethod(ovsdbPortUpdateCommand, "updateOfPortRequest", interf, ovsdbTerminationPointBuilder); - verify(ovsdbTerminationPointBuilder).setOfportRequest(any(Integer.class)); + verify(ovsdbTerminationPointBuilder).setOfportRequest(any(Uint16.class)); } @SuppressWarnings("unchecked") @@ -595,21 +572,13 @@ public class OvsdbPortUpdateCommandTest { map.put(EXTERNAL_ID_KEY, EXTERNAL_ID_VALUE); when(column.getData()).thenReturn(map); - InterfaceExternalIdsBuilder interfaceExternalIdsBuilder = mock(InterfaceExternalIdsBuilder.class); - PowerMockito.whenNew(InterfaceExternalIdsBuilder.class).withNoArguments() - .thenReturn(interfaceExternalIdsBuilder); - - when(interfaceExternalIdsBuilder.setExternalIdKey(anyString())).thenReturn(interfaceExternalIdsBuilder); - when(interfaceExternalIdsBuilder.setExternalIdValue(anyString())).thenReturn(interfaceExternalIdsBuilder); - when(interfaceExternalIdsBuilder.build()).thenReturn(mock(InterfaceExternalIds.class)); - OvsdbTerminationPointAugmentationBuilder ovsdbTerminationPointBldr = mock( - OvsdbTerminationPointAugmentationBuilder.class); - when(ovsdbTerminationPointBldr.setInterfaceExternalIds(any(List.class))).thenReturn(ovsdbTerminationPointBldr); - - Whitebox.invokeMethod(ovsdbPortUpdateCommand, "updateInterfaceExternalIds", interf, ovsdbTerminationPointBldr); - verify(interfaceExternalIdsBuilder).setExternalIdKey(anyString()); - verify(interfaceExternalIdsBuilder).setExternalIdValue(anyString()); - + var builder = new OvsdbTerminationPointAugmentationBuilder(); + ovsdbPortUpdateCommand.updateInterfaceExternalIds(interf, builder); + var list = builder.build().nonnullInterfaceExternalIds().values(); + assertEquals(1, list.size()); + var result = list.iterator().next(); + assertEquals(EXTERNAL_ID_KEY, result.getExternalIdKey()); + assertEquals(EXTERNAL_ID_VALUE, result.getExternalIdValue()); } @SuppressWarnings("unchecked") @@ -623,19 +592,13 @@ public class OvsdbPortUpdateCommandTest { map.put(EXTERNAL_ID_KEY, EXTERNAL_ID_VALUE); when(column.getData()).thenReturn(map); - PortExternalIdsBuilder portExternalIdsBuilder = mock(PortExternalIdsBuilder.class); - PowerMockito.whenNew(PortExternalIdsBuilder.class).withNoArguments().thenReturn(portExternalIdsBuilder); - - when(portExternalIdsBuilder.setExternalIdKey(anyString())).thenReturn(portExternalIdsBuilder); - when(portExternalIdsBuilder.setExternalIdValue(anyString())).thenReturn(portExternalIdsBuilder); - when(portExternalIdsBuilder.build()).thenReturn(mock(PortExternalIds.class)); - OvsdbTerminationPointAugmentationBuilder ovsdbTerminationPointBuilder = mock( - OvsdbTerminationPointAugmentationBuilder.class); - when(ovsdbTerminationPointBuilder.setPortExternalIds(any(List.class))).thenReturn(ovsdbTerminationPointBuilder); - - Whitebox.invokeMethod(ovsdbPortUpdateCommand, "updatePortExternalIds", port, ovsdbTerminationPointBuilder); - verify(portExternalIdsBuilder).setExternalIdKey(anyString()); - verify(portExternalIdsBuilder).setExternalIdValue(anyString()); + var builder = new OvsdbTerminationPointAugmentationBuilder(); + ovsdbPortUpdateCommand.updatePortExternalIds(port, builder); + var list = builder.build().nonnullPortExternalIds().values(); + assertEquals(1, list.size()); + var result = list.iterator().next(); + assertEquals(EXTERNAL_ID_KEY, result.getExternalIdKey()); + assertEquals(EXTERNAL_ID_VALUE, result.getExternalIdValue()); } @SuppressWarnings("unchecked") @@ -648,20 +611,13 @@ public class OvsdbPortUpdateCommandTest { map.put(OTHER_CONFIG_KEY, OTHER_CONFIG_VALUE); when(column.getData()).thenReturn(map); - PortOtherConfigsBuilder portOtherConfigsBuilder = mock(PortOtherConfigsBuilder.class); - PowerMockito.whenNew(PortOtherConfigsBuilder.class).withNoArguments().thenReturn(portOtherConfigsBuilder); - - when(portOtherConfigsBuilder.setOtherConfigKey(anyString())).thenReturn(portOtherConfigsBuilder); - when(portOtherConfigsBuilder.setOtherConfigValue(anyString())).thenReturn(portOtherConfigsBuilder); - when(portOtherConfigsBuilder.build()).thenReturn(mock(PortOtherConfigs.class)); - OvsdbTerminationPointAugmentationBuilder ovsdbTerminationPointBuilder = mock( - OvsdbTerminationPointAugmentationBuilder.class); - when(ovsdbTerminationPointBuilder.setInterfaceOtherConfigs(any(List.class))) - .thenReturn(ovsdbTerminationPointBuilder); - - Whitebox.invokeMethod(ovsdbPortUpdateCommand, "updatePortOtherConfig", port, ovsdbTerminationPointBuilder); - verify(portOtherConfigsBuilder).setOtherConfigKey(anyString()); - verify(portOtherConfigsBuilder).setOtherConfigValue(anyString()); + var builder = new OvsdbTerminationPointAugmentationBuilder(); + ovsdbPortUpdateCommand.updatePortOtherConfig(port, builder); + var list = builder.build().nonnullPortOtherConfigs().values(); + assertEquals(1, list.size()); + var result = list.iterator().next(); + assertEquals(OTHER_CONFIG_KEY, result.getOtherConfigKey()); + assertEquals(OTHER_CONFIG_VALUE, result.getOtherConfigValue()); } @SuppressWarnings("unchecked") @@ -674,22 +630,13 @@ public class OvsdbPortUpdateCommandTest { when(interf.getOtherConfigColumn()).thenReturn(column); when(column.getData()).thenReturn(interfaceOtherConfigMap); - InterfaceOtherConfigsBuilder interfaceOtherConfigsBuilder = mock(InterfaceOtherConfigsBuilder.class); - PowerMockito.whenNew(InterfaceOtherConfigsBuilder.class).withNoArguments() - .thenReturn(interfaceOtherConfigsBuilder); - - when(interfaceOtherConfigsBuilder.setOtherConfigKey(anyString())).thenReturn(interfaceOtherConfigsBuilder); - when(interfaceOtherConfigsBuilder.setOtherConfigValue(anyString())).thenReturn(interfaceOtherConfigsBuilder); - when(interfaceOtherConfigsBuilder.build()).thenReturn(mock(InterfaceOtherConfigs.class)); - OvsdbTerminationPointAugmentationBuilder ovsdbTerminationPointBuilder = mock( - OvsdbTerminationPointAugmentationBuilder.class); - when(ovsdbTerminationPointBuilder.setInterfaceOtherConfigs(any(List.class))) - .thenReturn(ovsdbTerminationPointBuilder); - - Whitebox.invokeMethod(ovsdbPortUpdateCommand, "updateInterfaceOtherConfig", interf, - ovsdbTerminationPointBuilder); - verify(interfaceOtherConfigsBuilder).setOtherConfigKey(anyString()); - verify(interfaceOtherConfigsBuilder).setOtherConfigValue(anyString()); + var builder = new OvsdbTerminationPointAugmentationBuilder(); + ovsdbPortUpdateCommand.updateInterfaceOtherConfig(interf, builder); + var list = builder.build().nonnullInterfaceOtherConfigs().values(); + assertEquals(1, list.size()); + var result = list.iterator().next(); + assertEquals(OTHER_CONFIG_KEY, result.getOtherConfigKey()); + assertEquals(OTHER_CONFIG_VALUE, result.getOtherConfigValue()); } @SuppressWarnings("unchecked")