You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2008/08/30 00:11:30 UTC

svn commit: r690405 [26/26] - in /incubator/uima/uimaj/trunk/uimaj-core: ./ src/main/java/org/apache/uima/ src/main/java/org/apache/uima/analysis_component/ src/main/java/org/apache/uima/analysis_engine/ src/main/java/org/apache/uima/analysis_engine/an...

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/PearRuntimeTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/PearRuntimeTest.java?rev=690405&r1=690404&r2=690405&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/PearRuntimeTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/PearRuntimeTest.java Fri Aug 29 15:10:52 2008
@@ -1,185 +1,185 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.uima.pear.util;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.util.Map;
-
-import junit.framework.Assert;
-import junit.framework.TestCase;
-
-import org.apache.uima.UIMAFramework;
-import org.apache.uima.analysis_engine.AnalysisEngine;
-import org.apache.uima.analysis_engine.AnalysisEngineDescription;
-import org.apache.uima.analysis_engine.metadata.AnalysisEngineMetaData;
-import org.apache.uima.analysis_engine.metadata.FixedFlow;
-import org.apache.uima.cas.CAS;
-import org.apache.uima.pear.tools.PackageBrowser;
-import org.apache.uima.pear.tools.PackageInstaller;
-import org.apache.uima.resource.metadata.Import;
-import org.apache.uima.test.junit_extension.JUnitExtension;
-
-/**
- * The PEAR runtime tests installs two pears files that both use JCas classes 
- * in their processing.
- */
-public class PearRuntimeTest extends TestCase {
-
-  // Temporary working directory, used to install the pear package
-  private File tempInstallDir = null;
-
-  /**
-   * @see junit.framework.TestCase#setUp()
-   */
-  protected void setUp() throws Exception {
-
-    // create temporary working directory
-    File tempFile = File.createTempFile("pear_runtime_test_", "tmp");
-    if (tempFile.delete()) {
-      File tempDir = tempFile;
-      if (tempDir.mkdirs())
-        this.tempInstallDir = tempDir;
-    }
-  }
-
-  /**
-   * @see junit.framework.TestCase#tearDown()
-   */
-  protected void tearDown() throws Exception {
-    if (this.tempInstallDir != null) {
-      FileUtil.deleteDirectory(this.tempInstallDir);
-    }
-  }
-
-  /**
-   * @throws Exception
-   */
-  public void testPearRuntime() throws Exception {
-
-    CAS cas = this.runPearRuntimeTestcase("pearTests/DateTime.pear", "pearTests/RoomNumber.pear");
-    
-    //check if 3 annotations are available in the CAS index
-    // The 3 annotations are the doc annotation, plus 2 room numbers
-    //  The date-time annotators are skipped because the default result spec is "en"
-    //    and is missing the "x-unspecified"
-    Assert.assertEquals(cas.getAnnotationIndex().size(), 3);
-//    FSIterator i = cas.getAnnotationIndex().iterator();
-//    while (i.hasNext()) {
-//      System.out.println(i.next());
-//    }
-   }
-
-  /**
-   * @throws Exception
-   */
-
-  public void testPearRuntimeDocAnnot() throws Exception {
-
-    CAS cas = this.runPearRuntimeTestcase("pearTests/analysisEngine.pear", "pearTests/analysisEngine2.pear");
-
-    //check if 3 annotations are available in the CAS index
-    Assert.assertEquals(cas.getAnnotationIndex().size(), 3);
-   }
-
-  
-  /**
-   * @throws Exception
-   */
-  private CAS runPearRuntimeTestcase(String pear1, String pear2) throws Exception {
-
-    // check temporary working directory
-    if (this.tempInstallDir == null)
-      throw new FileNotFoundException("temp directory not found");
-    // check sample PEAR files
-
-    // get pear files to install
-    File pearFile1 = JUnitExtension.getFile(pear1);
-    Assert.assertNotNull(pearFile1);
-
-    File pearFile2 = JUnitExtension.getFile(pear2);
-    Assert.assertNotNull(pearFile2);
-
-    // Install PEAR packages
-    PackageBrowser instPear1 = PackageInstaller
-            .installPackage(this.tempInstallDir, pearFile1, true);
-
-    // check pear PackageBrowser object
-    Assert.assertNotNull(instPear1);
-
-    PackageBrowser instPear2 = PackageInstaller
-            .installPackage(this.tempInstallDir, pearFile2, true);
-
-    // check pear PackageBrowser object
-    Assert.assertNotNull(instPear2);
-
-    // create aggregate analysis engine descriptor
-    AnalysisEngineDescription desc = UIMAFramework.getResourceSpecifierFactory()
-            .createAnalysisEngineDescription();
-    desc.setPrimitive(false);
-
-    // import pear specifiers
-    Import impPear1 = UIMAFramework.getResourceSpecifierFactory().createImport();
-    File import1 = new File(instPear1.getComponentPearDescPath());
-    impPear1.setLocation(import1.toURI().getPath());
-
-    // import main pear descriptor
-    Import impPear2 = UIMAFramework.getResourceSpecifierFactory().createImport();
-    File import2 = new File(instPear2.getComponentPearDescPath());
-    impPear2.setLocation(import2.toURI().getPath());
-
-    // add delegates as imports
-    Map delegates = desc.getDelegateAnalysisEngineSpecifiersWithImports();
-    delegates.put("Pear1", impPear1);
-    delegates.put("Pear2", impPear2);
-
-    // add sequence - fixed flow
-    FixedFlow fixedFlow = UIMAFramework.getResourceSpecifierFactory().createFixedFlow();
-    fixedFlow.setFixedFlow(new String[] { "Pear1", "Pear2" });
-
-    // add analysis engine meta data
-    AnalysisEngineMetaData md = desc.getAnalysisEngineMetaData();
-    md.setName("PEAR aggregate");
-    md.setDescription("combines tow PEARs");
-    md.setVersion("1.0");
-    md.setFlowConstraints(fixedFlow);
-
-    // serialize descriptor  
-//    String outputDir = JUnitExtension.getFile("pearTests/DateTime.pear").getParent(); File
-//    outputFile = new File(outputDir, "PearAggregate.xml"); OutputStream outStream = new
-//    BufferedOutputStream(new FileOutputStream(outputFile)); Writer writer = new
-//    OutputStreamWriter(outStream, OutputFormat.Defaults.Encoding); XMLSerializer xmlSerializer =
-//    new XMLSerializer(); xmlSerializer.setWriter(writer);
-//    desc.toXML(xmlSerializer.getContentHandler(), true); writer.close();
-    
-
-    // Create analysis engine from aggregate ae description
-    AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(desc, null, null);
-    Assert.assertNotNull(ae);
-
-    // Create a CAS with a sample document text and process the CAS
-    CAS cas = ae.newCAS();
-    cas.setDocumentText("Sample text to process with a date 05/29/07 and a time 9:45 AM and a Room number GN-K35 or two GN-K37");
-    cas.setDocumentLanguage("en");
-    ae.process(cas);
-    
-    return cas;
-  }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.pear.util;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.util.Map;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.apache.uima.UIMAFramework;
+import org.apache.uima.analysis_engine.AnalysisEngine;
+import org.apache.uima.analysis_engine.AnalysisEngineDescription;
+import org.apache.uima.analysis_engine.metadata.AnalysisEngineMetaData;
+import org.apache.uima.analysis_engine.metadata.FixedFlow;
+import org.apache.uima.cas.CAS;
+import org.apache.uima.pear.tools.PackageBrowser;
+import org.apache.uima.pear.tools.PackageInstaller;
+import org.apache.uima.resource.metadata.Import;
+import org.apache.uima.test.junit_extension.JUnitExtension;
+
+/**
+ * The PEAR runtime tests installs two pears files that both use JCas classes 
+ * in their processing.
+ */
+public class PearRuntimeTest extends TestCase {
+
+  // Temporary working directory, used to install the pear package
+  private File tempInstallDir = null;
+
+  /**
+   * @see junit.framework.TestCase#setUp()
+   */
+  protected void setUp() throws Exception {
+
+    // create temporary working directory
+    File tempFile = File.createTempFile("pear_runtime_test_", "tmp");
+    if (tempFile.delete()) {
+      File tempDir = tempFile;
+      if (tempDir.mkdirs())
+        this.tempInstallDir = tempDir;
+    }
+  }
+
+  /**
+   * @see junit.framework.TestCase#tearDown()
+   */
+  protected void tearDown() throws Exception {
+    if (this.tempInstallDir != null) {
+      FileUtil.deleteDirectory(this.tempInstallDir);
+    }
+  }
+
+  /**
+   * @throws Exception
+   */
+  public void testPearRuntime() throws Exception {
+
+    CAS cas = this.runPearRuntimeTestcase("pearTests/DateTime.pear", "pearTests/RoomNumber.pear");
+    
+    //check if 3 annotations are available in the CAS index
+    // The 3 annotations are the doc annotation, plus 2 room numbers
+    //  The date-time annotators are skipped because the default result spec is "en"
+    //    and is missing the "x-unspecified"
+    Assert.assertEquals(cas.getAnnotationIndex().size(), 3);
+//    FSIterator i = cas.getAnnotationIndex().iterator();
+//    while (i.hasNext()) {
+//      System.out.println(i.next());
+//    }
+   }
+
+  /**
+   * @throws Exception
+   */
+
+  public void testPearRuntimeDocAnnot() throws Exception {
+
+    CAS cas = this.runPearRuntimeTestcase("pearTests/analysisEngine.pear", "pearTests/analysisEngine2.pear");
+
+    //check if 3 annotations are available in the CAS index
+    Assert.assertEquals(cas.getAnnotationIndex().size(), 3);
+   }
+
+  
+  /**
+   * @throws Exception
+   */
+  private CAS runPearRuntimeTestcase(String pear1, String pear2) throws Exception {
+
+    // check temporary working directory
+    if (this.tempInstallDir == null)
+      throw new FileNotFoundException("temp directory not found");
+    // check sample PEAR files
+
+    // get pear files to install
+    File pearFile1 = JUnitExtension.getFile(pear1);
+    Assert.assertNotNull(pearFile1);
+
+    File pearFile2 = JUnitExtension.getFile(pear2);
+    Assert.assertNotNull(pearFile2);
+
+    // Install PEAR packages
+    PackageBrowser instPear1 = PackageInstaller
+            .installPackage(this.tempInstallDir, pearFile1, true);
+
+    // check pear PackageBrowser object
+    Assert.assertNotNull(instPear1);
+
+    PackageBrowser instPear2 = PackageInstaller
+            .installPackage(this.tempInstallDir, pearFile2, true);
+
+    // check pear PackageBrowser object
+    Assert.assertNotNull(instPear2);
+
+    // create aggregate analysis engine descriptor
+    AnalysisEngineDescription desc = UIMAFramework.getResourceSpecifierFactory()
+            .createAnalysisEngineDescription();
+    desc.setPrimitive(false);
+
+    // import pear specifiers
+    Import impPear1 = UIMAFramework.getResourceSpecifierFactory().createImport();
+    File import1 = new File(instPear1.getComponentPearDescPath());
+    impPear1.setLocation(import1.toURI().getPath());
+
+    // import main pear descriptor
+    Import impPear2 = UIMAFramework.getResourceSpecifierFactory().createImport();
+    File import2 = new File(instPear2.getComponentPearDescPath());
+    impPear2.setLocation(import2.toURI().getPath());
+
+    // add delegates as imports
+    Map delegates = desc.getDelegateAnalysisEngineSpecifiersWithImports();
+    delegates.put("Pear1", impPear1);
+    delegates.put("Pear2", impPear2);
+
+    // add sequence - fixed flow
+    FixedFlow fixedFlow = UIMAFramework.getResourceSpecifierFactory().createFixedFlow();
+    fixedFlow.setFixedFlow(new String[] { "Pear1", "Pear2" });
+
+    // add analysis engine meta data
+    AnalysisEngineMetaData md = desc.getAnalysisEngineMetaData();
+    md.setName("PEAR aggregate");
+    md.setDescription("combines tow PEARs");
+    md.setVersion("1.0");
+    md.setFlowConstraints(fixedFlow);
+
+    // serialize descriptor  
+//    String outputDir = JUnitExtension.getFile("pearTests/DateTime.pear").getParent(); File
+//    outputFile = new File(outputDir, "PearAggregate.xml"); OutputStream outStream = new
+//    BufferedOutputStream(new FileOutputStream(outputFile)); Writer writer = new
+//    OutputStreamWriter(outStream, OutputFormat.Defaults.Encoding); XMLSerializer xmlSerializer =
+//    new XMLSerializer(); xmlSerializer.setWriter(writer);
+//    desc.toXML(xmlSerializer.getContentHandler(), true); writer.close();
+    
+
+    // Create analysis engine from aggregate ae description
+    AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(desc, null, null);
+    Assert.assertNotNull(ae);
+
+    // Create a CAS with a sample document text and process the CAS
+    CAS cas = ae.newCAS();
+    cas.setDocumentText("Sample text to process with a date 05/29/07 and a time 9:45 AM and a Room number GN-K35 or two GN-K37");
+    cas.setDocumentLanguage("en");
+    ae.process(cas);
+    
+    return cas;
+  }
+}

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/PearRuntimeTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/TestPearInstallationVerification.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/TestPearInstallationVerification.java?rev=690405&r1=690404&r2=690405&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/TestPearInstallationVerification.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/TestPearInstallationVerification.java Fri Aug 29 15:10:52 2008
@@ -1,125 +1,125 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.uima.pear.util;
-
-import java.io.File;
-
-import junit.framework.Assert;
-import junit.framework.TestCase;
-
-import org.apache.uima.pear.tools.InstallationTester;
-import org.apache.uima.pear.tools.PackageBrowser;
-import org.apache.uima.pear.tools.PackageInstaller;
-import org.apache.uima.pear.tools.InstallationController.TestStatus;
-import org.apache.uima.test.junit_extension.JUnitExtension;
-
-/**
- * Test the pear installation verification
- * 
- */
-public class TestPearInstallationVerification extends TestCase {
-
-  // Temporary working directory, used to install the pear package
-  private File tempInstallDir = null;
-
-  /**
-   * @see junit.framework.TestCase#setUp()
-   */
-  protected void setUp() throws Exception {
-    
-    // create temporary working directory
-    File tempFile = File.createTempFile("pear_verification_test_", "tmp");
-    if (tempFile.delete()) {
-      File tempDir = tempFile;
-      if (tempDir.mkdirs())
-        this.tempInstallDir = tempDir;
-    }
-  }
-
-  /**
-   * @see junit.framework.TestCase#tearDown()
-   */
-  protected void tearDown() throws Exception {
-    if (this.tempInstallDir != null) {
-      FileUtil.deleteDirectory(this.tempInstallDir);
-    }
-  }
-
-  
-  public void testAePearVerification() throws Exception {
-    
-     //get pear file to install
-    File pearFile = JUnitExtension.getFile("pearTests/analysisEngine.pear");
-    Assert.assertNotNull("analysisEngine.pear file not found", pearFile);
-    
-    // Install PEAR package without verification
-    PackageBrowser instPear = PackageInstaller.installPackage(
-            this.tempInstallDir, pearFile, false);
-    
-    //check package browser
-    Assert.assertNotNull("PackageBrowser is null", instPear);
-       
-    InstallationTester installTester = new InstallationTester(instPear);
-    TestStatus status = installTester.doTest();
-    
-    Assert.assertEquals(status.getRetCode(), TestStatus.TEST_SUCCESSFUL);
-  }
-
-  public void testCcPearVerification() throws Exception {
-    
-    //get pear file to install
-   File pearFile = JUnitExtension.getFile("pearTests/casConsumer.pear");
-   Assert.assertNotNull("casConsumer.pear file not found", pearFile);
-   
-   // Install PEAR package without verification
-   PackageBrowser instPear = PackageInstaller.installPackage(
-           this.tempInstallDir, pearFile, false);
-   
-   //check package browser
-   Assert.assertNotNull("PackageBrowser is null", instPear);
-      
-   InstallationTester installTester = new InstallationTester(instPear);
-   TestStatus status = installTester.doTest();
-   
-   Assert.assertEquals(status.getRetCode(), TestStatus.TEST_SUCCESSFUL);
- }
-
-  public void testTsPearVerification() throws Exception {
-    
-    //get pear file to install
-   File pearFile = JUnitExtension.getFile("pearTests/typeSystem.pear");
-   Assert.assertNotNull("typeSystem.pear file not found", pearFile);
-   
-   // Install PEAR package without verification
-   PackageBrowser instPear = PackageInstaller.installPackage(
-           this.tempInstallDir, pearFile, false);
-   
-   //check package browser
-   Assert.assertNotNull("PackageBrowser is null", instPear);
-      
-   InstallationTester installTester = new InstallationTester(instPear);
-   TestStatus status = installTester.doTest();
-   
-   Assert.assertEquals(status.getRetCode(), TestStatus.TEST_SUCCESSFUL);
- }
-
-  //TODO: create testcases for ci, cr, cpe pear packages
-
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.pear.util;
+
+import java.io.File;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.apache.uima.pear.tools.InstallationTester;
+import org.apache.uima.pear.tools.PackageBrowser;
+import org.apache.uima.pear.tools.PackageInstaller;
+import org.apache.uima.pear.tools.InstallationController.TestStatus;
+import org.apache.uima.test.junit_extension.JUnitExtension;
+
+/**
+ * Test the pear installation verification
+ * 
+ */
+public class TestPearInstallationVerification extends TestCase {
+
+  // Temporary working directory, used to install the pear package
+  private File tempInstallDir = null;
+
+  /**
+   * @see junit.framework.TestCase#setUp()
+   */
+  protected void setUp() throws Exception {
+    
+    // create temporary working directory
+    File tempFile = File.createTempFile("pear_verification_test_", "tmp");
+    if (tempFile.delete()) {
+      File tempDir = tempFile;
+      if (tempDir.mkdirs())
+        this.tempInstallDir = tempDir;
+    }
+  }
+
+  /**
+   * @see junit.framework.TestCase#tearDown()
+   */
+  protected void tearDown() throws Exception {
+    if (this.tempInstallDir != null) {
+      FileUtil.deleteDirectory(this.tempInstallDir);
+    }
+  }
+
+  
+  public void testAePearVerification() throws Exception {
+    
+     //get pear file to install
+    File pearFile = JUnitExtension.getFile("pearTests/analysisEngine.pear");
+    Assert.assertNotNull("analysisEngine.pear file not found", pearFile);
+    
+    // Install PEAR package without verification
+    PackageBrowser instPear = PackageInstaller.installPackage(
+            this.tempInstallDir, pearFile, false);
+    
+    //check package browser
+    Assert.assertNotNull("PackageBrowser is null", instPear);
+       
+    InstallationTester installTester = new InstallationTester(instPear);
+    TestStatus status = installTester.doTest();
+    
+    Assert.assertEquals(status.getRetCode(), TestStatus.TEST_SUCCESSFUL);
+  }
+
+  public void testCcPearVerification() throws Exception {
+    
+    //get pear file to install
+   File pearFile = JUnitExtension.getFile("pearTests/casConsumer.pear");
+   Assert.assertNotNull("casConsumer.pear file not found", pearFile);
+   
+   // Install PEAR package without verification
+   PackageBrowser instPear = PackageInstaller.installPackage(
+           this.tempInstallDir, pearFile, false);
+   
+   //check package browser
+   Assert.assertNotNull("PackageBrowser is null", instPear);
+      
+   InstallationTester installTester = new InstallationTester(instPear);
+   TestStatus status = installTester.doTest();
+   
+   Assert.assertEquals(status.getRetCode(), TestStatus.TEST_SUCCESSFUL);
+ }
+
+  public void testTsPearVerification() throws Exception {
+    
+    //get pear file to install
+   File pearFile = JUnitExtension.getFile("pearTests/typeSystem.pear");
+   Assert.assertNotNull("typeSystem.pear file not found", pearFile);
+   
+   // Install PEAR package without verification
+   PackageBrowser instPear = PackageInstaller.installPackage(
+           this.tempInstallDir, pearFile, false);
+   
+   //check package browser
+   Assert.assertNotNull("PackageBrowser is null", instPear);
+      
+   InstallationTester installTester = new InstallationTester(instPear);
+   TestStatus status = installTester.doTest();
+   
+   Assert.assertEquals(status.getRetCode(), TestStatus.TEST_SUCCESSFUL);
+ }
+
+  //TODO: create testcases for ci, cr, cpe pear packages
+
+}

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/pear/util/TestPearInstallationVerification.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/ConfigurableResource_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/TestCasConsumer.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/CasManager_implTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/CasManager_implTest.java?rev=690405&r1=690404&r2=690405&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/CasManager_implTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/CasManager_implTest.java Fri Aug 29 15:10:52 2008
@@ -1,53 +1,53 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.uima.resource.impl;
-
-import junit.framework.TestCase;
-
-import org.apache.uima.UIMAFramework;
-import org.apache.uima.cas.CAS;
-import org.apache.uima.cas.admin.CASAdminException;
-import org.apache.uima.cas.impl.CASImpl;
-import org.apache.uima.resource.CasManager;
-
-/**
- * 
- */
-public class CasManager_implTest extends TestCase {
-  public void testEnableReset() throws Exception {
-    CasManager mgr = UIMAFramework.newDefaultResourceManager().getCasManager();
-    mgr.defineCasPool("test", 1, null);
-    CAS cas = mgr.getCas("test");
-    
-    ((CASImpl)cas).enableReset(false);
-    
-    try {
-      cas.release();
-      fail();
-    }
-    catch (CASAdminException e) {
-      //expected
-    }
-    
-    ((CASImpl)cas).enableReset(true);
-    cas.release();
-
-  }
-  
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.uima.resource.impl;
+
+import junit.framework.TestCase;
+
+import org.apache.uima.UIMAFramework;
+import org.apache.uima.cas.CAS;
+import org.apache.uima.cas.admin.CASAdminException;
+import org.apache.uima.cas.impl.CASImpl;
+import org.apache.uima.resource.CasManager;
+
+/**
+ * 
+ */
+public class CasManager_implTest extends TestCase {
+  public void testEnableReset() throws Exception {
+    CasManager mgr = UIMAFramework.newDefaultResourceManager().getCasManager();
+    mgr.defineCasPool("test", 1, null);
+    CAS cas = mgr.getCas("test");
+    
+    ((CASImpl)cas).enableReset(false);
+    
+    try {
+      cas.release();
+      fail();
+    }
+    catch (CASAdminException e) {
+      //expected
+    }
+    
+    ((CASImpl)cas).enableReset(true);
+    cas.release();
+
+  }
+  
+}

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/CasManager_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/ConfigurableDataResourceSpecifier_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/ConfigurableDataResource_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/DataResource_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/FileLanguageResource_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/PearSpecifier_implTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/PearSpecifier_implTest.java?rev=690405&r1=690404&r2=690405&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/PearSpecifier_implTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/PearSpecifier_implTest.java Fri Aug 29 15:10:52 2008
@@ -1,101 +1,101 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.uima.resource.impl;
-
-import java.io.ByteArrayInputStream;
-import java.io.StringWriter;
-
-import junit.framework.Assert;
-import junit.framework.TestCase;
-
-import org.apache.uima.UIMAFramework;
-import org.apache.uima.resource.Parameter;
-import org.apache.uima.resource.PearSpecifier;
-import org.apache.uima.test.junit_extension.JUnitExtension;
-import org.apache.uima.util.XMLInputSource;
-
-/**
- * PearSpecifier creation and Xmlization test
- */
-public class PearSpecifier_implTest extends TestCase {
- 
-  /**
-   * pearSpecifier creation test
-   * 
-   * @throws Exception
-   */
-  public void testProducePearResource() throws Exception {
-    PearSpecifier specifier = UIMAFramework.getResourceSpecifierFactory().createPearSpecifier();
-    specifier.setPearPath("/home/user/uimaApp/installedPears/testpear");
-    Parameter[] parameters = new Parameter[2];
-    parameters[0] = UIMAFramework.getResourceSpecifierFactory().createParameter();
-    parameters[0].setName("param1");
-    parameters[0].setValue("val1");
-    parameters[1] = UIMAFramework.getResourceSpecifierFactory().createParameter();
-    parameters[1].setName("param2");
-    parameters[1].setValue("val2");
-    specifier.setParameters(parameters);  
-      
-    //compare created specifier with available test specifier
-    XMLInputSource in = new XMLInputSource(
-            JUnitExtension.getFile("XmlParserTest/TestPearSpecifier.xml"));
-    PearSpecifier pearSpec = UIMAFramework.getXMLParser().parsePearSpecifier(in);
-    
-    Assert.assertEquals(pearSpec.getPearPath(), specifier.getPearPath());
-    Assert.assertEquals(pearSpec.getParameters()[0].getValue(), specifier.getParameters()[0].getValue());
-    Assert.assertEquals(pearSpec.getParameters()[1].getValue(), specifier.getParameters()[1].getValue());   
-    
-    //compare created specifier with a manually create pear specifier
-    PearSpecifier manPearSpec = new PearSpecifier_impl();
-    manPearSpec.setPearPath("/home/user/uimaApp/installedPears/testpear");
-    manPearSpec.setParameters(new Parameter[] { new Parameter_impl("param1", "val1"),
-        new Parameter_impl("param2", "val2") });
-
-    Assert.assertEquals(manPearSpec.getPearPath(), specifier.getPearPath());
-    Assert.assertEquals(manPearSpec.getParameters()[0].getValue(), specifier.getParameters()[0].getValue());
-    Assert.assertEquals(manPearSpec.getParameters()[1].getValue(), specifier.getParameters()[1].getValue());   
-
-  }
-  
-  /**
-   * pearSpecifier xmlization test
-   * 
-   * @throws Exception
-   */
-  public void testXmlization() throws Exception {
-    try {
-      PearSpecifier pearSpec = new PearSpecifier_impl();
-      pearSpec.setPearPath("/home/user/uimaApp/installedPears/testpear");
-      pearSpec.setParameters(new Parameter[] { new Parameter_impl("param1", "val1"),
-          new Parameter_impl("param2", "val2") });
-
-      StringWriter sw = new StringWriter();
-      pearSpec.toXML(sw);
-      PearSpecifier pearSpec2 = (PearSpecifier) UIMAFramework.getXMLParser().parse(
-              new XMLInputSource(new ByteArrayInputStream(sw.getBuffer().toString().getBytes()),
-                      null));
-      assertEquals(pearSpec, pearSpec2);
-    } catch (Exception e) {
-      JUnitExtension.handleException(e);
-    }
-  }
-
-  
- 
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.uima.resource.impl;
+
+import java.io.ByteArrayInputStream;
+import java.io.StringWriter;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.apache.uima.UIMAFramework;
+import org.apache.uima.resource.Parameter;
+import org.apache.uima.resource.PearSpecifier;
+import org.apache.uima.test.junit_extension.JUnitExtension;
+import org.apache.uima.util.XMLInputSource;
+
+/**
+ * PearSpecifier creation and Xmlization test
+ */
+public class PearSpecifier_implTest extends TestCase {
+ 
+  /**
+   * pearSpecifier creation test
+   * 
+   * @throws Exception
+   */
+  public void testProducePearResource() throws Exception {
+    PearSpecifier specifier = UIMAFramework.getResourceSpecifierFactory().createPearSpecifier();
+    specifier.setPearPath("/home/user/uimaApp/installedPears/testpear");
+    Parameter[] parameters = new Parameter[2];
+    parameters[0] = UIMAFramework.getResourceSpecifierFactory().createParameter();
+    parameters[0].setName("param1");
+    parameters[0].setValue("val1");
+    parameters[1] = UIMAFramework.getResourceSpecifierFactory().createParameter();
+    parameters[1].setName("param2");
+    parameters[1].setValue("val2");
+    specifier.setParameters(parameters);  
+      
+    //compare created specifier with available test specifier
+    XMLInputSource in = new XMLInputSource(
+            JUnitExtension.getFile("XmlParserTest/TestPearSpecifier.xml"));
+    PearSpecifier pearSpec = UIMAFramework.getXMLParser().parsePearSpecifier(in);
+    
+    Assert.assertEquals(pearSpec.getPearPath(), specifier.getPearPath());
+    Assert.assertEquals(pearSpec.getParameters()[0].getValue(), specifier.getParameters()[0].getValue());
+    Assert.assertEquals(pearSpec.getParameters()[1].getValue(), specifier.getParameters()[1].getValue());   
+    
+    //compare created specifier with a manually create pear specifier
+    PearSpecifier manPearSpec = new PearSpecifier_impl();
+    manPearSpec.setPearPath("/home/user/uimaApp/installedPears/testpear");
+    manPearSpec.setParameters(new Parameter[] { new Parameter_impl("param1", "val1"),
+        new Parameter_impl("param2", "val2") });
+
+    Assert.assertEquals(manPearSpec.getPearPath(), specifier.getPearPath());
+    Assert.assertEquals(manPearSpec.getParameters()[0].getValue(), specifier.getParameters()[0].getValue());
+    Assert.assertEquals(manPearSpec.getParameters()[1].getValue(), specifier.getParameters()[1].getValue());   
+
+  }
+  
+  /**
+   * pearSpecifier xmlization test
+   * 
+   * @throws Exception
+   */
+  public void testXmlization() throws Exception {
+    try {
+      PearSpecifier pearSpec = new PearSpecifier_impl();
+      pearSpec.setPearPath("/home/user/uimaApp/installedPears/testpear");
+      pearSpec.setParameters(new Parameter[] { new Parameter_impl("param1", "val1"),
+          new Parameter_impl("param2", "val2") });
+
+      StringWriter sw = new StringWriter();
+      pearSpec.toXML(sw);
+      PearSpecifier pearSpec2 = (PearSpecifier) UIMAFramework.getXMLParser().parse(
+              new XMLInputSource(new ByteArrayInputStream(sw.getBuffer().toString().getBytes()),
+                      null));
+      assertEquals(pearSpec, pearSpec2);
+    } catch (Exception e) {
+      JUnitExtension.handleException(e);
+    }
+  }
+
+  
+ 
+}

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/PearSpecifier_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/RelativePathResolver_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/ResourceCreationSpecifier_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/ResourceManager_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/TestResourceInterface.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/TestResourceInterface_impl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/impl/URISpecifier_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/ConfigurationParameterDeclarations_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/Import_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/MetaDataObject_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/ResourceManagerConfiguration_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TestFruitBagObject.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TestFruitObject.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypePriorities_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/service/impl/ResourceServiceAdapter_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/service/impl/ResourceService_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/service/impl/TestResourceServiceStub.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java?rev=690405&r1=690404&r2=690405&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java Fri Aug 29 15:10:52 2008
@@ -1,177 +1,177 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.uima.util;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import junit.framework.TestCase;
-
-import org.apache.uima.UIMAFramework;
-import org.apache.uima.cas.ArrayFS;
-import org.apache.uima.cas.CAS;
-import org.apache.uima.cas.FeatureStructure;
-import org.apache.uima.cas.impl.CASImpl;
-import org.apache.uima.cas.impl.LowLevelCAS;
-import org.apache.uima.cas.impl.XCASDeserializer;
-import org.apache.uima.cas.text.AnnotationFS;
-import org.apache.uima.cas_data.impl.CasComparer;
-import org.apache.uima.resource.metadata.FsIndexDescription;
-import org.apache.uima.resource.metadata.TypeDescription;
-import org.apache.uima.resource.metadata.TypeSystemDescription;
-import org.apache.uima.resource.metadata.impl.TypePriorities_impl;
-import org.apache.uima.resource.metadata.impl.TypeSystemDescription_impl;
-import org.apache.uima.test.junit_extension.JUnitExtension;
-
-/**
- * 
- */
-public class CasCopierTest extends TestCase {
-  private TypeSystemDescription typeSystem;
-
-  private FsIndexDescription[] indexes;
-
-  protected void setUp() throws Exception {
-    File typeSystemFile1 = JUnitExtension.getFile("ExampleCas/testTypeSystem.xml");
-    File indexesFile = JUnitExtension.getFile("ExampleCas/testIndexes.xml");
-
-    typeSystem = UIMAFramework.getXMLParser().parseTypeSystemDescription(
-            new XMLInputSource(typeSystemFile1));
-    indexes = UIMAFramework.getXMLParser().parseFsIndexCollection(new XMLInputSource(indexesFile))
-            .getFsIndexes();
-  }
-
-  public void testCopyCas() throws Exception {
-    // create a source CAS by deserializing from XCAS
-    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-    InputStream serCasStream = new FileInputStream(JUnitExtension
-            .getFile("ExampleCas/multiSofaCas.xml"));
-    XCASDeserializer.deserialize(serCasStream, srcCas);
-    serCasStream.close();
-
-    // create a destination CAS
-    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-
-    // do the copy
-    CasCopier.copyCas(srcCas, destCas, true);
-    // XCASSerializer.serialize(destCas, System.out);
-
-    // verify copy
-    CasComparer.assertEquals(srcCas, destCas);
-
-    // try with type systems are not identical (dest. a superset of src.)
-    TypeSystemDescription additionalTypes = new TypeSystemDescription_impl();
-    TypeDescription fooType = additionalTypes.addType("test.Foo", "Test Type",
-            "uima.tcas.Annotation");
-    fooType.addFeature("bar", "Test Feature", "uima.cas.String");
-    ArrayList destTypeSystems = new ArrayList();
-    destTypeSystems.add(additionalTypes);
-    destTypeSystems.add(typeSystem);
-    CAS destCas2 = CasCreationUtils.createCas(destTypeSystems);
-    CasCopier.copyCas(srcCas, destCas2, true);
-    CasComparer.assertEquals(srcCas, destCas);
-
-    // try with base CAS rather than initial view
-    CAS srcCasBase = ((CASImpl) srcCas).getBaseCAS();
-    destCas.reset();
-    CAS destCasBase = ((CASImpl) destCas).getBaseCAS();
-    CasCopier.copyCas(srcCasBase, destCasBase, true);
-    CasComparer.assertEquals(srcCasBase, destCasBase);
-  }
-
-  public void testCopyCasView() throws Exception {
-    // create a source CAS by deserializing from XCAS
-    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-    InputStream serCasStream = new FileInputStream(JUnitExtension.getFile("ExampleCas/cas.xml"));
-    XCASDeserializer.deserialize(serCasStream, srcCas);
-    serCasStream.close();
-
-    // create a destination CAS
-    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-
-    // do the copy
-    CasCopier copier = new CasCopier(srcCas, destCas);
-    copier.copyCasView(srcCas, true);
-
-    // verify copy
-    CasComparer.assertEquals(srcCas, destCas);
-  }
-
-  public void testCopyFs() throws Exception {
-    // create a source CAS by deserializing from XCAS
-    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-    InputStream serCasStream = new FileInputStream(JUnitExtension.getFile("ExampleCas/cas.xml"));
-    XCASDeserializer.deserialize(serCasStream, srcCas);
-    serCasStream.close();
-
-    // create a destination CAS and the CasCopier instance
-    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-    CasCopier copier = new CasCopier(srcCas, destCas);
-
-    // set sofa data in destination CAS (this is not copied automtically)
-    destCas.setDocumentText(srcCas.getDocumentText());
-
-    // copy an Annotation
-    Iterator annotIter = srcCas.getAnnotationIndex().iterator();
-    FeatureStructure annot = (FeatureStructure) annotIter.next();
-    FeatureStructure copy = copier.copyFs(annot);
-    // verify copy
-    CasComparer.assertEquals(annot, copy);
-
-    // copy a Relation (which will have references)
-    Iterator relationIter = srcCas.getIndexRepository().getIndex("testRelationIndex").iterator();
-    FeatureStructure relFS = (FeatureStructure) relationIter.next();
-    FeatureStructure relCopy = copier.copyFs(relFS);
-    // verify copy
-    CasComparer.assertEquals(relFS, relCopy);
-
-    // test null array element
-    ArrayFS arrFS = srcCas.createArrayFS(3);
-    arrFS.set(0, annot);
-    arrFS.set(1, null);
-    arrFS.set(2, relFS);
-    FeatureStructure copyArrFS = copier.copyFs(arrFS);
-    CasComparer.assertEquals(arrFS, copyArrFS);
-  }
-
-  public void testAnnotationWithNullSofaRef() throws Exception {
-    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-    CAS srcCasView = srcCas.createView("TestView");
-    srcCasView.setDocumentText("This is a test");
-    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
-    LowLevelCAS lowLevelSrcCasView = srcCasView.getLowLevelCAS();
-    int typeCode = lowLevelSrcCasView.ll_getTypeSystem().ll_getCodeForType(
-            srcCas.getAnnotationType());
-    int destFsAddr = lowLevelSrcCasView.ll_createFS(typeCode);
-    AnnotationFS fs = (AnnotationFS) lowLevelSrcCasView.ll_getFSForRef(destFsAddr);
-    fs.setIntValue(srcCas.getBeginFeature(), 0);
-    fs.setIntValue(srcCas.getEndFeature(), 4);
-    assertEquals("This", fs.getCoveredText());
-    srcCasView.addFsToIndexes(fs);
-    CasCopier.copyCas(srcCas, destCas, true);
-    CAS destCasView = destCas.getView("TestView");
-    Iterator annotIter = destCasView.getAnnotationIndex().iterator();
-    annotIter.next(); // document annotation
-    AnnotationFS copiedFs = (AnnotationFS) annotIter.next();
-    assertEquals("This", copiedFs.getCoveredText());
-  }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.uima.util;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import junit.framework.TestCase;
+
+import org.apache.uima.UIMAFramework;
+import org.apache.uima.cas.ArrayFS;
+import org.apache.uima.cas.CAS;
+import org.apache.uima.cas.FeatureStructure;
+import org.apache.uima.cas.impl.CASImpl;
+import org.apache.uima.cas.impl.LowLevelCAS;
+import org.apache.uima.cas.impl.XCASDeserializer;
+import org.apache.uima.cas.text.AnnotationFS;
+import org.apache.uima.cas_data.impl.CasComparer;
+import org.apache.uima.resource.metadata.FsIndexDescription;
+import org.apache.uima.resource.metadata.TypeDescription;
+import org.apache.uima.resource.metadata.TypeSystemDescription;
+import org.apache.uima.resource.metadata.impl.TypePriorities_impl;
+import org.apache.uima.resource.metadata.impl.TypeSystemDescription_impl;
+import org.apache.uima.test.junit_extension.JUnitExtension;
+
+/**
+ * 
+ */
+public class CasCopierTest extends TestCase {
+  private TypeSystemDescription typeSystem;
+
+  private FsIndexDescription[] indexes;
+
+  protected void setUp() throws Exception {
+    File typeSystemFile1 = JUnitExtension.getFile("ExampleCas/testTypeSystem.xml");
+    File indexesFile = JUnitExtension.getFile("ExampleCas/testIndexes.xml");
+
+    typeSystem = UIMAFramework.getXMLParser().parseTypeSystemDescription(
+            new XMLInputSource(typeSystemFile1));
+    indexes = UIMAFramework.getXMLParser().parseFsIndexCollection(new XMLInputSource(indexesFile))
+            .getFsIndexes();
+  }
+
+  public void testCopyCas() throws Exception {
+    // create a source CAS by deserializing from XCAS
+    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+    InputStream serCasStream = new FileInputStream(JUnitExtension
+            .getFile("ExampleCas/multiSofaCas.xml"));
+    XCASDeserializer.deserialize(serCasStream, srcCas);
+    serCasStream.close();
+
+    // create a destination CAS
+    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+
+    // do the copy
+    CasCopier.copyCas(srcCas, destCas, true);
+    // XCASSerializer.serialize(destCas, System.out);
+
+    // verify copy
+    CasComparer.assertEquals(srcCas, destCas);
+
+    // try with type systems are not identical (dest. a superset of src.)
+    TypeSystemDescription additionalTypes = new TypeSystemDescription_impl();
+    TypeDescription fooType = additionalTypes.addType("test.Foo", "Test Type",
+            "uima.tcas.Annotation");
+    fooType.addFeature("bar", "Test Feature", "uima.cas.String");
+    ArrayList destTypeSystems = new ArrayList();
+    destTypeSystems.add(additionalTypes);
+    destTypeSystems.add(typeSystem);
+    CAS destCas2 = CasCreationUtils.createCas(destTypeSystems);
+    CasCopier.copyCas(srcCas, destCas2, true);
+    CasComparer.assertEquals(srcCas, destCas);
+
+    // try with base CAS rather than initial view
+    CAS srcCasBase = ((CASImpl) srcCas).getBaseCAS();
+    destCas.reset();
+    CAS destCasBase = ((CASImpl) destCas).getBaseCAS();
+    CasCopier.copyCas(srcCasBase, destCasBase, true);
+    CasComparer.assertEquals(srcCasBase, destCasBase);
+  }
+
+  public void testCopyCasView() throws Exception {
+    // create a source CAS by deserializing from XCAS
+    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+    InputStream serCasStream = new FileInputStream(JUnitExtension.getFile("ExampleCas/cas.xml"));
+    XCASDeserializer.deserialize(serCasStream, srcCas);
+    serCasStream.close();
+
+    // create a destination CAS
+    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+
+    // do the copy
+    CasCopier copier = new CasCopier(srcCas, destCas);
+    copier.copyCasView(srcCas, true);
+
+    // verify copy
+    CasComparer.assertEquals(srcCas, destCas);
+  }
+
+  public void testCopyFs() throws Exception {
+    // create a source CAS by deserializing from XCAS
+    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+    InputStream serCasStream = new FileInputStream(JUnitExtension.getFile("ExampleCas/cas.xml"));
+    XCASDeserializer.deserialize(serCasStream, srcCas);
+    serCasStream.close();
+
+    // create a destination CAS and the CasCopier instance
+    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+    CasCopier copier = new CasCopier(srcCas, destCas);
+
+    // set sofa data in destination CAS (this is not copied automtically)
+    destCas.setDocumentText(srcCas.getDocumentText());
+
+    // copy an Annotation
+    Iterator annotIter = srcCas.getAnnotationIndex().iterator();
+    FeatureStructure annot = (FeatureStructure) annotIter.next();
+    FeatureStructure copy = copier.copyFs(annot);
+    // verify copy
+    CasComparer.assertEquals(annot, copy);
+
+    // copy a Relation (which will have references)
+    Iterator relationIter = srcCas.getIndexRepository().getIndex("testRelationIndex").iterator();
+    FeatureStructure relFS = (FeatureStructure) relationIter.next();
+    FeatureStructure relCopy = copier.copyFs(relFS);
+    // verify copy
+    CasComparer.assertEquals(relFS, relCopy);
+
+    // test null array element
+    ArrayFS arrFS = srcCas.createArrayFS(3);
+    arrFS.set(0, annot);
+    arrFS.set(1, null);
+    arrFS.set(2, relFS);
+    FeatureStructure copyArrFS = copier.copyFs(arrFS);
+    CasComparer.assertEquals(arrFS, copyArrFS);
+  }
+
+  public void testAnnotationWithNullSofaRef() throws Exception {
+    CAS srcCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+    CAS srcCasView = srcCas.createView("TestView");
+    srcCasView.setDocumentText("This is a test");
+    CAS destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
+    LowLevelCAS lowLevelSrcCasView = srcCasView.getLowLevelCAS();
+    int typeCode = lowLevelSrcCasView.ll_getTypeSystem().ll_getCodeForType(
+            srcCas.getAnnotationType());
+    int destFsAddr = lowLevelSrcCasView.ll_createFS(typeCode);
+    AnnotationFS fs = (AnnotationFS) lowLevelSrcCasView.ll_getFSForRef(destFsAddr);
+    fs.setIntValue(srcCas.getBeginFeature(), 0);
+    fs.setIntValue(srcCas.getEndFeature(), 4);
+    assertEquals("This", fs.getCoveredText());
+    srcCasView.addFsToIndexes(fs);
+    CasCopier.copyCas(srcCas, destCas, true);
+    CAS destCasView = destCas.getView("TestView");
+    Iterator annotIter = destCasView.getAnnotationIndex().iterator();
+    annotIter.next(); // document annotation
+    AnnotationFS copiedFs = (AnnotationFS) annotIter.next();
+    assertEquals("This", copiedFs.getCoveredText());
+  }
+}

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/CasCreationUtilsTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/FileUtilsTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/FileUtilsTest.java?rev=690405&r1=690404&r2=690405&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/FileUtilsTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/FileUtilsTest.java Fri Aug 29 15:10:52 2008
@@ -1,61 +1,61 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.uima.util;
-
-import java.io.File;
-import java.io.IOException;
-
-import junit.framework.TestCase;
-
-/**
- * 
- */
-public class FileUtilsTest extends TestCase {
-  public void testFindRelativePath() throws Exception {
-    File target = new File("/this/is/a/file.txt");
-    File base = new File("/this/is/a/test");
-    assertEquals("../file.txt", FileUtils.findRelativePath(target, base));
-
-    base = new File("c:/foo/bar/baz/dir/");
-    target = new File("c:/foo/d1/d2/d3/blah.xml");
-    assertEquals("../../../d1/d2/d3/blah.xml", FileUtils.findRelativePath(target, base));
-
-    if (File.separatorChar == '\\') {
-      base = new File("c:\\foo\\bar\\baz\\dir\\");
-      target = new File("c:\\foo\\d1\\d2\\d3\\blah.xml");
-      assertEquals("../../../d1/d2/d3/blah.xml", FileUtils.findRelativePath(target, base));
-    }
-  }
-
-  public void testReadWriteTempFile() throws IOException {
-    final String tmpDirPath = System.getProperty("java.io.tmpdir");
-    assertNotNull("java.io.tmpdir system property not available", tmpDirPath);
-    File tmpDir = FileUtils.createTempDir(new File(tmpDirPath), "fileUtilsTest");
-    File tmpFile1 = FileUtils.createTempFile("test", null, tmpDir);
-    File tmpFile2 = FileUtils.createTempFile("test", null, tmpDir);
-    final String text = "This is some text to test file writing.  Add an Umlaut for encoding tests:"
-        + "\n  Greetings from T\u00FCbingen!\n";
-    final String utf8 = "UTF-8";
-    FileUtils.saveString2File(text, tmpFile1);
-    FileUtils.saveString2File(text, tmpFile2, utf8);
-    assertEquals(text, FileUtils.file2String(tmpFile1));
-    assertEquals(text, FileUtils.file2String(tmpFile2, utf8));
-    FileUtils.deleteRecursive(tmpDir);
-  }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.uima.util;
+
+import java.io.File;
+import java.io.IOException;
+
+import junit.framework.TestCase;
+
+/**
+ * 
+ */
+public class FileUtilsTest extends TestCase {
+  public void testFindRelativePath() throws Exception {
+    File target = new File("/this/is/a/file.txt");
+    File base = new File("/this/is/a/test");
+    assertEquals("../file.txt", FileUtils.findRelativePath(target, base));
+
+    base = new File("c:/foo/bar/baz/dir/");
+    target = new File("c:/foo/d1/d2/d3/blah.xml");
+    assertEquals("../../../d1/d2/d3/blah.xml", FileUtils.findRelativePath(target, base));
+
+    if (File.separatorChar == '\\') {
+      base = new File("c:\\foo\\bar\\baz\\dir\\");
+      target = new File("c:\\foo\\d1\\d2\\d3\\blah.xml");
+      assertEquals("../../../d1/d2/d3/blah.xml", FileUtils.findRelativePath(target, base));
+    }
+  }
+
+  public void testReadWriteTempFile() throws IOException {
+    final String tmpDirPath = System.getProperty("java.io.tmpdir");
+    assertNotNull("java.io.tmpdir system property not available", tmpDirPath);
+    File tmpDir = FileUtils.createTempDir(new File(tmpDirPath), "fileUtilsTest");
+    File tmpFile1 = FileUtils.createTempFile("test", null, tmpDir);
+    File tmpFile2 = FileUtils.createTempFile("test", null, tmpDir);
+    final String text = "This is some text to test file writing.  Add an Umlaut for encoding tests:"
+        + "\n  Greetings from T\u00FCbingen!\n";
+    final String utf8 = "UTF-8";
+    FileUtils.saveString2File(text, tmpFile1);
+    FileUtils.saveString2File(text, tmpFile2, utf8);
+    assertEquals(text, FileUtils.file2String(tmpFile1));
+    assertEquals(text, FileUtils.file2String(tmpFile2, utf8));
+    FileUtils.deleteRecursive(tmpDir);
+  }
+}

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/FileUtilsTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/LevelTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/TestCollectionReader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/TypeSystemUtilTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/TypeSystemUtilTest.java?rev=690405&r1=690404&r2=690405&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/TypeSystemUtilTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/TypeSystemUtilTest.java Fri Aug 29 15:10:52 2008
@@ -1,52 +1,52 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.uima.util;
-
-import java.io.File;
-
-import org.apache.uima.UIMAFramework;
-import org.apache.uima.cas.CAS;
-import org.apache.uima.resource.metadata.TypeDescription;
-import org.apache.uima.resource.metadata.TypeSystemDescription;
-import org.apache.uima.test.junit_extension.JUnitExtension;
-
-import junit.framework.TestCase;
-
-public class TypeSystemUtilTest extends TestCase {
-  public void testTypeSystem2TypeSystemDescription() throws Exception {
-    //create a CAS with example type system
-    File typeSystemFile = JUnitExtension.getFile("ExampleCas/testTypeSystem.xml");
-    TypeSystemDescription tsDesc = UIMAFramework.getXMLParser().parseTypeSystemDescription(
-            new XMLInputSource(typeSystemFile));
-    
-    //add an example type to test FSArrays with and without elementTypes
-    TypeDescription type = tsDesc.addType("example.TestType", "", "uima.tcas.Annotation");
-    type.addFeature("testFeat", "", "uima.cas.FSArray","uima.tcas.Annotation", null);
-    TypeDescription type2 = tsDesc.addType("example.TestType2", "", "uima.tcas.Annotation");
-    type2.addFeature("testFeat", "", "uima.cas.FSArray");
-
-    
-    CAS cas = CasCreationUtils.createCas(tsDesc, null, null);    
-    //convert that CAS's type system back to a TypeSystemDescription
-    TypeSystemDescription tsDesc2 = TypeSystemUtil.typeSystem2TypeSystemDescription(cas.getTypeSystem());
-    tsDesc2.toXML(System.out);
-    //test that this is valid by creating a new CAS
-    CasCreationUtils.createCas(tsDesc2, null, null);
-  }
-}
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.uima.util;
+
+import java.io.File;
+
+import org.apache.uima.UIMAFramework;
+import org.apache.uima.cas.CAS;
+import org.apache.uima.resource.metadata.TypeDescription;
+import org.apache.uima.resource.metadata.TypeSystemDescription;
+import org.apache.uima.test.junit_extension.JUnitExtension;
+
+import junit.framework.TestCase;
+
+public class TypeSystemUtilTest extends TestCase {
+  public void testTypeSystem2TypeSystemDescription() throws Exception {
+    //create a CAS with example type system
+    File typeSystemFile = JUnitExtension.getFile("ExampleCas/testTypeSystem.xml");
+    TypeSystemDescription tsDesc = UIMAFramework.getXMLParser().parseTypeSystemDescription(
+            new XMLInputSource(typeSystemFile));
+    
+    //add an example type to test FSArrays with and without elementTypes
+    TypeDescription type = tsDesc.addType("example.TestType", "", "uima.tcas.Annotation");
+    type.addFeature("testFeat", "", "uima.cas.FSArray","uima.tcas.Annotation", null);
+    TypeDescription type2 = tsDesc.addType("example.TestType2", "", "uima.tcas.Annotation");
+    type2.addFeature("testFeat", "", "uima.cas.FSArray");
+
+    
+    CAS cas = CasCreationUtils.createCas(tsDesc, null, null);    
+    //convert that CAS's type system back to a TypeSystemDescription
+    TypeSystemDescription tsDesc2 = TypeSystemUtil.typeSystem2TypeSystemDescription(cas.getTypeSystem());
+    tsDesc2.toXML(System.out);
+    //test that this is valid by creating a new CAS
+    CasCreationUtils.createCas(tsDesc2, null, null);
+  }
+}

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/TypeSystemUtilTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/impl/JSR47Logger_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/impl/Logger_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/impl/LoggingTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/impl/ProcessTrace_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/impl/TestLog4jLogger_impl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/util/impl/XMLParser_implTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/EndOfSentence.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/EndOfSentence_Type.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Sentence.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Sentence_Type.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Separator.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Separator_Type.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Token.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/TokenType.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/TokenType_Type.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Token_Type.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Word.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/x/y/z/Word_Type.java
------------------------------------------------------------------------------
    svn:eol-style = native