1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.exec.util;
19
20 import static org.junit.jupiter.api.Assertions.assertEquals;
21 import static org.junit.jupiter.api.Assertions.assertTrue;
22
23 import java.util.HashMap;
24 import java.util.Map;
25
26 import org.apache.commons.exec.environment.EnvironmentUtils;
27 import org.junit.jupiter.api.Test;
28
29
30
31 public class MapUtilTest {
32
33
34
35 @Test
36 public void testCopyMap() throws Exception {
37
38 final HashMap<String, String> procEnvironment = new HashMap<>();
39 procEnvironment.put("JAVA_HOME", "/usr/opt/java");
40
41 final Map<String, String> result = MapUtils.copy(procEnvironment);
42 assertEquals(1, result.size());
43 assertEquals(1, procEnvironment.size());
44 assertEquals("/usr/opt/java", result.get("JAVA_HOME"));
45
46 result.remove("JAVA_HOME");
47 assertTrue(result.isEmpty());
48 assertEquals(1, procEnvironment.size());
49 }
50
51
52
53
54 @Test
55 public void testMergeMap() throws Exception {
56
57 final Map<String, String> procEnvironment = EnvironmentUtils.getProcEnvironment();
58 final HashMap<String, String> applicationEnvironment = new HashMap<>();
59
60 applicationEnvironment.put("appMainClass", "foo.bar.Main");
61 final Map<String, String> result = MapUtils.merge(procEnvironment, applicationEnvironment);
62 assertEquals(procEnvironment.size() + applicationEnvironment.size(), result.size());
63 assertEquals("foo.bar.Main", result.get("appMainClass"));
64 }
65
66
67
68
69 @Test
70 public void testPrefixMap() throws Exception {
71
72 final HashMap<String, String> procEnvironment = new HashMap<>();
73 procEnvironment.put("JAVA_HOME", "/usr/opt/java");
74
75 final Map<String, String> result = MapUtils.prefix(procEnvironment, "env");
76 assertEquals(procEnvironment.size(), result.size());
77 assertEquals("/usr/opt/java", result.get("env.JAVA_HOME"));
78 }
79 }