From 09b1795a7ab08b334dfd3ce94f343caa86f926a6 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Wed, 6 Sep 2017 12:03:03 +0300 Subject: xmpp: initial test artifact --- juick-xmpp/build.gradle | 4 ++ .../src/test/java/com/juick/xmpp/XMPPTests.java | 76 ++++++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 juick-xmpp/src/test/java/com/juick/xmpp/XMPPTests.java (limited to 'juick-xmpp') diff --git a/juick-xmpp/build.gradle b/juick-xmpp/build.gradle index e74f1e9b..1bd0aa62 100644 --- a/juick-xmpp/build.gradle +++ b/juick-xmpp/build.gradle @@ -6,6 +6,10 @@ dependencies { compile project(':juick-server-jdbc') compile project(':juick-server-web') compile 'com.github.juick:com.juick.xmpp:483936e0bd' + testCompile project(path: ':juick-core', configuration: 'testArtifacts') + testCompile project(path: ':juick-server-web', configuration: 'testArtifacts') + testCompile project(path: ':juick-server-jdbc', configuration: 'testArtifacts') + testCompile ('net.sourceforge.htmlunit:htmlunit:2.27') } compileJava.options.encoding = 'UTF-8' diff --git a/juick-xmpp/src/test/java/com/juick/xmpp/XMPPTests.java b/juick-xmpp/src/test/java/com/juick/xmpp/XMPPTests.java new file mode 100644 index 00000000..0888b041 --- /dev/null +++ b/juick-xmpp/src/test/java/com/juick/xmpp/XMPPTests.java @@ -0,0 +1,76 @@ +/* + * Copyright (C) 2008-2017, Juick + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +package com.juick.xmpp; + +import com.gargoylesoftware.htmlunit.Page; +import com.gargoylesoftware.htmlunit.WebClient; +import com.juick.components.configuration.XmppAppConfiguration; +import com.juick.configuration.MockDataConfiguration; +import com.juick.server.configuration.BaseWebConfiguration; +import com.juick.service.ShowQueriesService; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mockito; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Import; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.htmlunit.MockMvcWebClientBuilder; +import org.springframework.web.context.WebApplicationContext; + +import javax.inject.Inject; + +import java.io.IOException; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; + +@RunWith(SpringJUnit4ClassRunner.class) +@WebAppConfiguration +@ContextConfiguration +public class XMPPTests { + @Configuration + @Import(value = { + BaseWebConfiguration.class, XmppAppConfiguration.class, MockDataConfiguration.class + }) + static class Config { + @Bean + public ShowQueriesService showQueriesService() { + return Mockito.mock(ShowQueriesService.class); + } + } + + @Inject + private WebApplicationContext wac; + + private WebClient webClient; + + @Before + public void setup() { + webClient = MockMvcWebClientBuilder.webAppContextSetup(this.wac).build(); + webClient.getOptions().setJavaScriptEnabled(false); + } + @Test + public void statusPageIsUp() throws IOException { + Page statusPage = webClient.getPage("http://localhost:8080/status"); + assertThat(statusPage.getWebResponse().getStatusCode(), equalTo(200)); + } +} -- cgit v1.2.3