diff options
Diffstat (limited to 'juick-www/src/test/java/com/juick')
-rw-r--r-- | juick-www/src/test/java/com/juick/www/WebAppTests.java | 38 |
1 files changed, 37 insertions, 1 deletions
diff --git a/juick-www/src/test/java/com/juick/www/WebAppTests.java b/juick-www/src/test/java/com/juick/www/WebAppTests.java index b4fa14bbc..ffa540b8a 100644 --- a/juick-www/src/test/java/com/juick/www/WebAppTests.java +++ b/juick-www/src/test/java/com/juick/www/WebAppTests.java @@ -1,5 +1,6 @@ package com.juick.www; +import com.gargoylesoftware.htmlunit.Page; import com.gargoylesoftware.htmlunit.WebClient; import com.gargoylesoftware.htmlunit.html.HtmlPage; import com.juick.Message; @@ -22,11 +23,12 @@ import org.springframework.test.web.servlet.htmlunit.MockMvcWebClientBuilder; import org.springframework.web.context.WebApplicationContext; import javax.inject.Inject; +import java.io.IOException; import java.util.Collections; import java.util.Optional; import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.*; +import static org.hamcrest.Matchers.equalTo; import static org.mockito.Mockito.when; /** @@ -87,4 +89,38 @@ public class WebAppTests { HtmlPage threadPage = webClient.getPage("http://localhost:8080/ugnich/1"); assertThat(threadPage.getTitleText(), equalTo("ugnich:")); } + @Test + public void bannedUserBlogandPostShouldReturn404() throws IOException { + String userName = "isilmine"; + String userPassword = "secret"; + String msgText = "автор этого поста был забанен"; + String hash = "12345678"; + + User user = MockUtils.mockUser(2, userName, userPassword); + user.setBanned(true); + Message msg = MockUtils.mockMessage(2, user, msgText); + + when(userService.getUIDbyName(userName)) + .thenReturn(2); + when(userService.getUserByName(userName)) + .thenReturn(user); + when(userService.getUserByUID(2)) + .thenReturn(Optional.of(user)); + when(userService.getFullyUserByName(userName)) + .thenReturn(user); + when(messagesService.getMyFeed(2, 0)) + .thenReturn(Collections.singletonList(2)); + when(messagesService.getMessages(Collections.singletonList(2))) + .thenReturn(Collections.singletonList(msg)); + when(userService.getUIDbyHash(hash)) + .thenReturn(1); + when(messagesService.getMessageAuthor(2)).thenReturn(user); + when(messagesService.canViewThread(2, 0)).thenReturn(true); + when(messagesService.getMessage(2)).thenReturn(msg); + webClient.getOptions().setThrowExceptionOnFailingStatusCode(false); + Page blogPage = webClient.getPage("http://localhost:8080/isilmine"); + Page threadPage = webClient.getPage("http://localhost:8080/isilmine/2"); + assertThat(blogPage.getWebResponse().getStatusCode(), equalTo(404)); + assertThat(threadPage.getWebResponse().getStatusCode(), equalTo(404)); + } } |