[webbeans-commits] Webbeans SVN: r1436 - in tck/trunk: api/src/main/java/org/jboss/webbeans/tck/spi and 9 other directories.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Fri Feb 6 19:17:04 EST 2009


Author: pete.muir at jboss.org
Date: 2009-02-06 19:17:04 -0500 (Fri, 06 Feb 2009)
New Revision: 1436

Modified:
   tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TestSuite.java
   tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Managers.java
   tck/trunk/impl/pom.xml
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/AbstractTest.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/InContainerTestRunner.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactDescriptor.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/DeclarativeArtifactProcessor.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/war/WarArtifactDescriptor.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/runner/servlet/ServletTestRunner.java
   tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/unspecified/ArtifactTest.java
   tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/war/ArtifactTest.java
Log:
fixes for in container tests

Modified: tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TestSuite.java
===================================================================
--- tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TestSuite.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TestSuite.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -9,6 +9,7 @@
    private boolean standalone = true;
    private int deploymentDelay = 5000;
    private boolean writeDeployedArchivesToDisk;
+   public String libraryDirectory;
    
    public TestSuite()
    {
@@ -55,4 +56,14 @@
       this.writeDeployedArchivesToDisk = writeDeployedArchivesToDisk;
    }
    
+   public String getLibraryDirectory()
+   {
+      return libraryDirectory;
+   }
+   
+   public void setLibraryDirectory(String libraryDir)
+   {
+      this.libraryDirectory = libraryDir;
+   }
+   
 }

Modified: tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Managers.java
===================================================================
--- tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Managers.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Managers.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -23,19 +23,14 @@
     * 
     * @return the Manager 
     */
-   Manager createManager(List<Class<? extends Annotation>> enabledDeploymentTypes);
+   Manager getManager();
    
    /**
-    * Get a new Manager instance
-    * 
-    * @return the Manager 
-    */
-   Manager createManager();
-   
-   /**
     * Returns a list of the enabled deployment types for the current manager
     * 
     * @return
     */
    List<Class<? extends Annotation>> getEnabledDeploymentTypes();
+   
+   public void setEnabledDeploymentTypes(List<Class<? extends Annotation>> enabledDeploymentTypes);
 }

Modified: tck/trunk/impl/pom.xml
===================================================================
--- tck/trunk/impl/pom.xml	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/pom.xml	2009-02-07 00:17:04 UTC (rev 1436)
@@ -209,6 +209,7 @@
                       <java classname="org.jboss.webbeans.tck.impl.InContainerTestRunner" classpathref="maven.compile.classpath" failonerror="true" fork="true">
                          <jvmarg line="-DcreateArtifacts=true"/>
                          <jvmarg line="-DoutputDirectory=${project.build.directory}/jsr-299-artifacts" />
+                         <jvmarg line="-DlibraryDirectory=${libraryDirectory}" />
                       </java>
                       <echo>Dumped artifacts to ${project.build.directory}/jsr-299-artifacts</echo>
                     </tasks>

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/AbstractTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/AbstractTest.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/AbstractTest.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -77,13 +77,14 @@
    @BeforeMethod
    public final void before(Method testMethod)
    {
+      manager = configuration().getManagers().getManager();
       if (getEnabledDeploymentTypes().size() > 0)
       {
-         manager = configuration().getManagers().createManager(getEnabledDeploymentTypes());
+         configuration().getManagers().setEnabledDeploymentTypes(getEnabledDeploymentTypes());
       }
       else
       {
-         manager = configuration().getManagers().createManager();
+         
       }
       containers = (StandaloneContainers) configuration().getContainers();
       if (configuration().getTestSuite().isStandalone())
@@ -91,7 +92,7 @@
          Class<?> declaringClass = testMethod.getDeclaringClass();
          if (declaringClass.isAnnotationPresent(Artifact.class) || declaringClass.isAnnotationPresent(EjbArtifact.class))
          {
-            DeclarativeArtifactProcessor processor = new DeclarativeArtifactProcessor(declaringClass, true);
+            DeclarativeArtifactProcessor processor = new DeclarativeArtifactProcessor(declaringClass, true, null);
             ArtifactDescriptor artifact = processor.getArtifact();
             Set<Class<?>> classes = artifact.getClasses();
             if (getEnabledDeploymentTypes().size() > 0)

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/InContainerTestRunner.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/InContainerTestRunner.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/InContainerTestRunner.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -21,7 +21,7 @@
 public class InContainerTestRunner
 {
    
-   private static final Logger log = Logger.getLogger(ArtifactScanner.class);
+   private static final Logger log = Logger.getLogger(InContainerTestRunner.class);
    
    private final TestSuite testSuite;
    private final Containers containers;
@@ -48,6 +48,10 @@
          {
             testSuite.setOutputDirectory(System.getProperty("outputDirectory"));
          }
+         if (System.getProperty("libraryDirectory") != null)
+         {
+            testSuite.setLibraryDirectory(System.getProperty("libraryDirectory"));
+         }
          testSuite.setStandalone(false);
          testSuite.setWriteDeployedArchivesToDisk(true);
          InContainerTestRunner runner = new InContainerTestRunner(testSuite, null);
@@ -77,7 +81,7 @@
       List<ArtifactDescriptor> artifacts = new ArrayList<ArtifactDescriptor>();
       for (Class<?> clazz : classes)
       {
-         artifacts.add(new DeclarativeArtifactProcessor(clazz, testSuite.isStandalone()).getArtifact());
+         artifacts.add(new DeclarativeArtifactProcessor(clazz, testSuite.isStandalone(), testSuite.getLibraryDirectory()).getArtifact());
       }
       return artifacts;
    }

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactDescriptor.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactDescriptor.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -17,7 +17,6 @@
 import java.net.URL;
 import java.net.URLClassLoader;
 import java.net.URLDecoder;
-import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashSet;
 import java.util.Random;
@@ -206,6 +205,7 @@
    
    private final Set<Class<?>> classes;
    private final Set<ResourceDescriptor> resources;
+   private final Set<ResourceDescriptor> libraries;
    private final Class<?> declaringClass;
    
    // Cache
@@ -219,6 +219,7 @@
       classes = new HashSet<Class<?>>();
       resources = new HashSet<ResourceDescriptor>();
       this.declaringClass = declaringClass;
+      this.libraries = new HashSet<ResourceDescriptor>();
    }
    
    public InputStream getJar() throws IOException
@@ -416,7 +417,7 @@
    
    public Set<ResourceDescriptor> getLibraries()
    {
-      return Collections.emptySet();
+      return libraries;
    }
    
    public File getLibraryRoot(File archiveRoot)

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/DeclarativeArtifactProcessor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/DeclarativeArtifactProcessor.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/DeclarativeArtifactProcessor.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -4,12 +4,19 @@
 import static org.jboss.webbeans.tck.impl.packaging.PackagingType.UNSPECIFIED;
 import static org.jboss.webbeans.tck.impl.packaging.PackagingType.WAR;
 
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FilenameFilter;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
 
+import org.apache.log4j.Logger;
 import org.jboss.webbeans.tck.impl.packaging.jsr299.BeansXml;
 import org.jboss.webbeans.tck.impl.packaging.jsr299.TCKArtifactDescriptor;
 import org.jboss.webbeans.tck.impl.packaging.war.WarArtifactDescriptor;
@@ -17,6 +24,8 @@
 public class DeclarativeArtifactProcessor
 {
    
+   private static final Logger log = Logger.getLogger(DeclarativeArtifactProcessor.class);
+   
    private final boolean unit;
    private final boolean ejbs;
    private final boolean addDeclaringPackage;
@@ -24,11 +33,12 @@
    private final PackagingType packagingType;
    private final Collection<ResourceDescriptor> resources;
    private final Collection<Class<?>> classes;
+   private final Set<ResourceDescriptor> extraLibraries;
    
    private final Class<?> declaringClass;
    private final boolean standalone;
 
-   public DeclarativeArtifactProcessor(Class<?> declaringClass, boolean standalone)
+   public DeclarativeArtifactProcessor(Class<?> declaringClass, boolean standalone, String extraLibrariesDirectory)
    {
       this.standalone = standalone;
       this.declaringClass = declaringClass;
@@ -97,6 +107,37 @@
       {
          this.classes = Collections.emptyList();
       }
+      if (extraLibrariesDirectory != null)
+      {
+         File directory = new File(extraLibrariesDirectory);
+         this.extraLibraries = new HashSet<ResourceDescriptor>();
+         if (directory.isDirectory())
+         {
+            for (File file : directory.listFiles(new FilenameFilter()
+               {
+                  
+                  public boolean accept(File dir, String name)
+                  {
+                     return name.endsWith(".jar");
+                  }
+                  
+               }))
+            {
+               try
+               {
+                  this.extraLibraries.add(new ResourceDescriptor(file.getName(), new FileInputStream(file)));
+               }
+               catch (FileNotFoundException e)
+               {
+                  log.warn("Unable to load extra library", e);
+               }
+            }
+         }
+      }
+      else
+      {
+         this.extraLibraries = Collections.emptySet();
+      }
    }
    
    public TCKArtifactDescriptor getArtifact()
@@ -131,6 +172,7 @@
       artifact.setUnit(unit);
       artifact.getClasses().addAll(classes);
       artifact.getResources().addAll(resources);
+      artifact.getLibraries().addAll(extraLibraries);
       return artifact;
    }
    

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -2,13 +2,12 @@
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
+import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.PrintWriter;
 import java.io.Writer;
-import java.util.HashSet;
-import java.util.Set;
 
 import org.apache.log4j.Logger;
 import org.jboss.webbeans.tck.AbstractTest;
@@ -32,6 +31,8 @@
       try
       {
          descriptor.writeArtifactToDisk(tmpdir, "tck-support");
+         File file = new File(tmpdir, "tck-support.jar");
+         file.deleteOnExit();
          TCK_SUPPORT_JAR = new ResourceDescriptor("tck-support.jar", new FileInputStream(tmpdir + "/" + "tck-support.jar"));
       }
       catch (IOException e)
@@ -49,6 +50,9 @@
    public TCKArtifactDescriptor(Class<?> declaringClass, String beansXmlSourceFileName)
    {
       super(declaringClass, beansXmlSourceFileName);
+      getLibraries().add(new ResourceDescriptor("testng.jar", "/lib/testng-jdk15.jar"));
+      getLibraries().add(new ResourceDescriptor("jsr-299-tck-api.jar", "/lib/webbeans-tck-api.jar"));
+      getLibraries().add(TCK_SUPPORT_JAR);
       try
       {
          getResources().add(new ResourceDescriptor(getClassesRoot() + DeploymentProperties.RESOURCE_BUNDLE, getDeploymentProperties(declaringClass)));
@@ -88,14 +92,4 @@
       this.unit = unit;
    }
    
-   @Override
-   public Set<ResourceDescriptor> getLibraries()
-   {
-      Set<ResourceDescriptor> libraries = new HashSet<ResourceDescriptor>(super.getLibraries());
-      libraries.add(new ResourceDescriptor("testng.jar", "/lib/testng-jdk15.jar"));
-      libraries.add(new ResourceDescriptor("jsr-299-tck-api.jar", "/lib/webbeans-tck-api.jar"));
-      libraries.add(TCK_SUPPORT_JAR);
-      return libraries;
-   }
-   
 }

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/war/WarArtifactDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/war/WarArtifactDescriptor.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/war/WarArtifactDescriptor.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -58,6 +58,7 @@
       if (webInfLib == null)
       {
          webInfLib = new File(archiveRoot, "WEB-INF/lib/");
+         webInfLib.deleteOnExit();
          webInfLib.mkdirs();
       }
       return webInfLib;

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/runner/servlet/ServletTestRunner.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/runner/servlet/ServletTestRunner.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/runner/servlet/ServletTestRunner.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -1,5 +1,7 @@
 package org.jboss.webbeans.tck.runner.servlet;
 
+import static org.jboss.webbeans.tck.impl.WebBeansTCKImpl.configuration;
+
 import java.io.IOException;
 import java.io.ObjectOutputStream;
 import java.io.PrintWriter;
@@ -19,6 +21,7 @@
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
    {
+      configuration().getTestSuite().setStandalone(false);
       TestRunner runner = new TestRunner();
       ITestContext context = runner.run();
       String outputMode;

Modified: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/unspecified/ArtifactTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/unspecified/ArtifactTest.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/unspecified/ArtifactTest.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -14,7 +14,7 @@
    @Test
    public void testDefaultDeclartiveArtifact() throws Exception
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyTest.class, true);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyTest.class, true, null);
       TCKArtifactDescriptor artifact =  declarativeArtifactProcessor.getArtifact();
       assert !artifact.isEjbs();
       assert artifact.isUnit();
@@ -66,7 +66,7 @@
    @Test
    public void testClassesSpecifiedArtifact() throws Exception
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyClassesSpecifiedTest.class, true);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyClassesSpecifiedTest.class, true, null);
       TCKArtifactDescriptor artifact =  declarativeArtifactProcessor.getArtifact();
       File root = artifact.getExplodedJar();
       File currentPackage = getCurrentPackageAsFile(root);
@@ -89,7 +89,7 @@
    @Test
    public void testResourcesSpecifiedArtifact() throws Exception
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyResourcesSpecifiedTest.class, false);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyResourcesSpecifiedTest.class, false, null);
       TCKArtifactDescriptor artifact =  declarativeArtifactProcessor.getArtifact();
       File root = artifact.getExplodedJar();
       assert root.listFiles(META_INF_FILTER).length == 1;
@@ -109,14 +109,14 @@
    @Test
    public void testIntegrationTestDeclartiveArtifact() throws Exception
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyIntegrationTest.class, false);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyIntegrationTest.class, false, null);
       assert !declarativeArtifactProcessor.getArtifact().isUnit();
    }
    
    @Test
    public void testCustomBeansXml() throws Exception
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyCustomBeansXmlTest.class, false);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyCustomBeansXmlTest.class, false, null);
       TCKArtifactDescriptor artifact =  declarativeArtifactProcessor.getArtifact();
       File root = artifact.getExplodedJar();
       File webInf = root.listFiles(WEB_INF_FILTER)[0];
@@ -129,14 +129,14 @@
    //@Test
    public void testEjbTestDeclartiveArtifact() throws Exception
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyEjbTest.class, false);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyEjbTest.class, false, null);
       assert declarativeArtifactProcessor.getArtifact().isEjbs();
    }
    
    @Test(expectedExceptions=IllegalArgumentException.class)
    public void testWrongPackaging()
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyWarUnitTest_Broken.class, false);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyWarUnitTest_Broken.class, false, null);
    }
    
 }

Modified: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/war/ArtifactTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/war/ArtifactTest.java	2009-02-07 00:16:25 UTC (rev 1435)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/test/impl/packaging/declarativeArtifact/war/ArtifactTest.java	2009-02-07 00:17:04 UTC (rev 1436)
@@ -13,7 +13,7 @@
    @Test
    public void testDefaultWebXml() throws Exception
    {
-      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyTest.class, false);
+      DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyTest.class, false, null);
       TCKArtifactDescriptor artifact =  declarativeArtifactProcessor.getArtifact();
       File root = artifact.getExplodedJar();
       assert root.listFiles(WEB_INF_FILTER).length == 1;




More information about the weld-commits mailing list