[jboss-svn-commits] JBoss Common SVN: r3517 - shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Sep 12 23:46:43 EDT 2009
Author: johnbailey
Date: 2009-09-12 23:46:43 -0400 (Sat, 12 Sep 2009)
New Revision: 3517
Modified:
shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExplodedExporterTestCase.java
shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExportTestBase.java
shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ZipExporterTestCase.java
Log:
[SHRINKWRAP-12] - Cleaned up some duplicate code from the exporter test cases
Modified: shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExplodedExporterTestCase.java
===================================================================
--- shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExplodedExporterTestCase.java 2009-09-12 22:58:31 UTC (rev 3516)
+++ shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExplodedExporterTestCase.java 2009-09-13 03:46:43 UTC (rev 3517)
@@ -23,14 +23,13 @@
import java.io.InputStream;
import java.util.logging.Logger;
+import org.jboss.shrinkwrap.api.Archive;
import org.jboss.shrinkwrap.api.Asset;
import org.jboss.shrinkwrap.api.Path;
import org.jboss.shrinkwrap.api.export.ExplodedExporter;
import org.jboss.shrinkwrap.impl.base.MemoryMapArchiveImpl;
-import org.jboss.shrinkwrap.impl.base.asset.ClassLoaderAsset;
import org.jboss.shrinkwrap.impl.base.io.IOUtil;
import org.jboss.shrinkwrap.impl.base.path.BasicPath;
-import org.jboss.shrinkwrap.spi.MemoryMapArchive;
import org.junit.Assert;
import org.junit.Test;
@@ -54,16 +53,6 @@
*/
private static final Logger log = Logger.getLogger(ExplodedExporterTestCase.class.getName());
- /**
- * Name of a properties file upon the test CP
- */
- private static final String NAME_TEST_PROPERTIES = "org/jboss/shrinkwrap/impl/base/asset/Test.properties";
-
- /**
- * Name of another properties file upon the test CP
- */
- private static final String NAME_TEST_PROPERTIES_2 = "org/jboss/shrinkwrap/impl/base/asset/Test2.properties";
-
//-------------------------------------------------------------------------------------||
// Tests ------------------------------------------------------------------------------||
//-------------------------------------------------------------------------------------||
@@ -82,16 +71,8 @@
File tempDirectory = createTempDirectory("testExportExploded");
// Get an archive instance
- MemoryMapArchive archive = new MemoryMapArchiveImpl("testArchive.jar");
+ Archive<?> archive = createArchiveWithAssets();
- // Add some content
- Asset assetOne = new ClassLoaderAsset(NAME_TEST_PROPERTIES);
- Path pathOne = new BasicPath("test.properties");
- archive.add(pathOne, assetOne);
- Asset assetTwo = new ClassLoaderAsset(NAME_TEST_PROPERTIES_2);
- Path pathTwo = new BasicPath("nested", "test2.properties");
- archive.add(pathTwo, assetTwo);
-
// Export as Exploded directory
File explodedDirectory = ExplodedExporter.exportExploded(archive, tempDirectory);
@@ -103,9 +84,8 @@
Assert.assertEquals(expectedDirectory, explodedDirectory);
// Validate entries were written out
- assertAssetInExploded(explodedDirectory, pathOne, assetOne);
- assertAssetInExploded(explodedDirectory, pathTwo, assetTwo);
-
+ assertAssetInExploded(explodedDirectory, PATH_ONE, ASSET_ONE);
+ assertAssetInExploded(explodedDirectory, PATH_TWO, ASSET_TWO);
}
/**
@@ -122,31 +102,8 @@
File tempDirectory = createTempDirectory("testExportNestedExploded");
// Get an archive instance
- MemoryMapArchive archive = new MemoryMapArchiveImpl("testArchive.jar");
-
- // Add a nested archive
- MemoryMapArchive nestedArchive = new MemoryMapArchiveImpl("nestedArchive.jar");
-
- // Add some content
- Asset assetOne = new ClassLoaderAsset(NAME_TEST_PROPERTIES);
- Path pathOne = new BasicPath("test.properties");
- nestedArchive.add(pathOne, assetOne);
- Asset assetTwo = new ClassLoaderAsset(NAME_TEST_PROPERTIES_2);
- Path pathTwo = new BasicPath("nested", "test2.properties");
- nestedArchive.add(pathTwo, assetTwo);
-
- archive.add(new BasicPath(), nestedArchive);
-
- // Add an archive nested in a directory
- MemoryMapArchive nestedArchiveTwo = new MemoryMapArchiveImpl("nestedArchive.jar");
- Path nestedPath = new BasicPath("nested");
-
- // Add some content
- nestedArchiveTwo.add(pathOne, assetOne);
- nestedArchiveTwo.add(pathTwo, assetTwo);
-
- archive.add(nestedPath, nestedArchiveTwo);
-
+ Archive<?> archive = createArchiveWithNestedArchives();
+
// Export as Exploded directory
File explodedDirectory = ExplodedExporter.exportExploded(archive, tempDirectory);
@@ -158,15 +115,15 @@
Assert.assertEquals(expectedDirectory, explodedDirectory);
// Validate nested archive entries were written out
- Path nestedArchivePath = new BasicPath(nestedArchive.getName());
+ Path nestedArchivePath = new BasicPath(NAME_NESTED_ARCHIVE);
- assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePath, pathOne), assetOne);
- assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePath, pathTwo), assetTwo);
+ assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePath, PATH_ONE), ASSET_ONE);
+ assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePath, PATH_TWO), ASSET_TWO);
- Path nestedArchivePathTwo = new BasicPath(nestedPath, nestedArchiveTwo.getName());
+ Path nestedArchivePathTwo = new BasicPath(NESTED_PATH, NAME_NESTED_ARCHIVE_2);
- assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePathTwo, pathOne), assetOne);
- assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePathTwo, pathTwo), assetTwo);
+ assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePathTwo, PATH_ONE), ASSET_ONE);
+ assertAssetInExploded(explodedDirectory, new BasicPath(nestedArchivePathTwo, PATH_TWO), ASSET_TWO);
}
/**
Modified: shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExportTestBase.java
===================================================================
--- shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExportTestBase.java 2009-09-12 22:58:31 UTC (rev 3516)
+++ shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ExportTestBase.java 2009-09-13 03:46:43 UTC (rev 3517)
@@ -20,7 +20,14 @@
import java.net.URISyntaxException;
import java.util.logging.Logger;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.Asset;
+import org.jboss.shrinkwrap.api.Path;
+import org.jboss.shrinkwrap.impl.base.MemoryMapArchiveImpl;
+import org.jboss.shrinkwrap.impl.base.asset.ClassLoaderAsset;
import org.jboss.shrinkwrap.impl.base.io.IOUtil;
+import org.jboss.shrinkwrap.impl.base.path.BasicPath;
+import org.jboss.shrinkwrap.spi.MemoryMapArchive;
import org.junit.Assert;
/**
@@ -29,9 +36,10 @@
* Base support for the exporter test cases
*
* @author <a href="mailto:andrew.rubinger at jboss.org">ALR</a>
+ * @author <a href="mailto:baileyje at gmail.com">John Bailey</a>
* @version $Revision: $
*/
-class ExportTestBase
+public abstract class ExportTestBase
{
//-------------------------------------------------------------------------------------||
@@ -43,6 +51,56 @@
*/
private static final Logger log = Logger.getLogger(ExportTestBase.class.getName());
+ /**
+ * Name of an Archive
+ */
+ protected static final String NAME_ARCHIVE = "testArchive.jar";
+
+ /**
+ * Name of a properties file upon the test CP
+ */
+ protected static final String NAME_TEST_PROPERTIES = "org/jboss/shrinkwrap/impl/base/asset/Test.properties";
+
+ /**
+ * Name of another properties file upon the test CP
+ */
+ protected static final String NAME_TEST_PROPERTIES_2 = "org/jboss/shrinkwrap/impl/base/asset/Test2.properties";
+
+ /**
+ * Path of for nested content
+ */
+ protected static final Path NESTED_PATH = new BasicPath("nested");
+
+ /**
+ * Name of a nested archive
+ */
+ protected static final String NAME_NESTED_ARCHIVE = "nestedArchive.jar";
+
+ /**
+ * Name of another nested archive
+ */
+ protected static final String NAME_NESTED_ARCHIVE_2 = "nestedArchive2.jar";
+
+ /**
+ * Asset used for testing
+ */
+ protected static final Asset ASSET_ONE = new ClassLoaderAsset(NAME_TEST_PROPERTIES);
+
+ /**
+ * Path used for testing
+ */
+ protected static final Path PATH_ONE = new BasicPath("Test.properties");
+
+ /**
+ * Another asset used for testing
+ */
+ protected static final Asset ASSET_TWO = new ClassLoaderAsset(NAME_TEST_PROPERTIES_2);
+
+ /**
+ * Another path used for testing
+ */
+ protected static final Path PATH_TWO = new BasicPath(NESTED_PATH, "Test2.properties");
+
//-------------------------------------------------------------------------------------||
// Functional Methods -----------------------------------------------------------------||
//-------------------------------------------------------------------------------------||
@@ -81,4 +139,58 @@
}
}
+ /**
+ * Create an archive instance and add some assets
+ */
+ protected Archive<?> createArchiveWithAssets()
+ {
+ // Create an archive
+ Archive<?> archive = new MemoryMapArchiveImpl(NAME_ARCHIVE);
+ // Add some content
+ addContent(archive);
+ // Return archive
+ return archive;
+ }
+
+ /**
+ * Create an archive instance and add some assets and some nested archives
+ */
+ protected Archive<?> createArchiveWithNestedArchives()
+ {
+ // Create an archive
+ Archive<?> archive = createArchiveWithAssets();
+
+ // Create a nested archive
+ MemoryMapArchive nestedArchive = new MemoryMapArchiveImpl(NAME_NESTED_ARCHIVE);
+
+ // Add some content
+ addContent(nestedArchive);
+
+ // Add nested archive
+ archive.add(new BasicPath(), nestedArchive);
+
+ // Add an archive nested in a directory
+ MemoryMapArchive nestedArchiveTwo = new MemoryMapArchiveImpl(NAME_NESTED_ARCHIVE_2);
+
+ // Add some content
+ addContent(nestedArchiveTwo);
+
+ // Add the archive under a nested path
+ archive.add(NESTED_PATH, nestedArchiveTwo);
+
+ // Return archive
+ return archive;
+ }
+
+ /**
+ * Add basic contents to the archive
+ *
+ * @param archive
+ */
+ protected void addContent(Archive<?> archive)
+ {
+ archive.add(PATH_ONE, ASSET_ONE);
+ archive.add(PATH_TWO, ASSET_TWO);
+ }
+
}
Modified: shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ZipExporterTestCase.java
===================================================================
--- shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ZipExporterTestCase.java 2009-09-12 22:58:31 UTC (rev 3516)
+++ shrinkwrap/trunk/impl-base/src/test/java/org/jboss/shrinkwrap/impl/base/export/ZipExporterTestCase.java 2009-09-13 03:46:43 UTC (rev 3517)
@@ -29,11 +29,8 @@
import org.jboss.shrinkwrap.api.Asset;
import org.jboss.shrinkwrap.api.Path;
import org.jboss.shrinkwrap.api.export.ZipExporter;
-import org.jboss.shrinkwrap.impl.base.MemoryMapArchiveImpl;
-import org.jboss.shrinkwrap.impl.base.asset.ClassLoaderAsset;
import org.jboss.shrinkwrap.impl.base.io.IOUtil;
import org.jboss.shrinkwrap.impl.base.path.BasicPath;
-import org.jboss.shrinkwrap.spi.MemoryMapArchive;
import org.junit.Assert;
import org.junit.Test;
@@ -55,17 +52,7 @@
* Logger
*/
private static final Logger log = Logger.getLogger(ZipExporterTestCase.class.getName());
-
- /**
- * Name of a properties file upon the test CP
- */
- private static final String NAME_TEST_PROPERTIES = "org/jboss/shrinkwrap/impl/base/asset/Test.properties";
- /**
- * Name of another properties file upon the test CP
- */
- private static final String NAME_TEST_PROPERTIES_2 = "org/jboss/shrinkwrap/impl/base/asset/Test2.properties";
-
//-------------------------------------------------------------------------------------||
// Tests ------------------------------------------------------------------------------||
//-------------------------------------------------------------------------------------||
@@ -83,25 +70,17 @@
File tempDirectory = createTempDirectory("testExportZip");
// Get an archive instance
- MemoryMapArchive archive = new MemoryMapArchiveImpl("testArchive.jar");
+ Archive<?> archive = createArchiveWithAssets();
- // Add some content
- Asset assetOne = new ClassLoaderAsset(NAME_TEST_PROPERTIES);
- Path pathOne = new BasicPath("test.properties");
- archive.add(pathOne, assetOne);
- Asset assetTwo = new ClassLoaderAsset(NAME_TEST_PROPERTIES_2);
- Path pathTwo = new BasicPath("nested", "test2.properties");
- archive.add(pathTwo, assetTwo);
-
// Export as Zip InputStream
InputStream zipStream = ZipExporter.exportZip(archive);
// Write zip content to temporary file
- ZipFile expectedZip = getExportedZipFile(archive, zipStream, tempDirectory);
+ ZipFile expectedZip = getExportedZipFile(NAME_ARCHIVE, zipStream, tempDirectory);
// Validate entries were written out
- assertAssetInZip(expectedZip, pathOne, assetOne);
- assertAssetInZip(expectedZip, pathTwo, assetTwo);
+ assertAssetInZip(expectedZip, PATH_ONE, ASSET_ONE);
+ assertAssetInZip(expectedZip, PATH_TWO, ASSET_TWO);
}
@@ -118,46 +97,48 @@
File tempDirectory = createTempDirectory("testExportNestedZip");
// Get an archive instance
- MemoryMapArchive archive = new MemoryMapArchiveImpl("testArchive.jar");
+ Archive<?> archive = createArchiveWithNestedArchives();
- // Add some content
- Asset assetOne = new ClassLoaderAsset(NAME_TEST_PROPERTIES);
- Path pathOne = new BasicPath("test.properties");
- archive.add(pathOne, assetOne);
- Asset assetTwo = new ClassLoaderAsset(NAME_TEST_PROPERTIES);
- Path pathTwo = new BasicPath("nested", "test2.properties");
- archive.add(pathTwo, assetTwo);
-
- // Add a nested archive for good measure
- MemoryMapArchive nestedArchive = new MemoryMapArchiveImpl("nestedArchive.jar");
- nestedArchive.add(pathOne, assetOne);
- nestedArchive.add(pathTwo, assetTwo);
- archive.add(new BasicPath(), nestedArchive);
-
// Export as Zip InputStream
InputStream zipStream = ZipExporter.exportZip(archive);
// Write out and retrieve Zip
- ZipFile expectedZip = getExportedZipFile(archive, zipStream, tempDirectory);
+ ZipFile expectedZip = getExportedZipFile(NAME_ARCHIVE, zipStream, tempDirectory);
// Validate entries were written out
- assertAssetInZip(expectedZip, pathOne, assetOne);
- assertAssetInZip(expectedZip, pathTwo, assetTwo);
+ assertAssetInZip(expectedZip, PATH_ONE, ASSET_ONE);
+ assertAssetInZip(expectedZip, PATH_TWO, ASSET_TWO);
// Validate nested archive entries were written out
- Path nestedArchivePath = new BasicPath(nestedArchive.getName());
+ Path nestedArchivePath = new BasicPath(NAME_NESTED_ARCHIVE);
// Get nested archive entry from exported zip
ZipEntry nestedArchiveEntry = expectedZip.getEntry(nestedArchivePath.get());
-
+
// Get inputstream for entry
InputStream nesterArchiveStream = expectedZip.getInputStream(nestedArchiveEntry);
- // Write out and retrieve Zip
- ZipFile nestedZip = getExportedZipFile(nestedArchive, nesterArchiveStream, tempDirectory);
+ // Write out and retrieve nested Zip
+ ZipFile nestedZip = getExportedZipFile(NAME_NESTED_ARCHIVE, nesterArchiveStream, tempDirectory);
- assertAssetInZip(nestedZip, pathOne, assetOne);
- assertAssetInZip(nestedZip, pathTwo, assetTwo);
+ assertAssetInZip(nestedZip, PATH_ONE, ASSET_ONE);
+ assertAssetInZip(nestedZip, PATH_TWO, ASSET_TWO);
+
+ // Validate nested archive entries were written out
+ Path nestedArchiveTwoPath = new BasicPath(NESTED_PATH, NAME_NESTED_ARCHIVE_2);
+
+ // Get second nested archive entry from exported zip
+ ZipEntry nestedArchiveTwoEntry = expectedZip.getEntry(nestedArchiveTwoPath.get());
+
+ // Get inputstream for entry
+ InputStream nesterArchiveTwoStream = expectedZip.getInputStream(nestedArchiveTwoEntry);
+
+ // Write out and retrieve second nested Zip
+ ZipFile nestedZipTwo = getExportedZipFile(NAME_NESTED_ARCHIVE_2, nesterArchiveTwoStream, tempDirectory);
+
+ assertAssetInZip(nestedZipTwo, PATH_ONE, ASSET_ONE);
+ assertAssetInZip(nestedZipTwo, PATH_TWO, ASSET_TWO);
+
}
/**
@@ -183,20 +164,18 @@
// Internal Helper Methods ------------------------------------------------------------||
//-------------------------------------------------------------------------------------||
- private ZipFile getExportedZipFile(Archive<?> archive, InputStream zipStream, File tempDirectory) throws Exception
+ private ZipFile getExportedZipFile(String archiveName, InputStream zipStream, File tempDirectory) throws Exception
{
// Validate the InputStream was created
Assert.assertNotNull(zipStream);
// Create a temp file
- File outFile = new File(tempDirectory, archive.getName());
+ File outFile = new File(tempDirectory, archiveName);
// Write Zip contents to file
writeOutFile(outFile, zipStream);
-
- System.out.println(outFile.length());
-
+
// Use standard ZipFile library to read in written Zip file
ZipFile expectedZip = new ZipFile(outFile);
More information about the jboss-svn-commits
mailing list