Skip to content

Commit 4db9822

Browse files
authored
fix: e2e tests on JDK8 (#1225)
* fix e2e tests on JDK8
1 parent 31bebb7 commit 4db9822

File tree

6 files changed

+104
-28
lines changed

6 files changed

+104
-28
lines changed

.github/workflows/run-e2e-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,4 +45,4 @@ jobs:
4545
role-to-assume: ${{ secrets.AWS_ROLE_ARN_TO_ASSUME }}
4646
aws-region: ${{ env.AWS_DEFAULT_REGION }}
4747
- name: Run e2e test with Maven
48-
run: mvn -Pe2e -B verify --file powertools-e2e-tests/pom.xml
48+
run: mvn -Pbuild-without-spotbugs -DskipTests install --file pom.xml && mvn -Pe2e -B verify --file powertools-e2e-tests/pom.xml

powertools-e2e-tests/handlers/parameters/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
<build>
3232
<plugins>
3333
<plugin>
34-
<groupId>org.codehaus.mojo</groupId>
34+
<groupId>dev.aspectj</groupId>
3535
<artifactId>aspectj-maven-plugin</artifactId>
3636
<configuration>
3737
<source>${maven.compiler.source}</source>

powertools-e2e-tests/handlers/parameters/src/main/java/software/amazon/lambda/powertools/e2e/Function.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,12 @@
22

33
import com.amazonaws.services.lambda.runtime.Context;
44
import com.amazonaws.services.lambda.runtime.RequestHandler;
5-
import org.apache.logging.log4j.LogManager;
6-
import org.apache.logging.log4j.Logger;
75
import software.amazon.lambda.powertools.logging.Logging;
8-
import software.amazon.lambda.powertools.parameters.ParamManager;
9-
import software.amazon.lambda.powertools.parameters.cache.CacheManager;
106
import software.amazon.lambda.powertools.parameters.AppConfigProvider;
7+
import software.amazon.lambda.powertools.parameters.ParamManager;
118

129
public class Function implements RequestHandler<Input, String> {
1310

14-
private static final Logger LOG = LogManager.getLogger(Function.class);
15-
1611
@Logging
1712
public String handleRequest(Input input, Context context) {
1813
AppConfigProvider provider = ParamManager.getAppConfigProvider(input.getEnvironment(), input.getApp());

powertools-e2e-tests/handlers/pom.xml

Lines changed: 96 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212
<properties>
1313
<lambda.powertools.version>1.15.0</lambda.powertools.version>
1414
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
15-
<maven.compiler.source>11</maven.compiler.source>
16-
<maven.compiler.target>11</maven.compiler.target>
15+
<maven.compiler.source>1.8</maven.compiler.source>
16+
<maven.compiler.target>1.8</maven.compiler.target>
1717

1818
<lambda.java.core>1.2.2</lambda.java.core>
19-
<lambda.java.events>3.11.0</lambda.java.events>
20-
<maven.shade.version>3.2.4</maven.shade.version>
21-
<aspectj.version>1.13.1</aspectj.version>
22-
<maven.compiler.version>3.10.1</maven.compiler.version>
19+
<lambda.java.events>3.11.2</lambda.java.events>
20+
<maven.shade.version>3.5.0</maven.shade.version>
21+
<aspectj.plugin.version>1.13.1</aspectj.plugin.version>
22+
<maven.compiler.version>3.11.0</maven.compiler.version>
2323
</properties>
2424

2525
<modules>
@@ -104,22 +104,107 @@
104104
</dependency>
105105
</dependencies>
106106
</plugin>
107-
<plugin>
108-
<groupId>dev.aspectj</groupId>
109-
<artifactId>aspectj-maven-plugin</artifactId>
110-
<version>1.13.1</version>
111-
</plugin>
112107
<plugin>
113108
<groupId>org.apache.maven.plugins</groupId>
114109
<artifactId>maven-compiler-plugin</artifactId>
115110
<version>${maven.compiler.version}</version>
116111
<configuration>
117112
<source>${maven.compiler.source}</source>
118113
<target>${maven.compiler.target}</target>
114+
<useIncrementalCompilation>false</useIncrementalCompilation>
119115
</configuration>
120116
</plugin>
121117
</plugins>
122118
</pluginManagement>
123119
</build>
124120

121+
<profiles>
122+
<profile>
123+
<id>jdk8</id>
124+
<activation>
125+
<jdk>(,11)</jdk> <!-- < 11 -->
126+
</activation>
127+
<properties>
128+
<aspectj.version>1.9.7</aspectj.version>
129+
</properties>
130+
<dependencyManagement>
131+
<dependencies>
132+
<dependency>
133+
<groupId>org.aspectj</groupId>
134+
<artifactId>aspectjtools</artifactId>
135+
<version>${aspectj.version}</version>
136+
</dependency>
137+
</dependencies>
138+
</dependencyManagement>
139+
<build>
140+
<pluginManagement>
141+
<plugins>
142+
<plugin>
143+
<groupId>dev.aspectj</groupId>
144+
<artifactId>aspectj-maven-plugin</artifactId>
145+
<version>${aspectj.plugin.version}</version>
146+
<configuration>
147+
<source>${maven.compiler.source}</source>
148+
<target>${maven.compiler.target}</target>
149+
<complianceLevel>${maven.compiler.target}</complianceLevel>
150+
<Xlint>ignore</Xlint>
151+
<encoding>${project.build.sourceEncoding}</encoding>
152+
</configuration>
153+
<executions>
154+
<execution>
155+
<phase>process-sources</phase>
156+
<goals>
157+
<goal>compile</goal>
158+
<goal>test-compile</goal>
159+
</goals>
160+
</execution>
161+
</executions>
162+
<!-- Enforce aspectJ 1.9.7 -->
163+
<dependencies>
164+
<dependency>
165+
<groupId>org.aspectj</groupId>
166+
<artifactId>aspectjtools</artifactId>
167+
<version>${aspectj.version}</version>
168+
</dependency>
169+
</dependencies>
170+
</plugin>
171+
</plugins>
172+
</pluginManagement>
173+
</build>
174+
</profile>
175+
<profile>
176+
<id>jdk11plus</id>
177+
<activation>
178+
<jdk>[11,)</jdk> <!-- >= 11 -->
179+
</activation>
180+
<build>
181+
<pluginManagement>
182+
<plugins>
183+
<plugin>
184+
<groupId>dev.aspectj</groupId>
185+
<artifactId>aspectj-maven-plugin</artifactId>
186+
<version>${aspectj.plugin.version}</version>
187+
<configuration>
188+
<source>${maven.compiler.source}</source>
189+
<target>${maven.compiler.target}</target>
190+
<complianceLevel>${maven.compiler.target}</complianceLevel>
191+
<Xlint>ignore</Xlint>
192+
<encoding>${project.build.sourceEncoding}</encoding>
193+
</configuration>
194+
<executions>
195+
<execution>
196+
<phase>process-sources</phase>
197+
<goals>
198+
<goal>compile</goal>
199+
<goal>test-compile</goal>
200+
</goals>
201+
</execution>
202+
</executions>
203+
</plugin>
204+
</plugins>
205+
</pluginManagement>
206+
</build>
207+
</profile>
208+
</profiles>
209+
125210
</project>

powertools-e2e-tests/pom.xml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@
1414
<description>Powertools for AWS Lambda (Java)End-To-End Tests</description>
1515

1616
<properties>
17-
<!-- we can use Java 11 for integration tests, not forced to stick to Java 8 -->
18-
<maven.compiler.source>8</maven.compiler.source>
19-
<maven.compiler.target>8</maven.compiler.target>
17+
<maven.compiler.source>1.8</maven.compiler.source>
18+
<maven.compiler.target>1.8</maven.compiler.target>
2019
<constructs.version>10.2.55</constructs.version>
2120
<cdk.version>2.84.0</cdk.version>
2221

powertools-e2e-tests/src/test/java/software/amazon/lambda/powertools/ParametersE2ET.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
package software.amazon.lambda.powertools;
22

3-
import com.fasterxml.jackson.databind.ObjectMapper;
43
import org.junit.jupiter.api.*;
54
import software.amazon.lambda.powertools.testutils.AppConfig;
65
import software.amazon.lambda.powertools.testutils.Infrastructure;
76
import software.amazon.lambda.powertools.testutils.lambda.InvocationResult;
87

98
import java.util.HashMap;
109
import java.util.Map;
10+
import java.util.UUID;
1111
import java.util.concurrent.TimeUnit;
1212
import java.util.stream.Collectors;
1313
import java.util.stream.Stream;
@@ -17,19 +17,16 @@
1717

1818
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
1919
public class ParametersE2ET {
20-
21-
22-
private final ObjectMapper objectMapper = new ObjectMapper();
23-
2420
private Infrastructure infrastructure;
2521
private String functionName;
2622
private final AppConfig appConfig;
2723

2824
public ParametersE2ET() {
25+
String appName = UUID.randomUUID().toString();
2926
Map<String,String> params = new HashMap<>();
3027
params.put("key1", "value1");
3128
params.put("key2", "value2");
32-
appConfig = new AppConfig("e2eApp", "e2etest", params);
29+
appConfig = new AppConfig(appName, "e2etest", params);
3330
}
3431
@BeforeAll
3532
@Timeout(value = 5, unit = TimeUnit.MINUTES)

0 commit comments

Comments
 (0)