final touches, all tests passing now
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/7d04e6f0 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/7d04e6f0 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/7d04e6f0 Branch: refs/heads/sandbox/feedback Commit: 7d04e6f04952f57f74e9754a90a9ca818cc994fb Parents: b71a4b6 Author: Igor Vaynberg <[email protected]> Authored: Wed Feb 1 18:00:55 2012 -0800 Committer: Igor Vaynberg <[email protected]> Committed: Wed Feb 1 18:00:55 2012 -0800 ---------------------------------------------------------------------- .../apache/wicket/feedback/FeedbackCollector.java | 137 +++++++++++++++ .../wicket/feedback/FeedbackMessageCollector.java | 94 ---------- .../wicket/feedback/FeedbackMessagesModel.java | 2 +- .../validation/FormComponentFeedbackBorder.java | 4 +- .../validation/FormComponentFeedbackIndicator.java | 4 +- .../wicket/util/tester/BaseWicketTester.java | 14 +- .../form/feedback/FeedbackFormPage_result2.html | 2 +- .../form/validation/FormValidatorBehaviorTest.java | 20 +- .../innerfeedback/LocalizedFeedbackBorder.java | 4 +- .../wicket/validation/ValidatorBehaviorTest.java | 20 +- 10 files changed, 175 insertions(+), 126 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackCollector.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackCollector.java b/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackCollector.java new file mode 100755 index 0000000..850f033 --- /dev/null +++ b/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackCollector.java @@ -0,0 +1,137 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.wicket.feedback; + +import java.util.ArrayList; +import java.util.List; + +import org.apache.wicket.Component; +import org.apache.wicket.MarkupContainer; +import org.apache.wicket.Session; +import org.apache.wicket.util.visit.IVisit; +import org.apache.wicket.util.visit.IVisitor; + +import sun.swing.SwingUtilities2.Section; + +/** + * Collects feedback messages from all the places where they can be stored. + * + * @author igor + */ +public final class FeedbackCollector +{ + private final Component component; + private boolean includeSession = true; + private boolean recursive = true; + + /** + * Constructs a collector that will only collect messages from {@link Session}. To collect + * messages from session and components use {@link #FeedbackCollector(Component)}. + */ + public FeedbackCollector() + { + this(null); + } + + /** + * Constrcuts a collector that will collect messages from {@link Session} and specified + * {@code container} + * + * @param component + * root component from which feedback will be collected + */ + public FeedbackCollector(Component component) + { + this.component = component; + } + + /** + * Controls whether or not feedback from the {@link Session} will be collected + * + * See {@link Section#getFeedbackMessages} + * + * @param value + * @return {@code this} for chaining + */ + public FeedbackCollector setIncludeSession(boolean value) + { + includeSession = value; + return this; + } + + /** + * Controls whether or not feedback will be collected recursively from the decendants of the + * specified component. + * + * @param value + * @return {@code this} for chaining + */ + public FeedbackCollector setRecursive(boolean value) + { + recursive = value; + return this; + } + + /** + * Collects all feedback messages + * + * @return a {@link List} of collected messages + */ + public List<FeedbackMessage> collect() + { + return collect(IFeedbackMessageFilter.ALL); + } + + /** + * Collects all feedback messages that match the specified {@code filter} + * + * @param filter + * @return a {@link List} of collected messages + */ + public List<FeedbackMessage> collect(final IFeedbackMessageFilter filter) + { + final List<FeedbackMessage> messages = new ArrayList<FeedbackMessage>(); + + if (includeSession && Session.exists()) + { + messages.addAll(Session.get().getFeedbackMessages().messages(filter)); + } + + if (component != null && component.hasFeedbackMessage()) + { + messages.addAll(component.getFeedbackMessages().messages(filter)); + } + + if (component != null && recursive && component instanceof MarkupContainer) + { + ((MarkupContainer)component).visitChildren(new IVisitor<Component, Void>() + { + + @Override + public void component(Component object, IVisit<Void> visit) + { + if (object.hasFeedbackMessage()) + { + messages.addAll(object.getFeedbackMessages().messages(filter)); + } + } + }); + } + + return messages; + } +} http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessageCollector.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessageCollector.java b/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessageCollector.java deleted file mode 100755 index 08028b6..0000000 --- a/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessageCollector.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.wicket.feedback; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.wicket.Component; -import org.apache.wicket.MarkupContainer; -import org.apache.wicket.util.visit.IVisit; -import org.apache.wicket.util.visit.IVisitor; - -/** - * Collects feedback messages from all the places where they can be stored. - * - * @author igor - */ -public final class FeedbackMessageCollector -{ - private final Component root; - private boolean includeSession = true; - private boolean recursive = true; - - public FeedbackMessageCollector(Component root) - { - this.root = root; - } - - public FeedbackMessageCollector setIncludeSession(boolean value) - { - includeSession = value; - return this; - } - - public FeedbackMessageCollector setRecursive(boolean value) - { - recursive = value; - return this; - } - - public List<FeedbackMessage> collect() - { - return collect(IFeedbackMessageFilter.ALL); - } - - public List<FeedbackMessage> collect(final IFeedbackMessageFilter filter) - { - final List<FeedbackMessage> messages = new ArrayList<FeedbackMessage>(); - - if (includeSession) - { - messages.addAll(root.getSession().getFeedbackMessages().messages(filter)); - } - - if (root.hasFeedbackMessage()) - { - messages.addAll(root.getFeedbackMessages().messages(filter)); - } - - if (recursive && root instanceof MarkupContainer) - { - ((MarkupContainer)root).visitChildren(new IVisitor<Component, Void>() - { - - @Override - public void component(Component object, IVisit<Void> visit) - { - if (object.hasFeedbackMessage()) - { - messages.addAll(object.getFeedbackMessages().messages(filter)); - } - } - }); - } - - return messages; - } - - -} http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java b/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java index 8d10804..a6a4a46 100644 --- a/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java +++ b/wicket-core/src/main/java/org/apache/wicket/feedback/FeedbackMessagesModel.java @@ -103,7 +103,7 @@ public class FeedbackMessagesModel implements IModel<List<FeedbackMessage>> if (messages == null) { // Get filtered messages from page where component lives - messages = new FeedbackMessageCollector(component).collect(filter); + messages = new FeedbackCollector(component).collect(filter); // Sort the list before returning it if (sortingComparator != null) http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackBorder.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackBorder.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackBorder.java index 6fbab57..aa8ef9f 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackBorder.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackBorder.java @@ -17,7 +17,7 @@ package org.apache.wicket.markup.html.form.validation; import org.apache.wicket.feedback.ContainerFeedbackMessageFilter; -import org.apache.wicket.feedback.FeedbackMessageCollector; +import org.apache.wicket.feedback.FeedbackCollector; import org.apache.wicket.feedback.IFeedback; import org.apache.wicket.feedback.IFeedbackMessageFilter; import org.apache.wicket.markup.html.WebMarkupContainer; @@ -91,7 +91,7 @@ public class FormComponentFeedbackBorder extends Border implements IFeedback { super.onBeforeRender(); // Get the messages for the current page - visible = new FeedbackMessageCollector(getPage()).collect(getMessagesFilter()).size() > 0; + visible = new FeedbackCollector(getPage()).collect(getMessagesFilter()).size() > 0; } /** http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackIndicator.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackIndicator.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackIndicator.java index 5926b54..6d703e8 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackIndicator.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/validation/FormComponentFeedbackIndicator.java @@ -18,7 +18,7 @@ package org.apache.wicket.markup.html.form.validation; import org.apache.wicket.Component; import org.apache.wicket.feedback.ComponentFeedbackMessageFilter; -import org.apache.wicket.feedback.FeedbackMessageCollector; +import org.apache.wicket.feedback.FeedbackCollector; import org.apache.wicket.feedback.IFeedback; import org.apache.wicket.feedback.IFeedbackMessageFilter; import org.apache.wicket.markup.html.panel.Panel; @@ -67,7 +67,7 @@ public class FormComponentFeedbackIndicator extends Panel implements IFeedback { super.onConfigure(); // Get the messages for the current page - setVisible(new FeedbackMessageCollector(getPage()).collect(getFeedbackMessageFilter()) + setVisible(new FeedbackCollector(getPage()).collect(getFeedbackMessageFilter()) .size() > 0); } http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java b/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java index 77a5c45..12710df 100644 --- a/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java +++ b/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java @@ -64,9 +64,8 @@ import org.apache.wicket.ajax.markup.html.AjaxLink; import org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink; import org.apache.wicket.behavior.AbstractAjaxBehavior; import org.apache.wicket.behavior.Behavior; -import org.apache.wicket.feedback.ErrorLevelFeedbackMessageFilter; import org.apache.wicket.feedback.FeedbackMessage; -import org.apache.wicket.feedback.FeedbackMessageCollector; +import org.apache.wicket.feedback.FeedbackCollector; import org.apache.wicket.feedback.IFeedbackMessageFilter; import org.apache.wicket.markup.ContainerInfo; import org.apache.wicket.markup.IMarkupFragment; @@ -1958,8 +1957,15 @@ public class BaseWicketTester public List<Serializable> getMessages(final int level) { - List<FeedbackMessage> allMessages = new FeedbackMessageCollector(getLastRenderedPage()).collect(new ErrorLevelFeedbackMessageFilter( - level)); + List<FeedbackMessage> allMessages = new FeedbackCollector(getLastRenderedPage()).collect(new IFeedbackMessageFilter() + { + + @Override + public boolean accept(FeedbackMessage message) + { + return message.getLevel() == level; + } + }); List<Serializable> actualMessages = Generics.newArrayList(); for (FeedbackMessage message : allMessages) { http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/test/java/org/apache/wicket/markup/html/form/feedback/FeedbackFormPage_result2.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/feedback/FeedbackFormPage_result2.html b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/feedback/FeedbackFormPage_result2.html index e85e5ef..5882e81 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/feedback/FeedbackFormPage_result2.html +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/feedback/FeedbackFormPage_result2.html @@ -1,6 +1,6 @@ <html> <body> -<form wicket:id="form" id="form1" method="post" action="../page?0-2.IFormSubmitListener-form"><div style="width:0px;height:0px;position:absolute;left:-100px;top:-100px;overflow:hidden"><input type="hidden" name="form1_hf_0" id="form1_hf_0" /></div> +<form wicket:id="form" id="form1" method="post" action="../page?1-2.IFormSubmitListener-form"><div style="width:0px;height:0px;position:absolute;left:-100px;top:-100px;overflow:hidden"><input type="hidden" name="form1_hf_0" id="form1_hf_0" /></div> <span wicket:id="feedback"><wicket:border> <wicket:body> <input type="text" wicket:id="input" value="" name="feedback:feedback_body:input"> http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/FormValidatorBehaviorTest.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/FormValidatorBehaviorTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/FormValidatorBehaviorTest.java index 7b0f3c4..9ba9005 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/FormValidatorBehaviorTest.java +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/FormValidatorBehaviorTest.java @@ -20,7 +20,7 @@ import org.apache.wicket.Component; import org.apache.wicket.MarkupContainer; import org.apache.wicket.WicketTestCase; import org.apache.wicket.behavior.Behavior; -import org.apache.wicket.feedback.FeedbackMessageCollector; +import org.apache.wicket.feedback.FeedbackCollector; import org.apache.wicket.markup.ComponentTag; import org.apache.wicket.markup.IMarkupResourceStreamProvider; import org.apache.wicket.markup.html.WebPage; @@ -73,7 +73,7 @@ public class FormValidatorBehaviorTest extends WicketTestCase FormTester ft = tester.newFormTester("form"); ft.setValue("name", "999999999"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); MaxLenValidator max = new MaxLenValidator(page.name); page.form.add(max); @@ -81,8 +81,8 @@ public class FormValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "999999999"); ft.submit(); - assertEquals(1, new FeedbackMessageCollector(page).collect().size()); - assertEquals("MAX", new FeedbackMessageCollector(page).collect() + assertEquals(1, new FeedbackCollector(page).collect().size()); + assertEquals("MAX", new FeedbackCollector(page).collect() .get(0) .getMessage() .toString()); @@ -90,7 +90,7 @@ public class FormValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "22"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); MinLenValidator min = new MinLenValidator(page.name); page.form.add(min); @@ -98,8 +98,8 @@ public class FormValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "22"); ft.submit(); - assertEquals(1, new FeedbackMessageCollector(page).collect().size()); - assertEquals("MINIMUM", new FeedbackMessageCollector(page).collect() + assertEquals(1, new FeedbackCollector(page).collect().size()); + assertEquals("MINIMUM", new FeedbackCollector(page).collect() .get(0) .getMessage() .toString()); @@ -107,21 +107,21 @@ public class FormValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "7777777"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); page.form.remove(min); ft = tester.newFormTester("form"); ft.setValue("name", "22"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); page.form.remove(max); ft = tester.newFormTester("form"); ft.setValue("name", "999999999"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); } http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/innerfeedback/LocalizedFeedbackBorder.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/innerfeedback/LocalizedFeedbackBorder.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/innerfeedback/LocalizedFeedbackBorder.java index e8952e7..b683628 100644 --- a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/innerfeedback/LocalizedFeedbackBorder.java +++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/validation/innerfeedback/LocalizedFeedbackBorder.java @@ -18,7 +18,7 @@ package org.apache.wicket.markup.html.form.validation.innerfeedback; import org.apache.wicket.AttributeModifier; import org.apache.wicket.feedback.FeedbackMessage; -import org.apache.wicket.feedback.FeedbackMessageCollector; +import org.apache.wicket.feedback.FeedbackCollector; import org.apache.wicket.feedback.IFeedbackMessageFilter; import org.apache.wicket.markup.html.WebMarkupContainer; import org.apache.wicket.markup.html.form.validation.FormComponentFeedbackBorder; @@ -43,7 +43,7 @@ class LocalizedFeedbackBorder extends FormComponentFeedbackBorder { final IFeedbackMessageFilter filter = feedback.getFilter(); - boolean error = new FeedbackMessageCollector(getPage()).collect( + boolean error = new FeedbackCollector(getPage()).collect( new IFeedbackMessageFilter() { @Override http://git-wip-us.apache.org/repos/asf/wicket/blob/7d04e6f0/wicket-core/src/test/java/org/apache/wicket/validation/ValidatorBehaviorTest.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/validation/ValidatorBehaviorTest.java b/wicket-core/src/test/java/org/apache/wicket/validation/ValidatorBehaviorTest.java index 56d0dfc..4776561 100644 --- a/wicket-core/src/test/java/org/apache/wicket/validation/ValidatorBehaviorTest.java +++ b/wicket-core/src/test/java/org/apache/wicket/validation/ValidatorBehaviorTest.java @@ -20,7 +20,7 @@ import org.apache.wicket.Component; import org.apache.wicket.MarkupContainer; import org.apache.wicket.WicketTestCase; import org.apache.wicket.behavior.Behavior; -import org.apache.wicket.feedback.FeedbackMessageCollector; +import org.apache.wicket.feedback.FeedbackCollector; import org.apache.wicket.markup.ComponentTag; import org.apache.wicket.markup.IMarkupResourceStreamProvider; import org.apache.wicket.markup.html.WebPage; @@ -71,7 +71,7 @@ public class ValidatorBehaviorTest extends WicketTestCase FormTester ft = tester.newFormTester("form"); ft.setValue("name", "999999999"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); MaxLenValidator max = new MaxLenValidator(); page.name.add(max); @@ -79,8 +79,8 @@ public class ValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "999999999"); ft.submit(); - assertEquals(1, new FeedbackMessageCollector(page).collect().size()); - assertEquals("MAX", new FeedbackMessageCollector(page).collect() + assertEquals(1, new FeedbackCollector(page).collect().size()); + assertEquals("MAX", new FeedbackCollector(page).collect() .get(0) .getMessage() .toString()); @@ -88,7 +88,7 @@ public class ValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "22"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); MinLenValidator min = new MinLenValidator(); page.name.add(min); @@ -96,8 +96,8 @@ public class ValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "22"); ft.submit(); - assertEquals(1, new FeedbackMessageCollector(page).collect().size()); - assertEquals("MINIMUM", new FeedbackMessageCollector(page).collect() + assertEquals(1, new FeedbackCollector(page).collect().size()); + assertEquals("MINIMUM", new FeedbackCollector(page).collect() .get(0) .getMessage() .toString()); @@ -105,21 +105,21 @@ public class ValidatorBehaviorTest extends WicketTestCase ft = tester.newFormTester("form"); ft.setValue("name", "7777777"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); page.name.remove(min); ft = tester.newFormTester("form"); ft.setValue("name", "22"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); page.name.remove(max); ft = tester.newFormTester("form"); ft.setValue("name", "999999999"); ft.submit(); - assertEquals(0, new FeedbackMessageCollector(page).collect().size()); + assertEquals(0, new FeedbackCollector(page).collect().size()); } /**
