[JBoss JIRA] (ARQ-1255) Multiple deployments is not working in Weld SE container
by Karel Piwko (JIRA)
[ https://issues.jboss.org/browse/ARQ-1255?page=com.atlassian.jira.plugin.s... ]
Karel Piwko commented on ARQ-1255:
----------------------------------
Antonin, thanks for detailed CDI specification wrap-up. I think that Arquillian use case differs a bit, as in @OperateOnDeployment annotated method there should not be two bean eligible for injection, because second deployment should not be visible for injection.
I think that for purposes of testing, we need to allow @OperateOnDeployment for fields as well. It would enhance all @ArquillianResource, @Inject, etc. [~aslak], any strong opinion on this?
> Multiple deployments is not working in Weld SE container
> --------------------------------------------------------
>
> Key: ARQ-1255
> URL: https://issues.jboss.org/browse/ARQ-1255
> Project: Arquillian
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: Weld Containers
> Affects Versions: 1.0.0.CR5
> Reporter: Antonin Stefanutti
> Attachments: Bean1.java, Bean2.java, MultipleDeploymentArquilianCdiTest.java, OperateOnDeploymentArquilianCdiTest.java, pom.xml, test_case_1_stacktrace.txt, test_case_2_stacktrace.txt
>
>
> As described in [Multiple Deployments|https://docs.jboss.org/author/display/ARQ/Multiple+Deployments], multiple {{@Deployment}} annotated methods can be declared in a test class. In addition, the {{@OperateOnDeployment}} annotation enables the selection of a particular _deployment_ per test method.
> However, when using Arquillian with a Weld SE container, the CDI container isn't deployed with the expected archives which ends up having {{DeploymentException}} thrown, as illustrated in the test cases below:
> *Test case 1:*
> {code}
> @RunWith(Arquillian.class)
> public class MultipleDeploymentArquilianCdiTest {
> @Inject
> private Bean1 bean1;
> @Inject
> private Bean2 bean2;
> @Deployment(name = "bean1-jar")
> public static Archive<?> createBean1Jar() {
> return ShrinkWrap.create(JavaArchive.class).addClass(Bean1.class).addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
> }
> @Deployment(name = "bean2-jar")
> public static Archive<?> createBean2Jar() {
> return ShrinkWrap.create(JavaArchive.class).addClass(Bean2.class).addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
> }
> @Test
> public void multiDeploymentTest() {
> assertNotNull(bean1);
> assertNotNull(bean2);
> }
> }
> {code}
> *Test case 2:*
> {code}
> @RunWith(Arquillian.class)
> public class OperateOnDeploymentArquilianCdiTest {
> @Inject
> private Bean1 bean1;
> @Inject
> private Bean2 bean2;
> @Deployment(name = "beans-jar")
> public static Archive<?> createBeansJar() {
> return ShrinkWrap.create(JavaArchive.class).addClass(Bean1.class).addClass(Bean2.class).addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
> }
> @Deployment(name = "bean1-jar")
> public static Archive<?> createBean1Jar() {
> return ShrinkWrap.create(JavaArchive.class).addClass(Bean1.class).addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
> }
> @Deployment(name = "bean2-jar")
> public static Archive<?> createBean2Jar() {
> return ShrinkWrap.create(JavaArchive.class).addClass(Bean2.class).addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
> }
> @Test
> @OperateOnDeployment("beans-jar")
> public void singleDeploymentTest() {
> assertNotNull(bean1);
> assertNotNull(bean2);
> }
> }
> {code}
> In both cases, the following exception is thrown:
> {code}
> org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [Bean2] with qualifiers [@Default] at injection point [[field] @Inject private arquillian.test.OperateOnDeploymentArquilianCdiTest.bean2]
> {code}
> Note that test case 2 is working when only {{@Deployment(name = "beans-jar")}} is declared.
> Test classes and the {{pom.xml}} are attached.
--
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
11 years, 11 months
[JBoss JIRA] (ARQ-1274) @EJB#lookup() support in EJBInjectionEnricher
by Martin Kouba (JIRA)
Martin Kouba created ARQ-1274:
---------------------------------
Summary: @EJB#lookup() support in EJBInjectionEnricher
Key: ARQ-1274
URL: https://issues.jboss.org/browse/ARQ-1274
Project: Arquillian
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Reporter: Martin Kouba
No doubt the {{EJBInjectionEnricher}} deserves a major refactoring (ARQ-77, ARQ-836, ...). However in the mean time we could add {{@EJB#lookup()}} support. The reason is {{EJB#mappedName()}} should not be used in EJB 3.1 (it's product-specific), instead portable JNDI names and {{EJB#lookup()}} should be used.
--
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
11 years, 11 months
[JBoss JIRA] (ARQGRA-256) Graphene RemoteWebDriver doesn't support augmentation properly
by Karel Piwko (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-256?page=com.atlassian.jira.plugin... ]
Karel Piwko updated ARQGRA-256:
-------------------------------
Component/s: core
> Graphene RemoteWebDriver doesn't support augmentation properly
> --------------------------------------------------------------
>
> Key: ARQGRA-256
> URL: https://issues.jboss.org/browse/ARQGRA-256
> Project: Arquillian Graphene
> Issue Type: Bug
> Components: core
> Environment: Graphene 2.0.0.Alpha3-SNAPSHOT
> Reporter: Ron Šmeral
> Priority: Critical
> Fix For: 2.0.0.Beta1
>
>
> When using a remote WebDriver, trying to take a screenshot as described in [WebDriver documentation|http://seleniumhq.org/docs/04_webdriver_advanced.jsp#taking...]:
> {code:java}
> @Drone
> WebDriver driver;
> ...
> WebDriver augmentedDriver = new Augmenter().augment(driver);
> byte[] screenshot = ((TakesScreenshot) augmentedDriver).getScreenshotAs(OutputType.BYTES);
> {code}
> results in the following exeception:
> {noformat}
> Caused by: java.lang.ClassFormatError: Duplicate method name&signature in class file org/openqa/selenium/remote/RemoteWebDriver$$EnhancerCGLIB$$58fd8af5$$EnhancerByCGLIB$$558c2b50
> {noformat}
> If the augmentation is omitted, the {{TakesScreenshot}} interface can't be found:
> {noformat}
> java.lang.ClassCastException: org.openqa.selenium.remote.RemoteWebDriver$$EnhancerCGLIB$$eda133bb cannot be cast to org.openqa.selenium.TakesScreenshot
> {noformat}
> It seems that the CGLib-enhanced {{RemoteWebDriver}} instance contains the methods of capability providers ({{AddTakesScreenshot}}) but doesn't declare that it implements their corresponding interfaces ({{TakesScreenshot}}).
> Note that taking screenshots works without the augmentation when using a non-remote WebDriver. (When using augmentation it throws the _Duplicate method name&signature_ exception).
--
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
11 years, 11 months
[JBoss JIRA] (ARQGRA-256) Graphene RemoteWebDriver doesn't support augmentation properly
by Karel Piwko (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-256?page=com.atlassian.jira.plugin... ]
Karel Piwko updated ARQGRA-256:
-------------------------------
Affects Version/s: 2.0.0.Alpha3
> Graphene RemoteWebDriver doesn't support augmentation properly
> --------------------------------------------------------------
>
> Key: ARQGRA-256
> URL: https://issues.jboss.org/browse/ARQGRA-256
> Project: Arquillian Graphene
> Issue Type: Bug
> Components: core
> Affects Versions: 2.0.0.Alpha3
> Environment: Graphene 2.0.0.Alpha3-SNAPSHOT
> Reporter: Ron Šmeral
> Priority: Critical
> Fix For: 2.0.0.Beta1
>
>
> When using a remote WebDriver, trying to take a screenshot as described in [WebDriver documentation|http://seleniumhq.org/docs/04_webdriver_advanced.jsp#taking...]:
> {code:java}
> @Drone
> WebDriver driver;
> ...
> WebDriver augmentedDriver = new Augmenter().augment(driver);
> byte[] screenshot = ((TakesScreenshot) augmentedDriver).getScreenshotAs(OutputType.BYTES);
> {code}
> results in the following exeception:
> {noformat}
> Caused by: java.lang.ClassFormatError: Duplicate method name&signature in class file org/openqa/selenium/remote/RemoteWebDriver$$EnhancerCGLIB$$58fd8af5$$EnhancerByCGLIB$$558c2b50
> {noformat}
> If the augmentation is omitted, the {{TakesScreenshot}} interface can't be found:
> {noformat}
> java.lang.ClassCastException: org.openqa.selenium.remote.RemoteWebDriver$$EnhancerCGLIB$$eda133bb cannot be cast to org.openqa.selenium.TakesScreenshot
> {noformat}
> It seems that the CGLib-enhanced {{RemoteWebDriver}} instance contains the methods of capability providers ({{AddTakesScreenshot}}) but doesn't declare that it implements their corresponding interfaces ({{TakesScreenshot}}).
> Note that taking screenshots works without the augmentation when using a non-remote WebDriver. (When using augmentation it throws the _Duplicate method name&signature_ exception).
--
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
11 years, 11 months
[JBoss JIRA] (ARQGRA-251) JQuery selector with HTMLUnit logs an JS error on console
by Lukáš Fryč (JIRA)
[ https://issues.jboss.org/browse/ARQGRA-251?page=com.atlassian.jira.plugin... ]
Lukáš Fryč closed ARQGRA-251.
-----------------------------
> JQuery selector with HTMLUnit logs an JS error on console
> ---------------------------------------------------------
>
> Key: ARQGRA-251
> URL: https://issues.jboss.org/browse/ARQGRA-251
> Project: Arquillian Graphene
> Issue Type: Bug
> Components: core, ftest
> Affects Versions: 2.0.0.Alpha3
> Reporter: Juraj Húska
> Assignee: Juraj Húska
> Priority: Minor
>
> When using {{JQuery}} locators with Graphene and {{HTMLUnit driver}} following error is logged on console:
> {code}
> Jan 07, 2013 1:22:49 PM com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError
> SEVERE: runtimeError: message=[An invalid or illegal selector was specified (selector: '#root:visible' error: Invalid selector: *#root:visible).] sourceName=[injected script] line=[3] lineSource=[null] lineOffset=[0]
> {code}
> The element is however located correctly. Need to find out possible implications and the solution.
--
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
11 years, 11 months