Author: scabanovich
Date: 2011-09-29 20:05:27 -0400 (Thu, 29 Sep 2011)
New Revision: 35186
Added:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyBean3.java
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyImpl.java
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyInterface.java
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/META-INF/seam-beans.xml
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test07/MyBean1.java
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/src/org/jboss/tools/cdi/seam/config/core/test/SeamBeansTest.java
Log:
JBIDE-9795
https://issues.jboss.org/browse/JBIDE-9795
Test added to seam config for virtual field producer with type that is interface.
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/META-INF/seam-beans.xml
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/META-INF/seam-beans.xml 2011-09-29
23:50:02 UTC (rev 35185)
+++
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/META-INF/seam-beans.xml 2011-09-30
00:05:27 UTC (rev 35186)
@@ -155,4 +155,12 @@
</s:value>
</test06:MyType1>
+<!-- Test 06-4 -->
+<test06:MyInterface>
+ <s:Produces/>
+ <s:value>
+ <test06:MyImpl></test06:MyImpl>
+ </s:value>
+</test06:MyInterface>
+
</beans>
\ No newline at end of file
Added:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyBean3.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyBean3.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyBean3.java 2011-09-30
00:05:27 UTC (rev 35186)
@@ -0,0 +1,24 @@
+package org.jboss.beans.test06;
+
+import javax.inject.Inject;
+
+/**
+ * Test 06-4.
+ *
+ * Sources contain simple bean class MyBean3
+ * with injection point of type MyInterface
+ * Seam config xml contains declaration:
+ * <test06:MyInterface>
+ * <s:Produces/>
+ * <s:value>
+ * <test06:MyImpl></test06:MyImpl>
+ * </s:value>
+ * </test06:MyInterface>
+ * ASSERT: Model contains one bean of type MyInterface with qualifier Default.
+ * ASSERT: Injection point field 'i' in MyBean3 is resolved to that bean.
+ */
+public class MyBean3 {
+
+ @Inject MyInterface i;
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyBean3.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyImpl.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyImpl.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyImpl.java 2011-09-30
00:05:27 UTC (rev 35186)
@@ -0,0 +1,5 @@
+package org.jboss.beans.test06;
+
+@MyQualifier("myImpl1")
+public class MyImpl implements MyInterface {
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyImpl.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyInterface.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyInterface.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyInterface.java 2011-09-30
00:05:27 UTC (rev 35186)
@@ -0,0 +1,5 @@
+package org.jboss.beans.test06;
+
+public interface MyInterface {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test06/MyInterface.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test07/MyBean1.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test07/MyBean1.java 2011-09-29
23:50:02 UTC (rev 35185)
+++
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/projects/CDIConfigTest/src/org/jboss/beans/test07/MyBean1.java 2011-09-30
00:05:27 UTC (rev 35186)
@@ -1,4 +1,4 @@
-package org.jboss.beans.test01;
+package org.jboss.beans.test07;
import javax.inject.Named;
/**
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/src/org/jboss/tools/cdi/seam/config/core/test/SeamBeansTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/src/org/jboss/tools/cdi/seam/config/core/test/SeamBeansTest.java 2011-09-29
23:50:02 UTC (rev 35185)
+++
trunk/cdi/tests/org.jboss.tools.cdi.seam.config.core.test/src/org/jboss/tools/cdi/seam/config/core/test/SeamBeansTest.java 2011-09-30
00:05:27 UTC (rev 35186)
@@ -649,8 +649,8 @@
*
* ASSERT: Model contains 1 bean with type MyType1 and qualifier MyQualifier.
* ASSERT: Qualifier has value member equal to "two".
- * ASSERT: Injection point field 'two' in MyBean1 is resolved to that bean.
- * ASSERT: Injection point field 'one' in MyBean1 is resolved to 2 beans.
+ * ASSERT: Injection point field 'two' in MyBean2 is resolved to that bean.
+ * ASSERT: Injection point field 'one' in MyBean2 is resolved to 2 beans.
* ASSERT: One of them is the above-mentioned MyType1 bean.
* ASSERT: The other of them is a bean with type MyType1 InlineBeanQualifier qualifier.
*/
@@ -715,6 +715,29 @@
// assertEquals(inlineIndex1, inlineIndex2);
}
+ public void testVirtualFieldProducerForInterface() {
+ Set<IBean> beans = cdiProject.getBeans(false,
"org.jboss.beans.test06.MyInterface",
+ new String[]{CDIConstants.DEFAULT_QUALIFIER_TYPE_NAME});
+ assertEquals(1, beans.size());
+ IBean b = beans.iterator().next();
+ assertTrue(b instanceof IClassBean); // we keep it as a class bean
+
+ Set<IBean> beans1 = cdiProject.getBeans(false,
"org.jboss.beans.test06.MyBean3", new String[0]);
+ assertEquals(1, beans1.size());
+ IBean b1 = beans1.iterator().next();
+
+ Set<IInjectionPoint> is = b1.getInjectionPoints();
+ assertEquals(1, is.size());
+ IInjectionPoint i = is.iterator().next();
+
+ assertNotNull(i);
+
+ Set<IBean> beansI = cdiProject.getBeans(false, i);
+ assertEquals(1, beansI.size());
+ assertTrue(beansI.contains(b));
+
+ }
+
/**
* Test 06-3.
* Uses sources of tests 06-1 and 06-2.