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 ro...@apache.org on 2018/01/17 13:28:09 UTC
[3/9] james-project git commit: JAMES-2286 more tests for remove
JAMES-2286 more tests for remove
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/04c301f4
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/04c301f4
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/04c301f4
Branch: refs/heads/master
Commit: 04c301f4066f12e47ce24f95ecbd76c8056e4d26
Parents: 409dd0d
Author: benwa <bt...@linagora.com>
Authored: Mon Jan 15 10:08:31 2018 +0700
Committer: Matthieu Baechler <ma...@apache.org>
Committed: Tue Jan 16 16:34:46 2018 +0100
----------------------------------------------------------------------
.../mailrepository/MailRepositoryContract.java | 85 ++++++++++++++++++++
1 file changed, 85 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/04c301f4/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
----------------------------------------------------------------------
diff --git a/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java b/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
index 92cd111..1a82191 100644
--- a/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
+++ b/server/mailrepository/mailrepository-api/src/test/java/org/apache/james/mailrepository/MailRepositoryContract.java
@@ -116,6 +116,91 @@ public interface MailRepositoryContract {
}
@Test
+ default void retrieveShouldReturnNullWhenKeyWasRemoved() throws Exception {
+ MailRepository testee = retrieveRepository();
+ String key = "mail1";
+ testee.store(createMail(key));
+
+ testee.remove(key);
+
+ assertThat(retrieveRepository().list()).doesNotContain(key);
+ assertThat(retrieveRepository().retrieve(key)).isNull();
+ }
+
+ @Test
+ default void removeShouldnotAffectUnrelatedMails() throws Exception {
+ MailRepository testee = retrieveRepository();
+ String key1 = "mail1";
+ testee.store(createMail(key1));
+ String key2 = "mail2";
+ testee.store(createMail(key2));
+
+ testee.remove(key1);
+
+ assertThat(retrieveRepository().list()).contains(key2);
+ }
+
+ @Test
+ default void removedMailsShouldNotBeListed() throws Exception {
+ MailRepository testee = retrieveRepository();
+
+ String key1 = "mail1";
+ String key2 = "mail2";
+ String key3 = "mail3";
+ Mail mail1 = createMail(key1);
+ Mail mail2 = createMail(key2);
+ Mail mail3 = createMail(key3);
+ retrieveRepository().store(mail1);
+ retrieveRepository().store(mail2);
+ retrieveRepository().store(mail3);
+
+ testee.remove(ImmutableList.of(mail1, mail3));
+
+ assertThat(retrieveRepository().list())
+ .contains(key2)
+ .doesNotContain(key1, key3);
+ }
+
+ @Test
+ default void removedMailShouldNotBeListed() throws Exception {
+ MailRepository testee = retrieveRepository();
+
+ String key1 = "mail1";
+ String key2 = "mail2";
+ String key3 = "mail3";
+ Mail mail1 = createMail(key1);
+ Mail mail2 = createMail(key2);
+ Mail mail3 = createMail(key3);
+ retrieveRepository().store(mail1);
+ retrieveRepository().store(mail2);
+ retrieveRepository().store(mail3);
+
+ testee.remove(mail2);
+
+ assertThat(retrieveRepository().list())
+ .contains(key1, key3)
+ .doesNotContain(key2);
+ }
+
+ @Test
+ default void removeShouldHaveNoEffectForUnknownMails() throws Exception {
+ MailRepository testee = retrieveRepository();
+
+ testee.remove(ImmutableList.of(createMail("unknown")));
+
+ assertThat(retrieveRepository().list()).isEmpty();
+ }
+
+ @Test
+ default void removeShouldHaveNoEffectForUnknownMail() throws Exception {
+ MailRepository testee = retrieveRepository();
+
+ testee.remove(createMail("unknown"));
+
+ assertThat(retrieveRepository().list()).isEmpty();
+ }
+
+ @Test
default void listShouldReturnStoredMailsKeys() throws Exception {
MailRepository testee = retrieveRepository();
String key1 = "mail1";
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org