Skip to content

Commit

Permalink
Add test
Browse files Browse the repository at this point in the history
  • Loading branch information
w3stling committed Dec 5, 2024
1 parent f9e3b57 commit 8a266ed
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,29 +5,51 @@
import nl.jqno.equalsverifier.EqualsVerifier;
import org.junit.jupiter.api.Test;

import javax.net.ssl.SSLContext;
import java.io.IOException;
import java.io.InputStream;
import java.net.http.HttpClient;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.time.Duration;
import java.util.stream.Collectors;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.*;

class ItunesRssReaderTest {

@Test
void readItunesPodcastFeed() {
var res = new ItunesRssReader().read(ItunesRssReader.class.getClassLoader().getResourceAsStream("itunes-podcast.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());
var res = new ItunesRssReader().read(fromFile("itunes-podcast.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

assertEquals(9, res.size());
}

@Test
void readItunesPodcastFeed2() throws IOException {
void readItunesPodcastFeedFromUrl() throws IOException {
var res = new ItunesRssReader().read("https://feeds.theincomparable.com/batmanuniversity")
.collect(Collectors.toList());
.collect(Collectors.toList());

assertTrue(res.size() > 0);
assertFalse(res.isEmpty());
}

@Test
void httpClient() throws IOException, KeyManagementException, NoSuchAlgorithmException {
SSLContext context = SSLContext.getInstance("TLSv1.3");
context.init(null, null, null);

HttpClient httpClient = HttpClient.newBuilder()
.sslContext(context)
.connectTimeout(Duration.ofSeconds(15))
.followRedirects(HttpClient.Redirect.NORMAL)
.build();

var res = new ItunesRssReader(httpClient).read("https://feeds.theincomparable.com/batmanuniversity")
.collect(Collectors.toList());

assertFalse(res.isEmpty());
}

@Test
Expand Down Expand Up @@ -64,4 +86,8 @@ void badDuration() {
item.setItunesDuration("a:b:c");
assertTrue(item.getItunesDurationAsDuration().isEmpty());
}

private InputStream fromFile(String fileName) {
return getClass().getClassLoader().getResourceAsStream(fileName);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import nl.jqno.equalsverifier.EqualsVerifier;
import org.junit.jupiter.api.Test;

import java.io.InputStream;
import java.util.stream.Collectors;

import static com.github.npathai.hamcrestopt.OptionalMatchers.isEmpty;
Expand All @@ -16,15 +17,15 @@ class MediaRssReaderTest {

@Test
void readMediaRssFeed() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.collect(Collectors.toList());

assertEquals(10, res.size());
}

@Test
void readMediaRssFeedItemTitle() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

Expand All @@ -34,7 +35,7 @@ void readMediaRssFeedItemTitle() {

@Test
void readMediaRssFeedItemPubDate() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

Expand All @@ -44,7 +45,7 @@ void readMediaRssFeedItemPubDate() {

@Test
void readMediaRssFeedItemLink() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

Expand All @@ -54,7 +55,7 @@ void readMediaRssFeedItemLink() {

@Test
void readMediaRssFeedDescription() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

Expand All @@ -64,7 +65,7 @@ void readMediaRssFeedDescription() {

@Test
void readMediaRssFeedGuid() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

Expand All @@ -74,7 +75,7 @@ void readMediaRssFeedGuid() {

@Test
void readMediaRssFeedIsPermaLink() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

Expand All @@ -84,7 +85,7 @@ void readMediaRssFeedIsPermaLink() {

@Test
void readMediaRssFeedThumbnail() {
var res = new MediaRssReader().read(MediaRssReader.class.getClassLoader().getResourceAsStream("media-rss.xml"))
var res = new MediaRssReader().read(fromFile("media-rss.xml"))
.sorted(ItemComparator.oldestPublishedItemFirst())
.collect(Collectors.toList());

Expand All @@ -100,4 +101,8 @@ void readMediaRssFeedThumbnail() {
void equalsContract() {
EqualsVerifier.simple().forClass(MediaRssItem.class).withIgnoredFields("defaultComparator").withIgnoredFields("dateTimeParser").withIgnoredFields("category").withNonnullFields("categories").withIgnoredFields("enclosure").withNonnullFields("enclosures").verify();
}

private InputStream fromFile(String fileName) {
return getClass().getClassLoader().getResourceAsStream(fileName);
}
}

0 comments on commit 8a266ed

Please sign in to comment.