diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 0000000..e1d1cc7
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,10 @@
+version: 2
+updates:
+ - package-ecosystem: "maven"
+ directory: "/"
+ schedule:
+ interval: "weekly"
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: "weekly"
diff --git a/README.md b/README.md
index 154282b..b1d14ec 100644
--- a/README.md
+++ b/README.md
@@ -24,7 +24,7 @@ You can download release builds through the [releases section of this](https://g
software.amazon.payloadoffloading
payloadoffloading-common
- 2.1.2
+ 2.1.3
```
diff --git a/pom.xml b/pom.xml
index 472a930..32c0985 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
software.amazon.payloadoffloading
payloadoffloading-common
- 2.1.2
+ 2.1.3
jar
Payload offloading common library for AWS
Common library between extended Amazon AWS clients to save payloads up to 2GB on Amazon S3.
@@ -36,7 +36,7 @@
- 2.16.73
+ 2.20.30
@@ -50,29 +50,27 @@
utils
${aws-java-sdk.version}
-
- junit
- junit
- 4.13.1
- test
+ com.fasterxml.jackson.core
+ jackson-core
+ 2.14.2
- org.mockito
- mockito-core
- 3.3.3
- test
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.14.2
+
- org.hamcrest
- hamcrest-all
- 1.3
+ org.junit.jupiter
+ junit-jupiter
+ 5.9.2
test
- pl.pragmatists
- JUnitParams
- 1.1.1
+ org.mockito
+ mockito-core
+ 5.2.0
test
@@ -83,7 +81,7 @@
org.apache.maven.plugins
maven-compiler-plugin
- 3.8.1
+ 3.11.0
1.8
1.8
@@ -106,10 +104,15 @@
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
org.apache.maven.plugins
maven-javadoc-plugin
- 2.9.1
+ 3.5.0
attach-javadocs
@@ -117,12 +120,8 @@
jar
-
8
- -Xdoclint:none
+ none
@@ -130,7 +129,7 @@
org.sonatype.plugins
nexus-staging-maven-plugin
- 1.6.7
+ 1.6.13
true
ossrh
diff --git a/src/test/java/software/amazon/payloadoffloading/AwsManagedCmkTest.java b/src/test/java/software/amazon/payloadoffloading/AwsManagedCmkTest.java
index 4bb95c5..723678d 100644
--- a/src/test/java/software/amazon/payloadoffloading/AwsManagedCmkTest.java
+++ b/src/test/java/software/amazon/payloadoffloading/AwsManagedCmkTest.java
@@ -1,10 +1,11 @@
package software.amazon.payloadoffloading;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import software.amazon.awssdk.services.s3.model.PutObjectRequest;
import software.amazon.awssdk.services.s3.model.ServerSideEncryption;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
public class AwsManagedCmkTest {
diff --git a/src/test/java/software/amazon/payloadoffloading/CustomerKeyTest.java b/src/test/java/software/amazon/payloadoffloading/CustomerKeyTest.java
index 3da7090..cc55b70 100644
--- a/src/test/java/software/amazon/payloadoffloading/CustomerKeyTest.java
+++ b/src/test/java/software/amazon/payloadoffloading/CustomerKeyTest.java
@@ -1,10 +1,10 @@
package software.amazon.payloadoffloading;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import software.amazon.awssdk.services.s3.model.PutObjectRequest;
import software.amazon.awssdk.services.s3.model.ServerSideEncryption;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class CustomerKeyTest {
diff --git a/src/test/java/software/amazon/payloadoffloading/PayloadStorageConfigurationTest.java b/src/test/java/software/amazon/payloadoffloading/PayloadStorageConfigurationTest.java
index e9b473a..f4adf77 100644
--- a/src/test/java/software/amazon/payloadoffloading/PayloadStorageConfigurationTest.java
+++ b/src/test/java/software/amazon/payloadoffloading/PayloadStorageConfigurationTest.java
@@ -1,11 +1,16 @@
package software.amazon.payloadoffloading;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.model.ObjectCannedACL;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNotSame;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
-import static org.junit.Assert.*;
/**
* Tests the PayloadStorageConfiguration class.
diff --git a/src/test/java/software/amazon/payloadoffloading/S3BackedPayloadStoreTest.java b/src/test/java/software/amazon/payloadoffloading/S3BackedPayloadStoreTest.java
index 18b3902..b40df6f 100644
--- a/src/test/java/software/amazon/payloadoffloading/S3BackedPayloadStoreTest.java
+++ b/src/test/java/software/amazon/payloadoffloading/S3BackedPayloadStoreTest.java
@@ -1,22 +1,24 @@
package software.amazon.payloadoffloading;
-import junitparams.JUnitParamsRunner;
-import org.hamcrest.Matchers;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import software.amazon.awssdk.core.exception.SdkClientException;
import software.amazon.awssdk.core.exception.SdkException;
import software.amazon.awssdk.services.s3.model.ObjectCannedACL;
-import static org.junit.Assert.*;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.doThrow;
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoInteractions;
+import static org.mockito.Mockito.when;
-@RunWith(JUnitParamsRunner.class)
public class S3BackedPayloadStoreTest {
private static final String S3_BUCKET_NAME = "test-bucket-name";
private static final String ANY_PAYLOAD = "AnyPayload";
@@ -25,10 +27,7 @@ public class S3BackedPayloadStoreTest {
private PayloadStore payloadStore;
private S3Dao s3Dao;
- @Rule
- public final ExpectedException exception = ExpectedException.none();
-
- @Before
+ @BeforeEach
public void setup() {
s3Dao = mock(S3Dao.class);
payloadStore = new S3BackedPayloadStore(s3Dao, S3_BUCKET_NAME);
@@ -84,8 +83,8 @@ public void testStoreOriginalPayloadDoesAlwaysCreateNewObjects() {
PayloadS3Pointer anyOtherExpectedPayloadPointer = new PayloadS3Pointer(S3_BUCKET_NAME, anyOtherS3Key);
assertEquals(anyOtherExpectedPayloadPointer.toJson(), anyOtherActualPayloadPointer);
- assertThat(anyS3Key, Matchers.not(anyOtherS3Key));
- assertThat(anyActualPayloadPointer, Matchers.not(anyOtherActualPayloadPointer));
+ assertNotEquals(anyS3Key, anyOtherS3Key);
+ assertNotEquals(anyActualPayloadPointer, anyOtherActualPayloadPointer);
}
@Test
@@ -97,10 +96,8 @@ public void testStoreOriginalPayloadOnS3Failure() {
any(String.class),
any(String.class));
- exception.expect(SdkException.class);
- exception.expectMessage("S3 Exception");
//Any S3 Dao exception is thrown back as-is to clients
- payloadStore.storeOriginalPayload(ANY_PAYLOAD);
+ assertThrows(SdkException.class, () -> payloadStore.storeOriginalPayload(ANY_PAYLOAD), "S3 Exception");
}
@Test
@@ -120,21 +117,21 @@ public void testGetOriginalPayloadOnSuccess() {
@Test
public void testGetOriginalPayloadIncorrectPointer() {
- exception.expect(SdkClientException.class);
- exception.expectMessage(INCORRECT_POINTER_EXCEPTION_MSG);
//Any S3 Dao exception is thrown back as-is to clients
- payloadStore.getOriginalPayload("IncorrectPointer");
+ assertThrows(SdkClientException.class, () -> payloadStore.getOriginalPayload("IncorrectPointer"),
+ INCORRECT_POINTER_EXCEPTION_MSG);
verifyNoInteractions(s3Dao);
}
@Test
public void testGetOriginalPayloadOnS3Failure() {
- when(s3Dao.getTextFromS3(any(String.class), any(String.class))).thenThrow(SdkException.create("S3 Exception", new Throwable()));
- exception.expect(SdkException.class);
- exception.expectMessage("S3 Exception");
- //Any S3 Dao exception is thrown back as-is to clients
+ when(s3Dao.getTextFromS3(any(String.class), any(String.class)))
+ .thenThrow(SdkException.create("S3 Exception", new Throwable()));
+
PayloadS3Pointer anyPointer = new PayloadS3Pointer(S3_BUCKET_NAME, ANY_S3_KEY);
- payloadStore.getOriginalPayload(anyPointer.toJson());
+ //Any S3 Dao exception is thrown back as-is to clients
+ assertThrows(SdkException.class, () -> payloadStore.getOriginalPayload(anyPointer.toJson()),
+ "S3 Exception");
}
@Test
@@ -152,9 +149,8 @@ public void testDeleteOriginalPayloadOnSuccess() {
@Test
public void testDeleteOriginalPayloadIncorrectPointer() {
- exception.expect(SdkClientException.class);
- exception.expectMessage(INCORRECT_POINTER_EXCEPTION_MSG);
- payloadStore.deleteOriginalPayload("IncorrectPointer");
+ assertThrows(SdkClientException.class, () -> payloadStore.deleteOriginalPayload("IncorrectPointer"),
+ INCORRECT_POINTER_EXCEPTION_MSG);
verifyNoInteractions(s3Dao);
}
}
\ No newline at end of file
diff --git a/src/test/java/software/amazon/payloadoffloading/S3DaoTest.java b/src/test/java/software/amazon/payloadoffloading/S3DaoTest.java
index 22274d5..b0a8f25 100644
--- a/src/test/java/software/amazon/payloadoffloading/S3DaoTest.java
+++ b/src/test/java/software/amazon/payloadoffloading/S3DaoTest.java
@@ -3,34 +3,33 @@
import software.amazon.awssdk.core.sync.RequestBody;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.model.ObjectCannedACL;
-import junitparams.JUnitParamsRunner;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
import org.mockito.ArgumentCaptor;
import software.amazon.awssdk.services.s3.model.PutObjectRequest;
import software.amazon.awssdk.services.s3.model.ServerSideEncryption;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
-@RunWith(JUnitParamsRunner.class)
public class S3DaoTest {
- private static String s3ServerSideEncryptionKMSKeyId = "test-customer-managed-kms-key-id";
+ private static final String s3ServerSideEncryptionKMSKeyId = "test-customer-managed-kms-key-id";
private static final String S3_BUCKET_NAME = "test-bucket-name";
private static final String ANY_PAYLOAD = "AnyPayload";
private static final String ANY_S3_KEY = "AnyS3key";
- private ServerSideEncryptionStrategy serverSideEncryptionStrategy = ServerSideEncryptionFactory.awsManagedCmk();
- private ObjectCannedACL objectCannedACL = ObjectCannedACL.PUBLIC_READ;
+ private final ServerSideEncryptionStrategy serverSideEncryptionStrategy = ServerSideEncryptionFactory.awsManagedCmk();
+ private final ObjectCannedACL objectCannedACL = ObjectCannedACL.PUBLIC_READ;
private S3Client s3Client;
private S3Dao dao;
- @Before
+ @BeforeEach
public void setup() {
s3Client = mock(S3Client.class);
}