Merge branch '3.0.x'

This commit is contained in:
Stephane Nicoll 2023-05-08 15:33:52 +02:00
commit bc63c511e7

View File

@ -24,6 +24,7 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.SortedMap;
import java.util.stream.Collectors;
import org.junit.jupiter.api.Test;
@ -244,7 +245,7 @@ class MapBinderTests {
existing.put("baz", 1001);
Bindable<Map<String, Integer>> target = STRING_INTEGER_MAP.withExistingValue(existing);
Map<String, Integer> result = this.binder.bind("foo", target).get();
assertThat(result).isExactlyInstanceOf(HashMap.class);
assertThat(result).isInstanceOf(HashMap.class);
assertThat(result).hasSize(2);
assertThat(result).containsEntry("bar", 1);
assertThat(result).containsEntry("baz", 1001);
@ -253,10 +254,10 @@ class MapBinderTests {
@Test
void bindToMapShouldRespectMapType() {
this.sources.add(new MockConfigurationPropertySource("foo.bar", "1"));
ResolvableType type = ResolvableType.forClassWithGenerics(HashMap.class, String.class, Integer.class);
ResolvableType type = ResolvableType.forClassWithGenerics(SortedMap.class, String.class, Integer.class);
Object defaultMap = this.binder.bind("foo", STRING_INTEGER_MAP).get();
Object customMap = this.binder.bind("foo", Bindable.of(type)).get();
assertThat(customMap).isExactlyInstanceOf(HashMap.class).isNotInstanceOf(defaultMap.getClass());
assertThat(customMap).isInstanceOf(SortedMap.class).isNotInstanceOf(defaultMap.getClass());
}
@Test