X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdatabase%2Fmemory%2FMemoryDatabaseTest.java;h=cad0a2384f797d78251a95b65c56f4e55ecc4b62;hb=b1057c2e5f77a74a3d64c5ad9ff6b0c5894c4a73;hp=056a06d1449870712096caf52bd756f352c8924e;hpb=2506ba15fa1df55adbec6ccbc9f1875699be591e;p=Sone.git diff --git a/src/test/java/net/pterodactylus/sone/database/memory/MemoryDatabaseTest.java b/src/test/java/net/pterodactylus/sone/database/memory/MemoryDatabaseTest.java index 056a06d..cad0a23 100644 --- a/src/test/java/net/pterodactylus/sone/database/memory/MemoryDatabaseTest.java +++ b/src/test/java/net/pterodactylus/sone/database/memory/MemoryDatabaseTest.java @@ -20,11 +20,17 @@ package net.pterodactylus.sone.database.memory; import static com.google.common.base.Optional.of; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.contains; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; import net.pterodactylus.sone.data.Album; import net.pterodactylus.sone.data.AlbumImpl; +import net.pterodactylus.sone.data.Post; +import net.pterodactylus.sone.data.Sone; import com.google.common.base.Optional; +import org.junit.Before; import org.junit.Test; /** @@ -34,11 +40,34 @@ import org.junit.Test; */ public class MemoryDatabaseTest { + private static final String SONE_ID = "sone"; + private static final String RECIPIENT_ID = "recipient"; private final MemoryDatabase memoryDatabase = new MemoryDatabase(null, null); + private final Sone sone = mock(Sone.class); + + @Before + public void setupSone() { + when(sone.getId()).thenReturn(SONE_ID); + } + + @Test + public void postRecipientsAreDetectedCorrectly() { + Post postWithRecipient = mock(Post.class); + when(postWithRecipient.getSone()).thenReturn(sone); + when(postWithRecipient.getRecipientId()).thenReturn(of(RECIPIENT_ID)); + memoryDatabase.storePost(postWithRecipient); + Post postWithoutRecipient = mock(Post.class); + when(postWithoutRecipient.getSone()).thenReturn(sone); + when(postWithoutRecipient.getRecipientId()).thenReturn( + Optional.absent()); + memoryDatabase.storePost(postWithoutRecipient); + assertThat(memoryDatabase.getDirectedPosts(RECIPIENT_ID), + contains(postWithRecipient)); + } @Test public void testBasicAlbumFunctionality() { - Album newAlbum = new AlbumImpl(); + Album newAlbum = new AlbumImpl(mock(Sone.class)); assertThat(memoryDatabase.getAlbum(newAlbum.getId()), is(Optional.absent())); memoryDatabase.storeAlbum(newAlbum); assertThat(memoryDatabase.getAlbum(newAlbum.getId()), is(of(newAlbum)));