Author: scabanovich
Date: 2011-08-04 16:47:47 -0400 (Thu, 04 Aug 2011)
New Revision: 33604
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/duplicateName/TestNamed.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/DeploymentProblemsValidationTests.java
Log:
JBIDE-9452
https://issues.jboss.org/browse/JBIDE-9452
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/duplicateName/TestNamed.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/duplicateName/TestNamed.java 2011-08-04
20:15:10 UTC (rev 33603)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/resources/tck/tests/jbt/lookup/duplicateName/TestNamed.java 2011-08-04
20:47:47 UTC (rev 33604)
@@ -6,7 +6,7 @@
public class TestNamed {
- @Inject String s; // OK//
+ @Inject String s; // Ambiguous
@Inject @Named String foo3; // OK
@Inject @Named("foo3") String s1; // OK
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/DeploymentProblemsValidationTests.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/DeploymentProblemsValidationTests.java 2011-08-04
20:15:10 UTC (rev 33603)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/DeploymentProblemsValidationTests.java 2011-08-04
20:47:47 UTC (rev 33604)
@@ -12,8 +12,16 @@
package org.jboss.tools.cdi.core.test.tck.validation;
import java.text.MessageFormat;
+import java.util.HashSet;
+import java.util.Set;
import org.eclipse.core.resources.IFile;
+import org.jboss.tools.cdi.core.IBean;
+import org.jboss.tools.cdi.core.IClassBean;
+import org.jboss.tools.cdi.core.IInjectionPointField;
+import org.jboss.tools.cdi.core.IInjectionPointParameter;
+import org.jboss.tools.cdi.core.IProducerField;
+import org.jboss.tools.cdi.core.IProducerMethod;
import org.jboss.tools.cdi.internal.core.validation.CDIValidationMessages;
import org.jboss.tools.tests.AbstractResourceMarkerTest;
@@ -50,8 +58,28 @@
}
public void testAmbiguousDependencyWithNamed() throws Exception {
- IFile file =
tckProject.getFile("JavaSource/org/jboss/jsr299/tck/tests/jbt/lookup/duplicateName/TestNamed.java");
+ String path =
"JavaSource/org/jboss/jsr299/tck/tests/jbt/lookup/duplicateName/TestNamed.java";
+ IFile file = tckProject.getFile(path);
AbstractResourceMarkerTest.assertMarkerIsCreated(file,
CDIValidationMessages.AMBIGUOUS_INJECTION_POINTS, 9, 25, 26);
+
+ IInjectionPointField p = getInjectionPointField(path, "s5");
+ Set<IBean> bs = cdiProject.getBeans(false, p);
+ assertEquals(4, bs.size());
+
+ Set<String> keys = new HashSet<String>();
+ for(IBean b: bs) {
+ keys.add(b.getSimpleJavaName());
+ }
+ assertTrue(keys.contains("TestNamed.foo4"));
+ assertTrue(keys.contains("TestNamed.foo4()"));
+ assertTrue(keys.contains("TestNamed.foo5()"));
+ assertTrue(keys.contains("TestNamed.foo6()"));
+
+ IInjectionPointParameter pp = getInjectionPointParameter(path, "doSmth");
+ Set<IBean> bs2 = cdiProject.getBeans(false, pp);
+ assertEquals(4, bs2.size());
+ bs2.removeAll(bs);
+ assertTrue(bs2.isEmpty());
}
/**