This is an automated email from the ASF dual-hosted git repository.
chibenwa pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
The following commit(s) were added to refs/heads/master by this push:
new 291bce33a7 [BUILD] MailboxGetMethodContract: isolate using different
users (#3038)
291bce33a7 is described below
commit 291bce33a787522bdfa35ba7c27b5fd780606e80
Author: Trần Hồng Quân <[email protected]>
AuthorDate: Fri May 15 19:12:10 2026 +0700
[BUILD] MailboxGetMethodContract: isolate using different users (#3038)
---
.../DistributedMailboxGetMethodTest.java | 2 +-
.../contract/MailboxGetMethodContract.scala | 309 ++++++++++++---------
.../rfc8621/memory/MemoryMailboxGetMethodTest.java | 2 +-
.../postgres/PostgresMailboxGetMethodTest.java | 2 +-
4 files changed, 177 insertions(+), 138 deletions(-)
diff --git
a/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/distributed/DistributedMailboxGetMethodTest.java
b/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/distributed/DistributedMailboxGetMethodTest.java
index c254b360c3..7e4154bc1f 100644
---
a/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/distributed/DistributedMailboxGetMethodTest.java
+++
b/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/distributed/DistributedMailboxGetMethodTest.java
@@ -25,7 +25,7 @@ import org.apache.james.mailbox.model.MailboxId;
import com.datastax.oss.driver.api.core.uuid.Uuids;
-public class DistributedMailboxGetMethodTest extends DistributedBase
implements MailboxGetMethodContract {
+public class DistributedMailboxGetMethodTest extends PerClassDistributedBase
implements MailboxGetMethodContract {
@Override
public MailboxId randomMailboxId() {
return CassandraId.of(Uuids.timeBased());
diff --git
a/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/MailboxGetMethodContract.scala
b/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/MailboxGetMethodContract.scala
index 9d5d142ee2..5485b9227c 100644
---
a/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/MailboxGetMethodContract.scala
+++
b/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/MailboxGetMethodContract.scala
@@ -20,8 +20,10 @@ package org.apache.james.jmap.rfc8621.contract
import java.io.ByteArrayInputStream
import java.nio.charset.StandardCharsets
-import java.util.Date
+import java.util.concurrent.atomic.AtomicReference
+import java.util.{Date, UUID}
+import com.google.common.hash.Hashing
import io.netty.handler.codec.http.HttpHeaderNames.ACCEPT
import io.restassured.RestAssured._
import io.restassured.http.ContentType.JSON
@@ -30,6 +32,7 @@ import
net.javacrumbs.jsonunit.assertj.JsonAssertions.assertThatJson
import net.javacrumbs.jsonunit.core.Option
import org.apache.http.HttpStatus.SC_OK
import org.apache.james.GuiceJamesServer
+import org.apache.james.core.Username
import org.apache.james.core.quota.{QuotaCountLimit, QuotaSizeLimit}
import org.apache.james.jmap.core.ResponseObject.SESSION_STATE
import org.apache.james.jmap.http.UserCredential
@@ -48,6 +51,10 @@ import org.junit.jupiter.api.{BeforeEach, Tag, Test}
import scala.jdk.CollectionConverters._
object MailboxGetMethodContract {
+ case class TestContext(bobUsername: Username, bobAccountId: String,
+ andreUsername: Username)
+ val currentContext: AtomicReference[TestContext] = new
AtomicReference[TestContext]()
+
private val ARGUMENTS: String = "methodResponses[0][1]"
private val FIRST_MAILBOX: String = ARGUMENTS + ".list[0]"
private val SECOND_MAILBOX: String = ARGUMENTS + ".list[1]"
@@ -60,18 +67,50 @@ object MailboxGetMethodContract {
trait MailboxGetMethodContract {
import MailboxGetMethodContract._
+ def bobUsername: Username =
MailboxGetMethodContract.currentContext.get().bobUsername
+ def bobAccountId: String =
MailboxGetMethodContract.currentContext.get().bobAccountId
+ def andreUsername: Username =
MailboxGetMethodContract.currentContext.get().andreUsername
+ def bobPrivateQuotaRoot: String = s"#private&${bobUsername.asString}"
+
+ def getAllMailboxesRequest: String =
+ s"""{
+ | "using": [
+ | "urn:ietf:params:jmap:core",
+ | "urn:ietf:params:jmap:mail"],
+ | "methodCalls": [[
+ | "Mailbox/get",
+ | {
+ | "accountId": "$bobAccountId",
+ | "ids": null
+ | },
+ | "c1"]]
+ |}""".stripMargin
+
def randomMailboxId: MailboxId
@BeforeEach
def setUp(server: GuiceJamesServer): Unit = {
+ val uniqueSuffix = UUID.randomUUID().toString.replace("-", "").take(8)
+ val bob = Username.fromLocalPartWithDomain(s"bob$uniqueSuffix", DOMAIN)
+ val andre = Username.fromLocalPartWithDomain(s"andre$uniqueSuffix", DOMAIN)
+ MailboxGetMethodContract.currentContext.set(TestContext(
+ bobUsername = bob,
+ bobAccountId = Hashing.sha256().hashString(bob.asString(),
StandardCharsets.UTF_8).toString,
+ andreUsername = andre))
+
server.getProbe(classOf[DataProbeImpl])
.fluent
.addDomain(DOMAIN.asString)
- .addUser(BOB.asString, BOB_PASSWORD)
- .addUser(ANDRE.asString, ANDRE_PASSWORD)
+ .addUser(bob.asString, BOB_PASSWORD)
+ .addUser(andre.asString(), ANDRE_PASSWORD)
+
+ server.getProbe(classOf[QuotaProbesImpl])
+ .setGlobalMaxStorage(QuotaSizeLimit.unlimited())
+ server.getProbe(classOf[QuotaProbesImpl])
+ .setGlobalMaxMessageCount(QuotaCountLimit.unlimited())
requestSpecification = baseRequestSpecBuilder(server)
- .setAuth(authScheme(UserCredential(BOB, BOB_PASSWORD)))
+ .setAuth(authScheme(UserCredential(bob, BOB_PASSWORD)))
.build
}
@@ -119,7 +158,7 @@ trait MailboxGetMethodContract {
@Test
def
getMailboxesShouldIncludeRightsAndNamespaceIfSharesCapabilityIsUsed(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -132,7 +171,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -154,7 +193,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -189,7 +228,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldIncludeQuotasIfQuotaCapabilityIsUsed(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -202,7 +241,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -224,7 +263,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -247,7 +286,7 @@ trait MailboxGetMethodContract {
| },
| "isSubscribed": false,
| "quotas": {
- | "#private&[email protected]": {
+ | "$bobPrivateQuotaRoot": {
| "Storage": { "used": 0},
| "Message": {"used": 0}
| }
@@ -263,7 +302,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldIncludeBothQuotasAndRightsIfUsed(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -277,7 +316,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -299,7 +338,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -324,7 +363,7 @@ trait MailboxGetMethodContract {
| "namespace": "Personal",
| "rights": {},
| "quotas": {
- | "#private&[email protected]": {
+ | "$bobPrivateQuotaRoot": {
| "Storage": { "used": 0},
| "Message": {"used": 0}
| }
@@ -340,7 +379,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldReturnAllPropertiesWhenNull(server: GuiceJamesServer):
Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -352,7 +391,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "properties": null,
| "ids": ["${mailboxId}"]
| },
@@ -375,7 +414,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -408,7 +447,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldReturnIdWhenNoPropertiesRequested(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -420,7 +459,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "properties": [],
| "ids": ["${mailboxId}"]
| },
@@ -443,7 +482,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}"
@@ -458,7 +497,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldReturnOnlyNameAndIdWhenPropertiesRequested(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -470,7 +509,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "properties": ["id", "name"],
| "ids": ["${mailboxId}"]
| },
@@ -493,7 +532,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -509,7 +548,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldAlwaysReturnIdEvenIfNotRequested(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -521,7 +560,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "properties": ["name"],
| "ids": ["${mailboxId}"]
| },
@@ -544,7 +583,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -560,7 +599,7 @@ trait MailboxGetMethodContract {
@Test
def
getMailboxesShouldNotIncludeNamespaceIfSharesCapabilityIsUsedAndNamespaceIsNotRequested(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -573,7 +612,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "properties": ["id", "name", "rights"],
| "ids": ["${mailboxId}"]
| },
@@ -596,7 +635,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -621,7 +660,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["invalid"]
| },
| "c1"]]
@@ -643,7 +682,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [],
| "notFound": ["invalid"]
| },
@@ -662,7 +701,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["#C42"]
| },
| "c1"]]
@@ -684,7 +723,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [],
| "notFound": ["#C42"]
| },
@@ -695,7 +734,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldReturnInvalidArgumentsErrorWhenInvalidProperty(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -707,7 +746,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "properties": ["invalidProperty"],
| "ids": ["${mailboxId}"]
| },
@@ -739,14 +778,14 @@ trait MailboxGetMethodContract {
def getMailboxesShouldReturnAllExistingMailboxes(server: GuiceJamesServer):
Unit = {
val customMailbox: String = "custom"
server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, customMailbox))
+ .createMailbox(MailboxPath.forUser(bobUsername, customMailbox))
.serialize
val expectedList = DefaultMailboxes.DEFAULT_MAILBOXES.asScala ++
List(customMailbox)
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
- .body(GET_ALL_MAILBOXES_REQUEST)
+ .body(getAllMailboxesRequest)
.when
.post
.`then`
@@ -759,11 +798,11 @@ trait MailboxGetMethodContract {
def getMailboxesShouldReturnOnlyMailboxesOfCurrentUser(server:
GuiceJamesServer): Unit = {
val andreMailbox: String = "andrecustom"
server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(ANDRE, andreMailbox))
+ .createMailbox(MailboxPath.forUser(andreUsername, andreMailbox))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
- .body(GET_ALL_MAILBOXES_REQUEST)
+ .body(getAllMailboxesRequest)
.when
.post
.`then`
@@ -779,13 +818,13 @@ trait MailboxGetMethodContract {
val targetUser2: String = "touser2@" + DOMAIN.asString
val mailboxName: String = "myMailbox"
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, mailboxName))
+ .createMailbox(MailboxPath.forUser(bobUsername, mailboxName))
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(MailboxPath.forUser(BOB, mailboxName), targetUser1, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Administer))
+ .replaceRights(MailboxPath.forUser(bobUsername, mailboxName),
targetUser1, new MailboxACL.Rfc4314Rights(Right.Lookup, Right.Administer))
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(MailboxPath.forUser(BOB, mailboxName), targetUser2, new
MailboxACL.Rfc4314Rights(Right.Read, Right.Lookup))
+ .replaceRights(MailboxPath.forUser(bobUsername, mailboxName),
targetUser2, new MailboxACL.Rfc4314Rights(Right.Read, Right.Lookup))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -797,7 +836,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -817,10 +856,10 @@ trait MailboxGetMethodContract {
val targetUser2: String = "touser2@" + DOMAIN.asString
val mailboxName: String = "myMailbox"
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, mailboxName))
+ .createMailbox(MailboxPath.forUser(bobUsername, mailboxName))
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(MailboxPath.forUser(BOB, mailboxName), targetUser2, new
MailboxACL.Rfc4314Rights(Right.Read, Right.Lookup, Right.DeleteMailbox))
+ .replaceRights(MailboxPath.forUser(bobUsername, mailboxName),
targetUser2, new MailboxACL.Rfc4314Rights(Right.Read, Right.Lookup,
Right.DeleteMailbox))
val response: String = `given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -832,7 +871,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -854,13 +893,13 @@ trait MailboxGetMethodContract {
@Test
def myRightsShouldReturnCorrectMayDeleteWhenHasRightInSharedMailbox(server:
GuiceJamesServer): Unit = {
val sharedMailboxName = "AndreShared"
- val andreMailboxPath = MailboxPath.forUser(ANDRE, sharedMailboxName)
+ val andreMailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val andreMailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.DeleteMailbox))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.DeleteMailbox))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -872,7 +911,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${andreMailboxId}"]
| },
| "c1"]]
@@ -888,13 +927,13 @@ trait MailboxGetMethodContract {
@Tag(CategoryTags.BASIC_FEATURE)
def getMailboxesShouldReturnDelegatedNamespaceWhenSharedMailbox(server:
GuiceJamesServer): Unit = {
val sharedMailboxName = "AndreShared"
- val andreMailboxPath = MailboxPath.forUser(ANDRE, sharedMailboxName)
+ val andreMailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -906,7 +945,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -917,21 +956,21 @@ trait MailboxGetMethodContract {
.statusCode(SC_OK)
.body(s"$ARGUMENTS.list", hasSize(1))
.body(s"$FIRST_MAILBOX.name", equalTo(sharedMailboxName))
- .body(s"$FIRST_MAILBOX.namespace",
equalTo(s"Delegated[${ANDRE.asString}]"))
- .body(s"$FIRST_MAILBOX.rights['${BOB.asString}']", contains(LOOKUP))
+ .body(s"$FIRST_MAILBOX.namespace",
equalTo(s"Delegated[${andreUsername.asString}]"))
+ .body(s"$FIRST_MAILBOX.rights['${bobUsername.asString}']",
contains(LOOKUP))
}
@Test
@Tag(CategoryTags.BASIC_FEATURE)
def getMailboxesShouldReturnNotFoundWhenSharedMailboxAndNoExtension(server:
GuiceJamesServer): Unit = {
val sharedMailboxName = "AndreShared"
- val andreMailboxPath = MailboxPath.forUser(ANDRE, sharedMailboxName)
+ val andreMailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -942,7 +981,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -958,12 +997,12 @@ trait MailboxGetMethodContract {
@Test
def
getMailboxesShouldNotIncludeDelegatedMailboxesWhenExtensionNotPresent(server:
GuiceJamesServer): Unit = {
val sharedMailboxName = "AndreShared"
- val andreMailboxPath = MailboxPath.forUser(ANDRE, sharedMailboxName)
+ val andreMailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -974,7 +1013,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6"
+ | "accountId": "$bobAccountId"
| },
| "c1"]]
|}""".stripMargin)
@@ -991,13 +1030,13 @@ trait MailboxGetMethodContract {
def getMailboxesShouldNotReturnOtherPeopleRightsAsSharee(server:
GuiceJamesServer): Unit = {
val toUser1: String = "touser1@" + DOMAIN.asString
val sharedMailboxName: String = "AndreShared"
- val andreMailboxPath: MailboxPath = MailboxPath.forUser(ANDRE,
sharedMailboxName)
+ val andreMailboxPath: MailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read))
server.getProbe(classOf[ACLProbeImpl])
.replaceRights(andreMailboxPath, toUser1, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read))
@@ -1011,7 +1050,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1022,7 +1061,7 @@ trait MailboxGetMethodContract {
.statusCode(SC_OK)
.body(s"$ARGUMENTS.list", hasSize(1))
.body(s"$FIRST_MAILBOX.name", equalTo(sharedMailboxName))
- .body(s"$FIRST_MAILBOX.rights['${BOB.asString}']", contains(LOOKUP,
READ))
+ .body(s"$FIRST_MAILBOX.rights['${bobUsername.asString}']",
contains(LOOKUP, READ))
.body(s"$FIRST_MAILBOX.rights['$toUser1']", nullValue)
}
@@ -1031,13 +1070,13 @@ trait MailboxGetMethodContract {
def getMailboxesShouldNotReturnAnyoneRightsAsSharee(server:
GuiceJamesServer): Unit = {
val toUser1: String = "touser1@" + DOMAIN.asString
val sharedMailboxName: String = "AndreShared"
- val andreMailboxPath: MailboxPath = MailboxPath.forUser(ANDRE,
sharedMailboxName)
+ val andreMailboxPath: MailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
server.getProbe(classOf[ACLProbeImpl])
.replaceRights(andreMailboxPath, toUser1, new
MailboxACL.Rfc4314Rights(Right.Lookup))
server.getProbe(classOf[ACLProbeImpl])
@@ -1053,7 +1092,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1064,7 +1103,7 @@ trait MailboxGetMethodContract {
.statusCode(SC_OK)
.body(s"$ARGUMENTS.list", hasSize(1))
.body(s"$FIRST_MAILBOX.name", equalTo(sharedMailboxName))
- .body(s"$FIRST_MAILBOX.rights['${BOB.asString}']", contains(LOOKUP))
+ .body(s"$FIRST_MAILBOX.rights['${bobUsername.asString}']",
contains(LOOKUP))
.body(s"$FIRST_MAILBOX.rights['$toUser1']", nullValue)
.body(s"$FIRST_MAILBOX.rights['anyone']", nullValue)
}
@@ -1073,13 +1112,13 @@ trait MailboxGetMethodContract {
def
getMailboxesShouldReturnPartiallyAllowedMayPropertiesWhenDelegated(server:
GuiceJamesServer): Unit = {
val toUser1: String = "touser1@" + DOMAIN.asString
val sharedMailboxName: String = "AndreShared"
- val andreMailboxPath: MailboxPath = MailboxPath.forUser(ANDRE,
sharedMailboxName)
+ val andreMailboxPath: MailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read))
server.getProbe(classOf[ACLProbeImpl])
.replaceRights(andreMailboxPath, toUser1, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read))
@@ -1093,7 +1132,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1118,13 +1157,13 @@ trait MailboxGetMethodContract {
@Test
def
getMailboxesShouldReturnMayCreateChildTrueWhenDelegatedWithCreateMailboxRight(server:
GuiceJamesServer): Unit = {
val sharedMailboxName: String = "AndreShared"
- val andreMailboxPath: MailboxPath = MailboxPath.forUser(ANDRE,
sharedMailboxName)
+ val andreMailboxPath: MailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.CreateMailbox))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.CreateMailbox))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1136,7 +1175,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1153,13 +1192,13 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldReturnMaySubmitTrueWhenDelegatedWithPostRight(server:
GuiceJamesServer): Unit = {
val sharedMailboxName: String = "AndreShared"
- val andreMailboxPath: MailboxPath = MailboxPath.forUser(ANDRE,
sharedMailboxName)
+ val andreMailboxPath: MailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Post))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Post))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1171,7 +1210,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1188,13 +1227,13 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldIncludeCreateMailboxRightInRightsFieldWhenSet(server:
GuiceJamesServer): Unit = {
val sharedMailboxName: String = "AndreShared"
- val andreMailboxPath: MailboxPath = MailboxPath.forUser(ANDRE,
sharedMailboxName)
+ val andreMailboxPath: MailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read, Right.CreateMailbox))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup, Right.Read, Right.CreateMailbox))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1206,7 +1245,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1216,7 +1255,7 @@ trait MailboxGetMethodContract {
.`then`
.statusCode(SC_OK)
.body(s"$ARGUMENTS.list", hasSize(1))
- .body(s"$FIRST_MAILBOX.rights['${BOB.asString}']", containsInAnyOrder(
+ .body(s"$FIRST_MAILBOX.rights['${bobUsername.asString}']",
containsInAnyOrder(
Right.Lookup.asCharacter.toString,
Right.Read.asCharacter.toString,
Right.CreateMailbox.asCharacter.toString))
@@ -1226,13 +1265,13 @@ trait MailboxGetMethodContract {
@Test
@Tag(CategoryTags.BASIC_FEATURE)
def getMailboxesShouldNotReturnInboxRoleToShareeWhenDelegatedInbox(server:
GuiceJamesServer): Unit = {
- val andreMailboxPath = MailboxPath.forUser(ANDRE, DefaultMailboxes.INBOX)
+ val andreMailboxPath = MailboxPath.forUser(andreUsername,
DefaultMailboxes.INBOX)
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1244,7 +1283,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1262,7 +1301,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldReturnCorrectMailboxRole(server: GuiceJamesServer):
Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.INBOX))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.INBOX))
.serialize
`given`
@@ -1275,7 +1314,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1293,7 +1332,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesShouldReturnCorrectMailboxRoleForJunk(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.SPAM))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.SPAM))
.serialize
`given`
@@ -1306,7 +1345,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1330,13 +1369,13 @@ trait MailboxGetMethodContract {
.build
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.INBOX))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.INBOX))
.serialize
server.getProbe(classOf[MailboxProbeImpl])
- .appendMessage(BOB.asString, MailboxPath.forUser(BOB,
DefaultMailboxes.INBOX), AppendCommand.from(message))
+ .appendMessage(bobUsername.asString, MailboxPath.forUser(bobUsername,
DefaultMailboxes.INBOX), AppendCommand.from(message))
server.getProbe(classOf[MailboxProbeImpl])
- .appendMessage(BOB.asString, MailboxPath.forUser(BOB,
DefaultMailboxes.INBOX),
+ .appendMessage(bobUsername.asString, MailboxPath.forUser(bobUsername,
DefaultMailboxes.INBOX),
new ByteArrayInputStream("Subject: test\r\n\r\ntestmail".getBytes()),
new Date(), false, new Flags(Flags.Flag.SEEN))
Thread.sleep(1000) //dirty fix for distributed integration test...
@@ -1351,7 +1390,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1362,10 +1401,10 @@ trait MailboxGetMethodContract {
.statusCode(SC_OK)
.body(s"$ARGUMENTS.list", hasSize(1))
.body(s"$FIRST_MAILBOX.name", equalTo(DefaultMailboxes.INBOX))
-
.body(s"$FIRST_MAILBOX.quotas['#private&[email protected]']['Storage'].used",
equalTo(110))
-
.body(s"$FIRST_MAILBOX.quotas['#private&[email protected]']['Storage'].max",
nullValue)
-
.body(s"$FIRST_MAILBOX.quotas['#private&[email protected]']['Message'].used",
equalTo(2))
-
.body(s"$FIRST_MAILBOX.quotas['#private&[email protected]']['Message'].max",
nullValue)
+ .body(s"$FIRST_MAILBOX.quotas['$bobPrivateQuotaRoot']['Storage'].used",
equalTo(110))
+ .body(s"$FIRST_MAILBOX.quotas['$bobPrivateQuotaRoot']['Storage'].max",
nullValue)
+ .body(s"$FIRST_MAILBOX.quotas['$bobPrivateQuotaRoot']['Message'].used",
equalTo(2))
+ .body(s"$FIRST_MAILBOX.quotas['$bobPrivateQuotaRoot']['Message'].max",
nullValue)
}
@Test
@@ -1376,7 +1415,7 @@ trait MailboxGetMethodContract {
.setGlobalMaxMessageCount(QuotaCountLimit.count(31))
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.INBOX))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.INBOX))
.serialize
`given`
@@ -1389,7 +1428,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1400,17 +1439,17 @@ trait MailboxGetMethodContract {
.statusCode(SC_OK)
.body(s"$ARGUMENTS.list", hasSize(1))
.body(s"$FIRST_MAILBOX.name", equalTo(DefaultMailboxes.INBOX))
-
.body(s"$FIRST_MAILBOX.quotas['#private&[email protected]']['Storage'].max",
equalTo(142))
-
.body(s"$FIRST_MAILBOX.quotas['#private&[email protected]']['Message'].max",
equalTo(31))
+ .body(s"$FIRST_MAILBOX.quotas['$bobPrivateQuotaRoot']['Storage'].max",
equalTo(142))
+ .body(s"$FIRST_MAILBOX.quotas['$bobPrivateQuotaRoot']['Message'].max",
equalTo(31))
}
@Test
def getMailboxesShouldReturnMailboxesInSorteredOrder(server:
GuiceJamesServer): Unit = {
val mailboxId1: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.TRASH))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.TRASH))
.serialize
val mailboxId2: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.INBOX))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.INBOX))
.serialize
`given`
@@ -1422,7 +1461,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId1}", "${mailboxId2}"]
| },
| "c1"]]
@@ -1443,7 +1482,7 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesByIdsShouldReturnCorrespondingMailbox(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -1457,7 +1496,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1479,7 +1518,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -1504,7 +1543,7 @@ trait MailboxGetMethodContract {
| "namespace": "Personal",
| "rights": {},
| "quotas": {
- | "#private&[email protected]": {
+ | "$bobPrivateQuotaRoot": {
| "Storage": { "used": 0},
| "Message": {"used": 0}
| }
@@ -1520,7 +1559,7 @@ trait MailboxGetMethodContract {
@Test
def
getMailboxesByIdsShouldReturnCorrespondingMailboxWithoutPropertiesFromNotProvidedCapabilities(server:
GuiceJamesServer): Unit = {
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val response: String = `given`
@@ -1532,7 +1571,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1554,7 +1593,7 @@ trait MailboxGetMethodContract {
| "methodResponses": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "list": [
| {
| "id": "${mailboxId}",
@@ -1588,10 +1627,10 @@ trait MailboxGetMethodContract {
def getMailboxesByIdsShouldReturnOnlyRequestedMailbox(server:
GuiceJamesServer): Unit = {
val mailboxName: String = "custom"
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "othercustom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "othercustom"))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1602,7 +1641,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["${mailboxId}"]
| },
| "c1"]]
@@ -1620,11 +1659,11 @@ trait MailboxGetMethodContract {
def getMailboxesByIdsShouldReturnBothFoundAndNotFound(server:
GuiceJamesServer): Unit = {
val mailboxName: String = "custom"
val mailboxId: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "custom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "custom"))
.serialize
val randomId = randomMailboxId.serialize()
server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, "othercustom"))
+ .createMailbox(MailboxPath.forUser(bobUsername, "othercustom"))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1635,7 +1674,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["$mailboxId", "$randomId"]
| },
| "c1"]]
@@ -1665,7 +1704,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["$randomId"]
| },
| "c1"]]
@@ -1682,10 +1721,10 @@ trait MailboxGetMethodContract {
@Test
def getMailboxesByIdsShouldReturnMailboxesInSortedOrder(server:
GuiceJamesServer): Unit = {
val mailboxId1: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.TRASH))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.TRASH))
.serialize
val mailboxId2: String = server.getProbe(classOf[MailboxProbeImpl])
- .createMailbox(MailboxPath.forUser(BOB, DefaultMailboxes.INBOX))
+ .createMailbox(MailboxPath.forUser(bobUsername, DefaultMailboxes.INBOX))
.serialize
`given`
@@ -1697,7 +1736,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["$mailboxId1", "$mailboxId2"]
| },
| "c1"]]
@@ -1726,7 +1765,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["$mailboxId"]
| },
| "c1"]]
@@ -1764,7 +1803,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": ["$mailboxId"]
| },
| "c1"]]
@@ -1794,7 +1833,7 @@ trait MailboxGetMethodContract {
@Test
def mailboxStateShouldBeTheLatestOne(server: GuiceJamesServer): Unit = {
val mailboxProbe: MailboxProbeImpl =
server.getProbe(classOf[MailboxProbeImpl])
- mailboxProbe.createMailbox(MailboxPath.inbox(BOB))
+ mailboxProbe.createMailbox(MailboxPath.inbox(bobUsername))
val response = `given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1804,14 +1843,14 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "ids": null,
| "properties": ["id"]
| },
| "c1"],[
| "Mailbox/changes",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "#sinceState": {
| "resultOf":"c1",
| "name":"Mailbox/get",
@@ -1835,7 +1874,7 @@ trait MailboxGetMethodContract {
.inPath("methodResponses[1][1]")
.isEqualTo(
s"""{
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
+ | "accountId": "$bobAccountId",
| "hasMoreChanges": false,
| "updatedProperties": null,
| "created": [],
@@ -1854,7 +1893,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6"
+ | "accountId": "$bobAccountId"
| },
| "c1"]]
|}""".stripMargin)
@@ -1865,12 +1904,12 @@ trait MailboxGetMethodContract {
.get("methodResponses[0][1].state")
val sharedMailboxName = "AndreShared"
- val andreMailboxPath = MailboxPath.forUser(ANDRE, sharedMailboxName)
+ val andreMailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1881,7 +1920,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6"
+ | "accountId": "$bobAccountId"
| },
| "c1"]]
|}""".stripMargin)
@@ -1902,7 +1941,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6"
+ | "accountId": "$bobAccountId"
| },
| "c1"]]
|}""".stripMargin)
@@ -1913,12 +1952,12 @@ trait MailboxGetMethodContract {
.get("methodResponses[0][1].state")
val sharedMailboxName = "AndreShared"
- val andreMailboxPath = MailboxPath.forUser(ANDRE, sharedMailboxName)
+ val andreMailboxPath = MailboxPath.forUser(andreUsername,
sharedMailboxName)
server.getProbe(classOf[MailboxProbeImpl])
.createMailbox(andreMailboxPath)
.serialize
server.getProbe(classOf[ACLProbeImpl])
- .replaceRights(andreMailboxPath, BOB.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
+ .replaceRights(andreMailboxPath, bobUsername.asString, new
MailboxACL.Rfc4314Rights(Right.Lookup))
`given`
.header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER)
@@ -1930,7 +1969,7 @@ trait MailboxGetMethodContract {
| "methodCalls": [[
| "Mailbox/get",
| {
- | "accountId":
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6"
+ | "accountId": "$bobAccountId"
| },
| "c1"]]
|}""".stripMargin)
diff --git
a/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/memory/MemoryMailboxGetMethodTest.java
b/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/memory/MemoryMailboxGetMethodTest.java
index cab0bebac8..20640c9819 100644
---
a/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/memory/MemoryMailboxGetMethodTest.java
+++
b/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/memory/MemoryMailboxGetMethodTest.java
@@ -25,7 +25,7 @@ import
org.apache.james.jmap.rfc8621.contract.MailboxGetMethodContract;
import org.apache.james.mailbox.inmemory.InMemoryId;
import org.apache.james.mailbox.model.MailboxId;
-public class MemoryMailboxGetMethodTest extends MemoryBase implements
MailboxGetMethodContract {
+public class MemoryMailboxGetMethodTest extends PerClassMemoryBase implements
MailboxGetMethodContract {
@Override
public MailboxId randomMailboxId() {
return InMemoryId.of(ThreadLocalRandom.current().nextInt(100000) +
100);
diff --git
a/server/protocols/jmap-rfc-8621-integration-tests/postgres-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/postgres/PostgresMailboxGetMethodTest.java
b/server/protocols/jmap-rfc-8621-integration-tests/postgres-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/postgres/PostgresMailboxGetMethodTest.java
index 8632344dc4..2c7a8e3a86 100644
---
a/server/protocols/jmap-rfc-8621-integration-tests/postgres-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/postgres/PostgresMailboxGetMethodTest.java
+++
b/server/protocols/jmap-rfc-8621-integration-tests/postgres-jmap-rfc-8621-integration-tests/src/test/java/org/apache/james/jmap/rfc8621/postgres/PostgresMailboxGetMethodTest.java
@@ -23,7 +23,7 @@ import
org.apache.james.jmap.rfc8621.contract.MailboxGetMethodContract;
import org.apache.james.mailbox.model.MailboxId;
import org.apache.james.mailbox.postgres.PostgresMailboxId;
-public class PostgresMailboxGetMethodTest extends PostgresBase implements
MailboxGetMethodContract {
+public class PostgresMailboxGetMethodTest extends PerClassPostgresBase
implements MailboxGetMethodContract {
@Override
public MailboxId randomMailboxId() {
return PostgresMailboxId.generate();
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]