[weld-commits] Weld SVN: r6821 - in core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions: injectionTarget and 1 other directories.
weld-commits at lists.jboss.org
weld-commits at lists.jboss.org
Wed Jul 28 07:35:12 EDT 2010
Author: aslak
Date: 2010-07-28 07:35:11 -0400 (Wed, 28 Jul 2010)
New Revision: 6821
Added:
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/injectionTarget/
Modified:
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/injectionTarget/InjectionTargetTest.java
core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/multipleBeans/MultipleBeansExtension.java
Log:
WELD-493 More converted tests
Copied: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/injectionTarget (from rev 6755, core/trunk/tests/src/test/java/org/jboss/weld/tests/extensions/injectionTarget)
Modified: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/injectionTarget/InjectionTargetTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/extensions/injectionTarget/InjectionTargetTest.java 2010-07-22 17:06:40 UTC (rev 6755)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/injectionTarget/InjectionTargetTest.java 2010-07-28 11:35:11 UTC (rev 6821)
@@ -18,54 +18,84 @@
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.inject.spi.Bean;
+import javax.enterprise.inject.spi.Extension;
+import javax.inject.Inject;
-import org.jboss.testharness.impl.packaging.Artifact;
-import org.jboss.testharness.impl.packaging.IntegrationTest;
-import org.jboss.testharness.impl.packaging.Packaging;
-import org.jboss.testharness.impl.packaging.PackagingType;
-import org.jboss.testharness.impl.packaging.jsr299.BeansXml;
-import org.jboss.testharness.impl.packaging.jsr299.Extension;
-import org.jboss.weld.test.AbstractWeldTest;
-import org.testng.annotations.Test;
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.BeanArchive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.spec.EnterpriseArchive;
+import org.jboss.weld.manager.BeanManagerImpl;
+import org.jboss.weld.test.Utils;
+import org.jboss.weld.tests.category.Integration;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
- at Artifact
- at IntegrationTest
- at BeansXml("beans.xml")
- at Packaging(PackagingType.EAR)
- at Extension("javax.enterprise.inject.spi.Extension")
-public class InjectionTargetTest extends AbstractWeldTest
+ at Category(Integration.class)
+ at RunWith(Arquillian.class)
+public class InjectionTargetTest
{
- @Test(description="WELD-557")
+ @Deployment
+ public static Archive<?> deploy()
+ {
+ return ShrinkWrap.create(EnterpriseArchive.class, "test.ear")
+ .addModule(
+ ShrinkWrap.create(BeanArchive.class)
+ .intercept(SecurityInterceptor.class)
+ .decorate(AircraftDecorator.class)
+ .addPackage(InjectionTargetTest.class.getPackage())
+ .addClass(Utils.class)
+ .addServiceProvider(Extension.class, InjectionTargetExtension.class)
+ );
+ }
+
+ @Inject
+ private BeanManagerImpl beanManager;
+
+ /*
+ * description = "WELD-557"
+ */
+ @Test
public void testActualInstanceAndNotProxyPassedToInject()
{
InjectionTargetWrapper.clear();
- Spitfire aircraft = getReference(Spitfire.class);
+ Spitfire aircraft = Utils.getReference(beanManager, Spitfire.class);
aircraft.isFlying();
- assert aircraft.isTheSameInstance(InjectionTargetWrapper.injectInstance);
+ Assert.assertTrue(aircraft.isTheSameInstance(InjectionTargetWrapper.injectInstance));
}
- @Test(description="WELD-557")
+ /*
+ * description = "WELD-557"
+ */
+ @Test
public void testActualInstanceAndNotProxyPassedToPostConstruct()
{
InjectionTargetWrapper.clear();
- Spitfire aircraft = getReference(Spitfire.class);
+ Spitfire aircraft = Utils.getReference(beanManager, Spitfire.class);
aircraft.isFlying();
- assert aircraft.isTheSameInstance(InjectionTargetWrapper.postConstructInstance);
+ Assert.assertTrue(aircraft.isTheSameInstance(InjectionTargetWrapper.postConstructInstance));
}
- @Test(description="WELD-557")
+ /*
+ * description = "WELD-557"
+ */
+ @Test
public void testActualInstanceAndNotProxyPassedToPreDestroy()
{
// prepare instance
InjectionTargetWrapper.clear();
- Bean<Spitfire> bean = getBean(Spitfire.class);
- CreationalContext<Spitfire> ctx = getCurrentManager().createCreationalContext(bean);
- Spitfire aircraft = (Spitfire) getCurrentManager().getReference(bean, Spitfire.class, ctx);
+ Bean<Spitfire> bean = Utils.getBean(beanManager, Spitfire.class);
+ CreationalContext<Spitfire> ctx = beanManager.createCreationalContext(bean);
+ Spitfire aircraft = (Spitfire) beanManager.getReference(bean, Spitfire.class, ctx);
// invoke business method
aircraft.isFlying();
// destroy instance
bean.destroy(aircraft, ctx);
- assert aircraft.isTheSameInstance(InjectionTargetWrapper.preDestroyInstance);
+ Assert.assertTrue(aircraft.isTheSameInstance(InjectionTargetWrapper.preDestroyInstance));
}
}
Modified: core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/multipleBeans/MultipleBeansExtension.java
===================================================================
--- core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/multipleBeans/MultipleBeansExtension.java 2010-07-28 10:18:08 UTC (rev 6820)
+++ core/trunk/tests-arquillian/src/test/java/org/jboss/weld/tests/extensions/multipleBeans/MultipleBeansExtension.java 2010-07-28 11:35:11 UTC (rev 6821)
@@ -21,8 +21,11 @@
import javax.enterprise.event.Observes;
import javax.enterprise.inject.Produces;
+import javax.enterprise.inject.spi.AnnotatedField;
+import javax.enterprise.inject.spi.AnnotatedType;
import javax.enterprise.inject.spi.BeforeBeanDiscovery;
import javax.enterprise.inject.spi.Extension;
+import javax.enterprise.inject.spi.ProcessAnnotatedType;
import javax.enterprise.util.AnnotationLiteral;
import javax.inject.Inject;
@@ -37,6 +40,8 @@
public class MultipleBeansExtension implements Extension
{
+ private boolean addedBlogFormatterSeen = false;
+
public void addNewAnnotatedTypes(@Observes BeforeBeanDiscovery event) throws SecurityException, NoSuchFieldException, NoSuchMethodException
{
TestAnnotatedTypeBuilder<BlogFormatter> formatter = new TestAnnotatedTypeBuilder<BlogFormatter>(BlogFormatter.class);
@@ -61,7 +66,31 @@
event.addAnnotatedType(uselessBuilder.create());
}
+
+ public void observeProcessBlogFormatter(@Observes ProcessAnnotatedType<BlogFormatter> event)
+ {
+ AnnotatedType<BlogFormatter> type = event.getAnnotatedType();
+ for(AnnotatedField<? super BlogFormatter> f : type.getFields())
+ {
+ if(f.getJavaMember().getName().equals("content"))
+ {
+ if(f.isAnnotationPresent(Author.class))
+ {
+ if(f.getAnnotation(Author.class).name().equals("Bob"))
+ {
+ addedBlogFormatterSeen = true;
+ }
+ }
+ }
+ }
+ }
+
+ public boolean isAddedBlogFormatterSeen()
+ {
+ return addedBlogFormatterSeen;
+ }
+
private static class InjectLiteral extends AnnotationLiteral<Inject> implements Inject
{
More information about the weld-commits
mailing list