Author: akazakov
Date: 2011-07-12 21:19:04 -0400 (Tue, 12 Jul 2011)
New Revision: 32878
Added:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/AmbiguousDependencyTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/CircularDependencyTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByNameTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByTypeTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/UnsatisfiedDependencyTest.java
Removed:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/CircularDependencyTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByNameTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByTypeTest.java
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/CDICoreAllTests.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InjectionPointTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InterceptorDefinitionTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/TCKTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/BuilderOrderValidationTest.java
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/IncrementalValidationTest.java
trunk/cdi/tests/org.jboss.tools.cdi.seam.faces.core.test/src/org/jboss/tools/cdi/seam/faces/core/test/SeamFacesValidationTest.java
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/marker/CDIMarkerResolutionTest.java
trunk/jst/plugins/org.jboss.tools.jst.jsp.base.test/src/org/jboss/tools/jst/jsp/test/TestUtil.java
Log:
https://issues.jboss.org/browse/JBIDE-9329
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/CDICoreAllTests.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/CDICoreAllTests.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/CDICoreAllTests.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -23,7 +23,6 @@
import org.jboss.tools.cdi.core.test.tck.BeanDefinitionTest;
import org.jboss.tools.cdi.core.test.tck.BeanSpecializationTest;
import org.jboss.tools.cdi.core.test.tck.BuiltInBeanInjectionTest;
-import org.jboss.tools.cdi.core.test.tck.CircularDependencyTest;
import org.jboss.tools.cdi.core.test.tck.DecoratorDefinitionTest;
import org.jboss.tools.cdi.core.test.tck.DefaultNamedTest;
import org.jboss.tools.cdi.core.test.tck.DynamicLookupTest;
@@ -38,12 +37,15 @@
import org.jboss.tools.cdi.core.test.tck.ProducerMethodDefinitionTest;
import org.jboss.tools.cdi.core.test.tck.QualifierDefinitionTest;
import org.jboss.tools.cdi.core.test.tck.QualifierWithMembersTest;
-import org.jboss.tools.cdi.core.test.tck.ResolutionByNameTest;
-import org.jboss.tools.cdi.core.test.tck.ResolutionByTypeTest;
import org.jboss.tools.cdi.core.test.tck.ScopeDefinitionTest;
import org.jboss.tools.cdi.core.test.tck.SelectedAlternativeTest;
import org.jboss.tools.cdi.core.test.tck.StereotypeDefinitionTest;
import org.jboss.tools.cdi.core.test.tck.StereotypeInheritenceTest;
+import org.jboss.tools.cdi.core.test.tck.lookup.AmbiguousDependencyTest;
+import org.jboss.tools.cdi.core.test.tck.lookup.CircularDependencyTest;
+import org.jboss.tools.cdi.core.test.tck.lookup.ResolutionByNameTest;
+import org.jboss.tools.cdi.core.test.tck.lookup.ResolutionByTypeTest;
+import org.jboss.tools.cdi.core.test.tck.lookup.UnsatisfiedDependencyTest;
import org.jboss.tools.cdi.core.test.tck.validation.AnnotationsValidationTest;
import org.jboss.tools.cdi.core.test.tck.validation.BeansXmlValidationTest;
import org.jboss.tools.cdi.core.test.tck.validation.BuilderOrderValidationTest;
@@ -94,6 +96,8 @@
suite.addTestSuite(BeansXmlCATest.class);
suite.addTestSuite(SelectedAlternativeTest.class);
suite.addTestSuite(CircularDependencyTest.class);
+ suite.addTestSuite(AmbiguousDependencyTest.class);
+ suite.addTestSuite(UnsatisfiedDependencyTest.class);
// Validation tests
suite.addTestSuite(DefenitionErrorsValidationTest.class);
Deleted:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/CircularDependencyTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/CircularDependencyTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/CircularDependencyTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at
http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.cdi.core.test.tck;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.jboss.tools.cdi.core.IBean;
-import org.jboss.tools.cdi.core.IClassBean;
-import org.jboss.tools.cdi.core.IInjectionPoint;
-import org.jboss.tools.cdi.core.IInjectionPointParameter;
-import org.jboss.tools.cdi.core.IProducerMethod;
-
-/**
- * @author Alexey Kazakov
- */
-public class CircularDependencyTest extends TCKTest {
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testCircularInjectionOnTwoNormalBeans() throws CoreException {
- assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Pig",
"org.jboss.jsr299.tck.tests.lookup.circular.Food");
- assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Food",
"org.jboss.jsr299.tck.tests.lookup.circular.Pig");
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testCircularInjectionOnOneNormalAndOneDependentBean() throws CoreException
{
- assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Car",
"org.jboss.jsr299.tck.tests.lookup.circular.Petrol");
- assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Petrol",
"org.jboss.jsr299.tck.tests.lookup.circular.Car");
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testNormalProducerMethodDeclaredOnNormalBeanWhichInjectsProducedBean()
throws CoreException {
- assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass("org.jboss.jsr299.tck.tests.lookup.circular.NormalSelfConsumingNormalProducer");
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testNormalProducerMethodDeclaredOnDependentBeanWhichInjectsProducedBean()
throws CoreException {
- assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass("org.jboss.jsr299.tck.tests.lookup.circular.DependentSelfConsumingNormalProducer");
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testDependentProducerMethodDeclaredOnNormalBeanWhichInjectsProducedBean()
throws CoreException {
- assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass("org.jboss.jsr299.tck.tests.lookup.circular.NormalSelfConsumingDependentProducer");
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testNormalSelfConsumingProducer() throws CoreException {
- assertEquals(1,
getBeans("org.jboss.jsr299.tck.tests.lookup.circular.Violation").size());
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testNormalCircularConstructors() throws CoreException {
- assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Bird",
"org.jboss.jsr299.tck.tests.lookup.circular.Air");
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testNormalAndDependentCircularConstructors() throws CoreException {
- assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Planet",
"org.jboss.jsr299.tck.tests.lookup.circular.Space");
- }
-
- /**
- * section 5 b)
- * @throws CoreException
- */
- public void testSelfConsumingConstructorsOnNormalBean() throws CoreException {
- assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.House",
"org.jboss.jsr299.tck.tests.lookup.circular.House");
- }
-
- public IClassBean getOnlyClassBean(String type) throws CoreException {
- Set<IBean> beans = getBeans(type);
- assertEquals("Wrong number of the beans", 1, beans.size());
- IBean bean = beans.iterator().next();
- assertTrue(bean instanceof IClassBean);
- assertEquals(type, ((IClassBean)bean).getBeanClass().getFullyQualifiedName());
- return (IClassBean)bean;
- }
-
- public void assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean(String
classBeanType, String injectionClassBeanType) throws CoreException {
- IBean bean = getOnlyClassBean(classBeanType);
- Set<IInjectionPoint> points = bean.getInjectionPoints();
- assertEquals("Wrong number of the injections", 1, points.size());
- IInjectionPoint point = points.iterator().next();
- Set<IBean> beans = cdiProject.getBeans(true, point);
- assertEquals("Wrong number of the beans", 1, beans.size());
- bean = beans.iterator().next();
- assertTrue(bean instanceof IClassBean);
- assertEquals(injectionClassBeanType,
((IClassBean)bean).getBeanClass().getFullyQualifiedName());
- }
-
- public void assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass(String
classBeanType) throws CoreException {
- IBean bean = getOnlyClassBean(classBeanType);
- Set<IInjectionPoint> points = bean.getInjectionPoints();
- assertEquals("Wrong number of the injections", 1, points.size());
- IInjectionPoint point = points.iterator().next();
- Set<IBean> beans = cdiProject.getBeans(true, point);
- assertEquals("Wrong number of the beans", 1, beans.size());
- bean = beans.iterator().next();
- assertTrue(bean instanceof IProducerMethod);
- assertEquals(classBeanType,
((IProducerMethod)bean).getBeanClass().getFullyQualifiedName());
- }
-
- public void assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean(String
classBeanType, String injectionClassBeanType) throws CoreException {
- IBean bean = getOnlyClassBean(classBeanType);
- Set<IInjectionPoint> allPoints = bean.getInjectionPoints();
- Set<IInjectionPointParameter> points = new
HashSet<IInjectionPointParameter>();
- for (IInjectionPoint injectionPoint : allPoints) {
- if(injectionPoint instanceof IInjectionPointParameter) {
- points.add((IInjectionPointParameter)injectionPoint);
- }
- }
- assertEquals("Wrong number of the injections", 1, points.size());
- IInjectionPoint point = points.iterator().next();
- Set<IBean> beans = cdiProject.getBeans(true, point);
- assertEquals("Wrong number of the beans", 1, beans.size());
- bean = beans.iterator().next();
- assertTrue(bean instanceof IClassBean);
- assertEquals(injectionClassBeanType,
((IClassBean)bean).getBeanClass().getFullyQualifiedName());
- }
-}
\ No newline at end of file
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InjectionPointTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InjectionPointTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InjectionPointTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -10,10 +10,8 @@
******************************************************************************/
package org.jboss.tools.cdi.core.test.tck;
-import java.util.List;
import java.util.Set;
-import org.eclipse.jdt.core.ITypeParameter;
import org.jboss.tools.cdi.core.CDIUtil;
import org.jboss.tools.cdi.core.IBean;
import org.jboss.tools.cdi.core.IClassBean;
@@ -71,7 +69,7 @@
public void testGetInjections() {
Set<IInjectionPoint> ps =
cdiProject.getInjections("org.jboss.jsr299.tck.tests.lookup.injection.Fox");
assertTrue(!ps.isEmpty());
-
+
ps =
cdiProject.getInjections("org.jboss.jsr299.tck.tests.context.dependent.Tarantula");
assertTrue(!ps.isEmpty());
}
@@ -86,7 +84,5 @@
assertNotNull(injectionPoint);
resolved = cdiProject.getBeans(false, injectionPoint);
assertFalse(resolved.isEmpty());
-
}
-
}
\ No newline at end of file
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InterceptorDefinitionTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InterceptorDefinitionTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/InterceptorDefinitionTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -10,18 +10,14 @@
******************************************************************************/
package org.jboss.tools.cdi.core.test.tck;
-
-
import java.util.HashSet;
import java.util.Set;
-import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jdt.core.IMemberValuePair;
import org.eclipse.jdt.core.JavaModelException;
import org.jboss.tools.cdi.core.IBean;
import org.jboss.tools.cdi.core.IClassBean;
-import org.jboss.tools.cdi.core.IDecorator;
import org.jboss.tools.cdi.core.IInjectionPointField;
import org.jboss.tools.cdi.core.IInterceptor;
import org.jboss.tools.cdi.core.IInterceptorBinding;
@@ -68,40 +64,38 @@
assertEquals("Wrong number of interceptor bindings", 2, bs.size());
assertContainsBindings(bs,
"org.jboss.jsr299.tck.tests.interceptors.definition.inheritance.BindingA",
"org.jboss.jsr299.tck.tests.interceptors.definition.inheritance.BindingC");
assertNotContainsBindings(bs,
"tck.tests.interceptors.definition.inheritance.BindingB");
-
+
Set<IInterceptorBindingDeclaration> ds =
bean.getInterceptorBindingDeclarations(true);
assertEquals("Wrong number of interceptor binding declarations", 2,
ds.size());
assertContainsBindingDeclarationWithValue(ds,
"org.jboss.jsr299.tck.tests.interceptors.definition.inheritance.BindingC",
"c2");
-
+
//Y1 inherits X directly.
beans = getBeans(false,
"org.jboss.jsr299.tck.tests.interceptors.definition.inheritance.Y1");
assertEquals("Wrong number of the beans", 1, beans.size());
bean = (IClassBean)beans.iterator().next();
-
+
bs = bean.getInterceptorBindings();
assertEquals("Wrong number of interceptor bindings", 2, bs.size());
assertContainsBindings(bs,
"org.jboss.jsr299.tck.tests.interceptors.definition.inheritance.BindingA",
"org.jboss.jsr299.tck.tests.interceptors.definition.inheritance.BindingC");
assertNotContainsBindings(bs,
"tck.tests.interceptors.definition.inheritance.BindingB");
-
+
ds = bean.getInterceptorBindingDeclarations(true);
assertEquals("Wrong number of interceptor binding declarations", 2,
ds.size());
assertContainsBindingDeclarationWithValue(ds,
"org.jboss.jsr299.tck.tests.interceptors.definition.inheritance.BindingC",
"c1");
}
public void testStereotypeCanBeInterceptorBinding() throws Exception {
- IFile file =
tckProject.getFile("JavaSource/org/jboss/jsr299/tck/tests/jbt/validation/interceptors/StereotypeAndBinding.java");
IStereotype s =
cdiProject.getStereotype("org.jboss.jsr299.tck.tests.jbt.validation.interceptors.StereotypeAndBinding");
assertNotNull(s);
IInterceptorBinding b =
cdiProject.getInterceptorBinding("org.jboss.jsr299.tck.tests.jbt.validation.interceptors.StereotypeAndBinding");
assertNotNull(b);
-
+
Set<IBean> beans = getBeans(false,
"org.jboss.jsr299.tck.tests.jbt.validation.interceptors.InterceptorWithStereotypeThatIsBinding");
assertEquals("Wrong number of the beans", 1, beans.size());
IBean bean = beans.iterator().next();
assertTrue("The bean should be an interceptor", bean instanceof IClassBean);
IClassBean interceptor = (IClassBean)bean;
assertFalse("The interceptor should inherites interceptor bindings",
interceptor.getInterceptorBindings().isEmpty());
-
}
public void testInterceptorIsNotInjected() throws CoreException {
@@ -153,7 +147,6 @@
}
}
fail("Set of interceptor bindings should include " + className);
-
}
public void testCustomInterceptor() throws CoreException {
@@ -162,5 +155,4 @@
assertNotNull("Can't find the bean.", bean);
assertTrue("The bean is not a decorator.", bean instanceof IInterceptor);
}
-
-}
+}
\ No newline at end of file
Deleted:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByNameTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByNameTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByNameTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at
http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-
-package org.jboss.tools.cdi.core.test.tck;
-
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.jboss.tools.cdi.core.IBean;
-import org.jboss.tools.cdi.internal.core.impl.CDIProject;
-
-/**
- * @author Alexey Kazakov
- */
-public class ResolutionByNameTest extends TCKTest {
-
- /**
- * section 5.3.1 ca),
- * section 11.3.5 aa),
- * section 11.3.5 b)
- *
- * @throws CoreException
- */
- public void testAmbiguousELNamesResolved() throws CoreException {
- // Cod, Plaice and AlaskaPlaice are named "whitefishJBT" - Cod is a
not-enabled policy, AlaskaPlaice specializes Plaice
- Set<IBean> beans = cdiProject.getBeans("whitefishJBT", true);
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.AlaskaPlaice");
-
- IFile f =
tckProject.getFile("/JavaSource/org/jboss/jsr299/tck/tests/lookup/byname/beans.xml");
- assertTrue("File /JavaSource/org/jboss/jsr299/tck/tests/lookup/byname/beans.xml
not found", f != null && f.exists());
-
- IPath old = ((CDIProject)cdiProject).replaceBeanXML(f.getFullPath());
-
- assertTrue("Old beans.xml is not found", old != null);
-
- try {
- beans = cdiProject.getBeans("whitefishJBT", true);
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.AlaskaPlaice");
-
- // Both Salmon and Sole are named "fishJBT" - Sole is an enabled
policy
- beans = cdiProject.getBeans("fishJBT", false);
- assertEquals("Wrong number of the beans", 2, beans.size());
- assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.Salmon",
"org.jboss.jsr299.tck.tests.lookup.byname.Sole");
-
- beans = cdiProject.getBeans("fishJBT", true);
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.Sole");
- } finally {
- old = ((CDIProject)cdiProject).replaceBeanXML(old);
- }
- }
-}
\ No newline at end of file
Deleted:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByTypeTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByTypeTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByTypeTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -1,300 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010 Red Hat, Inc.
- * Distributed under license by Red Hat, Inc. All rights reserved.
- * This program is made available under the terms of the
- * Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at
http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
-package org.jboss.tools.cdi.core.test.tck;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.core.IType;
-import org.jboss.tools.cdi.core.IBean;
-import org.jboss.tools.cdi.core.IClassBean;
-import org.jboss.tools.cdi.core.IInjectionPoint;
-import org.jboss.tools.cdi.core.IInjectionPointField;
-import org.jboss.tools.cdi.core.IProducerField;
-import org.jboss.tools.cdi.core.IProducerMethod;
-import org.jboss.tools.cdi.core.IQualifierDeclaration;
-import org.jboss.tools.common.EclipseUtil;
-import org.jboss.tools.common.java.IParametedType;
-import org.jboss.tools.common.model.util.EclipseJavaUtil;
-
-/**
- * @author Alexey Kazakov
- */
-public class ResolutionByTypeTest extends TCKTest {
-
- /**
- * Section 5.2 - Typesafe resolution
- * lb) Test with beans without required qualifiers.
- *
- * @throws CoreException
- */
- public void testDefaultBindingTypeAssumed() throws CoreException {
- Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tuna");
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertContainsBeanTypes(false, beans.iterator().next(),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tuna");
- }
-
- /**
- * Section 5.2 - Typesafe resolution
- * hc) Check multiple types resolve to a single getBeans().
- *
- * @throws CoreException
- */
- public void testResolveByType() throws CoreException {
- Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tuna",
"javax.enterprise.inject.Default");
- assertEquals("Wrong number of the beans", 1, beans.size());
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Animal",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.FishILike");
- assertEquals("Wrong number of the beans", 3, beans.size());
- assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Salmon",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.SeaBass",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Haddock");
- }
-
- /**
- * Section 5.2 - Typesafe resolution
- * lc) Test with matching beans with matching qualifier with same type.
- *
- * @throws CoreException
- */
- public void testAllQualifiersSpecifiedForResolutionMustAppearOnBean() throws
CoreException {
- Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Animal",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Chunky",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Whitefish");
- assertEquals("Wrong number of the beans", 1, beans.size());
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.ScottishFish",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Whitefish");
- assertEquals("Wrong number of the beans", 2, beans.size());
- assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cod",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Sole");
- }
-
- /**
- * Section 5.2 - Typesafe resolution
- * ka) Test with a parameterized type.
- *
- * @throws CoreException
- */
- public void testResolveByTypeWithTypeParameter() throws CoreException {
- IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.ScottishFishFarmer");
- IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QFarmer<QScottishFish;>;");
- Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[0]);
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.ScottishFishFarmer");
- }
-
- /**
- * Section 5.2 - Typesafe resolution
- * j) Test with an array type.
- *
- * @throws CoreException
- */
- public void testResolveByTypeWithArray() throws CoreException {
- IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.SpiderProducer");
- IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type, "[QSpider;");
- Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[0]);
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertTrue("The bean should be a producer method.", beans.iterator().next()
instanceof IProducerMethod);
- }
-
- /**
- * Section 5.2 - Typesafe resolution
- * i) Test with a primitive type.
- *
- * @throws CoreException
- */
- public void testResolveByTypeWithPrimitives() throws CoreException {
- Set<IBean> beans = getBeans("java.lang.Double",
"javax.enterprise.inject.Any");
- // There is checks for 2 beans (not for 3) in TCK but actually there is one more bean
in another package which matches. So let's check for 3 beans.
- assertEquals("Wrong number of the beans", 3, beans.size());
- IClassBean bean =
getClassBean("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/NumberProducer.java");
- assertNotNull("Bean can't be a null", bean);
- Set<IInjectionPoint> injections = bean.getInjectionPoints();
- assertEquals("Wrong number of the injection points", 2, injections.size());
- for (IInjectionPoint injectionPoint : injections) {
- beans = cdiProject.getBeans(true, injectionPoint);
- assertEquals("Wrong number of the beans", 1, beans.size());
- }
- }
-
- public void testAbstractClassIsNotEligibleForInjection() throws CoreException {
- IClassBean bean =
getClassBean("JavaSource/org/jboss/jsr299/tck/tests/jbt/resolution/chain/CurrentProject.java");
- Set<IInjectionPoint> injections = bean.getInjectionPoints();
- assertEquals("Wrong number of the injection points", 1, injections.size());
- IInjectionPoint injectionPoint = injections.iterator().next();
- assertNotNull(injectionPoint);
- Set<IBean> bs = cdiProject.getBeans(true, injectionPoint);
- assertEquals(2, bs.size());
- Set<String> names = new HashSet<String>();
- System.out.println(bs.size());
- for (IBean b: bs) {
- names.add(b.getSimpleJavaName());
- }
- names.contains("CurrentProject.getCurrent()");
- names.contains("ProjectImpl");
- }
-
- /**
- * Section 5.2 - Typesafe resolution
- * ld) Test with matching beans with matching qualifier with same annotation member
value for each member which is not annotated @javax.enterprise.util.NonBinding.
- *
- * @throws CoreException
- */
- public void testResolveByTypeWithNonBindingMembers() throws CoreException {
- IQualifierDeclaration expensiveQualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/RoundWhitefish.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Expensive");
- IQualifierDeclaration whitefishQualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/RoundWhitefish.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Whitefish");
- IParametedType type =
getType("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Animal");
- Set<IBean> beans = cdiProject.getBeans(true, type, new
IQualifierDeclaration[]{expensiveQualifier, whitefishQualifier});
- assertContainsBeanClasses(beans, new
String[]{"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.RoundWhitefish",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Halibut"});
- }
-
- /**
- * 5.1.4. Inter-module injection
- * i) Check a disabled managed bean is not injectable.
- *
- * @throws CoreException
- */
- public void testPolicyNotAvailableInNonDeploymentArchive() throws CoreException {
- Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Spider");
- assertFalse("Wrong number of the beans", beans.isEmpty());
- assertDoesNotContainBeanClasses(beans, new
String[]{"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.CrabSpider",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.DaddyLongLegs"});
- beans = cdiProject.getBeans("crabSpider", true);
- assertTrue("Wrong nuber of the beans", beans.isEmpty());
- }
-
- /**
- * Section 2.2.2 - Restricting the bean types of a bean
- * a) Check managed bean.
- *
- * @throws CoreException
- */
- public void testBeanTypesOnManagedBean() throws CoreException {
- Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Canary");
- assertEquals("Wrong number of the beans", 1, beans.size());
- IBean bean = beans.iterator().next();
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Bird");
- assertEquals("Wrong number of the beans", 0, beans.size());
- assertContainsBeanTypes(bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Canary",
"java.lang.Object");
- }
-
- /**
- * Section 2.2.2 - Restricting the bean types of a bean
- * e) Check generic managed bean.
- *
- * @throws CoreException
- */
- public void testGenericBeanTypesOnManagedBean() throws CoreException {
- IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Emu");
- IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QFlightlessBird<QAustralian;>;");
- Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[0]);
- assertEquals("Wrong number of the beans", 1, beans.size());
- IBean bean = beans.iterator().next();
-
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Emu");
- assertEquals("Wrong number of the beans", 0, beans.size());
-
- type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Emu");
- parametedType = cdiProject.getNature().getTypeFactory().getParametedType(type,
"QFlightlessBird<QEuropean;>;");
- beans = cdiProject.getBeans(true, parametedType, new IQualifierDeclaration[0]);
- assertEquals("Wrong number of the beans", 0, beans.size());
-
- assertContainsBeanTypes(false, bean, "java.lang.Object");
- assertContainsBeanTypes(false, bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.FlightlessBird");
- assertContainsBeanTypeSignatures(false, bean,
"Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.FlightlessBird<Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Australian;>;");
- }
-
- /**
- * Section 2.2.2 - Restricting the bean types of a bean
- * c) Check producer method.
- *
- * @throws CoreException
- */
- public void testBeanTypesOnProducerMethod() throws CoreException {
- Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Parrot");
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertContainsBeanTypes(beans.iterator().next(),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Parrot",
"java.lang.Object");
-
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Bird");
- assertEquals("Wrong number of the beans", 0, beans.size());
- }
-
- /**
- * Section 2.2.2 - Restricting the bean types of a bean
- * h) Check generic producer field.
- *
- * @throws CoreException
- */
- public void testGenericBeanTypesOnProducerField() throws CoreException {
- IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.PetShop");
- IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QCat<QEuropean;>;");
- IQualifierDeclaration qualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/PetShop.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tame");
- assertNotNull("Can't find the qualifier.", qualifier);
- Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[]{qualifier});
- assertEquals("Wrong number of the beans", 1, beans.size());
- IBean bean = beans.iterator().next();
-
- assertContainsBeanTypes(false, bean, "java.lang.Object");
- assertContainsBeanTypes(false, bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat");
- assertContainsBeanTypeSignatures(false, bean,
"Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat<Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.European;>;");
-
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.DomesticCat",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tame");
- assertEquals("Wrong number of the beans", 0, beans.size());
- }
-
- /**
- * Section 2.2.2 - Restricting the bean types of a bean
- * g) Check generic producer method.
- *
- * @throws CoreException
- */
- public void testGenericBeanTypesOnProducerMethod() throws CoreException {
- IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.PetShop");
- IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QCat<QAfrican;>;");
- IQualifierDeclaration qualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/PetShop.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Wild");
- assertNotNull("Can't find the qualifier.", qualifier);
- Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[]{qualifier});
- assertEquals("Wrong number of the beans", 1, beans.size());
- IBean bean = beans.iterator().next();
-
- assertContainsBeanTypes(false, bean, "java.lang.Object");
- assertContainsBeanTypes(false, bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat");
- assertContainsBeanTypeSignatures(false, bean,
"Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat<Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.African;>;");
-
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Lion",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Wild");
- assertEquals("Wrong number of the beans", 0, beans.size());
- }
-
- /**
- * Section 2.2.2 - Restricting the bean types of a bean
- * d) Check producer field.
- *
- * @throws CoreException
- */
- public void testBeanTypesOnProducerField() throws CoreException {
- Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Dove");
- assertEquals("Wrong number of the beans", 1, beans.size());
- assertContainsBeanTypes(beans.iterator().next(),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Dove",
"java.lang.Object");
-
- beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Bird");
- assertEquals("Wrong number of the beans", 0, beans.size());
- }
-
- public void testInjectionResolutionOfRestrictedProducerField() throws CoreException {
- IInjectionPointField injection =
getInjectionPointField("JavaSource/org/jboss/jsr299/tck/tests/jbt/resolution/Zoo.java",
"cats");
- Set<IBean> beans = cdiProject.getBeans(true, injection);
- assertEquals("Wrong number of the beans", 1, beans.size());
- IBean bean = beans.iterator().next();
- assertTrue(bean instanceof IProducerField);
- }
-
- public void testInjectionResolutionOfRestrictedProducerMethod() throws CoreException {
- IInjectionPointField injection =
getInjectionPointField("JavaSource/org/jboss/jsr299/tck/tests/jbt/resolution/Zoo.java",
"lions");
- Set<IBean> beans = cdiProject.getBeans(true, injection);
- assertEquals("Wrong number of the beans", 1, beans.size());
- IBean bean = beans.iterator().next();
- assertTrue(bean instanceof IProducerMethod);
- }
-
-}
\ No newline at end of file
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/TCKTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/TCKTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/TCKTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -40,6 +40,7 @@
import org.jboss.tools.common.model.util.EclipseJavaUtil;
import org.jboss.tools.common.text.ITextSourceReference;
import org.jboss.tools.common.util.FileUtil;
+import org.jboss.tools.jst.jsp.test.TestUtil;
import org.jboss.tools.jst.web.kb.internal.validation.ValidatorManager;
import org.jboss.tools.test.util.JobUtils;
import org.jboss.tools.test.util.ResourcesUtils;
@@ -76,6 +77,7 @@
if(tckProject==null || !tckProject.exists()) {
ValidatorManager.setStatus(CoreValidationTest.VALIDATION_STATUS);
tckProject = importPreparedProject("/");
+ TestUtil.waitForValidation();
}
} catch (Exception e) {
e.printStackTrace();
Added:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/AmbiguousDependencyTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/AmbiguousDependencyTest.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/AmbiguousDependencyTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.cdi.core.test.tck.lookup;
+
+import java.util.Set;
+
+import org.eclipse.core.runtime.CoreException;
+import org.jboss.tools.cdi.core.IBean;
+import org.jboss.tools.cdi.core.IInjectionPointField;
+import org.jboss.tools.cdi.core.test.tck.TCKTest;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class AmbiguousDependencyTest extends TCKTest {
+
+ /**
+ * section 5.2.1 aa)
+ * @throws CoreException
+ */
+ public void testAmbiguousDependency() throws CoreException {
+ IInjectionPointField injection =
getInjectionPointField("JavaSource/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/broken/ambiguous/Farm_Broken.java",
"animal");
+ Set<IBean> beans = cdiProject.getBeans(true, injection);
+ assertTrue(beans.size()>1);
+ }
+}
\ No newline at end of file
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/AmbiguousDependencyTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Copied:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/CircularDependencyTest.java
(from rev 32872,
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/CircularDependencyTest.java)
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/CircularDependencyTest.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/CircularDependencyTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -0,0 +1,153 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.cdi.core.test.tck.lookup;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.core.runtime.CoreException;
+import org.jboss.tools.cdi.core.IBean;
+import org.jboss.tools.cdi.core.IClassBean;
+import org.jboss.tools.cdi.core.IInjectionPoint;
+import org.jboss.tools.cdi.core.IInjectionPointParameter;
+import org.jboss.tools.cdi.core.IProducerMethod;
+import org.jboss.tools.cdi.core.test.tck.TCKTest;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class CircularDependencyTest extends TCKTest {
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testCircularInjectionOnTwoNormalBeans() throws CoreException {
+ assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Pig",
"org.jboss.jsr299.tck.tests.lookup.circular.Food");
+ assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Food",
"org.jboss.jsr299.tck.tests.lookup.circular.Pig");
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testCircularInjectionOnOneNormalAndOneDependentBean() throws CoreException
{
+ assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Car",
"org.jboss.jsr299.tck.tests.lookup.circular.Petrol");
+ assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Petrol",
"org.jboss.jsr299.tck.tests.lookup.circular.Car");
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testNormalProducerMethodDeclaredOnNormalBeanWhichInjectsProducedBean()
throws CoreException {
+ assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass("org.jboss.jsr299.tck.tests.lookup.circular.NormalSelfConsumingNormalProducer");
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testNormalProducerMethodDeclaredOnDependentBeanWhichInjectsProducedBean()
throws CoreException {
+ assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass("org.jboss.jsr299.tck.tests.lookup.circular.DependentSelfConsumingNormalProducer");
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testDependentProducerMethodDeclaredOnNormalBeanWhichInjectsProducedBean()
throws CoreException {
+ assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass("org.jboss.jsr299.tck.tests.lookup.circular.NormalSelfConsumingDependentProducer");
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testNormalSelfConsumingProducer() throws CoreException {
+ assertEquals(1,
getBeans("org.jboss.jsr299.tck.tests.lookup.circular.Violation").size());
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testNormalCircularConstructors() throws CoreException {
+ assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Bird",
"org.jboss.jsr299.tck.tests.lookup.circular.Air");
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testNormalAndDependentCircularConstructors() throws CoreException {
+ assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.Planet",
"org.jboss.jsr299.tck.tests.lookup.circular.Space");
+ }
+
+ /**
+ * section 5 b)
+ * @throws CoreException
+ */
+ public void testSelfConsumingConstructorsOnNormalBean() throws CoreException {
+ assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean("org.jboss.jsr299.tck.tests.lookup.circular.House",
"org.jboss.jsr299.tck.tests.lookup.circular.House");
+ }
+
+ public IClassBean getOnlyClassBean(String type) throws CoreException {
+ Set<IBean> beans = getBeans(type);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ IBean bean = beans.iterator().next();
+ assertTrue(bean instanceof IClassBean);
+ assertEquals(type, ((IClassBean)bean).getBeanClass().getFullyQualifiedName());
+ return (IClassBean)bean;
+ }
+
+ public void assertOnlyInjectionOfClassBeanReslovedToAnotherClassBean(String
classBeanType, String injectionClassBeanType) throws CoreException {
+ IBean bean = getOnlyClassBean(classBeanType);
+ Set<IInjectionPoint> points = bean.getInjectionPoints();
+ assertEquals("Wrong number of the injections", 1, points.size());
+ IInjectionPoint point = points.iterator().next();
+ Set<IBean> beans = cdiProject.getBeans(true, point);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ bean = beans.iterator().next();
+ assertTrue(bean instanceof IClassBean);
+ assertEquals(injectionClassBeanType,
((IClassBean)bean).getBeanClass().getFullyQualifiedName());
+ }
+
+ public void assertOnlyInjectionOfClassBeanReslovedToProducerMethodOfSameClass(String
classBeanType) throws CoreException {
+ IBean bean = getOnlyClassBean(classBeanType);
+ Set<IInjectionPoint> points = bean.getInjectionPoints();
+ assertEquals("Wrong number of the injections", 1, points.size());
+ IInjectionPoint point = points.iterator().next();
+ Set<IBean> beans = cdiProject.getBeans(true, point);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ bean = beans.iterator().next();
+ assertTrue(bean instanceof IProducerMethod);
+ assertEquals(classBeanType,
((IProducerMethod)bean).getBeanClass().getFullyQualifiedName());
+ }
+
+ public void assertOnlyInjectionConstructorOfClassBeanReslovedToAnotherClassBean(String
classBeanType, String injectionClassBeanType) throws CoreException {
+ IBean bean = getOnlyClassBean(classBeanType);
+ Set<IInjectionPoint> allPoints = bean.getInjectionPoints();
+ Set<IInjectionPointParameter> points = new
HashSet<IInjectionPointParameter>();
+ for (IInjectionPoint injectionPoint : allPoints) {
+ if(injectionPoint instanceof IInjectionPointParameter) {
+ points.add((IInjectionPointParameter)injectionPoint);
+ }
+ }
+ assertEquals("Wrong number of the injections", 1, points.size());
+ IInjectionPoint point = points.iterator().next();
+ Set<IBean> beans = cdiProject.getBeans(true, point);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ bean = beans.iterator().next();
+ assertTrue(bean instanceof IClassBean);
+ assertEquals(injectionClassBeanType,
((IClassBean)bean).getBeanClass().getFullyQualifiedName());
+ }
+}
\ No newline at end of file
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/CircularDependencyTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Copied:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByNameTest.java
(from rev 32870,
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByNameTest.java)
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByNameTest.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByNameTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+
+package org.jboss.tools.cdi.core.test.tck.lookup;
+
+import java.util.Set;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.jboss.tools.cdi.core.IBean;
+import org.jboss.tools.cdi.core.test.tck.TCKTest;
+import org.jboss.tools.cdi.internal.core.impl.CDIProject;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class ResolutionByNameTest extends TCKTest {
+
+ /**
+ * section 5.3.1 ca),
+ * section 11.3.5 aa),
+ * section 11.3.5 b)
+ *
+ * @throws CoreException
+ */
+ public void testAmbiguousELNamesResolved() throws CoreException {
+ // Cod, Plaice and AlaskaPlaice are named "whitefishJBT" - Cod is a
not-enabled policy, AlaskaPlaice specializes Plaice
+ Set<IBean> beans = cdiProject.getBeans("whitefishJBT", true);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.AlaskaPlaice");
+
+ IFile f =
tckProject.getFile("/JavaSource/org/jboss/jsr299/tck/tests/lookup/byname/beans.xml");
+ assertTrue("File /JavaSource/org/jboss/jsr299/tck/tests/lookup/byname/beans.xml
not found", f != null && f.exists());
+
+ IPath old = ((CDIProject)cdiProject).replaceBeanXML(f.getFullPath());
+
+ assertTrue("Old beans.xml is not found", old != null);
+
+ try {
+ beans = cdiProject.getBeans("whitefishJBT", true);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.AlaskaPlaice");
+
+ // Both Salmon and Sole are named "fishJBT" - Sole is an enabled
policy
+ beans = cdiProject.getBeans("fishJBT", false);
+ assertEquals("Wrong number of the beans", 2, beans.size());
+ assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.Salmon",
"org.jboss.jsr299.tck.tests.lookup.byname.Sole");
+
+ beans = cdiProject.getBeans("fishJBT", true);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertContainsBeanClass(beans,
"org.jboss.jsr299.tck.tests.lookup.byname.Sole");
+ } finally {
+ old = ((CDIProject)cdiProject).replaceBeanXML(old);
+ }
+ }
+}
\ No newline at end of file
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByNameTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Copied:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByTypeTest.java
(from rev 32870,
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ResolutionByTypeTest.java)
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByTypeTest.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByTypeTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -0,0 +1,301 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.cdi.core.test.tck.lookup;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jdt.core.IType;
+import org.jboss.tools.cdi.core.IBean;
+import org.jboss.tools.cdi.core.IClassBean;
+import org.jboss.tools.cdi.core.IInjectionPoint;
+import org.jboss.tools.cdi.core.IInjectionPointField;
+import org.jboss.tools.cdi.core.IProducerField;
+import org.jboss.tools.cdi.core.IProducerMethod;
+import org.jboss.tools.cdi.core.IQualifierDeclaration;
+import org.jboss.tools.cdi.core.test.tck.TCKTest;
+import org.jboss.tools.common.EclipseUtil;
+import org.jboss.tools.common.java.IParametedType;
+import org.jboss.tools.common.model.util.EclipseJavaUtil;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class ResolutionByTypeTest extends TCKTest {
+
+ /**
+ * Section 5.2 - Typesafe resolution
+ * lb) Test with beans without required qualifiers.
+ *
+ * @throws CoreException
+ */
+ public void testDefaultBindingTypeAssumed() throws CoreException {
+ Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tuna");
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertContainsBeanTypes(false, beans.iterator().next(),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tuna");
+ }
+
+ /**
+ * Section 5.2 - Typesafe resolution
+ * hc) Check multiple types resolve to a single getBeans().
+ *
+ * @throws CoreException
+ */
+ public void testResolveByType() throws CoreException {
+ Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tuna",
"javax.enterprise.inject.Default");
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Animal",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.FishILike");
+ assertEquals("Wrong number of the beans", 3, beans.size());
+ assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Salmon",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.SeaBass",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Haddock");
+ }
+
+ /**
+ * Section 5.2 - Typesafe resolution
+ * lc) Test with matching beans with matching qualifier with same type.
+ *
+ * @throws CoreException
+ */
+ public void testAllQualifiersSpecifiedForResolutionMustAppearOnBean() throws
CoreException {
+ Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Animal",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Chunky",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Whitefish");
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.ScottishFish",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Whitefish");
+ assertEquals("Wrong number of the beans", 2, beans.size());
+ assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cod",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Sole");
+ }
+
+ /**
+ * Section 5.2 - Typesafe resolution
+ * ka) Test with a parameterized type.
+ *
+ * @throws CoreException
+ */
+ public void testResolveByTypeWithTypeParameter() throws CoreException {
+ IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.ScottishFishFarmer");
+ IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QFarmer<QScottishFish;>;");
+ Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[0]);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertContainsBeanClasses(beans,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.ScottishFishFarmer");
+ }
+
+ /**
+ * Section 5.2 - Typesafe resolution
+ * j) Test with an array type.
+ *
+ * @throws CoreException
+ */
+ public void testResolveByTypeWithArray() throws CoreException {
+ IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.SpiderProducer");
+ IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type, "[QSpider;");
+ Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[0]);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertTrue("The bean should be a producer method.", beans.iterator().next()
instanceof IProducerMethod);
+ }
+
+ /**
+ * Section 5.2 - Typesafe resolution
+ * i) Test with a primitive type.
+ *
+ * @throws CoreException
+ */
+ public void testResolveByTypeWithPrimitives() throws CoreException {
+ Set<IBean> beans = getBeans("java.lang.Double",
"javax.enterprise.inject.Any");
+ // There is checks for 2 beans (not for 3) in TCK but actually there is one more bean
in another package which matches. So let's check for 3 beans.
+ assertEquals("Wrong number of the beans", 3, beans.size());
+ IClassBean bean =
getClassBean("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/NumberProducer.java");
+ assertNotNull("Bean can't be a null", bean);
+ Set<IInjectionPoint> injections = bean.getInjectionPoints();
+ assertEquals("Wrong number of the injection points", 2, injections.size());
+ for (IInjectionPoint injectionPoint : injections) {
+ beans = cdiProject.getBeans(true, injectionPoint);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ }
+ }
+
+ public void testAbstractClassIsNotEligibleForInjection() throws CoreException {
+ IClassBean bean =
getClassBean("JavaSource/org/jboss/jsr299/tck/tests/jbt/resolution/chain/CurrentProject.java");
+ Set<IInjectionPoint> injections = bean.getInjectionPoints();
+ assertEquals("Wrong number of the injection points", 1, injections.size());
+ IInjectionPoint injectionPoint = injections.iterator().next();
+ assertNotNull(injectionPoint);
+ Set<IBean> bs = cdiProject.getBeans(true, injectionPoint);
+ assertEquals(2, bs.size());
+ Set<String> names = new HashSet<String>();
+ System.out.println(bs.size());
+ for (IBean b: bs) {
+ names.add(b.getSimpleJavaName());
+ }
+ names.contains("CurrentProject.getCurrent()");
+ names.contains("ProjectImpl");
+ }
+
+ /**
+ * Section 5.2 - Typesafe resolution
+ * ld) Test with matching beans with matching qualifier with same annotation member
value for each member which is not annotated @javax.enterprise.util.NonBinding.
+ *
+ * @throws CoreException
+ */
+ public void testResolveByTypeWithNonBindingMembers() throws CoreException {
+ IQualifierDeclaration expensiveQualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/RoundWhitefish.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Expensive");
+ IQualifierDeclaration whitefishQualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/RoundWhitefish.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Whitefish");
+ IParametedType type =
getType("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Animal");
+ Set<IBean> beans = cdiProject.getBeans(true, type, new
IQualifierDeclaration[]{expensiveQualifier, whitefishQualifier});
+ assertContainsBeanClasses(beans, new
String[]{"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.RoundWhitefish",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Halibut"});
+ }
+
+ /**
+ * 5.1.4. Inter-module injection
+ * i) Check a disabled managed bean is not injectable.
+ *
+ * @throws CoreException
+ */
+ public void testPolicyNotAvailableInNonDeploymentArchive() throws CoreException {
+ Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Spider");
+ assertFalse("Wrong number of the beans", beans.isEmpty());
+ assertDoesNotContainBeanClasses(beans, new
String[]{"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.CrabSpider",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.DaddyLongLegs"});
+ beans = cdiProject.getBeans("crabSpider", true);
+ assertTrue("Wrong nuber of the beans", beans.isEmpty());
+ }
+
+ /**
+ * Section 2.2.2 - Restricting the bean types of a bean
+ * a) Check managed bean.
+ *
+ * @throws CoreException
+ */
+ public void testBeanTypesOnManagedBean() throws CoreException {
+ Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Canary");
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ IBean bean = beans.iterator().next();
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Bird");
+ assertEquals("Wrong number of the beans", 0, beans.size());
+ assertContainsBeanTypes(bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Canary",
"java.lang.Object");
+ }
+
+ /**
+ * Section 2.2.2 - Restricting the bean types of a bean
+ * e) Check generic managed bean.
+ *
+ * @throws CoreException
+ */
+ public void testGenericBeanTypesOnManagedBean() throws CoreException {
+ IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Emu");
+ IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QFlightlessBird<QAustralian;>;");
+ Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[0]);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ IBean bean = beans.iterator().next();
+
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Emu");
+ assertEquals("Wrong number of the beans", 0, beans.size());
+
+ type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Emu");
+ parametedType = cdiProject.getNature().getTypeFactory().getParametedType(type,
"QFlightlessBird<QEuropean;>;");
+ beans = cdiProject.getBeans(true, parametedType, new IQualifierDeclaration[0]);
+ assertEquals("Wrong number of the beans", 0, beans.size());
+
+ assertContainsBeanTypes(false, bean, "java.lang.Object");
+ assertContainsBeanTypes(false, bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.FlightlessBird");
+ assertContainsBeanTypeSignatures(false, bean,
"Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.FlightlessBird<Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Australian;>;");
+ }
+
+ /**
+ * Section 2.2.2 - Restricting the bean types of a bean
+ * c) Check producer method.
+ *
+ * @throws CoreException
+ */
+ public void testBeanTypesOnProducerMethod() throws CoreException {
+ Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Parrot");
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertContainsBeanTypes(beans.iterator().next(),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Parrot",
"java.lang.Object");
+
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Bird");
+ assertEquals("Wrong number of the beans", 0, beans.size());
+ }
+
+ /**
+ * Section 2.2.2 - Restricting the bean types of a bean
+ * h) Check generic producer field.
+ *
+ * @throws CoreException
+ */
+ public void testGenericBeanTypesOnProducerField() throws CoreException {
+ IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.PetShop");
+ IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QCat<QEuropean;>;");
+ IQualifierDeclaration qualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/PetShop.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tame");
+ assertNotNull("Can't find the qualifier.", qualifier);
+ Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[]{qualifier});
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ IBean bean = beans.iterator().next();
+
+ assertContainsBeanTypes(false, bean, "java.lang.Object");
+ assertContainsBeanTypes(false, bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat");
+ assertContainsBeanTypeSignatures(false, bean,
"Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat<Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.European;>;");
+
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.DomesticCat",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Tame");
+ assertEquals("Wrong number of the beans", 0, beans.size());
+ }
+
+ /**
+ * Section 2.2.2 - Restricting the bean types of a bean
+ * g) Check generic producer method.
+ *
+ * @throws CoreException
+ */
+ public void testGenericBeanTypesOnProducerMethod() throws CoreException {
+ IType type =
EclipseJavaUtil.findType(EclipseUtil.getJavaProject(cdiProject.getNature().getProject()),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.PetShop");
+ IParametedType parametedType =
cdiProject.getNature().getTypeFactory().getParametedType(type,
"QCat<QAfrican;>;");
+ IQualifierDeclaration qualifier =
getQualifierDeclarationFromClass("JavaSource/org/jboss/jsr299/tck/tests/lookup/typesafe/resolution/PetShop.java",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Wild");
+ assertNotNull("Can't find the qualifier.", qualifier);
+ Set<IBean> beans = cdiProject.getBeans(true, parametedType, new
IQualifierDeclaration[]{qualifier});
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ IBean bean = beans.iterator().next();
+
+ assertContainsBeanTypes(false, bean, "java.lang.Object");
+ assertContainsBeanTypes(false, bean,
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat");
+ assertContainsBeanTypeSignatures(false, bean,
"Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Cat<Lorg.jboss.jsr299.tck.tests.lookup.typesafe.resolution.African;>;");
+
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Lion",
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Wild");
+ assertEquals("Wrong number of the beans", 0, beans.size());
+ }
+
+ /**
+ * Section 2.2.2 - Restricting the bean types of a bean
+ * d) Check producer field.
+ *
+ * @throws CoreException
+ */
+ public void testBeanTypesOnProducerField() throws CoreException {
+ Set<IBean> beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Dove");
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ assertContainsBeanTypes(beans.iterator().next(),
"org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Dove",
"java.lang.Object");
+
+ beans =
getBeans("org.jboss.jsr299.tck.tests.lookup.typesafe.resolution.Bird");
+ assertEquals("Wrong number of the beans", 0, beans.size());
+ }
+
+ public void testInjectionResolutionOfRestrictedProducerField() throws CoreException {
+ IInjectionPointField injection =
getInjectionPointField("JavaSource/org/jboss/jsr299/tck/tests/jbt/resolution/Zoo.java",
"cats");
+ Set<IBean> beans = cdiProject.getBeans(true, injection);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ IBean bean = beans.iterator().next();
+ assertTrue(bean instanceof IProducerField);
+ }
+
+ public void testInjectionResolutionOfRestrictedProducerMethod() throws CoreException {
+ IInjectionPointField injection =
getInjectionPointField("JavaSource/org/jboss/jsr299/tck/tests/jbt/resolution/Zoo.java",
"lions");
+ Set<IBean> beans = cdiProject.getBeans(true, injection);
+ assertEquals("Wrong number of the beans", 1, beans.size());
+ IBean bean = beans.iterator().next();
+ assertTrue(bean instanceof IProducerMethod);
+ }
+
+}
\ No newline at end of file
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/ResolutionByTypeTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/UnsatisfiedDependencyTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/UnsatisfiedDependencyTest.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/UnsatisfiedDependencyTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.cdi.core.test.tck.lookup;
+
+import java.util.Set;
+
+import org.eclipse.core.runtime.CoreException;
+import org.jboss.tools.cdi.core.IBean;
+import org.jboss.tools.cdi.core.IInjectionPointField;
+import org.jboss.tools.cdi.core.test.tck.TCKTest;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class UnsatisfiedDependencyTest extends TCKTest {
+
+ /**
+ * section 5.2.1 aa)
+ * @throws CoreException
+ */
+ public void testUnsatisfiedDependency() throws CoreException {
+ IInjectionPointField injection =
getInjectionPointField("JavaSource/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/broken/unsatisfied/Bean_Broken.java",
"vanilla");
+ Set<IBean> beans = cdiProject.getBeans(true, injection);
+ assertEquals(0, beans.size());
+ }
+}
\ No newline at end of file
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/lookup/UnsatisfiedDependencyTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/BuilderOrderValidationTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/BuilderOrderValidationTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/BuilderOrderValidationTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -59,7 +59,7 @@
ValidatorManager.setStatus(ValidatorManager.RUNNING);
resolution.run(marker);
JobUtils.waitForIdle();
- TestUtil.waitForValidation(project);
+ TestUtil.waitForValidation();
IMarker[] newMarkers = project.findMarkers(markerType, true,
IResource.DEPTH_INFINITE);
assertTrue("Marker resolution did not decrease number of problems. was:
"+markers.length+" now: "+newMarkers.length, newMarkers.length <
markers.length);
return;
@@ -107,12 +107,10 @@
void rebuild() throws CoreException {
ValidatorManager.setStatus(ValidatorManager.RUNNING);
- JobUtils.waitForIdle();
project.build(IncrementalProjectBuilder.CLEAN_BUILD, new NullProgressMonitor());
JobUtils.waitForIdle();
project.build(IncrementalProjectBuilder.FULL_BUILD, new NullProgressMonitor());
- JobUtils.waitForIdle();
- TestUtil.waitForValidation(project);
+ TestUtil.waitForValidation();
}
public void testBuilderOrderResolution() throws CoreException {
@@ -120,5 +118,4 @@
ValidatorManager.ORDER_PROBLEM_MARKER_TYPE,
"org.jboss.tools.jst.web.kb.internal.validation.BuilderOrderResolution");
}
-
-}
+}
\ No newline at end of file
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/IncrementalValidationTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/IncrementalValidationTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/validation/IncrementalValidationTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -77,7 +77,7 @@
ValidatorManager.setStatus("TESTING");
testBean.setContents(testBeanImpl.getContents(), IFile.FORCE, new
NullProgressMonitor());
tckProject.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, new
NullProgressMonitor());
- TestUtil.waitForValidation(tckProject);
+ TestUtil.waitForValidation();
AbstractResourceMarkerTest.assertMarkerIsCreated(testInjection,
CDIValidationMessages.AMBIGUOUS_INJECTION_POINTS, 7);
@@ -86,7 +86,7 @@
ValidatorManager.setStatus("TESTING");
testBeanImpl.setContents(testBean.getContents(), IFile.FORCE, new
NullProgressMonitor());
tckProject.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, new
NullProgressMonitor());
- TestUtil.waitForValidation(tckProject);
+ TestUtil.waitForValidation();
AbstractResourceMarkerTest.assertMarkerIsNotCreated(testInjection,
CDIValidationMessages.AMBIGUOUS_INJECTION_POINTS, 7);
AbstractResourceMarkerTest.assertMarkerIsNotCreated(testInjection,
CDIValidationMessages.UNSATISFIED_INJECTION_POINTS, 7);
@@ -113,7 +113,7 @@
ValidatorManager.setStatus("TESTING ALTERNATIVES 1");
beansXml.setContents(emptyBeansXml.getContents(), IFile.FORCE, new
NullProgressMonitor());
tckProject.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, new
NullProgressMonitor());
- TestUtil.waitForValidation(tckProject);
+ TestUtil.waitForValidation();
AbstractResourceMarkerTest.assertMarkerIsCreated(bean,
CDIValidationMessages.UNSATISFIED_INJECTION_POINTS, 8);
IFile beansXmlWithAlternative =
tckProject.getFile("JavaSource/META-INF/beans.xml.with.alternative");
@@ -121,7 +121,7 @@
ValidatorManager.setStatus("TESTING ALTERNATIVES 2");
beansXml.setContents(beansXmlWithAlternative.getContents(), IFile.FORCE, new
NullProgressMonitor());
tckProject.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, new
NullProgressMonitor());
- TestUtil.waitForValidation(tckProject);
+ TestUtil.waitForValidation();
AbstractResourceMarkerTest.assertMarkerIsNotCreated(bean,
CDIValidationMessages.UNSATISFIED_INJECTION_POINTS, 8);
} finally {
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.seam.faces.core.test/src/org/jboss/tools/cdi/seam/faces/core/test/SeamFacesValidationTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.seam.faces.core.test/src/org/jboss/tools/cdi/seam/faces/core/test/SeamFacesValidationTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.seam.faces.core.test/src/org/jboss/tools/cdi/seam/faces/core/test/SeamFacesValidationTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -39,7 +39,7 @@
if(!project.exists()) {
project = ResourcesUtils.importProject(SeamFacesTestSetup.PLUGIN_ID,
SeamFacesTestSetup.PROJECT_PATH);
}
- TestUtil.waitForValidation(project);
+ TestUtil.waitForValidation();
}
return project;
}
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/marker/CDIMarkerResolutionTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/marker/CDIMarkerResolutionTest.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/marker/CDIMarkerResolutionTest.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -56,7 +56,7 @@
ValidatorManager.setStatus("TESTING");
copyFiles(project, fileNames);
- TestUtil.waitForValidation(project);
+ TestUtil.waitForValidation();
try{
file = project.getFile(fileNames[0]);
@@ -105,7 +105,7 @@
resolution.run(marker);
}
- TestUtil.waitForValidation(project);
+ TestUtil.waitForValidation();
file = project.getFile(fileNames[0]);
IMarker[] newMarkers = file.findMarkers(markerType,
true, IResource.DEPTH_INFINITE);
@@ -124,7 +124,7 @@
fail("Problem marker with id: "+id+" not found");
}finally{
restoreFiles(project, fileNames);
- TestUtil.waitForValidation(project);
+ TestUtil.waitForValidation();
}
}
@@ -388,5 +388,4 @@
CDIValidationErrorManager.NOT_PASSIVATION_CAPABLE_BEAN_ID,
AddSerializableInterfaceMarkerResolution.class);
}
-
-}
+}
\ No newline at end of file
Modified:
trunk/jst/plugins/org.jboss.tools.jst.jsp.base.test/src/org/jboss/tools/jst/jsp/test/TestUtil.java
===================================================================
---
trunk/jst/plugins/org.jboss.tools.jst.jsp.base.test/src/org/jboss/tools/jst/jsp/test/TestUtil.java 2011-07-13
00:38:45 UTC (rev 32877)
+++
trunk/jst/plugins/org.jboss.tools.jst.jsp.base.test/src/org/jboss/tools/jst/jsp/test/TestUtil.java 2011-07-13
01:19:04 UTC (rev 32878)
@@ -1,6 +1,5 @@
package org.jboss.tools.jst.jsp.test;
-import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.jboss.tools.jst.web.kb.internal.validation.ValidatorManager;
import org.jboss.tools.test.util.JobUtils;
@@ -13,10 +12,9 @@
* ValidatorManager.setStatus("Any status but
ValidatorManager.SLEEPING");
* ... // do some work here which will make Eclipse build the project
* TestUtil.waitForValidation(project);
- * @param project
* @throws CoreException
*/
- public static void waitForValidation(IProject project) throws CoreException{
+ public static void waitForValidation() throws CoreException{
JobUtils.waitForIdle();
for (int i = 0; i < 50; i++) {
if(ValidatorManager.getStatus().equals(ValidatorManager.SLEEPING)) {