diff options
Diffstat (limited to 'app/src/test/kotlin/com/pitchedapps/frost/facebook')
3 files changed, 32 insertions, 11 deletions
diff --git a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbParseTest.kt b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbParseTest.kt index 65777f97..8c568279 100644 --- a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbParseTest.kt +++ b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbParseTest.kt @@ -7,6 +7,8 @@ import com.pitchedapps.frost.internal.authDependent import com.pitchedapps.frost.parsers.* import org.junit.BeforeClass import org.junit.Test +import kotlin.test.assertNotNull +import kotlin.test.assertTrue import kotlin.test.fail /** @@ -22,25 +24,39 @@ class FbParseTest { } } - private inline fun <T : Any> FrostParser<T>.test(action: T.() -> Unit = {}) { - val response = parse(COOKIE) - ?: fail("${this::class.java.simpleName} returned null for $url") + private inline fun <reified T : Any> FrostParser<T>.test(action: T.() -> Unit = {}) = + parse(COOKIE).test(url, action) + + private inline fun <reified T : Any> ParseResponse<T>?.test(url: String, action: T.() -> Unit = {}) { + val response = this + ?: fail("${T::class.simpleName} parser returned null for $url") println(response) response.data.action() } @Test fun message() = MessageParser.test { - threads.forEach(FrostThread::assertComponentsNotEmpty) + threads.forEach { + it.assertComponentsNotEmpty() + assertTrue(it.id > FALLBACK_TIME_MOD, "id may not be properly matched") + assertNotNull(it.img, "img may not be properly matched") + } threads.map(FrostThread::time).assertDescending("thread time values") } @Test + fun messageUser() = MessageParser.queryUser(COOKIE, "allan").test("allan query") + + @Test fun search() = SearchParser.test() @Test fun notif() = NotifParser.test { - notifs.forEach(FrostNotif::assertComponentsNotEmpty) + notifs.forEach { + it.assertComponentsNotEmpty() + assertTrue(it.id > FALLBACK_TIME_MOD, "id may not be properly matched") + assertNotNull(it.img, "img may not be properly matched") + } notifs.map(FrostNotif::time).assertDescending("notif time values") } }
\ No newline at end of file diff --git a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRegexTest.kt b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRegexTest.kt index a21bcb13..da815b34 100644 --- a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRegexTest.kt +++ b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRegexTest.kt @@ -25,8 +25,13 @@ class FbRegexTest { @Test fun ppRegex() { val img = "https\\3a //scontent-yyz1-1.xx.fbcdn.net/v/asdf1234.jpg?efg\\3d 333\\26 oh\\3d 77\\26 oe\\3d 444" - val ppStyle = "background:#d8dce6 url('$img') no-repeat center;background-size:100% 100%;-webkit-background-size:100% 100%;width:58px;height:58px;" - assertEquals(StringEscapeUtils.unescapeCsv(img), StringEscapeUtils.unescapeCsv(FB_CSS_URL_MATCHER.find(ppStyle)[1])) + val imgUnescaped = StringEscapeUtils.unescapeCsv(img) + val ppStyleSingleQuote = "background:#d8dce6 url('$img') no-repeat center;" + val ppStyleDoubleQuote = "background:#d8dce6 url(\"$img\") no-repeat center;" + val ppStyleNoQuote = "background:#d8dce6 url($img) no-repeat center;" + listOf(ppStyleSingleQuote, ppStyleDoubleQuote, ppStyleNoQuote).forEach { + assertEquals(imgUnescaped, StringEscapeUtils.unescapeCsv(FB_CSS_URL_MATCHER.find(it)[1])) + } } @Test diff --git a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRequestTest.kt b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRequestTest.kt index 16894b16..c3b19727 100644 --- a/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRequestTest.kt +++ b/app/src/test/kotlin/com/pitchedapps/frost/facebook/FbRequestTest.kt @@ -23,7 +23,7 @@ class FbRequestTest { } /** - * Used to emulate [executeAndCheck] + * Used to emulate [executeForNoError] * Must be consistent with that method */ private fun Call.assertNoError() { @@ -35,7 +35,7 @@ class FbRequestTest { @Test fun auth() { - val auth = (USER_ID to COOKIE).getAuth() + val auth = COOKIE.getAuth() assertNotNull(auth) assertEquals(USER_ID, auth.userId) assertEquals(COOKIE, auth.cookie) @@ -44,8 +44,8 @@ class FbRequestTest { @Test fun markNotification() { - val notifId = 1513544657695779 - AUTH.markNotificationRead(notifId).assertNoError() + val notifId = 1514443903880 + AUTH.markNotificationRead(notifId).call.assertNoError() } }
\ No newline at end of file |