[jboss-cvs] JBossAS SVN: r89035 - in branches/JBPAPP_4_2_0_GA_CP/ejb3: src/test/org/jboss/ejb3/test/schema/unit and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue May 19 06:10:52 EDT 2009


Author: wolfc
Date: 2009-05-19 06:10:52 -0400 (Tue, 19 May 2009)
New Revision: 89035

Modified:
   branches/JBPAPP_4_2_0_GA_CP/ejb3/build-test.xml
   branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/schema/unit/SchemaTestCase.java
Log:
JBPAPP-2017: make sure the schema are on the test classpath

Modified: branches/JBPAPP_4_2_0_GA_CP/ejb3/build-test.xml
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/ejb3/build-test.xml	2009-05-19 09:48:53 UTC (rev 89034)
+++ branches/JBPAPP_4_2_0_GA_CP/ejb3/build-test.xml	2009-05-19 10:10:52 UTC (rev 89035)
@@ -1,4 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!--
+   vi:ts=3:sw=3:expandtab:
+-->
 <!DOCTYPE project [
    <!ENTITY libraries SYSTEM "../thirdparty/libraries.ent">
 <!ENTITY modules SYSTEM "../tools/etc/buildmagic/modules.ent">
@@ -369,7 +372,7 @@
     -->
 
    <!-- Compile all class files -->
-   <target name="compile-classes" depends="init">
+   <target name="compile-classes" depends="copy-resources,init">
       <mkdir dir="${build.classes}"/>
       <javac destdir="${build.classes}"
          optimize="${javac.optimize}"
@@ -415,6 +418,17 @@
          </fileset>
       </copy>
    </target>
+
+   <!--
+      Make sure the schemas are on the classpath during unit testing.
+   -->
+   <target name="copy-resources" depends="init">
+      <mkdir dir="${build.classes}"/>
+      <copy todir="${build.classes}/schema">
+         <fileset dir="${resources}/schema"/>
+      </copy>
+   </target>
+
    <!-- ================================================================== -->
    <!-- Archives                                                           -->
    <!-- ================================================================== -->

Modified: branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/schema/unit/SchemaTestCase.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/schema/unit/SchemaTestCase.java	2009-05-19 09:48:53 UTC (rev 89034)
+++ branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/schema/unit/SchemaTestCase.java	2009-05-19 10:10:52 UTC (rev 89035)
@@ -21,141 +21,54 @@
  */
 package org.jboss.ejb3.test.schema.unit;
 
-import org.jboss.logging.Logger;
-import org.jboss.test.JBossTestCase;
-import org.jboss.util.xml.JBossEntityResolver;
+import java.io.File;
 
-import junit.framework.Test;
-
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
-import java.io.File;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+import org.jboss.logging.Logger;
+import org.jboss.util.xml.JBossEntityResolver;
 import org.w3c.dom.Document;
 import org.xml.sax.ErrorHandler;
+import org.xml.sax.SAXException;
 import org.xml.sax.SAXParseException;
 
 /**
  * 
  * @version <tt>$Revision$</tt>
  * @author <a href="mailto:bdecoste at jboss.com">William DeCoste</a>
+ * @author <a href="mailto:cdewolf at redhat.com">Carlo de Wolf</a>
  */
-public class SchemaTestCase
-    extends JBossTestCase
-    implements ErrorHandler
+public class SchemaTestCase extends TestCase
 {
-   Exception caughtException = null;
-   
-   private static final Logger log = Logger
-         .getLogger(SchemaTestCase.class);
+   private static final Logger log = Logger.getLogger(SchemaTestCase.class);
 
-   public SchemaTestCase(String name)
-   {
-      super(name);
-   }
+   private String schemaFilename;
    
-   public void testEjbClassOptionalEjbJar() throws Exception
-   {
-      DocumentBuilder builder = getDocumentBuilder();
-      
-      validateFile("../src/resources/test/dd/override/META-INF/ejb-jarC.xml", builder);
-      validateFile("../src/resources/test/dd/override/META-INF/ejb-jarD.xml", builder);
-      validateFile("../src/resources/test/enventry/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/mail/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/reference21_30/META-INF/ejb-jar3.xml", builder);
-   }
+   private DocumentBuilder builder;
    
-   public void testTestEjbJar() throws Exception
+   public SchemaTestCase(String name, String schemaFilename, DocumentBuilder builder)
    {
-      DocumentBuilder builder = getDocumentBuilder();
-      
-      validateFile("../src/resources/test/bank/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/bmt/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/dd/mdb/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/dd/override/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/dd/override/META-INF/ejb-jarA.xml", builder);
-      validateFile("../src/resources/test/dd/override/META-INF/ejb-jarB.xml", builder);
-      validateFile("../src/resources/test/factoryxml/session1/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/factoryxml/session2/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/interceptors/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/interceptors2/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/jca/inflow/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/jms/managed/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/microbench/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/naming/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/securitydomain/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/service/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/stateful/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/txexceptions/META-INF/ejb-jar.xml", builder);
-      validateFile("../src/resources/test/webservices/META-INF/ejb-jar.xml", builder);
+      super(name + "-" + schemaFilename);
+      this.schemaFilename = schemaFilename;
+      this.builder = builder;
    }
    
-   public void testTutorialEjbJar() throws Exception
-   {
-      DocumentBuilder builder = getDocumentBuilder();
-      
-      validateFile("../docs/tutorial/ejb21_client_adaptors/META-INF/ejb-jar.xml", builder);
-      validateFile("../docs/tutorial/interceptor/META-INF/ejb-jar.xml", builder);
-      validateFile("../docs/tutorial/jboss_deployment_descriptor/META-INF/ejb-jar.xml", builder);
-      validateFile("../docs/tutorial/jboss_resource_ref/META-INF/ejb-jar.xml", builder);
-      validateFile("../docs/tutorial/jca/inflow/swiftmq/resources/META-INF/ejb-jar.xml", builder);
-      validateFile("../docs/tutorial/mdb_deployment_descriptor/META-INF/ejb-jar.xml", builder);
-      validateFile("../docs/tutorial/stateful_deployment_descriptor/META-INF/ejb-jar.xml", builder);
-      validateFile("../docs/tutorial/stateless_deployment_descriptor/META-INF/ejb-jar.xml", builder);
-   }
-   
-   public void testTestJBoss() throws Exception
-   {
-      DocumentBuilder builder = getDocumentBuilder();
-      
-      validateFile("../src/resources/test/bank/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/clusteredsession/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/consumer/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/dd/mdb/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/dd/web/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/dependency/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/interceptors2/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/jca/inflow/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/mail/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/microbench/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/naming/META-INF/jboss1.xml", builder);
-      validateFile("../src/resources/test/naming/META-INF/jboss1.xml", builder);
-      validateFile("../src/resources/test/reference21_30/META-INF/jboss3.xml", builder);
-      validateFile("../src/resources/test/reference21_30/META-INF/jboss-reference.xml", builder);
-      validateFile("../src/resources/test/securitydomain/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/service/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/ssladvanced/META-INF/jboss.xml", builder);
-      validateFile("../src/resources/test/strictpool/META-INF/jboss.xml", builder);
-   }
-   
-   public void testTutorialJBoss() throws Exception
-   {
-      DocumentBuilder builder = getDocumentBuilder();
-      
-      validateFile("../docs/tutorial/consumer_deployment_descriptor/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/dependency/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/ejb21_client_adaptors/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/jboss_deployment_descriptor/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/jboss_resource_ref/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/jca/inflow/swiftmq/resources/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/mdb_deployment_descriptor/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/service_deployment_descriptor/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/stateful_deployment_descriptor/META-INF/jboss.xml", builder);
-      validateFile("../docs/tutorial/stateless_deployment_descriptor/META-INF/jboss.xml", builder);
-   }
-   
    private void validateFile(String filename, DocumentBuilder builder) throws Exception
    {
       File xmlFile = new File(filename);
-      System.out.println("Parsing and validating " + filename);
+      log.debug("Parsing and validating " + filename);
       Document dom = builder.parse(xmlFile);
+      assertNotNull(dom);
       
-      if (caughtException != null)
-         throw caughtException;
-      
-      System.out.println("Success parsing " + filename);
+      log.debug("Success parsing " + filename);
    }
    
-   private DocumentBuilder getDocumentBuilder() throws Exception
+   private static DocumentBuilder getDocumentBuilder() throws Exception
    {
       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
       factory.setAttribute("http://apache.org/xml/features/validation/schema", true);
@@ -164,7 +77,25 @@
       factory.setNamespaceAware(true);
          
       DocumentBuilder builder = factory.newDocumentBuilder();
-      builder.setErrorHandler(this);
+      builder.setErrorHandler(new ErrorHandler() {
+
+         public void error(SAXParseException exception) throws SAXException
+         {
+            log.warn("error: " + exception.getMessage(), exception);
+            throw exception;
+         }
+
+         public void fatalError(SAXParseException exception) throws SAXException
+         {
+            log.error("fatal: " + exception.getMessage(), exception);
+            throw exception;
+         }
+
+         public void warning(SAXParseException exception) throws SAXException
+         {
+            log.info("warning: " + exception.getMessage(), exception);
+         }
+      });
       
       JBossEntityResolver entityResolver = new JBossEntityResolver();
       builder.setEntityResolver(entityResolver);
@@ -174,25 +105,87 @@
 
    public static Test suite() throws Exception
    {
-      return getDeploySetup(SchemaTestCase.class, "");
+      DocumentBuilder builder = getDocumentBuilder();
+      TestSuite suite = new TestSuite();
+      
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/bank/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/bmt/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/dd/mdb/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/dd/override/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/dd/override/META-INF/ejb-jarA.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/dd/override/META-INF/ejb-jarB.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/factoryxml/session1/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/factoryxml/session2/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/interceptors/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/interceptors2/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/jca/inflow/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/jms/managed/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/microbench/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/naming/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/securitydomain/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/service/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/stateful/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/txexceptions/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("EJB", "../src/resources/test/webservices/META-INF/ejb-jar.xml", builder));
+
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/bank/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/clusteredsession/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/consumer/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/dd/mdb/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/dd/web/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/dependency/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/interceptors2/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/jca/inflow/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/mail/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/microbench/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/naming/META-INF/jboss1.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/naming/META-INF/jboss1.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/reference21_30/META-INF/jboss3.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/reference21_30/META-INF/jboss-reference.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/securitydomain/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/service/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/ssladvanced/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("JBoss", "../src/resources/test/strictpool/META-INF/jboss.xml", builder));
+      
+      suite.addTest(new SchemaTestCase("OptionalEJB", "../src/resources/test/dd/override/META-INF/ejb-jarC.xml", builder));
+      suite.addTest(new SchemaTestCase("OptionalEJB", "../src/resources/test/dd/override/META-INF/ejb-jarD.xml", builder));
+      suite.addTest(new SchemaTestCase("OptionalEJB", "../src/resources/test/enventry/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("OptionalEJB", "../src/resources/test/mail/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("OptionalEJB", "../src/resources/test/reference21_30/META-INF/ejb-jar3.xml", builder));
+
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/consumer_deployment_descriptor/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/dependency/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/ejb21_client_adaptors/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/jboss_deployment_descriptor/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/jboss_resource_ref/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/jca/inflow/swiftmq/resources/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/mdb_deployment_descriptor/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/service_deployment_descriptor/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/stateful_deployment_descriptor/META-INF/jboss.xml", builder));
+      suite.addTest(new SchemaTestCase("Tutorial", "../docs/tutorial/stateless_deployment_descriptor/META-INF/jboss.xml", builder));
+
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/ejb21_client_adaptors/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/interceptor/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/jboss_deployment_descriptor/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/jboss_resource_ref/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/jca/inflow/swiftmq/resources/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/mdb_deployment_descriptor/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/stateful_deployment_descriptor/META-INF/ejb-jar.xml", builder));
+      suite.addTest(new SchemaTestCase("TutorialEJB", "../docs/tutorial/stateless_deployment_descriptor/META-INF/ejb-jar.xml", builder));
+
+      return suite;
    }
    
-   public void fatalError(SAXParseException e)
+   public void runTest() throws Exception
    {
-      System.out.println("fatalError " + e);
-      caughtException = e;
+      try
+      {
+         validateFile(schemaFilename, builder);
+      }
+      catch(SAXException e)
+      {
+         fail(e.getMessage());
+      }
    }
-   
-   public void error(SAXParseException e)
-   {
-      System.out.println("Error " + e);
-      caughtException = e;
-   }
-   
-   public void warning(SAXParseException e)
-   {
-      System.out.println("Warning " + e);
-   }
-
 }
  
\ No newline at end of file




More information about the jboss-cvs-commits mailing list