diff --git a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java index dd008ed33..2a1d905fd 100644 --- a/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java +++ b/testcontainers-dapr/src/main/java/io/dapr/testcontainers/DaprContainer.java @@ -210,21 +210,19 @@ public class DaprContainer extends GenericContainer { try { Map component = YAML_MAPPER.loadAs(Files.newInputStream(path), Map.class); - String type = (String) component.get("type"); Map metadata = (Map) component.get("metadata"); String name = (String) metadata.get("name"); Map spec = (Map) component.get("spec"); + String type = (String) spec.get("type"); String version = (String) spec.get("version"); List> specMetadata = - (List>) spec.getOrDefault("metadata", Collections.emptyMap()); + (List>) spec.getOrDefault("metadata", Collections.emptyList()); ArrayList metadataEntries = new ArrayList<>(); for (Map specMetadataItem : specMetadata) { - for (Map.Entry metadataItem : specMetadataItem.entrySet()) { - metadataEntries.add(new MetadataEntry(metadataItem.getKey(), metadataItem.getValue())); - } + metadataEntries.add(new MetadataEntry(specMetadataItem.get("name"), specMetadataItem.get("value"))); } return withComponent(new Component(name, type, version, metadataEntries)); diff --git a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java index d02a6c1cd..3de5ccdf1 100644 --- a/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java +++ b/testcontainers-dapr/src/test/java/io/dapr/testcontainers/DaprComponentTest.java @@ -69,20 +69,14 @@ public class DaprComponentTest { + "metadata:\n" + " name: statestore\n" + "spec:\n" - + " type: null\n" + + " type: state.redis\n" + " version: v1\n" + " metadata:\n" - + " - name: name\n" - + " value: keyPrefix\n" - + " - name: value\n" + + " - name: keyPrefix\n" + " value: name\n" - + " - name: name\n" - + " value: redisHost\n" - + " - name: value\n" + + " - name: redisHost\n" + " value: redis:6379\n" - + " - name: name\n" - + " value: redisPassword\n" - + " - name: value\n" + + " - name: redisPassword\n" + " value: ''\n"; assertEquals(expectedComponentYaml, componentYaml);