use of com.jayway.restassured.response.Response in project ddf by codice.
the class TestCatalog method testCswUpdateByNewRecord.
@Test
public void testCswUpdateByNewRecord() {
Response response = ingestCswRecord();
String requestXml = getFileContent(CSW_REQUEST_RESOURCE_PATH + "/CswUpdateRecordRequest");
String id;
try {
id = getMetacardIdFromCswInsertResponse(response);
} catch (IOException | XPathExpressionException e) {
fail("Could not retrieve the ingested record's ID from the response.");
return;
}
requestXml = requestXml.replace("identifier placeholder", id);
ValidatableResponse validatableResponse = given().header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_XML).body(requestXml).post(CSW_PATH.getUrl()).then();
validatableResponse.body(hasXPath("//TransactionResponse/TransactionSummary/totalDeleted", is("0")), hasXPath("//TransactionResponse/TransactionSummary/totalInserted", is("0")), hasXPath("//TransactionResponse/TransactionSummary/totalUpdated", is("1")));
String url = REST_PATH.getUrl() + id;
when().get(url).then().log().all().assertThat().body(hasXPath("//metacard/dateTime[@name='modified']/value", startsWith("2015-08-10")), hasXPath("//metacard/string[@name='title']/value", is("Updated Title")), hasXPath("//metacard/string[@name='topic.category']/value", is("Updated Subject")), hasXPath("(//metacard/geometry[@name='location']/value/Polygon/exterior/LinearRing/pos)[1]", is("1.0 2.0")), hasXPath("(//metacard/geometry[@name='location']/value/Polygon/exterior/LinearRing/pos)[2]", is("3.0 2.0")), hasXPath("(//metacard/geometry[@name='location']/value/Polygon/exterior/LinearRing/pos)[3]", is("3.0 4.0")), hasXPath("(//metacard/geometry[@name='location']/value/Polygon/exterior/LinearRing/pos)[4]", is("1.0 4.0")), hasXPath("(//metacard/geometry[@name='location']/value/Polygon/exterior/LinearRing/pos)[5]", is("1.0 2.0")));
deleteMetacard(id);
}
use of com.jayway.restassured.response.Response in project ddf by codice.
the class TestCatalog method testCswUpdateByFilterConstraint.
@Test
public void testCswUpdateByFilterConstraint() {
Response firstResponse = ingestCswRecord();
Response secondResponse = ingestCswRecord();
ValidatableResponse validatableResponse = given().header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_XML).body(getFileContent(CSW_REQUEST_RESOURCE_PATH + "/CswUpdateByFilterConstraintRequest")).post(CSW_PATH.getUrl()).then();
validatableResponse.body(hasXPath("//TransactionResponse/TransactionSummary/totalDeleted", is("0")), hasXPath("//TransactionResponse/TransactionSummary/totalInserted", is("0")), hasXPath("//TransactionResponse/TransactionSummary/totalUpdated", is("2")));
String firstId;
String secondId;
try {
firstId = getMetacardIdFromCswInsertResponse(firstResponse);
secondId = getMetacardIdFromCswInsertResponse(secondResponse);
} catch (IOException | XPathExpressionException e) {
fail("Could not retrieve the ingested record's ID from the response.");
return;
}
String firstUrl = REST_PATH.getUrl() + firstId;
when().get(firstUrl).then().log().all().assertThat().body(hasXPath("//metacard/dateTime[@name='modified']/value", startsWith("2015-08-25")), hasXPath("//metacard/string[@name='title']/value", is("Updated Title")), hasXPath("//metacard/string[@name='media.format']/value", is("")), // Check that an attribute that was not updated was not changed.
hasXPath("//metacard/string[@name='topic.category']/value", is("Hydrography--Dictionaries")));
String secondUrl = REST_PATH.getUrl() + secondId;
when().get(secondUrl).then().log().all().assertThat().body(hasXPath("//metacard/dateTime[@name='modified']/value", startsWith("2015-08-25")), hasXPath("//metacard/string[@name='title']/value", is("Updated Title")), hasXPath("//metacard/string[@name='media.format']/value", is("")), // Check that an attribute that was not updated was not changed.
hasXPath("//metacard/string[@name='topic.category']/value", is("Hydrography--Dictionaries")));
deleteMetacard(firstId);
deleteMetacard(secondId);
}
use of com.jayway.restassured.response.Response in project ddf by codice.
the class TestCatalog method testCswXmlIngest.
@Test
public void testCswXmlIngest() {
Response response = ingestXmlViaCsw();
ValidatableResponse validatableResponse = response.then();
validatableResponse.body(hasXPath("//TransactionResponse/TransactionSummary/totalInserted", is("1")), hasXPath("//TransactionResponse/TransactionSummary/totalUpdated", is("0")), hasXPath("//TransactionResponse/TransactionSummary/totalDeleted", is("0")), hasXPath("//TransactionResponse/InsertResult/BriefRecord/title", is("myXmlTitle")), hasXPath("//TransactionResponse/InsertResult/BriefRecord/BoundingBox"));
try {
CatalogTestCommons.deleteMetacardUsingCswResponseId(response);
} catch (IOException | XPathExpressionException e) {
fail("Could not retrieve the ingested record's ID from the response.");
}
}
use of com.jayway.restassured.response.Response in project ddf by codice.
the class TestCatalog method testCombinedCswIngestAndDelete.
@Test
public void testCombinedCswIngestAndDelete() {
// This record will be deleted with the <Delete> in the next transaction request.
ingestCswRecord();
// The record being inserted in this transaction request will be deleted at the end of the
// test.
Response response = given().header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_XML).body(getFileContent(CSW_REQUEST_RESOURCE_PATH + "/CswInsertAndDeleteRequest")).post(CSW_PATH.getUrl());
ValidatableResponse validatableResponse = response.then();
validatableResponse.body(hasXPath("//TransactionResponse/TransactionSummary/totalDeleted", is("1")), hasXPath("//TransactionResponse/TransactionSummary/totalInserted", is("1")), hasXPath("//TransactionResponse/TransactionSummary/totalUpdated", is("0")));
try {
CatalogTestCommons.deleteMetacardUsingCswResponseId(response);
} catch (IOException | XPathExpressionException e) {
fail("Could not retrieve the ingested record's ID from the response.");
}
}
use of com.jayway.restassured.response.Response in project ddf by codice.
the class TestCatalog method testCswIngest.
@Test
public void testCswIngest() {
Response response = ingestCswRecord();
ValidatableResponse validatableResponse = response.then();
validatableResponse.body(hasXPath("//TransactionResponse/TransactionSummary/totalInserted", is("1")), hasXPath("//TransactionResponse/TransactionSummary/totalUpdated", is("0")), hasXPath("//TransactionResponse/TransactionSummary/totalDeleted", is("0")), hasXPath("//TransactionResponse/InsertResult/BriefRecord/title", is("Aliquam fermentum purus quis arcu")), hasXPath("//TransactionResponse/InsertResult/BriefRecord/BoundingBox"));
try {
CatalogTestCommons.deleteMetacardUsingCswResponseId(response);
} catch (IOException | XPathExpressionException e) {
fail("Could not retrieve the ingested record's ID from the response.");
}
}
Aggregations