Hi Joe, > > The tests don't work with Crosswalk because Crosswalk's main class doesn't > inherit from a view. This is why we had to change the CordovaWebView > from being a class to being an Interface in the first place. I don't think > there is > a way for these tests to work with Crosswalk because of this incompatibility. > I don't think there is a way to re-use these tests because of this fundamental > change.
Crosswalk main class (XWalkView) actually inherits from a view (via FrameLayout). See https://crosswalk-project.org/apis/embeddingapidocs_v3/index.html I inspected the commit that changed the XWalkCordovaWebView from inheritance to composition (https://github.com/MobileChromeApps/cordova-crosswalk-engine/commit/26029ce8ae6d651a44a90222514cc6902ef8bb4a). The reason was some APIs of CordovaWebView interface (e.g. CanGoBack) conflict with XWalkView internal implementation at that time. And I remembered Ian and me thought CordovaWebView as an interface and compositing of webview probably was a good decouple solution. However, this changed in Crosswalk embedding API 3 (current version) that we separated the public interface and implementation. I briefly checked that the inheritance approach works with Crosswalk webview now. Folks, do you think we need to align all webview engines to inheritance pattern? Thanks, -ningxin > On Tue Jan 20 2015 at 5:11:54 AM Fu, Junwei <junwei...@intel.com> wrote: > > > Hi, > > > > I pulled cordova-android 4.0 branch, and running JUnit test in /test > > directory, but there are compiled error as below, and I want reuse the > > JUnit tests to test Crosswalk pluggable webView, so I request a PR > > https://github.com/apache/cordova-android/pull/140, could someone > help > > me to review and merge it. > > > > /test/menus.java:37: error: method registerForContextMenu in class > > Activity cannot be applied to given types; > > [javac] super.registerForContextMenu(super.appView); > > reason: actual argument CordovaWebView cannot be converted to View > by > > method invocation conversion > > > > test/splashscreen.java:33: error: method loadUrl in class > > CordovaActivity cannot be applied to given types; > > [javac] > super.loadUrl("file:///android_asset/www/splashscreen/index.html", > > 2000); > > reason: actual and formal argument lists differ in length > > > > Thanks, > > Junwei. > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org > > For additional commands, e-mail: dev-h...@cordova.apache.org > >