Upstream version 8.37.187.0
[platform/framework/web/crosswalk.git] / src / xwalk / test / android / core / javatests / src / org / xwalk / core / xwview / test / XWalkViewTestBase.java
index 5da6f1f..5ad26a0 100644 (file)
@@ -25,13 +25,11 @@ 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.xwalk.core.XWalkClient;
 import org.xwalk.core.XWalkNavigationHistory;
 import org.xwalk.core.XWalkNavigationItem;
 import org.xwalk.core.XWalkResourceClient;
-import org.xwalk.core.XWalkSettings;
+import org.xwalk.core.XWalkUIClient;
 import org.xwalk.core.XWalkView;
-import org.xwalk.core.XWalkWebChromeClient;
 
 public class XWalkViewTestBase
        extends ActivityInstrumentationTestCase2<XWalkViewTestRunnerActivity> {
@@ -40,45 +38,36 @@ public class XWalkViewTestBase
     private XWalkView mXWalkView;
     final TestHelperBridge mTestHelperBridge = new TestHelperBridge();
 
-    class TestXWalkClientBase extends XWalkClient {
+    class TestXWalkUIClientBase extends XWalkUIClient {
         TestHelperBridge mInnerContentsClient;
-        public TestXWalkClientBase(TestHelperBridge client) {
+        public TestXWalkUIClientBase(TestHelperBridge client) {
             super(getXWalkView());
             mInnerContentsClient = client;
         }
 
         @Override
-        public void onPageStarted(XWalkView view, String url) {
+        public void onPageLoadStarted(XWalkView view, String url) {
             mInnerContentsClient.onPageStarted(url);
         }
 
         @Override
-        public void onPageFinished(XWalkView view, String url) {
+        public void onPageLoadStopped(XWalkView view, String url, LoadStatus status) {
             mInnerContentsClient.onPageFinished(url);
         }
-    }
-
-    class TestXWalkClient extends TestXWalkClientBase {
-        public TestXWalkClient() {
-            super(mTestHelperBridge);
-        }
-    }
-
-    class TestXWalkWebChromeClientBase extends XWalkWebChromeClient {
-        TestHelperBridge mInnerContentsClient;
-        public TestXWalkWebChromeClientBase(TestHelperBridge client) {
-            super(getXWalkView());
-            mInnerContentsClient = client;
-        }
 
         @Override
         public void onReceivedTitle(XWalkView view, String title) {
             mInnerContentsClient.onTitleChanged(title);
         }
+
+        @Override
+        public void onJavascriptCloseWindow(XWalkView view) {
+            mInnerContentsClient.onJavascriptCloseWindow();
+        }
     }
 
-    class TestXWalkWebChromeClient extends TestXWalkWebChromeClientBase {
-        public TestXWalkWebChromeClient() {
+    class TestXWalkUIClient extends TestXWalkUIClientBase {
+        public TestXWalkUIClient() {
             super(mTestHelperBridge);
         }
     }
@@ -92,18 +81,23 @@ public class XWalkViewTestBase
 
         @Override
         public void onLoadStarted(XWalkView view, String url) {
-            mTestHelperBridge.onLoadStarted(url);
+            mInnerContentsClient.onLoadStarted(url);
         }
 
         @Override
         public void onReceivedLoadError(XWalkView view, int errorCode, String description, String failingUrl) {
-            mTestHelperBridge.onReceivedLoadError(errorCode, description, failingUrl);
+            mInnerContentsClient.onReceivedLoadError(errorCode, description, failingUrl);
         }
 
         @Override
         public WebResourceResponse shouldInterceptLoadRequest(XWalkView view,
                 String url) {
-            return mTestHelperBridge.shouldInterceptLoadRequest(url);
+            return mInnerContentsClient.shouldInterceptLoadRequest(url);
+        }
+
+        @Override
+        public void onProgressChanged(XWalkView view, int progressInPercent) {
+            mTestHelperBridge.onProgressChanged(progressInPercent);
         }
     }
 
@@ -113,20 +107,11 @@ public class XWalkViewTestBase
         }
     }
 
-    void setXWalkClient(final XWalkClient client) {
+    void setUIClient(final XWalkUIClient client) {
         getInstrumentation().runOnMainSync(new Runnable() {
             @Override
             public void run() {
-                getXWalkView().setXWalkClient(client);
-            }
-        });
-    }
-
-    void setXWalkWebChromeClient(final XWalkWebChromeClient client) {
-        getInstrumentation().runOnMainSync(new Runnable() {
-            @Override
-            public void run() {
-                getXWalkView().setXWalkWebChromeClient(client);
+                getXWalkView().setUIClient(client);
             }
         });
     }
@@ -140,37 +125,6 @@ public class XWalkViewTestBase
         });
     }
 
-    static class ViewPair {
-        private final XWalkView content0;
-        private final TestHelperBridge client0;
-        private final XWalkView content1;
-        private final TestHelperBridge client1;
-
-        ViewPair(XWalkView content0, TestHelperBridge client0,
-                XWalkView content1, TestHelperBridge client1) {
-            this.content0 = content0;
-            this.client0 = client0;
-            this.content1 = content1;
-            this.client1 = client1;
-        }
-
-        XWalkView getContent0() {
-            return content0;
-        }
-
-        TestHelperBridge getClient0() {
-            return client0;
-        }
-
-        XWalkView getContent1() {
-            return content1;
-        }
-
-        TestHelperBridge getClient1() {
-            return client1;
-        }
-    }
-
     public XWalkViewTestBase() {
         super(XWalkViewTestRunnerActivity.class);
     }
@@ -186,6 +140,8 @@ public class XWalkViewTestBase
             public void run() {
                 mXWalkView = new XWalkView(activity, activity);
                 getActivity().addView(mXWalkView);
+                mXWalkView.setUIClient(new TestXWalkUIClient());
+                mXWalkView.setResourceClient(new TestXWalkResourceClient());
                 // mXWalkView.getXWalkViewContentForTest().installWebContentsObserverForTest(mTestHelperBridge);
             }
         });
@@ -313,21 +269,10 @@ public class XWalkViewTestBase
         });
     }
 
-    protected XWalkSettings getXWalkSettingsOnUiThreadByContent(
-            final XWalkView xwalkContent) throws Exception {
-        return runTestOnUiThreadAndGetResult(new Callable<XWalkSettings>() {
-            @Override
-            public XWalkSettings call() throws Exception {
-                return xwalkContent.getSettings();
-            }
-        });
-    }
-
     protected XWalkView createXWalkViewContainerOnMainSync(
             final Context context,
-            final XWalkClient client,
-            final XWalkResourceClient resourceClient,
-            final XWalkWebChromeClient webChromeClient) throws Exception {
+            final XWalkUIClient uiClient,
+            final XWalkResourceClient resourceClient) throws Exception {
         final AtomicReference<XWalkView> xWalkViewContainer =
                 new AtomicReference<XWalkView>();
         getInstrumentation().runOnMainSync(new Runnable() {
@@ -335,40 +280,14 @@ public class XWalkViewTestBase
             public void run() {
                 xWalkViewContainer.set(new XWalkView(context, getActivity()));
                 getActivity().addView(xWalkViewContainer.get());
-                xWalkViewContainer.get().setXWalkClient(client);
+                xWalkViewContainer.get().setUIClient(uiClient);
                 xWalkViewContainer.get().setResourceClient(resourceClient);
-                xWalkViewContainer.get().setXWalkWebChromeClient(webChromeClient);
             }
         });
 
         return xWalkViewContainer.get();
     }
 
-    protected ViewPair createViewsOnMainSync(final TestHelperBridge helperBridge0,
-                                             final TestHelperBridge helperBridge1,
-                                             final XWalkClient client0,
-                                             final XWalkClient client1,
-                                             final XWalkResourceClient resourceClient0,
-                                             final XWalkResourceClient resourceClient1,
-                                             final XWalkWebChromeClient chromeClient0,
-                                             final XWalkWebChromeClient chromeClient1,
-                                             final Context context) throws Throwable {
-        final XWalkView walkView0 = createXWalkViewContainerOnMainSync(context,
-                client0, resourceClient0, chromeClient0);
-        final XWalkView walkView1 = createXWalkViewContainerOnMainSync(context,
-                client1, resourceClient1, chromeClient1);
-        final AtomicReference<ViewPair> viewPair = new AtomicReference<ViewPair>();
-
-        getInstrumentation().runOnMainSync(new Runnable() {
-            @Override
-            public void run() {
-                viewPair.set(new ViewPair(walkView0, helperBridge0, walkView1, helperBridge1));
-            }
-        });
-
-        return viewPair.get();
-    }
-
     protected void loadAssetFile(String fileName) throws Exception {
         String fileContent = getFileContent(fileName);
         loadDataSync(fileName, fileContent, "text/html", false);
@@ -468,6 +387,33 @@ public class XWalkViewTestBase
         });
     }
 
+    protected int historySizeOnUiThread() throws Throwable {
+        return runTestOnUiThreadAndGetResult(new Callable<Integer>() {
+            @Override
+            public Integer call() {
+                return mXWalkView.getNavigationHistory().size();
+            }
+        });
+    }
+
+    protected boolean hasItemAtOnUiThread(final int index) throws Throwable {
+        return runTestOnUiThreadAndGetResult(new Callable<Boolean>() {
+            @Override
+            public Boolean call() {
+                return mXWalkView.getNavigationHistory().hasItemAt(index);
+            }
+        });
+    }
+
+    protected XWalkNavigationItem getItemAtOnUiThread(final int index) throws Throwable {
+        return runTestOnUiThreadAndGetResult(new Callable<XWalkNavigationItem>() {
+            @Override
+            public XWalkNavigationItem call() {
+                return mXWalkView.getNavigationHistory().getItemAt(index);
+            }
+        });
+    }
+
     protected XWalkNavigationItem getCurrentItemOnUiThread() throws Throwable {
         return runTestOnUiThreadAndGetResult(new Callable<XWalkNavigationItem>() {
             @Override
@@ -492,27 +438,6 @@ public class XWalkViewTestBase
         return helper.getJsonResultAndClear();
     }
 
-    protected ViewPair createViews() throws Throwable {
-        TestHelperBridge helperBridge0 = new TestHelperBridge();
-        TestHelperBridge helperBridge1 = new TestHelperBridge();
-        TestXWalkClientBase viewClient0 = new TestXWalkClientBase(helperBridge0);
-        TestXWalkClientBase viewClient1 = new TestXWalkClientBase(helperBridge1);
-        TestXWalkWebChromeClientBase chromeClient0 =
-                new TestXWalkWebChromeClientBase(helperBridge0);
-        TestXWalkWebChromeClientBase chromeClient1 =
-                new TestXWalkWebChromeClientBase(helperBridge1);
-        TestXWalkResourceClientBase resourceClient0 =
-                new TestXWalkResourceClientBase(helperBridge0);
-        TestXWalkResourceClientBase resourceClient1 =
-                new TestXWalkResourceClientBase(helperBridge1);
-        ViewPair viewPair =
-                createViewsOnMainSync(helperBridge0, helperBridge1, viewClient0, viewClient1,
-                        resourceClient0, resourceClient1, chromeClient0, chromeClient1,
-                                getActivity());
-
-        return viewPair;
-    }
-
     protected String getUrlOnUiThread() throws Exception {
         return runTestOnUiThreadAndGetResult(new Callable<String>() {
             @Override