REPO-2983: allowableOperationsOnTarget (shared links) - extra tests

Added some extra assertions so that allowableOperationsOnTarget follows
the same "include" behaviour as for allowableOperations.
This commit is contained in:
Matt Ward
2017-11-16 11:41:36 +00:00
parent 6b7e9211f9
commit acd1ae2fac

View File

@@ -225,6 +225,7 @@ public class SharedLinkApiTest extends AbstractBaseApiTest
assertEquals(fileName1, resp.getName()); assertEquals(fileName1, resp.getName());
assertEquals(d1Id, resp.getNodeId()); assertEquals(d1Id, resp.getNodeId());
assertNull(resp.getAllowableOperations()); // include is ignored assertNull(resp.getAllowableOperations()); // include is ignored
assertNull(resp.getAllowableOperationsOnTarget()); // include is ignored
assertNull(resp.getModifiedByUser().getId()); // userId not returned assertNull(resp.getModifiedByUser().getId()); // userId not returned
assertEquals(UserInfo.getTestDisplayName(user1), resp.getModifiedByUser().getDisplayName()); assertEquals(UserInfo.getTestDisplayName(user1), resp.getModifiedByUser().getDisplayName());
@@ -240,6 +241,8 @@ public class SharedLinkApiTest extends AbstractBaseApiTest
assertEquals(fileName1, resp.getName()); assertEquals(fileName1, resp.getName());
assertEquals(d1Id, resp.getNodeId()); assertEquals(d1Id, resp.getNodeId());
assertNull(resp.getAllowableOperations()); // include is ignored assertNull(resp.getAllowableOperations()); // include is ignored
assertNull(resp.getAllowableOperationsOnTarget()); // include is ignored
assertNull(resp.getModifiedByUser().getId()); // userId not returned assertNull(resp.getModifiedByUser().getId()); // userId not returned
assertEquals(UserInfo.getTestDisplayName(user1), resp.getModifiedByUser().getDisplayName()); assertEquals(UserInfo.getTestDisplayName(user1), resp.getModifiedByUser().getDisplayName());
@@ -251,6 +254,7 @@ public class SharedLinkApiTest extends AbstractBaseApiTest
response = getSingle(QuickShareLinkEntityResource.class, shared1Id, null, 200); response = getSingle(QuickShareLinkEntityResource.class, shared1Id, null, 200);
resp = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), QuickShareLink.class); resp = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), QuickShareLink.class);
assertNull(resp.getAllowableOperations()); assertNull(resp.getAllowableOperations());
assertNull(resp.getAllowableOperationsOnTarget());
setRequestContext(null); setRequestContext(null);
@@ -263,6 +267,8 @@ public class SharedLinkApiTest extends AbstractBaseApiTest
assertEquals(fileName1, resp.getName()); assertEquals(fileName1, resp.getName());
assertEquals(d1Id, resp.getNodeId()); assertEquals(d1Id, resp.getNodeId());
assertNull(resp.getAllowableOperations()); // include is ignored assertNull(resp.getAllowableOperations()); // include is ignored
assertNull(resp.getAllowableOperationsOnTarget()); // include is ignored
assertNull(resp.getModifiedByUser().getId()); // userId not returned assertNull(resp.getModifiedByUser().getId()); // userId not returned
assertEquals(UserInfo.getTestDisplayName(user1), resp.getModifiedByUser().getDisplayName()); assertEquals(UserInfo.getTestDisplayName(user1), resp.getModifiedByUser().getDisplayName());
@@ -779,6 +785,8 @@ public class SharedLinkApiTest extends AbstractBaseApiTest
assertEquals(fileName1, resp.getName()); assertEquals(fileName1, resp.getName());
assertEquals(d1Id, resp.getNodeId()); assertEquals(d1Id, resp.getNodeId());
assertNull(resp.getAllowableOperations()); // include is ignored assertNull(resp.getAllowableOperations()); // include is ignored
assertNull(resp.getAllowableOperationsOnTarget()); // include is ignored
// unauth access to file 1 content (via shared link) // unauth access to file 1 content (via shared link)
response = getSingle(QuickShareLinkEntityResource.class, shared1Id + "/content", null, 200); response = getSingle(QuickShareLinkEntityResource.class, shared1Id + "/content", null, 200);
@@ -1254,7 +1262,7 @@ public class SharedLinkApiTest extends AbstractBaseApiTest
// Check allowableOperationsOnTarget (i.e. for the actual file being shared) // Check allowableOperationsOnTarget (i.e. for the actual file being shared)
allowableOperations = quickShareLinkResponse.getAllowableOperationsOnTarget(); allowableOperations = quickShareLinkResponse.getAllowableOperationsOnTarget();
assertNotNull("'allowableOperationsOnTarget' should have been returned.", allowableOperations); assertNotNull("'allowableOperationsOnTarget' should have been returned.", allowableOperations);
Collection<?> expectedOps = Arrays.asList("delete", "update", "updatePermissions"); Collection<String> expectedOps = Arrays.asList("delete", "update", "updatePermissions");
assertTrue(allowableOperations.containsAll(expectedOps)); assertTrue(allowableOperations.containsAll(expectedOps));
assertEquals(expectedOps.size(), allowableOperations.size()); assertEquals(expectedOps.size(), allowableOperations.size());
assertEquals("Incorrect allowable operation.", "delete", allowableOperations.get(0)); assertEquals("Incorrect allowable operation.", "delete", allowableOperations.get(0));
@@ -1278,6 +1286,13 @@ public class SharedLinkApiTest extends AbstractBaseApiTest
assertNotNull("'allowableOperations' should have been returned.", operations); assertNotNull("'allowableOperations' should have been returned.", operations);
assertEquals("allowableOperations should only have 'Delete' as allowable operation.", 1, operations.size()); assertEquals("allowableOperations should only have 'Delete' as allowable operation.", 1, operations.size());
assertEquals("Incorrect allowable operation.", "delete", operations.get(0)); assertEquals("Incorrect allowable operation.", "delete", operations.get(0));
// Check allowableOperationsOnTarget (i.e. for the actual file being shared)
operations = sharedLink.getAllowableOperationsOnTarget();
assertNotNull("'allowableOperationsOnTarget' should have been returned.", operations);
assertTrue(operations.containsAll(expectedOps));
assertEquals(expectedOps.size(), operations.size());
assertEquals("Incorrect allowable operation.", "delete", operations.get(0));
}); });
} }