[jboss-svn-commits] JBoss Common SVN: r4399 - in arquillian/trunk/containers/weld-embedded: src/main/java/org/jboss/arquillian/weld and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 20 06:15:35 EDT 2010


Author: aslak
Date: 2010-05-20 06:15:34 -0400 (Thu, 20 May 2010)
New Revision: 4399

Added:
   arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/WeldEmbeddedIntegrationTestCase.java
   arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/beans/
   arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/beans/MyBean.java
Removed:
   arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/shrinkwrap/
Modified:
   arquillian/trunk/containers/weld-embedded/pom.xml
   arquillian/trunk/containers/weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java
Log:
ARQ-142 Added integration test


Modified: arquillian/trunk/containers/weld-embedded/pom.xml
===================================================================
--- arquillian/trunk/containers/weld-embedded/pom.xml	2010-05-19 13:35:41 UTC (rev 4398)
+++ arquillian/trunk/containers/weld-embedded/pom.xml	2010-05-20 10:15:34 UTC (rev 4399)
@@ -130,11 +130,19 @@
          <version>1.0</version>
       </dependency>
 
+	<!-- Test dependencies -->
       <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <scope>test</scope>
       </dependency>
+
+      <dependency>
+         <groupId>org.jboss.arquillian</groupId>
+         <artifactId>arquillian-junit</artifactId>
+         <version>${project.version}</version>
+         <scope>test</scope>
+      </dependency>
    </dependencies>
-</project>
 
+</project>
\ No newline at end of file

Modified: arquillian/trunk/containers/weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java
===================================================================
--- arquillian/trunk/containers/weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java	2010-05-19 13:35:41 UTC (rev 4398)
+++ arquillian/trunk/containers/weld-embedded/src/main/java/org/jboss/arquillian/weld/WeldSEContainer.java	2010-05-20 10:15:34 UTC (rev 4399)
@@ -28,7 +28,6 @@
 import org.jboss.arquillian.spi.LifecycleException;
 import org.jboss.arquillian.spi.event.container.BeforeUnDeploy;
 import org.jboss.arquillian.spi.event.suite.After;
-import org.jboss.arquillian.spi.event.suite.AfterClass;
 import org.jboss.arquillian.spi.event.suite.Before;
 import org.jboss.arquillian.spi.event.suite.BeforeClass;
 import org.jboss.arquillian.weld.shrinkwrap.ShrinkWrapClassLoader;
@@ -50,21 +49,38 @@
  */
 public class WeldSEContainer implements DeployableContainer
 {
-   private WeldSEConfiguration configuration;
-   
+   /* (non-Javadoc)
+    * @see org.jboss.arquillian.spi.DeployableContainer#setup(org.jboss.arquillian.spi.Context, org.jboss.arquillian.spi.Configuration)
+    */
    public void setup(Context context, Configuration configuration)
    {
-      this.configuration = configuration.getContainerConfig(WeldSEConfiguration.class);
+      //configuration.getContainerConfig(WeldSEConfiguration.class);
+
+        /*
+         *  TODO: make this work ? these handlers will be fired. 
+         *  Not with the needed ClassContext but with the SuiteContext the event was fired from..  
+         */
+//      context.register(AfterDeploy.class, new SessionLifeCycleController(BeforeUnDeploy.class));
+//      context.register(Before.class, new RequestLifeCycleController(After.class));
    }
    
+   /* (non-Javadoc)
+    * @see org.jboss.arquillian.spi.DeployableContainer#start(org.jboss.arquillian.spi.Context)
+    */
    public void start(Context context) throws LifecycleException
    {
    }
 
+   /* (non-Javadoc)
+    * @see org.jboss.arquillian.spi.DeployableContainer#stop(org.jboss.arquillian.spi.Context)
+    */
    public void stop(Context context) throws LifecycleException
    {
    }
 
+   /* (non-Javadoc)
+    * @see org.jboss.arquillian.spi.DeployableContainer#deploy(org.jboss.arquillian.spi.Context, org.jboss.shrinkwrap.api.Archive)
+    */
    public ContainerMethodExecutor deploy(Context context, final Archive<?> archive)
          throws DeploymentException
    {
@@ -110,6 +126,9 @@
       return new LocalMethodExecutor();
    }
 
+   /* (non-Javadoc)
+    * @see org.jboss.arquillian.spi.DeployableContainer#undeploy(org.jboss.arquillian.spi.Context, org.jboss.shrinkwrap.api.Archive)
+    */
    public void undeploy(Context context, Archive<?> archive) throws DeploymentException
    {
       WeldBootstrap bootstrap = context.get(WeldBootstrap.class);

Added: arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/WeldEmbeddedIntegrationTestCase.java
===================================================================
--- arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/WeldEmbeddedIntegrationTestCase.java	                        (rev 0)
+++ arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/WeldEmbeddedIntegrationTestCase.java	2010-05-20 10:15:34 UTC (rev 4399)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jboss.arquillian.weld;
+
+import javax.inject.Inject;
+
+import junit.framework.Assert;
+
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.arquillian.weld.beans.MyBean;
+import org.jboss.shrinkwrap.api.ArchivePaths;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.spec.JavaArchive;
+import org.jboss.shrinkwrap.impl.base.asset.ByteArrayAsset;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+/**
+ * WeldEmbeddedIntegrationTestCase
+ *
+ * @author <a href="mailto:aslak at redhat.com">Aslak Knutsen</a>
+ * @version $Revision: $
+ */
+ at RunWith(Arquillian.class)
+public class WeldEmbeddedIntegrationTestCase
+{
+   @Deployment
+   public static JavaArchive createdeployment() 
+   {
+      return ShrinkWrap.create("test.jar", JavaArchive.class)
+                  .addClasses(
+                        WeldEmbeddedIntegrationTestCase.class,
+                        MyBean.class)
+                  .addManifestResource(
+                        new ByteArrayAsset("<beans/>".getBytes()), ArchivePaths.create("beans.xml"));
+   }
+   
+   @Inject
+   private MyBean instanceVariable;
+   
+   @Test
+   public void shouldBeAbleToInjectBeanAsInstanceVariable() throws Exception 
+   {
+      Assert.assertNotNull(
+            "Verify that the Bean has been injected",
+            instanceVariable);
+      
+      Assert.assertEquals("aslak", instanceVariable.getName());
+   }
+
+   @Test
+   public void shouldBeAbleToInjectBeanAsArgumentVariable(MyBean argumentVariable) throws Exception 
+   {
+      Assert.assertNotNull(
+            "Verify that the Bean has been injected",
+            argumentVariable);
+      
+      Assert.assertEquals("aslak", argumentVariable.getName());
+   }
+}

Added: arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/beans/MyBean.java
===================================================================
--- arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/beans/MyBean.java	                        (rev 0)
+++ arquillian/trunk/containers/weld-embedded/src/test/java/org/jboss/arquillian/weld/beans/MyBean.java	2010-05-20 10:15:34 UTC (rev 4399)
@@ -0,0 +1,34 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jboss.arquillian.weld.beans;
+
+import javax.enterprise.context.ApplicationScoped;
+
+/**
+ * MyBean
+ *
+ * @author <a href="mailto:aslak at redhat.com">Aslak Knutsen</a>
+ * @version $Revision: $
+ */
+ at ApplicationScoped
+public class MyBean
+{
+   public String getName() 
+   {
+      return "aslak";
+   }
+}



More information about the jboss-svn-commits mailing list