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=1187365a85e15a754d426a666b582b3c604400d2;hb=a2b838f96589b502578fa4e15cef2769f886a378;hpb=1a4a451d17d39b0dac45a70de9016bd4b0e6b249 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 1187365a85..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,71 +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 static org.mockito.Mockito.when; 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.controller.md.sal.dom.api.DOMRpcProviderService; -import org.opendaylight.controller.md.sal.dom.api.DOMRpcService; -import org.opendaylight.controller.sal.core.api.Broker; -import org.opendaylight.controller.sal.core.api.model.SchemaService; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; +import org.opendaylight.mdsal.dom.api.DOMRpcProviderService; +import org.opendaylight.mdsal.dom.api.DOMRpcService; import scala.concurrent.Await; -import scala.concurrent.duration.Duration; +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; - } - - @Test - public void testRemoteRpcProvider() throws Exception { - final RemoteRpcProvider rpcProvider = new RemoteRpcProvider(system, mock(DOMRpcProviderService.class), - new RemoteRpcProviderConfig(system.settings().config())); - final Broker.ProviderSession session = mock(Broker.ProviderSession.class); - final SchemaService schemaService = mock(SchemaService.class); - when(schemaService.getGlobalContext()). thenReturn(mock(SchemaContext.class)); - when(session.getService(SchemaService.class)).thenReturn(schemaService); - when(session.getService(DOMRpcService.class)).thenReturn(mock(DOMRpcService.class)); - - rpcProvider.onSessionInitiated(session); - - final ActorRef actorRef = Await.result( - system.actorSelection( - moduleConfig.getRpcManagerPath()).resolveOne(Duration.create(1, TimeUnit.SECONDS)), - Duration.create(2, TimeUnit.SECONDS)); - - Assert.assertTrue(actorRef.path().toString().contains(moduleConfig.getRpcManagerPath())); - } + 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())); + } + } }