Merge pull request #32 from apache/UIMA-6332-Ruta-change-seeders-param-default-to-TextSeeder-Part2

UIMA-6332: Ruta: change seeders param default to TextSeeder Part 2
diff --git a/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java b/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java
index f0e5a4e..87d7c61 100644
--- a/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java
+++ b/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java
@@ -29,6 +29,7 @@
 import java.util.Collection;

 import java.util.HashMap;

 import java.util.Iterator;

+import java.util.LinkedHashMap;

 import java.util.List;

 import java.util.Map;

 import java.util.Map.Entry;

@@ -50,6 +51,7 @@
 import org.apache.uima.resource.ResourceSpecifier;

 import org.apache.uima.resource.metadata.TypeDescription;

 import org.apache.uima.resource.metadata.TypeSystemDescription;

+import org.apache.uima.ruta.seed.DefaultSeeder;

 import org.apache.uima.util.CasCreationUtils;

 import org.apache.uima.util.CasIOUtils;

 import org.apache.uima.util.FileUtils;

@@ -343,6 +345,18 @@
     return cas;

   }

 

+  public static CAS processTestScriptWithDefaultSeeder(Class<?> testClass) throws Exception {

+    String name = testClass.getSimpleName();

+    String namespace = testClass.getPackage().getName().replaceAll("\\.", "/");

+    String scriptPath = namespace + "/" + name + RutaEngine.SCRIPT_FILE_EXTENSION;

+    String textPath = namespace + "/" + name + ".txt";

+

+    Map<String, Object> params = new LinkedHashMap<>();

+    params.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });

+

+    return RutaTestUtils.process(scriptPath, textPath, params, 50);

+  }

+

   public static void storeCas(CAS cas, String name) {

     File file = new File("input/" + name + ".xmi");

     file.getParentFile().mkdirs();

@@ -356,4 +370,5 @@
       IOUtils.closeQuietly(fos);

     }

   }

+

 }

diff --git a/ruta-core/src/main/resources/org/apache/uima/ruta/engine/BasicEngine.xml b/ruta-core/src/main/resources/org/apache/uima/ruta/engine/BasicEngine.xml
index 54ce344..487c3b4 100644
--- a/ruta-core/src/main/resources/org/apache/uima/ruta/engine/BasicEngine.xml
+++ b/ruta-core/src/main/resources/org/apache/uima/ruta/engine/BasicEngine.xml
@@ -320,7 +320,7 @@
         <name>seeders</name>

         <value>

           <array>

-            <string>org.apache.uima.ruta.seed.DefaultSeeder</string>

+            <string>org.apache.uima.ruta.seed.TextSeeder</string>

           </array>

         </value>

       </nameValuePair>

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java
index 1f0c10d..5294374 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java
@@ -40,6 +40,7 @@
 import org.apache.uima.ruta.engine.RutaEngine;
 import org.apache.uima.ruta.engine.RutaTestUtils;
 import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature;
+import org.apache.uima.ruta.seed.DefaultSeeder;
 import org.apache.uima.util.InvalidXMLException;
 import org.junit.Test;
 import org.xml.sax.SAXException;
@@ -47,7 +48,8 @@
 public class WSDictionaryTest {
 
   @Test
-  public void test() throws SAXException, ResourceInitializationException, InvalidXMLException, IOException {
+  public void test()
+          throws SAXException, ResourceInitializationException, InvalidXMLException, IOException {
     String document = "Peter Kluegl, Marshall Schor, Joern Kottmann\n";
     document += "PeterKluegl, MarshallSchor, JoernKottmann\n";
     document += "Peter<x>Kluegl, Marshall<x>Schor, Joern<x>Kottmann\n";
@@ -81,7 +83,8 @@
   }
 
   @Test
-  public void testTableWithWS() throws ResourceInitializationException, IOException, InvalidXMLException, SAXException {
+  public void testTableWithWS()
+          throws ResourceInitializationException, IOException, InvalidXMLException, SAXException {
     String document = "Peter Kluegl, Marshall Schor, Joern Kottmann\n";
     document += "PeterKluegl, MarshallSchor, JoernKottmann\n";
     document += "Peter<x>Kluegl, Marshall<x>Schor, Joern<x>Kottmann\n";
@@ -177,6 +180,7 @@
     try {
       Map<String, Object> map = new HashMap<>();
       map.put(RutaEngine.PARAM_DICT_REMOVE_WS, true);
+      map.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });
       Ruta.apply(cas, script, map);
     } catch (Exception e) {
       fail("Failed to execute analysis engine. Reason: " + e.getMessage());
diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/AddFilterTypeTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/AddFilterTypeTest.java
index 31fc58a..c7109e6 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/AddFilterTypeTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/AddFilterTypeTest.java
@@ -26,12 +26,12 @@
 public class AddFilterTypeTest {

 

   @Test

-  public void test() {

-    

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

-    

+  public void test() throws Exception {

+

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

+

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, " text<br/>");

-       

+

     cas.release();

   }

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/AddRetainTypeTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/AddRetainTypeTest.java
index 9fc6096..2331ac2 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/AddRetainTypeTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/AddRetainTypeTest.java
@@ -26,9 +26,9 @@
 public class AddRetainTypeTest {

 

   @Test

-  public void test() {

+  public void test() throws Exception {

 

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

 

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, " text<br/>");

 

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/FilterTypeTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/FilterTypeTest.java
index d01727b..663c231 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/FilterTypeTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/FilterTypeTest.java
@@ -26,12 +26,12 @@
 public class FilterTypeTest {

 

   @Test

-  public void test() {

-    

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

-   

+  public void test() throws Exception {

+

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

+

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, " text<br/>");

-   

+

     cas.release();

   }

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/MarkTableTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/MarkTableTest.java
index 9886238..3bc6dfd 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/MarkTableTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/MarkTableTest.java
@@ -22,6 +22,7 @@
 import static org.junit.Assert.assertEquals;

 

 import java.util.ArrayList;

+import java.util.LinkedHashMap;

 import java.util.List;

 import java.util.Map;

 import java.util.TreeMap;

@@ -35,19 +36,20 @@
 import org.apache.uima.ruta.engine.RutaEngine;

 import org.apache.uima.ruta.engine.RutaTestUtils;

 import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature;

+import org.apache.uima.ruta.seed.DefaultSeeder;

 import org.junit.Test;

 

 public class MarkTableTest {

 

   @Test

-  public void test() {

+  public void test() throws Exception {

     String name = this.getClass().getSimpleName();

     String namespace = this.getClass().getPackage().getName().replaceAll("\\.", "/");

 

     Map<String, String> complexTypes = new TreeMap<String, String>();

     String typeName = "org.apache.uima.Person";

     complexTypes.put(typeName, "uima.tcas.Annotation");

-    

+

     Map<String, List<TestFeature>> features = new TreeMap<String, List<TestFeature>>();

     List<TestFeature> list = new ArrayList<RutaTestUtils.TestFeature>();

     features.put(typeName, list);

@@ -55,15 +57,12 @@
     list.add(new TestFeature(fn1, "", "uima.cas.String"));

     String fn2 = "system";

     list.add(new TestFeature(fn2, "", "uima.cas.String"));

-    

-    CAS cas = null;

-    try {

-      cas = RutaTestUtils.process(namespace + "/" + name + RutaEngine.SCRIPT_FILE_EXTENSION, namespace + "/" + name

-              + ".txt", 50, false, false, complexTypes, features, namespace + "/");

-    } catch (Exception e) {

-      e.printStackTrace();

-      assert (false);

-    }

+

+    Map<String, Object> params = new LinkedHashMap<>();

+    params.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });

+    CAS cas = RutaTestUtils.process(namespace + "/" + name + RutaEngine.SCRIPT_FILE_EXTENSION,

+            namespace + "/" + name + ".txt", params, 50, complexTypes, features, namespace + "/",

+            null);

     Type t = null;

     AnnotationIndex<AnnotationFS> ai = null;

     FSIterator<AnnotationFS> iterator = null;

@@ -74,46 +73,45 @@
     Feature f1 = t.getFeatureByBaseName(fn1);

     Feature f2 = t.getFeatureByBaseName(fn2);

     ai = cas.getAnnotationIndex(t);

-    

+

     assertEquals(6, ai.size());

     iterator = ai.iterator();

-    

+

     next = iterator.next();

     v1 = next.getStringValue(f1);

     v2 = next.getStringValue(f2);

     assertEquals("Peter", v1);

     assertEquals("Ruta", v2);

-    

+

     next = iterator.next();

     v1 = next.getStringValue(f1);

     v2 = next.getStringValue(f2);

     assertEquals("Marshall", v1);

     assertEquals("UIMA", v2);

-    

+

     next = iterator.next();

     v1 = next.getStringValue(f1);

     v2 = next.getStringValue(f2);

     assertEquals("Joern", v1);

     assertEquals("CAS Editor", v2);

-    

+

     next = iterator.next();

     v1 = next.getStringValue(f1);

     v2 = next.getStringValue(f2);

     assertEquals("Peter", v1);

     assertEquals("Ruta", v2);

-    

+

     next = iterator.next();

     v1 = next.getStringValue(f1);

     v2 = next.getStringValue(f2);

     assertEquals("Marshall", v1);

     assertEquals("UIMA", v2);

-    

+

     next = iterator.next();

     v1 = next.getStringValue(f1);

     v2 = next.getStringValue(f2);

     assertEquals("Joern", v1);

-    assertEquals("CAS Editor", v2);    

-    

-    cas.release();    

+    assertEquals("CAS Editor", v2);

+

   }

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveFilterTypeTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveFilterTypeTest.java
index 33cf366..c840f3b 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveFilterTypeTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveFilterTypeTest.java
@@ -26,9 +26,9 @@
 public class RemoveFilterTypeTest {

 

   @Test

-  public void test() {

+  public void test() throws Exception {

 

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

 

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "some text");

 

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveRetainTypeTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveRetainTypeTest.java
index 81f716d..279cbcc 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveRetainTypeTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/RemoveRetainTypeTest.java
@@ -26,12 +26,12 @@
 public class RemoveRetainTypeTest {

 

   @Test

-  public void test() {

-    

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

-    

+  public void test() throws Exception {

+

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

+

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, " text<br/>");

-       

+

     cas.release();

   }

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/ReplaceTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/ReplaceTest.java
index 93e33f2..6a1c0ca 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/ReplaceTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/ReplaceTest.java
@@ -34,10 +34,10 @@
 public class ReplaceTest {

 

   @Test

-  public void test() {

+  public void test() throws Exception {

 

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

-    

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

+

     Type t = null;

     AnnotationIndex<AnnotationFS> ai = null;

     FSIterator<AnnotationFS> iterator = null;

@@ -50,7 +50,7 @@
     Feature feature = t.getFeatureByBaseName("replacement");

     String stringValue = afs.getStringValue(feature);

     assertEquals("MARKUP", stringValue);

-    

-    cas.release();    

+

+    cas.release();

   }

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/RetainTypeTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/RetainTypeTest.java
index 47ebf87..c9dd3a9 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/RetainTypeTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/RetainTypeTest.java
@@ -26,13 +26,13 @@
 public class RetainTypeTest {

 

   @Test

-  public void test() {

-    

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

-        

-    RutaTestUtils.assertAnnotationsEquals(cas, 1, 2, " some"," text");

+  public void test() throws Exception {

+

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

+

+    RutaTestUtils.assertAnnotationsEquals(cas, 1, 2, " some", " text");

     RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "text<br/>");

-    

+

     cas.release();

   }

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java
index 48bf2f9..ffca39a 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java
@@ -27,9 +27,9 @@
 public class Shift1Test {

 

   @Test

-  public void test() {

+  public void test() throws Exception {

 

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

 

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "only some text<br/>");

 

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift2Test.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift2Test.java
index dccfabf..1fbf532 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift2Test.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift2Test.java
@@ -23,6 +23,7 @@
 

 import java.util.ArrayList;

 import java.util.HashMap;

+import java.util.LinkedHashMap;

 import java.util.List;

 import java.util.Map;

 import java.util.TreeMap;

@@ -33,22 +34,22 @@
 import org.apache.uima.cas.Type;

 import org.apache.uima.cas.text.AnnotationFS;

 import org.apache.uima.cas.text.AnnotationIndex;

+import org.apache.uima.ruta.engine.Ruta;

 import org.apache.uima.ruta.engine.RutaEngine;

 import org.apache.uima.ruta.engine.RutaTestUtils;

 import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature;

+import org.apache.uima.ruta.seed.DefaultSeeder;

 import org.junit.Test;

 

 public class Shift2Test {

 

   @Test

-  public void test() {

-    String name = this.getClass().getSimpleName();

-    String namespace = this.getClass().getPackage().getName().replaceAll("\\.", "/");

-    

+  public void test() throws Exception {

+

     Map<String, String> complexTypes = new HashMap<String, String>();

     String typeName = "org.apache.uima.FS";

     complexTypes.put(typeName, "uima.tcas.Annotation");

-    

+

     Map<String, List<TestFeature>> features = new TreeMap<String, List<TestFeature>>();

     List<TestFeature> list = new ArrayList<RutaTestUtils.TestFeature>();

     features.put(typeName, list);

@@ -56,15 +57,17 @@
     list.add(new TestFeature(fn1, "", "uima.tcas.Annotation"));

     String fn2 = "lang";

     list.add(new TestFeature(fn2, "", "uima.cas.String"));

-    

-    CAS cas = null;

-    try {

-      cas = RutaTestUtils.process(namespace + "/" + name + RutaEngine.SCRIPT_FILE_EXTENSION, namespace + "/" + name

-              + ".txt", 50, false, false, complexTypes, features, namespace + "/");

-    } catch (Exception e) {

-      e.printStackTrace();

-      assert (false);

-    }

+

+    Map<String, Object> params = new LinkedHashMap<>();

+    params.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });

+

+    CAS cas = RutaTestUtils.getCAS("only some text<br/>", complexTypes, features);

+    String script = "";

+    script += "CREATE(FS, \"doc\" = Document, \"lang\" = \"unknown\");\r\n";

+    script += "RETAINTYPE(MARKUP);\r\n";

+    script += "W{STARTSWITH(FS) -> SHIFT(FS, 1, 2, true)} W+ MARKUP;";

+    Ruta.apply(cas, script, params);

+

     AnnotationIndex<AnnotationFS> ai = null;

     FSIterator<AnnotationFS> iterator = null;

 

@@ -76,11 +79,11 @@
     assertEquals(1, ai.size());

     AnnotationFS next = iterator.next();

     AnnotationFS v1 = (AnnotationFS) next.getFeatureValue(f1);

-    String v2 = next.getStringValue(f2); 

+    String v2 = next.getStringValue(f2);

     assertEquals("only some text<br/>", v1.getCoveredText());

     assertEquals("unknown", v2);

     assertEquals("only some text", next.getCoveredText());

-    

+

     cas.release();

   }

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/action/TrimTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/action/TrimTest.java
index 7cda1d0..19755e5 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/action/TrimTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/action/TrimTest.java
@@ -27,9 +27,9 @@
 public class TrimTest {

 

   @Test

-  public void test() {

+  public void test() throws Exception {

 

-    CAS cas = RutaTestUtils.processTestScript(this.getClass());

+    CAS cas = RutaTestUtils.processTestScriptWithDefaultSeeder(this.getClass());

 

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "some text");

     RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "some text");

@@ -54,9 +54,9 @@
     } catch (Exception e) {

       e.printStackTrace();

     }

-    

+

     RutaTestUtils.assertAnnotationsEquals(cas, 2, 0);

-    

+

   }

 

 }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaModifierTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaModifierTest.java
index a4f229f..0c36ca9 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaModifierTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaModifierTest.java
@@ -24,6 +24,8 @@
 import java.net.URL;

 import java.util.ArrayList;

 import java.util.Collection;

+import java.util.LinkedHashMap;

+import java.util.Map;

 

 import org.apache.uima.UIMAFramework;

 import org.apache.uima.analysis_engine.AnalysisEngine;

@@ -31,6 +33,7 @@
 import org.apache.uima.cas.CAS;

 import org.apache.uima.resource.ResourceSpecifier;

 import org.apache.uima.resource.metadata.TypeSystemDescription;

+import org.apache.uima.ruta.seed.DefaultSeeder;

 import org.apache.uima.util.CasCreationUtils;

 import org.apache.uima.util.XMLInputSource;

 import org.junit.Test;

@@ -64,8 +67,10 @@
     ae.reconfigure();

 

     String scriptName = this.getClass().getSimpleName();

+    Map<String, Object> params = new LinkedHashMap<>();

+    params.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });

     CAS cas = RutaTestUtils.process(namespace + "/" + scriptName + RutaEngine.SCRIPT_FILE_EXTENSION,

-            namespace + "/test.html", 50);

+            namespace + "/test.html", params, 50);

     ae.process(cas);

 

     CAS modifiedView = cas.getView(viewName);

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 95be43b..2f26966 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
@@ -19,9 +19,14 @@
 

 package org.apache.uima.ruta.rule;

 

+import java.util.LinkedHashMap;

+import java.util.Map;

+

 import org.apache.uima.cas.CAS;

 import org.apache.uima.ruta.engine.Ruta;

+import org.apache.uima.ruta.engine.RutaEngine;

 import org.apache.uima.ruta.engine.RutaTestUtils;

+import org.apache.uima.ruta.seed.DefaultSeeder;

 import org.junit.Test;

 

 public class LiteralStringMatchTest {

@@ -57,8 +62,10 @@
     String script = "";

     script += "\"W\"{-> T1};";

 

+    Map<String, Object> params = new LinkedHashMap<>();

+    params.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });

     CAS cas = RutaTestUtils.getCAS(document);

-    Ruta.apply(cas, script);

+    Ruta.apply(cas, script, params);

 

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 0);

   }

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/seed/DefaultSeederTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/seed/DefaultSeederTest.java
index 4e93c3e..551d78e 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/seed/DefaultSeederTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/seed/DefaultSeederTest.java
@@ -21,22 +21,17 @@
 

 import static org.junit.Assert.assertEquals;

 

-import java.net.URL;

 import java.util.LinkedHashMap;

 import java.util.Map;

 

-import org.apache.uima.UIMAFramework;

-import org.apache.uima.analysis_engine.AnalysisEngine;

 import org.apache.uima.cas.CAS;

 import org.apache.uima.cas.FSIterator;

 import org.apache.uima.cas.Type;

 import org.apache.uima.cas.text.AnnotationFS;

 import org.apache.uima.cas.text.AnnotationIndex;

-import org.apache.uima.resource.ResourceSpecifier;

 import org.apache.uima.ruta.engine.Ruta;

 import org.apache.uima.ruta.engine.RutaEngine;

 import org.apache.uima.ruta.engine.RutaTestUtils;

-import org.apache.uima.util.XMLInputSource;

 import org.junit.Assert;

 import org.junit.Test;

 

@@ -44,20 +39,11 @@
 

   @Test

   public void test() throws Exception {

-    URL url = RutaEngine.class.getClassLoader().getResource("BasicEngine.xml");

-    if (url == null) {

-      url = RutaTestUtils.class.getClassLoader()

-              .getResource("org/apache/uima/ruta/engine/BasicEngine.xml");

-    }

-    XMLInputSource in = new XMLInputSource(url);

-    ResourceSpecifier specifier = UIMAFramework.getXMLParser().parseResourceSpecifier(in);

-    AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(specifier);

-    CAS cas = ae.newCAS();

 

     String text = "Different kinds of tokens like ApacheUIMA % &amp; <nomarkup !?.;:,"

             + " and also <FONT CLASS=\"western\" ALIGN=JUSTIFY "

             + "STYLE=\"margin-bottom: 0cm\">html <b>markup</b></FONT>" + "<br/>\n";

-    cas.setDocumentText(text);

+    CAS cas = RutaTestUtils.getCAS(text);

 

     DefaultSeeder seeder = new DefaultSeeder();

     Type type = seeder.seed(text, cas);

@@ -107,7 +93,6 @@
     assertEquals("MARKUP", iterator.next().getType().getShortName());

     assertEquals("BREAK", iterator.next().getType().getShortName());

 

-    cas.release();

   }

 

   @Test

@@ -119,14 +104,15 @@
             + "<a_real_tag value=\"1\">";

     String script = "RETAINTYPE(MARKUP);MARKUP{-> T1};";

     CAS cas = RutaTestUtils.getCAS(document);

-    Ruta.apply(cas, script);

+    Map<String, Object> params = new LinkedHashMap<>();

+    params.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });

+    Ruta.apply(cas, script, params);

 

     RutaTestUtils.assertAnnotationsEquals(cas, 1, 8,

             "<xref ref-type=\"bibr\" rid=\"b35-ehp0113-000220\">", "<sec sec-type=\"methods\">",

             "<sec sectype=\"methods\">", "<sec sec-type=\"methods\">", "<sec sectype=\"methods\">",

             "<sec sectype='methods'>", "<tag-with-dash value=\"1\">", "<a_real_tag value=\"1\">");

 

-    cas.release();

   }

 

   @Test

@@ -143,7 +129,9 @@
     String document = sb.toString();

     String script = "RETAINTYPE(MARKUP);MARKUP{-> T1};";

     CAS cas = RutaTestUtils.getCAS(document);

-    Ruta.apply(cas, script);

+    Map<String, Object> params = new LinkedHashMap<>();

+    params.put(RutaEngine.PARAM_SEEDERS, new String[] { DefaultSeeder.class.getName() });

+    Ruta.apply(cas, script, params);

 

     Type t1 = RutaTestUtils.getTestType(cas, 1);

     AnnotationIndex<AnnotationFS> ai = cas.getAnnotationIndex(t1);

@@ -154,28 +142,6 @@
   }

 

   @Test

-  public void testVerticalTab() throws Exception {

-

-    String document = "Some \u000b text.";

-    String script = "RETAINTYPE(WS);\nBREAK{->T1};";

-    CAS cas = RutaTestUtils.getCAS(document);

-    Ruta.apply(cas, script);

-

-    RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "\u000b");

-  }

-

-  @Test

-  public void testSpecialChars() throws Exception {

-

-    String document = "Some text 
Dr.";

-    String script = "RETAINTYPE(WS);\nBREAK{-> T1};";

-    CAS cas = RutaTestUtils.getCAS(document);

-    Ruta.apply(cas, script);

-

-    RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "
");

-  }

-

-  @Test

   public void testMultiLineXmlComment() throws Exception {

 

     String document = "Text text <!-- some \n\r more text --> text text.";

diff --git a/ruta-core/src/test/java/org/apache/uima/ruta/seed/TextSeederTest.java b/ruta-core/src/test/java/org/apache/uima/ruta/seed/TextSeederTest.java
index ee20d58..50356f9 100644
--- a/ruta-core/src/test/java/org/apache/uima/ruta/seed/TextSeederTest.java
+++ b/ruta-core/src/test/java/org/apache/uima/ruta/seed/TextSeederTest.java
@@ -56,4 +56,25 @@
     Assert.assertTrue(JCasUtil.select(cas.getJCas(), MARKUP.class).isEmpty());
   }
 
+  @Test
+  public void testVerticalTab() throws Exception {
+
+    String document = "Some \u000b text.";
+    String script = "RETAINTYPE(WS);\nBREAK{->T1};";
+    CAS cas = RutaTestUtils.getCAS(document);
+    Ruta.apply(cas, script);
+
+    RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "\u000b");
+  }
+
+  @Test
+  public void testSpecialChars() throws Exception {
+
+    String document = "Some text 
Dr.";
+    String script = "RETAINTYPE(WS);\nBREAK{-> T1};";
+    CAS cas = RutaTestUtils.getCAS(document);
+    Ruta.apply(cas, script);
+
+    RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "
");
+  }
 }
diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/TypeAliasTestEngine.xml b/ruta-core/src/test/resources/org/apache/uima/ruta/TypeAliasTestEngine.xml
index 310ce33..eef1450 100644
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/TypeAliasTestEngine.xml
+++ b/ruta-core/src/test/resources/org/apache/uima/ruta/TypeAliasTestEngine.xml
@@ -221,7 +221,7 @@
                 <name>seeders</name>
                 <value>
                     <array>
-                        <string>org.apache.uima.ruta.seed.DefaultSeeder</string>
+                        <string>org.apache.uima.ruta.seed.TextSeeder</string>
                     </array>
                 </value>
             </nameValuePair>
diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTestEngine.xml b/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTestEngine.xml
index ed02fcf..c0af92a 100644
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTestEngine.xml
+++ b/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTestEngine.xml
@@ -262,7 +262,7 @@
                 <name>seeders</name>

                 <value>

                     <array>

-                        <string>org.apache.uima.ruta.seed.DefaultSeeder</string>

+                        <string>org.apache.uima.ruta.seed.TextSeeder</string>

                     </array>

                 </value>

             </nameValuePair>

diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/action/Shift2Test.ruta b/ruta-core/src/test/resources/org/apache/uima/ruta/action/Shift2Test.ruta
deleted file mode 100644
index cfd9d79..0000000
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/action/Shift2Test.ruta
+++ /dev/null
@@ -1,9 +0,0 @@
-PACKAGE org.apache.uima;

-

-DECLARE T1, T2, T3, T4, T5, T6, T7, T8;

-

-DECLARE Annotation FS (Annotation doc, STRING lang);

-

-CREATE(FS, "doc" = Document, "lang" = "unknown");

-RETAINTYPE(MARKUP);

-W{STARTSWITH(FS) -> SHIFT(FS, 1, 2, true)} W+ MARKUP;

diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/action/Shift2Test.txt b/ruta-core/src/test/resources/org/apache/uima/ruta/action/Shift2Test.txt
deleted file mode 100644
index 8af1798..0000000
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/action/Shift2Test.txt
+++ /dev/null
@@ -1 +0,0 @@
-only some text<br/>
\ No newline at end of file
diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/CWEngine.xml b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/CWEngine.xml
index 32f44a5..bd119f3 100644
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/CWEngine.xml
+++ b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/CWEngine.xml
@@ -222,7 +222,7 @@
                 <name>seeders</name>
                 <value>
                     <array>
-                        <string>org.apache.uima.ruta.seed.DefaultSeeder</string>
+                        <string>org.apache.uima.ruta.seed.TextSeeder</string>
                     </array>
                 </value>
             </nameValuePair>
diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/RecursiveConfigureEngine.xml b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/RecursiveConfigureEngine.xml
index d77f483..42e7fb8 100644
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/RecursiveConfigureEngine.xml
+++ b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/RecursiveConfigureEngine.xml
@@ -222,7 +222,7 @@
                 <name>seeders</name>

                 <value>

                     <array>

-                        <string>org.apache.uima.ruta.seed.DefaultSeeder</string>

+                        <string>org.apache.uima.ruta.seed.TextSeeder</string>

                     </array>

                 </value>

             </nameValuePair>

diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SWEngine.xml b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SWEngine.xml
index 4650f1e..1fcbebf 100644
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SWEngine.xml
+++ b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SWEngine.xml
@@ -222,7 +222,7 @@
                 <name>seeders</name>
                 <value>
                     <array>
-                        <string>org.apache.uima.ruta.seed.DefaultSeeder</string>
+                        <string>org.apache.uima.ruta.seed.TextSeeder</string>
                     </array>
                 </value>
             </nameValuePair>
diff --git a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SimpleEngine.xml b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SimpleEngine.xml
index aa2c89b..40149ea 100644
--- a/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SimpleEngine.xml
+++ b/ruta-core/src/test/resources/org/apache/uima/ruta/engine/SimpleEngine.xml
@@ -222,7 +222,7 @@
                 <name>seeders</name>
                 <value>
                     <array>
-                        <string>org.apache.uima.ruta.seed.DefaultSeeder</string>
+                        <string>org.apache.uima.ruta.seed.TextSeeder</string>
                     </array>
                 </value>
             </nameValuePair>
diff --git a/ruta-docbook/src/docbook/tools.ruta.overview.xml b/ruta-docbook/src/docbook/tools.ruta.overview.xml
index 1bce6ab..ee2a5a0 100644
--- a/ruta-docbook/src/docbook/tools.ruta.overview.xml
+++ b/ruta-docbook/src/docbook/tools.ruta.overview.xml
@@ -1194,8 +1194,8 @@
           <title>seeders</title>

           <para>

             This list of string values refers to implementations of the interface "org.apache.uima.ruta.seed.RutaAnnotationSeeder", 

-            which can be used to automatically add annotations to the CAS. The default value of the parameter is a single seeder, namely "org.apache.uima.ruta.seed.DefaultSeeder"

-            that adds annotations for token classes like CW, MARKUP or SEMICOLON. Remember that additional annotations can also be added with 

+            which can be used to automatically add annotations to the CAS. The default value of the parameter is a single seeder, namely "org.apache.uima.ruta.seed.TextSeeder"

+            that adds annotations for token classes like CW, NUM and SEMICOLON, but not MARKUP. Remember that additional annotations can also be added with 

             an additional engine that is executed by a UIMA Ruta rule.

           </para>

         </section>