Convert tests from Hamcrest -> AssertK.

This commit is contained in:
Jameson Williams
2025-01-07 22:07:09 -06:00
committed by Greyson Parrelli
parent 33c918defd
commit 1509e3ed79
48 changed files with 1078 additions and 926 deletions

View File

@@ -1,6 +1,9 @@
package org.thoughtcrime.securesms.crash
import android.app.Application
import assertk.assertThat
import assertk.assertions.containsExactly
import assertk.assertions.isEmpty
import io.mockk.every
import io.mockk.mockkObject
import io.mockk.unmockkAll
@@ -11,7 +14,6 @@ import org.junit.Test
import org.junit.runner.RunWith
import org.robolectric.RobolectricTestRunner
import org.robolectric.annotation.Config
import org.thoughtcrime.securesms.assertIs
import org.thoughtcrime.securesms.keyvalue.SignalStore
import org.thoughtcrime.securesms.testutil.MockAppDependenciesRule
import org.thoughtcrime.securesms.util.RemoteConfig
@@ -21,7 +23,6 @@ import java.util.UUID
@RunWith(RobolectricTestRunner::class)
@Config(manifest = Config.NONE, application = Application::class)
class CrashConfigTest {
@get:Rule
val appDependencies = MockAppDependenciesRule()
@@ -41,25 +42,26 @@ class CrashConfigTest {
@Test
fun `simple name pattern`() {
every { RemoteConfig.crashPromptConfig } returns """[ { "name": "test", "percent": 100 } ]"""
CrashConfig.computePatterns() assertIs listOf(CrashConfig.CrashPattern(namePattern = "test"))
assertThat(CrashConfig.computePatterns()).containsExactly(CrashConfig.CrashPattern(namePattern = "test"))
}
@Test
fun `simple message pattern`() {
every { RemoteConfig.crashPromptConfig } returns """[ { "message": "test", "percent": 100 } ]"""
CrashConfig.computePatterns() assertIs listOf(CrashConfig.CrashPattern(messagePattern = "test"))
assertThat(CrashConfig.computePatterns()).containsExactly(CrashConfig.CrashPattern(messagePattern = "test"))
}
@Test
fun `simple stackTrace pattern`() {
every { RemoteConfig.crashPromptConfig } returns """[ { "stackTrace": "test", "percent": 100 } ]"""
CrashConfig.computePatterns() assertIs listOf(CrashConfig.CrashPattern(stackTracePattern = "test"))
assertThat(CrashConfig.computePatterns()).containsExactly(CrashConfig.CrashPattern(stackTracePattern = "test"))
}
@Test
fun `all fields set`() {
every { RemoteConfig.crashPromptConfig } returns """[ { "name": "test1", "message": "test2", "stackTrace": "test3", "percent": 100 } ]"""
CrashConfig.computePatterns() assertIs listOf(CrashConfig.CrashPattern(namePattern = "test1", messagePattern = "test2", stackTracePattern = "test3"))
assertThat(CrashConfig.computePatterns())
.containsExactly(CrashConfig.CrashPattern(namePattern = "test1", messagePattern = "test2", stackTracePattern = "test3"))
}
@Test
@@ -73,7 +75,7 @@ class CrashConfigTest {
]
"""
CrashConfig.computePatterns() assertIs listOf(
assertThat(CrashConfig.computePatterns()).containsExactly(
CrashConfig.CrashPattern(namePattern = "test1"),
CrashConfig.CrashPattern(messagePattern = "test2"),
CrashConfig.CrashPattern(stackTracePattern = "test3")
@@ -91,7 +93,7 @@ class CrashConfigTest {
]
"""
CrashConfig.computePatterns() assertIs listOf(
assertThat(CrashConfig.computePatterns()).containsExactly(
CrashConfig.CrashPattern(namePattern = "test1"),
CrashConfig.CrashPattern(messagePattern = "test2")
)
@@ -100,30 +102,30 @@ class CrashConfigTest {
@Test
fun `ignore zero percent`() {
every { RemoteConfig.crashPromptConfig } returns """[ { "name": "test", "percent": 0 } ]"""
CrashConfig.computePatterns() assertIs emptyList()
assertThat(CrashConfig.computePatterns()).isEmpty()
}
@Test
fun `not setting percent is the same as zero percent`() {
every { RemoteConfig.crashPromptConfig } returns """[ { "name": "test" } ]"""
CrashConfig.computePatterns() assertIs emptyList()
assertThat(CrashConfig.computePatterns()).isEmpty()
}
@Test
fun `ignore configs without a pattern`() {
every { RemoteConfig.crashPromptConfig } returns """[ { "percent": 100 } ]"""
CrashConfig.computePatterns() assertIs emptyList()
assertThat(CrashConfig.computePatterns()).isEmpty()
}
@Test
fun `ignore invalid json`() {
every { RemoteConfig.crashPromptConfig } returns "asdf"
CrashConfig.computePatterns() assertIs emptyList()
assertThat(CrashConfig.computePatterns()).isEmpty()
}
@Test
fun `ignore empty json`() {
every { RemoteConfig.crashPromptConfig } returns ""
CrashConfig.computePatterns() assertIs emptyList()
assertThat(CrashConfig.computePatterns()).isEmpty()
}
}