use link icon instead of emoji when showing hidden urls

This commit is contained in:
Conny Duck 2023-09-24 16:28:53 +02:00
commit 31ad946e1a
36 changed files with 62 additions and 67 deletions

View file

@ -1,8 +1,8 @@
package com.keylesspalace.tusky.util
import android.content.Context
import android.text.SpannableStringBuilder
import android.text.style.URLSpan
import android.widget.TextView
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.platform.app.InstrumentationRegistry
import com.keylesspalace.tusky.R
@ -33,8 +33,8 @@ class LinkHelperTest {
HashTag("mastodev", "https://example.com/Tags/mastodev")
)
private val context: Context
get() = InstrumentationRegistry.getInstrumentation().targetContext
private val textView: TextView
get() = TextView(InstrumentationRegistry.getInstrumentation().targetContext)
@Test
fun whenSettingClickableText_mentionUrlsArePreserved() {
@ -168,8 +168,8 @@ class LinkHelperTest {
content.append(displayedContent, URLSpan(maliciousUrl), 0)
val oldContent = content.toString()
Assert.assertEquals(
context.getString(R.string.url_domain_notifier, displayedContent, maliciousDomain),
markupHiddenUrls(context, content).toString()
textView.context.getString(R.string.url_domain_notifier, displayedContent, maliciousDomain),
markupHiddenUrls(textView, content).toString()
)
Assert.assertEquals(oldContent, content.toString())
}
@ -182,8 +182,8 @@ class LinkHelperTest {
val content = SpannableStringBuilder()
content.append(displayedContent, URLSpan(maliciousUrl), 0)
Assert.assertEquals(
context.getString(R.string.url_domain_notifier, displayedContent, maliciousDomain),
markupHiddenUrls(context, content).toString()
textView.context.getString(R.string.url_domain_notifier, displayedContent, maliciousDomain),
markupHiddenUrls(textView, content).toString()
)
}
@ -196,9 +196,9 @@ class LinkHelperTest {
content.append(displayedContent, URLSpan("https://$domain/foo/bar"), 0)
}
val markedUpContent = markupHiddenUrls(context, content)
val markedUpContent = markupHiddenUrls(textView, content)
for (domain in domains) {
Assert.assertTrue(markedUpContent.contains(context.getString(R.string.url_domain_notifier, displayedContent, domain)))
Assert.assertTrue(markedUpContent.contains(textView.context.getString(R.string.url_domain_notifier, displayedContent, domain)))
}
}
@ -215,7 +215,7 @@ class LinkHelperTest {
.append("$domain/", URLSpan("https://$domain"), 0)
.append("$domain/", URLSpan("https://www.$domain"), 0)
val markedUpContent = markupHiddenUrls(context, content)
val markedUpContent = markupHiddenUrls(textView, content)
Assert.assertFalse(markedUpContent.contains("🔗"))
}
@ -228,7 +228,7 @@ class LinkHelperTest {
.append("Some Place | https://some.place/", URLSpan("https://some.place/"), 0)
.append("Some Place https://some.place/path", URLSpan("https://some.place/path"), 0)
val markedUpContent = markupHiddenUrls(context, content)
val markedUpContent = markupHiddenUrls(textView, content)
Assert.assertFalse(markedUpContent.contains("🔗"))
}
@ -241,7 +241,7 @@ class LinkHelperTest {
.append("Another Place | https://another.place/", URLSpan("https://some.place/"), 0)
.append("Another Place https://another.place/path", URLSpan("https://some.place/path"), 0)
val markedUpContent = markupHiddenUrls(context, content)
val markedUpContent = markupHiddenUrls(textView, content)
val asserts = listOf(
"Another Place: another.place",
"Another Place: another.place/",
@ -250,7 +250,7 @@ class LinkHelperTest {
"Another Place https://another.place/path"
)
asserts.forEach {
Assert.assertTrue(markedUpContent.contains(context.getString(R.string.url_domain_notifier, it, "some.place")))
Assert.assertTrue(markedUpContent.contains(textView.context.getString(R.string.url_domain_notifier, it, "some.place")))
}
}
@ -262,7 +262,7 @@ class LinkHelperTest {
builder.append(" ")
}
val markedUpContent = markupHiddenUrls(context, builder)
val markedUpContent = markupHiddenUrls(textView, builder)
for (mention in mentions) {
Assert.assertFalse(markedUpContent.contains("${getDomain(mention.url)})"))
}
@ -276,7 +276,7 @@ class LinkHelperTest {
builder.append(" ")
}
val markedUpContent = markupHiddenUrls(context, builder)
val markedUpContent = markupHiddenUrls(textView, builder)
for (mention in mentions) {
Assert.assertFalse(markedUpContent.contains("${getDomain(mention.url)})"))
}
@ -290,7 +290,7 @@ class LinkHelperTest {
builder.append(" ")
}
val markedUpContent = markupHiddenUrls(context, builder)
val markedUpContent = markupHiddenUrls(textView, builder)
for (tag in tags) {
Assert.assertFalse(markedUpContent.contains("${getDomain(tag.url)})"))
}
@ -304,7 +304,7 @@ class LinkHelperTest {
builder.append(" ")
}
val markedUpContent = markupHiddenUrls(context, builder)
val markedUpContent = markupHiddenUrls(textView, builder)
for (tag in tags) {
Assert.assertFalse(markedUpContent.contains("${getDomain(tag.url)})"))
}