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%2FRemoteRpcProviderTest.java;h=c427044c6093b8e602cda9cecb6cc5cf0266e990;hp=5cd3df3a245d0d645059f26637d68b6587fc3af0;hb=a2b838f96589b502578fa4e15cef2769f886a378;hpb=919145b1bf7d68e436efa9b22c174965005a174a diff --git a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RemoteRpcProviderTest.java b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RemoteRpcProviderTest.java index 5cd3df3a24..c427044c60 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RemoteRpcProviderTest.java +++ b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RemoteRpcProviderTest.java @@ -1,38 +1,60 @@ /* - * 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, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - - package org.opendaylight.controller.remote.rpc; +import static org.mockito.Mockito.mock; +import akka.actor.ActorRef; import akka.actor.ActorSystem; -import akka.testkit.JavaTestKit; +import akka.testkit.javadsl.TestKit; import com.typesafe.config.Config; +import com.typesafe.config.ConfigFactory; +import java.util.concurrent.TimeUnit; import org.junit.AfterClass; +import org.junit.Assert; import org.junit.BeforeClass; +import org.junit.Test; +import org.opendaylight.mdsal.dom.api.DOMRpcProviderService; +import org.opendaylight.mdsal.dom.api.DOMRpcService; +import scala.concurrent.Await; +import scala.concurrent.duration.FiniteDuration; public class RemoteRpcProviderTest { - - static ActorSystem system; - static RemoteRpcProviderConfig moduleConfig; - - @BeforeClass - public static void setup() throws InterruptedException { - moduleConfig = new RemoteRpcProviderConfig.Builder("odl-cluster-rpc").build(); - final Config config = moduleConfig.get(); - system = ActorSystem.create("odl-cluster-rpc", config); - - } - - @AfterClass - public static void teardown() { - JavaTestKit.shutdownActorSystem(system); - system = null; - } - + static ActorSystem system; + static RemoteRpcProviderConfig moduleConfig; + + @BeforeClass + public static void setup() { + moduleConfig = new RemoteRpcProviderConfig.Builder("odl-cluster-rpc") + .withConfigReader(ConfigFactory::load).build(); + final Config config = moduleConfig.get(); + system = ActorSystem.create("odl-cluster-rpc", config); + + } + + @AfterClass + public static void teardown() { + TestKit.shutdownActorSystem(system); + system = null; + } + + @Test + public void testRemoteRpcProvider() throws Exception { + try (RemoteRpcProvider rpcProvider = new RemoteRpcProvider(system, mock(DOMRpcProviderService.class), + mock(DOMRpcService.class), new RemoteRpcProviderConfig(system.settings().config()))) { + + rpcProvider.start(); + + final ActorRef actorRef = Await.result( + system.actorSelection(moduleConfig.getRpcManagerPath()).resolveOne( + FiniteDuration.create(1, TimeUnit.SECONDS)), FiniteDuration.create(2, TimeUnit.SECONDS)); + + Assert.assertTrue(actorRef.path().toString().contains(moduleConfig.getRpcManagerPath())); + } + } }