Skip to content

Commit fe66f4c

Browse files
committed
Add pom.xml for the integration JUnit tests (GR-48446)
(cherry picked from commit 1c2c092)
1 parent 07246aa commit fe66f4c

File tree

1 file changed

+150
-0
lines changed
  • graalpython/com.oracle.graal.python.test.integration

1 file changed

+150
-0
lines changed
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
Copyright (c) 2023, 2023, Oracle and/or its affiliates. All rights reserved.
4+
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5+
6+
The Universal Permissive License (UPL), Version 1.0
7+
8+
Subject to the condition set forth below, permission is hereby granted to any
9+
person obtaining a copy of this software, associated documentation and/or
10+
data (collectively the "Software"), free of charge and under any and all
11+
copyright rights in the Software, and any and all patent rights owned or
12+
freely licensable by each licensor hereunder covering either (i) the
13+
unmodified Software as contributed to or provided by such licensor, or (ii)
14+
the Larger Works (as defined below), to deal in both
15+
16+
(a) the Software, and
17+
18+
(b) any piece of software and/or hardware listed in the lrgrwrks.txt file if
19+
one is included with the Software each a "Larger Work" to which the Software
20+
is contributed by such licensors),
21+
22+
without restriction, including without limitation the rights to copy, create
23+
derivative works of, display, perform, and distribute the Software and make,
24+
use, sell, offer for sale, import, export, have made, and have sold the
25+
Software and the Larger Work(s), and to sublicense the foregoing rights on
26+
either these or other terms.
27+
28+
This license is subject to the following condition:
29+
30+
The above copyright notice and either this complete permission notice or at a
31+
minimum a reference to the UPL must be included in all copies or substantial
32+
portions of the Software.
33+
34+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
35+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
36+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
37+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
38+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
39+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
40+
SOFTWARE.
41+
-->
42+
<!--
43+
This Maven project can compile and run the integration unit tests independently of
44+
the rest of the GraalPy sources on top of any supported JDK, e.g., OpenJDK, GraalVM JDK, etc.
45+
46+
When testing with custom Maven repository, i.e., locally built, one can pass -Dpolyglot_repo
47+
pointing to the Maven repository, for example:
48+
49+
mvn test -Dpolyglot_repo=file:///some/path/to/repo
50+
51+
Additionally, one can change the polyglot artifacts version with
52+
-Dpolyglot.version=24.0-SNAPSHOT, for example.
53+
-->
54+
<project xmlns="http://maven.apache.org/POM/4.0.0"
55+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
56+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
57+
<modelVersion>4.0.0</modelVersion>
58+
59+
<groupId>org.graalvm.test</groupId>
60+
<artifactId>cpembedder</artifactId>
61+
<version>1.0-SNAPSHOT</version>
62+
63+
<properties>
64+
<maven.compiler.source>17</maven.compiler.source>
65+
<maven.compiler.target>17</maven.compiler.target>
66+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
67+
<polyglot.version>23.1.0-SNAPSHOT</polyglot.version>
68+
</properties>
69+
70+
<build>
71+
<sourceDirectory>src</sourceDirectory>
72+
<resources>
73+
<resource>
74+
<directory>src</directory>
75+
</resource>
76+
</resources>
77+
<plugins>
78+
<plugin>
79+
<groupId>org.apache.maven.plugins</groupId>
80+
<artifactId>maven-surefire-plugin</artifactId>
81+
<version>2.22.0</version>
82+
<dependencies>
83+
<dependency>
84+
<groupId>org.apache.maven.surefire</groupId>
85+
<artifactId>surefire-junit4</artifactId>
86+
<version>2.22.0</version>
87+
</dependency>
88+
</dependencies>
89+
<configuration>
90+
<testSourceDirectory>src</testSourceDirectory>
91+
<testClassesDirectory>${project.build.outputDirectory}</testClassesDirectory>
92+
<includes>
93+
<include>**/*.java</include>
94+
</includes>
95+
</configuration>
96+
</plugin>
97+
</plugins>
98+
</build>
99+
100+
<profiles>
101+
<profile>
102+
<id>Custom repo</id>
103+
<activation>
104+
<property>
105+
<name>polyglot_repo</name>
106+
</property>
107+
</activation>
108+
<repositories>
109+
<repository>
110+
<id>release</id>
111+
<url>${polyglot_repo}</url>
112+
<releases>
113+
<enabled>true</enabled>
114+
</releases>
115+
<snapshots>
116+
<enabled>true</enabled>
117+
</snapshots>
118+
</repository>
119+
</repositories>
120+
</profile>
121+
</profiles>
122+
123+
<dependencies>
124+
<dependency>
125+
<groupId>org.graalvm.polyglot</groupId>
126+
<artifactId>polyglot</artifactId>
127+
<version>${polyglot.version}</version>
128+
</dependency>
129+
<dependency>
130+
<groupId>org.graalvm.polyglot</groupId>
131+
<artifactId>python-community</artifactId>
132+
<version>${polyglot.version}</version>
133+
<scope>runtime</scope>
134+
<type>pom</type>
135+
</dependency>
136+
<dependency>
137+
<!-- See MultiContextTest#testSharingWithStruct -->
138+
<groupId>org.graalvm.polyglot</groupId>
139+
<artifactId>llvm-community</artifactId>
140+
<version>${polyglot.version}</version>
141+
<scope>runtime</scope>
142+
<type>pom</type>
143+
</dependency>
144+
<dependency>
145+
<groupId>junit</groupId>
146+
<artifactId>junit</artifactId>
147+
<version>4.12</version>
148+
</dependency>
149+
</dependencies>
150+
</project>

0 commit comments

Comments
 (0)