public Map<String, Object> getConfigurationByPluginType(final String pluginType) {
        return configurations.stream()
            .filter(config -> config.type().equalsIgnoreCase(pluginType))
            .map(PluginConfiguration::values)
            .reduce(new HashMap<>(), (accumulator, map) -> {
                accumulator.putAll(map);
                return accumulator;
            });
    }
@Test
    void shouldGetOrderedMergeConfigurationProperties() {
        // Given
        PluginConfigurations configurations = new PluginConfigurations(List.of(
            new PluginConfiguration(0, PLUGIN_TEST, Map.of(
                "prop1", "v1",
                "prop2", "v1",
                "prop3", "v1"
            )),
            new PluginConfiguration(2, PLUGIN_TEST, Map.of(
                "prop1", "v1",
                "prop2", "v2",
                "prop3", "v3"
            )),
            new PluginConfiguration(1, PLUGIN_TEST, Map.of(
                "prop1", "v2",
                "prop2", "v2",
                "prop3", "v2"
            ))
        ));
        // When
        Map<String, Object> result = configurations.getConfigurationByPluginType(PLUGIN_TEST);

        // Then
        Assertions.assertEquals(Map.of(
            "prop1", "v1",
            "prop2", "v2",
            "prop3", "v3"
        ), result);
    }