TestSyndFeedAtom03.java
/*
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* 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;
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)));
}
}