X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=opendaylight%2Fmd-sal%2Feos-dom-akka%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Feos%2Fakka%2FAkkaEntityOwnershipServiceTest.java;fp=opendaylight%2Fmd-sal%2Feos-dom-akka%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Feos%2Fakka%2FAkkaEntityOwnershipServiceTest.java;h=652102f903508a58b5e2b4c595835f5efe29a827;hb=7526de25301597d670657400b541b10455311fbe;hp=522eb55dc7b25003b2eac34dbc4f613b2ad1f965;hpb=9917911b1a492b5f9fbeef1591569f7fc4a80f68;p=controller.git diff --git a/opendaylight/md-sal/eos-dom-akka/src/test/java/org/opendaylight/controller/eos/akka/AkkaEntityOwnershipServiceTest.java b/opendaylight/md-sal/eos-dom-akka/src/test/java/org/opendaylight/controller/eos/akka/AkkaEntityOwnershipServiceTest.java index 522eb55dc7..652102f903 100644 --- a/opendaylight/md-sal/eos-dom-akka/src/test/java/org/opendaylight/controller/eos/akka/AkkaEntityOwnershipServiceTest.java +++ b/opendaylight/md-sal/eos-dom-akka/src/test/java/org/opendaylight/controller/eos/akka/AkkaEntityOwnershipServiceTest.java @@ -26,6 +26,7 @@ import akka.cluster.ddata.typed.javadsl.DistributedData; import akka.cluster.ddata.typed.javadsl.Replicator; import com.typesafe.config.ConfigFactory; import java.time.Duration; +import java.util.List; import java.util.Map; import java.util.Optional; import java.util.concurrent.CompletionStage; @@ -40,8 +41,6 @@ import org.opendaylight.controller.eos.akka.registry.candidate.CandidateRegistry import org.opendaylight.mdsal.eos.common.api.CandidateAlreadyRegisteredException; import org.opendaylight.mdsal.eos.common.api.EntityOwnershipState; import org.opendaylight.mdsal.eos.dom.api.DOMEntity; -import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipCandidateRegistration; -import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipListenerRegistration; import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipService; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.entity.owners.norev.EntityName; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.entity.owners.norev.EntityType; @@ -53,6 +52,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controll 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.network.topology.Topology; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node; +import org.opendaylight.yangtools.concepts.Registration; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; @@ -88,9 +88,9 @@ public class AkkaEntityOwnershipServiceTest extends AbstractNativeEosTest { final YangInstanceIdentifier entityId = YangInstanceIdentifier.of(QNAME); final DOMEntity entity = new DOMEntity(ENTITY_TYPE, entityId); - final DOMEntityOwnershipCandidateRegistration reg = service.registerCandidate(entity); + final Registration reg = service.registerCandidate(entity); + assertNotNull(reg); - verifyEntityOwnershipCandidateRegistration(entity, reg); verifyEntityCandidateRegistered(ENTITY_TYPE, entityId, "member-1"); try { @@ -102,9 +102,9 @@ public class AkkaEntityOwnershipServiceTest extends AbstractNativeEosTest { } final DOMEntity entity2 = new DOMEntity(ENTITY_TYPE2, entityId); - final DOMEntityOwnershipCandidateRegistration reg2 = service.registerCandidate(entity2); + final Registration reg2 = service.registerCandidate(entity2); - verifyEntityOwnershipCandidateRegistration(entity2, reg2); + assertNotNull(reg2); verifyEntityCandidateRegistered(ENTITY_TYPE2, entityId, "member-1"); } @@ -113,9 +113,9 @@ public class AkkaEntityOwnershipServiceTest extends AbstractNativeEosTest { final YangInstanceIdentifier entityId = YangInstanceIdentifier.of(QNAME); final DOMEntity entity = new DOMEntity(ENTITY_TYPE, entityId); - final DOMEntityOwnershipCandidateRegistration reg = service.registerCandidate(entity); + final Registration reg = service.registerCandidate(entity); + assertNotNull(reg); - verifyEntityOwnershipCandidateRegistration(entity, reg); verifyEntityCandidateRegistered(ENTITY_TYPE, entityId, "member-1"); reg.close(); @@ -132,13 +132,11 @@ public class AkkaEntityOwnershipServiceTest extends AbstractNativeEosTest { final DOMEntity entity = new DOMEntity(ENTITY_TYPE, entityId); final MockEntityOwnershipListener listener = new MockEntityOwnershipListener("member-1"); - final DOMEntityOwnershipListenerRegistration reg = service.registerListener(entity.getType(), listener); + final Registration reg = service.registerListener(entity.getType(), listener); assertNotNull("EntityOwnershipListenerRegistration null", reg); - assertEquals("getEntityType", entity.getType(), reg.getEntityType()); - assertEquals("getInstance", listener, reg.getInstance()); - final DOMEntityOwnershipCandidateRegistration candidate = service.registerCandidate(entity); + final Registration candidate = service.registerCandidate(entity); verifyListenerState(listener, entity, true, true, false); final int changes = listener.getChanges().size(); @@ -157,7 +155,7 @@ public class AkkaEntityOwnershipServiceTest extends AbstractNativeEosTest { public void testGetOwnershipState() throws Exception { final DOMEntity entity = new DOMEntity(ENTITY_TYPE, "one"); - final DOMEntityOwnershipCandidateRegistration registration = service.registerCandidate(entity); + final Registration registration = service.registerCandidate(entity); verifyGetOwnershipState(service, entity, EntityOwnershipState.IS_OWNER); final RunningContext runningContext = service.getRunningContext(); @@ -197,40 +195,41 @@ public class AkkaEntityOwnershipServiceTest extends AbstractNativeEosTest { final DOMEntity entity = new DOMEntity(ENTITY_TYPE, entityId); - final DOMEntityOwnershipCandidateRegistration reg = service.registerCandidate(entity); + final Registration reg = service.registerCandidate(entity); - verifyEntityOwnershipCandidateRegistration(entity, reg); + assertNotNull(reg); verifyEntityCandidateRegistered(ENTITY_TYPE, entityId, "member-1"); - var getEntityResult = service.getEntity(new GetEntityInputBuilder() + var result = service.getEntity(new GetEntityInputBuilder() .setName(new EntityName(CODEC_CONTEXT.fromYangInstanceIdentifier(entityId))) .setType(new EntityType(ENTITY_TYPE)) .build()) - .get(); + .get() + .getResult(); - assertEquals(getEntityResult.getResult().getOwnerNode().getValue(), "member-1"); - assertEquals(getEntityResult.getResult().getCandidateNodes().get(0).getValue(), "member-1"); + assertEquals(result.getOwnerNode().getValue(), "member-1"); + assertEquals(result.getCandidateNodes().get(0).getValue(), "member-1"); // we should not be able to retrieve the entity when using string final String entityPathEncoded = "/network-topology:network-topology/topology[topology-id='test']/node[node-id='test://test-node']"; - getEntityResult = service.getEntity(new GetEntityInputBuilder() - .setName(new EntityName(entityPathEncoded)) - .setType(new EntityType(ENTITY_TYPE)) - .build()) - .get(); + result = service.getEntity(new GetEntityInputBuilder() + .setName(new EntityName(entityPathEncoded)) + .setType(new EntityType(ENTITY_TYPE)) + .build()) + .get() + .getResult(); - assertNull(getEntityResult.getResult().getOwnerNode()); - assertTrue(getEntityResult.getResult().getCandidateNodes().isEmpty()); + assertNull(result.getOwnerNode()); + assertEquals(List.of(), result.getCandidateNodes()); final var getEntitiesResult = service.getEntities(new GetEntitiesInputBuilder().build()).get().getResult(); - - assertEquals(getEntitiesResult.getEntities().size(), 1); - assertTrue(getEntitiesResult.getEntities().get(new EntitiesKey( - new EntityName(CODEC_CONTEXT.fromYangInstanceIdentifier(entityId)), new EntityType(ENTITY_TYPE))) - .getCandidateNodes().contains(new NodeName("member-1"))); - assertTrue(getEntitiesResult.getEntities().get(new EntitiesKey( + final var entities = getEntitiesResult.nonnullEntities(); + assertEquals(1, entities.size()); + assertTrue(entities.get(new EntitiesKey(new EntityName(CODEC_CONTEXT.fromYangInstanceIdentifier(entityId)), + new EntityType(ENTITY_TYPE))).getCandidateNodes().contains(new NodeName("member-1"))); + assertTrue(entities.get(new EntitiesKey( new EntityName(CODEC_CONTEXT.fromYangInstanceIdentifier(entityId)), new EntityType(ENTITY_TYPE))) .getOwnerNode().getValue().equals("member-1")); @@ -302,10 +301,4 @@ public class AkkaEntityOwnershipServiceTest extends AbstractNativeEosTest { return success.get(CandidateRegistry.KEY).getEntries(); } - - private static void verifyEntityOwnershipCandidateRegistration(final DOMEntity entity, - final DOMEntityOwnershipCandidateRegistration reg) { - assertNotNull("EntityOwnershipCandidateRegistration null", reg); - assertEquals("getInstance", entity, reg.getInstance()); - } }