Merge "Update WebGL conformance tests to early out..." into lmp-dev
diff --git a/tests/webgl/Android.mk b/tests/webgl/Android.mk
index ce22dd8..624d82a 100755
--- a/tests/webgl/Android.mk
+++ b/tests/webgl/Android.mk
@@ -24,7 +24,8 @@
LOCAL_STATIC_JAVA_LIBRARIES := ctsdeviceutil ctstestrunner
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
+LOCAL_SRC_FILES := $(call all-java-files-under, src)\
+ ../src/android/webkit/cts/NullWebViewUtils.java
# Must match the package name in CtsTestCaseList.mk
LOCAL_PACKAGE_NAME := CtsWebGLTestCases
diff --git a/tests/webgl/src/android/webgl/WebGLActivity.java b/tests/webgl/src/android/webgl/WebGLActivity.java
index ebba905..f851a76 100644
--- a/tests/webgl/src/android/webgl/WebGLActivity.java
+++ b/tests/webgl/src/android/webgl/WebGLActivity.java
@@ -25,6 +25,7 @@
import android.webkit.WebView;
import android.webkit.JavascriptInterface;
import android.webkit.WebViewClient;
+import android.webkit.cts.NullWebViewUtils;
import android.widget.Toast;
import java.lang.Override;
import java.io.InputStream;
@@ -51,7 +52,16 @@
super.onCreate(icicle);
mWebGlHarnessUrl = "file://" + getCacheDir() + "/harness.html";
- mWebView = new WebView(this);
+ try {
+ mWebView = new WebView(this);
+ } catch (Exception e) {
+ NullWebViewUtils.determineIfWebViewAvailable(this, e);
+ }
+
+ if (mWebView == null) {
+ return;
+ }
+
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setAllowFileAccessFromFileURLs(true);
mWebView.getSettings().setMediaPlaybackRequiresUserGesture(false);
@@ -92,6 +102,10 @@
}
public void navigateToTest(String url) throws Exception {
+ if (!NullWebViewUtils.isWebViewAvailable()) {
+ return;
+ }
+
synchronized(WebGLActivity.this) {
mWebGLTestUrl = url;
}