import static org.mockito.Mockito.when;
import java.util.ArrayList;
-import java.util.HashSet;
import java.util.List;
-import java.util.Set;
-
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
+import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.unimgr.impl.UnimgrMapper;
import org.opendaylight.unimgr.utils.EvcUtils;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.EvcAugmentation;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.evc.UniDest;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.evc.UniSource;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Link;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
@RunWith(PowerMockRunner.class)
@PrepareForTest({EvcUtils.class, MdsalUtils.class, OvsdbUtils.class, UnimgrMapper.class})
-public class EvcDeleteCommandTest {
+public class EvcRemoveCommandTest {
- private EvcDeleteCommand evcDeleteCommand;
- private AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> changes;
+ private EvcRemoveCommand evcRemoveCommand;
+ private DataTreeModification<Link> evcLink;
+ private Link link;
private DataBroker dataBroker;
@SuppressWarnings("unchecked")
PowerMockito.mockStatic(EvcUtils.class);
PowerMockito.mockStatic(OvsdbUtils.class);
PowerMockito.mockStatic(UnimgrMapper.class);
- changes = mock(AsyncDataChangeEvent.class);
dataBroker = mock(DataBroker.class);
- evcDeleteCommand = new EvcDeleteCommand(dataBroker, changes);
+ link = mock(Link.class);
+ evcLink = DataTreeModificationHelper.getEvcLink(link);
+ evcRemoveCommand = new EvcRemoveCommand(dataBroker, evcLink);
}
/**
- * Test method for {@link org.opendaylight.unimgr.command.EvcDeleteCommand#EvcDeleteCommand(org.opendaylight.controller.md.sal.binding.api.DataBroker, org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent)}.
+ * Test method for {@link org.opendaylight.unimgr.command.EvcRemoveCommand#execute().
* @throws Exception
*/
@SuppressWarnings({ "unchecked", "rawtypes" })
@Test
- public void testEvcDeleteCommand() throws Exception {
- final Set<InstanceIdentifier<EvcAugmentation>> removedEvcs =
- new HashSet<InstanceIdentifier<EvcAugmentation>>();
+ public void testEvcRemoveCommand() throws Exception {
final List<UniSource> unisSource = new ArrayList<UniSource>();
final UniSource uniSource = mock(UniSource.class);
final List<UniDest> unisDest = new ArrayList<UniDest>();
final EvcAugmentation evcAugmentation = mock(EvcAugmentation.class);
final Optional<Node> optionalNode = mock(Optional.class);
final InstanceIdentifier instanceOfNode = mock(InstanceIdentifier.class);
- removedEvcs.add(mock(InstanceIdentifier.class));
unisSource.add(uniSource);
unisDest.add(uniDest);
+ when(link.getAugmentation(EvcAugmentation.class)).thenReturn(evcAugmentation);
when(evcAugmentation.getUniSource()).thenReturn(unisSource);
when(evcAugmentation.getUniDest()).thenReturn(unisDest);
when(uniSource.getUni()).thenReturn(instanceOfNode);
when(uniDest.getUni()).thenReturn(instanceOfNode);
- when(OvsdbUtils.extractRemoved(any(AsyncDataChangeEvent.class), any(Class.class)))
- .thenReturn(removedEvcs);
when(MdsalUtils.read(any(DataBroker.class), any(LogicalDatastoreType.class),
any(InstanceIdentifier.class))).thenReturn(evcAugmentation);
when(MdsalUtils.readNode(any(DataBroker.class), any(LogicalDatastoreType.class),
when(MdsalUtils.deleteNode(any(DataBroker.class), any(InstanceIdentifier.class),
any(LogicalDatastoreType.class))).thenReturn(true);
- evcDeleteCommand.execute();
+ evcRemoveCommand.execute();
PowerMockito.verifyStatic(times(2));
EvcUtils.deleteEvcData(any(DataBroker.class), any(Optional.class));
PowerMockito.verifyStatic(times(1));
any(LogicalDatastoreType.class));
}
-}
+}
\ No newline at end of file