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 2015/11/24 21:45:21 UTC

svn commit: r1716253 - /uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java

Author: schor
Date: Tue Nov 24 20:45:21 2015
New Revision: 1716253

URL: http://svn.apache.org/viewvc?rev=1716253&view=rev
Log:
[UIMA-4663] update the Cas Copier test - it was trying to copy a subtype of AnnotationBase into the base CAS and expected it to work, but it is not allowed, because the base CAS has no Sofa and cannot be used to store Feature Structures which are subtypes of Annotation Base

Modified:
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java

Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java?rev=1716253&r1=1716252&r2=1716253&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/test/java/org/apache/uima/util/CasCopierTest.java Tue Nov 24 20:45:21 2015
@@ -30,6 +30,7 @@ import org.apache.uima.UIMAFramework;
 import org.apache.uima.UIMARuntimeException;
 import org.apache.uima.cas.ArrayFS;
 import org.apache.uima.cas.CAS;
+import org.apache.uima.cas.CASRuntimeException;
 import org.apache.uima.cas.FSIterator;
 import org.apache.uima.cas.FeatureStructure;
 import org.apache.uima.cas.impl.CASImpl;
@@ -336,13 +337,22 @@ public class CasCopierTest extends TestC
     CasComparer.assertEquals(arrFS, copyArrFS);
     
     // test with using base cas
+    
+    // Note that in v3, you cannot create subtypes of AnnotationBase in the base CAS
     destCas = CasCreationUtils.createCas(typeSystem, new TypePriorities_impl(), indexes);
     destCas.setDocumentText(srcCas.getDocumentText());
     copier = new CasCopier(((CASImpl)srcCas).getBaseCAS(), ((CASImpl)destCas).getBaseCAS());
 
     annotIter = srcCas.getAnnotationIndex().iterator();
     annot = annotIter.next();
-    copy = copier.copyFs(annot);
+    boolean wascaught = false;
+    try {
+      copy = copier.copyFs(annot);
+    } catch (CASRuntimeException e) {
+      wascaught = true;
+      assertEquals(e.getMessageKey(), CASRuntimeException.DISALLOW_CREATE_ANNOTATION_IN_BASE_CAS);
+    }
+    assertTrue(wascaught);
     // verify copy
     CasComparer.assertEquals(annot, copy);
   }