[webbeans-commits] Webbeans SVN: r3635 - extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Tue Sep 1 17:07:35 EDT 2009


Author: kabir.khan at jboss.com
Date: 2009-09-01 17:07:35 -0400 (Tue, 01 Sep 2009)
New Revision: 3635

Added:
   extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ABean.java
   extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/DefaultMethodProducerWithInjection.java
Modified:
   extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/CustomBean.java
   extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ExisitingBeanDescriberTest.java
   extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/FieldProducer.java
   extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/MethodProducer.java
Log:
Test method producer with injected parameters

Copied: extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ABean.java (from rev 3633, extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/CustomBean.java)
===================================================================
--- extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ABean.java	                        (rev 0)
+++ extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ABean.java	2009-09-01 21:07:35 UTC (rev 3635)
@@ -0,0 +1,32 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.webbeans.beanutils.existing;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class ABean implements Bean
+{
+
+}

Modified: extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/CustomBean.java
===================================================================
--- extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/CustomBean.java	2009-09-01 19:45:03 UTC (rev 3634)
+++ extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/CustomBean.java	2009-09-01 21:07:35 UTC (rev 3635)
@@ -26,6 +26,7 @@
  * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
  * @version $Revision: 1.1 $
  */
+ at Custom
 public class CustomBean implements Bean
 {
 

Added: extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/DefaultMethodProducerWithInjection.java
===================================================================
--- extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/DefaultMethodProducerWithInjection.java	                        (rev 0)
+++ extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/DefaultMethodProducerWithInjection.java	2009-09-01 21:07:35 UTC (rev 3635)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors. 
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/ 
+package org.jboss.test.webbeans.beanutils.existing;
+
+import javax.enterprise.inject.Default;
+import javax.enterprise.inject.Produces;
+
+/**
+ * 
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class DefaultMethodProducerWithInjection
+{
+   @Produces @Default Bean getBean(@Custom Bean bean)
+   {
+      return bean;
+   }
+}

Modified: extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ExisitingBeanDescriberTest.java
===================================================================
--- extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ExisitingBeanDescriberTest.java	2009-09-01 19:45:03 UTC (rev 3634)
+++ extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/ExisitingBeanDescriberTest.java	2009-09-01 21:07:35 UTC (rev 3635)
@@ -21,7 +21,6 @@
 */ 
 package org.jboss.test.webbeans.beanutils.existing;
 
-import java.util.Map;
 import java.util.Set;
 
 import javax.enterprise.context.spi.CreationalContext;
@@ -30,12 +29,8 @@
 
 import org.jboss.test.webbeans.beanutils.AbstractBeanUtilsTest;
 import org.jboss.test.webbeans.beanutils.RegisterBeansObserver;
-import org.jboss.webbeans.BeanManagerImpl;
-import org.jboss.webbeans.CurrentManager;
 import org.jboss.webbeans.beanutils.spi.Beans;
 import org.jboss.webbeans.beanutils.spi.ExistingBeanDescriber;
-import org.jboss.webbeans.bootstrap.BeanDeployerEnvironment;
-import org.jboss.webbeans.bootstrap.spi.BeanDeploymentArchive;
 import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
 
@@ -59,7 +54,7 @@
       {
          initialiseEnvironment(DefaultFieldReceiver.class);
          DefaultBean bean = new DefaultBean();
-         registerBeans(bean);
+         registerBean(bean);
          deployWebBeans();
 
          DefaultFieldReceiver receiver = assertBean(DefaultFieldReceiver.class);
@@ -79,7 +74,7 @@
       {
          initialiseEnvironment(DefaultConstructorReceiver.class);
          DefaultBean bean = new DefaultBean();
-         registerBeans(bean);
+         registerBean(bean);
          deployWebBeans();
 
          DefaultConstructorReceiver receiver = assertBean(DefaultConstructorReceiver.class);
@@ -99,7 +94,7 @@
       {
          initialiseEnvironment(CustomDefaultFieldReceiver.class);
          MethodProducer bean = new MethodProducer();
-         registerBeans(bean);
+         registerBean(bean);
          deployWebBeans();
 
          CustomDefaultFieldReceiver receiver = assertBean(CustomDefaultFieldReceiver.class);
@@ -121,7 +116,7 @@
       {
          initialiseEnvironment(CustomDefaultConstructorReceiver.class);
          MethodProducer bean = new MethodProducer();
-         registerBeans(bean);
+         registerBean(bean);
          deployWebBeans();
 
          CustomDefaultConstructorReceiver receiver = assertBean(CustomDefaultConstructorReceiver.class);
@@ -143,7 +138,7 @@
       {
          initialiseEnvironment(CustomDefaultFieldReceiver.class);
          FieldProducer bean = new FieldProducer();
-         registerBeans(bean);
+         registerBean(bean);
          deployWebBeans();
 
          CustomDefaultFieldReceiver receiver = assertBean(CustomDefaultFieldReceiver.class);
@@ -165,7 +160,7 @@
       {
          initialiseEnvironment(CustomDefaultConstructorReceiver.class);
          FieldProducer bean = new FieldProducer();
-         registerBeans(bean);
+         registerBean(bean);
          deployWebBeans();
 
          CustomDefaultConstructorReceiver receiver = assertBean(CustomDefaultConstructorReceiver.class);
@@ -180,8 +175,32 @@
       }
    }
    
-   private <T> void registerBeans(T instance) throws Exception
+   @Test
+   public void testMethodProducerWithInjection() throws Exception
    {
+      try
+      {
+         initialiseEnvironment(CustomDefaultConstructorReceiver.class);
+         DefaultMethodProducerWithInjection producer = new DefaultMethodProducerWithInjection();
+         registerBean(producer);
+         CustomBean bean = new CustomBean();
+         registerBean(bean);
+         deployWebBeans();
+
+         CustomDefaultConstructorReceiver receiver = assertBean(CustomDefaultConstructorReceiver.class);
+         assert receiver.getDefaultBean() != null;
+         assert receiver.getDefaultBean() == bean;
+         assert receiver.getCustomBean() != null;
+         assert receiver.getCustomBean() == bean;
+      }
+      finally
+      {
+         undeployWebBeans();
+      }
+   }
+   
+   private <T> void registerBean(T instance) throws Exception
+   {
       AnnotatedType<T> type = getCurrentManager().createAnnotatedType((Class<T>)instance.getClass());
       Beans<T> beans = ExistingBeanDescriber.describePreinstantiatedBean(type, getBeanDeployerEnvironment(), getCurrentManager(), instance);
       RegisterBeansObserver.addBeans(beans);

Modified: extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/FieldProducer.java
===================================================================
--- extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/FieldProducer.java	2009-09-01 19:45:03 UTC (rev 3634)
+++ extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/FieldProducer.java	2009-09-01 21:07:35 UTC (rev 3635)
@@ -33,7 +33,7 @@
 {
    @Produces @Default Bean defaultBean = new DefaultBean();
    
-   @Produces @Custom Bean customBean = new CustomBean();
+   @Produces @Custom Bean customBean = new ABean();
    
    public Bean getDefaultBean()
    {

Modified: extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/MethodProducer.java
===================================================================
--- extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/MethodProducer.java	2009-09-01 19:45:03 UTC (rev 3634)
+++ extensions/trunk/bean-utils/src/test/java/org/jboss/test/webbeans/beanutils/existing/MethodProducer.java	2009-09-01 21:07:35 UTC (rev 3635)
@@ -33,7 +33,7 @@
 {
    Bean defaultBean = new DefaultBean();
    
-   Bean customBean = new CustomBean();
+   Bean customBean = new ABean();
    
    @Produces @Default
    public Bean getDefaultBean()




More information about the weld-commits mailing list