Example usage for org.springframework.mock.web MockHttpServletResponse getStatus

List of usage examples for org.springframework.mock.web MockHttpServletResponse getStatus

Introduction

In this page you can find the example usage for org.springframework.mock.web MockHttpServletResponse getStatus.

Prototype

@Override
    public int getStatus() 

Source Link

Usage

From source file:org.geoserver.qos.web.QosWmsPanelTest.java

protected void disableQosConfig() throws Exception {
    String xml = getFileData("test-data/disabled-config.xml");
    MockHttpServletResponse response = putAsServletResponse(
            RestBaseController.ROOT_PATH + QosWMSRestTest.QOS_WMS_PATH, xml, "text/xml");
    assertEquals(200, response.getStatus());
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

void addCoverageStore(boolean autoConfigureCoverage) throws Exception {
    URL zip = getClass().getResource("test-data/usa.zip");
    byte[] bytes = FileUtils.readFileToByteArray(DataUtilities.urlToFile(zip));

    MockHttpServletResponse response = putAsServletResponse(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/file.worldimage"
                    + (!autoConfigureCoverage ? "?configure=none" : ""),
            bytes, "application/zip");
    assertEquals(201, response.getStatus());
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testGetWrongCoverage() throws Exception {
    // Parameters for the request
    String ws = "wcs";
    String cs = "BlueMarble";
    String c = "BlueMarblesssss";
    // Request path
    String requestPath = RestBaseController.ROOT_PATH + "/workspaces/" + ws + "/coverages/" + c + ".html";
    String requestPath2 = RestBaseController.ROOT_PATH + "/workspaces/" + ws + "/coveragestores/" + cs
            + "/coverages/" + c + ".html";
    // Exception path
    String exception = "No such coverage: " + ws + "," + c;
    String exception2 = "No such coverage: " + ws + "," + cs + "," + c;

    // CASE 1: No coveragestore set

    // First request should thrown an exception
    MockHttpServletResponse response = getAsServletResponse(requestPath);
    assertEquals(404, response.getStatus());
    assertTrue(response.getContentAsString().contains(exception));

    // Same request with ?quietOnNotFound should not throw an exception
    response = getAsServletResponse(requestPath + "?quietOnNotFound=true");
    assertEquals(404, response.getStatus());
    assertFalse(response.getContentAsString().contains(exception));
    // No exception thrown
    assertTrue(response.getContentAsString().isEmpty());

    // CASE 2: coveragestore set

    // First request should thrown an exception
    response = getAsServletResponse(requestPath2);
    assertEquals(404, response.getStatus());
    assertTrue(response.getContentAsString().contains(exception2));

    // Same request with ?quietOnNotFound should not throw an exception
    response = getAsServletResponse(requestPath2 + "?quietOnNotFound=true");
    assertEquals(404, response.getStatus());
    assertFalse(response.getContentAsString().contains(exception2));
    // No exception thrown
    assertTrue(response.getContentAsString().isEmpty());
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testPostAsXML() throws Exception {
    removeStore("gs", "usaWorldImage");
    String req = "wcs?service=wcs&request=getcoverage&version=1.1.1&identifier=gs:usa"
            + "&boundingbox=-100,30,-80,44,EPSG:4326&format=image/tiff" + "&gridbasecrs=EPSG:4326&store=true";

    Document dom = getAsDOM(req);
    assertEquals("ows:ExceptionReport", dom.getDocumentElement().getNodeName());

    addCoverageStore(false);/*from w w  w .ja v  a2 s. com*/
    dom = getAsDOM(RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages.xml");
    assertEquals(0, dom.getElementsByTagName("coverage").getLength());

    String xml = "<coverage>" + "<name>usa</name>"
            + "<title>usa is a A raster file accompanied by a spatial data file</title>"
            + "<description>Generated from WorldImage</description>" + "<srs>EPSG:4326</srs>" +
            /*"<latLonBoundingBox>"+
              "<minx>-130.85168</minx>"+
              "<maxx>-62.0054</maxx>"+
              "<miny>20.7052</miny>"+
              "<maxy>54.1141</maxy>"+
            "</latLonBoundingBox>"+
            "<nativeBoundingBox>"+
              "<minx>-130.85168</minx>"+
              "<maxx>-62.0054</maxx>"+
              "<miny>20.7052</miny>"+
              "<maxy>54.1141</maxy>"+
              "<crs>EPSG:4326</crs>"+
            "</nativeBoundingBox>"+
            "<grid dimension=\"2\">"+
                "<range>"+
                  "<low>0 0</low>"+
                  "<high>983 598</high>"+
                "</range>"+
                "<transform>"+
                  "<scaleX>0.07003690742624616</scaleX>"+
                  "<scaleY>-0.05586772575250837</scaleY>"+
                  "<shearX>0.0</shearX>"+
                  "<shearX>0.0</shearX>"+
                  "<translateX>-130.81666154628687</translateX>"+
                  "<translateY>54.08616613712375</translateY>"+
                "</transform>"+
                "<crs>EPSG:4326</crs>"+
            "</grid>"+*/
            "<supportedFormats>" + "<string>PNG</string>" + "<string>GEOTIFF</string>" + "</supportedFormats>"
            + "<requestSRS>" + "<string>EPSG:4326</string>" + "</requestSRS>" + "<responseSRS>"
            + "<string>EPSG:4326</string>" + "</responseSRS>" + "<store>usaWorldImage</store>"
            + "<namespace>gs</namespace>" + "</coverage>";
    MockHttpServletResponse response = postAsServletResponse(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages/", xml,
            "text/xml");

    assertEquals(201, response.getStatus());
    assertNotNull(response.getHeader("Location"));
    assertTrue(response.getHeader("Location")
            .endsWith("/workspaces/gs/coveragestores/usaWorldImage/coverages/usa"));

    dom = getAsDOM(req);
    assertEquals("wcs:Coverages", dom.getDocumentElement().getNodeName());

    dom = getAsDOM(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages/usa.xml");
    assertXpathEvaluatesTo("-130.85168", "/coverage/latLonBoundingBox/minx", dom);
    assertXpathEvaluatesTo("983 598", "/coverage/grid/range/high", dom);

    dom = getAsDOM(RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages.xml");
    assertEquals(1, dom.getElementsByTagName("coverage").getLength());
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testPostAsJSON() throws Exception {
    // remove the test store and test that the layer is not available
    removeStore("gs", "usaWorldImage");
    String request = "wcs?service=wcs&request=getcoverage&version=1.1.1&identifier=gs:usa"
            + "&boundingbox=-100,30,-80,44,EPSG:4326&format=image/tiff&gridbasecrs=EPSG:4326&store=true";
    Document document = getAsDOM(request);
    assertEquals("ows:ExceptionReport", document.getDocumentElement().getNodeName());
    // add the test store, no coverages should be available
    addCoverageStore(false);//from   w  w w .  j a va2 s. c o  m
    JSONObject json = (JSONObject) getAsJSON(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages.json");
    assertThat(json.getString("coverages").isEmpty(), is(true));
    // content for the POST request
    String content = "{" + "    \"coverage\": {" + "        \"description\": \"Generated from WorldImage\","
            + "        \"name\": \"usa\"," + "        \"namespace\": \"gs\"," + "        \"requestSRS\": {"
            + "            \"string\": [" + "                \"EPSG:4326\"" + "            ]" + "        },"
            + "        \"responseSRS\": {" + "            \"string\": [" + "                \"EPSG:4326\""
            + "            ]" + "        }," + "        \"srs\": \"EPSG:4326\","
            + "        \"store\": \"usaWorldImage\"," + "        \"supportedFormats\": {"
            + "            \"string\": [" + "                \"PNG\"," + "                \"GEOTIFF\""
            + "            ]" + "        },"
            + "        \"title\": \"usa is a A raster file accompanied by a spatial data file\"" + "    }"
            + "}";
    // perform the POST request that will create the USA coverage
    MockHttpServletResponse response = postAsServletResponse(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages/", content,
            "application/json");
    assertEquals(201, response.getStatus());
    assertNotNull(response.getHeader("Location"));
    assertTrue(response.getHeader("Location")
            .endsWith("/workspaces/gs/coveragestores/usaWorldImage/coverages/usa"));
    // check that the coverage exists using the WCS service
    document = getAsDOM(request);
    assertEquals("wcs:Coverages", document.getDocumentElement().getNodeName());
    // check create coverage attributes
    json = (JSONObject) getAsJSON(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages/usa.json");
    assertThat(json.getJSONObject("coverage").getString("name"), is("usa"));
    assertThat(json.getJSONObject("coverage").getJSONObject("latLonBoundingBox").getString("minx"),
            is("-130.85168"));
    assertThat(json.getJSONObject("coverage").getJSONObject("grid").getJSONObject("range").getString("high"),
            is("983 598"));
    // check that the coverage is listed
    json = (JSONObject) getAsJSON(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages.json");
    JSONArray coverages = json.getJSONObject("coverages").getJSONArray("coverage");
    assertThat(coverages.size(), is(1));
    assertThat(coverages.getJSONObject(0).getString("name"), is("usa"));
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testPostAsXMLWithNativeName() throws Exception {
    removeStore("gs", "usaWorldImage");
    String req = "wcs?service=wcs&request=getcoverage&version=1.1.1&identifier=gs:differentName"
            + "&boundingbox=-100,30,-80,44,EPSG:4326&format=image/tiff" + "&gridbasecrs=EPSG:4326&store=true";

    Document dom = getAsDOM(req);
    assertEquals("ows:ExceptionReport", dom.getDocumentElement().getNodeName());

    addCoverageStore(false);//from   w ww  .  j  a v  a 2 s .  c o m
    dom = getAsDOM(RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages.xml");
    assertEquals(0, dom.getElementsByTagName("coverage").getLength());

    String xml = "<coverage>" + "<name>differentName</name>"
            + "<title>usa is a A raster file accompanied by a spatial data file</title>"
            + "<description>Generated from WorldImage</description>" + "<srs>EPSG:4326</srs>"
            + "<supportedFormats>" + "<string>PNG</string>" + "<string>GEOTIFF</string>" + "</supportedFormats>"
            + "<requestSRS>" + "<string>EPSG:4326</string>" + "</requestSRS>" + "<responseSRS>"
            + "<string>EPSG:4326</string>" + "</responseSRS>" + "<store>usaWorldImage</store>"
            + "<namespace>gs</namespace>" + "<nativeCoverageName>usa</nativeCoverageName>" + "</coverage>";
    MockHttpServletResponse response = postAsServletResponse(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages/", xml,
            "text/xml");

    assertEquals(201, response.getStatus());
    assertNotNull(response.getHeader("Location"));
    assertTrue(response.getHeader("Location")
            .endsWith("/workspaces/gs/coveragestores/usaWorldImage/coverages/differentName"));

    dom = getAsDOM(req);
    assertEquals("wcs:Coverages", dom.getDocumentElement().getNodeName());

    dom = getAsDOM(RestBaseController.ROOT_PATH
            + "/workspaces/gs/coveragestores/usaWorldImage/coverages/differentName.xml");
    assertXpathEvaluatesTo("-130.85168", "/coverage/latLonBoundingBox/minx", dom);
    assertXpathEvaluatesTo("983 598", "/coverage/grid/range/high", dom);

}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testPostNewAsXMLWithNativeCoverageName() throws Exception {
    removeStore("gs", "usaWorldImage");
    String req = "wcs?service=wcs&request=getcoverage&version=1.1.1&identifier=gs:differentName"
            + "&boundingbox=-100,30,-80,44,EPSG:4326&format=image/tiff" + "&gridbasecrs=EPSG:4326&store=true";

    Document dom = getAsDOM(req);
    assertEquals("ows:ExceptionReport", dom.getDocumentElement().getNodeName());

    addCoverageStore(false);//from w ww.  j ava 2s . c o m
    dom = getAsDOM(RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages.xml");
    assertEquals(0, dom.getElementsByTagName("coverage").getLength());

    String xml = "<coverage>" + "<name>differentName</name>" + "<nativeCoverageName>usa</nativeCoverageName>"
            + "</coverage>";
    MockHttpServletResponse response = postAsServletResponse(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages/", xml,
            "text/xml");

    assertEquals(201, response.getStatus());
    assertNotNull(response.getHeader("Location"));
    assertTrue(response.getHeader("Location")
            .endsWith("/workspaces/gs/coveragestores/usaWorldImage/coverages/differentName"));

    dom = getAsDOM(req);
    assertEquals("wcs:Coverages", dom.getDocumentElement().getNodeName());

    dom = getAsDOM(RestBaseController.ROOT_PATH
            + "/workspaces/gs/coveragestores/usaWorldImage/coverages/differentName.xml");
    assertXpathEvaluatesTo("differentName", "/coverage/name", dom);
    assertXpathEvaluatesTo("differentName", "/coverage/title", dom);
    assertXpathEvaluatesTo("usa", "/coverage/nativeCoverageName", dom);
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testPostNewAsXMLWithNativeNameFallback() throws Exception {
    removeStore("gs", "usaWorldImage");
    String req = "wcs?service=wcs&request=getcoverage&version=1.1.1&identifier=gs:differentName"
            + "&boundingbox=-100,30,-80,44,EPSG:4326&format=image/tiff" + "&gridbasecrs=EPSG:4326&store=true";

    Document dom = getAsDOM(req);
    assertEquals("ows:ExceptionReport", dom.getDocumentElement().getNodeName());

    addCoverageStore(false);//  w w w .jav  a2s. c om
    dom = getAsDOM(RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages.xml");
    assertEquals(0, dom.getElementsByTagName("coverage").getLength());

    String xml = "<coverage>" + "<name>differentName</name>" + "<nativeName>usa</nativeName>" + "</coverage>";
    MockHttpServletResponse response = postAsServletResponse(
            RestBaseController.ROOT_PATH + "/workspaces/gs/coveragestores/usaWorldImage/coverages/", xml,
            "text/xml");

    assertEquals(201, response.getStatus());
    assertNotNull(response.getHeader("Location"));
    assertTrue(response.getHeader("Location")
            .endsWith("/workspaces/gs/coveragestores/usaWorldImage/coverages/differentName"));

    dom = getAsDOM(req);
    assertEquals("wcs:Coverages", dom.getDocumentElement().getNodeName());

    dom = getAsDOM(RestBaseController.ROOT_PATH
            + "/workspaces/gs/coveragestores/usaWorldImage/coverages/differentName.xml");
    assertXpathEvaluatesTo("differentName", "/coverage/name", dom);
    assertXpathEvaluatesTo("differentName", "/coverage/title", dom);
    assertXpathEvaluatesTo("usa", "/coverage/nativeCoverageName", dom);
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testPutWithCalculation() throws Exception {
    String path = RestBaseController.ROOT_PATH + "/workspaces/wcs/coveragestores/DEM/coverages/DEM.xml";
    String clearLatLonBoundingBox = "<coverage>" + "<latLonBoundingBox/>" + "</coverage>";

    MockHttpServletResponse response = putAsServletResponse(path, clearLatLonBoundingBox, "text/xml");
    assertEquals("Couldn't remove lat/lon bounding box: \n" + response.getContentAsString(), 200,
            response.getStatus());

    Document dom = getAsDOM(path);
    assertXpathEvaluatesTo("0.0", "/coverage/latLonBoundingBox/minx", dom);
    print(dom);//from w w  w .j a va 2  s.  com

    String updateNativeBounds = "<coverage>" + "<srs>EPSG:3785</srs>" + "</coverage>";

    response = putAsServletResponse(path, updateNativeBounds, "text/xml");

    assertEquals("Couldn't update native bounding box: \n" + response.getContentAsString(), 200,
            response.getStatus());
    dom = getAsDOM(path);
    print(dom);
    assertXpathExists("/coverage/nativeBoundingBox/minx[text()!='0.0']", dom);
}

From source file:org.geoserver.rest.catalog.CoverageControllerTest.java

@Test
public void testPostToResource() throws Exception {
    String xml = "<coverage>" + "<name>foo</name>" + "</coverage>";

    MockHttpServletResponse response = postAsServletResponse(
            RestBaseController.ROOT_PATH + "/workspaces/wcs/coveragestores/BlueMarble/coverages/BlueMarble",
            xml, "text/xml");
    assertEquals(405, response.getStatus());
}