Class AkkaServerlessTestkitResource

  • All Implemented Interfaces:
    org.junit.rules.TestRule

    public final class AkkaServerlessTestkitResource
    extends org.junit.rules.ExternalResource
    A JUnit external resource for AkkaServerlessTestkit, which automatically manages the lifecycle of the testkit. The testkit will be automatically stopped when the test completes or fails.

    Note: JUnit is not provided as a transitive dependency of the Java SDK testkit module but must be added explicitly to your project.

    Example:

     import com.akkaserverless.javasdk.testkit.junit.AkkaServerlessTestkitResource;
    
     public class MyAkkaServerlessIntegrationTest {
    
       private static final AkkaServerless MY_AKKA_SERVERLESS = new AkkaServerless(); // with registered services
    
       @ClassRule
       public static final AkkaServerlessTestkitResource testkit = new AkkaServerlessTestkitResource(MY_AKKA_SERVERLESS);
    
       private final MyServiceClient client; // generated Akka gRPC client
    
       public MyAkkaServerlessIntegrationTest() {
         this.client = MyServiceClient.create(testkit.getGrpcClientSettings(), testkit.getActorSystem());
       }
    
       @Test
       public void test() {
         // use client to test service
       }
     }
     
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void after()  
      protected void before()  
      akka.actor.ActorSystem getActorSystem()
      Get an ActorSystem for creating Akka gRPC or Akka HTTP clients.
      akka.grpc.GrpcClientSettings getGrpcClientSettings()
      Get GrpcClientSettings for creating Akka gRPC clients.
      int getPort()
      Get the local port where the Akka Serverless service is available.
      • Methods inherited from class org.junit.rules.ExternalResource

        apply
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AkkaServerlessTestkitResource

        public AkkaServerlessTestkitResource​(com.akkaserverless.javasdk.AkkaServerless akkaServerless)
      • AkkaServerlessTestkitResource

        public AkkaServerlessTestkitResource​(com.akkaserverless.javasdk.AkkaServerless akkaServerless,
                                             AkkaServerlessTestkit.Settings settings)
    • Method Detail

      • before

        protected void before()
        Overrides:
        before in class org.junit.rules.ExternalResource
      • getPort

        public int getPort()
        Get the local port where the Akka Serverless service is available.
        Returns:
        local Akka Serverless port
      • getActorSystem

        public akka.actor.ActorSystem getActorSystem()
        Get an ActorSystem for creating Akka gRPC or Akka HTTP clients.
        Returns:
        test actor system
      • getGrpcClientSettings

        public akka.grpc.GrpcClientSettings getGrpcClientSettings()
        Get GrpcClientSettings for creating Akka gRPC clients.
        Returns:
        test gRPC client settings
      • after

        protected void after()
        Overrides:
        after in class org.junit.rules.ExternalResource