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);
+ }
}