Author: scabanovich
Date: 2011-08-29 20:23:03 -0400 (Mon, 29 Aug 2011)
New Revision: 34375
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/ObtainsInstanceBean.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/lookup/dynamic/ObtainsInstanceBean.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/DynamicLookupTest.java
Log:
JBIDE-9428
https://issues.jboss.org/browse/JBIDE-9428
Added resolution of Provider<X> injections.
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/ObtainsInstanceBean.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/ObtainsInstanceBean.java 2011-08-30
00:22:01 UTC (rev 34374)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/ObtainsInstanceBean.java 2011-08-30
00:23:03 UTC (rev 34375)
@@ -21,11 +21,14 @@
import javax.enterprise.inject.Any;
import javax.enterprise.inject.Instance;
import javax.inject.Inject;
+import javax.inject.Provider;
class ObtainsInstanceBean {
@Inject @PayBy(CHEQUE) Instance<AsynchronousPaymentProcessor> paymentProcessor;
+ @Inject @PayBy(CHEQUE) Provider<AsynchronousPaymentProcessor>
paymentProcessor2;
@Inject @Any Instance<PaymentProcessor> anyPaymentProcessor;
+ @Inject @Any Provider<PaymentProcessor> anyPaymentProcessor2;
@Inject @Any PaymentProcessor anyPaymentProcessorBroken;
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/lookup/dynamic/ObtainsInstanceBean.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/lookup/dynamic/ObtainsInstanceBean.java 2011-08-30
00:22:01 UTC (rev 34374)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/lookup/dynamic/ObtainsInstanceBean.java 2011-08-30
00:23:03 UTC (rev 34375)
@@ -21,10 +21,12 @@
import javax.enterprise.inject.Any;
import javax.enterprise.inject.Instance;
import javax.inject.Inject;
+import javax.inject.Provider;
class ObtainsInstanceBean
{
@Inject @PayBy(CHEQUE) Instance<AsynchronousPaymentProcessor> paymentProcessor;
+ @Inject @PayBy(CHEQUE) Provider<AsynchronousPaymentProcessor>
paymentProcessor2;
@Inject @Any Instance<PaymentProcessor> anyPaymentProcessor;
public Instance<AsynchronousPaymentProcessor> getPaymentProcessor()
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/DynamicLookupTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/DynamicLookupTest.java 2011-08-30
00:22:01 UTC (rev 34374)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/DynamicLookupTest.java 2011-08-30
00:23:03 UTC (rev 34375)
@@ -33,6 +33,13 @@
assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.dynamic.AdvancedPaymentProcessor");
}
+ public void testObtainsInjectsProvider() throws CoreException {
+ IInjectionPointField injection =
getInjectionPointField("JavaSource/org/jboss/jsr299/tck/tests/lookup/dynamic/ObtainsInstanceBean.java",
"paymentProcessor2");
+ Set<IBean> beans = cdiProject.getBeans(true, injection);
+ assertEquals(1, beans.size());
+ assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.dynamic.AdvancedPaymentProcessor");
+ }
+
/**
* Section 5.6 - Programmatic lookup
* @throws CoreException