1 26 27 29 package de.nava.informa.parsers; 30 31 import java.io.BufferedReader ; 32 import java.io.FileReader ; 33 import java.net.URL ; 34 35 import junit.framework.Test; 36 import junit.framework.TestSuite; 37 38 import org.apache.commons.logging.Log; 39 import org.apache.commons.logging.LogFactory; 40 41 import de.nava.informa.core.ChannelBuilderIF; 42 import de.nava.informa.core.ChannelIF; 43 import de.nava.informa.utils.InformaTestCase; 44 45 52 public class TestFeedParser extends InformaTestCase { 53 54 private static Log logger = LogFactory.getLog(InformaTestCase.class); 55 56 private String testURL; 57 private ChannelBuilderIF builder; 58 59 public TestFeedParser(String testMethodName, String testURL) { 60 super("TestFeedParser", testMethodName); 61 this.testURL = testURL; 62 this.builder = new de.nava.informa.impl.basic.ChannelBuilder(); 63 } 64 65 public void testParseNewsFeedValidChannel() throws Exception { 66 logger.info("Reading in feed from " + testURL); 67 ChannelIF channel = FeedParser.parse(builder, new URL (testURL)); 68 assertNotNull("Failed parsing channel " + testURL, channel.getItems()); 69 assertTrue("Expected at least one item at channel " + testURL, 70 channel.getItems().size() > 0 ); 71 } 72 73 public static Test suite() throws Exception { 74 TestSuite suite = new TestSuite(); 75 String line; 77 BufferedReader rdr = new BufferedReader (new FileReader (getDataDir() + FS + "newsfeeds.txt")); 78 while ((line = rdr.readLine()) != null) { 79 if (line.startsWith("#")) { continue; 81 } 82 suite.addTest(new TestFeedParser("testParseNewsFeedValidChannel", line)); 83 } 84 return suite; 85 } 86 87 } 88 | Popular Tags |