1 package org.openecomp.sdc.be.dao.utils;
3 import com.google.common.collect.ImmutableMap;
7 import java.util.function.Function;
9 import static org.assertj.core.api.Assertions.assertThat;
10 import static org.assertj.core.api.Assertions.assertThatThrownBy;
11 import static org.openecomp.sdc.be.dao.utils.MapUtil.mergeMaps;
13 public class MapUtilTest {
16 public void mergeMaps_whenBothMapsAreNull_returnEmptyMap() {
17 assertThat(mergeMaps(null, null)).isEmpty();
21 public void mergeMaps_whenFirstMapIsNull_returnSecondMap() {
22 ImmutableMap<String, String> second = ImmutableMap.of("a", "b", "c", "d");
23 assertThat(mergeMaps(null, second))
25 .containsAllEntriesOf(second);
29 public void mergeMaps_whenSecondMapsIsNull_returnFirstMap() {
30 ImmutableMap<String, String> first = ImmutableMap.of("a", "b", "c", "d");
31 assertThat(mergeMaps(first, null))
33 .containsAllEntriesOf(first);
37 public void mergeMaps_avoidDuplications_takeValFromFirstMap() {
38 ImmutableMap<String, String> first = ImmutableMap.of("key1", "val1", "key2", "val2");
39 ImmutableMap<String, String> second = ImmutableMap.of("key1", "val11", "key3", "val3");
40 assertThat(mergeMaps(first, second))
41 .containsEntry("key1", "val1")
42 .containsEntry("key2", "val2")
43 .containsEntry("key3", "val3");
46 public void testGet() throws Exception {
47 Map<String, ? extends Object> map = null;
52 result = MapUtil.get(map, path);
53 path = "\\mock\\mock";
54 result = MapUtil.get(map, path);
58 public void testGroupListBy() throws Exception {
59 Collection valuesToMap = new LinkedList<String>();
60 Function<String, String> groupingFunction = new Function<String, String>() {
63 public String apply(String t) {
67 Map<String, List<String>> result;
70 result = MapUtil.groupListBy(valuesToMap, groupingFunction);
74 public void testToMap() throws Exception {
75 Collection<String> valuesToMap = null;
76 Function<String, String> mappingFunction = null;
77 Map<String, String> result;
80 result = MapUtil.toMap(valuesToMap, mappingFunction);
84 public void testConvertMapKeys() throws Exception {
85 Map<String, List<String>> map = new HashMap<>();
86 Function<String, String> keyMappingFunction = new Function<String, String>() {
89 public String apply(String t) {
93 Map<String, List<String>> result;
96 result = MapUtil.convertMapKeys(map, keyMappingFunction);
100 public void testNewHashMap() throws Exception {
101 final String[] keys1 = new String[] { "mock" };
102 final String[] values1 = new String[] { "mock" };
103 Map<String, String> result;
106 result = MapUtil.newHashMap(keys1, values1);
109 final String[] keys2 = new String[] { "mock" };
110 final String[] values2 = null;
111 assertThatThrownBy(() -> MapUtil.newHashMap(keys2, values2))
112 .isInstanceOf(IllegalArgumentException.class);
115 final String[] keys3 = null;
116 final String[] values3 = null;
117 assertThatThrownBy(() -> MapUtil.newHashMap(keys3, values3))
118 .isInstanceOf(IllegalArgumentException.class);
121 final String[] values4 = new String[] { "mock" };
122 final String[] keys4 = null;
123 assertThatThrownBy(() -> MapUtil.newHashMap(keys4, values4))
124 .isInstanceOf(IllegalArgumentException.class);