JAMES-2169 Add a test checking ADMIN can read sharedWith JMAP Mailboxes property


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/282030dd
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/282030dd
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/282030dd

Branch: refs/heads/master
Commit: 282030ddb4c930fd4b07933e46e5de06faf84a82
Parents: 0f5a0f2
Author: benwa <[email protected]>
Authored: Mon Oct 2 10:10:06 2017 +0700
Committer: benwa <[email protected]>
Committed: Wed Oct 4 16:20:58 2017 +0700

----------------------------------------------------------------------
 .../integration/GetMailboxesMethodTest.java     | 24 +++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/282030dd/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
----------------------------------------------------------------------
diff --git 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
index 7c49289..a8a434e 100644
--- 
a/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
+++ 
b/server/protocols/jmap-integration-testing/jmap-integration-testing-common/src/test/java/org/apache/james/jmap/methods/integration/GetMailboxesMethodTest.java
@@ -508,7 +508,7 @@ public abstract class GetMailboxesMethodTest {
     }
 
     @Test
-    public void getMailboxesShouldReturnMailboxesWhenShared() throws Exception 
{
+    public void 
getMailboxesShouldReturnMailboxesWithFilteredSharedWithWhenShared() throws 
Exception {
         String mailboxName = "name";
         MailboxId bobMailbox = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, bob, mailboxName);
         MailboxPath bobMailboxPath = MailboxPath.forUser(bob, mailboxName);
@@ -531,5 +531,27 @@ public abstract class GetMailboxesMethodTest {
         assertThat(sharedWith).containsOnlyKeys(alice);
     }
 
+    @Test
+    public void 
getMailboxesShouldReturnMailboxesWithFullSharedWithWhenHasAdminRight() throws 
Exception {
+        String mailboxName = "name";
+        MailboxId bobMailbox = 
mailboxProbe.createMailbox(MailboxConstants.USER_NAMESPACE, bob, mailboxName);
+        MailboxPath bobMailboxPath = MailboxPath.forUser(bob, mailboxName);
+        aclProbe.replaceRights(bobMailboxPath, alice, new 
Rfc4314Rights(Right.Read, Right.Administer));
+        aclProbe.replaceRights(bobMailboxPath, cedric, new 
Rfc4314Rights(Right.Read));
 
+        Map<String, String> sharedWith = given()
+            .header("Authorization", accessToken.serialize())
+            .body("[[\"getMailboxes\", {\"ids\": [\"" + bobMailbox.serialize() 
+ "\"]}, \"#0\"]]")
+        .when()
+            .post("/jmap")
+        .then()
+            .statusCode(200)
+            .body(NAME, equalTo("mailboxes"))
+            .body(ARGUMENTS + ".list.name", hasSize(1))
+        .extract()
+            .jsonPath()
+            .get(FIRST_MAILBOX + ".sharedWith");
+
+        assertThat(sharedWith).containsOnlyKeys(alice, cedric);
+    }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to