Author: scabanovich
Date: 2011-04-01 19:34:59 -0400 (Fri, 01 Apr 2011)
New Revision: 30242
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bear.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bee.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Dragonfly.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Flower.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Fly.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lion.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lynx.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/Tiger.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/package-info.java
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/VetoTest.java
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/CDISolderCoreAllTests.java
Log:
JBIDE-3120
https://issues.jboss.org/browse/JBIDE-3120
JBIDE-8196
https://issues.jboss.org/browse/JBIDE-8196
JBIDE-8197
https://issues.jboss.org/browse/JBIDE-8197
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bear.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bear.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bear.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,10 @@
+package org.jboss.requires;
+
+import org.jboss.seam.solder.core.Requires;
+import javax.inject.Named;
+
+(a)Requires("org.jboss.requires.Beehive")
+@Named("bear")
+public class Bear {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bear.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bee.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bee.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bee.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,11 @@
+package org.jboss.requires;
+
+import javax.inject.Named;
+
+import org.jboss.seam.solder.core.Requires;
+
+(a)Requires({"org.jboss.requires.Beehive",
"org.jboss.requires.Flower"})
+@Named("bee")
+public class Bee {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Bee.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Dragonfly.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Dragonfly.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Dragonfly.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,11 @@
+package org.jboss.requires;
+
+import javax.inject.Named;
+
+import org.jboss.seam.solder.core.Requires;
+
+(a)Requires({"org.jboss.requires.Fly", "org.jboss.requires.Flower"})
+@Named("dragonfly")
+public class Dragonfly {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Dragonfly.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Flower.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Flower.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Flower.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,5 @@
+package org.jboss.requires;
+
+public class Flower {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Flower.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Fly.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Fly.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Fly.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,11 @@
+package org.jboss.requires;
+
+import javax.inject.Named;
+
+import org.jboss.seam.solder.core.Requires;
+
+(a)Requires("org.jboss.requires.Flower")
+@Named
+public class Fly {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/requires/Fly.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lion.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lion.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lion.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,11 @@
+package org.jboss.somevetoed;
+
+import javax.inject.Named;
+
+import org.jboss.seam.solder.core.Veto;
+
+@Veto
+@Named("lion")
+public class Lion {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lion.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lynx.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lynx.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lynx.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,8 @@
+package org.jboss.somevetoed;
+
+import javax.inject.Named;
+
+@Named
+public class Lynx {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/somevetoed/Lynx.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/Tiger.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/Tiger.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/Tiger.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,8 @@
+package org.jboss.vetoed;
+
+import javax.inject.Named;
+
+@Named("tiger")
+public class Tiger {
+
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/Tiger.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/package-info.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/package-info.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/package-info.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,5 @@
+@Veto
+package org.jboss.vetoed;
+
+import org.jboss.seam.solder.core.Veto;
+
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/projects/CDISolderTest/src/org/jboss/vetoed/package-info.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/CDISolderCoreAllTests.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/CDISolderCoreAllTests.java 2011-04-01
23:19:39 UTC (rev 30241)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/CDISolderCoreAllTests.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -26,6 +26,7 @@
TestSuite suiteAll = new TestSuite("CDI Solder Core Tests");
suiteAll.addTestSuite(BeanNamingTest.class);
+ suiteAll.addTestSuite(VetoTest.class);
return suiteAll;
}
Added:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/VetoTest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/VetoTest.java
(rev 0)
+++
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/VetoTest.java 2011-04-01
23:34:59 UTC (rev 30242)
@@ -0,0 +1,114 @@
+package org.jboss.tools.cdi.solder.core.test;
+
+
+import java.io.IOException;
+import java.util.Set;
+
+import junit.framework.TestCase;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.jboss.tools.cdi.core.CDIConstants;
+import org.jboss.tools.cdi.core.CDICorePlugin;
+import org.jboss.tools.cdi.core.IAnnotationDeclaration;
+import org.jboss.tools.cdi.core.IBean;
+import org.jboss.tools.cdi.core.ICDIProject;
+import org.jboss.tools.cdi.internal.core.impl.definition.TypeDefinition;
+import org.jboss.tools.test.util.JobUtils;
+import org.jboss.tools.test.util.ResourcesUtils;
+
+/**
+ *
+ * @author Viacheslav Kabanovich
+ *
+ */
+public class VetoTest extends TestCase {
+ protected static String PLUGIN_ID = "org.jboss.tools.cdi.solder.core.test";
+ IProject project = null;
+
+ public VetoTest() {}
+
+ public void setUp() throws Exception {
+ project = ResourcesUtils.importProject(PLUGIN_ID,
"/projects/CDISolderTest");
+ JobUtils.waitForIdle();
+ project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
+ JobUtils.waitForIdle();
+ }
+
+ public void testVeto() throws CoreException, IOException {
+ ICDIProject cdi = CDICorePlugin.getCDIProject(project, true);
+
+ //1. package annotated @Veto; class is not annotated with it
+ TypeDefinition d =
cdi.getNature().getDefinitions().getTypeDefinition("org.jboss.vetoed.Tiger");
+ assertNotNull(d); //Though there exists Java type Tiger
+ IAnnotationDeclaration a = d.getAnnotation(CDIConstants.NAMED_QUALIFIER_TYPE_NAME);
+ assertNotNull(a);
+ Object name = a.getMemberValue(null);
+ assertEquals("tiger", name); //...and it is annotated with
@Named("tiger")
+ Set<IBean> bs = cdi.getBeans("tiger", false);
+ assertTrue(bs.isEmpty()); //...CDI model does not have bean named "tiger"
+ bs = cdi.getBeans(d.getResource().getFullPath());
+ assertTrue(bs.isEmpty()); //...and does not loaded any beans form its resource
+
+ //2. class annotated @Veto
+ d =
cdi.getNature().getDefinitions().getTypeDefinition("org.jboss.somevetoed.Lion");
+ assertNotNull(d); //Though there exists Java type Lion
+ a = d.getAnnotation(CDIConstants.NAMED_QUALIFIER_TYPE_NAME);
+ assertNotNull(a);
+ name = a.getMemberValue(null);
+ assertEquals("lion", name); //...and it is annotated with
@Named("lion")
+ bs = cdi.getBeans("lion", false);
+ assertTrue(bs.isEmpty()); //...CDI model does not have bean named "lion"
+ bs = cdi.getBeans(d.getResource().getFullPath());
+ assertTrue(bs.isEmpty()); //...and does not loaded any beans form its resource
+ }
+
+ public void testRequires() throws CoreException, IOException {
+ ICDIProject cdi = CDICorePlugin.getCDIProject(project, true);
+
+ //1. class annotated @Requires that references single non-available class
+ TypeDefinition d =
cdi.getNature().getDefinitions().getTypeDefinition("org.jboss.requires.Bear");
+ assertNotNull(d); //Though there exists Java type Bear
+ IAnnotationDeclaration a = d.getAnnotation(CDIConstants.NAMED_QUALIFIER_TYPE_NAME);
+ assertNotNull(a);
+ Object name = a.getMemberValue(null);
+ assertEquals("bear", name); //...and it is annotated with
@Named("bear")
+ Set<IBean> bs = cdi.getBeans("bear", false);
+ assertTrue(bs.isEmpty()); //...CDI model does not have bean named "bear"
+ bs = cdi.getBeans(d.getResource().getFullPath());
+ assertTrue(bs.isEmpty()); //...and does not loaded any beans form its resource
+
+ //2. class annotated @Requires that references array of classes some of which are not
available
+ d =
cdi.getNature().getDefinitions().getTypeDefinition("org.jboss.requires.Bee");
+ assertNotNull(d); //Though there exists Java type Bee
+ a = d.getAnnotation(CDIConstants.NAMED_QUALIFIER_TYPE_NAME);
+ assertNotNull(a);
+ name = a.getMemberValue(null);
+ assertEquals("bee", name); //...and it is annotated with
@Named("bee")
+ bs = cdi.getBeans("bee", false);
+ assertTrue(bs.isEmpty()); //...CDI model does not have bean named "bee"
+ bs = cdi.getBeans(d.getResource().getFullPath());
+ assertTrue(bs.isEmpty()); //...and does not loaded any beans form its resource
+
+ //3. class annotated @Requires that references single available class
+ bs = cdi.getBeans("fly", false);
+ assertTrue(!bs.isEmpty()); //...CDI model have a bean named "fly"
+
+ //4. class annotated @Requires that references array of available classes
+ bs = cdi.getBeans("dragonfly", false);
+ assertTrue(!bs.isEmpty()); //...CDI model have a bean named "dragonfly"
+
+ }
+
+ public void tearDown() throws Exception {
+ boolean saveAutoBuild = ResourcesUtils.setBuildAutomatically(false);
+ JobUtils.waitForIdle();
+ project.delete(true, true, null);
+ JobUtils.waitForIdle();
+ ResourcesUtils.setBuildAutomatically(saveAutoBuild);
+ JobUtils.waitForIdle();
+ }
+}
Property changes on:
trunk/cdi/tests/org.jboss.tools.cdi.solder.core.test/src/org/jboss/tools/cdi/solder/core/test/VetoTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain