| Index: android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java
|
| diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java b/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java
|
| index f7f81ffe310261e93477dfca67e58a67815bc76b..d8a161a801b255f40ccd062cdb3b79abf261130a 100644
|
| --- a/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java
|
| +++ b/android_webview/javatests/src/org/chromium/android_webview/test/AwSettingsTest.java
|
| @@ -31,13 +31,12 @@ import org.chromium.base.test.util.TestFileUtil;
|
| import org.chromium.base.test.util.UrlUtils;
|
| import org.chromium.content.browser.ContentViewCore;
|
| import org.chromium.content.browser.test.util.CallbackHelper;
|
| -import org.chromium.content.browser.test.util.Criteria;
|
| -import org.chromium.content.browser.test.util.CriteriaHelper;
|
| import org.chromium.content.browser.test.util.HistoryUtils;
|
| import org.chromium.net.test.util.TestWebServer;
|
| import org.chromium.ui.gfx.DeviceDisplayInfo;
|
|
|
| import java.io.File;
|
| +import java.util.concurrent.Callable;
|
| import java.util.concurrent.TimeUnit;
|
| import java.util.regex.Matcher;
|
| import java.util.regex.Pattern;
|
| @@ -99,7 +98,7 @@ public class AwSettingsTest extends AwTestBase {
|
|
|
| protected abstract void doEnsureSettingHasValue(T value) throws Throwable;
|
|
|
| - protected String getTitleOnUiThread() throws Throwable {
|
| + protected String getTitleOnUiThread() throws Exception {
|
| return AwSettingsTest.this.getTitleOnUiThread(mAwContents);
|
| }
|
|
|
| @@ -127,7 +126,7 @@ public class AwSettingsTest extends AwTestBase {
|
| url);
|
| }
|
|
|
| - protected String executeJavaScriptAndWaitForResult(String script) throws Throwable {
|
| + protected String executeJavaScriptAndWaitForResult(String script) throws Exception {
|
| return AwSettingsTest.this.executeJavaScriptAndWaitForResult(
|
| mAwContents, mContentViewClient, script);
|
| }
|
| @@ -926,20 +925,14 @@ public class AwSettingsTest extends AwTestBase {
|
| executeJavaScriptAndWaitForResult("setTitleToActualFontSize()");
|
| } else {
|
| final float oldFontSize = mOldFontSize;
|
| - assertTrue(CriteriaHelper.pollForCriteria(new Criteria() {
|
| - @Override
|
| - public boolean isSatisfied() {
|
| - try {
|
| - executeJavaScriptAndWaitForResult("setTitleToActualFontSize()");
|
| - float newFontSize = Float.parseFloat(getTitleOnUiThread());
|
| - return newFontSize != oldFontSize;
|
| - } catch (Throwable t) {
|
| - t.printStackTrace();
|
| - fail("Failed to getTitleOnUiThread: " + t.toString());
|
| - return false;
|
| - }
|
| - }
|
| - }, WAIT_TIMEOUT_MS, CHECK_INTERVAL));
|
| + poll(new Callable<Boolean>() {
|
| + @Override
|
| + public Boolean call() throws Exception {
|
| + executeJavaScriptAndWaitForResult("setTitleToActualFontSize()");
|
| + float newFontSize = Float.parseFloat(getTitleOnUiThread());
|
| + return newFontSize != oldFontSize;
|
| + }
|
| + });
|
| mNeedToWaitForFontSizeChange = false;
|
| }
|
| return Float.parseFloat(getTitleOnUiThread());
|
| @@ -1147,20 +1140,14 @@ public class AwSettingsTest extends AwTestBase {
|
| protected void doEnsureSettingHasValue(Boolean value) throws Throwable {
|
| loadDataSync(getData());
|
| final boolean expectPopupEnabled = value;
|
| - assertTrue(CriteriaHelper.pollForCriteria(new Criteria() {
|
| + poll(new Callable<Boolean>() {
|
| @Override
|
| - public boolean isSatisfied() {
|
| - try {
|
| - String title = getTitleOnUiThread();
|
| - return expectPopupEnabled ? POPUP_ENABLED.equals(title) :
|
| - POPUP_BLOCKED.equals(title);
|
| - } catch (Throwable t) {
|
| - t.printStackTrace();
|
| - fail("Failed to getTitleOnUiThread: " + t.toString());
|
| - return false;
|
| - }
|
| + public Boolean call() throws Exception {
|
| + String title = getTitleOnUiThread();
|
| + return expectPopupEnabled ? POPUP_ENABLED.equals(title) :
|
| + POPUP_BLOCKED.equals(title);
|
| }
|
| - }, WAIT_TIMEOUT_MS, CHECK_INTERVAL));
|
| + });
|
| assertEquals(value ? POPUP_ENABLED : POPUP_BLOCKED, getTitleOnUiThread());
|
| }
|
|
|
| @@ -1443,19 +1430,13 @@ public class AwSettingsTest extends AwTestBase {
|
| assertEquals(ImagePageGenerator.IMAGE_NOT_LOADED_STRING,
|
| getTitleOnUiThread(awContents));
|
| settings.setLoadsImagesAutomatically(true);
|
| - assertTrue(CriteriaHelper.pollForCriteria(new Criteria() {
|
| + poll(new Callable<Boolean>() {
|
| @Override
|
| - public boolean isSatisfied() {
|
| - try {
|
| - return !ImagePageGenerator.IMAGE_NOT_LOADED_STRING.equals(
|
| - getTitleOnUiThread(awContents));
|
| - } catch (Throwable t) {
|
| - t.printStackTrace();
|
| - fail("Failed to getTitleOnUiThread: " + t.toString());
|
| - return false;
|
| - }
|
| + public Boolean call() throws Exception {
|
| + return !ImagePageGenerator.IMAGE_NOT_LOADED_STRING.equals(
|
| + getTitleOnUiThread(awContents));
|
| }
|
| - }, WAIT_TIMEOUT_MS, CHECK_INTERVAL));
|
| + });
|
| assertEquals(ImagePageGenerator.IMAGE_LOADED_STRING, getTitleOnUiThread(awContents));
|
| }
|
|
|
| @@ -1825,19 +1806,13 @@ public class AwSettingsTest extends AwTestBase {
|
| getTitleOnUiThread(awContents));
|
|
|
| settings.setImagesEnabled(true);
|
| - assertTrue(CriteriaHelper.pollForCriteria(new Criteria() {
|
| + poll(new Callable<Boolean>() {
|
| @Override
|
| - public boolean isSatisfied() {
|
| - try {
|
| - return ImagePageGenerator.IMAGE_LOADED_STRING.equals(
|
| - getTitleOnUiThread(awContents));
|
| - } catch (Throwable t) {
|
| - t.printStackTrace();
|
| - fail("Failed to getTitleOnUIThread: " + t.toString());
|
| - return false;
|
| - }
|
| + public Boolean call() throws Exception {
|
| + return ImagePageGenerator.IMAGE_LOADED_STRING.equals(
|
| + getTitleOnUiThread(awContents));
|
| }
|
| - }, WAIT_TIMEOUT_MS, CHECK_INTERVAL));
|
| + });
|
| } finally {
|
| if (webServer != null) webServer.shutdown();
|
| }
|
| @@ -1919,7 +1894,7 @@ public class AwSettingsTest extends AwTestBase {
|
| }
|
| }
|
|
|
| - public static class AudioEvent {
|
| + private static class AudioEvent {
|
| private CallbackHelper mCallback;
|
| public AudioEvent(CallbackHelper callback) {
|
| mCallback = callback;
|
| @@ -2237,23 +2212,22 @@ public class AwSettingsTest extends AwTestBase {
|
| return mManifestPath;
|
| }
|
|
|
| - int waitUntilHtmlIsRequested(final int initialRequestCount) throws InterruptedException {
|
| + int waitUntilHtmlIsRequested(final int initialRequestCount) throws Exception {
|
| return waitUntilResourceIsRequested(mHtmlPath, initialRequestCount);
|
| }
|
|
|
| - int waitUntilManifestIsRequested(final int initialRequestCount)
|
| - throws InterruptedException {
|
| + int waitUntilManifestIsRequested(final int initialRequestCount) throws Exception {
|
| return waitUntilResourceIsRequested(mManifestPath, initialRequestCount);
|
| }
|
|
|
| private int waitUntilResourceIsRequested(
|
| - final String path, final int initialRequestCount) throws InterruptedException {
|
| - assertTrue(CriteriaHelper.pollForCriteria(new Criteria() {
|
| + final String path, final int initialRequestCount) throws Exception {
|
| + poll(new Callable<Boolean>() {
|
| @Override
|
| - public boolean isSatisfied() {
|
| + public Boolean call() throws Exception {
|
| return mWebServer.getRequestCount(path) > initialRequestCount;
|
| }
|
| - }, WAIT_TIMEOUT_MS, CHECK_INTERVAL));
|
| + });
|
| return mWebServer.getRequestCount(path);
|
| }
|
| }
|
|
|