public static Test suite() throws IOException {
TestSuite result = new TestSuite(HTMLPageParserTest.class.getName());
File[] files = listParserTests(new File("src/parser-tests"));
PageParser[] parsers = new PageParser[] { /*new FastPageParser(),*/ new HTMLPageParser() };
for (int i = 0; i < parsers.length; i++) {
PageParser parser = parsers[i];
String name = parser.getClass().getName();
TestSuite suiteForParser = new TestSuite(name);
for (int j = 0; j < files.length; j++) {
File file = files[j];
TestSuite suiteForFile = new TestSuite(file.getName().replace('.", '_"));
suiteForFile.addTest(new HTMLPageParserTest(parser, file, "testTitle"));
suiteForFile.addTest(new HTMLPageParserTest(parser, file, "testBody"));
suiteForFile.addTest(new HTMLPageParserTest(parser, file, "testHead"));
suiteForFile.addTest(new HTMLPageParserTest(parser, file, "testFullPage"));
suiteForFile.addTest(new HTMLPageParserTest(parser, file, "testProperties"));
suiteForParser.addTest(suiteForFile);
}
result.addTest(suiteForParser);
}
return result;
}
This test case builds a custom suite, containing a collection of smaller suites (one for each file in src/parser-tests). |