docs/docs-web/src/test/java/com/sismics/docs/rest/TestRouteResource.java
2018-01-29 23:34:43 +01:00

56 lines
2.0 KiB
Java

package com.sismics.docs.rest;
import com.sismics.util.filter.TokenBasedSecurityFilter;
import org.junit.Assert;
import org.junit.Test;
import javax.json.JsonArray;
import javax.json.JsonObject;
import javax.ws.rs.client.Entity;
import javax.ws.rs.core.Form;
import java.util.Date;
/**
* Test the route resource.
*
* @author bgamard
*/
public class TestRouteResource extends BaseJerseyTest {
/**
* Test the route resource.
*/
@Test
public void testRouteResource() {
// Login admin
String adminToken = clientUtil.login("admin", "admin", false);
// Get all route models
JsonObject json = target().path("/routemodel")
.queryParam("sort_column", "2")
.queryParam("asc", "false")
.request()
.cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken)
.get(JsonObject.class);
JsonArray routeModels = json.getJsonArray("routemodels");
Assert.assertEquals(1, routeModels.size());
// Create a document
long create1Date = new Date().getTime();
json = target().path("/document").request()
.cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken)
.put(Entity.form(new Form()
.param("title", "My super title document 1")
.param("description", "My super description for document 1")
.param("language", "eng")
.param("create_date", Long.toString(create1Date))), JsonObject.class);
String document1Id = json.getString("id");
// Start the default route on document1
target().path("/route/start").request()
.cookie(TokenBasedSecurityFilter.COOKIE_NAME, adminToken)
.post(Entity.form(new Form()
.param("documentId", document1Id)
.param("routeModelId", routeModels.getJsonObject(0).getString("id"))), JsonObject.class);
}
}