You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by da...@apache.org on 2017/04/18 13:49:39 UTC

svn commit: r1791787 - /felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterMapTest.java

Author: davidb
Date: Tue Apr 18 13:49:38 2017
New Revision: 1791787

URL: http://svn.apache.org/viewvc?rev=1791787&view=rev
Log:
Additonal test.

Modified:
    felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterMapTest.java

Modified: felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterMapTest.java
URL: http://svn.apache.org/viewvc/felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterMapTest.java?rev=1791787&r1=1791786&r2=1791787&view=diff
==============================================================================
--- felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterMapTest.java (original)
+++ felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterMapTest.java Tue Apr 18 13:49:38 2017
@@ -25,6 +25,7 @@ import java.util.Date;
 import java.util.Dictionary;
 import java.util.HashMap;
 import java.util.Hashtable;
+import java.util.LinkedHashMap;
 import java.util.Map;
 
 import org.junit.After;
@@ -377,6 +378,28 @@ public class ConverterMapTest {
         assertEquals(999L, dto.pong);
     }
 
+    @Test
+    public void testRemovePasswords() {
+        Map<String, Object> m = new LinkedHashMap<>();
+        m.put("foo", "bar");
+        m.put("password", "secret");
+
+        Converter c = converter.newConverterBuilder().
+            rule(new Rule<Map<String,Object>,String>(v -> {
+                Map<String, Object> cm = new LinkedHashMap<>(v);
+
+                for (Map.Entry<String, Object> entry : cm.entrySet()) {
+                    if (entry.getKey().contains("password"))
+                        entry.setValue("xxx");
+                }
+                return converter.convert(cm).to(String.class);
+            }) {}).
+            build();
+        assertEquals("{foo=bar, password=xxx}", c.convert(m).to(String.class));
+        assertEquals("Original should not be modified",
+                "{foo=bar, password=secret}", m.toString());
+    }
+
     interface TestInterface {
         String foo();
         int bar();