Hibernate SVN: r20993 - entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/packaging.
by hibernate-commits@lists.jboss.org
Author: alessandrolt
Date: 2011-11-18 14:00:04 -0500 (Fri, 18 Nov 2011)
New Revision: 20993
Modified:
entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/packaging/JarVisitorTest.java
Log:
JBPAPP-7488 - including testJarVisitorFactory() to JarVisitorTest Test Case. This test asserts the correct return of JarVisitorFactory.getVisitor
Modified: entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/packaging/JarVisitorTest.java
===================================================================
--- entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/packaging/JarVisitorTest.java 2011-11-18 18:59:19 UTC (rev 20992)
+++ entitymanager/branches/v3_4_0_GA_CP/src/test/java/org/hibernate/ejb/test/packaging/JarVisitorTest.java 2011-11-18 19:00:04 UTC (rev 20993)
@@ -4,6 +4,8 @@
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
+import java.net.URLStreamHandler;
+import java.net.URLStreamHandlerFactory;
import java.util.Set;
import javax.persistence.Embeddable;
@@ -56,6 +58,43 @@
assertEquals( 0, visitor.getMatchingEntries()[1].size() );
assertEquals( 0, visitor.getMatchingEntries()[2].size() );
}
+
+ /**
+ * related to JBPAPP-7488
+ */
+ public void testJarVisitorFactory() throws Exception{
+
+ //setting URL to accept vfs based protocol
+ URL.setURLStreamHandlerFactory(new URLStreamHandlerFactory() {
+ public URLStreamHandler createURLStreamHandler(String protocol) {
+ if("vfsfile".equals(protocol) || "vfszip".equals(protocol)) {
+ return new URLStreamHandler() {
+ protected URLConnection openConnection(URL u)
+ throws IOException {
+ return null;
+ }
+ };
+ } else
+ return null;
+ }
+ });
+
+ URL jarUrl = new URL ("file:./target/test-packages/defaultpar.par");
+ JarVisitor jarVisitor = JarVisitorFactory.getVisitor(jarUrl, getFilters(), null);
+ assertEquals(FileZippedJarVisitor.class.getName(), jarVisitor.getClass().getName());
+
+ jarUrl = new URL ("file:./target/test-packages/explodedpar.par");
+ jarVisitor = JarVisitorFactory.getVisitor(jarUrl, getFilters(), null);
+ assertEquals(ExplodedJarVisitor.class.getName(), jarVisitor.getClass().getName());
+
+ jarUrl = new URL ("vfszip:./target/test-packages/defaultpar.par");
+ jarVisitor = JarVisitorFactory.getVisitor(jarUrl, getFilters(), null);
+ assertEquals(FileZippedJarVisitor.class.getName(), jarVisitor.getClass().getName());
+
+ jarUrl = new URL ("vfsfile:./target/test-packages/explodedpar.par");
+ jarVisitor = JarVisitorFactory.getVisitor(jarUrl, getFilters(), null);
+ assertEquals(ExplodedJarVisitor.class.getName(), jarVisitor.getClass().getName());
+ }
public void testInputStreamZippedJar() throws Exception {
String jarFileName = "file:./target/test-packages/defaultpar.par";