2 package org.openecomp.mso.global_tests.soapui;
4 import static org.junit.Assert.*;
7 import java.io.IOException;
8 import java.lang.reflect.Method;
9 import java.nio.file.Files;
10 import java.nio.file.Paths;
11 import java.nio.file.StandardCopyOption;
14 import org.jboss.arquillian.container.test.api.Deployment;
15 import org.jboss.arquillian.container.test.api.RunAsClient;
16 import org.jboss.arquillian.junit.Arquillian;
17 import org.jboss.shrinkwrap.api.Archive;
18 import org.jboss.shrinkwrap.api.ShrinkWrap;
19 import org.jboss.shrinkwrap.api.spec.WebArchive;
20 import org.junit.After;
21 import org.junit.AfterClass;
22 import org.junit.BeforeClass;
23 import org.junit.FixMethodOrder;
24 import org.junit.runners.MethodSorters;
25 import org.junit.Test;
26 import org.junit.runner.RunWith;
28 import org.openecomp.mso.global_tests.ArquillianPackagerForITCases;
29 import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestStepResult;
30 import com.eviware.soapui.model.testsuite.TestAssertion;
31 import com.eviware.soapui.model.testsuite.TestStepResult.TestStepStatus;
32 import com.eviware.soapui.tools.SoapUITestCaseRunner;
34 @RunWith(Arquillian.class)
35 @FixMethodOrder(MethodSorters.NAME_ASCENDING)
36 public class SoapUiITCase {
38 private static String jbossHost=System.getProperty("docker.hostname");
39 private static String jbossPort="18080";
41 @Deployment(name="mso-api-handler-infra",testable=false)
42 public static Archive<?> createMsoApiHandlerInfraWarDeployment () {
43 System.out.println("Deploying ApiHandler Infra WAR on default server");
44 return ArquillianPackagerForITCases.createPackageFromExistingOne("../../mso-api-handlers/mso-api-handler-infra/target/", "mso-api-handler-infra*.war", "mso-api-handler-infra.war");
47 @Deployment(name="mso-vnf-adapter",testable=false)
48 public static Archive<?> createMsoVnfAdapterWarDeployment () {
49 System.out.println("Deploying VNF Adapter WAR on default server");
50 return ArquillianPackagerForITCases.createPackageFromExistingOne("../../adapters/mso-vnf-adapter/target/", "mso-vnf-adapter*.war", "mso-vnf-adapter.war");
53 @Deployment(name="mso-tenant-adapter",testable=false)
54 public static Archive<?> createMsoTenantAdapterWarDeployment () {
55 System.out.println("Deploying Tenant Adapter WAR on default server");
56 return ArquillianPackagerForITCases.createPackageFromExistingOne("../../adapters/mso-tenant-adapter/target/", "mso-tenant-adapter*.war", "mso-tenant-adapter.war");
59 @Deployment(name="mso-sdnc-adapter",testable=false)
60 public static Archive<?> createMsoSdncAdapterWarDeployment () {
61 System.out.println("Deploying SDNC Adapter WAR on default server");
62 return ArquillianPackagerForITCases.createPackageFromExistingOne("../../adapters/mso-sdnc-adapter/target/", "mso-sdnc-adapter*.war", "mso-sdnc-adapter.war");
65 @Deployment(name="mso-network-adapter",testable=false)
66 public static Archive<?> createMsoNetworkAdapterWarDeployment () {
67 System.out.println("Deploying Network Adapter WAR on default server");
68 return ArquillianPackagerForITCases.createPackageFromExistingOne("../../adapters/mso-network-adapter/target/", "mso-network-adapter*.war", "mso-network-adapter.war");
71 @Deployment(name="mso-requests-db-adapter",testable=false)
72 public static Archive<?> createMsoRequestsDbAdapterWarDeployment () {
73 System.out.println("Deploying Requests DB Adapter WAR on default server");
74 return ArquillianPackagerForITCases.createPackageFromExistingOne("../../adapters/mso-requests-db-adapter/target/", "mso-requests-db-adapter*.war", "mso-requests-db-adapter.war");
77 @Deployment(name="asdc-controller",testable=true)
78 public static Archive<?> createAsdcControllerWarDeployment () {
79 System.out.println("Deploying ASDC Controller WAR with additional resources on default server");
81 WebArchive warArchive = (WebArchive)ArquillianPackagerForITCases.createPackageFromExistingOne("../../asdc-controller/target/", "asdc-controller*.war", "asdc-controller.war");
83 // Take one war randomly to make arquilian happy
89 @Deployment(name="gammaBPMN",testable=false)
90 public static Archive<?> createGammaBPMNDeployment () {
91 System.out.println("Deploying Gamma BPMN WAR on default server");
92 return ArquillianPackagerForITCases.createPackageFromExistingOne("../../bpmn/MSOGammaBPMN/target/", "MSOGammaBPMN*.war", "MSOGammaBPMN.war");
95 @Deployment(name = "SoapUIMocks", testable = false)
96 public static Archive <?> createSoapUIMocksWarDeployment () {
98 File file = new File ("src/test/resources/SoapUIMocks.war");
100 WebArchive archive = ShrinkWrap.create (WebArchive.class, "SoapUIMocks.war");
102 archive.merge ((ShrinkWrap.createFromZipFile (WebArchive.class, file)));
108 public static void waitBeforeStart () throws InterruptedException {
109 Thread.currentThread().sleep(10000);
110 System.out.println ("Executing " + SoapUiITCase.class.getName ());
116 public void test01Healthcheck () {
117 SoapUITestCaseRunner runner = new SoapUITestCaseRunner ();
118 runner.setSettingsFile("./src/test/resources/SoapUI/soapui-settings.xml");
119 runner.setJUnitReport(true);
120 runner.setProjectFile ("./src/test/resources/SoapUI/Healthcheck-soapui-project.xml");
121 runner.setOutputFolder ("./target/surefire-reports");
122 String[] properties = new String[7];
123 properties[0] = "apihhost="+jbossHost+":"+jbossPort;
124 properties[1] = "jrahost="+jbossHost+":"+jbossPort;
125 properties[2] = "userlogin=sitecontrol";
126 properties[3] = "userpassword=Domain2.0!";
127 properties[4] = "bpmnhost="+jbossHost+":"+jbossPort;
128 properties[5] = "sitename=mso-docker";
129 properties[6] = "enableBpmn=false";
130 runner.setProjectProperties (properties);
133 runner.setTestSuite ("Healthcheck TestSuite");
135 Map<TestAssertion,WsdlTestStepResult> mapResult= runner.getAssertionResults();
136 for(Map.Entry<TestAssertion,WsdlTestStepResult> entry : mapResult.entrySet()) {
137 assertTrue(entry.getValue().getStatus().equals(TestStepStatus.OK));
139 assertTrue (runner.getFailedTests ().size () == 0);
141 } catch (Exception e) {
142 e.printStackTrace ();
143 fail("Failure in SOAPUI Healthcheck");
149 public void test02ApiHandlerInfra () {
150 SoapUITestCaseRunner runner = new SoapUITestCaseRunner ();
151 runner.setSettingsFile("./src/test/resources/SoapUI/soapui-settings.xml");
152 runner.setJUnitReport(true);
153 runner.setProjectFile ("./src/test/resources/SoapUI/Local-API-Handler-soapui-project.xml");
154 runner.setOutputFolder ("./target/surefire-reports");
155 String[] properties = new String[3];
156 properties[0] = "host="+jbossHost+":"+jbossPort;
157 properties[1] = "user-infraportal=InfraPortalClient";
158 properties[2] = "password-infraportal=password1$";
160 runner.setProjectProperties (properties);
163 runner.setTestSuite ("simple_tests_endpoints");
165 Map<TestAssertion,WsdlTestStepResult> mapResult= runner.getAssertionResults();
166 for(Map.Entry<TestAssertion,WsdlTestStepResult> entry : mapResult.entrySet()) {
167 assertTrue(entry.getValue().getStatus().equals(TestStepStatus.OK));
169 assertTrue (runner.getFailedTests ().size () == 0);
171 } catch (Exception e) {
172 e.printStackTrace ();
173 fail("Failure in SOAPUI ApiHandler Infra");
179 public void test03StartNetworkAdapter () {
180 SoapUITestCaseRunner runner = new SoapUITestCaseRunner ();
181 runner.setSettingsFile("./src/test/resources/SoapUI/soapui-settings.xml");
182 runner.setJUnitReport(true);
183 runner.setProjectFile ("./src/test/resources/SoapUI/MSONetworkAdapter-soapui-project.xml");
184 runner.setOutputFolder ("./target/surefire-reports");
185 String[] properties = new String[1];
186 properties[0] = "host="+jbossHost+":"+jbossPort;
187 runner.setProjectProperties (properties);
191 runner.setTestSuite ("MsoNetworkAdapter TestSuite");
194 Map<TestAssertion,WsdlTestStepResult> mapResult= runner.getAssertionResults();
195 for(Map.Entry<TestAssertion,WsdlTestStepResult> entry : mapResult.entrySet()) {
196 assertTrue(entry.getValue().getStatus().equals(TestStepStatus.OK));
198 assertTrue (runner.getFailedTests ().size () == 0);
200 } catch (Exception e) {
201 e.printStackTrace ();
202 fail("Failure in SOAPUI NetworkAdapter");
209 public void test04StartVnfAdapter () {
210 SoapUITestCaseRunner runner = new SoapUITestCaseRunner ();
211 runner.setSettingsFile("./src/test/resources/SoapUI/soapui-settings.xml");
212 runner.setJUnitReport(true);
213 runner.setProjectFile ("./src/test/resources/SoapUI/MSOVnfAdapter-soapui-project.xml");
214 runner.setOutputFolder ("./target/surefire-reports");
215 String[] properties = new String[1];
216 properties[0] = "host="+jbossHost+":"+jbossPort;
217 runner.setProjectProperties (properties);
220 runner.setTestSuite ("MsoVnfAdapter TestSuite");
223 Map<TestAssertion,WsdlTestStepResult> mapResult= runner.getAssertionResults();
224 for(Map.Entry<TestAssertion,WsdlTestStepResult> entry : mapResult.entrySet()) {
225 assertTrue(entry.getValue().getStatus().equals(TestStepStatus.OK));
227 assertTrue (runner.getFailedTests ().size () == 0);
229 } catch (Exception e) {
230 e.printStackTrace ();
231 fail("Failure in SOAPUI VnfAdapter");
238 public void test05StartTenantAdapter () {
239 SoapUITestCaseRunner runner = new SoapUITestCaseRunner ();
240 runner.setSettingsFile("./src/test/resources/SoapUI/soapui-settings.xml");
241 runner.setJUnitReport(true);
242 runner.setProjectFile ("./src/test/resources/SoapUI/MSOTenantAdapter-soapui-project.xml");
243 runner.setOutputFolder ("./target/surefire-reports");
244 String[] properties = new String[3];
245 properties[0] = "host="+jbossHost+":"+jbossPort;
246 properties[1] = "user-bpel=BPELClient";
247 properties[2] = "password-bpel=password1$";
248 runner.setProjectProperties (properties);
251 runner.setTestSuite ("MsoTenantAdapter TestSuite");
254 Map<TestAssertion,WsdlTestStepResult> mapResult= runner.getAssertionResults();
255 for(Map.Entry<TestAssertion,WsdlTestStepResult> entry : mapResult.entrySet()) {
256 assertTrue(entry.getValue().getStatus().equals(TestStepStatus.OK));
258 assertTrue (runner.getFailedTests ().size () == 0);
260 } catch (Exception e) {
261 e.printStackTrace ();
262 fail("Failure in SOAPUI TenantAdapter");
269 public void test06StartRequestDBAdapter () {
270 SoapUITestCaseRunner runner = new SoapUITestCaseRunner ();
271 runner.setSettingsFile("./src/test/resources/SoapUI/soapui-settings.xml");
272 runner.setJUnitReport(true);
273 runner.setProjectFile ("./src/test/resources/SoapUI/MsoRequestDB-soapui-project.xml");
274 runner.setOutputFolder ("./target/surefire-reports");
275 String[] properties = new String[3];
276 properties[0] = "host="+jbossHost+":"+jbossPort;
277 properties[1] = "user-infraportal=InfraPortalClient";
278 properties[2] = "password-infraportal=password1$";
279 runner.setProjectProperties (properties);
283 runner.setTestSuite ("MsoRequestsDbAdapterImplPortBinding TestSuite");
286 Map<TestAssertion,WsdlTestStepResult> mapResult= runner.getAssertionResults();
287 for(Map.Entry<TestAssertion,WsdlTestStepResult> entry : mapResult.entrySet()) {
288 assertTrue(entry.getValue().getStatus().equals(TestStepStatus.OK));
290 assertTrue (runner.getFailedTests ().size () == 0);
292 } catch (Exception e) {
293 e.printStackTrace ();
294 fail("Failure in SOAPUI RequestDB adapter");
300 public void test07MsoConfigEndpoints () {
301 SoapUITestCaseRunner runner = new SoapUITestCaseRunner ();
302 runner.setSettingsFile("./src/test/resources/SoapUI/soapui-settings.xml");
303 runner.setJUnitReport(true);
304 runner.setProjectFile ("./src/test/resources/SoapUI/MSOConfig-soapui-project.xml");
305 runner.setOutputFolder ("./target/surefire-reports");
306 String[] properties = new String[3];
307 properties[0] = "host="+jbossHost+":"+jbossPort;
308 properties[1] = "user-infraportal=InfraPortalClient";
309 properties[2] = "password-infraportal=password1$";
310 runner.setProjectProperties (properties);
314 runner.setTestSuite ("test_config_endpoints TestSuite");
317 Map<TestAssertion,WsdlTestStepResult> mapResult= runner.getAssertionResults();
318 for(Map.Entry<TestAssertion,WsdlTestStepResult> entry : mapResult.entrySet()) {
319 assertTrue(entry.getValue().getStatus().equals(TestStepStatus.OK));
321 assertTrue (runner.getFailedTests ().size () == 0);
323 } catch (Exception e) {
324 e.printStackTrace ();
325 fail("Failure in SOAPUI MSOConfig Endpoints");