[webbeans-commits] Webbeans SVN: r1417 - ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/resources/spi and 18 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Wed Feb 4 20:27:09 EST 2009
Author: pete.muir at jboss.org
Date: 2009-02-04 20:27:09 -0500 (Wed, 04 Feb 2009)
New Revision: 1417
Added:
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactScanner.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/util/Files.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/InContainerTestRunnerTest.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/ArtifactScannerTest.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/DummyArtifact.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/AnotherDummyArtifact.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/NotAnArtifact.java
Removed:
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/IntegratedContainers.java
Modified:
ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/resources/spi/ResourceLoadingException.java
ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/tck/ContainersImpl.java
tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TestSuite.java
tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Containers.java
tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/helpers/ForwardingContainers.java
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/JSR299ArtifactDescriptor.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/unit/definition/bean/BeanDefinitionTest.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/ArtifactTest.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/all/ArtifactTest.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/declarativeArtifact/unspecified/ArtifactTest.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/subpackages/ArtifactTest.java
tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/war/ArtifactTest.java
Log:
Start work on test runner
Modified: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/tck/ContainersImpl.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/tck/ContainersImpl.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/tck/ContainersImpl.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -1,5 +1,6 @@
package org.jboss.webbeans.test.tck;
+import java.io.InputStream;
import java.lang.annotation.Annotation;
import java.util.List;
import java.util.jar.JarInputStream;
@@ -34,7 +35,7 @@
return deploy(null, classes);
}
- public Manager deploy(JarInputStream archive)
+ public Manager deploy(InputStream archive)
{
throw new UnsupportedOperationException();
}
Modified: ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/resources/spi/ResourceLoadingException.java
===================================================================
--- ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/resources/spi/ResourceLoadingException.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ ri/trunk/webbeans-ri-spi/src/main/java/org/jboss/webbeans/resources/spi/ResourceLoadingException.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -5,6 +5,7 @@
import javax.inject.ExecutionException;
+
/**
* Exception thrown when errors occur while loading resource
*
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-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/api/src/main/java/org/jboss/webbeans/tck/api/TestSuite.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -7,7 +7,11 @@
private String outputDirectory;
private boolean standalone;
+ private int deploymentDelay = 5000;
+ private boolean writeDeployedArchivesToDisk;
+ private String debugOutputDirectory = System.getProperty("java.io.tmpdir") + "/jsr-299-tck/";
+
public TestSuite(String outputDirectory)
{
super();
@@ -28,5 +32,35 @@
{
this.standalone = standalone;
}
+
+ public long getDeploymentDelay()
+ {
+ return deploymentDelay;
+ }
+ public void setDeploymentDelay(int deploymentDelay)
+ {
+ this.deploymentDelay = deploymentDelay;
+ }
+
+ public String getDebugOutputDirectory()
+ {
+ return debugOutputDirectory;
+ }
+
+ public void setDebugOutputDirectory(String debugOutputDirectory)
+ {
+ this.debugOutputDirectory = debugOutputDirectory;
+ }
+
+ public boolean isWriteDeployedArchivesToDisk()
+ {
+ return writeDeployedArchivesToDisk;
+ }
+
+ public void setWriteDeployedArchivesToDisk(boolean writeDeployedArchivesToDisk)
+ {
+ this.writeDeployedArchivesToDisk = writeDeployedArchivesToDisk;
+ }
+
}
Modified: tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Containers.java
===================================================================
--- tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Containers.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/Containers.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -1,5 +1,6 @@
package org.jboss.webbeans.tck.spi;
+import java.io.InputStream;
import java.lang.annotation.Annotation;
import java.util.List;
import java.util.jar.JarInputStream;
@@ -32,6 +33,14 @@
public Manager deploy(List<Class<? extends Annotation>> enabledDeploymentTypes, JarInputStream archive);
- public Manager deploy(JarInputStream archive);
+ /**
+ * The compressed archive, represented as an stream of bytes
+ *
+ * The stream should be uncompressed using a JarInputStream
+ *
+ * @param archive
+ * @return
+ */
+ public Manager deploy(InputStream archive);
}
\ No newline at end of file
Modified: tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/helpers/ForwardingContainers.java
===================================================================
--- tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/helpers/ForwardingContainers.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/api/src/main/java/org/jboss/webbeans/tck/spi/helpers/ForwardingContainers.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -1,5 +1,6 @@
package org.jboss.webbeans.tck.spi.helpers;
+import java.io.InputStream;
import java.lang.annotation.Annotation;
import java.util.List;
import java.util.jar.JarInputStream;
@@ -28,7 +29,7 @@
return delegate().evaluateValueExpression(expression, expectedType);
}
- public Manager deploy(JarInputStream archive)
+ public Manager deploy(InputStream archive)
{
return delegate().deploy(archive);
}
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-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/AbstractTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -22,7 +22,6 @@
import javax.inject.manager.Bean;
import javax.inject.manager.Manager;
-import org.jboss.webbeans.tck.impl.IntegratedContainers;
import org.jboss.webbeans.tck.impl.util.MockCreationalContext;
import org.jboss.webbeans.tck.spi.StandaloneContainers;
import org.testng.annotations.AfterMethod;
@@ -82,7 +81,7 @@
{
manager = configuration().getManagers().createManager();
}
- containers = IntegratedContainers.of(configuration().getContainers());
+ containers = (StandaloneContainers) configuration().getContainers();
}
@AfterMethod
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-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/InContainerTestRunner.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -1,100 +1,105 @@
package org.jboss.webbeans.tck.impl;
import static org.jboss.webbeans.tck.impl.WebBeansTCKImpl.configuration;
-import static org.jboss.webbeans.tck.impl.util.Reflections.loadResources;
+import java.io.BufferedOutputStream;
import java.io.File;
+import java.io.FileOutputStream;
import java.io.IOException;
-import java.net.URL;
-import java.net.URLDecoder;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import org.apache.log4j.Logger;
+import org.jboss.webbeans.tck.api.TestSuite;
+import org.jboss.webbeans.tck.impl.packaging.ArtifactDescriptor;
+import org.jboss.webbeans.tck.impl.packaging.ArtifactScanner;
+import org.jboss.webbeans.tck.impl.packaging.DeclarativeArtifactProcessor;
+import org.jboss.webbeans.tck.impl.util.Files;
+import org.jboss.webbeans.tck.spi.Containers;
+
public class InContainerTestRunner
{
- private static class URLScanner
+ private static final Logger log = Logger.getLogger(ArtifactScanner.class);
+
+ public InContainerTestRunner()
{
- private static final Logger log = Logger.getLogger(URLScanner.class);
-
- private final Package pkg;
-
- private final Set<String> classes = new HashSet<String>();
-
- public URLScanner(Package pkg)
+
+ }
+
+ public void run()
+ {
+ run(configuration().getTestSuite(), configuration().getContainers());
+ }
+
+ protected void run(TestSuite testSuite, Containers containers)
+ {
+ Set<Class<?>> classes = new HashSet<Class<?>>();
+ classes.addAll(new ArtifactScanner("org.jboss.webbeans.tck.integration").getClasses());
+ if (!testSuite.isStandalone())
{
- this.pkg = pkg;
+ classes.addAll(new ArtifactScanner("org.jboss.webbeans.tck.unit").getClasses());
}
-
- private void scanPackage()
+ List<ArtifactDescriptor> artifacts = new ArrayList<ArtifactDescriptor>();
+ for (Class<?> clazz : classes)
{
- try
+ artifacts.add(new DeclarativeArtifactProcessor(clazz).getArtifact());
+ }
+ // We've now collected all the artifacts, so we can file them at the
+ // container
+ if (testSuite.isWriteDeployedArchivesToDisk())
+ {
+ File file = new File(testSuite.getDebugOutputDirectory());
+ if (!file.exists())
{
- Set<String> paths = new HashSet<String>();
- String packageName = pkg.getName().replace(".", "/");
- for (URL url : loadResources(packageName))
- {
- String urlPath = url.getFile();
- urlPath = URLDecoder.decode(urlPath, "UTF-8");
- if ( urlPath.startsWith("file:") )
- {
- urlPath = urlPath.substring(5);
- }
- if ( urlPath.indexOf('!')>0 )
- {
- urlPath = urlPath.substring(0, urlPath.indexOf('!'));
- }
- paths.add(urlPath);
- }
- handle(paths);
+ file.mkdirs();
}
- catch (IOException ioe)
+ else if (file.isFile())
{
- log.warn("could not read: " + pkg.getName(), ioe);
+ throw new IllegalStateException("Cannot use debug directory " + testSuite.getDebugOutputDirectory() + ", it already exists");
}
}
-
- private void handle(Set<String> paths)
+ for (ArtifactDescriptor artifact : artifacts)
{
- for ( String urlPath: paths )
+ try
{
- log.trace("scanning: " + urlPath);
- File file = new File(urlPath);
- if ( file.isDirectory() )
+ InputStream jar = artifact.asJar();
+ if (testSuite.isWriteDeployedArchivesToDisk())
{
- for ( File child: file.listFiles() )
+ try
{
- if ( !child.isDirectory() && child.getName().endsWith(".class"))
- {
- classes.add(pkg.getName() + "." + child.getName().substring(0, child.getName().lastIndexOf(".class")));
- }
+ File file = new File(testSuite.getDebugOutputDirectory(), artifact.getDeclaringClass().getName() + artifact.getExtension());
+ file.createNewFile();
+ OutputStream os = new BufferedOutputStream(new FileOutputStream(file));
+ Files.copy(jar, os);
+ os.close();
}
+ catch (IOException e)
+ {
+ log.error("Error writing artifact to disk " + artifact, e);
+ }
}
+ containers.deploy(jar);
+ jar.close();
+ try
+ {
+ Thread.sleep(testSuite.getDeploymentDelay());
+ }
+ catch (InterruptedException e)
+ {
+ Thread.interrupted();
+ }
}
+ catch (IOException e)
+ {
+ log.error("Error deploying artifact " + artifact, e);
+ }
}
-
- public Set<String> getClassNames()
- {
- scanPackage();
- return classes;
- }
-
}
- public InContainerTestRunner()
- {
- // TODO Auto-generated constructor stub
- }
-
- public void run()
- {
-
- if (configuration().getTestSuite().isStandalone())
- {
-
- }
- }
-
}
Deleted: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/IntegratedContainers.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/IntegratedContainers.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/IntegratedContainers.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -1,63 +0,0 @@
-package org.jboss.webbeans.tck.impl;
-
-import java.io.IOException;
-import java.lang.annotation.Annotation;
-import java.util.List;
-import java.util.jar.JarInputStream;
-
-import javax.inject.manager.Manager;
-
-import org.jboss.webbeans.tck.impl.packaging.jsr299.TCKArtifactDescriptor;
-import org.jboss.webbeans.tck.spi.Containers;
-import org.jboss.webbeans.tck.spi.StandaloneContainers;
-import org.jboss.webbeans.tck.spi.helpers.ForwardingContainers;
-
-public abstract class IntegratedContainers extends ForwardingContainers implements StandaloneContainers
-{
-
- public static StandaloneContainers of(final Containers containers)
- {
- if (containers instanceof StandaloneContainers)
- {
- return (StandaloneContainers) containers;
- }
- else
- {
- return new IntegratedContainers()
- {
-
- @Override
- protected Containers delegate()
- {
- return containers;
- }
-
- };
- }
- }
-
- public Manager deploy(java.lang.Class<?>... classes)
- {
- try
- {
- return deploy(new JarInputStream(new TCKArtifactDescriptor(null).asJar()));
- }
- catch (IOException e)
- {
- throw new IllegalStateException("Error building war from " + classes, e);
- }
- }
-
- public Manager deploy(List<Class<? extends Annotation>> enabledDeploymentTypes, Class<?>... classes)
- {
- try
- {
- return deploy(enabledDeploymentTypes, new JarInputStream(new TCKArtifactDescriptor(null).asJar()));
- }
- catch (IOException e)
- {
- throw new IllegalStateException("Error building war from " + classes, e);
- }
- }
-
-}
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-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactDescriptor.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -17,11 +17,11 @@
import java.util.HashSet;
import java.util.Random;
import java.util.Set;
-import java.util.jar.JarInputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import org.apache.log4j.Logger;
+import org.jboss.webbeans.tck.impl.util.Files;
public class ArtifactDescriptor
{
@@ -125,8 +125,6 @@
private void zip(File directory, ZipOutputStream zipOutputStream) throws IOException
{
File[] children = directory.listFiles();
- byte[] readBuffer = new byte[2156];
- int bytesIn = 0;
//loop through dirList, and zip the files
for (File child : children)
{
@@ -139,10 +137,7 @@
FileInputStream fis = new FileInputStream(child);
ZipEntry zipEntry = new ZipEntry(child.getPath().substring(root.getPath().length() + 1));
zipOutputStream.putNextEntry(zipEntry);
- while((bytesIn = fis.read(readBuffer)) != -1)
- {
- zipOutputStream.write(readBuffer, 0, bytesIn);
- }
+ Files.copy(fis, zipOutputStream);
fis.close();
}
}
@@ -156,17 +151,19 @@
private final Set<Class<?>> classes;
private final Set<Package> packages;
private final Set<ResourceDescriptor> resources;
+ private final Class<?> declaringClass;
- public ArtifactDescriptor()
+ public ArtifactDescriptor(Class<?> declaringClass)
{
classes = new HashSet<Class<?>>();
resources = new HashSet<ResourceDescriptor>();
packages = new HashSet<Package>();
+ this.declaringClass = declaringClass;
}
- public JarInputStream asJar() throws IOException
+ public InputStream asJar() throws IOException
{
- return new JarInputStream(new Zipper(create()).zip());
+ return new Zipper(create()).zip();
}
public File create() throws IOException
@@ -271,4 +268,20 @@
return archiveRoot;
}
+ @Override
+ public String toString()
+ {
+ return "Declared by: " + declaringClass.getName() + " Classes: " + getClasses() + " Resources: " + getResources();
+ }
+
+ public Class<?> getDeclaringClass()
+ {
+ return declaringClass;
+ }
+
+ public String getExtension()
+ {
+ return ".jar";
+ }
+
}
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactScanner.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactScanner.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactScanner.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -0,0 +1,102 @@
+/**
+ *
+ */
+package org.jboss.webbeans.tck.impl.packaging;
+
+import static org.jboss.webbeans.tck.impl.util.Reflections.loadResources;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+import java.net.URLDecoder;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.apache.log4j.Logger;
+
+public class ArtifactScanner
+{
+ private static final Logger log = Logger.getLogger(ArtifactScanner.class);
+
+ private final String packageName;
+
+ private final Set<Class<?>> classes = new HashSet<Class<?>>();
+
+ public ArtifactScanner(String packageName)
+ {
+ this.packageName = packageName;
+ }
+
+ private void scan()
+ {
+ try
+ {
+ Set<String> paths = new HashSet<String>();
+ String packageName = this.packageName.replace(".", "/");
+ for (URL url : loadResources(packageName))
+ {
+ String urlPath = url.getFile();
+ urlPath = URLDecoder.decode(urlPath, "UTF-8");
+ if ( urlPath.startsWith("file:") )
+ {
+ urlPath = urlPath.substring(5);
+ }
+ if ( urlPath.indexOf('!')>0 )
+ {
+ urlPath = urlPath.substring(0, urlPath.indexOf('!'));
+ }
+ paths.add(urlPath);
+ }
+ handle(paths);
+ }
+ catch (IOException ioe)
+ {
+ log.warn("could not read: " + this.packageName, ioe);
+ }
+ }
+
+ private void handle(Set<String> paths)
+ {
+ for ( String urlPath: paths )
+ {
+ log.trace("scanning: " + urlPath);
+ handle(new File(urlPath), packageName.substring(0, packageName.lastIndexOf(".")));
+
+ }
+ }
+
+ private void handle(File file, String packageName)
+ {
+ if ( file.isDirectory() )
+ {
+ packageName = packageName + "." + file.getName();
+ for ( File child: file.listFiles() )
+ {
+ handle(child, packageName);
+ }
+ }
+ else if (file.getName().endsWith(".class") && ! file.getName().contains("$"))
+ {
+ String className = packageName + "." + file.getName().substring(0, file.getName().length() - 6);
+ try
+ {
+ Class<?> clazz = Class.forName(className);
+ if (clazz.isAnnotationPresent(Artifact.class) || clazz.isAnnotationPresent(EjbArtifact.class))
+ {
+ classes.add(clazz);
+ }
+ }
+ catch (ClassNotFoundException e)
+ {
+ log.warn("Unable to load class " + className, e);
+ }
+ }
+ }
+
+ public Set<Class<?>> getClasses()
+ {
+ scan();
+ return classes;
+ }
+
+}
\ No newline at end of file
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/ArtifactScanner.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
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-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/DeclarativeArtifactProcessor.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -125,23 +125,23 @@
final TCKArtifactDescriptor artifact;
if (packagingType.equals(WAR))
{
- artifact = new WarArtifactDescriptor(beansXml, webXml);
+ artifact = new WarArtifactDescriptor(declaringClass, beansXml, webXml);
}
else if (packagingType.equals(EAR))
{
throw new UnsupportedOperationException();
}
- else if (standalone)
+ else if (ejbs && standalone)
{
- artifact = new TCKArtifactDescriptor(beansXml);
+ throw new UnsupportedOperationException();
}
- else if (ejbs)
+ else if (standalone)
{
- throw new UnsupportedOperationException();
+ artifact = new TCKArtifactDescriptor(declaringClass, beansXml);
}
else
{
- artifact = new WarArtifactDescriptor(beansXml, null);
+ artifact = new WarArtifactDescriptor(declaringClass, beansXml, null);
}
if (addDeclaringPackage)
{
Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/JSR299ArtifactDescriptor.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/JSR299ArtifactDescriptor.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/JSR299ArtifactDescriptor.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -11,8 +11,9 @@
public static final String BEANS_XML_DESTINATION = "META-INF/beans.xml";
public static final String STANDARD_BEANS_XML_FILE_NAME = "org/jboss/webbeans/tck/impl/packaging/jsr299/default/beans.xml";
- public JSR299ArtifactDescriptor(String beansXmlSourceFileName)
+ public JSR299ArtifactDescriptor(Class<?> declaringClass, String beansXmlSourceFileName)
{
+ super(declaringClass);
if (isEmpty(beansXmlSourceFileName))
{
beansXmlSourceFileName = STANDARD_BEANS_XML_FILE_NAME;
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-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/jsr299/TCKArtifactDescriptor.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -10,9 +10,9 @@
private boolean unit;
private boolean ejbs;
- public TCKArtifactDescriptor(String beansXmlSourceFileName)
+ public TCKArtifactDescriptor(Class<?> declaringClass, String beansXmlSourceFileName)
{
- super(beansXmlSourceFileName);
+ super(declaringClass, beansXmlSourceFileName);
getPackages().add(AbstractTest.class.getPackage());
getPackages().add(NewLiteral.class.getPackage());
getPackages().add(Reflections.class.getPackage());
@@ -38,4 +38,10 @@
this.unit = unit;
}
+ @Override
+ public String getExtension()
+ {
+ return ".war";
+ }
+
}
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-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/packaging/war/WarArtifactDescriptor.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -15,9 +15,9 @@
private File webInfClasses;
- public WarArtifactDescriptor(String beansXmlSourceFileName, String webXmlSourceFileName)
+ public WarArtifactDescriptor(Class<?> declaringClass, String beansXmlSourceFileName, String webXmlSourceFileName)
{
- super(beansXmlSourceFileName);
+ super(declaringClass, beansXmlSourceFileName);
if (isEmpty(webXmlSourceFileName))
{
webXmlSourceFileName = STANDARD_WEB_XML_FILE_NAME;
@@ -36,4 +36,10 @@
return webInfClasses;
}
+ @Override
+ public String toString()
+ {
+ return "war, " + super.toString();
+ }
+
}
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/util/Files.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/util/Files.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/util/Files.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -0,0 +1,20 @@
+package org.jboss.webbeans.tck.impl.util;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+public class Files
+{
+
+ public static void copy(InputStream source, OutputStream destination) throws IOException
+ {
+ byte[] readBuffer = new byte[2156];
+ int bytesIn = 0;
+ while((bytesIn = source.read(readBuffer)) != -1)
+ {
+ destination.write(readBuffer, 0, bytesIn);
+ }
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/impl/util/Files.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/unit/definition/bean/BeanDefinitionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/unit/definition/bean/BeanDefinitionTest.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/unit/definition/bean/BeanDefinitionTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -9,6 +9,7 @@
import org.jboss.webbeans.tck.AbstractTest;
import org.jboss.webbeans.tck.SpecAssertion;
import org.jboss.webbeans.tck.SpecAssertions;
+import org.jboss.webbeans.tck.impl.packaging.Artifact;
import org.testng.annotations.Test;
/**
@@ -18,6 +19,7 @@
*
* Spec version: PRD2
*/
+ at Artifact
public class BeanDefinitionTest extends AbstractTest
{
Added: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/InContainerTestRunnerTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/InContainerTestRunnerTest.java (rev 0)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/InContainerTestRunnerTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -0,0 +1,67 @@
+package org.jboss.webbeans.tck.impl.test;
+
+import java.io.InputStream;
+import java.lang.annotation.Annotation;
+import java.util.List;
+import java.util.jar.JarInputStream;
+
+import javax.inject.manager.Manager;
+
+import org.jboss.webbeans.tck.api.TestSuite;
+import org.jboss.webbeans.tck.impl.InContainerTestRunner;
+import org.jboss.webbeans.tck.spi.Containers;
+
+public class InContainerTestRunnerTest
+{
+
+ private static class MockInContainerTestRunner extends InContainerTestRunner
+ {
+
+ @Override
+ public void run(TestSuite testSuite, Containers containers)
+ {
+ super.run(testSuite, containers);
+ }
+
+ }
+
+ private static class MockContainers implements Containers
+ {
+
+ public Manager deploy(List<Class<? extends Annotation>> enabledDeploymentTypes, JarInputStream archive)
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public Manager deploy(InputStream archive)
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public <T> T evaluateMethodExpression(String expression, Class<T> expectedType, Class<?>[] expectedParamTypes, Object[] expectedParams)
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public <T> T evaluateValueExpression(String expression, Class<T> expectedType)
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ }
+
+ //@Test
+ public void testRunner()
+ {
+ TestSuite testSuite = new TestSuite(null);
+ testSuite.setWriteDeployedArchivesToDisk(true);
+ testSuite.setDeploymentDelay(0);
+ MockInContainerTestRunner runner = new MockInContainerTestRunner();
+ runner.run(testSuite, new MockContainers());
+ }
+
+}
Property changes on: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/InContainerTestRunnerTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/ArtifactTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/ArtifactTest.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/ArtifactTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -15,7 +15,7 @@
@Test
public void testDefaultTCKArtifact() throws Exception
{
- ArtifactDescriptor artifactDescriptor = new TCKArtifactDescriptor(null);
+ ArtifactDescriptor artifactDescriptor = new TCKArtifactDescriptor(null, null);
File root = artifactDescriptor.create();
assert getPackageAsFile(Reflections.class.getPackage(), root).listFiles().length > 0;
assert getPackageAsFile(NewLiteral.class.getPackage(), root).listFiles().length > 0;
Modified: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/all/ArtifactTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/all/ArtifactTest.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/all/ArtifactTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -13,7 +13,7 @@
@Test
public void testAllClassesInPackage() throws Exception
{
- ArtifactDescriptor artifactDescriptor = new ArtifactDescriptor();
+ ArtifactDescriptor artifactDescriptor = new ArtifactDescriptor(null);
artifactDescriptor.getPackages().add(ArtifactTest.class.getPackage());
File root = artifactDescriptor.create();
File currentPackage = getCurrentPackageAsFile(root);
Added: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/ArtifactScannerTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/ArtifactScannerTest.java (rev 0)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/ArtifactScannerTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -0,0 +1,24 @@
+package org.jboss.webbeans.tck.impl.test.packaging.artifactScanner;
+
+import java.util.Set;
+
+import org.jboss.webbeans.tck.impl.packaging.ArtifactScanner;
+import org.jboss.webbeans.tck.impl.test.packaging.artifactScanner.subpackage.AnotherDummyArtifact;
+import org.jboss.webbeans.tck.impl.test.packaging.artifactScanner.subpackage.NotAnArtifact;
+import org.testng.annotations.Test;
+
+public class ArtifactScannerTest
+{
+
+ @Test
+ public void testScanner()
+ {
+ ArtifactScanner scanner = new ArtifactScanner(ArtifactScannerTest.class.getPackage().getName());
+ Set<Class<?>> classes = scanner.getClasses();
+ assert classes.contains(DummyArtifact.class);
+ assert classes.contains(AnotherDummyArtifact.class);
+ assert !classes.contains(NotAnArtifact.class);
+ }
+
+
+}
Property changes on: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/ArtifactScannerTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/DummyArtifact.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/DummyArtifact.java (rev 0)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/DummyArtifact.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -0,0 +1,9 @@
+package org.jboss.webbeans.tck.impl.test.packaging.artifactScanner;
+
+import org.jboss.webbeans.tck.impl.packaging.Artifact;
+
+ at Artifact
+public class DummyArtifact
+{
+
+}
Property changes on: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/DummyArtifact.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/AnotherDummyArtifact.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/AnotherDummyArtifact.java (rev 0)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/AnotherDummyArtifact.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -0,0 +1,9 @@
+package org.jboss.webbeans.tck.impl.test.packaging.artifactScanner.subpackage;
+
+import org.jboss.webbeans.tck.impl.packaging.Artifact;
+
+ at Artifact
+public class AnotherDummyArtifact
+{
+
+}
Property changes on: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/AnotherDummyArtifact.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/NotAnArtifact.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/NotAnArtifact.java (rev 0)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/NotAnArtifact.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -0,0 +1,6 @@
+package org.jboss.webbeans.tck.impl.test.packaging.artifactScanner.subpackage;
+
+public class NotAnArtifact
+{
+
+}
Property changes on: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/artifactScanner/subpackage/NotAnArtifact.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/declarativeArtifact/unspecified/ArtifactTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/declarativeArtifact/unspecified/ArtifactTest.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/declarativeArtifact/unspecified/ArtifactTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -128,7 +128,7 @@
assert beans.startsWith("<my></my>");
}
- @Test
+ //@Test
public void testEjbTestDeclartiveArtifact() throws Exception
{
DeclarativeArtifactProcessor declarativeArtifactProcessor = new DeclarativeArtifactProcessor(DummyEjbTest.class);
Modified: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/subpackages/ArtifactTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/subpackages/ArtifactTest.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/subpackages/ArtifactTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -13,7 +13,7 @@
@Test
public void testAllClassesInPackageAndNotSubPackages() throws Exception
{
- ArtifactDescriptor artifactDescriptor = new ArtifactDescriptor();
+ ArtifactDescriptor artifactDescriptor = new ArtifactDescriptor(null);
artifactDescriptor.getPackages().add(ArtifactTest.class.getPackage());
File root = artifactDescriptor.create();
File currentPackage = getCurrentPackageAsFile(root);
Modified: tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/war/ArtifactTest.java
===================================================================
--- tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/war/ArtifactTest.java 2009-02-04 21:32:20 UTC (rev 1416)
+++ tck/trunk/impl/src/test/java/org/jboss/webbeans/tck/impl/test/packaging/war/ArtifactTest.java 2009-02-05 01:27:09 UTC (rev 1417)
@@ -16,7 +16,7 @@
@Test
public void testDefaultWar() throws Exception
{
- WarArtifactDescriptor war = new WarArtifactDescriptor(null, null);
+ WarArtifactDescriptor war = new WarArtifactDescriptor(null, null, null);
war.getClasses().add(Cow.class);
File root = war.create();
assert root.listFiles().length == 2;
@@ -59,9 +59,9 @@
@Test
public void testJarProduction() throws Exception
{
- WarArtifactDescriptor war = new WarArtifactDescriptor(null, null);
+ WarArtifactDescriptor war = new WarArtifactDescriptor(null, null, null);
war.getClasses().add(Cow.class);
- JarInputStream is = war.asJar();
+ JarInputStream is = new JarInputStream(war.asJar());
JarEntry entry;
List<String> fileNames = new ArrayList<String>();
while ((entry = is.getNextJarEntry()) != null)
More information about the weld-commits
mailing list