[arquillian-issues] [JBoss JIRA] (ARQGRA-408) Provide SPI for custom @Location resolution

Stefan Miklosovic (JIRA) issues at jboss.org
Fri Mar 14 04:44:12 EDT 2014


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

Stefan Miklosovic commented on ARQGRA-408:
------------------------------------------

1) +1

2) I do not know how to do it. When it comes to it, you use that UriScheme enumeration in Location annotation. When you want to use anothe scheme, I just do not see a way how to add there your custom one without changing UriScheme enumeration. Maybe UriScheme would implement some base interface so you would implement your own as well or your custom scheme would extends base UriScheme. I am not sure.

Wdty? :)
                
> Provide SPI for custom @Location resolution
> -------------------------------------------
>
>                 Key: ARQGRA-408
>                 URL: https://issues.jboss.org/browse/ARQGRA-408
>             Project: Arquillian Graphene
>          Issue Type: Feature Request
>            Reporter: Stefan Miklosovic
>            Assignee: Stefan Miklosovic
>            Priority: Minor
>             Fix For: 2.1-Tracking
>
>
> While working with page fragments in Arquillian Droidium for ftesting on Android, I am quite close to be able to use proper page objects with @Location annotations on activities and that in turn means that I could use @InitialPage for native Android activities as well. 
> Right now, I am starting Android activities like this (1) however I would like to encapsulate activity as the abstraction of a web page like this (2) into @Page and use @Location of it so that activity will be automatically open for me when I do @InitialPage so I get rid of that manual starting of the activity as seen in (1) and I just more stick to Graphene way of doing things.
> The problem is that an activity is started differently, to be concrete, I need to call something like
> {code}
> browser.get("and-activity://activityName");
> {code}
> and I need to do some internal matching of activities to WebDrivers.
> To be concrete, follow the link (3).
> From what I understood, that whole @Location logic is implemented in LocationEnricher the resolution of that url is in getURLFromLocation method. Since it would be theoretically possible to use @Location("and-activity://someActivity"), I would like to see SPI for doing of these things out of Graphene where I could add custom schemes to already existing ones or I could supress the standard behaviour so I can resolve and open locations according to my needs.
> (1)
> https://github.com/kpiwko/arquillian-safari/blob/master/arquillian-droidium-scenario/src/test/java/org/arquillian/droidium/openblend/AeroGearTestCase.java#L140
> (2) https://github.com/kpiwko/arquillian-safari/blob/master/arquillian-droidium-scenario/src/test/java/org/arquillian/droidium/openblend/fragment/mobile/LoginMobileFragment.java
> (3) https://github.com/arquillian/arquillian-droidium/blob/master/droidium-native/arquillian-droidium-native-impl/src/main/java/org/arquillian/droidium/native_/activity/NativeActivityManager.java#L46

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the arquillian-issues mailing list