1 26 27 29 package de.nava.informa.parsers; 30 31 import java.io.File ; 32 import java.io.IOException ; 33 import java.util.Calendar ; 34 import java.util.GregorianCalendar ; 35 import java.util.TimeZone ; 36 37 import de.nava.informa.core.ChannelFormat; 38 import de.nava.informa.core.ChannelIF; 39 import de.nava.informa.core.ParseException; 40 import de.nava.informa.impl.basic.ChannelBuilder; 41 import de.nava.informa.impl.basic.Item; 42 import de.nava.informa.utils.InformaTestCase; 43 44 public class TestAtom_0_3_Parser extends InformaTestCase { 45 46 public TestAtom_0_3_Parser(String name) 47 throws IOException , ParseException { 48 49 super("TestAtom_0_3_Parser", name); 50 this.method_name = name; 51 } 52 53 public void testParseDiveIntoMark() throws Exception { 54 File inpFile = new File (getDataDir(), "diveintomark.xml"); 55 ChannelIF channel_mark = FeedParser.parse(new ChannelBuilder(), inpFile); 56 assertEquals("dive into mark", channel_mark.getTitle()); 57 assertEquals(3, channel_mark.getItems().size()); 58 59 assertEquals("Movable Type", channel_mark.getGenerator()); 61 62 assertEquals("Mark Pilgrim", channel_mark.getCreator()); 64 65 Calendar updtDate = new GregorianCalendar (TimeZone.getTimeZone("GMT")); 68 69 updtDate.set(Calendar.YEAR, 2004); 70 updtDate.set(Calendar.MONTH, Calendar.MAY); 71 updtDate.set(Calendar.DAY_OF_MONTH, 13); 72 updtDate.set(Calendar.HOUR_OF_DAY, 17); 73 updtDate.set(Calendar.MINUTE, 16); 74 updtDate.set(Calendar.SECOND, 00); 75 updtDate.set(Calendar.MILLISECOND, 0); 76 assertEquals(updtDate.getTime(), channel_mark.getPubDate()); 77 78 80 assertNotNull(channel_mark.getSite()); 82 assertEquals("http://diveintomark.org/",channel_mark.getSite().toExternalForm()); 83 84 java.util.Iterator itemsColl = channel_mark.getItems().iterator(); 86 Item item = (Item) itemsColl.next(); 87 assertEquals("http://diveintomark.org/archives/2004/05/12/copy-editor".trim(),item.getLink().toExternalForm()); 88 89 assertEquals(ChannelFormat.ATOM_0_3, channel_mark.getFormat()); 90 } 91 92 public void testEntryTitleFormat() throws Exception { 93 File inpFile = new File (getDataDir(), "blink.xml"); 94 ChannelIF channel = FeedParser.parse(new ChannelBuilder(), inpFile); 95 java.util.Iterator itemsColl = channel.getItems().iterator(); 96 itemsColl.next(); 98 while( itemsColl.hasNext() ) { 99 Item item = (Item) itemsColl.next(); 100 assertEquals("History of the <blink> tag",item.getTitle()); 102 } 103 } 104 105 public void testLanguage() throws Exception { 106 File inpFile = new File (getDataDir(), "diveintomark.xml"); 107 ChannelIF channel = FeedParser.parse(new ChannelBuilder(), inpFile); 108 109 assertEquals("en",channel.getLanguage()); 110 111 } 112 113 public void testCopyright() throws Exception { 114 File inpFile = new File (getDataDir(), "multilink-linkblog.xml"); 115 ChannelIF channel = FeedParser.parse(new ChannelBuilder(), inpFile); 116 117 assertEquals("Copyright (c) 2004 Mark Pilgrim", channel.getCopyright()); 119 120 inpFile = new File (getDataDir(), "diveintomark.xml"); 121 channel = FeedParser.parse(new ChannelBuilder(), inpFile); 122 assertEquals("Copyright © 2004, Mark Pilgrim", channel.getCopyright()); 123 124 } 125 } 126 | Popular Tags |