aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNate Fischer <ntfschr@google.com>2019-06-12 23:47:20 -0700
committerNate Fischer <ntfschr@google.com>2019-06-14 14:07:59 -0700
commitd1f15e7cdec4da311f4cdf0ea00d74a2ec74962b (patch)
treeabd031d66df3daa90c2fff275058f00eda2e4ee8
parent92291479b5ae8717ddb9a9cfff268b4c1d605bba (diff)
downloadsupport-d1f15e7cdec4da311f4cdf0ea00d74a2ec74962b.tar.gz
AndroidX Webkit: lambda-ize tests
No change to logic, only a refactor. AndroidX now allows desugaring Java 8 features. This lambda-izes Androidx tests, for consistency with CTS (see http://ag/5912371 & http://ag/5887248). This aims to only touch tests which have already been migrated in CTS and new tests (that probably would have used lambdas if they were supported at the time). Bug: 120902907 Test: ./gradlew :webkit:connectedAndroidTest Change-Id: I9879a08f6c6a83be418cc461af09f486f0b3d6f5
-rw-r--r--webkit/src/androidTest/java/androidx/webkit/PostMessageTest.java101
-rw-r--r--webkit/src/androidTest/java/androidx/webkit/ProxyControllerTest.java14
-rw-r--r--webkit/src/androidTest/java/androidx/webkit/TracingControllerTest.java7
-rw-r--r--webkit/src/androidTest/java/androidx/webkit/WebSettingsCompatForceDarkTest.java15
-rw-r--r--webkit/src/androidTest/java/androidx/webkit/WebViewOnUiThread.java207
-rw-r--r--webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessClientTest.java30
-rw-r--r--webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessTest.java64
7 files changed, 138 insertions, 300 deletions
diff --git a/webkit/src/androidTest/java/androidx/webkit/PostMessageTest.java b/webkit/src/androidTest/java/androidx/webkit/PostMessageTest.java
index 586f7fe9b84..15698ea1244 100644
--- a/webkit/src/androidTest/java/androidx/webkit/PostMessageTest.java
+++ b/webkit/src/androidTest/java/androidx/webkit/PostMessageTest.java
@@ -181,20 +181,17 @@ public class PostMessageTest {
mOnUiThread.postWebMessageCompat(message, Uri.parse(BASE_URI));
final int messageCount = 3;
final BlockingQueue<String> queue = new ArrayBlockingQueue<>(messageCount);
- WebkitUtils.onMainThread(new Runnable() {
- @Override
- public void run() {
- for (int i = 0; i < messageCount; i++) {
- channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE + i));
- }
- channel[0].setWebMessageCallback(new WebMessageCallbackCompat() {
- @Override
- public void onMessage(@NonNull WebMessagePortCompat port,
- WebMessageCompat message) {
- queue.add(message.getData());
- }
- });
+ WebkitUtils.onMainThread(() -> {
+ for (int i = 0; i < messageCount; i++) {
+ channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE + i));
}
+ channel[0].setWebMessageCallback(new WebMessageCallbackCompat() {
+ @Override
+ public void onMessage(@NonNull WebMessagePortCompat port,
+ WebMessageCompat message) {
+ queue.add(message.getData());
+ }
+ });
});
// Wait for all the responses to arrive.
for (int i = 0; i < messageCount; i++) {
@@ -224,18 +221,15 @@ public class PostMessageTest {
WebMessageCompat message =
new WebMessageCompat(WEBVIEW_MESSAGE, new WebMessagePortCompat[]{channel[1]});
mOnUiThread.postWebMessageCompat(message, Uri.parse(BASE_URI));
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- try {
- channel[0].close();
- channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE));
- } catch (IllegalStateException ex) {
- // expect to receive an exception
- return;
- }
- Assert.fail("A closed port cannot be used to transfer messages");
+ WebkitUtils.onMainThreadSync(() -> {
+ try {
+ channel[0].close();
+ channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE));
+ } catch (IllegalStateException ex) {
+ // expect to receive an exception
+ return;
}
+ Assert.fail("A closed port cannot be used to transfer messages");
});
}
@@ -275,17 +269,14 @@ public class PostMessageTest {
WebMessageCompat message =
new WebMessageCompat(WEBVIEW_MESSAGE, new WebMessagePortCompat[]{channel[1]});
mOnUiThread.postWebMessageCompat(message, Uri.parse(BASE_URI));
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- channel[0].setWebMessageCallback(new WebMessageCallbackCompat() {
- @Override
- public void onMessage(@NonNull WebMessagePortCompat port,
- WebMessageCompat message) {
- message.getPorts()[0].postMessage(new WebMessageCompat(hello));
- }
- });
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ channel[0].setWebMessageCallback(new WebMessageCallbackCompat() {
+ @Override
+ public void onMessage(@NonNull WebMessagePortCompat port,
+ WebMessageCompat message) {
+ message.getPorts()[0].postMessage(new WebMessageCompat(hello));
+ }
+ });
});
waitForTitle(hello);
}
@@ -316,18 +307,15 @@ public class PostMessageTest {
messageHandlerThread.start();
final Handler messageHandler = new Handler(messageHandlerThread.getLooper());
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE));
- channel[0].setWebMessageCallback(messageHandler, new WebMessageCallbackCompat() {
- @Override
- public void onMessage(WebMessagePortCompat port, WebMessageCompat message) {
- messageHandlerThreadFuture.set(
- messageHandlerThread.getLooper().isCurrentThread());
- }
- });
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE));
+ channel[0].setWebMessageCallback(messageHandler, new WebMessageCallbackCompat() {
+ @Override
+ public void onMessage(WebMessagePortCompat port, WebMessageCompat message) {
+ messageHandlerThreadFuture.set(
+ messageHandlerThread.getLooper().isCurrentThread());
+ }
+ });
});
// Wait for all the responses to arrive and assert correct thread.
Assert.assertTrue(WebkitUtils.waitForFuture(messageHandlerThreadFuture));
@@ -354,17 +342,14 @@ public class PostMessageTest {
final int messageCount = 1;
final ResolvableFuture<Boolean> messageMainLooperFuture = ResolvableFuture.create();
- WebkitUtils.onMainThread(new Runnable() {
- @Override
- public void run() {
- channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE));
- channel[0].setWebMessageCallback(new WebMessageCallbackCompat() {
- @Override
- public void onMessage(WebMessagePortCompat port, WebMessageCompat message) {
- messageMainLooperFuture.set(Looper.getMainLooper().isCurrentThread());
- }
- });
- }
+ WebkitUtils.onMainThread(() -> {
+ channel[0].postMessage(new WebMessageCompat(WEBVIEW_MESSAGE));
+ channel[0].setWebMessageCallback(new WebMessageCallbackCompat() {
+ @Override
+ public void onMessage(WebMessagePortCompat port, WebMessageCompat message) {
+ messageMainLooperFuture.set(Looper.getMainLooper().isCurrentThread());
+ }
+ });
});
// Wait for all the responses to arrive and assert correct thread.
Assert.assertTrue(WebkitUtils.waitForFuture(messageMainLooperFuture));
diff --git a/webkit/src/androidTest/java/androidx/webkit/ProxyControllerTest.java b/webkit/src/androidTest/java/androidx/webkit/ProxyControllerTest.java
index dd91e2aeea2..994f0ae80e1 100644
--- a/webkit/src/androidTest/java/androidx/webkit/ProxyControllerTest.java
+++ b/webkit/src/androidTest/java/androidx/webkit/ProxyControllerTest.java
@@ -225,23 +225,15 @@ public class ProxyControllerTest {
private void setProxyOverrideSync(final ProxyConfig proxyRules) {
final ResolvableFuture<Void> future = ResolvableFuture.create();
ProxyController.getInstance().setProxyOverride(proxyRules, new SynchronousExecutor(),
- new Runnable() {
- @Override
- public void run() {
- future.set(null);
- }
- });
+ () -> future.set(null));
// This future is used to ensure that setProxyOverride's callback was called
WebkitUtils.waitForFuture(future);
}
private void clearProxyOverrideSync() {
final ResolvableFuture<Void> future = ResolvableFuture.create();
- ProxyController.getInstance().clearProxyOverride(new SynchronousExecutor(), new Runnable() {
- @Override
- public void run() {
- future.set(null);
- }
+ ProxyController.getInstance().clearProxyOverride(new SynchronousExecutor(), () -> {
+ future.set(null);
});
// This future is used to ensure that clearProxyOverride's callback was called
WebkitUtils.waitForFuture(future);
diff --git a/webkit/src/androidTest/java/androidx/webkit/TracingControllerTest.java b/webkit/src/androidTest/java/androidx/webkit/TracingControllerTest.java
index 89a7394c890..7bbe7042126 100644
--- a/webkit/src/androidTest/java/androidx/webkit/TracingControllerTest.java
+++ b/webkit/src/androidTest/java/androidx/webkit/TracingControllerTest.java
@@ -86,11 +86,8 @@ public class TracingControllerTest {
@Test
public void testTracingControllerCallbacksOnUI() throws Throwable {
final TracingReceiver tracingReceiver = new TracingReceiver();
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- runTracingTestWithCallbacks(tracingReceiver, mSingleThreadExecutor);
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ runTracingTestWithCallbacks(tracingReceiver, mSingleThreadExecutor);
});
PollingCheck.check("Tracing did not complete", POLLING_TIMEOUT,
tracingReceiver.getCompleteCallable());
diff --git a/webkit/src/androidTest/java/androidx/webkit/WebSettingsCompatForceDarkTest.java b/webkit/src/androidTest/java/androidx/webkit/WebSettingsCompatForceDarkTest.java
index d9de9b18f3e..d1c6ca54da7 100644
--- a/webkit/src/androidTest/java/androidx/webkit/WebSettingsCompatForceDarkTest.java
+++ b/webkit/src/androidTest/java/androidx/webkit/WebSettingsCompatForceDarkTest.java
@@ -118,15 +118,12 @@ public class WebSettingsCompatForceDarkTest {
}
private void setWebViewSize(final int width, final int height) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- WebView webView = mWebViewOnUiThread.getWebViewOnCurrentThread();
- ViewGroup.LayoutParams params = webView.getLayoutParams();
- params.height = height;
- params.width = width;
- webView.setLayoutParams(params);
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ WebView webView = mWebViewOnUiThread.getWebViewOnCurrentThread();
+ ViewGroup.LayoutParams params = webView.getLayoutParams();
+ params.height = height;
+ params.width = width;
+ webView.setLayoutParams(params);
});
}
diff --git a/webkit/src/androidTest/java/androidx/webkit/WebViewOnUiThread.java b/webkit/src/androidTest/java/androidx/webkit/WebViewOnUiThread.java
index 522795f5fa6..37053db34e4 100644
--- a/webkit/src/androidTest/java/androidx/webkit/WebViewOnUiThread.java
+++ b/webkit/src/androidTest/java/androidx/webkit/WebViewOnUiThread.java
@@ -72,11 +72,8 @@ public class WebViewOnUiThread {
private WebView mWebView;
public WebViewOnUiThread() {
- this(WebkitUtils.onMainThreadSync(new Callable<WebView>() {
- @Override
- public WebView call() {
- return new WebView(ApplicationProvider.getApplicationContext());
- }
+ this(WebkitUtils.onMainThreadSync(() -> {
+ return new WebView(ApplicationProvider.getApplicationContext());
}));
}
@@ -84,13 +81,10 @@ public class WebViewOnUiThread {
* Create a new WebViewOnUiThread wrapping the provided {@link WebView}.
*/
public WebViewOnUiThread(final WebView webView) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- mWebView = webView;
- mWebView.setWebViewClient(new WaitForLoadedClient(WebViewOnUiThread.this));
- mWebView.setWebChromeClient(new WaitForProgressClient(WebViewOnUiThread.this));
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ mWebView = webView;
+ mWebView.setWebViewClient(new WaitForLoadedClient(WebViewOnUiThread.this));
+ mWebView.setWebChromeClient(new WaitForProgressClient(WebViewOnUiThread.this));
});
}
@@ -101,11 +95,8 @@ public class WebViewOnUiThread {
public static WebView createWebView() {
final Holder h = new Holder();
final Context ctx = ApplicationProvider.getApplicationContext();
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- h.mView = new WebView(ctx);
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ h.mView = new WebView(ctx);
});
return h.mView;
}
@@ -115,15 +106,12 @@ public class WebViewOnUiThread {
* the tests.
*/
public void cleanUp() {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- mWebView.clearHistory();
- mWebView.clearCache(true);
- mWebView.setWebChromeClient(null);
- mWebView.setWebViewClient(null);
- mWebView.destroy();
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ mWebView.clearHistory();
+ mWebView.clearCache(true);
+ mWebView.setWebChromeClient(null);
+ mWebView.setWebViewClient(null);
+ mWebView.destroy();
});
}
@@ -153,12 +141,7 @@ public class WebViewOnUiThread {
}
public static void destroy(final WebView webView) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- webView.destroy();
- }
- });
+ WebkitUtils.onMainThreadSync(() -> webView.destroy());
}
public void setWebViewClient(final WebViewClient webviewClient) {
@@ -167,12 +150,7 @@ public class WebViewOnUiThread {
public static void setWebViewClient(
final WebView webView, final WebViewClient webviewClient) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- webView.setWebViewClient(webviewClient);
- }
- });
+ WebkitUtils.onMainThreadSync(() -> webView.setWebViewClient(webviewClient));
}
public void setWebChromeClient(final WebChromeClient webChromeClient) {
@@ -181,12 +159,7 @@ public class WebViewOnUiThread {
public static void setWebChromeClient(
final WebView webView, final WebChromeClient webChromeClient) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- webView.setWebChromeClient(webChromeClient);
- }
- });
+ WebkitUtils.onMainThreadSync(() -> webView.setWebChromeClient(webChromeClient));
}
public void setWebViewRenderProcessClient(
@@ -196,11 +169,8 @@ public class WebViewOnUiThread {
public static void setWebViewRenderProcessClient(
final WebView webView, final WebViewRenderProcessClient webViewRenderProcessClient) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- WebViewCompat.setWebViewRenderProcessClient(webView, webViewRenderProcessClient);
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ WebViewCompat.setWebViewRenderProcessClient(webView, webViewRenderProcessClient);
});
}
@@ -213,12 +183,9 @@ public class WebViewOnUiThread {
final WebView webView,
final Executor executor,
final WebViewRenderProcessClient webViewRenderProcessClient) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- WebViewCompat.setWebViewRenderProcessClient(
- webView, executor, webViewRenderProcessClient);
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ WebViewCompat.setWebViewRenderProcessClient(
+ webView, executor, webViewRenderProcessClient);
});
}
@@ -228,39 +195,23 @@ public class WebViewOnUiThread {
public static WebViewRenderProcessClient getWebViewRenderProcessClient(
final WebView webView) {
- return WebkitUtils.onMainThreadSync(new Callable<WebViewRenderProcessClient>() {
- @Override
- public WebViewRenderProcessClient call() {
- return WebViewCompat.getWebViewRenderProcessClient(webView);
- }
+ return WebkitUtils.onMainThreadSync(() -> {
+ return WebViewCompat.getWebViewRenderProcessClient(webView);
});
}
public WebMessagePortCompat[] createWebMessageChannelCompat() {
- return WebkitUtils.onMainThreadSync(new Callable<WebMessagePortCompat[]>() {
- @Override
- public WebMessagePortCompat[] call() {
- return WebViewCompat.createWebMessageChannel(mWebView);
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> WebViewCompat.createWebMessageChannel(mWebView));
}
public void postWebMessageCompat(final WebMessageCompat message, final Uri targetOrigin) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- WebViewCompat.postWebMessage(mWebView, message, targetOrigin);
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ WebViewCompat.postWebMessage(mWebView, message, targetOrigin);
});
}
public void addJavascriptInterface(final Object object, final String name) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- mWebView.addJavascriptInterface(object, name);
- }
- });
+ WebkitUtils.onMainThreadSync(() -> mWebView.addJavascriptInterface(object, name));
}
/**
@@ -270,21 +221,11 @@ public class WebViewOnUiThread {
* @param url The URL to load.
*/
void loadUrlAndWaitForCompletion(final String url) {
- callAndWait(new Runnable() {
- @Override
- public void run() {
- mWebView.loadUrl(url);
- }
- });
+ callAndWait(() -> mWebView.loadUrl(url));
}
public void loadUrl(final String url) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- mWebView.loadUrl(url);
- }
- });
+ WebkitUtils.onMainThreadSync(() -> mWebView.loadUrl(url));
}
/**
@@ -297,23 +238,15 @@ public class WebViewOnUiThread {
*/
public void loadDataAndWaitForCompletion(@NonNull final String data,
@Nullable final String mimeType, @Nullable final String encoding) {
- callAndWait(new Runnable() {
- @Override
- public void run() {
- mWebView.loadData(data, mimeType, encoding);
- }
- });
+ callAndWait(() -> mWebView.loadData(data, mimeType, encoding));
}
public void loadDataWithBaseURLAndWaitForCompletion(final String baseUrl,
final String data, final String mimeType, final String encoding,
final String historyUrl) {
- callAndWait(new Runnable() {
- @Override
- public void run() {
- mWebView.loadDataWithBaseURL(baseUrl, data, mimeType, encoding,
- historyUrl);
- }
+ callAndWait(() -> {
+ mWebView.loadDataWithBaseURL(baseUrl, data, mimeType, encoding,
+ historyUrl);
});
}
@@ -323,13 +256,7 @@ public class WebViewOnUiThread {
* similar functions.
*/
void waitForLoadCompletion() {
- waitForCriteria(LOAD_TIMEOUT,
- new Callable<Boolean>() {
- @Override
- public Boolean call() {
- return isLoaded();
- }
- });
+ waitForCriteria(LOAD_TIMEOUT, () -> isLoaded());
clearLoad();
}
@@ -342,49 +269,26 @@ public class WebViewOnUiThread {
}
public String getTitle() {
- return WebkitUtils.onMainThreadSync(new Callable<String>() {
- @Override
- public String call() {
- return mWebView.getTitle();
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> mWebView.getTitle());
}
public WebSettings getSettings() {
- return WebkitUtils.onMainThreadSync(new Callable<WebSettings>() {
- @Override
- public WebSettings call() {
- return mWebView.getSettings();
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> mWebView.getSettings());
}
public String getUrl() {
- return WebkitUtils.onMainThreadSync(new Callable<String>() {
- @Override
- public String call() {
- return mWebView.getUrl();
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> mWebView.getUrl());
}
public void postVisualStateCallbackCompat(final long requestId,
final WebViewCompat.VisualStateCallback callback) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- WebViewCompat.postVisualStateCallback(mWebView, requestId, callback);
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ WebViewCompat.postVisualStateCallback(mWebView, requestId, callback);
});
}
void evaluateJavascript(final String script, final ValueCallback<String> result) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- mWebView.evaluateJavascript(script, result);
- }
- });
+ WebkitUtils.onMainThreadSync(() -> mWebView.evaluateJavascript(script, result));
}
public WebViewClient getWebViewClient() {
@@ -392,12 +296,7 @@ public class WebViewOnUiThread {
}
public static WebViewClient getWebViewClient(final WebView webView) {
- return WebkitUtils.onMainThreadSync(new Callable<WebViewClient>() {
- @Override
- public WebViewClient call() {
- return WebViewCompat.getWebViewClient(webView);
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> WebViewCompat.getWebViewClient(webView));
}
public WebChromeClient getWebChromeClient() {
@@ -405,12 +304,7 @@ public class WebViewOnUiThread {
}
public static WebChromeClient getWebChromeClient(final WebView webView) {
- return WebkitUtils.onMainThreadSync(new Callable<WebChromeClient>() {
- @Override
- public WebChromeClient call() {
- return WebViewCompat.getWebChromeClient(webView);
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> WebViewCompat.getWebChromeClient(webView));
}
WebView getWebViewOnCurrentThread() {
@@ -440,15 +334,12 @@ public class WebViewOnUiThread {
public Bitmap captureBitmap() {
getSettings().setOffscreenPreRaster(true);
waitForDOMReadyToRender();
- return WebkitUtils.onMainThreadSync(new Callable<Bitmap>() {
- @Override
- public Bitmap call() throws Exception {
- Bitmap bitmap = Bitmap.createBitmap(mWebView.getWidth(), mWebView.getHeight(),
- Bitmap.Config.ARGB_8888);
- Canvas canvas = new Canvas(bitmap);
- mWebView.draw(canvas);
- return bitmap;
- }
+ return WebkitUtils.onMainThreadSync(() -> {
+ Bitmap bitmap = Bitmap.createBitmap(mWebView.getWidth(), mWebView.getHeight(),
+ Bitmap.Config.ARGB_8888);
+ Canvas canvas = new Canvas(bitmap);
+ mWebView.draw(canvas);
+ return bitmap;
});
}
diff --git a/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessClientTest.java b/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessClientTest.java
index 3b57f1aa47e..20a76e04f45 100644
--- a/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessClientTest.java
+++ b/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessClientTest.java
@@ -85,28 +85,22 @@ public class WebViewRenderProcessClientTest {
}
private void blockRenderProcess(final JSBlocker blocker) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- WebView webView = mWebViewOnUiThread.getWebViewOnCurrentThread();
- webView.evaluateJavascript("blocker.block();", null);
- blocker.waitForBlocked();
- // Sending an input event that does not get acknowledged will cause
- // the unresponsive renderer event to fire.
- webView.dispatchKeyEvent(
- new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER));
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ WebView webView = mWebViewOnUiThread.getWebViewOnCurrentThread();
+ webView.evaluateJavascript("blocker.block();", null);
+ blocker.waitForBlocked();
+ // Sending an input event that does not get acknowledged will cause
+ // the unresponsive renderer event to fire.
+ webView.dispatchKeyEvent(
+ new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_ENTER));
});
}
private void addJsBlockerInterface(final JSBlocker blocker) {
- WebkitUtils.onMainThreadSync(new Runnable() {
- @Override
- public void run() {
- WebView webView = mWebViewOnUiThread.getWebViewOnCurrentThread();
- webView.getSettings().setJavaScriptEnabled(true);
- webView.addJavascriptInterface(blocker, "blocker");
- }
+ WebkitUtils.onMainThreadSync(() -> {
+ WebView webView = mWebViewOnUiThread.getWebViewOnCurrentThread();
+ webView.getSettings().setJavaScriptEnabled(true);
+ webView.addJavascriptInterface(blocker, "blocker");
});
}
diff --git a/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessTest.java b/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessTest.java
index 269f446716b..b6b49ed3e9b 100644
--- a/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessTest.java
+++ b/webkit/src/androidTest/java/androidx/webkit/WebViewRenderProcessTest.java
@@ -35,47 +35,32 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import java.util.concurrent.Callable;
-
@MediumTest
@RunWith(AndroidJUnit4.class)
public class WebViewRenderProcessTest {
private boolean terminateRenderProcessOnUiThread(
final WebViewRenderProcess renderer) {
- return WebkitUtils.onMainThreadSync(new Callable<Boolean>() {
- @Override
- public Boolean call() {
- return renderer.terminate();
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> renderer.terminate());
}
WebViewRenderProcess getRenderProcessOnUiThread(final WebView webView) {
- return WebkitUtils.onMainThreadSync(new Callable<WebViewRenderProcess>() {
- @Override
- public WebViewRenderProcess call() {
- return WebViewCompat.getWebViewRenderProcess(webView);
- }
- });
+ return WebkitUtils.onMainThreadSync(() -> WebViewCompat.getWebViewRenderProcess(webView));
}
private ListenableFuture<WebViewRenderProcess> startAndGetRenderProcess(
final WebView webView) throws Throwable {
final ResolvableFuture<WebViewRenderProcess> future = ResolvableFuture.create();
- WebkitUtils.onMainThread(new Runnable() {
- @Override
- public void run() {
- webView.setWebViewClient(new WebViewClient() {
- @Override
- public void onPageFinished(WebView view, String url) {
- WebViewRenderProcess result =
- WebViewCompat.getWebViewRenderProcess(webView);
- future.set(result);
- }
- });
- webView.loadUrl("about:blank");
- }
+ WebkitUtils.onMainThread(() -> {
+ webView.setWebViewClient(new WebViewClient() {
+ @Override
+ public void onPageFinished(WebView view, String url) {
+ WebViewRenderProcess result =
+ WebViewCompat.getWebViewRenderProcess(webView);
+ future.set(result);
+ }
+ });
+ webView.loadUrl("about:blank");
});
return future;
@@ -84,20 +69,17 @@ public class WebViewRenderProcessTest {
ListenableFuture<Boolean> catchRenderProcessTermination(final WebView webView) {
final ResolvableFuture<Boolean> future = ResolvableFuture.create();
- WebkitUtils.onMainThread(new Runnable() {
- @Override
- public void run() {
- webView.setWebViewClient(new WebViewClient() {
- @Override
- public boolean onRenderProcessGone(
- WebView view,
- RenderProcessGoneDetail detail) {
- view.destroy();
- future.set(true);
- return true;
- }
- });
- }
+ WebkitUtils.onMainThread(() -> {
+ webView.setWebViewClient(new WebViewClient() {
+ @Override
+ public boolean onRenderProcessGone(
+ WebView view,
+ RenderProcessGoneDetail detail) {
+ view.destroy();
+ future.set(true);
+ return true;
+ }
+ });
});
return future;