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 2016/08/31 15:49:00 UTC
svn commit: r1758632 - in /uima/ruta/trunk/ruta-core/src:
main/java/org/apache/uima/ruta/expression/feature/LazyFeature.java
test/java/org/apache/uima/ruta/expression/IndexedListExpressionTest.java
Author: pkluegl
Date: Wed Aug 31 15:49:00 2016
New Revision: 1758632
URL: http://svn.apache.org/viewvc?rev=1758632&view=rev
Log:
UIMA-5089
- throw meaningful exception if lazy feature was not resolved
- deactivated test that should not have been active
Modified:
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/LazyFeature.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/IndexedListExpressionTest.java
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/LazyFeature.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/LazyFeature.java?rev=1758632&r1=1758631&r2=1758632&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/LazyFeature.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/LazyFeature.java Wed Aug 31 15:49:00 2016
@@ -53,31 +53,37 @@ public class LazyFeature implements Feat
@Override
public int compareTo(Feature o) {
+ checkDelegate();
return delegate.compareTo(o);
}
@Override
public Type getDomain() {
+ checkDelegate();
return delegate.getDomain();
}
@Override
public Type getRange() {
+ checkDelegate();
return delegate.getRange();
}
@Override
public String getName() {
+ checkDelegate();
return delegate.getName();
}
@Override
public String getShortName() {
+ checkDelegate();
return delegate.getShortName();
}
@Override
public boolean isMultipleReferencesAllowed() {
+ checkDelegate();
return delegate.isMultipleReferencesAllowed();
}
@@ -85,5 +91,11 @@ public class LazyFeature implements Feat
return featureName;
}
+ private void checkDelegate() {
+ if(delegate == null) {
+ throw new RuntimeException("Feature with name '"+ featureName +"' has not yet been resolved. Most likely, it is not defined for the given type.");
+ }
+
+ }
}
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/IndexedListExpressionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/IndexedListExpressionTest.java?rev=1758632&r1=1758631&r2=1758632&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/IndexedListExpressionTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/IndexedListExpressionTest.java Wed Aug 31 15:49:00 2016
@@ -22,31 +22,29 @@ package org.apache.uima.ruta.expression;
import org.apache.uima.cas.CAS;
import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
+import org.junit.Ignore;
import org.junit.Test;
public class IndexedListExpressionTest {
+
@Test
- public void test() {
+ @Ignore
+ public void test() throws Exception{
String document = "Some text.";
String script = "";
- script += "STRINGLIST sl = {\"Some\", \"text\"}";
+ script += "STRINGLIST sl = {\"Some\", \"text\"};";
script += "W.ct == sl[0]{-> T1};";
script += "W.ct == sl[1]{-> T2};";
script += "W{REGEXP(sl[0]) -> T3};";
script += "W{REGEXP(sl[1]) -> T4};";
- CAS cas = null;
- try {
- cas = RutaTestUtils.getCAS(document);
- Ruta.apply(cas, script);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ CAS cas = RutaTestUtils.getCAS(document);
+ Ruta.apply(cas, script);
+
+ RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "Some");
+ RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "text");
+ RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "Some");
+ RutaTestUtils.assertAnnotationsEquals(cas, 4, 1, "text");
-// RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "Some");
-// RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "text");
-// RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "Some");
-// RutaTestUtils.assertAnnotationsEquals(cas, 4, 1, "text");
-
}
}