diff options
author | Allan Wang <me@allanwang.ca> | 2017-12-29 19:39:04 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-29 19:39:04 -0500 |
commit | 32e6b5be0e662bbac22806bcc87259fd1a2e2ed0 (patch) | |
tree | c97f7ef11b60231bbe7337f5960413b95da0a8c2 /app/src/test/kotlin/com/pitchedapps/frost/facebook/FbParseTest.kt | |
parent | 8fee0629c27edee847358efc82309118f3a9a3a5 (diff) | |
download | frost-32e6b5be0e662bbac22806bcc87259fd1a2e2ed0.tar.gz frost-32e6b5be0e662bbac22806bcc87259fd1a2e2ed0.tar.bz2 frost-32e6b5be0e662bbac22806bcc87259fd1a2e2ed0.zip |
Feature/native notifs (#579)
* Improve parser and add zip test
* Remove ActivityOptionsCompat, resolves #555
* Create native notifs
* Add animations
* Add image rounder
* Improve glide transformations
* Add request service
* Fix parser
* Fix parser
* Add thumbnail and fix notification text
* Update parsers and regex
* Auto mark as read
* Add request implementation in pending intent
* Remove unnecessary return data
* Simplify command retrieval
* Use name keys instead
* Revamp all bundle calls
* Fix up thumbnail layout
Diffstat (limited to 'app/src/test/kotlin/com/pitchedapps/frost/facebook/FbParseTest.kt')
-rw-r--r-- | app/src/test/kotlin/com/pitchedapps/frost/facebook/FbParseTest.kt | 26 |
1 files changed, 21 insertions, 5 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 |