Improved feed reader testing

This commit is contained in:
Erik C. Thauvin 2023-10-17 13:26:24 -07:00
parent 86b35874bf
commit 8e37c3912a

View file

@ -59,8 +59,13 @@ class FeedReaderTest {
messages = readFeed("https://lorem-rss.herokuapp.com/feed?length=84", 42) messages = readFeed("https://lorem-rss.herokuapp.com/feed?length=84", 42)
assertThat(messages, "messages").size().isEqualTo(84) assertThat(messages, "messages").size().isEqualTo(84)
assertThat(messages[messages.size - 2], "messages.size - 2").prop(Message::msg).startsWith("Lorem ipsum") messages.forEachIndexed { i, m ->
assertThat(messages.last(), "messages.last").prop(Message::msg).contains("http://example.com/test/") if (i % 2 == 0) {
assertThat(m, "messages($i)").prop(Message::msg).startsWith("Lorem ipsum")
} else {
assertThat(m, "messages($i)").prop(Message::msg).contains("http://example.com/test/")
}
}
assertFailure { readFeed("blah") }.isInstanceOf(MalformedURLException::class.java) assertFailure { readFeed("blah") }.isInstanceOf(MalformedURLException::class.java)
@ -68,7 +73,6 @@ class FeedReaderTest {
assertFailure { readFeed("https://www.thauvin.net/foo") }.isInstanceOf(IOException::class.java) assertFailure { readFeed("https://www.thauvin.net/foo") }.isInstanceOf(IOException::class.java)
assertFailure { readFeed("https://www.examplesfoo.com/") } assertFailure { readFeed("https://www.examplesfoo.com/") }.isInstanceOf(UnknownHostException::class.java)
.isInstanceOf(UnknownHostException::class.java)
} }
} }