package test.com.uaihebert.uaimockserver.gui; import com.google.gson.Gson; import com.uaihebert.uaimockserver.dto.model.UaiRouteDTO; import com.uaihebert.uaimockserver.dto.response.IndexResponseDTO; import com.uaihebert.uaimockserver.runner.UaiMockServerRunner; import com.uaihebert.uaimockserver.runner.UaiRunnerMockServerConfiguration; import org.junit.Test; import org.junit.runner.RunWith; import javax.ws.rs.client.Client; import javax.ws.rs.client.ClientBuilder; import javax.ws.rs.core.Response; import static org.junit.Assert.assertEquals; @RunWith(UaiMockServerRunner.class) @UaiRunnerMockServerConfiguration(configurationFile = "routeDeleteTest.json") public class UaiRouteServletDeleteTest extends AbstractTestServletTests { public long getTotalOfRoutesFound() { final IndexResponseDTO toUpdateIndex = listAll(); if (toUpdateIndex.getRouteList() != null) { return toUpdateIndex.getRouteList().size(); } return 0; } private IndexResponseDTO listAll() { final String url = AbstractTestServletTests.GUI_URL + "uaiRoute"; Client client = ClientBuilder.newClient(); Response response = client.target(url).request().get(); final String bodyAsString = response.readEntity(String.class); return new Gson().fromJson(bodyAsString, IndexResponseDTO.class); } @Test public void isDeleting() { final long totalBeforeDelete = getTotalOfRoutesFound(); final UaiRouteDTO deleted = listAll().getRouteList().get(0); final String url = AbstractTestServletTests.GUI_URL + "uaiRoute?routeId="+deleted.getId(); final Client client = ClientBuilder.newClient(); client.target(url).request().delete(); final long totalAfterDelete = getTotalOfRoutesFound(); // rollback executePost(deleted); assertEquals("making sure that only one was deleted", (totalBeforeDelete - 1), totalAfterDelete); } }