[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