diff options
author | Nate Fischer <ntfschr@google.com> | 2019-06-12 23:47:20 -0700 |
---|---|---|
committer | Nate Fischer <ntfschr@google.com> | 2019-06-14 14:07:59 -0700 |
commit | d1f15e7cdec4da311f4cdf0ea00d74a2ec74962b (patch) | |
tree | abd031d66df3daa90c2fff275058f00eda2e4ee8 | |
parent | 92291479b5ae8717ddb9a9cfff268b4c1d605bba (diff) | |
download | support-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
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; |