1 /*
2 * $Header: /home/cvs/jakarta-commons/validator/src/test/org/apache/commons/validator/TestNumber.java,v 1.4 2004/02/21 17:10:30 rleland Exp $
3 * $Revision: 1.4 $
4 * $Date: 2004/02/21 17:10:30 $
5 *
6 * ====================================================================
7 * Copyright 2001-2004 The Apache Software Foundation
8 *
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
12 *
13 * http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 */
21
22 package org.apache.commons.validator;
23
24 import java.io.IOException;
25
26 import org.xml.sax.SAXException;
27
28 /***
29 * Abstracts number unit tests methods.
30 */
31 abstract public class TestNumber extends TestCommon {
32
33 /***
34 * The key used to retrieve the set of validation
35 * rules from the xml file.
36 */
37 protected String FORM_KEY;
38
39 /***
40 * The key used to retrieve the validator action.
41 */
42 protected String ACTION;
43
44
45 public TestNumber(String name) {
46 super(name);
47 }
48
49 /***
50 * Load <code>ValidatorResources</code> from
51 * validator-numeric.xml.
52 */
53 protected void setUp() throws IOException, SAXException {
54 // Load resources
55 loadResources("validator-numeric.xml");
56 }
57
58 protected void tearDown() {
59 }
60
61 /***
62 * Tests the number validation.
63 */
64 public void testNumber() throws ValidatorException {
65 // Create bean to run test on.
66 ValueBean info = new ValueBean();
67 info.setValue("0");
68 if (log.isDebugEnabled()) {
69 log.debug("testNumberFailure Action=" + ACTION + ", FORM_KEY=" + FORM_KEY);
70 }
71 valueTest(info, true);
72 }
73
74 /***
75 * Tests the float validation failure.
76 */
77 public void testNumberFailure() throws ValidatorException {
78 // Create bean to run test on.
79 ValueBean info = new ValueBean();
80 if (log.isDebugEnabled()) {
81 log.debug("testNumberFailure Action=" + ACTION + ", FORM_KEY=" + FORM_KEY);
82 }
83 valueTest(info, false);
84 }
85
86 /***
87 * Utlity class to run a test on a value.
88 *
89 * @param info Value to run test on.
90 * @param passed Whether or not the test is expected to pass.
91 */
92 protected void valueTest(Object info, boolean passed) throws ValidatorException {
93 // Construct validator based on the loaded resources
94 // and the form key
95 Validator validator = new Validator(resources, FORM_KEY);
96 // add the name bean to the validator as a resource
97 // for the validations to be performed on.
98 validator.setParameter(Validator.BEAN_PARAM, info);
99
100 // Get results of the validation.
101 ValidatorResults results = null;
102
103 // throws ValidatorException,
104 // but we aren't catching for testing
105 // since no validation methods we use
106 // throw this
107 results = validator.validate();
108
109 assertNotNull("Results are null.", results);
110
111 ValidatorResult result = results.getValidatorResult("value");
112
113 assertNotNull(ACTION + " value ValidatorResult should not be null.", result);
114 assertTrue(ACTION + " value ValidatorResult should contain the '" + ACTION + "' action.", result.containsAction(ACTION));
115 assertTrue(ACTION + " value ValidatorResult for the '" + ACTION + "' action should have " + (passed ? "passed" : "failed") + ".", (passed ? result.isValid(ACTION) : !result.isValid(ACTION)));
116 }
117
118
119 }
This page was automatically generated by Maven