8420cf457d135dbce297d7267c405bc312f450d4
[so.git] / packages / arquillian-unit-tests / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3   <modelVersion>4.0.0</modelVersion>
4   <parent>
5     <groupId>org.onap.so</groupId>
6     <artifactId>packages</artifactId>
7     <version>1.2.0-SNAPSHOT</version>
8   </parent>
9
10   <groupId>org.onap.so.packages</groupId>
11   <name>Arquillian Unit Testing on MSO</name>
12   <artifactId>arquillian-unit-tests</artifactId>
13
14   <packaging>jar</packaging>
15
16   <profiles>
17     <profile>
18       <id>default-tests</id>
19       <activation>
20         <activeByDefault>true</activeByDefault>
21       </activation>
22       <properties>
23         <it-suite-to-execute>**/IntegrationTestsSuite.java</it-suite-to-execute>
24         <container-to-start>jboss-as</container-to-start>
25         <mso.project.version>${project.version}</mso.project.version>
26       </properties>
27     </profile>
28
29   </profiles>
30
31
32   <dependencyManagement>
33     <dependencies>
34       <dependency>
35         <groupId>org.jboss.arquillian</groupId>
36         <artifactId>arquillian-bom</artifactId>
37         <version>1.1.13.Final</version>
38         <scope>import</scope>
39         <type>pom</type>
40       </dependency>
41
42       <dependency>
43         <groupId>org.jboss.spec</groupId>
44         <artifactId>jboss-javaee-6.0</artifactId>
45         <version>3.0.2.Final</version>
46         <type>pom</type>
47         <scope>import</scope>
48
49       </dependency>
50
51     </dependencies>
52
53
54   </dependencyManagement>
55
56
57   <dependencies>
58     <!-- For testing -->
59     <dependency>
60       <groupId>org.jboss.marshalling</groupId>
61       <artifactId>jboss-marshalling</artifactId>
62       <version>1.3.16.GA</version>
63       <scope>test</scope>
64     </dependency>
65
66     <dependency>
67       <groupId>org.jboss.arquillian.junit</groupId>
68       <artifactId>arquillian-junit-container</artifactId>
69       <scope>test</scope>
70
71     </dependency>
72
73     <dependency>
74       <groupId>org.wildfly.arquillian</groupId>
75       <artifactId>wildfly-arquillian-container-remote</artifactId>
76       <version>1.1.0.Final</version>
77       <scope>test</scope>
78     </dependency>
79
80     <dependency>
81       <groupId>org.jboss.remoting</groupId>
82       <artifactId>jboss-remoting</artifactId>
83       <version>4.0.9.Final</version>
84       <scope>test</scope>
85     </dependency>
86
87     <dependency>
88       <groupId>org.jboss.logging</groupId>
89       <artifactId>jboss-logging</artifactId>
90       <version>3.2.1.Final</version>
91       <scope>test</scope>
92     </dependency>
93
94     <dependency>
95       <groupId>org.jboss.arquillian.protocol</groupId>
96       <artifactId>arquillian-protocol-servlet</artifactId>
97       <scope>test</scope>
98     </dependency>
99
100     <dependency>
101       <groupId>org.jboss.shrinkwrap.resolver</groupId>
102       <artifactId>shrinkwrap-resolver-impl-maven</artifactId>
103       <version>2.2.6</version>
104       <scope>test</scope>
105     </dependency>
106
107     <!-- FOR DOCKER CONTROLLED BY ARQUILLIAN -->
108     <dependency>
109       <groupId>org.arquillian.cube</groupId>
110       <artifactId>arquillian-cube-docker</artifactId>
111       <version>1.9.0</version>
112       <scope>test</scope>
113     </dependency>
114
115     <!-- For testing -->
116
117     <!-- FOR JBOSS CODE -->
118     <dependency>
119       <groupId>org.hibernate</groupId>
120       <artifactId>hibernate-core</artifactId>
121       <version>4.2.7.SP1</version>
122       <scope>test</scope>
123     </dependency>
124     <dependency>
125       <groupId>org.hibernate</groupId>
126       <artifactId>hibernate-entitymanager</artifactId>
127       <version>4.2.7.SP1</version>
128       <scope>test</scope>
129     </dependency>
130
131     <dependency>
132       <groupId>javax.validation</groupId>
133       <artifactId>validation-api</artifactId>
134       <version>1.0.0.GA</version>
135       <scope>test</scope>
136     </dependency>
137     <dependency>
138       <groupId>org.jboss.as</groupId>
139       <artifactId>jboss-as-ejb3</artifactId>
140       <version>7.2.0.Final</version>
141       <scope>test</scope>
142     </dependency>
143
144
145     <dependency>
146       <groupId>com.smartbear.soapui</groupId>
147       <artifactId>soapui</artifactId>
148       <version>5.1.0</version>
149       <type>jar</type>
150       <scope>test</scope>
151       <exclusions>
152         <exclusion>
153           <groupId>thoughtworks</groupId>
154           <artifactId>xstream</artifactId>
155         </exclusion>
156         <exclusion>
157           <groupId>gnu.cajo</groupId>
158           <artifactId>cajo</artifactId>
159         </exclusion>
160       </exclusions>
161     </dependency>
162
163     <dependency>
164       <groupId>commons-codec</groupId>
165       <artifactId>commons-codec</artifactId>
166       <version>1.4</version>
167       <type>jar</type>
168       <scope>test</scope>
169     </dependency>
170
171     <dependency>
172       <groupId>org.seleniumhq.selenium</groupId>
173       <artifactId>selenium-java</artifactId>
174       <version>2.45.0</version>
175       <scope>test</scope>
176     </dependency>
177     <dependency>
178       <groupId>org.seleniumhq.selenium</groupId>
179       <artifactId>selenium-firefox-driver</artifactId>
180       <version>2.45.0</version>
181       <scope>test</scope>
182     </dependency>
183     <dependency>
184       <groupId>org.seleniumhq.selenium</groupId>
185       <artifactId>selenium-server</artifactId>
186       <version>2.45.0</version>
187       <scope>test</scope>
188     </dependency>
189
190     <dependency>
191       <groupId>org.apache.httpcomponents</groupId>
192       <artifactId>httpclient</artifactId>
193     </dependency>
194     <dependency>
195       <groupId>org.apache.httpcomponents</groupId>
196       <artifactId>httpcore</artifactId>
197     </dependency>
198
199     <dependency>
200       <groupId>org.onap.so</groupId>
201       <artifactId>asdc-controller</artifactId>
202       <version>${project.version}</version>
203       <scope>test</scope>
204       <classifier>classes</classifier>
205     </dependency>
206
207     <dependency>
208       <groupId>com.fasterxml.jackson.core</groupId>
209       <artifactId>jackson-core</artifactId>
210       <scope>test</scope>
211       <version>2.8.7</version>
212     </dependency>
213
214     <dependency>
215       <groupId>org.mockito</groupId>
216       <artifactId>mockito-all</artifactId>
217       <version>1.10.19</version>
218       <scope>test</scope>
219     </dependency>
220
221     <dependency>
222       <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>
223       <artifactId>sdc-distribution-client</artifactId>
224       <version>1.1.32</version>
225       <scope>test</scope>
226     </dependency>
227
228     <dependency>
229       <groupId>org.onap.so</groupId>
230       <artifactId>mso-catalog-db</artifactId>
231       <version>${project.version}</version>
232       <scope>test</scope>
233     </dependency>
234     <!-- FOR JMETER -->
235     <dependency>
236       <groupId>org.apache.jmeter</groupId>
237       <artifactId>ApacheJMeter_core</artifactId>
238       <version>2.13</version>
239
240       <scope>test</scope>
241       <exclusions>
242         <exclusion>
243           <artifactId>commons-math3</artifactId>
244           <groupId>commons-math3</groupId>
245         </exclusion>
246         <exclusion>
247           <artifactId>commons-pool2</artifactId>
248           <groupId>commons-pool2</groupId>
249         </exclusion>
250       </exclusions>
251     </dependency>
252
253     <dependency>
254       <groupId>org.apache.jmeter</groupId>
255       <artifactId>ApacheJMeter_http</artifactId>
256       <version>2.13</version>
257
258       <scope>test</scope>
259       <exclusions>
260         <exclusion>
261           <artifactId>commons-math3</artifactId>
262           <groupId>commons-math3</groupId>
263         </exclusion>
264         <exclusion>
265           <artifactId>commons-pool2</artifactId>
266           <groupId>commons-pool2</groupId>
267         </exclusion>
268       </exclusions>
269     </dependency>
270
271     <dependency>
272       <groupId>org.apache.jmeter</groupId>
273       <artifactId>ApacheJMeter_jdbc</artifactId>
274       <version>2.13</version>
275
276       <scope>test</scope>
277       <exclusions>
278         <exclusion>
279           <artifactId>commons-math3</artifactId>
280           <groupId>commons-math3</groupId>
281         </exclusion>
282         <exclusion>
283           <artifactId>commons-pool2</artifactId>
284           <groupId>commons-pool2</groupId>
285         </exclusion>
286       </exclusions>
287     </dependency>
288
289     <!-- END FOR JMETER -->
290   </dependencies>
291
292   <build>
293     <finalName>arquillian-tests</finalName>
294     <plugins>
295       <plugin>
296         <groupId>org.codehaus.groovy.maven</groupId>
297         <artifactId>gmaven-plugin</artifactId>
298         <executions>
299           <execution>
300             <phase>generate-resources</phase>
301             <goals>
302               <goal>execute</goal>
303             </goals>
304             <configuration>
305                                   <source>
306                                     if ( project.properties['docker.host'] != null ) {
307                                                 project.properties['docker.host.truncated']=project.properties['docker.host'].replaceFirst("^(http://|https://)","");
308                                                 int indexPort = project.properties['docker.host.truncated'].indexOf(":");
309                                                 project.properties['docker.host.truncated']=project.properties['docker.host.truncated'].substring(0,indexPort);
310                                                 println 'docker.host.truncated:'+ project.properties['docker.host.truncated'];
311                                         } else {
312                                                 project.properties['docker.host.truncated']="127.0.0.1";
313                                                 project.properties['docker.host']="unix:///var/run/docker.sock"
314                                         }
315
316                                         if ( project.properties['mso.project.version'].endsWith("-SNAPSHOT") ) {
317                                                 project.properties['mso.version']="latest";
318                                         } else {
319                                                 project.properties['mso.version']=project.properties['mso.project.version'];
320                                         }
321                                   </source>
322             </configuration>
323           </execution>
324         </executions>
325       </plugin>
326
327
328       <!-- <plugin>
329         <groupId>org.codehaus.mojo</groupId>
330         <artifactId>wagon-maven-plugin</artifactId>
331         <version>1.0</version>
332         <executions>
333           <execution>
334             <id>download-mariadb-connector</id>
335             <phase>pre-integration-test</phase>
336             <goals>
337               <goal>download-single</goal>
338             </goals>
339             <configuration>
340               <url>http://central.maven.org/</url>
341               <fromFile>maven2/org/mariadb/jdbc/mariadb-java-client/1.5.4/mariadb-java-client-1.5.4.jar</fromFile>
342               <toDir>${project.build.directory}/mariadb-connector</toDir>
343             </configuration>
344           </execution>
345         </executions>
346       </plugin> -->
347       <plugin>
348         <groupId>org.apache.maven.plugins</groupId>
349         <artifactId>maven-failsafe-plugin</artifactId>
350         <version>2.16</version>
351
352         <executions>
353           <execution>
354             <goals>
355               <goal>integration-test</goal>
356               <goal>verify</goal>
357             </goals>
358             <configuration>
359               <skipAfterFailureCount>1</skipAfterFailureCount>
360             </configuration>
361           </execution>
362         </executions>
363
364         <configuration>
365           <systemPropertyVariables>
366             <arquillian.launch>${container-to-start}</arquillian.launch>
367             <target.folder>${project.build.directory}</target.folder>
368             <docker.url>${docker.host}</docker.url>
369             <docker.hostname>${docker.host.truncated}</docker.hostname>
370             <images.version>${mso.version}</images.version>
371           </systemPropertyVariables>
372           <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
373           <testFailureIgnore>true</testFailureIgnore>
374           <includes>
375             <include>${it-suite-to-execute}</include>
376           </includes>
377         </configuration>
378       </plugin>
379
380       <plugin>
381         <groupId>org.apache.maven.plugins</groupId>
382         <artifactId>maven-surefire-plugin</artifactId>
383
384         <configuration>
385           <skipTests>true</skipTests>
386         </configuration>
387       </plugin>
388     </plugins>
389   </build>
390
391 </project>