001 /* 002 * Copyright 2006-2012 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 017 package edu.samplu.krad.compview; 018 019 import edu.samplu.common.WebDriverLegacyITBase; 020 021 import junit.framework.Assert; 022 import org.junit.Test; 023 024 /** 025 * @author Kuali Rice Team (rice.collab@kuali.org) 026 */ 027 public class ValidCharsConstraintLegacyIT extends WebDriverLegacyITBase { 028 @Override 029 public String getTestUrl() { 030 return "/kr-krad/uicomponents?viewId=UifCompView&methodToCall=start&pageId=UifCompView-Page4"; 031 } 032 033 @Test 034 public void testValidCharsConstraintIT() throws Exception { 035 fireEvent("field50","focus"); 036 waitAndTypeByName("field50", "12.333"); 037 fireEvent("field50", "blur"); 038 Assert.assertTrue(getAttributeByName("field50","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 039 fireEvent("field50","focus"); 040 waitAndTypeByName("field50", "123.33"); 041 fireEvent("field50", "blur"); 042 Assert.assertTrue(getAttributeByName("field50","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 043 fireEvent("field51","focus"); 044 waitAndTypeByName("field51", "A"); 045 fireEvent("field51", "blur"); 046 Assert.assertTrue(getAttributeByName("field51","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 047 fireEvent("field51","focus"); 048 waitAndTypeByName("field51", "-123.33"); 049 fireEvent("field51", "blur"); 050 Assert.assertTrue(getAttributeByName("field51","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 051 fireEvent("field77","focus"); 052 waitAndTypeByName("field77", "1.1"); 053 fireEvent("field77", "blur"); 054 Assert.assertTrue(getAttributeByName("field77","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 055 fireEvent("field77","focus"); 056 waitAndTypeByName("field77", "12"); 057 fireEvent("field77", "blur"); 058 Assert.assertTrue(getAttributeByName("field77","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 059 fireEvent("field52","focus"); 060 waitAndTypeByName("field52", "5551112222"); 061 fireEvent("field52", "blur"); 062 Assert.assertTrue(getAttributeByName("field52","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 063 fireEvent("field52","focus"); 064 waitAndTypeByName("field52", "555-111-1111"); 065 fireEvent("field52", "blur"); 066 Assert.assertTrue(getAttributeByName("field52","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 067 fireEvent("field53","focus"); 068 waitAndTypeByName("field53", "1ClassName.java"); 069 fireEvent("field53", "blur"); 070 Assert.assertTrue(getAttributeByName("field53","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 071 fireEvent("field53","focus"); 072 waitAndTypeByName("field53", "ClassName.java"); 073 fireEvent("field53", "blur"); 074 Assert.assertTrue(getAttributeByName("field53","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 075 fireEvent("field54","focus"); 076 waitAndTypeByName("field54", "aaaaa"); 077 fireEvent("field54", "blur"); 078 Assert.assertTrue(getAttributeByName("field54","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 079 fireEvent("field54","focus"); 080 waitAndTypeByName("field54", "aaaaa@kuali.org"); 081 fireEvent("field54", "blur"); 082 Assert.assertTrue(getAttributeByName("field54","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 083 fireEvent("field84","focus"); 084 waitAndTypeByName("field84", "aaaaa"); 085 fireEvent("field84", "blur"); 086 Assert.assertTrue(getAttributeByName("field84","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 087 fireEvent("field84","focus"); 088 waitAndTypeByName("field84", "http://www.kuali.org"); 089 fireEvent("field84", "blur"); 090 Assert.assertTrue(getAttributeByName("field84","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 091 fireEvent("field55","focus"); 092 waitAndTypeByName("field55", "023512"); 093 fireEvent("field55", "blur"); 094 Assert.assertTrue(getAttributeByName("field55","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 095 fireEvent("field55","focus"); 096 waitAndTypeByName("field55", "022812"); 097 fireEvent("field55", "blur"); 098 Assert.assertTrue(getAttributeByName("field55","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 099 fireEvent("field75","focus"); 100 waitAndTypeByName("field75", "02/35/12"); 101 fireEvent("field75", "blur"); 102 Assert.assertTrue(getAttributeByName("field75","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 103 fireEvent("field75","focus"); 104 waitAndTypeByName("field75", "02/28/12"); 105 fireEvent("field75", "blur"); 106 Assert.assertTrue(getAttributeByName("field75","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 107 fireEvent("field82","focus"); 108 waitAndTypeByName("field82", "13:22"); 109 fireEvent("field82", "blur"); 110 Assert.assertTrue(getAttributeByName("field82","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 111 fireEvent("field82","focus"); 112 waitAndTypeByName("field82", "02:33"); 113 fireEvent("field82", "blur"); 114 Assert.assertTrue(getAttributeByName("field82","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 115 fireEvent("field83","focus"); 116 waitAndTypeByName("field83", "25:22"); 117 fireEvent("field83", "blur"); 118 Assert.assertTrue(getAttributeByName("field83","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 119 fireEvent("field83","focus"); 120 waitAndTypeByName("field83", "14:33"); 121 fireEvent("field83", "blur"); 122 Assert.assertTrue(getAttributeByName("field83","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 123 fireEvent("field57","focus"); 124 waitAndTypeByName("field57", "0"); 125 fireEvent("field57", "blur"); 126 Assert.assertTrue(getAttributeByName("field57","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 127 fireEvent("field57","focus"); 128 waitAndTypeByName("field57", "2020"); 129 fireEvent("field57", "blur"); 130 Assert.assertTrue(getAttributeByName("field57","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 131 fireEvent("field58","focus"); 132 waitAndTypeByName("field58", "13"); 133 fireEvent("field58", "blur"); 134 Assert.assertTrue(getAttributeByName("field58","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 135 fireEvent("field58","focus"); 136 waitAndTypeByName("field58", "12"); 137 fireEvent("field58", "blur"); 138 Assert.assertTrue(getAttributeByName("field58","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 139 fireEvent("field61","focus"); 140 waitAndTypeByName("field61", "5555-444"); 141 fireEvent("field61", "blur"); 142 Assert.assertTrue(getAttributeByName("field61","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 143 fireEvent("field61","focus"); 144 waitAndTypeByName("field61", "55555-4444"); 145 fireEvent("field61", "blur"); 146 Assert.assertTrue(getAttributeByName("field61","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 147 fireEvent("field62","focus"); 148 waitAndTypeByName("field62", "aa5bb6_a"); 149 fireEvent("field62", "blur"); 150 Assert.assertTrue(getAttributeByName("field62","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 151 fireEvent("field62","focus"); 152 waitAndTypeByName("field62", "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"); 153 fireEvent("field62", "blur"); 154 Assert.assertTrue(getAttributeByName("field62","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 155 fireEvent("field63","focus"); 156 waitAndTypeByName("field63", "fff555$"); 157 fireEvent("field63", "blur"); 158 Assert.assertTrue(getAttributeByName("field63","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 159 fireEvent("field63","focus"); 160 waitAndTypeByName("field63", "aa22 _/"); 161 fireEvent("field63", "blur"); 162 Assert.assertTrue(getAttributeByName("field63","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 163 fireEvent("field64","focus"); 164 waitAndTypeByName("field64", "AABB55"); 165 fireEvent("field64", "blur"); 166 Assert.assertTrue(getAttributeByName("field64","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 167 fireEvent("field64","focus"); 168 waitAndTypeByName("field64", "ABCDEFGHIJKLMNOPQRSTUVWXY,Z abcdefghijklmnopqrstuvwxy,z"); 169 fireEvent("field64", "blur"); 170 Assert.assertTrue(getAttributeByName("field64","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 171 fireEvent("field76","focus"); 172 waitAndTypeByName("field76", "AA~BB%"); 173 fireEvent("field76", "blur"); 174 Assert.assertTrue(getAttributeByName("field76","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 175 fireEvent("field76","focus"); 176 waitAndTypeByName("field76", "abcABC %$#@&<>\\{}[]*-+!=.()/\"\"',:;?"); 177 fireEvent("field76", "blur"); 178 Assert.assertTrue(getAttributeByName("field76","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 179 fireEvent("field65","focus"); 180 waitAndTypeByName("field65", "sdfs$#$# dsffs"); 181 fireEvent("field65", "blur"); 182 Assert.assertTrue(getAttributeByName("field65","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 183 fireEvent("field65","focus"); 184 waitAndTypeByName("field65", "sdfs$#$#sffs"); 185 fireEvent("field65", "blur"); 186 Assert.assertTrue(getAttributeByName("field65","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 187 fireEvent("field66","focus"); 188 waitAndTypeByName("field66", "abcABCD"); 189 fireEvent("field66", "blur"); 190 Assert.assertTrue(getAttributeByName("field66","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 191 fireEvent("field66","focus"); 192 waitAndTypeByName("field66", "ABCabc"); 193 fireEvent("field66", "blur"); 194 Assert.assertTrue(getAttributeByName("field66","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 195 fireEvent("field67","focus"); 196 waitAndTypeByName("field67", "(111)B-(222)A"); 197 fireEvent("field67", "blur"); 198 Assert.assertTrue(getAttributeByName("field67","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 199 fireEvent("field67","focus"); 200 waitAndTypeByName("field67", "(12345)-(67890)"); 201 fireEvent("field67", "blur"); 202 Assert.assertTrue(getAttributeByName("field67","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 203 fireEvent("field68","focus"); 204 waitAndTypeByName("field68", "A.66"); 205 fireEvent("field68", "blur"); 206 Assert.assertTrue(getAttributeByName("field68","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 207 fireEvent("field68","focus"); 208 waitAndTypeByName("field68", "a.4"); 209 fireEvent("field68", "blur"); 210 Assert.assertTrue(getAttributeByName("field68","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 211 fireEvent("field56","focus"); 212 waitAndTypeByName("field56", "2020-06-02"); 213 fireEvent("field56", "blur"); 214 Assert.assertTrue(getAttributeByName("field56","class").matches("^[\\s\\S]*error[\\s\\S]*$")); 215 fireEvent("field56","focus"); 216 waitAndTypeByName("field56", "2020-06-02 03:30:30.22"); 217 fireEvent("field56", "blur"); 218 Assert.assertTrue(getAttributeByName("field56","class").matches("^[\\s\\S]*valid[\\s\\S]*$")); 219 passed(); 220 } 221 }