This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7b71cc497774ce5c6964367628f44afdb6f60cf3
Author: Andrea Cosentino <anco...@gmail.com>
AuthorDate: Wed Jul 13 14:16:57 2022 +0200

    CAMEL-18208 - vault: allow to retrieve a specific secret version/revision - 
Azure Key Vault
---
 .../operations/KeyVaultPropertiesSourceTestIT.java | 124 +++++++++++++++++++++
 1 file changed, 124 insertions(+)

diff --git 
a/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java
 
b/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java
index 819f15aed1e..9e025ad27b8 100644
--- 
a/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java
+++ 
b/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java
@@ -134,4 +134,128 @@ public class KeyVaultPropertiesSourceTestIT extends 
CamelTestSupport {
             assertMockEndpointsSatisfied();
         });
     }
+
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", 
matches = ".*")
+    @Test
+    public void testPropertiesWithVersionFunction() throws Exception {
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() {
+                
from("direct:version").setBody(simple("{{azure:database/password@79be21dd88774b91aff2dfa40fa9ea77}}")).to("mock:bar");
+            }
+        });
+        context.start();
+
+        getMockEndpoint("mock:bar").expectedBodiesReceived("password123");
+
+        template.sendBody("direct:version", "Hello World");
+        assertMockEndpointsSatisfied();
+    }
+
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", 
matches = ".*")
+    @Test
+    public void testPropertiesWithVersionAndNoFieldFunction() throws Exception 
{
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() {
+                
from("direct:version").setBody(simple("{{azure:database@79be21dd88774b91aff2dfa40fa9ea77}}")).to("mock:bar");
+            }
+        });
+        context.start();
+
+        
getMockEndpoint("mock:bar").expectedBodiesReceived("{\"username\":\"admin\",\"password\":\"password123\",\"engine\":\"postgres\",\"host\":\"127.0.0.1\",\"port\":\"3128\",\"dbname\":\"db\"}");
+
+        template.sendBody("direct:version", "Hello World");
+        assertMockEndpointsSatisfied();
+    }
+
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", 
matches = ".*")
+    @Test
+    public void testPropertiesWithVersionNoFieldAndDefaultValueFunction() 
throws Exception {
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() {
+                
from("direct:version").setBody(simple("{{azure:database:pippo@79be21dd88774b91aff2dfa40fa9ea77}}"))
+                        .to("mock:bar");
+            }
+        });
+        context.start();
+
+        
getMockEndpoint("mock:bar").expectedBodiesReceived("{\"username\":\"admin\",\"password\":\"password123\",\"engine\":\"postgres\",\"host\":\"127.0.0.1\",\"port\":\"3128\",\"dbname\":\"db\"}");
+
+        template.sendBody("direct:version", "Hello World");
+        assertMockEndpointsSatisfied();
+    }
+
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", 
matches = ".*")
+    @Test
+    public void 
testPropertiesWithVersionNoFieldDefaultValueNotExistentSecretFunction() throws 
Exception {
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() {
+                
from("direct:version").setBody(simple("{{azure:database:pippo@79be21dd88774b91aff2dfa40fa9ea78}}"))
+                        .to("mock:bar");
+            }
+        });
+        context.start();
+
+        getMockEndpoint("mock:bar").expectedBodiesReceived("pippo");
+
+        template.sendBody("direct:version", "Hello World");
+        assertMockEndpointsSatisfied();
+    }
+
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", 
matches = ".*")
+    @Test
+    public void 
testPropertiesWithVersionNoFieldDefaultValueNotExistentVersionFunction() throws 
Exception {
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() {
+                
from("direct:version").setBody(simple("azure:database1:pippo@79be21dd88774b91aff2dfa40fa9ea78}}"))
+                        .to("mock:bar");
+            }
+        });
+        context.start();
+
+        getMockEndpoint("mock:bar").expectedBodiesReceived("pippo");
+
+        template.sendBody("direct:version", "Hello World");
+        assertMockEndpointsSatisfied();
+    }
+
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", 
matches = ".*")
+    @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", 
matches = ".*")
+    @Test
+    public void testPropertiesWithVersionFieldAndDefaultValueFunction() throws 
Exception {
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() {
+                
from("direct:version").setBody(simple("{{azure:database/password:pippo@79be21dd88774b91aff2dfa40fa9ea77}}}}"))
+                        .to("mock:bar");
+            }
+        });
+        context.start();
+
+        getMockEndpoint("mock:bar").expectedBodiesReceived("password123");
+
+        template.sendBody("direct:version", "Hello World");
+        assertMockEndpointsSatisfied();
+    }
 }

Reply via email to