You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@turbine.apache.org by se...@apache.org on 2007/05/15 17:56:10 UTC
svn commit: r538232 - in /jakarta/turbine/core/branches/TURBINE_2_3_BRANCH:
conf/test/intake.xml
src/java/org/apache/turbine/services/intake/model/Field.java
src/test/org/apache/turbine/services/intake/IntakeServiceTest.java
xdocs/changes.xml
Author: seade
Date: Tue May 15 08:56:10 2007
New Revision: 538232
URL: http://svn.apache.org/viewvc?view=rev&rev=538232
Log:
isSet() was returning true for Intake Fields even when no value was provided. Fixed and test case added.
Modified:
jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/conf/test/intake.xml
jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java
jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/test/org/apache/turbine/services/intake/IntakeServiceTest.java
jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml
Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/conf/test/intake.xml
URL: http://svn.apache.org/viewvc/jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/conf/test/intake.xml?view=diff&rev=538232&r1=538231&r2=538232
==============================================================================
--- jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/conf/test/intake.xml (original)
+++ jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/conf/test/intake.xml Tue May 15 08:56:10 2007
@@ -1,56 +1,74 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- 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.
--->
-<!DOCTYPE input-data SYSTEM
- "http://jakarta.apache.org/turbine/dtd/intake_2_3_3.dtd">
-<input-data>
- <group name="BooleanTest" key="bt">
- <field name="EmptyBooleanTestField" key="ebtf" type="boolean" />
- <field name="BooleanTestField" key="btf" type="boolean">
- <rule value="false" name="required">ValidValue</rule>
- </field>
- <field name="RequiredBooleanTestField" key="rbtf" type="boolean">
- <rule value="true" name="required">ValidValue</rule>
- </field>
- </group>
- <group name="DateRangeTest" key="rt">
- <field name="DateMin" key="dmin" type="DateString">
- <rule value="MM/dd/yyyy" name="format">Invalid format</rule>
- </field>
- <field name="DateMax" key="dmax" type="DateString"
- validator="DateRangeValidator">
- <rule value="MM/dd/yyyy" name="format">Invalid format</rule>
- <rule value="DateMin" name="greater-than">Value must be greater than DateMin</rule>
- </field>
- <field name="DateMax2" key="dmax2" type="DateString"
- validator="DateRangeValidator">
- <rule value="MM/dd/yyyy" name="format">Invalid format</rule>
- <rule value="DateMin" name="less-than">Value must be less than DateMin</rule>
- </field>
- </group>
- <group name="IntRangeTest" key="irt">
- <field name="IntMin" key="imin" type="int" />
- <field name="IntMax" key="imax" type="int" validator="IntegerRangeValidator">
- <rule value="IntMin" name="greater-than-or-equal">Value must be greater than or equal to IntMin</rule>
- </field>
- <field name="IntMax2" key="imax2" type="int" validator="IntegerRangeValidator">
- <rule value="IntMin" name="less-than-or-equal">Value must be less than or equal to IntMin</rule>
- </field>
- </group>
-</input-data>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+<!DOCTYPE input-data SYSTEM
+ "http://jakarta.apache.org/turbine/dtd/intake_2_3_3.dtd">
+<input-data>
+ <group name="BooleanTest" key="bt">
+ <field name="EmptyBooleanTestField" key="ebtf" type="boolean" />
+ <field name="BooleanTestField" key="btf" type="boolean">
+ <rule value="false" name="required">ValidValue</rule>
+ </field>
+ <field name="RequiredBooleanTestField" key="rbtf" type="boolean">
+ <rule value="true" name="required">ValidValue</rule>
+ </field>
+ </group>
+ <group name="DateRangeTest" key="rt">
+ <field name="DateMin" key="dmin" type="DateString">
+ <rule value="MM/dd/yyyy" name="format">Invalid format</rule>
+ </field>
+ <field name="DateMax" key="dmax" type="DateString"
+ validator="DateRangeValidator">
+ <rule value="MM/dd/yyyy" name="format">Invalid format</rule>
+ <rule value="DateMin" name="greater-than">Value must be greater than DateMin</rule>
+ </field>
+ <field name="DateMax2" key="dmax2" type="DateString"
+ validator="DateRangeValidator">
+ <rule value="MM/dd/yyyy" name="format">Invalid format</rule>
+ <rule value="DateMin" name="less-than">Value must be less than DateMin</rule>
+ </field>
+ </group>
+ <group name="IntRangeTest" key="irt">
+ <field name="IntMin" key="imin" type="int" />
+ <field name="IntMax" key="imax" type="int" validator="IntegerRangeValidator">
+ <rule value="IntMin" name="greater-than-or-equal">Value must be greater than or equal to IntMin</rule>
+ </field>
+ <field name="IntMax2" key="imax2" type="int" validator="IntegerRangeValidator">
+ <rule value="IntMin" name="less-than-or-equal">Value must be less than or equal to IntMin</rule>
+ </field>
+ </group>
+ <group name="RequiredFalseTest" key="rft">
+ <field name="StringRF" key="stringrf" type="String">
+ <rule name="required" value="false">Please enter a value.</rule>
+ <rule name="minLength" value="3">Please enter 3 characters only.</rule>
+ <rule name="maxLength" value="3">Please enter 3 characters only.</rule>
+ </field>
+ <field name="IntRF" key="intrf" type="int">
+ <rule name="required" value="false">Please enter the a value.</rule>
+ <rule name="minValue" value="1">The value for this field must be between 1 and 250 inclusive.</rule>
+ <rule name="maxValue" value="250">The value for this field must be between 1 and 250 inclusive.</rule>
+ <rule name="invalidNumber" value="true">The value entered must be a number.</rule>
+ </field>
+ <field name="DateRF" key="daterf" type="DateString">
+ <rule name="required" value="false">Please enter a value.</rule>
+ <rule name="format" value="d/MM/yyyy">Please enter a sensible date ("dd/mm/yyyy").</rule>
+ <rule name="format1" value="d/MM/yy">Please enter a sensible date ("dd/mm/yyyy").</rule>
+ </field>
+ </group>
+</input-data>
Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java
URL: http://svn.apache.org/viewvc/jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java?view=diff&rev=538232&r1=538231&r2=538232
==============================================================================
--- jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java (original)
+++ jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java Tue May 15 08:56:10 2007
@@ -351,7 +351,7 @@
{
log.debug(name + ": Found our Key in the request, setting Value");
}
- if (pp.getString(getKey()) != null)
+ if (StringUtils.isNotEmpty(pp.getString(getKey())))
{
setFlag = true;
}
Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/test/org/apache/turbine/services/intake/IntakeServiceTest.java
URL: http://svn.apache.org/viewvc/jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/test/org/apache/turbine/services/intake/IntakeServiceTest.java?view=diff&rev=538232&r1=538231&r2=538232
==============================================================================
--- jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/test/org/apache/turbine/services/intake/IntakeServiceTest.java (original)
+++ jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/test/org/apache/turbine/services/intake/IntakeServiceTest.java Tue May 15 08:56:10 2007
@@ -39,6 +39,7 @@
Group booleanTestGroup = null;
Group rangeTestGroup = null;
Group integerRangeTestGroup = null;
+ Group requiredFalseTestGroup = null;
public IntakeServiceTest(String name) throws Exception
{
@@ -49,6 +50,7 @@
booleanTestGroup = intakeService.getGroup("BooleanTest");
rangeTestGroup = intakeService.getGroup("DateRangeTest");
integerRangeTestGroup = intakeService.getGroup("IntRangeTest");
+ requiredFalseTestGroup = intakeService.getGroup("RequiredFalseTest");
}
@@ -105,6 +107,26 @@
assertFalse("The integer range should not be valid", imax2.isValid());
}
+ public void testRequiredFalse() throws IntakeException
+ {
+ ParameterParser pp = new DefaultParameterParser();
+ pp.add("rft_0stringrf", "");
+ pp.add("rft_0intrf", "");
+ pp.add("rft_0daterf", "");
+ requiredFalseTestGroup.init(Group.NEW, pp);
+
+ Field stringRF = requiredFalseTestGroup.get("StringRF");
+ Field intRF = requiredFalseTestGroup.get("IntRF");
+ Field dateRF = requiredFalseTestGroup.get("DateRF");
+
+ assertFalse("StringRF should not be set", stringRF.isSet());
+ assertTrue("StringRF should be valid", stringRF.isValid());
+ assertFalse("IntRF should not be set", intRF.isSet());
+ assertTrue("IntRF should be valid", intRF.isValid());
+ assertFalse("DateRF should not be set", dateRF.isSet());
+ assertTrue("DateRF should be valid", dateRF.isValid());
+ }
+
/**
* Factory method for creating a TestSuite for this class.
*
Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml?view=diff&rev=538232&r1=538231&r2=538232
==============================================================================
--- jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml (original)
+++ jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml Tue May 15 08:56:10 2007
@@ -28,6 +28,10 @@
<body>
<release version="2.3.3-dev" date="in Subversion">
+ <action type="fix" dev="seade">
+ isSet() was returning <code>true</code> for Intake Fields even when no
+ value was provided. Fixed and test case added.
+ </action>
<action type="add" dev="tv">
Added an extension of LDAPUser named ActiveDirectoryUser to simplify the
authentication against AD servers. Added some documentation with a
---------------------------------------------------------------------
To unsubscribe, e-mail: turbine-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: turbine-dev-help@jakarta.apache.org