X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2FWebPageTest.java;h=5a1d589670a802788264951beea70655e21e5302;hb=52f3202e3d96c1c2d5dc60ac1d5fa7e3b340a45f;hp=3e2df88db8877d94f4ad8f0d58760a612871fd0d;hpb=7b55e0be6a3283e43a9bbab98f82aebdd948eb33;p=Sone.git diff --git a/src/test/java/net/pterodactylus/sone/web/WebPageTest.java b/src/test/java/net/pterodactylus/sone/web/WebPageTest.java index 3e2df88..5a1d589 100644 --- a/src/test/java/net/pterodactylus/sone/web/WebPageTest.java +++ b/src/test/java/net/pterodactylus/sone/web/WebPageTest.java @@ -16,9 +16,13 @@ import java.util.List; import java.util.Set; import net.pterodactylus.sone.core.Core; +import net.pterodactylus.sone.core.Preferences; import net.pterodactylus.sone.core.UpdateChecker; +import net.pterodactylus.sone.data.Album; +import net.pterodactylus.sone.data.Image; import net.pterodactylus.sone.data.Post; import net.pterodactylus.sone.data.Sone; +import net.pterodactylus.sone.data.SoneOptions.DefaultSoneOptions; import net.pterodactylus.sone.freenet.wot.OwnIdentity; import net.pterodactylus.sone.web.page.FreenetRequest; import net.pterodactylus.util.notify.Notification; @@ -30,6 +34,7 @@ import freenet.clients.http.ToadletContext; import freenet.support.api.HTTPRequest; import com.google.common.base.Optional; +import com.google.common.eventbus.EventBus; import org.junit.Before; import org.junit.Rule; import org.junit.rules.ExpectedException; @@ -48,6 +53,7 @@ public abstract class WebPageTest { protected final Template template = new Template(); protected final WebInterface webInterface = mock(WebInterface.class, RETURNS_DEEP_STUBS); + protected final EventBus eventBus = mock(EventBus.class); protected final Core core = webInterface.getCore(); protected final Sone currentSone = mock(Sone.class); @@ -70,16 +76,22 @@ public abstract class WebPageTest { return ""; } }); + when(httpRequest.getParam(anyString())).thenReturn(""); + when(httpRequest.getParam(anyString(), anyString())).thenReturn(""); } @Before public final void setupCore() { UpdateChecker updateChecker = mock(UpdateChecker.class); when(core.getUpdateChecker()).thenReturn(updateChecker); + when(core.getPreferences()).thenReturn(new Preferences(eventBus)); when(core.getLocalSone(anyString())).thenReturn(null); when(core.getLocalSones()).thenReturn(localSones); when(core.getSone(anyString())).thenReturn(Optional.absent()); when(core.getPost(anyString())).thenReturn(Optional.absent()); + when(core.getAlbum(anyString())).thenReturn(null); + when(core.getImage(anyString())).thenReturn(null); + when(core.getImage(anyString(), anyBoolean())).thenReturn(null); } @Before @@ -94,6 +106,11 @@ public abstract class WebPageTest { when(webInterface.getNotifications(currentSone)).thenReturn(new ArrayList()); } + @Before + public void setupSone() { + when(currentSone.getOptions()).thenReturn(new DefaultSoneOptions()); + } + protected void unsetCurrentSone() { when(webInterface.getCurrentSone(toadletContext)).thenReturn(null); when(webInterface.getCurrentSone(eq(toadletContext), anyBoolean())).thenReturn(null); @@ -116,6 +133,9 @@ public abstract class WebPageTest { return value.substring(0, Math.min(maxLength, value.length())); } }); + when(httpRequest.getParam(eq(name))).thenReturn(value); + when(httpRequest.getParam(eq(name), anyString())).thenReturn(value); + when(httpRequest.isPartSet(eq(name))).thenReturn(value != null && !value.isEmpty()); } protected void addPost(String postId, Post post) { @@ -135,4 +155,13 @@ public abstract class WebPageTest { ownIdentities.add(ownIdentity); } + protected void addAlbum(String albumId, Album album) { + when(core.getAlbum(eq(albumId))).thenReturn(album); + } + + protected void addImage(String imageId, Image image) { + when(core.getImage(eq(imageId))).thenReturn(image); + when(core.getImage(eq(imageId), anyBoolean())).thenReturn(image); + } + }