Skip to content

Commit 944178a

Browse files
Update Spring Boot to 3.4.0 (#378)
1 parent f93b3e4 commit 944178a

File tree

13 files changed

+56
-56
lines changed

13 files changed

+56
-56
lines changed

pom.xml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<parent>
77
<groupId>org.springframework.boot</groupId>
88
<artifactId>spring-boot-starter-parent</artifactId>
9-
<version>3.3.5</version>
9+
<version>3.4.0</version>
1010
<relativePath/> <!-- lookup parent from repository -->
1111
</parent>
1212
<groupId>com.hermesworld.ais</groupId>
@@ -24,8 +24,6 @@
2424
<sonar.sources>src/main/java</sonar.sources>
2525
<sonar.exclusions>src/main/resources/*</sonar.exclusions>
2626
<jacoco-maven-plugin.version>0.8.12</jacoco-maven-plugin.version>
27-
<!-- Spring Framework Override to temporarily fix security issues -->
28-
<spring-framework.version>6.1.14</spring-framework.version>
2927
</properties>
3028

3129
<dependencies>
@@ -248,6 +246,12 @@
248246
<groupId>org.springframework.boot</groupId>
249247
<artifactId>spring-boot-maven-plugin</artifactId>
250248
</plugin>
249+
<plugin>
250+
<artifactId>maven-compiler-plugin</artifactId>
251+
<configuration>
252+
<proc>full</proc>
253+
</configuration>
254+
</plugin>
251255

252256
<!-- this ensures consistent Java code formatting using Eclipse Formatter Settings.
253257
Note that there are also Plugins e.g. for IntelliJ IDEA being able to consume and apply these Settings.

src/test/java/com/hermesworld/ais/galapagos/ContextStartupTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
import org.junit.jupiter.api.Test;
77
import org.springframework.beans.factory.annotation.Autowired;
88
import org.springframework.boot.test.context.SpringBootTest;
9-
import org.springframework.boot.test.mock.mockito.MockBean;
109
import org.springframework.context.ApplicationContext;
1110
import org.springframework.context.annotation.Import;
11+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
1212

1313
import java.security.Security;
1414

@@ -22,7 +22,7 @@ class ContextStartupTest {
2222
private ApplicationContext context;
2323

2424
// mock the KafkaClusters implementation as we do not have a live Kafka server here
25-
@MockBean
25+
@MockitoBean
2626
private KafkaClusters kafkaClusters;
2727

2828
@BeforeAll

src/test/java/com/hermesworld/ais/galapagos/GalapagosTestConfig.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,17 @@
33
import com.hermesworld.ais.galapagos.security.SecurityConfig;
44
import com.hermesworld.ais.galapagos.security.impl.OAuthConfigController;
55
import org.springframework.boot.test.mock.mockito.MockBean;
6+
67
import org.springframework.context.annotation.Configuration;
78
import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
89

10+
@SuppressWarnings("removal")
911
@Configuration
1012
public class GalapagosTestConfig {
1113

14+
// we have to use MockBean because of https://github.com/spring-projects/spring-framework/issues/33934
15+
// (Spring Boot team rejects to make MockitoBean work here)
16+
1217
@MockBean
1318
private OAuthConfigController mockController;
1419

src/test/java/com/hermesworld/ais/galapagos/certificates/reminders/impl/CertificateExpiryReminderRunnerIntegrationTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import org.springframework.boot.actuate.autoconfigure.mail.MailHealthContributorAutoConfiguration;
2121
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
2222
import org.springframework.boot.test.context.SpringBootTest;
23-
import org.springframework.boot.test.mock.mockito.MockBean;
23+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
2424
import org.springframework.context.annotation.Import;
2525
import org.springframework.mail.javamail.JavaMailSender;
2626

@@ -42,16 +42,16 @@
4242
@Import(GalapagosTestConfig.class)
4343
class CertificateExpiryReminderRunnerIntegrationTest {
4444

45-
@MockBean
45+
@MockitoBean
4646
private KafkaClusters kafkaClusters;
4747

48-
@MockBean
48+
@MockitoBean
4949
private CertificateExpiryReminderService reminderService;
5050

51-
@MockBean
51+
@MockitoBean
5252
private ApplicationsService applicationsService;
5353

54-
@MockBean
54+
@MockitoBean
5555
private JavaMailSender mailSender;
5656

5757
@SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection")

src/test/java/com/hermesworld/ais/galapagos/graphql/GraphqlControllerTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import org.junit.jupiter.api.Test;
1515
import org.springframework.beans.factory.annotation.Autowired;
1616
import org.springframework.boot.test.context.SpringBootTest;
17-
import org.springframework.boot.test.mock.mockito.MockBean;
17+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
1818
import org.springframework.context.ApplicationContext;
1919
import org.springframework.context.annotation.Import;
2020
import org.springframework.graphql.test.tester.HttpGraphQlTester;
@@ -35,16 +35,16 @@
3535
class GraphqlControllerTest {
3636

3737
@SuppressWarnings("unused")
38-
@MockBean
38+
@MockitoBean
3939
private KafkaClusters kafkaClusters;
4040

41-
@MockBean
41+
@MockitoBean
4242
private ValidatingTopicService topicService;
4343

44-
@MockBean
44+
@MockitoBean
4545
private ApplicationsService applicationsService;
4646

47-
@MockBean
47+
@MockitoBean
4848
private SubscriptionService subscriptionService;
4949

5050
@Autowired

src/test/java/com/hermesworld/ais/galapagos/kafka/impl/KafkaSenderImplTest.java

Lines changed: 13 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.hermesworld.ais.galapagos.kafka.impl;
22

3-
import static org.junit.jupiter.api.Assertions.assertFalse;
43
import static org.junit.jupiter.api.Assertions.assertTrue;
54
import static org.mockito.ArgumentMatchers.any;
65
import static org.mockito.Mockito.mock;
@@ -22,34 +21,26 @@
2221

2322
class KafkaSenderImplTest {
2423

25-
private static ThreadFactory tfDecoupled = new ThreadFactory() {
26-
@Override
27-
public Thread newThread(Runnable r) {
28-
return new Thread(r, "decoupled-" + System.currentTimeMillis());
29-
}
30-
};
24+
private static final ThreadFactory tfDecoupled = r -> new Thread(r, "decoupled-" + System.currentTimeMillis());
3125

32-
private static KafkaExecutorFactory executorFactory = () -> {
33-
return Executors.newSingleThreadExecutor(tfDecoupled);
34-
};
26+
private static final KafkaExecutorFactory executorFactory = () -> Executors.newSingleThreadExecutor(tfDecoupled);
3527

3628
@Test
3729
void testSendDecoupling() throws Exception {
3830
KafkaFutureDecoupler decoupler = new KafkaFutureDecoupler(executorFactory);
3931

40-
@SuppressWarnings("unchecked")
32+
@SuppressWarnings({ "unchecked", "resource" })
4133
Producer<String, String> producer = mock(Producer.class);
42-
when(producer.send(any(), any())).then(inv -> {
43-
return CompletableFuture.runAsync(() -> {
44-
try {
45-
Thread.sleep(200);
46-
}
47-
catch (InterruptedException e) {
48-
}
49-
Callback cb = inv.getArgument(1);
50-
cb.onCompletion(new RecordMetadata(new TopicPartition("a", 0), 0, 0, 0, null, 0, 0), null);
51-
});
52-
});
34+
when(producer.send(any(), any())).then(inv -> CompletableFuture.runAsync(() -> {
35+
try {
36+
Thread.sleep(200);
37+
}
38+
catch (InterruptedException e) {
39+
return;
40+
}
41+
Callback cb = inv.getArgument(1);
42+
cb.onCompletion(new RecordMetadata(new TopicPartition("a", 0), 0, 0, 0, 0, 0), null);
43+
}));
5344

5445
ProducerFactory<String, String> factory = () -> {
5546
return producer;

src/test/java/com/hermesworld/ais/galapagos/naming/config/CaseStrategyConverterBindingIntegrationTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import org.junit.jupiter.api.Test;
66
import org.springframework.beans.factory.annotation.Autowired;
77
import org.springframework.boot.test.context.SpringBootTest;
8-
import org.springframework.boot.test.mock.mockito.MockBean;
8+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
99
import org.springframework.context.annotation.Import;
1010
import org.springframework.test.context.TestPropertySource;
1111

@@ -20,7 +20,7 @@ class CaseStrategyConverterBindingIntegrationTest {
2020
private NamingConfig config;
2121

2222
@SuppressWarnings("unused")
23-
@MockBean
23+
@MockitoBean
2424
private KafkaClusters clusters;
2525

2626
@Test

src/test/java/com/hermesworld/ais/galapagos/security/SecurityConfigIntegrationTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
1212
import org.springframework.boot.autoconfigure.security.oauth2.client.servlet.OAuth2ClientAutoConfiguration;
1313
import org.springframework.boot.test.context.SpringBootTest;
14-
import org.springframework.boot.test.mock.mockito.MockBean;
14+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
1515
import org.springframework.boot.test.web.client.TestRestTemplate;
1616
import org.springframework.boot.test.web.server.LocalServerPort;
1717
import org.springframework.http.*;
@@ -39,18 +39,18 @@ class SecurityConfigIntegrationTest {
3939
private TestRestTemplate restTemplate;
4040

4141
@SuppressWarnings("unused")
42-
@MockBean
42+
@MockitoBean
4343
private ApplicationsService applicationsService;
4444

4545
@SuppressWarnings("unused")
46-
@MockBean
46+
@MockitoBean
4747
private StagingService stagingService;
4848

4949
@SuppressWarnings("unused")
50-
@MockBean
50+
@MockitoBean
5151
private KafkaClusters kafkaClusters;
5252

53-
@MockBean
53+
@MockitoBean
5454
private JwtDecoder jwtDecoder;
5555

5656
@BeforeEach

src/test/java/com/hermesworld/ais/galapagos/security/impl/OAuthConfigControllerIntegrationTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import org.springframework.boot.autoconfigure.security.oauth2.client.OAuth2ClientProperties;
1515
import org.springframework.boot.autoconfigure.security.oauth2.client.servlet.OAuth2ClientAutoConfiguration;
1616
import org.springframework.boot.test.context.SpringBootTest;
17-
import org.springframework.boot.test.mock.mockito.MockBean;
17+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
1818
import org.springframework.boot.test.web.client.TestRestTemplate;
1919
import org.springframework.boot.test.web.server.LocalServerPort;
2020
import org.springframework.http.HttpHeaders;
@@ -47,10 +47,10 @@ class OAuthConfigControllerIntegrationTest {
4747
@Autowired
4848
private TestRestTemplate restTemplate;
4949

50-
@MockBean
50+
@MockitoBean
5151
private OAuth2ClientProperties oauthProperties;
5252

53-
@MockBean
53+
@MockitoBean
5454
@SuppressWarnings("unused")
5555
private JwtDecoder jwtDecoder;
5656

src/test/java/com/hermesworld/ais/galapagos/topics/controller/TopicControllerTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
import org.junit.jupiter.api.BeforeEach;
1818
import org.junit.jupiter.api.DisplayName;
1919
import org.junit.jupiter.api.Test;
20-
import org.springframework.boot.test.mock.mockito.MockBean;
20+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
2121
import org.springframework.http.HttpStatus;
2222
import org.springframework.web.server.ResponseStatusException;
2323

@@ -33,7 +33,7 @@
3333

3434
class TopicControllerTest {
3535

36-
@MockBean
36+
@MockitoBean
3737
private KafkaClusters kafkaClusters;
3838

3939
private ApplicationsService applicationsService;

0 commit comments

Comments
 (0)