Commit 1e5ea134 authored by Ioana Pandele's avatar Ioana Pandele Committed by Commit Bot

[PwdCheckAndroid] Don't update the UI model if the check gets cancelled

This status only gets sent when the UI and bridge are being torn down
while a check is running. At this point, no UI update is needed.

Bug: 1121145
Change-Id: I0a413da4432d346a07f7252263c2626ae93aadac
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2377865Reviewed-by: default avatarFriedrich [CET] <fhorschig@chromium.org>
Commit-Queue: Ioana Pandele <ioanap@chromium.org>
Cr-Commit-Position: refs/heads/master@{#801752}
parent c090e3f9
...@@ -108,6 +108,9 @@ class PasswordCheckMediator ...@@ -108,6 +108,9 @@ class PasswordCheckMediator
@Override @Override
public void onPasswordCheckStatusChanged(@PasswordCheckUIStatus int status) { public void onPasswordCheckStatusChanged(@PasswordCheckUIStatus int status) {
// There is no UI representation of a canceled check. This status can be sent when
// the bridge and the password check UI are being torn down while a check is running.
if (status == PasswordCheckUIStatus.CANCELED) return;
ListModel<ListItem> items = mModel.get(ITEMS); ListModel<ListItem> items = mModel.get(ITEMS);
PropertyModel header; PropertyModel header;
if (items.size() == 0) { if (items.size() == 0) {
......
...@@ -32,6 +32,7 @@ import static org.chromium.chrome.browser.password_check.PasswordCheckProperties ...@@ -32,6 +32,7 @@ import static org.chromium.chrome.browser.password_check.PasswordCheckProperties
import static org.chromium.chrome.browser.password_check.PasswordCheckProperties.HeaderProperties.RESTART_BUTTON_ACTION; import static org.chromium.chrome.browser.password_check.PasswordCheckProperties.HeaderProperties.RESTART_BUTTON_ACTION;
import static org.chromium.chrome.browser.password_check.PasswordCheckProperties.HeaderProperties.UNKNOWN_PROGRESS; import static org.chromium.chrome.browser.password_check.PasswordCheckProperties.HeaderProperties.UNKNOWN_PROGRESS;
import static org.chromium.chrome.browser.password_check.PasswordCheckProperties.ITEMS; import static org.chromium.chrome.browser.password_check.PasswordCheckProperties.ITEMS;
import static org.chromium.chrome.browser.password_check.PasswordCheckUIStatus.CANCELED;
import static org.chromium.chrome.browser.password_check.PasswordCheckUIStatus.ERROR_OFFLINE; import static org.chromium.chrome.browser.password_check.PasswordCheckUIStatus.ERROR_OFFLINE;
import static org.chromium.chrome.browser.password_check.PasswordCheckUIStatus.ERROR_UNKNOWN; import static org.chromium.chrome.browser.password_check.PasswordCheckUIStatus.ERROR_UNKNOWN;
import static org.chromium.chrome.browser.password_check.PasswordCheckUIStatus.IDLE; import static org.chromium.chrome.browser.password_check.PasswordCheckUIStatus.IDLE;
...@@ -283,6 +284,14 @@ public class PasswordCheckControllerTest { ...@@ -283,6 +284,14 @@ public class PasswordCheckControllerTest {
assertThat(mModel.get(ITEMS).get(0).model.get(COMPROMISED_CREDENTIALS_COUNT), is(2)); assertThat(mModel.get(ITEMS).get(0).model.get(COMPROMISED_CREDENTIALS_COUNT), is(2));
} }
@Test
public void testCanceledStatusDoesntUpdateModel() {
assertRunningHeader(mModel.get(ITEMS).get(0), UNKNOWN_PROGRESS);
mMediator.onPasswordCheckStatusChanged(CANCELED);
// Check that the header model didn't change.
assertRunningHeader(mModel.get(ITEMS).get(0), UNKNOWN_PROGRESS);
}
@Test @Test
public void testNotIdleStatusNotUpdatedOnCredentialsFetchCompleted() { public void testNotIdleStatusNotUpdatedOnCredentialsFetchCompleted() {
mMediator.onPasswordCheckStatusChanged(RUNNING); mMediator.onPasswordCheckStatusChanged(RUNNING);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment