Ensure filter is not retriggered when formatting.

Fixes #13876
This commit is contained in:
Alex Hart
2025-01-06 13:00:31 -04:00
committed by GitHub
parent a504c9dd56
commit c5207cb8a6
2 changed files with 37 additions and 15 deletions

View File

@@ -2,6 +2,9 @@ package org.thoughtcrime.securesms.components.settings.app.subscription.boost
import android.app.Application
import android.text.SpannableStringBuilder
import android.widget.TextView
import androidx.appcompat.widget.AppCompatEditText
import androidx.test.core.app.ApplicationProvider
import org.junit.Assert.assertEquals
import org.junit.Assert.assertNotNull
import org.junit.Assert.assertNull
@@ -96,6 +99,19 @@ class BoostTest__MoneyFilter {
assertNull(filterResult)
}
@Test
fun `Given USD, when I enter 1000, then I expect successful filter`() {
val view = AppCompatEditText(ApplicationProvider.getApplicationContext())
val testSubject = Boost.MoneyFilter(usd, text = view)
view.keyListener = testSubject
view.addTextChangedListener(testSubject)
view.setText("1000", TextView.BufferType.EDITABLE)
assertEquals("$1,000", view.text.toString())
}
@Test
fun `Given JPY, when I enter 5, then I expect yen 5`() {
val testSubject = Boost.MoneyFilter(yen)