diff --git a/pom.xml b/pom.xml
index f019649..5422a53 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.0.5.RELEASE
+ 3.0.13
@@ -49,38 +49,28 @@
org.apache.logging.log4j
log4j-api
- 2.13.3
-
-
-
- junit
- junit
- 4.13.1
- test
org.apache.logging.log4j
log4j-core
- 2.13.3
org.mockito
- mockito-all
- 1.10.19
+ mockito-core
+ 4.11.0
test
- javax.validation
- validation-api
- 2.0.1.Final
+ jakarta.validation
+ jakarta.validation-api
- 1.8
+ 21
@@ -92,10 +82,9 @@
org.apache.maven.plugins
maven-compiler-plugin
- 3.8.1
+ 3.14.0
- ${java.version}
- ${java.version}
+ ${java.version}
diff --git a/src/main/java/com/amazonaws/samples/appconfig/movies/MoviesController.java b/src/main/java/com/amazonaws/samples/appconfig/movies/MoviesController.java
index d7c6fc6..e4f20c2 100644
--- a/src/main/java/com/amazonaws/samples/appconfig/movies/MoviesController.java
+++ b/src/main/java/com/amazonaws/samples/appconfig/movies/MoviesController.java
@@ -17,15 +17,13 @@
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import software.amazon.awssdk.services.appconfig.AppConfigClient;
import software.amazon.awssdk.services.appconfig.model.GetConfigurationResponse;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-import javax.validation.Valid;
-
-import static org.springframework.web.bind.annotation.RequestMethod.POST;
+import jakarta.validation.Valid;
@RestController
public class MoviesController {
@@ -107,7 +105,7 @@ public String movie() {
}
}
- @RequestMapping(value = "/movies/{movie}/edit", method = POST)
+ @PostMapping("/movies/{movie}/edit")
public String processUpdateMovie(@Valid Movie movie, BindingResult result, @PathVariable("movieId") int movieId) {
final AppConfigUtility appConfigUtility = new AppConfigUtility(getOrDefault(this::getClient, this::getDefaultClient),
getOrDefault(this::getConfigurationCache, ConfigurationCache::new),
diff --git a/src/main/java/com/amazonaws/samples/appconfig/utils/Encoder.java b/src/main/java/com/amazonaws/samples/appconfig/utils/Encoder.java
index ff45b66..eaa2b5e 100644
--- a/src/main/java/com/amazonaws/samples/appconfig/utils/Encoder.java
+++ b/src/main/java/com/amazonaws/samples/appconfig/utils/Encoder.java
@@ -1,7 +1,7 @@
// depreciation example - sun.misc.BASE64Encoder;
package com.amazonaws.samples.appconfig.utils;
-import sun.misc.BASE64Encoder;
+import java.util.Base64;
import java.util.Date;
@@ -10,7 +10,7 @@ public class Encoder {
Date defaultDate = new Date(1999, 0, 1);
byte[] bytes = new byte[57];
- String enc1 = new sun.misc.BASE64Encoder().encode(bytes);
+ String enc1 = Base64.getEncoder().encodeToString(bytes);
}
\ No newline at end of file
diff --git a/src/main/java/com/amazonaws/samples/appconfig/utils/Math.java b/src/main/java/com/amazonaws/samples/appconfig/utils/Math.java
index 259b286..226f6fb 100644
--- a/src/main/java/com/amazonaws/samples/appconfig/utils/Math.java
+++ b/src/main/java/com/amazonaws/samples/appconfig/utils/Math.java
@@ -1,27 +1,28 @@
//example from https://docs.openrewrite.org/running-recipes/popular-recipe-guides/migrate-to-java-17
package com.amazonaws.samples.appconfig.utils;
import java.math.BigDecimal;
+import java.math.RoundingMode;
public class Math {
- Boolean bool = new Boolean(true);
- Byte b = new Byte("1");
- Character c = new Character('c');
- Double d = new Double(1.0);
- Float f = new Float(1.1f);
- Long l = new Long(1);
- Short sh = new Short("12");
+ Boolean bool = Boolean.valueOf(true);
+ Byte b = Byte.valueOf("1");
+ Character c = Character.valueOf('c');
+ Double d = Double.valueOf(1.0);
+ Float f = Float.valueOf(1.1f);
+ Long l = Long.valueOf(1);
+ Short sh = Short.valueOf("12");
short s3 = 3;
- Short sh3 = new Short(s3);
- Integer i = new Integer(1);
+ Short sh3 = Short.valueOf(s3);
+ Integer i = Integer.valueOf(1);
public void divide() {
BigDecimal bd = BigDecimal.valueOf(10);
BigDecimal bd2 = BigDecimal.valueOf(2);
- bd.divide(bd2, BigDecimal.ROUND_DOWN);
- bd.divide(bd2, 1);
- bd.divide(bd2, 1, BigDecimal.ROUND_CEILING);
- bd.divide(bd2, 1, 1);
- bd.setScale(2, 1);
+ bd.divide(bd2, RoundingMode.DOWN);
+ bd.divide(bd2, RoundingMode.DOWN);
+ bd.divide(bd2, 1, RoundingMode.CEILING);
+ bd.divide(bd2, 1, RoundingMode.DOWN);
+ bd.setScale(2, RoundingMode.DOWN);
}
}
\ No newline at end of file
diff --git a/src/test/java/com/amazonaws/samples/appconfig/movies/MathTest.java b/src/test/java/com/amazonaws/samples/appconfig/movies/MathTest.java
index 04972c1..b57fd8d 100644
--- a/src/test/java/com/amazonaws/samples/appconfig/movies/MathTest.java
+++ b/src/test/java/com/amazonaws/samples/appconfig/movies/MathTest.java
@@ -1,11 +1,10 @@
package com.amazonaws.samples.appconfig.movies;
-
-import org.junit.Test;
-
+import java.math.RoundingMode;
+import org.junit.jupiter.api.Test;
import java.math.BigDecimal;
-import com.amazonaws.samples.appconfig.utils.Math;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import com.amazonaws.samples.appconfig.utils.Math;
public class MathTest {
@@ -18,21 +17,21 @@ public void testDivide() {
BigDecimal bd = BigDecimal.valueOf(10);
BigDecimal bd2 = BigDecimal.valueOf(2);
BigDecimal expectedResult1 = BigDecimal.valueOf(5);
- assertEquals(expectedResult1, bd.divide(bd2, BigDecimal.ROUND_DOWN));
+ assertEquals(expectedResult1, bd.divide(bd2, RoundingMode.DOWN));
// Test divide(BigDecimal, int)
BigDecimal expectedResult2 = BigDecimal.valueOf(5.0);
// Test divide(BigDecimal, int, int)
BigDecimal expectedResult3 = BigDecimal.valueOf(5.0);
- assertEquals(expectedResult3, bd.divide(bd2, 1, BigDecimal.ROUND_CEILING));
+ assertEquals(expectedResult3, bd.divide(bd2, 1, RoundingMode.CEILING));
BigDecimal expectedResult4 = BigDecimal.valueOf(5.0);
- assertEquals(expectedResult4, bd.divide(bd2, 1, 1));
+ assertEquals(expectedResult4, bd.divide(bd2, 1, RoundingMode.DOWN));
// Test setScale(int, int)
BigDecimal expectedResult5 = BigDecimal.valueOf(10);
- bd.setScale(2, 1);
+ bd.setScale(2, RoundingMode.DOWN);
assertEquals(expectedResult5, bd);
}
}
diff --git a/src/test/java/com/amazonaws/samples/appconfig/movies/MockTest.java b/src/test/java/com/amazonaws/samples/appconfig/movies/MockTest.java
index ce58091..1746230 100644
--- a/src/test/java/com/amazonaws/samples/appconfig/movies/MockTest.java
+++ b/src/test/java/com/amazonaws/samples/appconfig/movies/MockTest.java
@@ -1,15 +1,15 @@
package com.amazonaws.samples.appconfig.movies;
-import org.junit.Test;
import java.util.ArrayList;
import java.util.List;
+import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Matchers.anyInt;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-import static org.junit.Assert.assertNull;
import static org.mockito.Mockito.mock;
diff --git a/src/test/java/com/amazonaws/samples/appconfig/movies/MovieTest.java b/src/test/java/com/amazonaws/samples/appconfig/movies/MovieTest.java
index 998a8b6..7e599e8 100644
--- a/src/test/java/com/amazonaws/samples/appconfig/movies/MovieTest.java
+++ b/src/test/java/com/amazonaws/samples/appconfig/movies/MovieTest.java
@@ -1,12 +1,8 @@
package com.amazonaws.samples.appconfig.movies;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
import com.amazonaws.samples.appconfig.movies.MoviesController;
-@RunWith(SpringRunner.class)
@SpringBootTest
public class MovieTest {
diff --git a/src/test/java/com/amazonaws/samples/appconfig/movies/MoviesControllerTest.java b/src/test/java/com/amazonaws/samples/appconfig/movies/MoviesControllerTest.java
index f4f616c..c937af3 100644
--- a/src/test/java/com/amazonaws/samples/appconfig/movies/MoviesControllerTest.java
+++ b/src/test/java/com/amazonaws/samples/appconfig/movies/MoviesControllerTest.java
@@ -3,8 +3,9 @@
import com.amazonaws.samples.appconfig.utils.AppConfigUtility;
import com.amazonaws.samples.appconfig.cache.ConfigurationCache;
import com.amazonaws.samples.appconfig.model.ConfigurationKey;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.springframework.core.env.Environment;
@@ -14,12 +15,15 @@
import java.time.Duration;
import java.util.UUID;
-
-import static org.junit.Assert.assertEquals;
-import static org.mockito.Mockito.*;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.nullable;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
public class MoviesControllerTest {
+ private AutoCloseable mocks;
+
@Mock
private Environment env;
@@ -31,9 +35,9 @@ public class MoviesControllerTest {
private MoviesController moviesController;
- @Before
+ @BeforeEach
public void setUp() {
- MockitoAnnotations.initMocks(this);
+ mocks = MockitoAnnotations.openMocks(this);
moviesController = new MoviesController();
moviesController.env = env;
}
@@ -51,7 +55,7 @@ public void testMovieWithFeatureEnabled() {
GetConfigurationResponse getConfigurationResponse = GetConfigurationResponse.builder().build();
AppConfigUtility appConfigUtility = mock(AppConfigUtility.class);
- when(appConfigUtility.getConfiguration(any(ConfigurationKey.class))).thenReturn(getConfigurationResponse);
+ when(appConfigUtility.getConfiguration(nullable(ConfigurationKey.class))).thenReturn(getConfigurationResponse);
moviesController.cacheItemTtl = Duration.ofSeconds(60);
moviesController.client = appConfigClient;
@@ -70,4 +74,9 @@ public void testMovieWithFeatureEnabled() {
assertEquals(5, expectedMovies.length);
}
+ @AfterEach
+ void tearDown() throws Exception {
+ mocks.close();
+ }
+
}
\ No newline at end of file