Fix post-transfer emoji search.

This commit is contained in:
Michelle Tang 2024-12-06 17:27:23 -05:00 committed by Greyson Parrelli
parent a577018d03
commit a188eb64ab
3 changed files with 16 additions and 1 deletions

View file

@ -162,9 +162,10 @@ public class ApplicationMigrations {
static final int WALLPAPER_MIGRATION_CLEANUP = 118;
static final int AEP_INTRODUCTION = 119;
static final int GROUP_EXTRAS_DB_FIX = 120;
static final int EMOJI_SEARCH_INDEX_CHECK_2 = 121;
}
public static final int CURRENT_VERSION = 120;
public static final int CURRENT_VERSION = 121;
/**
* This *must* be called after the {@link JobManager} has been instantiated, but *before* the call
@ -743,6 +744,10 @@ public class ApplicationMigrations {
jobs.put(Version.GROUP_EXTRAS_DB_FIX, new DatabaseMigrationJob());
}
if (lastSeenVersion < Version.EMOJI_SEARCH_INDEX_CHECK_2) {
jobs.put(Version.EMOJI_SEARCH_INDEX_CHECK_2, new EmojiSearchIndexCheckMigrationJob());
}
return jobs;
}

View file

@ -8,6 +8,7 @@ package org.thoughtcrime.securesms.registration.util;
import org.signal.core.util.logging.Log;
import org.thoughtcrime.securesms.dependencies.AppDependencies;
import org.thoughtcrime.securesms.jobs.DirectoryRefreshJob;
import org.thoughtcrime.securesms.jobs.EmojiSearchIndexDownloadJob;
import org.thoughtcrime.securesms.jobs.RefreshAttributesJob;
import org.thoughtcrime.securesms.jobs.StorageSyncJob;
import org.thoughtcrime.securesms.keyvalue.PhoneNumberPrivacyValues.PhoneNumberDiscoverabilityMode;
@ -48,6 +49,9 @@ public final class RegistrationUtil {
.then(new DirectoryRefreshJob(false))
.enqueue();
SignalStore.emoji().clearSearchIndexMetadata();
EmojiSearchIndexDownloadJob.scheduleImmediately();
} else if (!SignalStore.registration().isRegistrationComplete()) {
Log.i(TAG, "Registration is not yet complete.", new Throwable());
}

View file

@ -11,6 +11,7 @@ import io.mockk.mockkObject
import io.mockk.unmockkObject
import org.junit.rules.ExternalResource
import org.thoughtcrime.securesms.keyvalue.AccountValues
import org.thoughtcrime.securesms.keyvalue.EmojiValues
import org.thoughtcrime.securesms.keyvalue.PhoneNumberPrivacyValues
import org.thoughtcrime.securesms.keyvalue.RegistrationValues
import org.thoughtcrime.securesms.keyvalue.SignalStore
@ -41,17 +42,22 @@ class MockSignalStoreRule(private val relaxed: Set<KClass<*>> = emptySet()) : Ex
lateinit var svr: SvrValues
private set
lateinit var emoji: EmojiValues
private set
override fun before() {
account = mockk(relaxed = relaxed.contains(AccountValues::class), relaxUnitFun = true)
phoneNumberPrivacy = mockk(relaxed = relaxed.contains(PhoneNumberPrivacyValues::class), relaxUnitFun = true)
registration = mockk(relaxed = relaxed.contains(RegistrationValues::class), relaxUnitFun = true)
svr = mockk(relaxed = relaxed.contains(SvrValues::class), relaxUnitFun = true)
emoji = mockk(relaxed = relaxed.contains(EmojiValues::class), relaxUnitFun = true)
mockkObject(SignalStore)
every { SignalStore.account } returns account
every { SignalStore.phoneNumberPrivacy } returns phoneNumberPrivacy
every { SignalStore.registration } returns registration
every { SignalStore.svr } returns svr
every { SignalStore.emoji } returns emoji
}
override fun after() {