Skip to content

Commit

Permalink
Add API test for Dataverses GuestbookResponses
Browse files Browse the repository at this point in the history
  • Loading branch information
bencomp committed Oct 17, 2023
1 parent f2770fb commit 21eb153
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 1 deletion.
19 changes: 19 additions & 0 deletions src/test/java/edu/harvard/iq/dataverse/api/DataversesIT.java
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,25 @@ public void testMinimalDataverse() throws FileNotFoundException {
deleteDataverse.then().assertThat().statusCode(OK.getStatusCode());
}

@Test
public void testGetGuestbookResponses() {
Response createUser = UtilIT.createRandomUser();
createUser.prettyPrint();
String apiToken = UtilIT.getApiTokenFromResponse(createUser);
// Create a Dataverse
Response create = UtilIT.createRandomDataverse(apiToken);
create.prettyPrint();
create.then().assertThat().statusCode(CREATED.getStatusCode());
String alias = UtilIT.getAliasFromResponse(create);
Integer dvId = UtilIT.getDataverseIdFromResponse(create);
// Get GuestbookResponses by Dataverse alias
Response getResponsesByAlias = UtilIT.getGuestbookResponses(alias, null, apiToken);
getResponsesByAlias.then().assertThat().statusCode(OK.getStatusCode());
// Get GuestbookResponses by Dataverse ID
Response getResponsesById = UtilIT.getGuestbookResponses(dvId.toString(), null, apiToken);
getResponsesById.then().assertThat().statusCode(OK.getStatusCode());
}

@Test
public void testNotEnoughJson() {
Response createUser = UtilIT.createRandomUser();
Expand Down
11 changes: 10 additions & 1 deletion src/test/java/edu/harvard/iq/dataverse/api/UtilIT.java
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,16 @@ static Response showDataverseContents(String alias, String apiToken) {
.header(API_TOKEN_HTTP_HEADER, apiToken)
.when().get("/api/dataverses/" + alias + "/contents");
}


static Response getGuestbookResponses(String dataverseAlias, Long guestbookId, String apiToken) {
RequestSpecification requestSpec = given()
.auth().basic(apiToken, EMPTY_STRING);
if (guestbookId != null) {
requestSpec.queryParam("guestbookId", guestbookId);
}
return requestSpec.get("/api/dataverses/" + dataverseAlias + "/guestbookResponses/");
}

static Response createRandomDatasetViaNativeApi(String dataverseAlias, String apiToken) {
return createRandomDatasetViaNativeApi(dataverseAlias, apiToken, false);
}
Expand Down

0 comments on commit 21eb153

Please sign in to comment.