diff options
author | Morten Tokle <mortent@yahooinc.com> | 2023-11-16 21:32:58 +0100 |
---|---|---|
committer | Morten Tokle <mortent@yahooinc.com> | 2023-11-16 21:32:58 +0100 |
commit | 056efb8b64fe96ea74c1491cd57ac9870f906230 (patch) | |
tree | 83b9e04ded88a33fc547b3e335af9bad82da6d3e /jdisc-cloud-aws | |
parent | ff4546f393f5e2ece01be654610dd9b2170ef200 (diff) |
Fix typo
Diffstat (limited to 'jdisc-cloud-aws')
2 files changed, 26 insertions, 14 deletions
diff --git a/jdisc-cloud-aws/src/main/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProvider.java b/jdisc-cloud-aws/src/main/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProvider.java index 4bca505620b..6de8b5c0142 100644 --- a/jdisc-cloud-aws/src/main/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProvider.java +++ b/jdisc-cloud-aws/src/main/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProvider.java @@ -66,7 +66,7 @@ public class VespaAwsCredentialsProvider implements AWSCredentialsProvider { Cursor cursor = slime.get(); String accessKey = cursor.field("awsAccessKey").asString(); String secretKey = cursor.field("awsSecretKey").asString(); - String sessionToken = cursor.field("sessionTToken").asString(); + String sessionToken = cursor.field("sessionToken").asString(); Instant defaultExpiry = Instant.now().plus(Duration.ofHours(1)); Instant expiry; try { diff --git a/jdisc-cloud-aws/src/test/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProviderTest.java b/jdisc-cloud-aws/src/test/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProviderTest.java index 2725d28651e..63cfd2f1eeb 100644 --- a/jdisc-cloud-aws/src/test/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProviderTest.java +++ b/jdisc-cloud-aws/src/test/java/com/yahoo/jdisc/cloud/aws/VespaAwsCredentialsProviderTest.java @@ -7,48 +7,60 @@ import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import java.io.IOException; -import java.nio.file.FileSystem; -import java.nio.file.FileSystems; import java.nio.file.Files; import java.nio.file.Path; import java.time.Duration; import java.time.Instant; + public class VespaAwsCredentialsProviderTest { + Path credentialsPath = TestFileSystem.create().getPath("/credentials.json"); + ManualClock clock = new ManualClock(Instant.now()); @Test void refreshes_credentials() throws IOException { - Path credentialsPath = TestFileSystem.create().getPath("/credentials.json"); - ManualClock clock = new ManualClock(Instant.now()); - Instant originalExpiry = clock.instant().plus(Duration.ofHours(12)); writeCredentials(credentialsPath, originalExpiry); VespaAwsCredentialsProvider credentialsProvider = new VespaAwsCredentialsProvider(credentialsPath, clock); - AWSCredentials credentials = credentialsProvider.getCredentials(); - Assertions.assertEquals(originalExpiry.toString(), credentials.getAWSAccessKeyId()); + assertExpiryEquals(originalExpiry, credentials); Instant updatedExpiry = clock.instant().plus(Duration.ofHours(24)); writeCredentials(credentialsPath, updatedExpiry); // File updated, but old credentials still valid credentials = credentialsProvider.getCredentials(); - Assertions.assertEquals(originalExpiry.toString(), credentials.getAWSAccessKeyId()); + assertExpiryEquals(originalExpiry, credentials); // Credentials refreshes when it is < 30 minutes left until expiry clock.advance(Duration.ofHours(11).plus(Duration.ofMinutes(31))); credentials = credentialsProvider.getCredentials(); - Assertions.assertEquals(updatedExpiry.toString(), credentials.getAWSAccessKeyId()); + assertExpiryEquals(updatedExpiry, credentials); + } + @Test + void deserializes_credentials() throws IOException { + Instant originalExpiry = clock.instant().plus(Duration.ofHours(12)); + writeCredentials(credentialsPath, originalExpiry); + VespaAwsCredentialsProvider credentialsProvider = new VespaAwsCredentialsProvider(credentialsPath, clock); + AWSCredentials credentials = credentialsProvider.getCredentials(); + assertExpiryEquals(originalExpiry, credentials); + Assertions.assertEquals("awsAccessKey", credentials.getAWSAccessKeyId()); + Assertions.assertEquals("awsSecretKey", credentials.getAWSSecretKey()); + Assertions.assertEquals("sessionToken", ((VespaAwsCredentialsProvider.Credentials)credentials).getSessionToken()); } private void writeCredentials(Path path, Instant expiry) throws IOException { String content = """ { - "awsAccessKey": "%1$s", - "awsSecretKey": "%1$s", - "sessionToken": "%1$s", - "expiry": "%1$s" + "awsAccessKey": "awsAccessKey", + "awsSecretKey": "awsSecretKey", + "sessionToken": "sessionToken", + "expiry": "%s" }""".formatted(expiry.toString()); Files.writeString(path, content); } + + private void assertExpiryEquals(Instant expiry, AWSCredentials credentials) { + Assertions.assertEquals(expiry, ((VespaAwsCredentialsProvider.Credentials)credentials).expiry()); + } } |