[maven-release-plugin] copy for tag ruta-2.8.1
git-svn-id: https://svn.apache.org/repos/asf/uima/ruta/tags/ruta-2.8.1@1875720 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaLiteralMatcher.java b/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaLiteralMatcher.java
index 827d1d3..1a40482 100644
--- a/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaLiteralMatcher.java
+++ b/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaLiteralMatcher.java
@@ -72,8 +72,8 @@
if (beginAnchor != null && beginAnchor.getEnd() == end) {
return beginAnchor;
}
- RutaBasic endAnchor = stream.getEndAnchor(begin);
- if (beginAnchor == null && endAnchor == null) {
+ RutaBasic endAnchor = stream.getEndAnchor(end);
+ if (beginAnchor == null || endAnchor == null) {
// do not detect text passages that are not covered by internal segmentation in order to avoid
// unintended behavior
return null;
diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/rule/LiteralStringMatchTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/rule/LiteralStringMatchTest.java
index 9d4deff..95be43b 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/rule/LiteralStringMatchTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/rule/LiteralStringMatchTest.java
@@ -103,4 +103,41 @@
RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "I_____");
}
+
+ @Test
+ public void testInRutaBasicMatch() throws Exception {
+
+ String document = "1 abcd 2";
+ String script = "";
+ script += "\"ab\" {-> T1};";
+ script += "\"cd\" {-> T2};";
+ script += "\"1 ab\" {-> T3};";
+ script += "\"cd 2\" {-> T4};";
+ script += "NUM \"ab\" {-> T5};";
+ script += "\"cd\" {-> T6} @NUM;";
+
+ script += "\"ac\" {-> T7};";
+ script += "\"bd\" {-> T8};";
+ script += "\"1 ac\" {-> T9};";
+ script += "\"bd 2\" {-> T10};";
+ script += "NUM \"ac\" {-> T11};";
+ script += "\"bd\" {-> T6} @NUM;";
+
+ CAS cas = RutaTestUtils.getCAS(document);
+ Ruta.apply(cas, script);
+
+ RutaTestUtils.assertAnnotationsEquals(cas, 1, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 2, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 3, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 4, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 5, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 6, 0);
+
+ RutaTestUtils.assertAnnotationsEquals(cas, 7, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 8, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 9, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 10, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 11, 0);
+ RutaTestUtils.assertAnnotationsEquals(cas, 12, 0);
+ }
}