You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by pk...@apache.org on 2018/07/27 12:19:26 UTC

svn commit: r1836815 - in /uima/ruta/trunk/ruta-core/src: main/java/org/apache/uima/ruta/engine/RutaEngine.java test/java/org/apache/uima/ruta/condition/CountTest.java test/java/org/apache/uima/ruta/engine/RutaEngineTest.java

Author: pkluegl
Date: Fri Jul 27 12:19:26 2018
New Revision: 1836815

URL: http://svn.apache.org/viewvc?rev=1836815&view=rev
Log:
UIMA-5569 - applied patch

Modified:
    uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java
    uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/CountTest.java
    uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaEngineTest.java

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=1836815&r1=1836814&r2=1836815&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 Fri Jul 27 12:19:26 2018
@@ -977,12 +977,12 @@ public class RutaEngine extends JCasAnno
       }
       RutaBlock block = script.getBlock(blockName);
       if (block == null) {
-        return;
+        continue;
       }
 
       RutaEnvironment environment = block.getEnvironment();
       if (!environment.ownsVariable(shortName)) {
-        return;
+        continue;
       }
       Object valueObj = null;
       Class<?> variableType = environment.getVariableType(shortName);

Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/CountTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/CountTest.java?rev=1836815&r1=1836814&r2=1836815&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/CountTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/CountTest.java Fri Jul 27 12:19:26 2018
@@ -19,8 +19,16 @@
 
 package org.apache.uima.ruta.condition;
 
+import java.io.IOException;
+import java.net.URISyntaxException;
+
+import org.apache.uima.analysis_engine.AnalysisEngineProcessException;
 import org.apache.uima.cas.CAS;
+import org.apache.uima.resource.ResourceConfigurationException;
+import org.apache.uima.resource.ResourceInitializationException;
+import org.apache.uima.ruta.engine.Ruta;
 import org.apache.uima.ruta.engine.RutaTestUtils;
+import org.apache.uima.util.InvalidXMLException;
 import org.junit.Test;
 
 public class CountTest {
@@ -37,4 +45,18 @@ public class CountTest {
     
     cas.release();    
   }
+  
+  @Test
+  public void testCountWithPeriodPostfix() throws ResourceInitializationException, InvalidXMLException, 
+    IOException, AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+    
+    String document = "Some text.";
+    String script = "(CW SW) {-> T1};";
+    script +="INT i = 0;";
+    script +="T1{COUNT(PERIOD, i)};";
+    script +="Document{(i>0)-> T2};";
+    CAS cas = RutaTestUtils.getCAS(document);
+    Ruta.apply(cas, script);
+    RutaTestUtils.assertAnnotationsEquals(cas, 2, 0);
+  }
 }

Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaEngineTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaEngineTest.java?rev=1836815&r1=1836814&r2=1836815&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaEngineTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaEngineTest.java Fri Jul 27 12:19:26 2018
@@ -18,6 +18,7 @@
  */
 package org.apache.uima.ruta.engine;
 
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
@@ -26,10 +27,13 @@ import java.util.List;
 
 import org.apache.commons.lang3.reflect.FieldUtils;
 import org.apache.uima.analysis_engine.AnalysisEngine;
+import org.apache.uima.analysis_engine.AnalysisEngineProcessException;
 import org.apache.uima.cas.CAS;
 import org.apache.uima.fit.factory.AnalysisEngineFactory;
 import org.apache.uima.jcas.JCas;
+import org.apache.uima.resource.ResourceInitializationException;
 import org.apache.uima.ruta.TypeUsageInformation;
+import org.apache.uima.util.InvalidXMLException;
 import org.junit.Assert;
 import org.junit.Test;
 
@@ -49,7 +53,7 @@ public class RutaEngineTest {
     AnalysisEngine ae = AnalysisEngineFactory.createEngine(RutaEngine.class,
             RutaEngine.PARAM_VAR_NAMES, new String[] { "typeVar" }, RutaEngine.PARAM_VAR_VALUES,
             new String[] { "TruePositive" }, RutaEngine.PARAM_RULES, script,
-            RutaEngine.PARAM_INDEX_ONLY_MENTIONED_TYPES, true, RutaEngine.PARAM_INDEX_ADDITONALLY,
+            RutaEngine.PARAM_INDEX_ONLY_MENTIONED_TYPES, Boolean.valueOf(true), RutaEngine.PARAM_INDEX_ADDITONALLY,
             new String[] { "COMMA" });
     RutaEngine engine = (RutaEngine) FieldUtils.readField(ae, "mAnalysisComponent", true);
 
@@ -81,5 +85,22 @@ public class RutaEngineTest {
             "org.apache.uima.ruta.type.WS", "uima.tcas.DocumentAnnotation"), usedTypesList);
 
   }
+  
+  @Test
+  public void testInitializeVariableValues() throws ResourceInitializationException, InvalidXMLException, IOException, AnalysisEngineProcessException{
+    
+    String document = "Some text.";
+    String script = "BOOLEAN var4 = false;";
+    script +="(CW SW) {var4 -> T1};";
+    
+    AnalysisEngine ae = AnalysisEngineFactory.createEngine(RutaEngine.class,
+            RutaEngine.PARAM_RULES, script,
+            RutaEngine.PARAM_VAR_NAMES, new String[] {"var1", "var2", "var3", "var4"},
+            RutaEngine.PARAM_VAR_VALUES, new String[] {"false", "false", "false", "true"});
+    
+    CAS cas = RutaTestUtils.getCAS(document);
+    ae.process(cas);
+    RutaTestUtils.assertAnnotationsEquals(cas, 1, 1);
+  }
 
 }