54 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package com.baeldung.akkahttp;
 | |
| 
 | |
| import akka.actor.ActorRef;
 | |
| import akka.actor.ActorSystem;
 | |
| import akka.http.javadsl.model.ContentTypes;
 | |
| import akka.http.javadsl.model.HttpEntities;
 | |
| import akka.http.javadsl.model.HttpRequest;
 | |
| import akka.http.javadsl.testkit.JUnitRouteTest;
 | |
| import akka.http.javadsl.testkit.TestRoute;
 | |
| 
 | |
| import org.junit.Ignore;
 | |
| import org.junit.Test;
 | |
| 
 | |
| public class UserServerUnitTest extends JUnitRouteTest {
 | |
| 
 | |
|   ActorSystem system = ActorSystem.create("helloAkkaHttpServer");
 | |
| 
 | |
|   ActorRef userActorRef = system.actorOf(UserActor.props(), "userActor");
 | |
| 
 | |
|   TestRoute appRoute = testRoute(new UserServer(userActorRef).routes());
 | |
| 
 | |
|   @Ignore
 | |
|   @Test
 | |
|   public void whenRequest_thenActorResponds() {
 | |
| 
 | |
|     appRoute.run(HttpRequest.GET("/users/1"))
 | |
|             .assertEntity(alice())
 | |
|             .assertStatusCode(200);
 | |
| 
 | |
|     appRoute.run(HttpRequest.GET("/users/42"))
 | |
|             .assertStatusCode(404);
 | |
| 
 | |
|     appRoute.run(HttpRequest.DELETE("/users/1"))
 | |
|             .assertStatusCode(405);
 | |
| 
 | |
|     appRoute.run(HttpRequest.DELETE("/users/42"))
 | |
|             .assertStatusCode(405);
 | |
| 
 | |
|     appRoute.run(HttpRequest.POST("/users")
 | |
|             .withEntity(HttpEntities.create(ContentTypes.APPLICATION_JSON, zaphod())))
 | |
|             .assertStatusCode(201);
 | |
| 
 | |
|   }
 | |
| 
 | |
|   private String alice() {
 | |
|     return "{\"id\":1,\"name\":\"Alice\"}";
 | |
|   }
 | |
| 
 | |
|   private String zaphod() {
 | |
|     return "{\"id\":42,\"name\":\"Zaphod\"}";
 | |
|   }
 | |
| 
 | |
| }
 |