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,
|
isOfferTranslate = isOfferTranslate,
|
||||||
isExpectedTranslate = isExpectedTranslate,
|
isExpectedTranslate = isExpectedTranslate,
|
||||||
isTranslated = true,
|
isTranslated = true,
|
||||||
|
isTranslateProcessing = false,
|
||||||
translationError = null,
|
translationError = null,
|
||||||
translationEngineState = action.translationEngineState,
|
translationEngineState = action.translationEngineState,
|
||||||
)
|
)
|
||||||
|
|
@ -114,7 +115,6 @@ internal object TranslationsStateReducer {
|
||||||
// The isTranslated state will be identified on a translation state change.
|
// The isTranslated state will be identified on a translation state change.
|
||||||
state.copyWithTranslationsState(action.tabId) {
|
state.copyWithTranslationsState(action.tabId) {
|
||||||
it.copy(
|
it.copy(
|
||||||
isTranslateProcessing = false,
|
|
||||||
translationError = null,
|
translationError = null,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -93,6 +93,12 @@ class TranslationsActionTest {
|
||||||
assertNull(tabState().translationsState.translationEngineState)
|
assertNull(tabState().translationsState.translationEngineState)
|
||||||
assertFalse(tabState().translationsState.isTranslated)
|
assertFalse(tabState().translationsState.isTranslated)
|
||||||
assertFalse(tabState().translationsState.isExpectedTranslate)
|
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(
|
val translatedEngineState = TranslationEngineState(
|
||||||
detectedLanguages = DetectedLanguages(documentLangTag = "es", supportedDocumentLang = true, userPreferredLangTag = "en"),
|
detectedLanguages = DetectedLanguages(documentLangTag = "es", supportedDocumentLang = true, userPreferredLangTag = "en"),
|
||||||
|
|
@ -109,6 +115,7 @@ class TranslationsActionTest {
|
||||||
assertEquals(translatedEngineState, tabState().translationsState.translationEngineState)
|
assertEquals(translatedEngineState, tabState().translationsState.translationEngineState)
|
||||||
assertTrue(tabState().translationsState.isTranslated)
|
assertTrue(tabState().translationsState.isTranslated)
|
||||||
assertFalse(tabState().translationsState.isExpectedTranslate)
|
assertFalse(tabState().translationsState.isExpectedTranslate)
|
||||||
|
assertFalse(tabState().translationsState.isTranslateProcessing)
|
||||||
|
|
||||||
val nonTranslatedEngineState = TranslationEngineState(
|
val nonTranslatedEngineState = TranslationEngineState(
|
||||||
detectedLanguages = DetectedLanguages(documentLangTag = "es", supportedDocumentLang = true, userPreferredLangTag = "en"),
|
detectedLanguages = DetectedLanguages(documentLangTag = "es", supportedDocumentLang = true, userPreferredLangTag = "en"),
|
||||||
|
|
@ -269,7 +276,6 @@ class TranslationsActionTest {
|
||||||
// Action success
|
// Action success
|
||||||
store.dispatch(TranslationsAction.TranslateSuccessAction(tabId = tab.id, operation = TranslationOperation.TRANSLATE))
|
store.dispatch(TranslationsAction.TranslateSuccessAction(tabId = tab.id, operation = TranslationOperation.TRANSLATE))
|
||||||
.joinBlocking()
|
.joinBlocking()
|
||||||
assertEquals(false, tabState().translationsState.isTranslateProcessing)
|
|
||||||
assertEquals(null, tabState().translationsState.translationError)
|
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`() {
|
fun `WHEN a TranslateExceptionAction is dispatched due to an error THEN update the error condition according to the operation`() {
|
||||||
// Initial state
|
// Initial state
|
||||||
assertEquals(null, tabState().translationsState.translationError)
|
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
|
// TRANSLATE usage
|
||||||
val translateError = TranslationError.CouldNotLoadLanguagesError(null)
|
val translateError = TranslationError.CouldNotLoadLanguagesError(null)
|
||||||
|
|
@ -404,6 +416,8 @@ class TranslationsActionTest {
|
||||||
),
|
),
|
||||||
).joinBlocking()
|
).joinBlocking()
|
||||||
assertEquals(translateError, tabState().translationsState.translationError)
|
assertEquals(translateError, tabState().translationsState.translationError)
|
||||||
|
// A translate error should clear this state
|
||||||
|
assertFalse(tabState().translationsState.isTranslateProcessing)
|
||||||
|
|
||||||
// RESTORE usage
|
// RESTORE usage
|
||||||
val restoreError = TranslationError.CouldNotRestoreError(null)
|
val restoreError = TranslationError.CouldNotRestoreError(null)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue