[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);

+  }

 }