@@ -3888,6 +3888,14 @@ public void testDownloadFileWithGuestbookResponse() throws IOException, JsonPars
38883888 String apiToken = UtilIT .getApiTokenFromResponse (createUserResponse );
38893889 String username = UtilIT .getUsernameFromResponse (createUserResponse );
38903890
3891+ // Create second user with no permission
3892+ createUserResponse = UtilIT .createRandomUser ();
3893+ createUserResponse .prettyPrint ();
3894+ assertEquals (200 , createUserResponse .getStatusCode ());
3895+ String apiToken2 = UtilIT .getApiTokenFromResponse (createUserResponse );
3896+ String username2 = UtilIT .getUsernameFromResponse (createUserResponse );
3897+ String user2Email = JsonPath .from (createUserResponse .body ().asString ()).getString ("data.authenticatedUser.email" );
3898+
38913899 // Create Dataset
38923900 Response createDatasetResponse = UtilIT .createRandomDatasetViaNativeApi (dataverseAlias , ownerApiToken );
38933901 createDatasetResponse .then ().assertThat ().statusCode (CREATED .getStatusCode ());
@@ -3997,6 +4005,21 @@ public void testDownloadFileWithGuestbookResponse() throws IOException, JsonPars
39974005 signedUrlResponse = get (signedUrl );
39984006 signedUrlResponse .prettyPrint ();
39994007 assertEquals (OK .getStatusCode (), signedUrlResponse .getStatusCode ());
4008+
4009+ // TEST Overwrite name, email, institution and position in guestbook Response. Using user2
4010+ requestFileAccessResponse = UtilIT .requestFileAccess (fileId1 .toString (), apiToken2 , null );
4011+ assertEquals (200 , requestFileAccessResponse .getStatusCode ());
4012+ grantFileAccessResponse = UtilIT .grantFileAccess (fileId1 .toString (), "@" + username2 , ownerApiToken );
4013+ assertEquals (200 , grantFileAccessResponse .getStatusCode ());
4014+ // Modify guestbookResponse excluding email to show that the email remains unchanged
4015+ guestbookResponse = guestbookResponse .replace ("\" guestbookResponse\" : {" ,
4016+ "\" guestbookResponse\" : { \" name\" :\" My Name\" , \" position\" :\" My Position\" , \" institution\" :\" My Institution\" ," );
4017+ downloadResponse = UtilIT .getDownloadFileUrlWithGuestbookResponse (fileId1 , apiToken2 , guestbookResponse , true );
4018+ downloadResponse .prettyPrint ();
4019+ downloadResponse .then ().assertThat ()
4020+ .statusCode (OK .getStatusCode ());
4021+ Response guestbookResponses = UtilIT .getGuestbookResponses (dataverseAlias , guestbook .getId (), ownerApiToken );
4022+ assertTrue (guestbookResponses .prettyPrint ().contains ("My Name," + user2Email + ",My Institution,My Position" ));
40004023 }
40014024
40024025 @ Test
@@ -4045,7 +4068,5 @@ public void testDownloadFileWithSignedUrl() throws IOException, JsonParseExcepti
40454068 downloadResponse .prettyPrint ();
40464069 downloadResponse .then ().assertThat ()
40474070 .statusCode (OK .getStatusCode ());
4048- String signedUrl = UtilIT .getSignedUrlFromResponse (downloadResponse );
4049-
40504071 }
40514072}
0 commit comments