* tests building a skip hours object.
*/
@Test
public void testBuildSkipHours() {
try {
SkipHours skipHours = rssDoc.buildSkipHours(null);
assertNotNull(skipHours);
fail("we should have thrown an exception above.");
} catch (RSSpectException r) {
assertEquals(r.getMessage(),
"skipHours elements should contain at least one <hour> sub element.");
}
try {
SkipHours skipHours = rssDoc.buildSkipHours(new LinkedList<Hour>());
assertNotNull(skipHours);
fail("we should have thrown an exception above.");
} catch (RSSpectException r) {
assertEquals(r.getMessage(),
"skipHours elements should contain at least one <hour> sub element.");
}
try {
List<Hour> hours = new LinkedList<Hour>();
hours.add(rssDoc.buildHour("24"));
SkipHours skipHours = rssDoc.buildSkipHours(hours);
assertNotNull(skipHours);
fail("we should have thrown an exception above.");
} catch (RSSpectException r) {
assertEquals(r.getMessage(),
"hour elements must be between 0 and 23 inclusive.");
}
try {
List<Hour> hours = new LinkedList<Hour>();
hours.add(rssDoc.buildHour("-2"));
SkipHours skipHours = rssDoc.buildSkipHours(hours);
assertNotNull(skipHours);
fail("we should have thrown an exception above.");
} catch (RSSpectException r) {
assertEquals(r.getMessage(),
"hour elements must be between 0 and 23 inclusive.");
}
try {
List<Hour> hours = new LinkedList<Hour>();
hours.add(rssDoc.buildHour("cat"));
SkipHours skipHours = rssDoc.buildSkipHours(hours);
assertNotNull(skipHours);
fail("we should have thrown an exception above.");
} catch (RSSpectException r) {
assertEquals(r.getMessage(), "invalid number format for hour.");
}
try {
List<Hour> hours = new LinkedList<Hour>();
hours.add(rssDoc.buildHour("23"));
SkipHours skipHours = rssDoc.buildSkipHours(hours);
assertNotNull(skipHours);
assertNotNull(skipHours.getSkipHours());
} catch (Exception e) {
fail("should not fail here.");
}
try {
rss1 = rssDoc.readRSSToBean(expectedRSS1);
SkipHours sh = rss1.getChannel().getSkipHours();
assertNotNull(sh);
assertNotNull(sh.getSkipHour("12"));
assertEquals(sh.getSkipHour("12").getHour(), "12");
assertNull(sh.getSkipHour("100"));
} catch (Exception e) {
fail("should not fail here.");
}
}