You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by fr...@apache.org on 2007/02/04 15:40:42 UTC
svn commit: r503415 [3/3] - in /tapestry/tapestry5/tapestry-core:
branches/kt-20070204-IDE-support/src/test/java/org/apache/tapestry/
branches/kt-20070204-IDE-support/src/test/java/org/apache/tapestry/corelib/base/
branches/kt-20070204-IDE-support/src/...
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/LongTranslator.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/LongTranslator.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/LongTranslator.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/LongTranslator.java Sun Feb 4 06:40:39 2007
@@ -14,14 +14,18 @@
package org.apache.tapestry.translator;
+import java.io.Serializable;
+
import org.apache.tapestry.Translator;
import org.apache.tapestry.ValidationException;
import org.apache.tapestry.ioc.Messages;
import org.apache.tapestry.ioc.internal.util.InternalUtils;
/** A translator for type long. */
-public class LongTranslator implements Translator<Long>
+public class LongTranslator implements Translator<Long>, Serializable
{
+ private static final long serialVersionUID = 1L;
+
/**
* Parses blank values to null, otherwise parses the client value to a long
*
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/StringTranslator.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/StringTranslator.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/StringTranslator.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/translator/StringTranslator.java Sun Feb 4 06:40:39 2007
@@ -14,12 +14,16 @@
package org.apache.tapestry.translator;
+import java.io.Serializable;
+
import org.apache.tapestry.Translator;
import org.apache.tapestry.ValidationException;
import org.apache.tapestry.ioc.Messages;
-public class StringTranslator implements Translator<String>
+public class StringTranslator implements Translator<String>, Serializable
{
+ private static final long serialVersionUID = 1L;
+
/** Returns the client value (or the empty string, if the client value is null). */
public String parseClient(String clientValue, Messages messages) throws ValidationException
{
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Max.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Max.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Max.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Max.java Sun Feb 4 06:40:39 2007
@@ -14,17 +14,23 @@
package org.apache.tapestry.validator;
+import java.io.Serializable;
+
import org.apache.tapestry.Field;
import org.apache.tapestry.ValidationException;
import org.apache.tapestry.Validator;
import org.apache.tapestry.ioc.MessageFormatter;
/** Enforces a maximum integer value. */
-public class Max implements Validator<Long, Number>
+public class Max implements Validator<Number>, Serializable
{
- public Class<Long> getConstraintType()
+ private static final long serialVersionUID = 1L;
+
+ private long _max;
+
+ public Max(long max)
{
- return Long.class;
+ _max = max;
}
public String getMessageKey()
@@ -32,20 +38,15 @@
return "max-integer";
}
- public Class<Number> getValueType()
- {
- return Number.class;
- }
-
public boolean invokeIfBlank()
{
return false;
}
- public void validate(Field field, Long constraintValue, MessageFormatter formatter, Number value)
+ public void validate(Field field, MessageFormatter formatter, Number value)
throws ValidationException
{
- if (value.longValue() > constraintValue)
- throw new ValidationException(formatter.format(constraintValue, field.getLabel()));
+ if (value.longValue() > _max)
+ throw new ValidationException(formatter.format(_max, field.getLabel()));
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MaxLength.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MaxLength.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MaxLength.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MaxLength.java Sun Feb 4 06:40:39 2007
@@ -14,16 +14,22 @@
package org.apache.tapestry.validator;
+import java.io.Serializable;
+
import org.apache.tapestry.Field;
import org.apache.tapestry.ValidationException;
import org.apache.tapestry.Validator;
import org.apache.tapestry.ioc.MessageFormatter;
-public final class MaxLength implements Validator<Integer, String>
+public final class MaxLength implements Validator<String>, Serializable
{
- public Class<Integer> getConstraintType()
+ private static final long serialVersionUID = 1L;
+
+ private int _maxLength;
+
+ public MaxLength(int maxLength)
{
- return Integer.class;
+ _maxLength = maxLength;
}
public String getMessageKey()
@@ -31,20 +37,15 @@
return "maximum-string-length";
}
- public Class<String> getValueType()
- {
- return String.class;
- }
-
public boolean invokeIfBlank()
{
return false;
}
- public void validate(Field field, Integer constraintValue, MessageFormatter formatter, String value)
+ public void validate(Field field, MessageFormatter formatter, String value)
throws ValidationException
{
- if (value.length() > constraintValue)
- throw new ValidationException(formatter.format(constraintValue, field.getLabel()));
+ if (value.length() > _maxLength)
+ throw new ValidationException(formatter.format(_maxLength, field.getLabel()));
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Min.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Min.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Min.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Min.java Sun Feb 4 06:40:39 2007
@@ -14,17 +14,23 @@
package org.apache.tapestry.validator;
+import java.io.Serializable;
+
import org.apache.tapestry.Field;
import org.apache.tapestry.ValidationException;
import org.apache.tapestry.Validator;
import org.apache.tapestry.ioc.MessageFormatter;
/* A vaidator that enforces that a number is greater than some minimum integer value. */
-public class Min implements Validator<Long, Number>
+public class Min implements Validator<Number>, Serializable
{
- public Class<Long> getConstraintType()
+ private static final long serialVersionUID = 1L;
+
+ private long _min;
+
+ public Min(long min)
{
- return Long.class;
+ _min = min;
}
public String getMessageKey()
@@ -32,20 +38,15 @@
return "min-integer";
}
- public Class<Number> getValueType()
- {
- return Number.class;
- }
-
public boolean invokeIfBlank()
{
return false;
}
- public void validate(Field field, Long constraintValue, MessageFormatter formatter, Number value)
+ public void validate(Field field, MessageFormatter formatter, Number value)
throws ValidationException
{
- if (value.longValue() < constraintValue)
- throw new ValidationException(formatter.format(constraintValue, field.getLabel()));
+ if (value.longValue() < _min)
+ throw new ValidationException(formatter.format(_min, field.getLabel()));
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MinLength.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MinLength.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MinLength.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/MinLength.java Sun Feb 4 06:40:39 2007
@@ -14,6 +14,8 @@
package org.apache.tapestry.validator;
+import java.io.Serializable;
+
import org.apache.tapestry.Field;
import org.apache.tapestry.ValidationException;
import org.apache.tapestry.Validator;
@@ -22,23 +24,26 @@
/**
* Validates that a string value has a minimum length.
*/
-public final class MinLength implements Validator<Integer, String>
+public final class MinLength implements Validator<String>, Serializable
{
+ private static final long serialVersionUID = 1L;
+
+ private int _minLength;
+
+ public MinLength(int minLength)
+ {
+ _minLength = minLength;
+ }
public String getMessageKey()
{
return "minimum-string-length";
}
- public void validate(Field field, Integer constraintValue, MessageFormatter formatter,
+ public void validate(Field field, MessageFormatter formatter,
String value) throws ValidationException
{
- if (value.length() < constraintValue)
- throw new ValidationException(formatter.format(constraintValue, field.getLabel()));
- }
-
- public Class<Integer> getConstraintType()
- {
- return Integer.class;
+ if (value.length() < _minLength)
+ throw new ValidationException(formatter.format(_minLength, field.getLabel()));
}
public boolean invokeIfBlank()
@@ -46,8 +51,4 @@
return false;
}
- public Class<String> getValueType()
- {
- return String.class;
- }
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Required.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Required.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Required.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/validator/Required.java Sun Feb 4 06:40:39 2007
@@ -14,6 +14,8 @@
package org.apache.tapestry.validator;
+import java.io.Serializable;
+
import org.apache.tapestry.Field;
import org.apache.tapestry.ValidationException;
import org.apache.tapestry.Validator;
@@ -23,32 +25,25 @@
* A validator that enforces that the value is not null and not the empty string. This validator is
* not configurable.
*/
-public final class Required implements Validator<Void, Object>
+public final class Required implements Validator<Object>, Serializable
{
+ private static final long serialVersionUID = 1L;
+
public String getMessageKey()
{
return "required";
}
- public void validate(Field field, Void constraintValue, MessageFormatter formatter, Object value)
+ public void validate(Field field, MessageFormatter formatter, Object value)
throws ValidationException
{
if (value == null || value.toString().equals(""))
throw new ValidationException(formatter.format(field.getLabel()));
}
- public Class<Void> getConstraintType()
- {
- return null;
- }
-
public boolean invokeIfBlank()
{
return true;
}
- public Class<Object> getValueType()
- {
- return Object.class;
- }
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/resources/org/apache/tapestry/internal/ValidationMessages.properties
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/resources/org/apache/tapestry/internal/ValidationMessages.properties?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/resources/org/apache/tapestry/internal/ValidationMessages.properties (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/resources/org/apache/tapestry/internal/ValidationMessages.properties Sun Feb 4 06:40:39 2007
@@ -19,6 +19,7 @@
minimum-string-length=You must provide at least %d characters for %s.
maximum-string-length=You may provide at most %d characters for %s.
min-integer=%2$s requires a value of at least %1$d.
+max-integer=%2$s requires a value of at most %1$d.
# This is where the translator messages go.
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/SelectTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/SelectTest.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/SelectTest.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/SelectTest.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,129 @@
+// Copyright 2006 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.pagelevel;
+
+import java.util.List;
+import java.util.Map;
+
+import org.apache.tapestry.dom.Document;
+import org.apache.tapestry.dom.Element;
+import org.apache.tapestry.dom.Node;
+import org.apache.tapestry.ioc.internal.util.CollectionFactory;
+import org.apache.tapestry.test.pagelevel.PageTester;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+public class SelectTest extends Assert
+{
+ private PageTester _tester;
+
+ private Document _doc;
+
+ @Test
+ public void display()
+ {
+ Element select = _doc.getElementById("select1");
+ List<Node> children = select.getChildren();
+ assertEquals(children.size(), 3);
+ Element element = (Element) children.get(0);
+ assertEquals(element.getName(), "option");
+ assertEquals(element.getChildText(), "[1a]");
+ assertEquals(element.getAttribute("value"), "1a");
+ assertNull(element.getAttribute("selected"));
+ element = (Element) children.get(1);
+ assertEquals(element.getName(), "option");
+ assertEquals(element.getChildText(), "[0f]");
+ assertEquals(element.getAttribute("value"), "0f");
+ assertEquals(element.getAttribute("selected"), "selected");
+ element = (Element) children.get(2);
+ assertEquals(element.getName(), "option");
+ assertEquals(element.getChildText(), "[ff]");
+ assertEquals(element.getAttribute("value"), "ff");
+ assertNull(element.getAttribute("selected"));
+ }
+
+ @Test
+ public void submit_form()
+ {
+ Element form = _doc.getElementById("form1");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("select1", "0f");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertEquals(_doc.getElementById("v1").getChildText(), "15");
+ }
+
+ @Test
+ public void invalid()
+ {
+ Element form = _doc.getElementById("form1");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("select1", "ff");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertTrue(_doc.toString().contains("my value requires a value of at most 200."));
+ }
+
+ @Test
+ public void default_encoder_and_model_for_enum()
+ {
+ Element select = _doc.getElementById("select2");
+ List<Node> children = select.getChildren();
+ assertEquals(children.size(), 4);
+ Element element = (Element) children.get(0);
+ assertEquals(element.getName(), "option");
+ assertEquals(element.getChildText(), "East");
+ assertEquals(element.getAttribute("value"), "EAST");
+ assertNull(element.getAttribute("selected"));
+ element = (Element) children.get(1);
+ assertEquals(element.getName(), "option");
+ assertEquals(element.getChildText(), "South");
+ assertEquals(element.getAttribute("value"), "SOUTH");
+ assertNull(element.getAttribute("selected"));
+ element = (Element) children.get(2);
+ assertEquals(element.getName(), "option");
+ assertEquals(element.getChildText(), "West");
+ assertEquals(element.getAttribute("value"), "WEST");
+ assertNull(element.getAttribute("selected"));
+ element = (Element) children.get(3);
+ assertEquals(element.getName(), "option");
+ assertEquals(element.getChildText(), "North");
+ assertEquals(element.getAttribute("value"), "NORTH");
+ assertNull(element.getAttribute("selected"));
+ Element form = _doc.getElementById("form2");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("select2", "NORTH");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertEquals(_doc.getElementById("v2").getChildText(), "NORTH");
+ }
+
+ @BeforeMethod
+ public void before()
+ {
+ String appPackage = "org.apache.tapestry.integration.app2";
+ String appName = "";
+ _tester = new PageTester(appPackage, appName);
+ _doc = _tester.renderPage("TestPageForSelect");
+ }
+
+ @AfterMethod
+ public void after()
+ {
+ if (_tester != null)
+ {
+ _tester.shutdown();
+ }
+ }
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/SelectTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/TextFieldTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/TextFieldTest.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/TextFieldTest.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/TextFieldTest.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,113 @@
+// Copyright 2006 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.pagelevel;
+
+import java.util.Map;
+
+import org.apache.tapestry.dom.Document;
+import org.apache.tapestry.dom.Element;
+import org.apache.tapestry.ioc.internal.util.CollectionFactory;
+import org.apache.tapestry.test.pagelevel.PageTester;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+public class TextFieldTest extends Assert
+{
+ private PageTester _tester;
+
+ private Document _doc;
+
+ @Test
+ public void submit_form()
+ {
+ Element form = _doc.getElementById("form1");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("t1", "123");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertEquals(_doc.getElementById("v1").getChildText(), "123");
+ }
+
+ @Test
+ public void use_default_error_message()
+ {
+ Element form = _doc.getElementById("form1");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("t1", "99");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertTrue(_doc.toString().contains("T1 requires a value of at least 100."));
+ }
+
+ @Test
+ public void override_error_message()
+ {
+ Element form = _doc.getElementById("form1");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("t1", "201");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertTrue(_doc.toString().contains("Error: T1 is larger than 200."));
+ }
+
+ @Test
+ public void default_value_binding()
+ {
+ Element form = _doc.getElementById("form2");
+ assertEquals(_doc.getElementById("t2").getAttribute("value"), "12.3");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("t2", "+0.45");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertEquals(_doc.getElementById("v2").getChildText(), "0.45");
+ }
+
+ @Test
+ public void default_translator()
+ {
+ Element form = _doc.getElementById("form3");
+ assertEquals(_doc.getElementById("t3").getAttribute("value"), "12345");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("t3", "1000");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertEquals(_doc.getElementById("v3").getChildText(), "1000");
+ }
+
+ @Test
+ public void disabled()
+ {
+ Element form = _doc.getElementById("form4");
+ Map<String, String> fieldValues = CollectionFactory.newMap();
+ fieldValues.put("t4", "abc");
+ _doc = _tester.submitForm(form, fieldValues);
+ assertEquals(_doc.getElementById("v4").getChildText(), "hello");
+ }
+
+ @BeforeMethod
+ public void before()
+ {
+ String appPackage = "org.apache.tapestry.integration.app2";
+ String appName = "";
+ _tester = new PageTester(appPackage, appName);
+ _doc = _tester.renderPage("TestPageForTextField");
+ }
+
+ @AfterMethod
+ public void after()
+ {
+ if (_tester != null)
+ {
+ _tester.shutdown();
+ }
+ }
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/integration/pagelevel/TextFieldTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionGroupModelImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionGroupModelImplTest.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionGroupModelImplTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionGroupModelImplTest.java Sun Feb 4 06:40:39 2007
@@ -28,9 +28,9 @@
@Test
public void basics()
{
- List<OptionModel> options = Collections.emptyList();
+ List<OptionModel<String>> options = Collections.emptyList();
- OptionGroupModel group = new OptionGroupModelImpl("Label", true, options);
+ OptionGroupModel<String> group = new OptionGroupModelImpl<String>("Label", true, options);
assertEquals(group.toString(), "OptionGroupModel[Label]");
assertTrue(group.isDisabled());
@@ -41,10 +41,11 @@
@Test
public void map_contructor_retains_map()
{
- List<OptionModel> options = Collections.emptyList();
+ List<OptionModel<String>> options = Collections.emptyList();
Map<String, String> attributes = Collections.emptyMap();
- OptionGroupModel group = new OptionGroupModelImpl("Label", true, options, attributes);
+ OptionGroupModel<String> group = new OptionGroupModelImpl<String>("Label", true, options,
+ attributes);
assertSame(group.getAttributes(), attributes);
}
@@ -52,10 +53,10 @@
@Test
public void strings_contructor_builds_map()
{
- List<OptionModel> options = Collections.emptyList();
+ List<OptionModel<String>> options = Collections.emptyList();
- OptionGroupModel group = new OptionGroupModelImpl("Label", true, options, "fred",
- "flintstone", "barney", "rubble");
+ OptionGroupModel<String> group = new OptionGroupModelImpl<String>("Label", true, options,
+ "fred", "flintstone", "barney", "rubble");
Map<String, String> attributes = group.getAttributes();
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionModelImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionModelImplTest.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionModelImplTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/OptionModelImplTest.java Sun Feb 4 06:40:39 2007
@@ -26,14 +26,14 @@
@Test
public void basics()
{
- OptionModel model = new OptionModelImpl("Label", false, this);
+ OptionModel<?> model = new OptionModelImpl<Object>("Label", false, this);
assertEquals(model.getLabel(), "Label");
assertFalse(model.isDisabled());
assertSame(model.getValue(), this);
assertNull(model.getAttributes());
- model = new OptionModelImpl("Fred", true, "fred");
+ model = new OptionModelImpl<String>("Fred", true, "fred");
assertEquals(model.getLabel(), "Fred");
assertTrue(model.isDisabled());
@@ -44,8 +44,8 @@
@Test
public void attributes_as_extra_parameters()
{
- OptionModel model = new OptionModelImpl("Label", false, this, "fred", "flintstone",
- "barney", "rubble");
+ OptionModel<?> model = new OptionModelImpl<Object>("Label", false, this, "fred",
+ "flintstone", "barney", "rubble");
Map<String, String> attributes = model.getAttributes();
@@ -59,7 +59,7 @@
{
Map<String, String> attributes = Collections.emptyMap();
- OptionModel model = new OptionModelImpl("Label", false, this, attributes);
+ OptionModel<?> model = new OptionModelImpl<Object>("Label", false, this, attributes);
assertSame(model.getAttributes(), attributes);
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/TapestryUtilsTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/TapestryUtilsTest.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/TapestryUtilsTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/TapestryUtilsTest.java Sun Feb 4 06:40:39 2007
@@ -133,7 +133,7 @@
@Test
public void to_option_models()
{
- List<OptionModel> options = TapestryUtils.toOptionModels("UK,USA,DE=Germany");
+ List<OptionModel<String>> options = TapestryUtils.toOptionModels("UK,USA,DE=Germany");
assertEquals(options.size(), 3);
@@ -150,7 +150,7 @@
@Test
public void whitespace_around_terms_is_trimmed()
{
- List<OptionModel> options = TapestryUtils.toOptionModels(" UK , USA , DE=Germany ");
+ List<OptionModel<String>> options = TapestryUtils.toOptionModels(" UK , USA , DE=Germany ");
assertEquals(options.size(), 3);
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/AnnotationValidatorGeneratorTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/AnnotationValidatorGeneratorTest.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/AnnotationValidatorGeneratorTest.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/AnnotationValidatorGeneratorTest.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,62 @@
+package org.apache.tapestry.internal.beaneditor;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Method;
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.tapestry.AnnotationProvider;
+import org.apache.tapestry.Validator;
+import org.apache.tapestry.beaneditor.LengthRange;
+import org.apache.tapestry.beaneditor.Required;
+import org.apache.tapestry.validator.MaxLength;
+import org.apache.tapestry.validator.MinLength;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+public class AnnotationValidatorGeneratorTest extends Assert
+{
+ @LengthRange(minLength = 5, maxLength = 10)
+ @Required
+ public void setFoo(String foo)
+ {
+
+ }
+
+ @Test
+ public void generate()
+ {
+
+ final AnnotationProvider provider = new AnnotationProvider()
+ {
+
+ public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
+ {
+ try
+ {
+ Class<AnnotationValidatorGeneratorTest> clazz = AnnotationValidatorGeneratorTest.class;
+ Method method = clazz.getMethod("setFoo", new Class[]
+ { String.class });
+ return method.getAnnotation(annotationClass);
+
+ }
+ catch (Exception ex)
+ {
+ throw new RuntimeException(ex);
+ }
+ }
+
+ };
+ LengthRangeValidateAnnotationWorker worker1 = new LengthRangeValidateAnnotationWorker();
+ RequiredValidateAnnotationWorker worker2 = new RequiredValidateAnnotationWorker();
+ AnnotationValidatorGenerator generator = new AnnotationValidatorGenerator(Arrays.asList(
+ worker1,
+ worker2));
+ List<? extends Validator> validators = generator.buildValidators(Object.class, provider);
+ assertEquals(validators.size(), 3);
+ assertTrue(validators.get(0) instanceof MinLength);
+ assertTrue(validators.get(1) instanceof MaxLength);
+ assertTrue(validators.get(2) instanceof org.apache.tapestry.validator.Required);
+ }
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/AnnotationValidatorGeneratorTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/CompoundValidatorGeneratorTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/CompoundValidatorGeneratorTest.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/CompoundValidatorGeneratorTest.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/CompoundValidatorGeneratorTest.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,111 @@
+// Copyright 2007 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.internal.beaneditor;
+
+import java.lang.annotation.Annotation;
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.tapestry.AnnotationProvider;
+import org.apache.tapestry.Validator;
+import org.apache.tapestry.internal.services.CompoundalidatorGenerator;
+import org.apache.tapestry.services.ValidatorGenerator;
+import org.apache.tapestry.validator.Max;
+import org.apache.tapestry.validator.Min;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+public class CompoundValidatorGeneratorTest extends Assert
+{
+ @Test
+ public void no_validator()
+ {
+ final AnnotationProvider provider = new AnnotationProvider()
+ {
+
+ public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
+ {
+ return null;
+ }
+
+ };
+ ValidatorGenerator g1 = new ValidatorGenerator()
+ {
+
+ public List<? extends Validator> buildValidators(Class propertyType,
+ AnnotationProvider annotationProvider)
+ {
+ assertSame(provider, annotationProvider);
+ return null;
+ }
+
+ };
+ ValidatorGenerator g2 = new ValidatorGenerator()
+ {
+
+ public List<? extends Validator> buildValidators(Class propertyType,
+ AnnotationProvider annotationProvider)
+ {
+ assertSame(provider, annotationProvider);
+ return null;
+ }
+
+ };
+ List<ValidatorGenerator> generators = Arrays.asList(g1, g2);
+ ValidatorGenerator gen = new CompoundalidatorGenerator(generators);
+ assertNull(gen.buildValidators(Object.class, provider));
+ }
+
+ @Test
+ public void two_validators()
+ {
+ final AnnotationProvider provider = new AnnotationProvider()
+ {
+
+ public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
+ {
+ return null;
+ }
+
+ };
+ ValidatorGenerator g1 = new ValidatorGenerator()
+ {
+
+ public List<? extends Validator> buildValidators(Class propertyType,
+ AnnotationProvider annotationProvider)
+ {
+ assertSame(provider, annotationProvider);
+ return Arrays.asList(new Min(10));
+ }
+
+ };
+ ValidatorGenerator g2 = new ValidatorGenerator()
+ {
+
+ public List<? extends Validator> buildValidators(Class propertyType,
+ AnnotationProvider annotationProvider)
+ {
+ assertSame(provider, annotationProvider);
+ return Arrays.asList(new Max(12));
+ }
+
+ };
+ List<ValidatorGenerator> generators = Arrays.asList(g1, g2);
+ ValidatorGenerator gen = new CompoundalidatorGenerator(generators);
+ List<? extends Validator> validators = gen.buildValidators(Object.class, provider);
+ assertEquals(validators.size(), 2);
+ }
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/beaneditor/CompoundValidatorGeneratorTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorImplTest.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorImplTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorImplTest.java Sun Feb 4 06:40:39 2007
@@ -16,9 +16,12 @@
import org.apache.tapestry.Field;
import org.apache.tapestry.FieldValidator;
+import org.apache.tapestry.ValidationException;
import org.apache.tapestry.Validator;
import org.apache.tapestry.internal.test.InternalBaseTestCase;
import org.apache.tapestry.ioc.MessageFormatter;
+import org.apache.tapestry.validator.Max;
+import org.apache.tapestry.validator.Min;
import org.testng.annotations.Test;
/**
@@ -26,83 +29,200 @@
*/
public class FieldValidatorImplTest extends InternalBaseTestCase
{
- @SuppressWarnings("unchecked")
+ @SuppressWarnings("serial")
@Test
public void null_value_skipped() throws Exception
{
- Field field = newField();
- MessageFormatter formatter = newMessageFormatter();
- Validator validator = newValidator();
+ Field field = null;
+ FieldValidatorMessages messages = new FieldValidatorMessages()
+ {
+ public MessageFormatter get(Field field, Validator validator)
+ {
+ return null;
+ }
+
+ };
+ Validator<Object> validator = new NoOpValidator<Object>()
+ {
+
+ @Override
+ public void validate(Field field, MessageFormatter formatter, Object value)
+ throws ValidationException
+ {
+ fail();
+ }
+ };
- train_invokeIfBlank(validator, false);
-
- replay();
-
- FieldValidator fv = new FieldValidatorImpl(field, null, formatter, validator);
+ FieldValidator<Object> fv = new FieldValidatorImpl<Object>(field, messages, validator);
fv.validate(null);
-
- verify();
}
- @SuppressWarnings("unchecked")
+ @SuppressWarnings("serial")
@Test
public void blank_value_skipped() throws Exception
{
- Field field = newField();
- MessageFormatter formatter = newMessageFormatter();
- Validator validator = newValidator();
-
- train_invokeIfBlank(validator, false);
-
- replay();
+ Field field = null;
+ FieldValidatorMessages messages = new FieldValidatorMessages()
+ {
+ public MessageFormatter get(Field field, Validator validator)
+ {
+ return null;
+ }
+
+ };
+ Validator<Object> validator = new NoOpValidator<Object>()
+ {
+
+ @Override
+ public void validate(Field field, MessageFormatter formatter, Object value)
+ throws ValidationException
+ {
+ fail();
+ }
+ };
- FieldValidator fv = new FieldValidatorImpl(field, null, formatter, validator);
+ FieldValidator<Object> fv = new FieldValidatorImpl<Object>(field, messages, validator);
fv.validate("");
- verify();
}
- @SuppressWarnings("unchecked")
@Test
- public void nonmatching_value_type_skipped() throws Exception
+ public void single_validator() throws Exception
{
- Field field = newField();
- MessageFormatter formatter = newMessageFormatter();
- Validator validator = newValidator();
- Integer value = 15;
-
- train_invokeIfBlank(validator, true);
- train_getValueType(validator, String.class);
-
- replay();
-
- FieldValidator fv = new FieldValidatorImpl(field, null, formatter, validator);
-
- fv.validate(value);
+ final Field field = new NoOpField()
+ {
- verify();
+ @Override
+ public String getLabel()
+ {
+ return "foo";
+ }
+
+ };
+ final Min min = new Min(10);
+ FieldValidatorMessages messages = new FieldValidatorMessages()
+ {
+ public MessageFormatter get(Field field2, Validator validator)
+ {
+ assertSame(field2, field);
+ assertSame(validator, min);
+ return new MessageFormatter()
+ {
+
+ public String format(Object... args)
+ {
+ return String.format("%2$s must be at least %1$s", args);
+ }
+
+ };
+ }
+
+ };
+ FieldValidator<Number> fv = new FieldValidatorImpl<Number>(field, messages, min);
+ fv.validate(10);
+ fv.validate(11);
+ try
+ {
+ fv.validate(9);
+ unreachable();
+ }
+ catch (ValidationException ex)
+ {
+ assertEquals(ex.getMessage(), "foo must be at least 10");
+ }
}
- @SuppressWarnings("unchecked")
@Test
- public void value_type_check_skipped_for_null_values() throws Exception
+ public void two_validators() throws Exception
{
- Field field = newField();
- MessageFormatter formatter = newMessageFormatter();
- Validator validator = newValidator();
+ final Field field = new NoOpField()
+ {
- train_invokeIfBlank(validator, true);
-
- validator.validate(field, null, formatter, null);
-
- replay();
-
- FieldValidator fv = new FieldValidatorImpl(field, null, formatter, validator);
+ @Override
+ public String getLabel()
+ {
+ return "foo";
+ }
+
+ };
+ final Min min = new Min(10);
+ final Max max = new Max(12);
+ FieldValidatorMessages messages = new FieldValidatorMessages()
+ {
+ public MessageFormatter get(Field field2, Validator validator)
+ {
+ assertSame(field2, field);
+ if (validator == min)
+ {
+ return null;
+ }
+ return validator == max ? new MessageFormatter()
+ {
+
+ public String format(Object... args)
+ {
+ return String.format("%2$s must be at most %1$s", args);
+ }
+
+ } : null;
+ }
+
+ };
+ FieldValidator<Number> fv = new FieldValidatorImpl<Number>(field, messages, min, max);
+ fv.validate(10);
+ fv.validate(11);
+ fv.validate(12);
+ try
+ {
+ fv.validate(13);
+ unreachable();
+ }
+ catch (ValidationException ex)
+ {
+ assertEquals(ex.getMessage(), "foo must be at most 12");
+ }
+ FieldValidator<Number> fv2 = new FieldValidatorImpl<Number>(field, messages, max, min);
+ fv2.validate(10);
+ fv2.validate(11);
+ fv2.validate(12);
+ try
+ {
+ fv2.validate(13);
+ unreachable();
+ }
+ catch (ValidationException ex)
+ {
+ assertEquals(ex.getMessage(), "foo must be at most 12");
+ }
+ }
- fv.validate(null);
+ @Test
+ public void null_validators() throws Exception
+ {
+ final Field field = new NoOpField()
+ {
- verify();
+ @Override
+ public String getLabel()
+ {
+ return "foo";
+ }
+
+ };
+ FieldValidatorMessages messages = new FieldValidatorMessages()
+ {
+ public MessageFormatter get(Field field2, Validator validator)
+ {
+ return null;
+ }
+
+ };
+ FieldValidator<Number> fv = new FieldValidatorImpl<Number>(field, messages,
+ (Validator<? super Number>[]) null);
+ fv.validate(10);
+ fv.validate(11);
}
+
}
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorMessagesImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorMessagesImplTest.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorMessagesImplTest.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorMessagesImplTest.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,99 @@
+package org.apache.tapestry.internal.services;
+
+import java.util.Locale;
+import java.util.Map;
+
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.Field;
+import org.apache.tapestry.Validator;
+import org.apache.tapestry.ioc.MessageFormatter;
+import org.apache.tapestry.ioc.Messages;
+import org.apache.tapestry.ioc.internal.util.CollectionFactory;
+import org.apache.tapestry.services.ValidationMessagesSource;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+public class FieldValidatorMessagesImplTest extends Assert
+{
+ @SuppressWarnings("serial")
+ private static class MyValidator1<T> extends NoOpValidator<T>
+ {
+ @Override
+ public String getMessageKey()
+ {
+ return "k1";
+ }
+
+ }
+
+ @SuppressWarnings("serial")
+ private static class MyValidator2<T> extends NoOpValidator<T>
+ {
+ @Override
+ public String getMessageKey()
+ {
+ return "k2";
+ }
+
+ }
+
+ @Test
+ public void global_and_override()
+ {
+ final ComponentResources resources = new NoOpComponentResources()
+ {
+
+ @Override
+ public Locale getLocale()
+ {
+ return Locale.FRENCH;
+ }
+
+ @Override
+ public String getId()
+ {
+ return "id1";
+ }
+
+ @Override
+ public Messages getContainerMessages()
+ {
+ Map<String, String> map = CollectionFactory.newMap();
+ map.put("id1-k2", "overriding: %s %s");
+ return new MapMessages(map);
+ }
+
+ };
+ Field field = new NoOpFieldComponent()
+ {
+
+ @Override
+ public ComponentResources getComponentResources()
+ {
+ return resources;
+ }
+
+ };
+ ValidationMessagesSource messageSources = new ValidationMessagesSource()
+ {
+
+ public Messages getValidationMessages(Locale locale)
+ {
+ assertEquals(locale, Locale.FRENCH);
+ Map<String, String> map = CollectionFactory.newMap();
+ map.put("k1", "abc %s def %s");
+ map.put("k2", "123 %s 456 %s");
+ return new MapMessages(map);
+ }
+
+ };
+ ;
+ FieldValidatorMessages messages = new FieldValidatorMessagesImpl(messageSources);
+ Validator<Object> validator1 = new MyValidator1<Object>();
+ MessageFormatter formatter = messages.get(field, validator1);
+ assertEquals(formatter.format("x", "y"), "abc x def y");
+ Validator<Object> validator2 = new MyValidator2<Object>();
+ formatter = messages.get(field, validator2);
+ assertEquals(formatter.format("x", "y"), "overriding: x y");
+ }
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FieldValidatorMessagesImplTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FormPersistWorkerTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FormPersistWorkerTest.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FormPersistWorkerTest.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FormPersistWorkerTest.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,80 @@
+package org.apache.tapestry.internal.services;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Modifier;
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.tapestry.annotations.FormPersist;
+import org.apache.tapestry.services.ClassTransformation;
+import org.apache.tapestry.services.MethodSignature;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+public class FormPersistWorkerTest extends Assert
+{
+ private boolean called;
+
+ @Test
+ public void transform()
+ {
+ FormPersistWorker worker = new FormPersistWorker();
+ ClassTransformation transformation = new NoOpClassTransformation()
+ {
+
+ @Override
+ public List<String> findFieldsWithAnnotation(Class<? extends Annotation> annotationClass)
+ {
+ assertSame(annotationClass, FormPersist.class);
+ return Arrays.asList("f1", "f2", "_f3");
+ }
+
+ @Override
+ public void extendMethod(MethodSignature methodSignature, String methodBody)
+ {
+ assertEquals(methodSignature.getModifiers(), Modifier.PROTECTED);
+ assertEquals(methodSignature.getReturnType(), "void");
+ assertEquals(methodSignature.getMethodName(), "collectFormPersistPropNames");
+ assertEquals(methodSignature.getParameterTypes(), new String[]
+ { "java.util.List" });
+ assertEquals(methodBody, "$1.add(\"f1\");" + "$1.add(\"f2\");" + "$1.add(\"f3\");");
+ called = true;
+ }
+
+ };
+ worker.transform(transformation, null);
+ assertTrue(called);
+ }
+
+ @Test
+ public void no_such_field()
+ {
+ FormPersistWorker worker = new FormPersistWorker();
+ ClassTransformation transformation = new NoOpClassTransformation()
+ {
+
+ @Override
+ public List<String> findFieldsWithAnnotation(Class<? extends Annotation> annotationClass)
+ {
+ assertSame(annotationClass, FormPersist.class);
+ return Arrays.asList();
+ }
+
+ @Override
+ public void extendMethod(MethodSignature methodSignature, String methodBody)
+ {
+ called = true;
+ }
+
+ };
+ worker.transform(transformation, null);
+ assertFalse(called);
+ }
+
+ @BeforeMethod
+ void before()
+ {
+ called = false;
+ }
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/FormPersistWorkerTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpClassTransformation.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpClassTransformation.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpClassTransformation.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpClassTransformation.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,155 @@
+package org.apache.tapestry.internal.services;
+
+import java.lang.annotation.Annotation;
+import java.util.List;
+
+import org.apache.commons.logging.Log;
+import org.apache.tapestry.services.ClassTransformation;
+import org.apache.tapestry.services.FieldFilter;
+import org.apache.tapestry.services.MethodFilter;
+import org.apache.tapestry.services.MethodSignature;
+
+public class NoOpClassTransformation implements ClassTransformation
+{
+
+ public String getClassName()
+ {
+ return null;
+ }
+
+ public String newMemberName(String suggested)
+ {
+ return null;
+ }
+
+ public List<String> findFieldsWithAnnotation(Class<? extends Annotation> annotationClass)
+ {
+ return null;
+ }
+
+ public List<String> findFieldsOfType(String type)
+ {
+ return null;
+ }
+
+ public List<MethodSignature> findMethodsWithAnnotation(Class<? extends Annotation> annotationClass)
+ {
+ return null;
+ }
+
+ public List<MethodSignature> findMethods(MethodFilter filter)
+ {
+ return null;
+ }
+
+ public List<String> findFields(FieldFilter filter)
+ {
+ return null;
+ }
+
+ public <T extends Annotation> T getFieldAnnotation(String fieldName, Class<T> annotationClass)
+ {
+ return null;
+ }
+
+ public <T extends Annotation> T getMethodAnnotation(MethodSignature method, Class<T> annotationClass)
+ {
+ return null;
+ }
+
+ public void claimField(String fieldName, Object tag)
+ {
+
+ }
+
+ public void makeReadOnly(String fieldName)
+ {
+
+ }
+
+ public List<String> findUnclaimedFields()
+ {
+ return null;
+ }
+
+ public String getFieldType(String fieldName)
+ {
+ return null;
+ }
+
+ public String addField(int modifiers, String type, String suggestedName)
+ {
+ return null;
+ }
+
+ public String addInjectedField(Class type, String suggestedName, Object value)
+ {
+ return null;
+ }
+
+ public void injectField(String fieldName, Object value)
+ {
+
+ }
+
+ public void addImplementedInterface(Class interfaceClass)
+ {
+
+ }
+
+ public void extendMethod(MethodSignature methodSignature, String methodBody)
+ {
+
+ }
+
+ public String getResourcesFieldName()
+ {
+ return null;
+ }
+
+ public void addMethod(MethodSignature signature, String methodBody)
+ {
+
+ }
+
+ public void addToConstructor(String statement)
+ {
+
+ }
+
+ public void replaceReadAccess(String fieldName, String methodName)
+ {
+
+ }
+
+ public void replaceWriteAccess(String fieldName, String methodName)
+ {
+
+ }
+
+ public void removeField(String fieldName)
+ {
+
+ }
+
+ public Class toClass(String type)
+ {
+ return null;
+ }
+
+ public Log getLog()
+ {
+ return null;
+ }
+
+ public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
+ {
+ return null;
+ }
+
+ public List<String> findFieldsWithAnnotation(Class<? extends Annotation> annotationClass, boolean searchAncestors)
+ {
+ return null;
+ }
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpClassTransformation.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpComponentResources.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpComponentResources.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpComponentResources.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpComponentResources.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,134 @@
+package org.apache.tapestry.internal.services;
+
+import java.util.Locale;
+
+import org.apache.commons.logging.Log;
+import org.apache.tapestry.AnnotationProvider;
+import org.apache.tapestry.Block;
+import org.apache.tapestry.ComponentEventHandler;
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.Link;
+import org.apache.tapestry.MarkupWriter;
+import org.apache.tapestry.ioc.Messages;
+import org.apache.tapestry.model.ComponentModel;
+import org.apache.tapestry.runtime.Component;
+
+public class NoOpComponentResources implements ComponentResources
+{
+
+ public ComponentModel getComponentModel()
+ {
+ return null;
+ }
+
+ public Component getComponent()
+ {
+ return null;
+ }
+
+ public Component getContainer()
+ {
+ return null;
+ }
+
+ public ComponentResources getContainerResources()
+ {
+ return null;
+ }
+
+ public Messages getContainerMessages()
+ {
+ return null;
+ }
+
+ public Component getPage()
+ {
+ return null;
+ }
+
+ public Component getEmbeddedComponent(String embeddedId)
+ {
+ return null;
+ }
+
+ public boolean isBound(String parameterName)
+ {
+ return false;
+ }
+
+ public void renderInformalParameters(MarkupWriter writer)
+ {
+
+ }
+
+ public Messages getMessages()
+ {
+ return null;
+ }
+
+ public Class getBoundType(String parameterName)
+ {
+ return null;
+ }
+
+ public AnnotationProvider getAnnotationProvider(String parameterName)
+ {
+ return null;
+ }
+
+ public String getId()
+ {
+ return null;
+ }
+
+ public String getNestedId()
+ {
+ return null;
+ }
+
+ public Link createActionLink(String action, boolean forForm, Object... context)
+ {
+ return null;
+ }
+
+ public Link createPageLink(String pageName)
+ {
+ return null;
+ }
+
+ public String getCompleteId()
+ {
+ return null;
+ }
+
+ public boolean triggerEvent(String eventType, Object[] context, ComponentEventHandler handler)
+ {
+ return false;
+ }
+
+ public boolean isRendering()
+ {
+ return false;
+ }
+
+ public Log getLog()
+ {
+ return null;
+ }
+
+ public Locale getLocale()
+ {
+ return null;
+ }
+
+ public String getElementName()
+ {
+ return null;
+ }
+
+ public Block getBlock(String blockId)
+ {
+ return null;
+ }
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpComponentResources.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpField.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpField.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpField.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpField.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,28 @@
+package org.apache.tapestry.internal.services;
+
+import org.apache.tapestry.Field;
+
+public class NoOpField implements Field
+{
+
+ public String getElementName()
+ {
+ return null;
+ }
+
+ public String getClientId()
+ {
+ return null;
+ }
+
+ public String getLabel()
+ {
+ return null;
+ }
+
+ public boolean isDisabled()
+ {
+ return false;
+ }
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpField.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpFieldComponent.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpFieldComponent.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpFieldComponent.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpFieldComponent.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,83 @@
+package org.apache.tapestry.internal.services;
+
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.MarkupWriter;
+import org.apache.tapestry.runtime.Component;
+import org.apache.tapestry.runtime.ComponentEvent;
+import org.apache.tapestry.runtime.Event;
+
+public class NoOpFieldComponent extends NoOpField implements Component
+{
+
+ public void postRenderCleanup()
+ {
+
+ }
+
+ public void setupRender(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public void beginRender(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public void beforeRenderTemplate(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public void afterRenderTemplate(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public void beforeRenderBody(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public void afterRenderBody(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public void afterRender(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public void cleanupRender(MarkupWriter writer, Event event)
+ {
+
+ }
+
+ public boolean handleComponentEvent(ComponentEvent event)
+ {
+ return false;
+ }
+
+ public ComponentResources getComponentResources()
+ {
+ return null;
+ }
+
+ public void containingPageDidLoad()
+ {
+
+ }
+
+ public void containingPageDidDetach()
+ {
+
+ }
+
+ public void containingPageDidAttach()
+ {
+
+ }
+
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpFieldComponent.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpValidator.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpValidator.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpValidator.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpValidator.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,30 @@
+package org.apache.tapestry.internal.services;
+
+import java.io.Serializable;
+
+import org.apache.tapestry.Field;
+import org.apache.tapestry.ValidationException;
+import org.apache.tapestry.Validator;
+import org.apache.tapestry.ioc.MessageFormatter;
+
+public class NoOpValidator<T> implements Validator<T>, Serializable
+{
+ private static final long serialVersionUID = 1L;
+
+ public String getMessageKey()
+ {
+ return null;
+ }
+
+ public void validate(Field field, MessageFormatter formatter, T value)
+ throws ValidationException
+ {
+
+ }
+
+ public boolean invokeIfBlank()
+ {
+ return false;
+ }
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/NoOpValidator.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/services/NoOpBindingSource.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/services/NoOpBindingSource.java?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/services/NoOpBindingSource.java (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/services/NoOpBindingSource.java Sun Feb 4 06:40:39 2007
@@ -0,0 +1,20 @@
+package org.apache.tapestry.services;
+
+import org.apache.tapestry.Binding;
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.ioc.Location;
+
+public class NoOpBindingSource implements BindingSource
+{
+
+ public Binding newBinding(String description, ComponentResources container, ComponentResources component, String defaultPrefix, String expression, Location location)
+ {
+ return null;
+ }
+
+ public Binding newBinding(String description, ComponentResources container, String expression)
+ {
+ return null;
+ }
+
+}
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/services/NoOpBindingSource.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MaxLengthTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MaxLengthTest.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MaxLengthTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MaxLengthTest.java Sun Feb 4 06:40:39 2007
@@ -16,6 +16,7 @@
import org.apache.tapestry.Field;
import org.apache.tapestry.ValidationException;
+import org.apache.tapestry.internal.services.NoOpField;
import org.apache.tapestry.internal.test.InternalBaseTestCase;
import org.apache.tapestry.ioc.MessageFormatter;
import org.testng.annotations.Test;
@@ -31,9 +32,9 @@
replay();
- MaxLength validator = new MaxLength();
+ MaxLength validator = new MaxLength(value.length());
- validator.validate(field, value.length(), formatter, value);
+ validator.validate(field, formatter, value);
verify();
}
@@ -41,29 +42,35 @@
@Test
public void long_value() throws Exception
{
- String label = "My Field";
- Field field = newFieldWithLabel(label);
- MessageFormatter formatter = newMessageFormatter();
- String value = "Now the student has become the master.";
- String message = "{message}";
- Integer constraint = value.length() - 1;
-
- train_format(formatter, message, constraint, label);
-
- replay();
-
- MaxLength validator = new MaxLength();
+ Field field = new NoOpField()
+ {
+
+ @Override
+ public String getLabel()
+ {
+ return "foo";
+ }
+
+ };
+ MessageFormatter formatter = new MessageFormatter()
+ {
+
+ public String format(Object... args)
+ {
+ return String.format("aaa %1$s %2$s bbb", args);
+ }
+
+ };
+ MaxLength validator = new MaxLength(5);
try
{
- validator.validate(field, constraint, formatter, value);
+ validator.validate(field, formatter, "abcdef");
unreachable();
}
catch (ValidationException ex)
{
- assertEquals(ex.getMessage(), message);
+ assertEquals(ex.getMessage(), "aaa 5 foo bbb");
}
-
- verify();
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MinLengthTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MinLengthTest.java?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MinLengthTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/validator/MinLengthTest.java Sun Feb 4 06:40:39 2007
@@ -16,6 +16,7 @@
import org.apache.tapestry.Field;
import org.apache.tapestry.ValidationException;
+import org.apache.tapestry.internal.services.NoOpField;
import org.apache.tapestry.internal.test.InternalBaseTestCase;
import org.apache.tapestry.ioc.MessageFormatter;
import org.testng.annotations.Test;
@@ -32,9 +33,9 @@
replay();
- MinLength validator = new MinLength();
+ MinLength validator = new MinLength(value.length());
- validator.validate(field, value.length(), formatter, value);
+ validator.validate(field, formatter, value);
verify();
}
@@ -42,29 +43,35 @@
@Test
public void short_value() throws Exception
{
- String label = "My Field";
- Field field = newFieldWithLabel(label);
- MessageFormatter formatter = newMessageFormatter();
- String value = "Now the student has become the master.";
- String message = "{message}";
- Integer constraint = value.length() + 1;
-
- train_format(formatter, message, constraint, label);
-
- replay();
-
- MinLength validator = new MinLength();
+ Field field = new NoOpField()
+ {
+
+ @Override
+ public String getLabel()
+ {
+ return "foo";
+ }
+
+ };
+ MessageFormatter formatter = new MessageFormatter()
+ {
+
+ public String format(Object... args)
+ {
+ return String.format("aaa %1$s %2$s bbb", args);
+ }
+
+ };
+ MinLength validator = new MinLength(5);
try
{
- validator.validate(field, constraint, formatter, value);
+ validator.validate(field, formatter, "abcd");
unreachable();
}
catch (ValidationException ex)
{
- assertEquals(ex.getMessage(), message);
+ assertEquals(ex.getMessage(), "aaa 5 foo bbb");
}
-
- verify();
}
}
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ValidForm.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ValidForm.html?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ValidForm.html (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app1/pages/ValidForm.html Sun Feb 4 06:40:39 2007
@@ -8,17 +8,17 @@
<t:comp type="Errors"/>
<label t:type="Label" for="email">This isn't used</label>: <input
- t:type="TextField" t:id="email" value="incident.email" size="50" t:validate="required"/>
+ t:id="email" size="50"/>
<br/>
- <label t:type="Label" for="message"/>: <textarea t:type="TextArea" t:id="message" t:label="Incident Message"
- value="incident.message" cols="50" rows="10"> You can put text here, but it isn't used. </textarea>
+ <label t:type="Label" for="message"/>: <textarea t:id="message"
+ cols="50" rows="10"> You can put text here, but it isn't used. </textarea>
<br/>
- <input t:type="Checkbox" t:id="urgent" value="incident.urgent"/>
+ <input t:id="urgent" />
<label t:type="Label" for="urgent"/>
<br/>
<label t:type="Label" for="hours"/>:
- <input t:type="TextField" t:id="hours" value="incident.hours" size="10" t:validate="required"/>
+ <input t:id="hours" size="10"/>
<br/>
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForForm.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForForm.html?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForForm.html (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForForm.html Sun Feb 4 06:40:39 2007
@@ -1,6 +1,6 @@
<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
<p><t:comp id="form1" type="Form">
- <t:comp type="TextField" id="t1" value="value" size="50"/>
+ <t:comp id="t1" size="50"/>
</t:comp></p>
<p>
You entered: ${value}.
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSelect.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSelect.html?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSelect.html (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSelect.html Sun Feb 4 06:40:39 2007
@@ -0,0 +1,21 @@
+<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
+<p><form t:id="form1" >
+ <span t:id="errors"/>
+ <select t:id="select1">
+ <option>a</option>
+ <option>b</option>
+ </select>
+</form></p>
+<p>
+ You entered: <span id="v1">${v1}</span>.
+</p>
+<p><form t:id="form2" >
+ <select t:id="select2">
+ <option>a</option>
+ <option>b</option>
+ </select>
+</form></p>
+<p>
+ You entered: <span id="v2">${v2}</span>.
+</p>
+</html>
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSelect.html
------------------------------------------------------------------------------
svn:eol-style = native
Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSubmit.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSubmit.html?view=diff&rev=503415&r1=503414&r2=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSubmit.html (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForSubmit.html Sun Feb 4 06:40:39 2007
@@ -1,12 +1,12 @@
<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
<p>
<form t:id="form1">
- <t:comp id="t1" type="TextField"/>
+ <t:comp id="t1"/>
<t:comp id="capitalize1"/>
</form>
<form t:id="form2">
<t:comp id="capitalize2"/>
- <t:comp id="t2" type="TextField"/>
+ <t:comp id="t2"/>
</form></p>
<input type="submit" id="orphanedSubmit"/>
<p>
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.html?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.html (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.html Sun Feb 4 06:40:39 2007
@@ -0,0 +1,27 @@
+<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
+<p><form t:id="form1" >
+ <span t:id="errors"/>
+ <input t:id="t1" />
+</form></p>
+<p>
+ You entered: <span id="v1">${v1}</span>.
+</p>
+<p><form t:id="form2" >
+ <input t:id="t2" />
+</form></p>
+<p>
+ You entered: <span id="v2">${t2}</span>.
+</p>
+<p><form t:id="form3" >
+ <input t:id="t3" />
+</form></p>
+<p>
+ You entered: <span id="v3">${v3}</span>.
+</p>
+<p><form t:id="form4" >
+ <input t:id="t4" />
+</form></p>
+<p>
+ You entered: <span id="v4">${v4}</span>.
+</p>
+</html>
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.properties
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.properties?view=auto&rev=503415
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.properties (added)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.properties Sun Feb 4 06:40:39 2007
@@ -0,0 +1 @@
+t1-max-integer=Error: %2$s is larger than %1$d.
Propchange: tapestry/tapestry5/tapestry-core/trunk/src/test/resources/org/apache/tapestry/integration/app2/pages/TestPageForTextField.properties
------------------------------------------------------------------------------
svn:eol-style = native