/*
* Created on Jun 24, 2004
*
*/
package com.rometools.rome.unittest;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import com.rometools.rome.feed.synd.SyndEntry;
import com.rometools.rome.io.impl.DateParser;
/**
* @author pat
*
*/
public class TestSyndFeedAtom03 extends SyndFeedTest {
public TestSyndFeedAtom03() {
super("atom_0.3");
}
protected TestSyndFeedAtom03(final String type) {
super(type);
}
protected TestSyndFeedAtom03(final String feedType, final String feedFileName) {
super(feedType, feedFileName);
}
@Override
public void testTitle() throws Exception {
assertProperty(this.getCachedSyndFeed().getTitle(), "feed.title");
}
@Override
public void testLink() throws Exception {
assertProperty(this.getCachedSyndFeed().getLink(), "feed.link^href");
}
public void getAuthor() throws Exception {
assertProperty(this.getCachedSyndFeed().getAuthor(), "feed.author.name");
}
public void testCopyright() throws Exception {
assertProperty(this.getCachedSyndFeed().getCopyright(), "feed.copyright");
}
@Override
public void testPublishedDate() throws Exception {
final Date d = DateParser.parseW3CDateTime("2000-01-01T00:00:00Z", Locale.US);
assertEquals(this.getCachedSyndFeed().getPublishedDate(), d);
}
protected void testEntry(final int i) throws Exception {
final List<SyndEntry> items = this.getCachedSyndFeed().getEntries();
final SyndEntry entry = items.get(i);
assertProperty(entry.getTitle(), "feed.entry[" + i + "].title");
assertProperty(entry.getLink(), "feed.entry[" + i + "].link^href");
assertProperty(entry.getAuthor(), "feed.entry[" + i + "].author.name");
final Date d = DateParser.parseW3CDateTime("2000-0" + (i + 1) + "-01T00:00:00Z", Locale.US);
assertEquals(entry.getPublishedDate(), d);
assertProperty(entry.getDescription().getValue(), "feed.entry[" + i + "].summary");
assertProperty(entry.getContents().get(0).getValue(), "feed.entry[" + i + "].content[0]");
assertProperty(entry.getContents().get(1).getValue(), "feed.entry[" + i + "].content[1]");
}
public void testEntry0() throws Exception {
testEntry(0);
}
public void testEntry1() throws Exception {
testEntry(1);
}
@Override
public void testDescription() throws Exception {
assertEqualsStr("feed.tagline", this.getCachedSyndFeed().getDescription());
}
@Override
public void testEntryLink() throws Exception {
assertEqualsStr("feed.entry[0].link^href", getEntryLink(this.getCachedSyndFeed().getEntries().get(0)));
assertEqualsStr("feed.entry[1].link^href", getEntryLink(this.getCachedSyndFeed().getEntries().get(1)));
}
@Override
public void testLanguage() throws Exception {
// not supported
}
@Override
public void testImage() throws Exception {
// not supported
}
@Override
public void testEntryTitle() throws Exception {
assertEqualsStr("feed.entry[0].title", getEntryTitle(this.getCachedSyndFeed().getEntries().get(0)));
assertEqualsStr("feed.entry[1].title", getEntryTitle(this.getCachedSyndFeed().getEntries().get(1)));
}
@Override
public void testEntryDescription() throws Exception {
assertEqualsStr("feed.entry[0].summary", getEntryDescription(this.getCachedSyndFeed().getEntries().get(0)));
assertEqualsStr("feed.entry[1].summary", getEntryDescription(this.getCachedSyndFeed().getEntries().get(1)));
}
}