001 /** 002 * Copyright 2005-2011 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.rice.krad.datadictionary.validation.charlevel; 017 018 import org.junit.Test; 019 import org.kuali.rice.kns.datadictionary.validation.charlevel.NumericValidationPattern; 020 import org.kuali.rice.krad.datadictionary.validation.ValidationTestUtils; 021 import org.kuali.rice.test.BaseRiceTestCase; 022 023 /** 024 * tests {@link NumericValidationPattern} 025 * 026 * @author Kuali Rice Team (rice.collab@kuali.org) 027 */ 028 public class NumericValidationPatternTest extends BaseRiceTestCase { 029 private NumericValidationPattern pattern; 030 031 032 public void setUp() throws Exception { 033 pattern = new NumericValidationPattern(); 034 } 035 036 /** 037 * tests that sequences containing only numbers match 038 */ 039 @Test public final void testMatch_allowDefault() { 040 boolean[] expected = { true, // "" 041 false, // "!!!" 042 false, // "[a-9]" 043 false, // "^A-Z" 044 false, // "abc" 045 false, // "a bc" 046 false, // "a_bc" 047 true, // "123" 048 false, // "12 3" 049 false, // "12_3" 050 false, // "a1b2c3" 051 false, // "a1b2_c3" 052 false, // "a 1b2c3" 053 false, // "a 1b2_c3" 054 false, //"foo.bar" 055 false, //"foo.bar_baz" 056 false, //".bar_foo baz" 057 }; 058 059 ValidationTestUtils.assertPatternMatches(pattern, expected); 060 } 061 }