[JBoss JIRA] (ARQ-2016) Test extensions should be separate from OSGi Container extensions
by Steve Storck (JIRA)
Steve Storck created ARQ-2016:
---------------------------------
Summary: Test extensions should be separate from OSGi Container extensions
Key: ARQ-2016
URL: https://issues.jboss.org/browse/ARQ-2016
Project: Arquillian
Issue Type: Feature Request
Components: OSGi Containers
Affects Versions: osgi_2.1.0.Final
Environment: Under Linux, and inside Karaf 4.x
Reporter: Steve Storck
Assignee: Thomas Diesler
When the karaf container extension is deployed, it also deploys the arquillian-osgi-bundle. This bundle exposes a few APIs, but it contains (and does not expose) some of the implementation and SPI packages. This effectively results in only being able to use the provided JUnitBundleTestRunner extension. I want to use the arquillian-testrunner-spock extension, but it always fails because I have to deploy the test SPI bundle with my test jar, and it conflicts with those packages that the arquillian-osgi-bundle uses internally. This causes an exception to be thrown that complains that the EventTestRunnerAdaptor implementation is not an instance of the TestRunnerAdaptor interface. The chain of events that results in the exception is as follows:
ArquillianSputnik.java
{code:java}
public void run(RunNotifier notifier)
// Code omitted for brevity
final TestRunnerAdaptor adaptor = TestRunnerAdaptorBuilder.build();
// More code omitted for brevity
{
{code}
TestRunnerAdaptor.java
{code:java}
public static TestRunnerAdaptor build()
{
// omitted lines for brevity
ManagerBuilder builder = ManagerBuilder.from()
.extension(SecurityActions.loadClass(DEFAULT_EXTENSION_CLASS));
return SecurityActions.newInstance(
TEST_RUNNER_IMPL_CLASS,
new Class<?>[] {ManagerBuilder.class},
new Object[] {builder},
TestRunnerAdaptor.class);
}
{code}
SecurityActions.java
{code:java}
static <T> T newInstance(final String className, final Class<?>[] argumentTypes, final Object[] arguments, final Class<T> expectedType)
{
@SuppressWarnings("unchecked")
Class<T> implClass = (Class<T>) loadClass(className);
if (!expectedType.isAssignableFrom(implClass)) {
throw new RuntimeException("Loaded class " + className + " is not of expected type " + expectedType);
}
return newInstance(implClass, argumentTypes, arguments);
}
{code}
I think that the best solution would be to completely decouple the JUnitTestRunner from the container modules, or at the very least, it would be good to change the <_exportcontents> to export most (or all) of the embedded dependency packages so that users can make use of other extensions, or build their own.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months
[JBoss JIRA] (ARQ-2015) JSF 1.2 is not supported by Warp tests, while this is not clear in documentation
by AbdelRahman Sinno (JIRA)
AbdelRahman Sinno created ARQ-2015:
--------------------------------------
Summary: JSF 1.2 is not supported by Warp tests, while this is not clear in documentation
Key: ARQ-2015
URL: https://issues.jboss.org/browse/ARQ-2015
Project: Arquillian
Issue Type: Bug
Components: Extension - Warp
Reporter: AbdelRahman Sinno
Arquillian Warp does not seem to support JSF 1.2 (along with RichFaces 3.3.3) based on my tests, while on the other hand nothing on the internet or any documentation mentions that this support is absent.
For more information, the following exception is observed when running the unit test on a warp-managed tomcat, while the same application runs fine if deployed externally on the same tomcat:
SEVERE: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
java.lang.NoClassDefFoundError: javax/faces/context/FacesContextWrapper
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2818)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
at java.lang.Class.getConstructor0(Class.java:2714)
at java.lang.Class.getConstructor(Class.java:1674)
at javax.faces.FactoryFinder.getImplGivenPreviousImpl(FactoryFinder.java:558)
at javax.faces.FactoryFinder.getImplementationInstance(FactoryFinder.java:459)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:260)
at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:186)
at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:131)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:202)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:174)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4205)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4704)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:943)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:563)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1397)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:791)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1500)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:670)
at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:435)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.ClassNotFoundException: javax.faces.context.FacesContextWrapper
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
... 51 more
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months
[JBoss JIRA] (ARQ-1923) Cannot build Warp 1.0.0.Alpha7 with OpenJDK 8
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQ-1923?page=com.atlassian.jira.plugin.s... ]
Matous Jobanek commented on ARQ-1923:
-------------------------------------
PR: https://github.com/arquillian/arquillian-extension-warp/pull/31
> Cannot build Warp 1.0.0.Alpha7 with OpenJDK 8
> ---------------------------------------------
>
> Key: ARQ-1923
> URL: https://issues.jboss.org/browse/ARQ-1923
> Project: Arquillian
> Issue Type: Bug
> Components: Extension - Warp
> Affects Versions: warp_1.0.0.Alpha7
> Reporter: Pavol Pitonak
> Fix For: warp_1.0.0.Beta1
>
>
> # git clone https://github.com/arquillian/arquillian-extension-warp.git
> # mvn clean install
> result:
> * when launched with OpenJDK 8, one test fails TestExecutedMethod.testSerializedAnnotation
> {code}
> java.lang.IllegalStateException: java.lang.IllegalStateException: Error instantiating proxy for annotation. Annotation type: interface org.jboss.arquillian.warp.impl.shared.TestingAnnotation
> at org.jboss.arquillian.warp.impl.shared.SerializedAnnotation.getAnnotation(SerializedAnnotation.java:61)
> at org.jboss.arquillian.warp.impl.shared.TestExecutedMethod.testSerializedAnnotation(TestExecutedMethod.java:49)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
> Caused by: java.lang.IllegalStateException: Error instantiating proxy for annotation. Annotation type: interface org.jboss.arquillian.warp.impl.shared.TestingAnnotation
> at org.jboss.arquillian.warp.impl.utils.AnnotationInstanceProvider.get(AnnotationInstanceProvider.java:83)
> at org.jboss.arquillian.warp.impl.shared.SerializedAnnotation.getAnnotation(SerializedAnnotation.java:59)
> ... 24 more
> Caused by: java.lang.IllegalAccessException: Class org.jboss.arquillian.warp.impl.utils.AnnotationInstanceProvider can not access a member of class org.jboss.arquillian.warp.impl.shared.$Proxy5 with modifiers "public"
> at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:101)
> at java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:295)
> at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:287)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:398)
> at org.jboss.arquillian.warp.impl.utils.AnnotationInstanceProvider.get(AnnotationInstanceProvider.java:76)
> ... 25 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months
[JBoss JIRA] (ARQ-1923) Cannot build Warp 1.0.0.Alpha7 with OpenJDK 8
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQ-1923?page=com.atlassian.jira.plugin.s... ]
Matous Jobanek updated ARQ-1923:
--------------------------------
Git Pull Request: https://github.com/arquillian/arquillian-extension-warp/pull/31
> Cannot build Warp 1.0.0.Alpha7 with OpenJDK 8
> ---------------------------------------------
>
> Key: ARQ-1923
> URL: https://issues.jboss.org/browse/ARQ-1923
> Project: Arquillian
> Issue Type: Bug
> Components: Extension - Warp
> Affects Versions: warp_1.0.0.Alpha7
> Reporter: Pavol Pitonak
> Fix For: warp_1.0.0.Beta1
>
>
> # git clone https://github.com/arquillian/arquillian-extension-warp.git
> # mvn clean install
> result:
> * when launched with OpenJDK 8, one test fails TestExecutedMethod.testSerializedAnnotation
> {code}
> java.lang.IllegalStateException: java.lang.IllegalStateException: Error instantiating proxy for annotation. Annotation type: interface org.jboss.arquillian.warp.impl.shared.TestingAnnotation
> at org.jboss.arquillian.warp.impl.shared.SerializedAnnotation.getAnnotation(SerializedAnnotation.java:61)
> at org.jboss.arquillian.warp.impl.shared.TestExecutedMethod.testSerializedAnnotation(TestExecutedMethod.java:49)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
> Caused by: java.lang.IllegalStateException: Error instantiating proxy for annotation. Annotation type: interface org.jboss.arquillian.warp.impl.shared.TestingAnnotation
> at org.jboss.arquillian.warp.impl.utils.AnnotationInstanceProvider.get(AnnotationInstanceProvider.java:83)
> at org.jboss.arquillian.warp.impl.shared.SerializedAnnotation.getAnnotation(SerializedAnnotation.java:59)
> ... 24 more
> Caused by: java.lang.IllegalAccessException: Class org.jboss.arquillian.warp.impl.utils.AnnotationInstanceProvider can not access a member of class org.jboss.arquillian.warp.impl.shared.$Proxy5 with modifiers "public"
> at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:101)
> at java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:295)
> at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:287)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:398)
> at org.jboss.arquillian.warp.impl.utils.AnnotationInstanceProvider.get(AnnotationInstanceProvider.java:76)
> ... 25 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months
[JBoss JIRA] (ARQGRA-483) @Location might use the Wrong URL when used with Warp
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-483?page=com.atlassian.jira.plugin... ]
Matous Jobanek commented on ARQGRA-483:
---------------------------------------
Just found out that there is already a Jira for this issue: https://issues.jboss.org/browse/ARQ-1952
> @Location might use the Wrong URL when used with Warp
> ------------------------------------------------------
>
> Key: ARQGRA-483
> URL: https://issues.jboss.org/browse/ARQGRA-483
> Project: Arquillian Graphene
> Issue Type: Bug
> Components: integration
> Affects Versions: 2.1.0.Alpha2
> Reporter: Aslak Knutsen
> Fix For: 2.1-Tracking
>
>
> Both Graphene and Warp attempt to override the default Core URLResourceProvider.
> Warp has the ProxyURLProvider and Graphene the CustomizableURLResourceProvider.
> When both Graphene and Warp is on classpath it becomes unpredictable who will actually win.
> Technically the two URLs used here could be different:
> {code}
> @ArquillianResource
> private URL baseURL;
>
> @Test @RunAsClient
> public void shouldBeAbleToStoreConference(@InitialPage ConferencePage page) throws Exception {
> }
> {code}
> BaseURL could be proxied and the URL used by InitialPage not, or the other way around.
> Graphene sets up it's ContextRootStore with which ever URL was provided last;
> https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/ma...
> Core will do the opposite, which ever comes first.
> When Graphene resolves the 'non-proxied' URL, Warp will eventually time out waiting for a reply as it never got to setup and sync.
> This seems to be a good test case currently:
> {code}
> @Drone
> private WebDriver driver;
>
> @ArquillianResource
> private URL baseURL;
>
> @Test @RunAsClient
> public void shouldBeAbleToStoreConference(@InitialPage ConferencePage page) throws Exception {
> Assert.assertEquals(baseURL.getPort(), new URL(driver.getCurrentUrl()).getPort());
> }
> {code}
> Currently one will show 'proxy-port' and the other '8080'.
> This has to do with the dependency order. If you place Graphene before Warp in the POM then Graphene will work because Warp's ProxyURLProvider is the last provider, if you place Warp before Graphene you should see this issue.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months
[JBoss JIRA] (ARQGRA-454) NPE in WebElementEnricher.enrich() with Arquillian 1.1.5.Final
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-454?page=com.atlassian.jira.plugin... ]
Matous Jobanek commented on ARQGRA-454:
---------------------------------------
This depends on: https://github.com/arquillian/arquillian-graphene/pull/145 containing upgrade to arquilian-core 1.1.11.Final
> NPE in WebElementEnricher.enrich() with Arquillian 1.1.5.Final
> --------------------------------------------------------------
>
> Key: ARQGRA-454
> URL: https://issues.jboss.org/browse/ARQGRA-454
> Project: Arquillian Graphene
> Issue Type: Bug
> Components: core
> Affects Versions: 2.0.3.Final, 2.1.0.Alpha2
> Reporter: Juergen Zimmermann
> Assignee: Lukáš Fryč
> Fix For: 2.0.4.Final, 2.1-Tracking
>
>
> I'm getting a GrapheneTestEnricherException caused by a NPE (see stacktrace below) after upgrading Arquillian to 1.1.5.Final. The issue doesn't exist with Arquillian 1.1.4.Final.
> The stacktrace:
> {code}
> org.jboss.arquillian.graphene.enricher.exception.GrapheneTestEnricherException:
> Error while initializing: class de.shop.util.IndexPage
> at org.jboss.arquillian.graphene.location.LocationEnricher.goTo(LocationEnricher.java:78)
> at org.jboss.arquillian.graphene.DefaultGrapheneRuntime.goTo(DefaultGrapheneRuntime.java:125)
> at org.jboss.arquillian.graphene.DefaultGrapheneRuntime.goTo(DefaultGrapheneRuntime.java:120)
> at org.jboss.arquillian.graphene.Graphene.goTo(Graphene.java:291)
> at de.shop.util.AbstractWebTest.before(AbstractWebTest.java:54)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:483)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
> at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.jboss.arquillian.junit.Arquillian$5.evaluate(Arquillian.java:267)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
> at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:193)
> at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:345)
> at org.jboss.arquillian.junit.Arquillian.access$200(Arquillian.java:49)
> at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:207)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
> at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:155)
> at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
> at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
> at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
> at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
> at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
> at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
> Caused by: java.lang.NullPointerException
> at org.jboss.arquillian.graphene.enricher.WebElementEnricher.enrich(WebElementEnricher.java:68)
> at org.jboss.arquillian.graphene.enricher.AbstractSearchContextEnricher.enrichRecursively(AbstractSearchContextEnricher.java:73)
> at org.jboss.arquillian.graphene.enricher.PageObjectEnricher.setupPage(PageObjectEnricher.java:97)
> at org.jboss.arquillian.graphene.location.LocationEnricher.goTo(LocationEnricher.java:76)
> ... 34 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months
[JBoss JIRA] (ARQ-2014) When warp is on classpath then almost every non-warp arquillian test fails
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQ-2014?page=com.atlassian.jira.plugin.s... ]
Matous Jobanek updated ARQ-2014:
--------------------------------
Summary: When warp is on classpath then almost every non-warp arquillian test fails (was: When warp is on classpath then almost any non-warp arquillian test fails)
> When warp is on classpath then almost every non-warp arquillian test fails
> --------------------------------------------------------------------------
>
> Key: ARQ-2014
> URL: https://issues.jboss.org/browse/ARQ-2014
> Project: Arquillian
> Issue Type: Bug
> Components: Extension - Warp
> Affects Versions: warp_1.0.0.Alpha7
> Reporter: Matous Jobanek
> Assignee: Matous Jobanek
>
> Consider a test suite that contains a warp test (so you need to have the warp dependency on your classpath) and some other non-warp arquillian test. Then the non-warp tests fails with various exceptions depending on the type of the test.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months
[JBoss JIRA] (ARQGRA-483) @Location might use the Wrong URL when used with Warp
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-483?page=com.atlassian.jira.plugin... ]
Matous Jobanek commented on ARQGRA-483:
---------------------------------------
PRs:
https://github.com/arquillian/arquillian-graphene/pull/153
https://github.com/arquillian/arquillian-extension-warp/pull/33
> @Location might use the Wrong URL when used with Warp
> ------------------------------------------------------
>
> Key: ARQGRA-483
> URL: https://issues.jboss.org/browse/ARQGRA-483
> Project: Arquillian Graphene
> Issue Type: Bug
> Components: integration
> Affects Versions: 2.1.0.Alpha2
> Reporter: Aslak Knutsen
> Fix For: 2.1-Tracking
>
>
> Both Graphene and Warp attempt to override the default Core URLResourceProvider.
> Warp has the ProxyURLProvider and Graphene the CustomizableURLResourceProvider.
> When both Graphene and Warp is on classpath it becomes unpredictable who will actually win.
> Technically the two URLs used here could be different:
> {code}
> @ArquillianResource
> private URL baseURL;
>
> @Test @RunAsClient
> public void shouldBeAbleToStoreConference(@InitialPage ConferencePage page) throws Exception {
> }
> {code}
> BaseURL could be proxied and the URL used by InitialPage not, or the other way around.
> Graphene sets up it's ContextRootStore with which ever URL was provided last;
> https://github.com/arquillian/arquillian-graphene/blob/master/impl/src/ma...
> Core will do the opposite, which ever comes first.
> When Graphene resolves the 'non-proxied' URL, Warp will eventually time out waiting for a reply as it never got to setup and sync.
> This seems to be a good test case currently:
> {code}
> @Drone
> private WebDriver driver;
>
> @ArquillianResource
> private URL baseURL;
>
> @Test @RunAsClient
> public void shouldBeAbleToStoreConference(@InitialPage ConferencePage page) throws Exception {
> Assert.assertEquals(baseURL.getPort(), new URL(driver.getCurrentUrl()).getPort());
> }
> {code}
> Currently one will show 'proxy-port' and the other '8080'.
> This has to do with the dependency order. If you place Graphene before Warp in the POM then Graphene will work because Warp's ProxyURLProvider is the last provider, if you place Warp before Graphene you should see this issue.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 10 months