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/02/11 00:29:45 UTC
svn commit: r1782547 - in /felix/trunk/osgi-r7/configadmin/src:
main/java/org/apache/felix/cm/impl/ConfigurationImpl.java
test/java/org/apache/felix/cm/impl/ConfigurationImplTest.java
Author: davidb
Date: Sat Feb 11 00:29:45 2017
New Revision: 1782547
URL: http://svn.apache.org/viewvc?rev=1782547&view=rev
Log:
ConfigurationImpl.equals ensures that null is not equals to an empty map.
Modified:
felix/trunk/osgi-r7/configadmin/src/main/java/org/apache/felix/cm/impl/ConfigurationImpl.java
felix/trunk/osgi-r7/configadmin/src/test/java/org/apache/felix/cm/impl/ConfigurationImplTest.java
Modified: felix/trunk/osgi-r7/configadmin/src/main/java/org/apache/felix/cm/impl/ConfigurationImpl.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/configadmin/src/main/java/org/apache/felix/cm/impl/ConfigurationImpl.java?rev=1782547&r1=1782546&r2=1782547&view=diff
==============================================================================
--- felix/trunk/osgi-r7/configadmin/src/main/java/org/apache/felix/cm/impl/ConfigurationImpl.java (original)
+++ felix/trunk/osgi-r7/configadmin/src/main/java/org/apache/felix/cm/impl/ConfigurationImpl.java Sat Feb 11 00:29:45 2017
@@ -678,6 +678,16 @@ public class ConfigurationImpl extends C
*/
static boolean equals( Dictionary<String, Object> props1, Dictionary<String, Object> props2)
{
+ if (props1 == null) {
+ if (props2 == null) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if (props2 == null) {
+ return false;
+ }
+
final int count1 = getCount(props1);
final int count2 = getCount(props2);
if ( count1 != count2 )
Modified: felix/trunk/osgi-r7/configadmin/src/test/java/org/apache/felix/cm/impl/ConfigurationImplTest.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/configadmin/src/test/java/org/apache/felix/cm/impl/ConfigurationImplTest.java?rev=1782547&r1=1782546&r2=1782547&view=diff
==============================================================================
--- felix/trunk/osgi-r7/configadmin/src/test/java/org/apache/felix/cm/impl/ConfigurationImplTest.java (original)
+++ felix/trunk/osgi-r7/configadmin/src/test/java/org/apache/felix/cm/impl/ConfigurationImplTest.java Sat Feb 11 00:29:45 2017
@@ -18,13 +18,14 @@
*/
package org.apache.felix.cm.impl;
-import static org.junit.Assert.assertTrue;
-
import java.util.Dictionary;
import java.util.Hashtable;
import org.junit.Test;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
public class ConfigurationImplTest {
@Test public void testEqualsWithArrays() {
@@ -38,5 +39,21 @@ public class ConfigurationImplTest {
props2.put("array", new Long[] {1L,2L});
assertTrue(ConfigurationImpl.equals(props1, props2));
+
+ final Dictionary<String, Object> props3 = new Hashtable<String, Object>();
+ props3.put("array", new long[] {1,2,3});
+ assertFalse(ConfigurationImpl.equals(props1, props3));
+
+ final Dictionary<String, Object> props4 = new Hashtable<String, Object>();
+ props3.put("array", new long[] {1});
+ assertFalse(ConfigurationImpl.equals(props1, props4));
+ }
+
+ @Test public void testEqualsForNull() {
+ final Dictionary<String, Object> props = new Hashtable<String, Object>();
+ assertFalse(ConfigurationImpl.equals(props, null));
+ assertFalse(ConfigurationImpl.equals(null, props));
+ assertTrue(ConfigurationImpl.equals(null, null));
+
}
}