X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-remoterpc-connector%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fremote%2Frpc%2FRpcListenerTest.java;h=ba6fc265ace828daf549c28482d8a6186c4a9596;hp=7b5a968866ca1ecca306b42fc09d76b0a6aaf20a;hb=12fcdfe39aa26dcba7fd3bb4d4c68e3d02e65c51;hpb=9228eee6e438894b091f7bee8a4ba7b53286ef8f diff --git a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RpcListenerTest.java b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RpcListenerTest.java index 7b5a968866..ba6fc265ac 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RpcListenerTest.java +++ b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RpcListenerTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved. + * Copyright (c) 2014, 2017 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, @@ -10,64 +10,66 @@ package org.opendaylight.controller.remote.rpc; import akka.actor.ActorRef; import akka.actor.ActorSystem; -import akka.testkit.JavaTestKit; +import akka.testkit.javadsl.TestKit; import com.typesafe.config.ConfigFactory; +import java.util.Collections; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; +import org.opendaylight.controller.md.sal.dom.api.DOMRpcIdentifier; import org.opendaylight.controller.remote.rpc.registry.RpcRegistry; import org.opendaylight.yangtools.yang.common.QName; - -import java.net.URI; -import java.net.URISyntaxException; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; +import org.opendaylight.yangtools.yang.model.api.SchemaPath; public class RpcListenerTest { - static ActorSystem system; - - - @BeforeClass - public static void setup() throws InterruptedException { - system = ActorSystem.create("opendaylight-rpc", ConfigFactory.load().getConfig("odl-cluster")); - } - - @AfterClass - public static void teardown() { - JavaTestKit.shutdownActorSystem(system); - system = null; - } - - @Test - public void testRpcAdd() throws URISyntaxException { - new JavaTestKit(system) { - { - JavaTestKit probeReg = new JavaTestKit(system); - ActorRef rpcRegistry = probeReg.getRef(); - - RpcListener rpcListener = new RpcListener(rpcRegistry); - - QName qName = new QName(new URI("actor2"), "actor2"); - - rpcListener.onRpcImplementationAdded(qName); - probeReg.expectMsgClass(RpcRegistry.Messages.AddOrUpdateRoutes.class); - }}; - - } - - @Test - public void testRpcRemove() throws URISyntaxException { - new JavaTestKit(system) { - { - JavaTestKit probeReg = new JavaTestKit(system); - ActorRef rpcRegistry = probeReg.getRef(); - - RpcListener rpcListener = new RpcListener(rpcRegistry); - - QName qName = new QName(new URI("actor2"), "actor2"); - - rpcListener.onRpcImplementationRemoved(qName); - probeReg.expectMsgClass(RpcRegistry.Messages.RemoveRoutes.class); - }}; - - } + private static final QName TEST_QNAME = QName.create("test", "2015-06-12", "test"); + private static final SchemaPath RPC_TYPE = SchemaPath.create(true, TEST_QNAME); + private static final YangInstanceIdentifier TEST_PATH = YangInstanceIdentifier + .create(new YangInstanceIdentifier.NodeIdentifier(TEST_QNAME)); + private static final DOMRpcIdentifier RPC_ID = DOMRpcIdentifier.create(RPC_TYPE, TEST_PATH); + static ActorSystem system; + + + @BeforeClass + public static void setup() { + system = ActorSystem.create("opendaylight-rpc", ConfigFactory.load().getConfig("odl-cluster-rpc")); + } + + @AfterClass + public static void teardown() { + TestKit.shutdownActorSystem(system); + system = null; + } + + @Test + public void testRouteAdd() { + new TestKit(system) { + { + // Test announcements + final TestKit probeReg = new TestKit(system); + final ActorRef rpcRegistry = probeReg.getRef(); + + final RpcListener rpcListener = new RpcListener(rpcRegistry); + rpcListener.onRpcAvailable(Collections.singleton(RPC_ID)); + probeReg.expectMsgClass(RpcRegistry.Messages.AddOrUpdateRoutes.class); + } + }; + } + + @Test + public void testRouteRemove() { + new TestKit(system) { + { + // Test announcements + final TestKit probeReg = new TestKit(system); + final ActorRef rpcRegistry = probeReg.getRef(); + + final RpcListener rpcListener = new RpcListener(rpcRegistry); + rpcListener.onRpcUnavailable(Collections.singleton(RPC_ID)); + probeReg.expectMsgClass(RpcRegistry.Messages.RemoveRoutes.class); + } + }; + } }