You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by st...@apache.org on 2010/01/12 17:51:45 UTC
svn commit: r898416 -
/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java
Author: struberg
Date: Tue Jan 12 16:51:45 2010
New Revision: 898416
URL: http://svn.apache.org/viewvc?rev=898416&view=rev
Log:
OWB-226 add a way to add CDI Extensions for a unit test
Modified:
openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java
Modified: openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java?rev=898416&r1=898415&r2=898416&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java Tue Jan 12 16:51:45 2010
@@ -14,18 +14,23 @@
package org.apache.webbeans.newtests;
import java.net.URL;
+import java.util.ArrayList;
import java.util.Collection;
+import java.util.List;
import javax.enterprise.inject.spi.BeanManager;
+import javax.enterprise.inject.spi.Extension;
import org.apache.webbeans.lifecycle.test.OpenWebBeansTestLifeCycle;
import org.apache.webbeans.lifecycle.test.OpenWebBeansTestMetaDataDiscoveryService;
+import org.apache.webbeans.portable.events.ExtensionLoader;
public abstract class AbstractUnitTest
{
private OpenWebBeansTestLifeCycle testLifecycle;
+ private List<Extension> extensions = new ArrayList<Extension>();
protected AbstractUnitTest()
{
@@ -37,6 +42,11 @@
//Creates a new container
testLifecycle = new OpenWebBeansTestLifeCycle();
+ for (Extension ext : extensions)
+ {
+ ExtensionLoader.getInstance().addExtension(ext);
+ }
+
//Deploy bean classes
OpenWebBeansTestMetaDataDiscoveryService discoveyService = (OpenWebBeansTestMetaDataDiscoveryService)testLifecycle.getDiscoveryService();
discoveyService.deployClasses(beanClasses);
@@ -91,4 +101,14 @@
return loader.getResource(prefix.toString());
}
+ /**
+ * Add a CDI Extension which should get used in the test case.
+ * Use this function instead of defining test Extensions via the usual
+ * META-INF/services/javax.enterprise.inject.spi.Extension file!
+ *
+ * @param ext the {@link Extension} which should get loaded
+ */
+ public void addExtension(Extension ext) {
+ this.extensions.add(ext);
+ }
}