diff --git a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/secretmanager/GoogleSecretComparatorByVersion.java b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/secretmanager/GoogleSecretComparatorByVersion.java index 391026a4..f419e0a4 100644 --- a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/secretmanager/GoogleSecretComparatorByVersion.java +++ b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/secretmanager/GoogleSecretComparatorByVersion.java @@ -30,7 +30,11 @@ public class GoogleSecretComparatorByVersion implements Comparator secrets = new ArrayList(); secrets.add(secret); @@ -88,20 +88,26 @@ public class GoogleSecretManagerEnvironmentRepositoryTests { @Test @SuppressWarnings("unchecked") - public void testGetSecretValues() throws IOException { + public void testGetSecretValues() { RestTemplate rest = mock(RestTemplate.class); GoogleConfigProvider provider = mock(HttpHeaderGoogleConfigProvider.class); when(provider.getValue(HttpHeaderGoogleConfigProvider.PROJECT_ID_HEADER, true)).thenReturn("test-project"); SecretManagerServiceClient mock = mock(SecretManagerServiceClient.class); SecretManagerServiceClient.ListSecretVersionsPagedResponse response = mock( - SecretManagerServiceClient.ListSecretVersionsPagedResponse.class); + SecretManagerServiceClient.ListSecretVersionsPagedResponse.class); SecretVersion secret1 = SecretVersion.newBuilder().setName("projects/test-project/secrets/test/versions/1") - .setState(SecretVersion.State.ENABLED).build(); - SecretVersion secret2 = SecretVersion.newBuilder().setName("projects/test-project/secrets/test/versions/2") - .setState(SecretVersion.State.DISABLED).build(); + .setState(SecretVersion.State.ENABLED).build(); + SecretVersion secret2 = SecretVersion.newBuilder().setName("projects/test-project/secrets/test/versions/4") + .setState(SecretVersion.State.ENABLED).build(); + SecretVersion secret3 = SecretVersion.newBuilder().setName("projects/test-project/secrets/test/versions/9") + .setState(SecretVersion.State.ENABLED).build(); + SecretVersion secret4 = SecretVersion.newBuilder().setName("projects/test-project/secrets/test/versions/12") + .setState(SecretVersion.State.ENABLED).build(); List secrets = new ArrayList(); secrets.add(secret1); secrets.add(secret2); + secrets.add(secret3); + secrets.add(secret4); when(response.iterateAll()).thenReturn(secrets); Mockito.doReturn(response).when(mock).listSecretVersions(any(ListSecretVersionsRequest.class)); GoogleSecretManagerV1AccessStrategy strategy = new GoogleSecretManagerV1AccessStrategy(rest, provider, mock); @@ -114,7 +120,7 @@ public class GoogleSecretManagerEnvironmentRepositoryTests { ArgumentMatcher matcher = new ArgumentMatcher() { @Override public boolean matches(AccessSecretVersionRequest accessSecretVersionRequest) { - if (accessSecretVersionRequest.getName().equals("projects/test-project/secrets/test/versions/1")) { + if (accessSecretVersionRequest.getName().equals("projects/test-project/secrets/test/versions/12")) { return true; } return false; @@ -122,7 +128,7 @@ public class GoogleSecretManagerEnvironmentRepositoryTests { }; Mockito.doReturn(accessSecretVersionResponse).when(mock).accessSecretVersion(ArgumentMatchers.argThat(matcher)); assertThat(strategy.getSecretValue(Secret.newBuilder().setName("projects/test-project/secrets/test").build(), - new GoogleSecretComparatorByVersion())).isEqualTo("test-value"); + new GoogleSecretComparatorByVersion())).isEqualTo("test-value"); } }