2d7a1185947404aca21fdae36adaf95fc5730505
[rhynodge.git] / src / test / java / net / pterodactylus / rhynodge / filters / comics / CyanideAndHappinessComicFilterTest.java
1 package net.pterodactylus.rhynodge.filters.comics;
2
3 import java.io.IOException;
4
5 import com.google.common.base.Optional;
6 import org.hamcrest.MatcherAssert;
7 import org.hamcrest.Matchers;
8 import org.jsoup.nodes.Document;
9 import org.junit.Test;
10
11 /**
12  * Unit test for {@link CyanideAndHappinessComicFilter}.
13  *
14  * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
15  */
16 public class CyanideAndHappinessComicFilterTest {
17
18         private final CyanideAndHappinessComicFilter comicSiteFilter = new CyanideAndHappinessComicFilter();
19         private final Document document;
20
21         public CyanideAndHappinessComicFilterTest() throws IOException {
22                 document = ComicLoader.loadDocument("cyanide-and-happiness.html", "http://www.explosm.net/comics/new/");
23         }
24
25         @Test
26         public void filterCanParseComicTitle() {
27                 MatcherAssert.assertThat(comicSiteFilter.extractTitle(document), Matchers.is(Optional.absent()));
28         }
29
30         @Test
31         public void filterCanExtractImageUrls() {
32                 MatcherAssert.assertThat(comicSiteFilter.extractImageUrls(document), Matchers.contains("http://files.explosm.net/comics/Dave/moneyhappiness.png"));
33         }
34
35         @Test
36         public void filterExtractNoImageComments() {
37                 MatcherAssert.assertThat(comicSiteFilter.extractImageComments(document), Matchers.empty());
38         }
39
40 }