/* * */ package org.lightfish.business.administration; import javax.json.Json; import javax.json.JsonObject; import javax.ws.rs.client.Entity; import javax.ws.rs.core.Response; import static org.hamcrest.CoreMatchers.is; import org.junit.Assert; import static org.junit.Assert.assertNotNull; import org.junit.Before; import org.junit.Test; import org.lightfish.business.RESTSupport; /** * * @author adam-bien.com */ public class PollingResourceIT extends RESTSupport { private String URI = "http://localhost:8080/lightfish/resources/polling"; @Before @Override public void init() { super.init(URI); } @Test public void startStopPollingWithoutLocation() { final int INTERVAL_VALUE = 5; //activation JsonObject interval = Json.createObjectBuilder(). add("interval", INTERVAL_VALUE). build(); Response response = super.mainTarget. request(). post(Entity.json(interval)); Assert.assertThat(response.getStatus(), is(200)); JsonObject jsonObject = response.readEntity(JsonObject.class); String nextTimeout = jsonObject.getString("nextTimeout"); Assert.assertNotNull(nextTimeout); //status response = super.mainTarget.request().get(); Assert.assertThat(response.getStatus(), is(200)); JsonObject status = response.readEntity(JsonObject.class); nextTimeout = status.getString("nextTimeout"); assertNotNull(nextTimeout); String currentInterval = status.getString("interval"); assertNotNull(currentInterval, is(Integer.parseInt(currentInterval))); //stop response = super.mainTarget.request().delete(); Assert.assertThat(response.getStatus(), is(204)); } }