You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by pe...@apache.org on 2016/11/21 03:26:52 UTC
[1/2] wicket git commit: WICKET-6257 adding the cid parameter to a
page as soon as ConversationPropagator detects it
Repository: wicket
Updated Branches:
refs/heads/wicket-7.x a1fd7ec53 -> 6e8808cc1
WICKET-6257 adding the cid parameter to a page as soon as ConversationPropagator detects it
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/fac2d71c
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/fac2d71c
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/fac2d71c
Branch: refs/heads/wicket-7.x
Commit: fac2d71c0bbbf478e4da9ea9e629b46d9ba05b31
Parents: a1fd7ec
Author: Pedro Henrique Oliveira dos Santos <pe...@apache.org>
Authored: Mon Nov 21 00:57:46 2016 -0200
Committer: Pedro Henrique Oliveira dos Santos <pe...@apache.org>
Committed: Mon Nov 21 00:57:46 2016 -0200
----------------------------------------------------------------------
.../wicket/cdi/ConversationPropagator.java | 2 +-
.../wicket/cdi/ConversationPropagatorTest.java | 50 ++++++++++++++++++++
.../cdi/testapp/TestConversationPage.java | 2 +
3 files changed, 53 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/fac2d71c/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
----------------------------------------------------------------------
diff --git a/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java b/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
index 4ff61eb..bdffc18 100644
--- a/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
+++ b/wicket-cdi-1.1/src/main/java/org/apache/wicket/cdi/ConversationPropagator.java
@@ -124,7 +124,7 @@ public class ConversationPropagator extends AbstractRequestCycleListener
}
@Override
- public void onRequestHandlerScheduled(RequestCycle cycle, IRequestHandler handler)
+ public void onRequestHandlerExecuted(RequestCycle cycle, IRequestHandler handler)
{
// propagate current non-transient conversation to the newly scheduled
// page
http://git-wip-us.apache.org/repos/asf/wicket/blob/fac2d71c/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
----------------------------------------------------------------------
diff --git a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
index eefebde..945c9cf 100644
--- a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
+++ b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/ConversationPropagatorTest.java
@@ -16,9 +16,14 @@
*/
package org.apache.wicket.cdi;
+import javax.enterprise.context.Conversation;
+import javax.inject.Inject;
+
import org.apache.wicket.cdi.testapp.TestConversationPage;
import org.apache.wicket.cdi.testapp.TestConversationalPage;
+import org.apache.wicket.core.request.mapper.MountedMapper;
import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.hamcrest.CoreMatchers;
import org.junit.Test;
/**
@@ -26,6 +31,9 @@ import org.junit.Test;
*/
public class ConversationPropagatorTest extends WicketCdiTestCase
{
+ @Inject
+ Conversation conversation;
+
@Test
public void testAutoConversationNonBookmarkable()
{
@@ -89,6 +97,47 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
}
@Test
+ public void testPropagationAllHybrid()
+ {
+ configure(new CdiConfiguration().setPropagation(ConversationPropagation.ALL));
+ tester.getApplication().getRootRequestMapperAsCompound().add(new MountedMapper("segment/${pageType}", TestConversationPage.class));
+
+ tester.startPage(TestConversationPage.class, new PageParameters().add("pageType", "hybrid"));
+
+ int i;
+ for (i = 0; i < 3; i++)
+ {
+ tester.assertCount(i);
+ tester.clickLink("increment");
+ }
+ tester.clickLink("next");
+ for (; i < 6; i++)
+ {
+ tester.assertCount(i);
+ tester.clickLink("increment");
+ }
+ }
+
+ /**
+ * https://issues.apache.org/jira/browse/WICKET-6257
+ */
+ @Test
+ public void testPropagationAllHybridRefresh()
+ {
+ configure(new CdiConfiguration().setPropagation(ConversationPropagation.ALL));
+ tester.getApplication().getRootRequestMapperAsCompound().add(new MountedMapper("segment/${pageType}", TestConversationPage.class));
+
+ tester.startPage(TestConversationPage.class, new PageParameters().add("pageType", "hybrid"));
+
+ String pageId = tester.getLastRenderedPage().getId();
+ String cid = conversation.getId();
+
+ tester.executeUrl("segment/hybrid?"+pageId+"&cid="+cid);
+
+ assertThat(tester.getLastRenderedPage().getId(), CoreMatchers.is(pageId));
+ }
+
+ @Test
public void testPropagationAllBookmarkable()
{
configure(new CdiConfiguration().setPropagation(ConversationPropagation.ALL));
@@ -149,4 +198,5 @@ public class ConversationPropagatorTest extends WicketCdiTestCase
tester.assertCount(1);
}
}
+
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/fac2d71c/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/testapp/TestConversationPage.java
----------------------------------------------------------------------
diff --git a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/testapp/TestConversationPage.java b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/testapp/TestConversationPage.java
index d421e39..c6cc8bc 100644
--- a/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/testapp/TestConversationPage.java
+++ b/wicket-cdi-1.1/src/test/java/org/apache/wicket/cdi/testapp/TestConversationPage.java
@@ -73,6 +73,8 @@ public class TestConversationPage extends WebPage
String pageType = parameters.get("pageType").toString("nonbookmarkable");
if ("bookmarkable".equals(pageType.toLowerCase()))
setResponsePage(TestNonConversationalPage.class);
+ else if ("hybrid".equals(pageType.toLowerCase()))
+ setResponsePage(TestConversationPage.this);
else
setResponsePage(new TestNonConversationalPage());
}
[2/2] wicket git commit: WICKET-6283 ignoring named parameters order
when testing PageParameter equality
Posted by pe...@apache.org.
WICKET-6283 ignoring named parameters order when testing PageParameter equality
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/6e8808cc
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/6e8808cc
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/6e8808cc
Branch: refs/heads/wicket-7.x
Commit: 6e8808cc199d1804326be3d84f061b5232779513
Parents: fac2d71
Author: Pedro Henrique Oliveira dos Santos <pe...@apache.org>
Authored: Mon Nov 21 01:26:17 2016 -0200
Committer: Pedro Henrique Oliveira dos Santos <pe...@apache.org>
Committed: Mon Nov 21 01:26:17 2016 -0200
----------------------------------------------------------------------
wicket-request/pom.xml | 4 ++++
.../request/mapper/parameter/PageParameters.java | 3 ++-
.../mapper/parameter/PageParametersTest.java | 19 +++++++++++++++++++
3 files changed, 25 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/6e8808cc/wicket-request/pom.xml
----------------------------------------------------------------------
diff --git a/wicket-request/pom.xml b/wicket-request/pom.xml
index 780bb04..af5a117 100755
--- a/wicket-request/pom.xml
+++ b/wicket-request/pom.xml
@@ -30,5 +30,9 @@
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-util</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-collections4</artifactId>
+ </dependency>
</dependencies>
</project>
http://git-wip-us.apache.org/repos/asf/wicket/blob/6e8808cc/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 f283a80..2df4a9e 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
@@ -24,6 +24,7 @@ import java.util.List;
import java.util.Set;
import java.util.TreeSet;
+import org.apache.commons.collections4.CollectionUtils;
import org.apache.wicket.request.IRequestMapper;
import org.apache.wicket.util.io.IClusterable;
import org.apache.wicket.util.lang.Args;
@@ -466,7 +467,7 @@ public class PageParameters implements IClusterable, IIndexedParameters, INamedP
if (other.namedParameters != null)
return false;
}
- else if (!namedParameters.equals(other.namedParameters))
+ else if (!CollectionUtils.isEqualCollection(namedParameters, other.namedParameters))
return false;
return true;
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/6e8808cc/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 155ecbe..d4fb2ad 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
@@ -295,6 +295,25 @@ public class PageParametersTest extends Assert
}
/**
+ * NamedPairs equality should not depend on the type
+ *
+ * https://issues.apache.org/jira/browse/WICKET-6283
+ */
+ @Test
+ public void equalityOfDiferenteNamedParametersOrder()
+ {
+ PageParameters p1 = new PageParameters()
+ .add("a", "b")
+ .add("c", "d");
+
+ PageParameters p2 = new PageParameters()
+ .add("c", "d")
+ .add("a", "b");
+
+ assertThat(p1, is(equalTo(p2)));
+ }
+
+ /**
* NamedPairs hashCode should not depend on the type
*
* https://issues.apache.org/jira/browse/WICKET-5669