From ec3360400cea9de155f63fc19a13e529cc351094 Mon Sep 17 00:00:00 2001 From: Daniel Lublin Date: Tue, 9 Mar 2021 13:50:35 +0100 Subject: [PATCH] Assert that expected event is broadcasted --- .../AbstractAutoDeleteIntegrationTest.java | 22 +++++++++++++++++-- .../AutoDeleteBlogIntegrationTest.java | 2 ++ .../AutoDeleteForumIntegrationTest.java | 6 ++--- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/briar-core/src/test/java/org/briarproject/briar/sharing/AbstractAutoDeleteIntegrationTest.java b/briar-core/src/test/java/org/briarproject/briar/sharing/AbstractAutoDeleteIntegrationTest.java index 5a44d9d23..ec5d60da6 100644 --- a/briar-core/src/test/java/org/briarproject/briar/sharing/AbstractAutoDeleteIntegrationTest.java +++ b/briar-core/src/test/java/org/briarproject/briar/sharing/AbstractAutoDeleteIntegrationTest.java @@ -1,6 +1,8 @@ package org.briarproject.briar.sharing; import org.briarproject.bramble.api.sync.MessageId; +import org.briarproject.briar.api.autodelete.event.ConversationMessagesDeletedEvent; +import org.briarproject.briar.api.conversation.event.ConversationMessageReceivedEvent; import org.briarproject.briar.api.sharing.InvitationResponse; import org.briarproject.briar.api.sharing.Shareable; import org.briarproject.briar.api.sharing.SharingManager; @@ -8,6 +10,7 @@ import org.briarproject.briar.autodelete.AbstractAutoDeleteTest; import static org.briarproject.bramble.api.cleanup.CleanupManager.BATCH_DELAY_MS; import static org.briarproject.briar.api.autodelete.AutoDeleteConstants.MIN_AUTO_DELETE_TIMER_MS; +import static org.briarproject.briar.test.TestEventListener.assertEvent; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotEquals; @@ -18,6 +21,8 @@ public abstract class AbstractAutoDeleteIntegrationTest protected SharingManager sharingManager0; protected Shareable shareable; + protected Class> + responseReceivedEventClass; protected void testAutoDeclinedSharing( SharingManager sharingManager0, @@ -64,8 +69,14 @@ public abstract class AbstractAutoDeleteIntegrationTest // When 0's timer has elapsed, the message should be deleted from 0's // view of the conversation but 1 should still see the message - c0.getTimeTravel().addCurrentTimeMillis(1); + ConversationMessagesDeletedEvent event = + assertEvent(c0, ConversationMessagesDeletedEvent.class, + () -> c0.getTimeTravel().addCurrentTimeMillis(1) + ); c1.getTimeTravel().addCurrentTimeMillis(1); + // assert that the proper event got broadcast + assertEquals(contactId1From0, event.getContactId()); + assertGroupCount(c0, contactId1From0, 0, 0); assertEquals(0, getMessageHeaders(c0, contactId1From0).size()); assertGroupCount(c1, contactId0From1, 1, 1); @@ -88,7 +99,13 @@ public abstract class AbstractAutoDeleteIntegrationTest // When 1's timer has elapsed, the message should be deleted from 1's // view of the conversation and the invitation auto-declined c0.getTimeTravel().addCurrentTimeMillis(1); - c1.getTimeTravel().addCurrentTimeMillis(1); + ConversationMessageReceivedEvent e = + assertEvent(c1, responseReceivedEventClass, + () -> c1.getTimeTravel().addCurrentTimeMillis(1) + ); + // assert that the proper event got broadcast + assertEquals(contactId0From1, e.getContactId()); + assertGroupCount(c0, contactId1From0, 0, 0); assertEquals(0, getMessageHeaders(c0, contactId1From0).size()); assertGroupCount(c1, contactId0From1, 1, 0); @@ -96,6 +113,7 @@ public abstract class AbstractAutoDeleteIntegrationTest // The only message is not the same as before, but declined response assertNotEquals(messageId0, h.getId()); assertTrue(h instanceof InvitationResponse); + assertEquals(h.getId(), e.getMessageHeader().getId()); assertFalse(((InvitationResponse) h).wasAccepted()); assertTrue(((InvitationResponse) h).isAutoDecline()); // The auto-decline message should have the expected timer diff --git a/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteBlogIntegrationTest.java b/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteBlogIntegrationTest.java index 39665669c..0e3b1f402 100644 --- a/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteBlogIntegrationTest.java +++ b/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteBlogIntegrationTest.java @@ -1,5 +1,6 @@ package org.briarproject.briar.sharing; +import org.briarproject.briar.api.blog.event.BlogInvitationResponseReceivedEvent; import org.briarproject.briar.api.conversation.ConversationManager; import org.briarproject.briar.test.BriarIntegrationTestComponent; import org.junit.Before; @@ -16,6 +17,7 @@ public class AutoDeleteBlogIntegrationTest shareable = c0.getBlogManager().getPersonalBlog(author2); sharingManager0 = c0.getBlogSharingManager(); addContacts1And2(); + responseReceivedEventClass = BlogInvitationResponseReceivedEvent.class; } @Override diff --git a/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteForumIntegrationTest.java b/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteForumIntegrationTest.java index 322c71c4a..07815e34d 100644 --- a/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteForumIntegrationTest.java +++ b/briar-core/src/test/java/org/briarproject/briar/sharing/AutoDeleteForumIntegrationTest.java @@ -1,7 +1,7 @@ package org.briarproject.briar.sharing; import org.briarproject.briar.api.conversation.ConversationManager; -import org.briarproject.briar.api.forum.ForumManager; +import org.briarproject.briar.api.forum.event.ForumInvitationResponseReceivedEvent; import org.briarproject.briar.test.BriarIntegrationTestComponent; import org.junit.Before; import org.junit.Test; @@ -13,10 +13,10 @@ public class AutoDeleteForumIntegrationTest @Override public void setUp() throws Exception { super.setUp(); - ForumManager forumManager0 = c0.getForumManager(); - shareable = forumManager0.addForum("Test Forum"); + shareable = c0.getForumManager().addForum("Test Forum"); sharingManager0 = c0.getForumSharingManager(); addContacts1And2(); + responseReceivedEventClass = ForumInvitationResponseReceivedEvent.class; } @Override