forked from mirrors/gecko-dev
Bug 1898520 - Update AC isTranslateProcessing r=android-reviewers,giorga
In bug 1892715 the wait states for translations changed; however, `isTranslateProcessing` logic did not change. This is to fix `isTranslateProcessing` to use the longer wait state. Differential Revision: https://phabricator.services.mozilla.com/D211439
This commit is contained in:
parent
7f35c45fa5
commit
977c6db99e
2 changed files with 16 additions and 2 deletions
|
|
@ -88,6 +88,7 @@ internal object TranslationsStateReducer {
|
|||
isOfferTranslate = isOfferTranslate,
|
||||
isExpectedTranslate = isExpectedTranslate,
|
||||
isTranslated = true,
|
||||
isTranslateProcessing = false,
|
||||
translationError = null,
|
||||
translationEngineState = action.translationEngineState,
|
||||
)
|
||||
|
|
@ -114,7 +115,6 @@ internal object TranslationsStateReducer {
|
|||
// The isTranslated state will be identified on a translation state change.
|
||||
state.copyWithTranslationsState(action.tabId) {
|
||||
it.copy(
|
||||
isTranslateProcessing = false,
|
||||
translationError = null,
|
||||
)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -93,6 +93,12 @@ class TranslationsActionTest {
|
|||
assertNull(tabState().translationsState.translationEngineState)
|
||||
assertFalse(tabState().translationsState.isTranslated)
|
||||
assertFalse(tabState().translationsState.isExpectedTranslate)
|
||||
assertFalse(tabState().translationsState.isTranslateProcessing)
|
||||
|
||||
// Set an initial state for is translate processing via a translation request:
|
||||
store.dispatch(TranslationsAction.TranslateAction(tabId = tab.id, "en", "es", null))
|
||||
.joinBlocking()
|
||||
assertTrue(tabState().translationsState.isTranslateProcessing)
|
||||
|
||||
val translatedEngineState = TranslationEngineState(
|
||||
detectedLanguages = DetectedLanguages(documentLangTag = "es", supportedDocumentLang = true, userPreferredLangTag = "en"),
|
||||
|
|
@ -109,6 +115,7 @@ class TranslationsActionTest {
|
|||
assertEquals(translatedEngineState, tabState().translationsState.translationEngineState)
|
||||
assertTrue(tabState().translationsState.isTranslated)
|
||||
assertFalse(tabState().translationsState.isExpectedTranslate)
|
||||
assertFalse(tabState().translationsState.isTranslateProcessing)
|
||||
|
||||
val nonTranslatedEngineState = TranslationEngineState(
|
||||
detectedLanguages = DetectedLanguages(documentLangTag = "es", supportedDocumentLang = true, userPreferredLangTag = "en"),
|
||||
|
|
@ -269,7 +276,6 @@ class TranslationsActionTest {
|
|||
// Action success
|
||||
store.dispatch(TranslationsAction.TranslateSuccessAction(tabId = tab.id, operation = TranslationOperation.TRANSLATE))
|
||||
.joinBlocking()
|
||||
assertEquals(false, tabState().translationsState.isTranslateProcessing)
|
||||
assertEquals(null, tabState().translationsState.translationError)
|
||||
}
|
||||
|
||||
|
|
@ -393,6 +399,12 @@ class TranslationsActionTest {
|
|||
fun `WHEN a TranslateExceptionAction is dispatched due to an error THEN update the error condition according to the operation`() {
|
||||
// Initial state
|
||||
assertEquals(null, tabState().translationsState.translationError)
|
||||
assertFalse(tabState().translationsState.isTranslateProcessing)
|
||||
|
||||
// Set an initial state for is translate processing via a translation request:
|
||||
store.dispatch(TranslationsAction.TranslateAction(tabId = tab.id, "en", "es", null))
|
||||
.joinBlocking()
|
||||
assertTrue(tabState().translationsState.isTranslateProcessing)
|
||||
|
||||
// TRANSLATE usage
|
||||
val translateError = TranslationError.CouldNotLoadLanguagesError(null)
|
||||
|
|
@ -404,6 +416,8 @@ class TranslationsActionTest {
|
|||
),
|
||||
).joinBlocking()
|
||||
assertEquals(translateError, tabState().translationsState.translationError)
|
||||
// A translate error should clear this state
|
||||
assertFalse(tabState().translationsState.isTranslateProcessing)
|
||||
|
||||
// RESTORE usage
|
||||
val restoreError = TranslationError.CouldNotRestoreError(null)
|
||||
|
|
|
|||
Loading…
Reference in a new issue