You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2008/02/28 19:52:56 UTC
svn commit: r632085 [2/2] - in /tapestry/tapestry5/trunk/tapestry-core/src:
main/java/org/apache/tapestry/ main/java/org/apache/tapestry/corelib/base/
main/java/org/apache/tapestry/corelib/components/
main/java/org/apache/tapestry/corelib/data/ main/ja...
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/internal/FormSupportImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/internal/FormSupportImplTest.java?rev=632085&r1=632084&r2=632085&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/internal/FormSupportImplTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/internal/FormSupportImplTest.java Thu Feb 28 10:52:45 2008
@@ -1,4 +1,4 @@
-// Copyright 2007 The Apache Software Foundation
+// Copyright 2007, 2008 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -15,9 +15,8 @@
package org.apache.tapestry.corelib.internal;
import org.apache.tapestry.Field;
+import org.apache.tapestry.internal.services.ClientBehaviorSupport;
import org.apache.tapestry.internal.test.InternalBaseTestCase;
-import org.apache.tapestry.ioc.internal.util.CollectionFactory;
-import org.apache.tapestry.json.JSONObject;
import org.testng.annotations.Test;
public class FormSupportImplTest extends InternalBaseTestCase
@@ -135,40 +134,33 @@
@Test
public void add_validations()
{
- Field barney = newField("barney");
- Field fred = newField("fred");
+ Field barney = mockField();
+ ClientBehaviorSupport clientBehaviorSupport = mockClientBehaviorSupport();
+
+ clientBehaviorSupport.addValidation(barney, "required", "Who can live without Barney?", null);
replay();
- FormSupportImpl support = new FormSupportImpl();
+ FormSupportImpl support = new FormSupportImpl(null, null, clientBehaviorSupport, true);
support.addValidation(barney, "required", "Who can live without Barney?", null);
- support.addValidation(barney, "email", "You know, an e-mail address.", null);
- support.addValidation(fred, "maxlength", "Up to 10 characters", 10);
verify();
-
-
- JSONObject validations = support.getValidations();
-
- // Tip-toe around the fact that the order of the keys is JDK specific.
-
- assertEquals(CollectionFactory.newSet(validations.keys()), CollectionFactory.newSet("fred", "barney"));
-
- assertEquals(validations.get("fred").toString(), "[[\"maxlength\",\"Up to 10 characters\",10]]");
- assertEquals(validations.get("barney").toString(),
- "[[\"required\",\"Who can live without Barney?\"],[\"email\",\"You know, an e-mail address.\"]]");
-
-
}
- private Field newField(String clientId)
+ @Test
+ public void add_validation_when_client_validation_is_disabled()
{
- Field field = newMock(Field.class);
+ Field barney = mockField();
+ ClientBehaviorSupport clientBehaviorSupport = mockClientBehaviorSupport();
+
+ replay();
- expect(field.getClientId()).andReturn(clientId).atLeastOnce();
+ FormSupportImpl support = new FormSupportImpl(null, null, clientBehaviorSupport, false);
- return field;
+ support.addValidation(barney, "required", "Who can live without Barney?", null);
+
+ verify();
}
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/components/Any.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/components/Any.java?rev=632085&r1=632084&r2=632085&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/components/Any.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/components/Any.java Thu Feb 28 10:52:45 2008
@@ -27,7 +27,7 @@
void beginRender(MarkupWriter writer)
{
- writer.element(_resources.getElementName());
+ writer.element(_resources.getElementName(null));
_resources.renderInformalParameters(writer);
}
Added: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/FormInjectorDemo.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/FormInjectorDemo.java?rev=632085&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/FormInjectorDemo.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/FormInjectorDemo.java Thu Feb 28 10:52:45 2008
@@ -0,0 +1,77 @@
+// Copyright 2008 The Apache Software Foundation
+//
+// Licensed 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.tapestry.integration.app1.pages;
+
+import org.apache.tapestry.Block;
+import org.apache.tapestry.PageRenderSupport;
+import org.apache.tapestry.annotations.Component;
+import org.apache.tapestry.annotations.Persist;
+import org.apache.tapestry.corelib.components.FormInjector;
+import org.apache.tapestry.ioc.annotations.Inject;
+
+public class FormInjectorDemo
+{
+ @Persist
+ private double _sum;
+
+ private double _value;
+
+ @Inject
+ private Block _newRow;
+
+ @Inject
+ private PageRenderSupport _pageRenderSupport;
+
+ @Component
+ private FormInjector _formInjector;
+
+ public double getSum()
+ {
+ return _sum;
+ }
+
+ public double getValue()
+ {
+ return _value;
+ }
+
+ public void setValue(double value)
+ {
+ _value = value;
+ }
+
+ void onPrepareForSubmit()
+ {
+ _sum = 0;
+ }
+
+ void onAfterSubmit()
+ {
+ _sum += _value;
+ }
+
+
+ void afterRender()
+ {
+ _pageRenderSupport.addScript(
+ "$('addnewrow').observe('click', function() { $('%s').trigger(); return false; });",
+ _formInjector.getClientId());
+ }
+
+ Object onActionFromFormInjector()
+ {
+ return _newRow;
+ }
+}
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/Start.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/Start.java?rev=632085&r1=632084&r2=632085&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/Start.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/integration/app1/pages/Start.java Thu Feb 28 10:52:45 2008
@@ -66,6 +66,8 @@
new Item("numberbeaneditordemo", "Number BeanEditor Demo",
"use of nulls and wrapper types with BeanEditor"),
+ new Item("forminjectordemo", "FormInjector Demo", "extending a form dynamically via Ajax"),
+
new Item("music", "Music Page", "demo handling of edge cases of page naming"),
new Item("PersistentDemo", "Persistent Demo", "storing and clearing persistent properties"),
Copied: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ClientBehaviorSupportImplTest.java (from r630031, tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ZoneSetupImplTest.java)
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ClientBehaviorSupportImplTest.java?p2=tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ClientBehaviorSupportImplTest.java&p1=tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ZoneSetupImplTest.java&r1=630031&r2=632085&rev=632085&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ZoneSetupImplTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ClientBehaviorSupportImplTest.java Thu Feb 28 10:52:45 2008
@@ -15,12 +15,12 @@
package org.apache.tapestry.internal.services;
import org.apache.tapestry.PageRenderSupport;
-import static org.apache.tapestry.internal.services.ZoneSetupImpl.ZONE_INITIALIZER_STRING;
+import static org.apache.tapestry.internal.services.ClientBehaviorSupportImpl.ZONE_INITIALIZER_STRING;
import org.apache.tapestry.json.JSONObject;
import org.apache.tapestry.test.TapestryTestCase;
import org.testng.annotations.Test;
-public class ZoneSetupImplTest extends TapestryTestCase
+public class ClientBehaviorSupportImplTest extends TapestryTestCase
{
@Test
public void no_changes()
@@ -29,7 +29,7 @@
replay();
- ZoneSetupImpl setup = new ZoneSetupImpl(support);
+ ClientBehaviorSupportImpl setup = new ClientBehaviorSupportImpl(support);
setup.writeInitializationScript();
@@ -47,7 +47,7 @@
replay();
- ZoneSetupImpl setup = new ZoneSetupImpl(support);
+ ClientBehaviorSupportImpl setup = new ClientBehaviorSupportImpl(support);
setup.linkZone("client1", "zone1");
setup.linkZone("client2", "zone2");
@@ -68,7 +68,7 @@
replay();
- ZoneSetupImpl setup = new ZoneSetupImpl(support);
+ ClientBehaviorSupportImpl setup = new ClientBehaviorSupportImpl(support);
setup.addZone("client1", null, null);
setup.addZone("client2", null, null);
@@ -91,7 +91,7 @@
replay();
- ZoneSetupImpl setup = new ZoneSetupImpl(support);
+ ClientBehaviorSupportImpl setup = new ClientBehaviorSupportImpl(support);
setup.addZone("client1", "showme", null);
setup.addZone("client2", null, "updateme");
@@ -113,7 +113,7 @@
replay();
- ZoneSetupImpl setup = new ZoneSetupImpl(support);
+ ClientBehaviorSupportImpl setup = new ClientBehaviorSupportImpl(support);
setup.addZone("client1", "ShowMe", null);
setup.addZone("client2", null, "UpdateMe");
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java?rev=632085&r1=632084&r2=632085&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/test/InternalBaseTestCase.java Thu Feb 28 10:52:45 2008
@@ -639,4 +639,9 @@
{
expect(securityManager.getBaseURL(page)).andReturn(baseURL).atLeastOnce();
}
+
+ protected final ClientBehaviorSupport mockClientBehaviorSupport()
+ {
+ return newMock(ClientBehaviorSupport.class);
+ }
}