1 package org.columba.mail.filter.plugins; 19 20 import java.lang.reflect.InvocationTargetException ; 21 import java.lang.reflect.Method ; 22 23 import junit.framework.Test; 24 import junit.framework.TestCase; 25 import junit.framework.TestSuite; 26 27 import org.columba.mail.folder.MBOXFolderTstFactory; 28 import org.columba.mail.folder.MHFolderFactory; 29 import org.columba.mail.folder.MailboxTstFactory; 30 import org.columba.mail.folder.TempFolderFactory; 31 32 36 public class AllTests { 37 38 private static String [] list = { "DateFilterTest", 39 "ColorFilterTest", "HeaderfieldFilterTest", 40 "FlagsFilterTest", "BodyFilterTest", 41 "PriorityFilterTest","AccountFilterTest", 42 "SizeFilterTest"}; 43 44 53 private static void setup(TestSuite suite, MailboxTstFactory factory) { 54 try { 55 for (int j = 0; j < list.length; j++) { 56 Class clazz = Class.forName("org.columba.mail.filter.plugins." 57 + list[j]); 58 59 Method [] methods = clazz.getDeclaredMethods(); 60 for (int i = 0; i < methods.length; i++) { 61 if (methods[i].getName().startsWith("test")) { 62 63 suite.addTest((TestCase) clazz.getConstructor( 64 new Class [] { MailboxTstFactory.class, 65 String .class}).newInstance( 66 new Object [] { factory, methods[i].getName()})); 67 } 68 } 69 } 70 } catch (SecurityException e) { 71 72 e.printStackTrace(); 73 } catch (IllegalArgumentException e) { 74 75 e.printStackTrace(); 76 } catch (ClassNotFoundException e) { 77 78 e.printStackTrace(); 79 } catch (InstantiationException e) { 80 81 e.printStackTrace(); 82 } catch (IllegalAccessException e) { 83 84 e.printStackTrace(); 85 } catch (InvocationTargetException e) { 86 87 e.printStackTrace(); 88 } catch (NoSuchMethodException e) { 89 90 e.printStackTrace(); 91 } 92 } 93 94 public static Test suite() { 95 TestSuite suite = new TestSuite("Test for org.columba.mail.folder"); 96 97 setup(suite, new MHFolderFactory()); 98 setup(suite, new MBOXFolderTstFactory()); 99 setup(suite, new TempFolderFactory()); 100 104 return suite; 105 } 106 107 } | Popular Tags |