Commit 89881149 authored by Jian Li's avatar Jian Li Committed by Commit Bot

Fix 2 failed OfflineIndicatorController tests

Bug: 859849
Change-Id: I88b4dc690cef0d482bb9f4a49a9aa7b688e8ae45
Reviewed-on: https://chromium-review.googlesource.com/1136470Reviewed-by: default avatarPeter Williamson <petewil@chromium.org>
Commit-Queue: Jian Li <jianli@chromium.org>
Cr-Commit-Position: refs/heads/master@{#575410}
parent 580f2af5
......@@ -18,6 +18,7 @@ import android.support.v7.content.res.AppCompatResources;
import org.chromium.base.ApplicationStatus;
import org.chromium.base.ContextUtils;
import org.chromium.base.VisibleForTesting;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity;
......@@ -46,6 +47,8 @@ public class OfflineIndicatorController
private static final int DURATION_MS = 10000;
private static boolean sSkipSystemCheckForTesting = false;
@SuppressLint("StaticFieldLeak")
private static OfflineIndicatorController sInstance;
......@@ -120,6 +123,8 @@ public class OfflineIndicatorController
*/
@TargetApi(Build.VERSION_CODES.M)
private boolean performSystemCheckForValidatedNetwork() {
if (sSkipSystemCheckForTesting) return false;
// NetworkCapabilities.NET_CAPABILITY_VALIDATED is only available on Marshmallow and
// later versions.
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return false;
......@@ -200,4 +205,9 @@ public class OfflineIndicatorController
if (!mIsShowingOfflineIndicator) return;
snackbarManager.dismissSnackbars(this);
}
@VisibleForTesting
static void skipSystemCheckForTesting() {
sSkipSystemCheckForTesting = true;
}
}
......@@ -15,7 +15,6 @@ import org.junit.runner.RunWith;
import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.DisableIf;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.ChromeFeatureList;
......@@ -49,6 +48,7 @@ public class OfflineIndicatorControllerTest {
@Before
public void setUp() throws Exception {
OfflineIndicatorController.skipSystemCheckForTesting();
mActivityTestRule.startMainActivityOnBlankPage();
ThreadUtils.runOnUiThreadBlocking(() -> {
if (!NetworkChangeNotifier.isInitialized()) {
......@@ -93,7 +93,6 @@ public class OfflineIndicatorControllerTest {
}
@Test
@DisableIf.Build(sdk_is_greater_than = 22, message = "https://crbug.com/859849")
@MediumTest
public void testHideOfflineIndicatorWhenBackToOnline() throws Exception {
EmbeddedTestServer testServer =
......@@ -110,15 +109,13 @@ public class OfflineIndicatorControllerTest {
checkOfflineIndicatorVisibility(mActivityTestRule.getActivity(), true);
// Reconnect the network.
ThreadUtils.runOnUiThreadBlocking(
() -> { NetworkChangeNotifier.forceConnectivityState(true); });
setNetworkConnectivity(true);
// Offline indicator should go away.
checkOfflineIndicatorVisibility(mActivityTestRule.getActivity(), false);
}
@Test
@DisableIf.Build(sdk_is_greater_than = 22, message = "https://crbug.com/859849")
@MediumTest
public void testDoNotShowOfflineIndicatorOnErrorPageWhenOffline() throws Exception {
EmbeddedTestServer testServer =
......
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