X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FAbstractTest.java;h=a3726e270bea47a1ad4b840e20ab14b6b5753709;hb=2fd1fa721510a30f58b3bc277deb05fce58badd6;hp=c0df6bd0059cf106ec549c83692ef49b20854e05;hpb=7204c455a1636a7fc89bcd28fe9e9000eaa81b3b;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractTest.java index c0df6bd005..a3726e270b 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractTest.java @@ -7,8 +7,14 @@ */ package org.opendaylight.controller.cluster.datastore; +import akka.actor.ActorSystem; +import akka.testkit.javadsl.TestKit; +import com.typesafe.config.ConfigFactory; +import java.util.ArrayList; +import java.util.Collection; import java.util.concurrent.CompletionStage; import java.util.concurrent.atomic.AtomicLong; +import org.junit.After; import org.opendaylight.controller.cluster.access.concepts.ClientIdentifier; import org.opendaylight.controller.cluster.access.concepts.FrontendIdentifier; import org.opendaylight.controller.cluster.access.concepts.FrontendType; @@ -17,7 +23,7 @@ import org.opendaylight.controller.cluster.access.concepts.MemberName; import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; import scala.compat.java8.FutureConverters; import scala.concurrent.Await; -import scala.concurrent.duration.Duration; +import scala.concurrent.duration.FiniteDuration; public abstract class AbstractTest { protected static final MemberName MEMBER_NAME = MemberName.forName("member-1"); @@ -32,6 +38,8 @@ public abstract class AbstractTest { private static final AtomicLong HISTORY_COUNTER = new AtomicLong(); private static final AtomicLong TX_COUNTER = new AtomicLong(); + private final Collection actorSystems = new ArrayList<>(); + protected static void setUpStatic() { HISTORY_COUNTER.set(1L); TX_COUNTER.set(1L); @@ -45,8 +53,21 @@ public abstract class AbstractTest { return new LocalHistoryIdentifier(CLIENT_ID, HISTORY_COUNTER.incrementAndGet()); } - protected static T waitOnAsyncTask(final CompletionStage completionStage, final Duration timeout) + protected static T waitOnAsyncTask(final CompletionStage completionStage, final FiniteDuration timeout) throws Exception { return Await.result(FutureConverters.toScala(completionStage), timeout); } + + @After + public void actorSystemCleanup() { + for (final ActorSystem system : actorSystems) { + TestKit.shutdownActorSystem(system, true); + } + } + + protected ActorSystem newActorSystem(final String name, final String config) { + ActorSystem system = ActorSystem.create(name, ConfigFactory.load().getConfig(config)); + actorSystems.add(system); + return system; + } }