You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2018/05/10 02:31:19 UTC
[12/15] james-project git commit: MAILBOX-333 Demonstrate a bug upon
unlimited quotas exceeding a threshold
MAILBOX-333 Demonstrate a bug upon unlimited quotas exceeding a threshold
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/d11d5d51
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/d11d5d51
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/d11d5d51
Branch: refs/heads/master
Commit: d11d5d517923258ddc2926955af7fa406701e350
Parents: ae9a8e6
Author: benwa <bt...@linagora.com>
Authored: Wed May 9 10:13:36 2018 +0700
Committer: benwa <bt...@linagora.com>
Committed: Thu May 10 09:24:27 2018 +0700
----------------------------------------------------------------------
.../subscribers/QuotaThresholdNoticeTest.java | 22 ++++++++++++++++++++
.../quota/model/QuotaThresholdFixture.java | 5 +++++
2 files changed, 27 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/d11d5d51/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/subscribers/QuotaThresholdNoticeTest.java
----------------------------------------------------------------------
diff --git a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/subscribers/QuotaThresholdNoticeTest.java b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/subscribers/QuotaThresholdNoticeTest.java
index 03c2ea2..b656cf0 100644
--- a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/subscribers/QuotaThresholdNoticeTest.java
+++ b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/mailing/subscribers/QuotaThresholdNoticeTest.java
@@ -34,6 +34,7 @@ import org.apache.james.mailbox.quota.model.HistoryEvolution;
import org.apache.james.mailbox.quota.model.QuotaThresholdChange;
import org.apache.james.mailbox.quota.model.QuotaThresholdFixture.Quotas.Counts;
import org.apache.james.mailbox.quota.model.QuotaThresholdFixture.Quotas.Sizes;
+import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import nl.jqno.equalsverifier.EqualsVerifier;
@@ -199,4 +200,25 @@ class QuotaThresholdNoticeTest {
"You need to be aware that actions leading to exceeded quotas will be denied. This will result in a degraded service.\n" +
"To mitigate this issue you might reach your administrator in order to increase your configured quota. You might also delete some non important emails.");
}
+
+ @Disabled
+ @Test
+ void generateReportShouldNotFailWhenUnlimitedQuotaExceedsAThreshold() {
+ QuotaThresholdChange countThresholdChange = new QuotaThresholdChange(_80, NOW);
+
+ assertThat(QuotaThresholdNotice.builder()
+ .sizeQuota(Sizes._82_PERCENT)
+ .countQuota(Counts._UNLIMITED)
+ .countThreshold(HistoryEvolution.higherThresholdReached(countThresholdChange, NotAlreadyReachedDuringGracePeriod))
+ .build()
+ .get()
+ .generateReport())
+ .isEqualTo("You receive this email because you recently exceeded a threshold related to the quotas of your email account.\n" +
+ "\n" +
+ "You currently occupy more than 80 % of the total message count allocated to you.\n" +
+ "You currently have 92 messages on a total of 100 allowed for you.\n" +
+ "\n" +
+ "You need to be aware that actions leading to exceeded quotas will be denied. This will result in a degraded service.\n" +
+ "To mitigate this issue you might reach your administrator in order to increase your configured quota. You might also delete some non important emails.");
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/james-project/blob/d11d5d51/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/model/QuotaThresholdFixture.java
----------------------------------------------------------------------
diff --git a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/model/QuotaThresholdFixture.java b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/model/QuotaThresholdFixture.java
index 7445fb7..fc32afa 100644
--- a/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/model/QuotaThresholdFixture.java
+++ b/mailbox/plugin/quota-mailing/src/test/java/org/apache/james/mailbox/quota/model/QuotaThresholdFixture.java
@@ -77,6 +77,11 @@ public interface QuotaThresholdFixture {
.used(QuotaCount.count(92))
.computedLimit(QuotaCount.count(100))
.build();
+
+ Quota<QuotaCount> _UNLIMITED = Quota.<QuotaCount>builder()
+ .used(QuotaCount.count(92))
+ .computedLimit(QuotaCount.unlimited())
+ .build();
}
interface Sizes {
Quota<QuotaSize> _30_PERCENT = Quota.<QuotaSize>builder()
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org