[arquillian-issues] [JBoss JIRA] (ARQGRA-449) Graphene can not switch between contexts

Stefan Miklosovic (JIRA) issues at jboss.org
Fri Jun 13 08:00:46 EDT 2014


    [ https://issues.jboss.org/browse/ARQGRA-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12975977#comment-12975977 ] 

Stefan Miklosovic commented on ARQGRA-449:
------------------------------------------

[~lfryc]

I put breakpoint here (1)  and here (2) and exception is throw here (3). It is one of these below, they are in ancillaryTypes variable on line 166. Do you know how to check it fast? I was not able to dig into it any furter, I was not able to attach sources for that sun.misc proxy generator classes .... 

interface org.openqa.selenium.JavascriptExecutor,
interface org.openqa.selenium.ContextAware,
interface org.openqa.selenium.internal.FindsByCssSelector,
interface org.openqa.selenium.WebDriver,
interface org.openqa.selenium.internal.FindsByName,
interface org.openqa.selenium.Rotatable,
interface org.openqa.selenium.interactions.HasInputDevices,
interface org.openqa.selenium.internal.FindsByXPath,
interface org.openqa.selenium.interactions.HasTouchScreen,
interface org.openqa.selenium.internal.FindsByLinkText,
interface io.selendroid.ScreenBrightness,
interface io.selendroid.Configuration,
interface org.openqa.selenium.HasCapabilities,
interface org.openqa.selenium.internal.FindsById,
interface io.selendroid.HasAirplaneMode,
interface org.openqa.selenium.internal.FindsByClassName,
interface io.selendroid.AdbSupport,
interface org.openqa.selenium.TakesScreenshot,
interface org.openqa.selenium.internal.FindsByTagName,
interface org.jboss.arquillian.graphene.proxy.GrapheneProxyInstance

(1) https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/main/java/org/jboss/arquillian/graphene/proxy/GrapheneProxy.java#L91
(2) https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/main/java/org/jboss/arquillian/graphene/proxy/GrapheneProxy.java#L92
(3) https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/main/java/org/jboss/arquillian/graphene/proxy/GrapheneProxy.java#L166

> Graphene can not switch between contexts
> ----------------------------------------
>
>                 Key: ARQGRA-449
>                 URL: https://issues.jboss.org/browse/ARQGRA-449
>             Project: Arquillian Graphene
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: core
>    Affects Versions: 2.0.3.Final
>            Reporter: Stefan Miklosovic
>
> This code:
> {code}
> @Test
> public void nativeViewTest()
> {
>     driver.switchTo().window("NATIVE_APP");
> }
> {code}
> That window() parameter is Selendroid-related and it has nothing to do with Graphene. Graphene is just not able to handle that.
> It produces this exception:
> {code}
> java.lang.IllegalArgumentException: methods with same signature getContext() but incompatible return types: [class java.lang.String, class org.jboss.arquillian.graphene.context.GrapheneContext]
> at sun.misc.ProxyGenerator.checkReturnTypes(ProxyGenerator.java:686)
> at sun.misc.ProxyGenerator.generateClassFile(ProxyGenerator.java:437)
> at sun.misc.ProxyGenerator.generateProxyClass(ProxyGenerator.java:323)
> at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:636)
> at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:722)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.createProxy(GrapheneProxy.java:166)
> at org.jboss.arquillian.graphene.proxy.GrapheneProxy.getProxyForTargetWithInterfaces(GrapheneProxy.java:92)
> at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$1.invoke(GrapheneContextualHandler.java:165)
> at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler$2.call(GrapheneContextualHandler.java:209)
> at org.jboss.arquillian.graphene.context.BrowserActions.performAction(BrowserActions.java:62)
> at org.jboss.arquillian.graphene.proxy.GrapheneContextualHandler.invoke(GrapheneContextualHandler.java:205)
> at com.sun.proxy.$Proxy27.window(Unknown Source)
> at org.arquillian.droidium.showcase.hybrid.test01.SelendroidHybridTestAppTestCase.nativeViewTest(SelendroidHybridTestAppTestCase.java:101)
> {code}



--
This message was sent by Atlassian JIRA
(v6.2.6#6264)


More information about the arquillian-issues mailing list