1 package csdl.jblanket.modifier; 2 3 import java.util.ArrayList ; 4 import java.util.List ; 5 import java.io.File ; 6 import java.text.ParseException ; 7 8 import junit.framework.TestCase; 9 10 16 public class TestModifier extends TestCase { 17 18 19 private Modifier modifier; 20 21 22 private final String testDir = System.getProperty("jblanket.testdir"); 23 24 private final String myTestDir = "testmodifier"; 25 26 private final String slash = File.separator; 27 28 private final String testGrammar = "Test*.class"; 29 30 31 private final boolean excludeOneLineMethods = true; 32 33 private final boolean excludeConstructors = true; 34 35 36 private final String totalFile = "mytotalMethods.xml"; 37 38 private final String excludedFile = "myExcludedMethods.xml"; 39 40 private final String oneLineFile = "myOneLineMethods.xml"; 41 42 private final String untestableFile = "myUntestableFile.xml"; 43 44 45 private ArrayList packagePrefixes = new ArrayList (); 46 47 52 public TestModifier(String name) { 53 super(name); 54 } 55 56 61 public void setUp() throws Exception { 62 63 this.packagePrefixes = new ArrayList (); 65 this.packagePrefixes.add("csdl.jblanket.test."); 66 67 this.modifier = new Modifier(false, this.testGrammar, this.excludeOneLineMethods, 69 this.excludeConstructors, false, this.packagePrefixes); 70 } 71 72 77 public void testIsValidTestGrammar() throws Exception { 78 79 final String testFoo = "Testfoo"; 81 final String fooTest = "fooTest"; 82 83 final String testPrefix1 = "Prefix*.class"; 85 final String testPrefix2 = "Prefix*.java"; 86 final String testPrefix3 = "Prefix*."; 87 final String testPrefix4 = "Prefix*"; 88 89 final String testGrammar1 = "Test*.class"; 91 final String testGrammar2 = "Test*.java"; 92 final String testGrammar3 = "Test*."; 93 final String testGrammar4 = "Test*"; 94 95 final String grammarTest1 = "*Test.class"; 97 final String grammarTest2 = "*Test.java"; 98 final String grammarTest3 = "*Test."; 99 final String grammarTest4 = "*Test"; 100 101 final String grammarEnding1 = "*Ending.class"; 103 final String grammarEnding2 = "*Ending.java"; 104 final String grammarEnding3 = "*Ending."; 105 final String grammarEnding4 = "*Ending"; 106 107 final String invalidTestGrammar1 = "FooTest%.class"; 109 final String invalidTestGrammar2 = "FooTest%.java"; 110 final String invalidTestGrammar3 = "FooTest%."; 111 final String invalidTestGrammar4 = "FooTest%"; 112 final String invalidTestGrammar5 = "FooTest*.j"; 113 final String invalidTestGrammar6 = "Foo.Test*.j"; 114 final String invalidTestGrammar7 = "test%"; 115 116 final String invalidGrammarTest1 = "%TestFoo.class"; 118 final String invalidGrammarTest2 = "%TestFoo.java"; 119 final String invalidGrammarTest3 = "%TestFoo."; 120 final String invalidGrammarTest4 = "%TestFoo"; 121 final String invalidGrammarTest5 = "*TestFoo.j"; 122 final String invalidGrammarTest6 = "*Test.Foo.j"; 123 final String invalidGrammarTest7 = "%test"; 124 125 assertTrue("Checking " + testPrefix1, modifier.isValidTestGrammar(testPrefix1)); 128 assertTrue("Checking " + testPrefix2, modifier.isValidTestGrammar(testPrefix2)); 129 assertTrue("Checking " + testPrefix3, modifier.isValidTestGrammar(testPrefix3)); 130 assertTrue("Checking " + testPrefix4, modifier.isValidTestGrammar(testPrefix4)); 131 132 assertTrue("Checking " + testGrammar1, modifier.isValidTestGrammar(testGrammar1)); 134 assertTrue("Checking " + testGrammar2, modifier.isValidTestGrammar(testGrammar2)); 135 assertTrue("Checking " + testGrammar3, modifier.isValidTestGrammar(testGrammar3)); 136 assertTrue("Checking " + testGrammar4, modifier.isValidTestGrammar(testGrammar4)); 137 138 assertTrue("Checking " + grammarTest1, modifier.isValidTestGrammar(grammarTest1)); 140 assertTrue("Checking " + grammarTest2, modifier.isValidTestGrammar(grammarTest2)); 141 assertTrue("Checking " + grammarTest3, modifier.isValidTestGrammar(grammarTest3)); 142 assertTrue("Checking " + grammarTest4, modifier.isValidTestGrammar(grammarTest4)); 143 144 assertTrue("Checking " + grammarEnding1, 146 modifier.isValidTestGrammar(grammarEnding1)); 147 assertTrue("Checking " + grammarEnding2, 148 modifier.isValidTestGrammar(grammarEnding2)); 149 assertTrue("Checking " + grammarEnding3, 150 modifier.isValidTestGrammar(grammarEnding3)); 151 assertTrue("Checking " + grammarEnding4, 152 modifier.isValidTestGrammar(grammarEnding4)); 153 154 try { 156 assertTrue("Checking invalid grammar " + invalidTestGrammar1, 157 modifier.isValidTestGrammar(invalidTestGrammar1)); 158 fail("Passed invalid grammar " + invalidTestGrammar1); 159 } 160 catch (ParseException e) { 161 } 163 164 try { 165 modifier.isValidTestGrammar(invalidTestGrammar2); 166 fail("Passed invalid grammar " + invalidTestGrammar2); 167 } 168 catch (ParseException e) { 169 } 171 172 try { 173 modifier.isValidTestGrammar(invalidTestGrammar3); 174 fail("Passed invalid grammar " + invalidTestGrammar3); 175 } 176 catch (ParseException e) { 177 } 179 180 try { 181 modifier.isValidTestGrammar(invalidTestGrammar4); 182 fail("Passed invalid grammar " + invalidTestGrammar4); 183 } 184 catch (ParseException e) { 185 } 187 188 try { 189 modifier.isValidTestGrammar(invalidTestGrammar5); 190 fail("Passed invalid grammar " + invalidTestGrammar5); 191 } 192 catch (ParseException e) { 193 } 195 196 try { 197 modifier.isValidTestGrammar(invalidTestGrammar6); 198 fail("Passed invalid grammar " + invalidTestGrammar6); 199 } 200 catch (ParseException e) { 201 } 203 204 try { 205 modifier.isValidTestGrammar(invalidTestGrammar7); 206 fail("Passed invalid grammar " + invalidTestGrammar7); 207 } 208 catch (ParseException e) { 209 } 211 212 try { 214 modifier.isValidTestGrammar(invalidGrammarTest1); 215 fail("Passed invalid grammar " + invalidGrammarTest1); 216 } 217 catch (ParseException e) { 218 } 220 221 try { 222 modifier.isValidTestGrammar(invalidGrammarTest2); 223 fail("Passed invalid grammar " + invalidGrammarTest2); 224 } 225 catch (ParseException e) { 226 } 228 229 try { 230 modifier.isValidTestGrammar(invalidGrammarTest3); 231 fail("Passed invalid grammar " + invalidGrammarTest3); 232 } 233 catch (ParseException e) { 234 } 236 237 try { 238 modifier.isValidTestGrammar(invalidGrammarTest4); 239 fail("Passed invalid grammar " + invalidGrammarTest4); 240 } 241 catch (ParseException e) { 242 } 244 245 try { 246 modifier.isValidTestGrammar(invalidGrammarTest5); 247 fail("Passed invalid grammar " + invalidGrammarTest5); 248 } 249 catch (ParseException e) { 250 } 252 253 try { 254 modifier.isValidTestGrammar(invalidGrammarTest6); 255 fail("Passed invalid grammar " + invalidGrammarTest6); 256 } 257 catch (ParseException e) { 258 } 260 261 try { 262 modifier.isValidTestGrammar(invalidGrammarTest7); 263 fail("Passed invalid grammar " + invalidGrammarTest7); 264 } 265 catch (ParseException e) { 266 } 268 } 269 270 275 public void testDeleteDirectory() throws Exception { 276 277 final String fakeDir = "first" + slash + "second" + slash + "third"; 279 280 File dir = new File (testDir + slash + myTestDir); 282 File subdir = new File (dir, "first"); 283 File subdirs = new File (dir, fakeDir); 284 285 subdirs.mkdirs(); 287 288 this.modifier.deleteDirectory(subdir); 290 291 String [] existingSubdirs = dir.list(); 293 assertTrue("checking existence of subdirectories", existingSubdirs.length == 0); 294 } 295 296 299 public void testToArrayList() { 300 301 String rawList = "a;b c;d:e;f;"; 302 List list = Modifier.stringToArrayList(rawList); 303 assertEquals("checking size of array list", 4, list.size()); 304 305 assertEquals("checking array list", "a", list.get(0)); 307 assertEquals("checking array list", "b c", list.get(1)); 308 assertEquals("checking array list", "d:e", list.get(2)); 309 assertEquals("checking array list", "f", list.get(3)); 310 } 311 } 312 | Popular Tags |