Author: pkluegl Date: Wed Oct 8 11:32:50 2014 New Revision: 1630074 URL: http://svn.apache.org/r1630074 Log: UIMA-4045 and UIMA-4046 - initialize types of all modules - added test
Added: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/AdditionalScriptUimaFitTest.java (with props) uima/ruta/trunk/ruta-core/src/test/resources/META-INF/ uima/ruta/trunk/ruta-core/src/test/resources/META-INF/org.apache.uima.fit/ uima/ruta/trunk/ruta-core/src/test/resources/META-INF/org.apache.uima.fit/types.txt (with props) uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Additional.ruta uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/AdditionalTypeSystem.xml (with props) uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Main.ruta uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/MainTypeSystem.xml (with props) Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/BasicTypeSystem.xml Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java?rev=1630074&r1=1630073&r2=1630074&view=diff ============================================================================== --- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java (original) +++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java Wed Oct 8 11:32:50 2014 @@ -541,7 +541,7 @@ public class RutaEngine extends JCasAnno Collection<RutaModule> values = script.getScripts().values(); for (RutaModule eachModule : values) { relinkEnvironments(eachModule, mainRootBlock, new ArrayList<RutaModule>()); - // initializeTypes(eachModule, cas); + initializeTypes(eachModule, cas); } } Added: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/AdditionalScriptUimaFitTest.java URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/AdditionalScriptUimaFitTest.java?rev=1630074&view=auto ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/AdditionalScriptUimaFitTest.java (added) +++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/AdditionalScriptUimaFitTest.java Wed Oct 8 11:32:50 2014 @@ -0,0 +1,114 @@ +/* + * 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.ruta; + +import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription; +import static org.junit.Assert.assertEquals; + +import org.apache.uima.UIMAFramework; +import org.apache.uima.analysis_engine.AnalysisEngine; +import org.apache.uima.analysis_engine.AnalysisEngineDescription; +import org.apache.uima.cas.CAS; +import org.apache.uima.cas.FSIterator; +import org.apache.uima.cas.Type; +import org.apache.uima.cas.text.AnnotationFS; +import org.apache.uima.cas.text.AnnotationIndex; +import org.apache.uima.ruta.engine.RutaEngine; +import org.junit.Test; + +public class AdditionalScriptUimaFitTest { + + @Test + public void test() throws Exception { + + AnalysisEngineDescription aed = createEngineDescription(RutaEngine.class, + RutaEngine.PARAM_MAIN_SCRIPT, "org.apache.uima.ruta.Main", RutaEngine.PARAM_DEBUG, false, + RutaEngine.PARAM_ADDITIONAL_SCRIPTS, new String[] {"org.apache.uima.ruta.Additional"} +// , RutaEngine.PARAM_STRICT_IMPORTS, true + ); + + + AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(aed); + CAS cas = ae.newCAS(); + cas.setDocumentText("Some text 10."); + + ae.process(cas); + + Type t = null; + AnnotationIndex<AnnotationFS> ai = null; + FSIterator<AnnotationFS> iterator = null; + + t = cas.getTypeSystem().getType("org.apache.uima.ruta.Additional.NewType1"); + ai = cas.getAnnotationIndex(t); + iterator = ai.iterator(); + assertEquals(1, ai.size()); + assertEquals("10", iterator.next().getCoveredText()); + + t = cas.getTypeSystem().getType("org.apache.uima.ruta.Additional.NewType2"); + ai = cas.getAnnotationIndex(t); + iterator = ai.iterator(); + assertEquals(1, ai.size()); + assertEquals("Some", iterator.next().getCoveredText()); + + if (cas != null) { + cas.release(); + } + + } + + @Test + public void testStrictImport() throws Exception { + + AnalysisEngineDescription aed = createEngineDescription(RutaEngine.class, + RutaEngine.PARAM_MAIN_SCRIPT, "org.apache.uima.ruta.Main", RutaEngine.PARAM_DEBUG, false, + RutaEngine.PARAM_ADDITIONAL_SCRIPTS, new String[] {"org.apache.uima.ruta.Additional"} + , RutaEngine.PARAM_STRICT_IMPORTS, true + ); + + + AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(aed); + CAS cas = ae.newCAS(); + cas.setDocumentText("Some text 10."); + + ae.process(cas); + + Type t = null; + AnnotationIndex<AnnotationFS> ai = null; + FSIterator<AnnotationFS> iterator = null; + + t = cas.getTypeSystem().getType("org.apache.uima.ruta.Additional.NewType1"); + ai = cas.getAnnotationIndex(t); + iterator = ai.iterator(); + assertEquals(1, ai.size()); + assertEquals("10", iterator.next().getCoveredText()); + + t = cas.getTypeSystem().getType("org.apache.uima.ruta.Additional.NewType2"); + ai = cas.getAnnotationIndex(t); + iterator = ai.iterator(); + assertEquals(1, ai.size()); + assertEquals("Some", iterator.next().getCoveredText()); + + if (cas != null) { + cas.release(); + } + + } + +} Propchange: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/AdditionalScriptUimaFitTest.java ------------------------------------------------------------------------------ svn:eol-style = native Added: uima/ruta/trunk/ruta-core/src/test/resources/META-INF/org.apache.uima.fit/types.txt URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/resources/META-INF/org.apache.uima.fit/types.txt?rev=1630074&view=auto ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/resources/META-INF/org.apache.uima.fit/types.txt (added) +++ uima/ruta/trunk/ruta-core/src/test/resources/META-INF/org.apache.uima.fit/types.txt Wed Oct 8 11:32:50 2014 @@ -0,0 +1 @@ +classpath*:org/apache/uima/ruta/MainTypeSystem.xml Propchange: uima/ruta/trunk/ruta-core/src/test/resources/META-INF/org.apache.uima.fit/types.txt ------------------------------------------------------------------------------ svn:eol-style = native Added: uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Additional.ruta URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Additional.ruta?rev=1630074&view=auto ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Additional.ruta (added) +++ uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Additional.ruta Wed Oct 8 11:32:50 2014 @@ -0,0 +1,9 @@ +PACKAGE org.apache.uima.ruta; +DECLARE NewType1, NewType2; +TYPE RutaNum = org.apache.uima.ruta.type.NUM; +RutaNum {-> NewType1}; +CW{-> NewType2}; + + + + Added: uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/AdditionalTypeSystem.xml URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/AdditionalTypeSystem.xml?rev=1630074&view=auto ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/AdditionalTypeSystem.xml (added) +++ uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/AdditionalTypeSystem.xml Wed Oct 8 11:32:50 2014 @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<typeSystemDescription xmlns="http://uima.apache.org/resourceSpecifier"> + <name>org.apache.uima.ruta.AdditionalTypeSystem</name> + <imports> + <import location="BasicTypeSystem.xml"/> + </imports> + <types> + <typeDescription> + <name>org.apache.uima.ruta.Additional.NewType1</name> + <description>Type defined in org.apache.uima.ruta.Additional</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.Additional.NewType2</name> + <description>Type defined in org.apache.uima.ruta.Additional</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + </types> +</typeSystemDescription> Propchange: uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/AdditionalTypeSystem.xml ------------------------------------------------------------------------------ svn:eol-style = native Modified: uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/BasicTypeSystem.xml URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/BasicTypeSystem.xml?rev=1630074&r1=1630073&r2=1630074&view=diff ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/BasicTypeSystem.xml (original) +++ uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/BasicTypeSystem.xml Wed Oct 8 11:32:50 2014 @@ -140,7 +140,7 @@ <typeDescription> <name>org.apache.uima.ruta.type.Document</name> <description/> - <supertypeName>uima.tcas.DocumentAnnotation</supertypeName> + <supertypeName>uima.tcas.Annotation</supertypeName> </typeDescription> <typeDescription> <name>org.apache.uima.ruta.type.TokenSeed</name> Added: uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Main.ruta URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Main.ruta?rev=1630074&view=auto ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Main.ruta (added) +++ uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/Main.ruta Wed Oct 8 11:32:50 2014 @@ -0,0 +1,3 @@ +PACKAGE org.apache.uima.ruta; +SCRIPT org.apache.uima.ruta.Additional; +Document{-> CALL(Additional)}; Added: uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/MainTypeSystem.xml URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/MainTypeSystem.xml?rev=1630074&view=auto ============================================================================== --- uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/MainTypeSystem.xml (added) +++ uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/MainTypeSystem.xml Wed Oct 8 11:32:50 2014 @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<typeSystemDescription xmlns="http://uima.apache.org/resourceSpecifier"> + <name>org.apache.uima.ruta.MainTypeSystem</name> + <imports> + <import location="BasicTypeSystem.xml"/> + <import location="AdditionalTypeSystem.xml"/> + </imports> +</typeSystemDescription> Propchange: uima/ruta/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/MainTypeSystem.xml ------------------------------------------------------------------------------ svn:eol-style = native