From 5d9a3fd7fb8f2f9d0f592c89446824980c9841c6 Mon Sep 17 00:00:00 2001 From: Allan Wang Date: Mon, 14 Aug 2017 20:48:39 -0700 Subject: v1.4.5 (#174) * Update/kau (#125) * Update logger * Clean imports and bring back reactive libs * Update dependencies and make billing async * Misc (#128) * Update null * Attempt to improve transparent theme backgrounds * Update menu * Move injections to visible method and reduce offset * Update searchview and logging * Clean temp strings and add network states * Move console blacklist to web state * Change some logs to info * Move glide loader to onCreate (#135) * Remove commit number increments (#139) * Fix/misc (#140) * Add canadian locale to toLowerCase * Add try catch to JsAssets * Disable error throwing for bad search subject * Log more throwables quietly * Check internet connection before fetching username * Remove name check in frost notifications * Add activity lifecycle logger * Add rxjava to lib showcase * Move network checker to io thread (#150) * Update dependency * Blank * Feature/jsoup debugger (#152) * Create debugger * Update debugger content * Create debugging logic * Finalize and test debugger * Add reload listener * Fix/pro crash without play store (#155) * Update changelog * Check if iab service exists * Add checker before launching play store request * Separate strings * Enhancement/message notifications (#157) * Map message notifs to the headless html extractor * Update strings * Bring im notifs out of alpha * Update changelog * Remove confirmation dialog (#159) * Separate message notifications and add click intents (#171) * Separate message notifications and add click intent for group notifications * Add comments and finalize * Feature/scroll down on message thread (#172) * Add hook for scroll * Update changelog * Add custom navdrawer layout (#173) * Add faq for auto play * Update changelog * Fix page banner bg (#163) --- .../pitchedapps/frost/utils/JsoupCleanerTest.kt | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 app/src/test/kotlin/com/pitchedapps/frost/utils/JsoupCleanerTest.kt (limited to 'app/src/test/kotlin/com/pitchedapps/frost/utils/JsoupCleanerTest.kt') diff --git a/app/src/test/kotlin/com/pitchedapps/frost/utils/JsoupCleanerTest.kt b/app/src/test/kotlin/com/pitchedapps/frost/utils/JsoupCleanerTest.kt new file mode 100644 index 00000000..4ec09ea6 --- /dev/null +++ b/app/src/test/kotlin/com/pitchedapps/frost/utils/JsoupCleanerTest.kt @@ -0,0 +1,56 @@ +package com.pitchedapps.frost.utils + +import org.junit.Test +import kotlin.test.assertEquals + +/** + * Created by Allan Wang on 2017-08-10. + */ +class JsoupCleanerTest { + + val whitespaceRegex = Regex("\\s+") + + fun String.cleanWhitespace() = replace("\n", "").replace(whitespaceRegex, " ").replace("> <", "><") + + private fun String.assertCleanHtml(expected: String) { + assertEquals(expected.cleanWhitespace(), cleanHtml().cleanWhitespace()) + } + + private fun String.assertCleanJsoup(expected: String) { + assertEquals(expected.cleanWhitespace(), cleanJsoup().cleanWhitespace()) + } + + private fun String.assertCleanText(expected: String) { + assertEquals(expected.cleanWhitespace(), cleanText().cleanWhitespace()) + } + + @Test + fun noChange() { + " HI ".assertCleanJsoup(" HI ") + } + + @Test + fun basicText() { + """
Hello world
""".assertCleanHtml("""
""") + } + + @Test + fun multiLineText() { + """
Hello + world
""".assertCleanHtml("""
""") + } + + @Test + fun textRemoval() { + """
HelloWorld
""".assertCleanText("
") + } + + @Test + fun kau() { + val html = """
KAU

An extensive collection of Kotlin Android Utils

KAUclose
  • Huge package of one line extension functions
  • Custom UI views
  • Adapter items and animators
  • SearchView
  • Custom delegates
""" + val expected = """
""" + html.assertCleanHtml(expected) + } + +} + -- cgit v1.2.3