mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-25 11:20:47 +01:00
Fix avatar loading in OS views when app is not running.
This commit is contained in:
committed by
mtang-signal
parent
8a4d9fc635
commit
71b5a9f865
@@ -1,60 +0,0 @@
|
||||
package org.thoughtcrime.securesms.util;
|
||||
|
||||
import android.app.Application;
|
||||
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.ParameterizedRobolectricTestRunner;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.thoughtcrime.securesms.SignalStoreRule;
|
||||
import org.thoughtcrime.securesms.dependencies.AppDependencies;
|
||||
import org.thoughtcrime.securesms.keyvalue.AccountValues;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
|
||||
import kotlin.Unit;
|
||||
|
||||
import static junit.framework.TestCase.assertEquals;
|
||||
|
||||
@RunWith(ParameterizedRobolectricTestRunner.class)
|
||||
@Config(manifest = Config.NONE, application = Application.class)
|
||||
public class SignalMeUtilText_parseE164FromLink {
|
||||
|
||||
private final String input;
|
||||
private final String output;
|
||||
|
||||
@ParameterizedRobolectricTestRunner.Parameters
|
||||
public static Collection<Object[]> data() {
|
||||
return Arrays.asList(new Object[][]{
|
||||
{ "https://signal.me/#p/+15555555555", "+15555555555" },
|
||||
{ "https://signal.me/#p/5555555555", null },
|
||||
{ "https://signal.me", null },
|
||||
{ "https://signal.me/#p/", null },
|
||||
{ "signal.me/#p/+15555555555", null },
|
||||
{ "sgnl://signal.me/#p/+15555555555", "+15555555555" },
|
||||
{ "sgnl://signal.me/#p/5555555555", null },
|
||||
{ "sgnl://signal.me", null },
|
||||
{ "sgnl://signal.me/#p/", null },
|
||||
{ "", null },
|
||||
{ null, null }
|
||||
});
|
||||
}
|
||||
|
||||
@Rule
|
||||
public SignalStoreRule signalStore = new SignalStoreRule(dataSet -> {
|
||||
dataSet.putString(AccountValues.KEY_E164, "+15555555555");
|
||||
return Unit.INSTANCE;
|
||||
});
|
||||
|
||||
public SignalMeUtilText_parseE164FromLink(String input, String output) {
|
||||
this.input = input;
|
||||
this.output = output;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void parse() {
|
||||
assertEquals(output, SignalMeUtil.parseE164FromLink(AppDependencies.getApplication(), input));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package org.thoughtcrime.securesms.util
|
||||
|
||||
import android.app.Application
|
||||
import androidx.test.core.app.ApplicationProvider
|
||||
import io.mockk.every
|
||||
import io.mockk.mockkObject
|
||||
import io.mockk.unmockkAll
|
||||
import junit.framework.TestCase
|
||||
import org.junit.After
|
||||
import org.junit.Before
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
import org.robolectric.ParameterizedRobolectricTestRunner
|
||||
import org.robolectric.annotation.Config
|
||||
import org.thoughtcrime.securesms.dependencies.AppDependencies
|
||||
import org.thoughtcrime.securesms.dependencies.AppDependencies.application
|
||||
import org.thoughtcrime.securesms.dependencies.MockApplicationDependencyProvider
|
||||
import org.thoughtcrime.securesms.keyvalue.SignalStore
|
||||
import org.thoughtcrime.securesms.util.SignalMeUtil.parseE164FromLink
|
||||
|
||||
@RunWith(ParameterizedRobolectricTestRunner::class)
|
||||
@Config(manifest = Config.NONE, application = Application::class)
|
||||
class SignalMeUtilText_parseE164FromLink(private val input: String?, private val output: String?) {
|
||||
|
||||
@Before
|
||||
fun setUp() {
|
||||
if (!AppDependencies.isInitialized) {
|
||||
AppDependencies.init(ApplicationProvider.getApplicationContext(), MockApplicationDependencyProvider())
|
||||
}
|
||||
|
||||
mockkObject(SignalStore)
|
||||
every { SignalStore.account.e164 } returns "+15555555555"
|
||||
}
|
||||
|
||||
@After
|
||||
fun tearDown() {
|
||||
unmockkAll()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun parse() {
|
||||
TestCase.assertEquals(output, parseE164FromLink(application, input))
|
||||
}
|
||||
|
||||
companion object {
|
||||
@JvmStatic
|
||||
@ParameterizedRobolectricTestRunner.Parameters
|
||||
fun data(): Collection<Array<Any?>> {
|
||||
return listOf(
|
||||
arrayOf("https://signal.me/#p/+15555555555", "+15555555555"),
|
||||
arrayOf("https://signal.me/#p/5555555555", null),
|
||||
arrayOf("https://signal.me", null),
|
||||
arrayOf("https://signal.me/#p/", null),
|
||||
arrayOf("signal.me/#p/+15555555555", null),
|
||||
arrayOf("sgnl://signal.me/#p/+15555555555", "+15555555555"),
|
||||
arrayOf("sgnl://signal.me/#p/5555555555", null),
|
||||
arrayOf("sgnl://signal.me", null),
|
||||
arrayOf("sgnl://signal.me/#p/", null),
|
||||
arrayOf("", null),
|
||||
arrayOf(null, null)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user