You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2017/03/20 20:59:22 UTC

[39/48] wicket git commit: WICKET-6332 NullPointerException in PageParameters#equals()

WICKET-6332 NullPointerException in PageParameters#equals()


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/f2adf1c8
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/f2adf1c8
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/f2adf1c8

Branch: refs/heads/master
Commit: f2adf1c86369638ad5bb465c00924fec0428cfae
Parents: 0938936
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Mar 6 09:04:19 2017 +0100
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Mar 20 21:42:32 2017 +0100

----------------------------------------------------------------------
 .../mapper/parameter/INamedParameters.java      |  2 +-
 .../mapper/parameter/PageParameters.java        |  2 ++
 .../mapper/parameter/PageParametersTest.java    | 35 +++++++++++++++++++-
 3 files changed, 37 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/f2adf1c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
index 447c9cc..000e34f 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/INamedParameters.java
@@ -59,7 +59,7 @@ public interface INamedParameters
 	 * @author Matej Knopp
 	 */
 	@SuppressWarnings("serial")
-	public static class NamedPair implements IClusterable
+	class NamedPair implements IClusterable
 	{
 		private final String key;
 		private final String value;

http://git-wip-us.apache.org/repos/asf/wicket/blob/f2adf1c8/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
index 2df4a9e..c985dcb 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
@@ -467,6 +467,8 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
 			if (other.namedParameters != null)
 				return false;
 		}
+		else if (other.namedParameters == null)
+			return false;
 		else if (!CollectionUtils.isEqualCollection(namedParameters, other.namedParameters))
 			return false;
 		return true;

http://git-wip-us.apache.org/repos/asf/wicket/blob/f2adf1c8/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
----------------------------------------------------------------------
diff --git a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
index 27b44af..d390eee 100644
--- a/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
+++ b/wicket-request/src/test/java/org/apache/wicket/request/mapper/parameter/PageParametersTest.java
@@ -18,6 +18,7 @@ package org.apache.wicket.request.mapper.parameter;
 
 import static org.hamcrest.CoreMatchers.equalTo;
 import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.Matchers.not;
 
 import java.util.List;
 
@@ -300,7 +301,7 @@ public class PageParametersTest extends Assert
 	 * https://issues.apache.org/jira/browse/WICKET-6283
 	 */
 	@Test
-	public void equalityOfDiferenteNamedParametersOrder()
+	public void equalityOfDifferentNamedParametersOrder()
 	{
 		PageParameters p1 = new PageParameters()
 				.add("a", "b")
@@ -314,6 +315,38 @@ public class PageParametersTest extends Assert
 	}
 
 	/**
+	 * namedParameters equality should handle null namedParameters instance.
+	 *
+	 * https://issues.apache.org/jira/browse/WICKET-6332
+	 */
+	@Test
+	public void equalityWithEmptyNamedParameters()
+	{
+		PageParameters p1 = new PageParameters()
+				.add("a", "b");
+
+		PageParameters p2 = new PageParameters();
+
+		assertThat(p1, is(not(equalTo(p2))));
+	}
+
+	/**
+	 * indexedParameters equality should handle null namedParameters instance.
+	 *
+	 * https://issues.apache.org/jira/browse/WICKET-6332
+	 */
+	@Test
+	public void equalityWithEmptyIndexedParameters()
+	{
+		PageParameters p1 = new PageParameters()
+				.set(0, "b");
+
+		PageParameters p2 = new PageParameters();
+
+		assertThat(p1, is(not(equalTo(p2))));
+	}
+
+	/**
 	 * NamedPairs hashCode should not depend on the type
 	 *
 	 * https://issues.apache.org/jira/browse/WICKET-5669