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 2019/02/04 14:06:24 UTC
svn commit: r1852917 [1/2] - in /uima/ruta/trunk:
ruta-core-ext/src/test/java/org/apache/uima/ruta/type/
ruta-core/src/main/java/org/apache/uima/ruta/descriptor/
ruta-core/src/main/java/org/apache/uima/ruta/engine/
ruta-core/src/main/java/org/apache/ui...
Author: pkluegl
Date: Mon Feb 4 14:06:24 2019
New Revision: 1852917
URL: http://svn.apache.org/viewvc?rev=1852917&view=rev
Log:
UIMA-5978: use org.apache.uima.internal.util.XMLUtils for xml parsing, some cleanup
Added:
uima/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/check/CheckDocumentXMLUtils.java
Removed:
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/utils/XmlUtils.java
uima/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/check/XMLUtils.java
Modified:
uima/ruta/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/type/TypeFromStringFunctionTest.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/descriptor/RutaDescriptorBuilder.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/StyleMapFactory.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordList.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordListPersistence.java
uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/TreeWordList.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/StrictImportTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/ImplicitActionTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/LabelAtActionTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/MacroActionTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/ForEachBlockTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/RutaScriptBlockTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContainsTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContextCountTest.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/condition/ImplicitCondition2Test.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/MacroConditionTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/ResourcesFromDataPathTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/StackedScriptsTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationLabelExpressionTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationVariableExpressionTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/RutaAnnotationTypeMatcherTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/SidestepInComposedTest.java
uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/quantifier/QuantifierTest.java
uima/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/ConstraintXMLUtils.java
uima/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/check/AnnotationCheckComposite.java
uima/ruta/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/check/UpdateTaskHandler.java
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/ui/documentation/RutaPageFolder.java
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/ui/documentation/RutaPagesLocationsBlock.java
uima/ruta/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/core/packages/DLTKRutaHelper.java
uima/ruta/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/core/packages/PackagesManager.java
Modified: uima/ruta/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/type/TypeFromStringFunctionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/type/TypeFromStringFunctionTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/type/TypeFromStringFunctionTest.java (original)
+++ uima/ruta/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/type/TypeFromStringFunctionTest.java Mon Feb 4 14:06:24 2019
@@ -38,12 +38,14 @@ import org.apache.uima.ruta.engine.RutaE
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class TypeFromStringFunctionTest {
@Test
public void test() throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException,
+ SAXException {
String document = "This is a test.\n1900/12/24 and 24.4.1982\nCW\norg.apache.uima.ruta.type.NUM";
String script = "";
@@ -65,7 +67,7 @@ public class TypeFromStringFunctionTest
t = RutaTestUtils.getTestType(cas, 1);
ai = cas.getAnnotationIndex(t);
assertEquals(7, ai.size());
-
+
t = RutaTestUtils.getTestType(cas, 2);
ai = cas.getAnnotationIndex(t);
assertEquals(8, ai.size());
@@ -73,6 +75,6 @@ public class TypeFromStringFunctionTest
if (cas != null) {
cas.release();
}
-
+
}
}
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/descriptor/RutaDescriptorBuilder.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/descriptor/RutaDescriptorBuilder.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/descriptor/RutaDescriptorBuilder.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/descriptor/RutaDescriptorBuilder.java Mon Feb 4 14:06:24 2019
@@ -23,7 +23,6 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.OutputStream;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
@@ -61,11 +60,9 @@ import org.apache.uima.ruta.resource.Rut
import org.apache.uima.util.CasCreationUtils;
import org.apache.uima.util.InvalidXMLException;
import org.apache.uima.util.XMLInputSource;
-import org.apache.uima.util.XMLSerializer;
import org.apache.uima.util.XMLizable;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
-import org.xml.sax.ContentHandler;
import org.xml.sax.SAXException;
public class RutaDescriptorBuilder {
@@ -323,11 +320,12 @@ public class RutaDescriptorBuilder {
}
}
- AnalysisEngineDescription analysisEngineDescription = configureEngine(desc, engineOutput, options, scriptPaths, enginePaths, resourcePaths, import_impl, aets);
- if(needToIncludeTypeSystemDescriptor) {
- analysisEngineDescription.getAnalysisEngineMetaData().setTypeSystem(typeSystemDescription);
- }
- return analysisEngineDescription;
+ AnalysisEngineDescription analysisEngineDescription = configureEngine(desc, engineOutput,
+ options, scriptPaths, enginePaths, resourcePaths, import_impl, aets);
+ if (needToIncludeTypeSystemDescriptor) {
+ analysisEngineDescription.getAnalysisEngineMetaData().setTypeSystem(typeSystemDescription);
+ }
+ return analysisEngineDescription;
}
@Deprecated
@@ -571,7 +569,8 @@ public class RutaDescriptorBuilder {
es.toArray(new String[0]));
}
- private TypeSystemDescription getTypeSystemDescriptor(URL url, ResourceManager rm) throws InvalidXMLException, IOException {
+ private TypeSystemDescription getTypeSystemDescriptor(URL url, ResourceManager rm)
+ throws InvalidXMLException, IOException {
TypeSystemDescription tsdesc = UIMAFramework.getXMLParser()
.parseTypeSystemDescription(new XMLInputSource(url));
tsdesc.resolveImports(rm);
@@ -582,14 +581,11 @@ public class RutaDescriptorBuilder {
return new File(location);
}
- private void toFile(XMLizable desc, File destination) throws SAXException, FileNotFoundException {
+ private void toFile(XMLizable desc, File destination) throws SAXException, IOException {
destination.getParentFile().mkdirs();
- OutputStream out = new FileOutputStream(destination);
- XMLSerializer sax = new XMLSerializer(out);
- ContentHandler ch = sax.getContentHandler();
- ch.startDocument();
- desc.toXML(ch);
- ch.endDocument();
+ try (FileOutputStream fos = new FileOutputStream(destination)) {
+ desc.toXML(fos);
+ }
}
public static URL checkImportExistence(String candidate, String extension,
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java Mon Feb 4 14:06:24 2019
@@ -222,19 +222,19 @@ public class RutaTestUtils {
}
public static CAS getCAS(String document)
- throws ResourceInitializationException, IOException, InvalidXMLException {
+ throws ResourceInitializationException, IOException, InvalidXMLException, SAXException {
return getCAS(document, null, null);
}
public static CAS getCAS(String document, Map<String, String> complexTypes,
Map<String, List<TestFeature>> features)
- throws ResourceInitializationException, IOException, InvalidXMLException {
+ throws ResourceInitializationException, IOException, InvalidXMLException, SAXException {
return getCAS(document, complexTypes, features, false);
}
public static CAS getCAS(String document, Map<String, String> complexTypes,
Map<String, List<TestFeature>> features, boolean storeTypeSystem)
- throws ResourceInitializationException, IOException, InvalidXMLException {
+ throws ResourceInitializationException, IOException, InvalidXMLException, SAXException {
URL url = RutaEngine.class.getClassLoader().getResource("BasicEngine.xml");
if (url == null) {
url = RutaTestUtils.class.getClassLoader()
@@ -270,11 +270,7 @@ public class RutaTestUtils {
if (storeTypeSystem) {
try (OutputStream os = new FileOutputStream("TypeSystem.xml")) {
- try {
- mergeTypeSystems.toXML(os);
- } catch (SAXException e) {
- e.printStackTrace();
- }
+ mergeTypeSystems.toXML(os);
}
}
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/StyleMapFactory.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/StyleMapFactory.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/StyleMapFactory.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/StyleMapFactory.java Mon Feb 4 14:06:24 2019
@@ -30,14 +30,16 @@ import java.util.Map;
import java.util.StringTokenizer;
import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
import org.apache.commons.lang3.StringUtils;
import org.apache.uima.cas.FSIterator;
import org.apache.uima.cas.FeatureStructure;
import org.apache.uima.cas.Type;
+import org.apache.uima.internal.util.XMLUtils;
import org.apache.uima.jcas.JCas;
import org.apache.uima.ruta.type.RutaColoring;
-import org.apache.uima.ruta.utils.XmlUtils;
import org.apache.uima.tools.stylemap.ColorParser;
import org.apache.uima.tools.stylemap.StyleMapEntry;
import org.apache.uima.tools.stylemap.StyleMapXmlParser;
@@ -254,13 +256,14 @@ public class StyleMapFactory {
File styleMapFile = new File(styleFileString);
Document parse = null;
-
- try (FileInputStream stream = new FileInputStream(styleMapFile)) {
- DocumentBuilder db = XmlUtils.createDocumentBuilder();
+
+ try (FileInputStream stream = new FileInputStream(styleMapFile)) {
+ DocumentBuilderFactory documentBuilderFactory = XMLUtils.createDocumentBuilderFactory();
+ DocumentBuilder db = documentBuilderFactory.newDocumentBuilder();
parse = db.parse(stream);
- } catch (SAXException | IOException e) {
+ } catch (SAXException | IOException | ParserConfigurationException e) {
throw new IllegalStateException(e);
- }
+ }
final Node root = parse.getDocumentElement();
final NodeList nodeList = root.getChildNodes();
@@ -274,18 +277,18 @@ public class StyleMapFactory {
// Collect type or pattern, label, and color text style
NodeList childrenList = node.getChildNodes();
- String type = ""; //$NON-NLS-1$
- String label = ""; //$NON-NLS-1$
- String colorText = ""; //$NON-NLS-1$
+ String type = ""; //$NON-NLS-1$
+ String label = ""; //$NON-NLS-1$
+ String colorText = ""; //$NON-NLS-1$
for (int j = 0; j < childrenList.getLength(); ++j) {
final Node child = childrenList.item(j);
final String childName = child.getNodeName();
- if (childName.equals("pattern")) { //$NON-NLS-1$
+ if (childName.equals("pattern")) { //$NON-NLS-1$
type = getTextValue(child);
- } else if (childName.equals("label")) { //$NON-NLS-1$
+ } else if (childName.equals("label")) { //$NON-NLS-1$
label = getTextValue(child);
- } else if (childName.equals("style")) { //$NON-NLS-1$
+ } else if (childName.equals("style")) { //$NON-NLS-1$
colorText = getTextValue(child);
}
}
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordList.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordList.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordList.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordList.java Mon Feb 4 14:06:24 2019
@@ -135,10 +135,11 @@ public class MultiTreeWordList implement
this.root = new MultiTextNode();
this.costMap = new EditDistanceCostMap();
- if (name.endsWith(".mtwl"))
+ if (name.endsWith(".mtwl")) {
persistence.readMTWL(root, stream, ENCODING);
- if (name.endsWith(".txt"))
+ } else if (name.endsWith(".txt")) {
buildNewTree(stream, name);
+ }
}
/**
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordListPersistence.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordListPersistence.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordListPersistence.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordListPersistence.java Mon Feb 4 14:06:24 2019
@@ -32,9 +32,7 @@ import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import java.util.zip.ZipOutputStream;
-import javax.xml.parsers.SAXParser;
-
-import org.apache.uima.ruta.utils.XmlUtils;
+import org.apache.uima.internal.util.XMLUtils;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
@@ -48,10 +46,13 @@ public class MultiTreeWordListPersistenc
* - the root node of the tree
* @param path
* - path of the word list
- * @throws IOException - when there is a problem reading the stream
+ * @throws IOException
+ * - when there is a problem reading the stream
*/
public void readMTWL(MultiTextNode root, String path) throws IOException {
- readMTWL(root, new FileInputStream(path), "UTF-8");
+ try (FileInputStream stream = new FileInputStream(path)) {
+ readMTWL(root, stream, "UTF-8");
+ }
}
/**
@@ -60,7 +61,8 @@ public class MultiTreeWordListPersistenc
* @param is
* the inputStream to sniff. Must support {@link InputStream#markSupported()}
* @return true if this stream starts with '{@literal <?xml}'
- * @throws IOException - when there is a problem reading the stream
+ * @throws IOException
+ * - when there is a problem reading the stream
*/
public static boolean isSniffedXmlContentType(InputStream is) throws IOException {
if (is == null)
@@ -89,16 +91,12 @@ public class MultiTreeWordListPersistenc
}
InputStreamReader streamReader = new InputStreamReader(is, encoding);
TrieXMLEventHandler handler = new TrieXMLEventHandler(root);
- SAXParser saxParser = XmlUtils.createSaxParser();
- XMLReader reader = saxParser.getXMLReader();
- reader.setFeature("http://xml.org/sax/features/external-general-entities", false);
- reader.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
- reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd",false);
+ XMLReader reader = XMLUtils.createXMLReader();
reader.setContentHandler(handler);
reader.setErrorHandler(handler);
reader.parse(new InputSource(streamReader));
} catch (SAXException e) {
- throw new IllegalStateException(e);
+ throw new IllegalStateException(e);
}
}
Modified: uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/TreeWordList.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/TreeWordList.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/TreeWordList.java (original)
+++ uima/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/TreeWordList.java Mon Feb 4 14:06:24 2019
@@ -36,15 +36,13 @@ import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import java.util.zip.ZipOutputStream;
-import javax.xml.parsers.SAXParser;
-
import org.apache.commons.lang3.StringEscapeUtils;
import org.apache.uima.cas.FSIterator;
import org.apache.uima.cas.text.AnnotationFS;
+import org.apache.uima.internal.util.XMLUtils;
import org.apache.uima.jcas.tcas.Annotation;
import org.apache.uima.ruta.RutaStream;
import org.apache.uima.ruta.type.RutaBasic;
-import org.apache.uima.ruta.utils.XmlUtils;
import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.Resource;
import org.xml.sax.InputSource;
@@ -68,10 +66,14 @@ public class TreeWordList implements Rut
/**
* Constructs a TreeWordList from a resource.
*
- * @param resource - Resource to create a TextWordList from
- * @param dictRemoveWS - option to remove whitespaces fromt he resource
- * @throws IOException - when there is a problem reading the resource
- * @throws IllegalArgumentException - for an invalid name or file ending
+ * @param resource
+ * - Resource to create a TextWordList from
+ * @param dictRemoveWS
+ * - option to remove whitespaces fromt he resource
+ * @throws IOException
+ * - when there is a problem reading the resource
+ * @throws IllegalArgumentException
+ * - for an invalid name or file ending
*/
public TreeWordList(Resource resource, boolean dictRemoveWS) throws IOException {
this.dictRemoveWS = dictRemoveWS;
@@ -100,9 +102,12 @@ public class TreeWordList implements Rut
/**
* Constructs a TreeWordList from a file with path = filename
*
- * @param pathname - path of the file to create a TextWordList from
- * @param dictRemoveWS - remove whitespaces
- * @throws IOException - when there is a problem reading the pathname
+ * @param pathname
+ * - path of the file to create a TextWordList from
+ * @param dictRemoveWS
+ * - remove whitespaces
+ * @throws IOException
+ * - when there is a problem reading the pathname
*/
public TreeWordList(String pathname, boolean dictRemoveWS) throws IOException {
this(new FileSystemResource(pathname), dictRemoveWS);
@@ -113,9 +118,12 @@ public class TreeWordList implements Rut
*
* @param stream
* path of the file to create a TextWordList from
- * @param name - the name of the resource in the stream
- * @param dictRemoveWS - remove whitespaces
- * @throws IOException - when there is a problem reading the stream
+ * @param name
+ * - the name of the resource in the stream
+ * @param dictRemoveWS
+ * - remove whitespaces
+ * @throws IOException
+ * - when there is a problem reading the stream
*/
public TreeWordList(InputStream stream, String name, boolean dictRemoveWS) throws IOException {
this.dictRemoveWS = dictRemoveWS;
@@ -147,7 +155,8 @@ public class TreeWordList implements Rut
* @param stream
* Open InputStream containing the word for the treeWordList, this method will close the
* stream.
- * @throws IOException - when there is a problem reading the stream
+ * @throws IOException
+ * - when there is a problem reading the stream
*/
public void buildNewTree(InputStream stream) throws IOException {
Scanner scan = new Scanner(stream, "UTF-8");
@@ -263,9 +272,11 @@ public class TreeWordList implements Rut
result |= recursiveContains(pointer, text, next, ignoreCase, fragment, ignoreChars,
maxIgnoreChars, ignoreWS);
} else {
- result |= recursiveContains(childNodeL, text, next, ignoreCase, fragment, ignoreChars, maxIgnoreChars, ignoreWS);
- if (childNodeL != childNodeU) { // Do not go into the same tree.
- result |= recursiveContains(childNodeU, text, next, ignoreCase, fragment, ignoreChars, maxIgnoreChars, ignoreWS);
+ result |= recursiveContains(childNodeL, text, next, ignoreCase, fragment, ignoreChars,
+ maxIgnoreChars, ignoreWS);
+ if (childNodeL != childNodeU) { // Do not go into the same tree.
+ result |= recursiveContains(childNodeU, text, next, ignoreCase, fragment, ignoreChars,
+ maxIgnoreChars, ignoreWS);
}
}
} else {
@@ -350,7 +361,8 @@ public class TreeWordList implements Rut
return results;
}
- public List<AnnotationFS> find(RutaStream stream, boolean ignoreCase, int size, boolean ignoreWS) {
+ public List<AnnotationFS> find(RutaStream stream, boolean ignoreCase, int size,
+ boolean ignoreWS) {
return find(stream, ignoreCase, size, null, 0, ignoreWS);
}
@@ -360,8 +372,8 @@ public class TreeWordList implements Rut
if (basicsToAdd.size() >= 1
&& contains(lastCandidate, ignoreCase, size, ignoreChars, maxIgnoredChars, ignoreWS)) {
- results.add(new Annotation(stream.getJCas(), basicsToAdd.get(0).getBegin(), basicsToAdd.get(
- basicsToAdd.size() - 1).getEnd()));
+ results.add(new Annotation(stream.getJCas(), basicsToAdd.get(0).getBegin(),
+ basicsToAdd.get(basicsToAdd.size() - 1).getEnd()));
} else if (interResult != null) {
results.add(interResult);
}
@@ -377,17 +389,15 @@ public class TreeWordList implements Rut
}
InputStreamReader streamReader = new InputStreamReader(is, encoding);
this.root = new TextNode();
+
XMLEventHandler handler = new XMLEventHandler(root);
- SAXParser parser = XmlUtils.createSaxParser();
- XMLReader reader = parser.getXMLReader();
- reader.setFeature("http://xml.org/sax/features/external-general-entities", false);
- reader.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
- reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd",false);
+ XMLReader reader = XMLUtils.createXMLReader();
reader.setContentHandler(handler);
reader.setErrorHandler(handler);
+
reader.parse(new InputSource(streamReader));
- } catch (SAXException e) {
- throw new IllegalStateException(e);
+ } catch (SAXException e) {
+ throw new IllegalStateException(e);
}
}
@@ -440,8 +450,8 @@ public class TreeWordList implements Rut
public void writeNode(Writer writer, TextNode node) throws IOException {
String value = StringEscapeUtils.escapeXml11(String.valueOf(node.getValue()));
- String output = "<node char=\"" + value + "\" isWordEnd=\""
- + Boolean.toString(node.isWordEnd()) + "\">";
+ String output = "<node char=\"" + value + "\" isWordEnd=\"" + Boolean.toString(node.isWordEnd())
+ + "\">";
writer.write(output);
for (TextNode child : node.getChildren().values()) {
writeNode(writer, child);
@@ -456,8 +466,8 @@ public class TreeWordList implements Rut
}
@Override
- public List<AnnotationFS> find(RutaStream stream, Map<String, Object> typeMap,
- boolean ignoreCase, int ignoreLength, boolean edit, double distance, String ignoreToken) {
+ public List<AnnotationFS> find(RutaStream stream, Map<String, Object> typeMap, boolean ignoreCase,
+ int ignoreLength, boolean edit, double distance, String ignoreToken) {
return null;
}
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/StrictImportTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/StrictImportTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/StrictImportTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/StrictImportTest.java Mon Feb 4 14:06:24 2019
@@ -53,29 +53,32 @@ import org.apache.uima.ruta.type.TruePos
import org.apache.uima.util.InvalidXMLException;
import org.junit.Assert;
import org.junit.Test;
-
+import org.xml.sax.SAXException;
/**
* Test the strict import option of {@link org.apache.uima.ruta.engine.RutaEngine}.
*/
public class StrictImportTest {
private final String NAME = this.getClass().getSimpleName();
+
private final String NAMESPACE = this.getClass().getPackage().getName();
/**
* Create an analysis engine for a Ruta script.
*
- * @param script Script path.
- * @param strictImport {@link RutaEngine#PARAM_STRICT_IMPORTS} value.
+ * @param script
+ * Script path.
+ * @param strictImport
+ * {@link RutaEngine#PARAM_STRICT_IMPORTS} value.
* @return Analysis engine.
*/
- private AnalysisEngine createAE(String script, boolean strictImport) throws ResourceInitializationException, IOException, InvalidXMLException {
+ private AnalysisEngine createAE(String script, boolean strictImport)
+ throws ResourceInitializationException, IOException, InvalidXMLException {
final TypeSystemDescription tsd = TypeSystemDescriptionFactory.createTypeSystemDescription(
"org.apache.uima.ruta.engine.BasicTypeSystem",
"org.apache.uima.ruta.StrictImportTestTypeSystem");
final AnalysisEngineDescription ruta = AnalysisEngineFactory.createEngineDescription(
- "org.apache.uima.ruta.engine.BasicEngine",
- RutaEngine.PARAM_MAIN_SCRIPT, script,
+ "org.apache.uima.ruta.engine.BasicEngine", RutaEngine.PARAM_MAIN_SCRIPT, script,
RutaEngine.PARAM_STRICT_IMPORTS, strictImport);
tsd.addType(script.replaceAll("/", ".") + ".T1", "Type for Testing", "uima.tcas.Annotation");
@@ -148,44 +151,46 @@ public class StrictImportTest {
return values;
}
-
+
@Test
- public void testStrictScriptImport() throws ResourceInitializationException, InvalidXMLException, IOException, AnalysisEngineProcessException {
+ public void testStrictScriptImport() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, SAXException {
Map<String, String> complexTypes = new HashMap<>();
String s1 = "org.apache.uima.ruta.StrictScript2.Type1";
String s2 = "org.apache.uima.ruta.other.Type1";
complexTypes.put(s1, "uima.tcas.Annotation");
complexTypes.put(s2, "uima.tcas.Annotation");
-
+
CAS cas = RutaTestUtils.getCAS("Some text.", complexTypes, null);
-
- AnalysisEngine ae = AnalysisEngineFactory.createEngine(RutaEngine.class,
+
+ AnalysisEngine ae = AnalysisEngineFactory.createEngine(RutaEngine.class,
RutaEngine.PARAM_MAIN_SCRIPT, "org.apache.uima.ruta.StrictScript1",
RutaEngine.PARAM_ADDITIONAL_SCRIPTS, "org.apache.uima.ruta.StrictScript2",
- RutaEngine.PARAM_STRICT_IMPORTS, true
- );
+ RutaEngine.PARAM_STRICT_IMPORTS, true);
ae.process(cas);
-
+
Type t1 = cas.getTypeSystem().getType(s1);
Type t2 = cas.getTypeSystem().getType(s2);
-
+
Assert.assertEquals(1, cas.getAnnotationIndex(t1).size());
Assert.assertEquals(1, cas.getAnnotationIndex(t2).size());
-
+
cas.release();
}
-
+
@Test
- public void testDocumentAnnotation() throws ResourceInitializationException, InvalidXMLException, IOException, AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException, CASRuntimeException, CASException {
+ public void testDocumentAnnotation() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, CASRuntimeException, CASException, SAXException {
CAS cas = RutaTestUtils.getCAS("Some text.");
Map<String, Object> params = new HashMap<>();
params.put(RutaEngine.PARAM_STRICT_IMPORTS, true);
Ruta.apply(cas, "DocumentAnnotation{->TruePositive};", params);
Ruta.apply(cas, "Document{->TruePositive};", params);
- AnnotationIndex<Annotation> annotationIndex = cas.getJCas().getAnnotationIndex(TruePositive.type);
+ AnnotationIndex<Annotation> annotationIndex = cas.getJCas()
+ .getAnnotationIndex(TruePositive.type);
Assert.assertEquals(2, annotationIndex.size());
cas.release();
}
-
-
+
}
\ No newline at end of file
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/ImplicitActionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/ImplicitActionTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/ImplicitActionTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/ImplicitActionTest.java Mon Feb 4 14:06:24 2019
@@ -38,6 +38,7 @@ import org.apache.uima.ruta.engine.RutaT
import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class ImplicitActionTest {
@@ -93,9 +94,9 @@ public class ImplicitActionTest {
}
@Test
- public void testChangeOffsets()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testChangeOffsets() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
String text = "text 2 3 x 4 1";
String script = "";
script += "NUM{->T1};";
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/LabelAtActionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/LabelAtActionTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/LabelAtActionTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/LabelAtActionTest.java Mon Feb 4 14:06:24 2019
@@ -29,12 +29,14 @@ import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class LabelAtActionTest {
@Test
public void test() throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException,
+ SAXException {
String document = "This is a test.";
String script = "CW{-> t:T1}->{t{->T2};};";
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/MacroActionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/MacroActionTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/MacroActionTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/MacroActionTest.java Mon Feb 4 14:06:24 2019
@@ -30,6 +30,7 @@ import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class MacroActionTest {
@@ -77,9 +78,9 @@ public class MacroActionTest {
}
@Test
- public void testVariable()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testVariable() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
String document = "Test";
String script = "INT j;\n";
script += "ACTION inc(VAR INT var, INT i) = ASSIGN(var,var+i);\n";
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/Shift1Test.java Mon Feb 4 14:06:24 2019
@@ -30,6 +30,7 @@ import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class Shift1Test {
@@ -42,9 +43,11 @@ public class Shift1Test {
cas.release();
}
-
+
@Test
- public void testOverlapping() throws ResourceInitializationException, InvalidXMLException, IOException, AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testOverlapping() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
String text = "text 2 3 x 4";
String script = "";
script += "NUM+{->T1};";
@@ -54,5 +57,5 @@ public class Shift1Test {
RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "2 3", "3 x 4", "4");
cas.release();
}
-
+
}
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/ForEachBlockTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/ForEachBlockTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/ForEachBlockTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/ForEachBlockTest.java Mon Feb 4 14:06:24 2019
@@ -35,6 +35,7 @@ import org.apache.uima.ruta.seed.TextSee
import org.apache.uima.util.InvalidXMLException;
import org.junit.Ignore;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class ForEachBlockTest {
@@ -69,9 +70,9 @@ public class ForEachBlockTest {
@Test
@Ignore
- public void testPerformance()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testPerformance() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
int lines = 10000;
StringBuilder sb = new StringBuilder();
@@ -127,9 +128,9 @@ public class ForEachBlockTest {
}
@Test
- public void testRigthToLeft()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testRigthToLeft() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
String script = "NUM{-> T1};";
script += "FOREACH(t) T1{}{\n";
script += "n:T1 SPECIAL.ct==\"^\" t{-> t.begin = n.begin};\n";
@@ -144,7 +145,8 @@ public class ForEachBlockTest {
@Test
public void testEnforcedLeftToRigthInComposedWithDebbugging()
throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException,
+ SAXException {
String script = "NUM{-> T1};";
script += "FOREACH(t) T1{}{\n";
script += "(n:@T1{->UNMARK(T1)} SPECIAL.ct==\"^\" t){-> t.begin = n.begin};\n";
@@ -160,9 +162,9 @@ public class ForEachBlockTest {
}
@Test
- public void testDirection()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testDirection() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
String script = "NUM{-> T1};";
script += "FOREACH(t,true) T1{}{\n";
script += "(# t{-PARTOF(T2)}){->T2};\n";
@@ -178,7 +180,6 @@ public class ForEachBlockTest {
cas.release();
}
-
@Test
public void testComposed() throws Exception {
String script = "NUM{-> T1};";
@@ -192,8 +193,7 @@ public class ForEachBlockTest {
RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "4x2^3");
cas.release();
}
-
-
+
@Test
public void testConditionMacro() throws Exception {
String script = "CONDITION isSmall() = REGEXP(\".\");\n";
@@ -207,7 +207,7 @@ public class ForEachBlockTest {
RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "1");
cas.release();
}
-
+
@Test
public void testWithContainingBlock() throws Exception {
String script = "";
@@ -225,7 +225,5 @@ public class ForEachBlockTest {
RutaTestUtils.assertAnnotationsEquals(cas, 2, 3, "1", "22", "333");
cas.release();
}
-
-
-
+
}
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/RutaScriptBlockTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/RutaScriptBlockTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/RutaScriptBlockTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/block/RutaScriptBlockTest.java Mon Feb 4 14:06:24 2019
@@ -30,6 +30,7 @@ import org.apache.uima.ruta.engine.RutaE
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class RutaScriptBlockTest {
@@ -62,7 +63,7 @@ public class RutaScriptBlockTest {
@Test
public void testExternalBlockCall() throws ResourceInitializationException, InvalidXMLException,
- IOException, AnalysisEngineProcessException, CASException {
+ IOException, AnalysisEngineProcessException, CASException, SAXException {
String script = "SCRIPT org.apache.uima.ruta.ScriptWithStackedBlocks;";
script += "(# PERIOD){-> T3} (# PERIOD){->T4};";
script += "T3{-> CALL(ScriptWithStackedBlocks.First)};";
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContainsTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContainsTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContainsTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContainsTest.java Mon Feb 4 14:06:24 2019
@@ -32,6 +32,7 @@ import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class ContainsTest {
@@ -45,19 +46,22 @@ public class ContainsTest {
RutaTestUtils.assertAnnotationsEquals(cas, 2, 3, "A single sentence", "And here is another one",
"Testing the CONTAINS condition of Ruta");
RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "Testing the CONTAINS condition of Ruta");
- RutaTestUtils.assertAnnotationsEquals(cas, 4, 2, "A single sentence", "Testing the CONTAINS condition of Ruta");
+ RutaTestUtils.assertAnnotationsEquals(cas, 4, 2, "A single sentence",
+ "Testing the CONTAINS condition of Ruta");
cas.release();
}
-
+
@Test
- public void testAlias() throws ResourceInitializationException, InvalidXMLException, IOException, AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testAlias() throws ResourceInitializationException, InvalidXMLException, IOException,
+ AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException,
+ SAXException {
String document = "1 some text; 2 some text; 3 some text;";
-
+
String script = "IMPORT PACKAGE * FROM org.apache.uima.ruta.ImportStatementsTestTypeSystemWithManyPackages AS ruta;";
script += "(NUM # PM){-> ruta.Type1, T1};";
script += "Document{CONTAINS(ruta.Type1) -> T2};";
-
+
Map<String, String> typeMap = new TreeMap<String, String>();
String typeName = "org.apache.uima.ruta.other3.Type1";
typeMap.put(typeName, "uima.tcas.Annotation");
@@ -66,29 +70,30 @@ public class ContainsTest {
CAS cas = RutaTestUtils.getCAS(document, typeMap, null);
Ruta.apply(cas, script);
-
- RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "1 some text;", "2 some text;", "3 some text;");
+
+ RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "1 some text;", "2 some text;",
+ "3 some text;");
RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, document);
-
+
}
-
+
@Test
- public void testContainsOverlappingAnnotations() throws ResourceInitializationException,
- InvalidXMLException, IOException, AnalysisEngineProcessException,
- ResourceConfigurationException, URISyntaxException {
-
- String document = "1 2 3 4 5 6 7 8";
-
- String script = "(\"1\" # \"5\") {-> T1};";
- script += "(\"3\" # \"8\") {-> T1};";
- script += "(\"3\" # \"4\") {-> T1};";
- script += "(\"3\" # \"5\") {-> T2};";
- script += "T2{CONTAINS(T1,1,1)-> T3};";
-
- CAS cas = RutaTestUtils.getCAS(document);
- Ruta.apply(cas, script);
-
- RutaTestUtils.assertAnnotationsEquals(cas, 3, 1);
-
+ public void testContainsOverlappingAnnotations() throws ResourceInitializationException,
+ InvalidXMLException, IOException, AnalysisEngineProcessException,
+ ResourceConfigurationException, URISyntaxException, SAXException {
+
+ String document = "1 2 3 4 5 6 7 8";
+
+ String script = "(\"1\" # \"5\") {-> T1};";
+ script += "(\"3\" # \"8\") {-> T1};";
+ script += "(\"3\" # \"4\") {-> T1};";
+ script += "(\"3\" # \"5\") {-> T2};";
+ script += "T2{CONTAINS(T1,1,1)-> T3};";
+
+ CAS cas = RutaTestUtils.getCAS(document);
+ Ruta.apply(cas, script);
+
+ RutaTestUtils.assertAnnotationsEquals(cas, 3, 1);
+
}
}
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContextCountTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContextCountTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContextCountTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContextCountTest.java Mon Feb 4 14:06:24 2019
@@ -37,6 +37,7 @@ import org.apache.uima.ruta.engine.RutaT
import org.apache.uima.util.InvalidXMLException;
import org.junit.Assert;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class ContextCountTest {
@@ -45,27 +46,28 @@ public class ContextCountTest {
CAS cas = RutaTestUtils.processTestScript(this.getClass());
- RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "A single sentence",
- "And here is another one", "Testing the CONTEXTCOUNT condition of Ruta System");
+ RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "A single sentence", "And here is another one",
+ "Testing the CONTEXTCOUNT condition of Ruta System");
RutaTestUtils.assertAnnotationsEquals(cas, 2, 4, "A", "And", "Testing", "Ruta");
Type t = RutaTestUtils.getTestType(cas, 3);
AnnotationIndex<AnnotationFS> ai = cas.getAnnotationIndex(t);
assertEquals(1, ai.size());
FSIterator<AnnotationFS> iterator = ai.iterator();
- assertEquals("A single sentence." + "And here is another one."
- + "Testing the CONTEXTCOUNT condition of Ruta System.", iterator.next()
- .getCoveredText().replaceAll("[\n\r]", ""));
+ assertEquals(
+ "A single sentence." + "And here is another one."
+ + "Testing the CONTEXTCOUNT condition of Ruta System.",
+ iterator.next().getCoveredText().replaceAll("[\n\r]", ""));
cas.release();
}
@Test
- public void testIndex() throws CASException, ResourceInitializationException,
- InvalidXMLException, IOException, AnalysisEngineProcessException {
+ public void testIndex() throws CASException, ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, SAXException {
JCas jcas = RutaTestUtils.getCAS("A B C a b c").getJCas();
Assert.assertTrue(Ruta.matches(jcas,
- "INT index; CW{CONTEXTCOUNT(Document,index,index)} # @SW{CONTEXTCOUNT(Document,0,100,index)-> MARK(T1,1,3)};"));
+ "INT index; CW{CONTEXTCOUNT(Document,index,index)} # @SW{CONTEXTCOUNT(Document,0,100,index)-> MARK(T1,1,3)};"));
RutaTestUtils.assertAnnotationsEquals(jcas.getCas(), 1, 3, "A B C a", "B C a b", "C a b c");
}
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=1852917&r1=1852916&r2=1852917&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 Mon Feb 4 14:06:24 2019
@@ -30,6 +30,7 @@ import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class CountTest {
@@ -37,24 +38,25 @@ public class CountTest {
public void test() {
CAS cas = RutaTestUtils.processTestScript(this.getClass());
-
+
RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "A single sentence", "And here is another one",
"Testing the COUNT condition of Ruta System");
RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "Testing the COUNT condition of Ruta System");
RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "Testing the COUNT condition of Ruta System");
-
- cas.release();
+
+ cas.release();
}
-
+
@Test
- public void testCountWithPeriodPostfix() throws ResourceInitializationException, InvalidXMLException,
- IOException, AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
-
+ public void testCountWithPeriodPostfix() throws ResourceInitializationException,
+ InvalidXMLException, IOException, AnalysisEngineProcessException,
+ ResourceConfigurationException, URISyntaxException, SAXException {
+
String document = "Some text.";
String script = "(CW SW) {-> T1};";
- script +="INT i = 0;";
- script +="T1{COUNT(PERIOD, i)};";
- script +="Document{(i>0)-> T2};";
+ 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/condition/ImplicitCondition2Test.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ImplicitCondition2Test.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ImplicitCondition2Test.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ImplicitCondition2Test.java Mon Feb 4 14:06:24 2019
@@ -30,6 +30,7 @@ import org.apache.uima.ruta.engine.RutaT
import org.apache.uima.util.InvalidXMLException;
import org.junit.Assert;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class ImplicitCondition2Test {
@@ -64,7 +65,7 @@ public class ImplicitCondition2Test {
@Test
public void testStringCompare() throws ResourceInitializationException, InvalidXMLException,
- IOException, AnalysisEngineProcessException, CASException {
+ IOException, AnalysisEngineProcessException, CASException, SAXException {
String document = "a b. a b.";
CAS cas = RutaTestUtils.getCAS(document);
Assert.assertTrue(Ruta.matches(cas.getJCas(), "(w:W # W{W.ct==w.ct}){->T1};"));
@@ -75,7 +76,7 @@ public class ImplicitCondition2Test {
@Test
public void testStringCompareNull() throws ResourceInitializationException, InvalidXMLException,
- IOException, AnalysisEngineProcessException, CASException {
+ IOException, AnalysisEngineProcessException, CASException, SAXException {
String document = "a b. a b.";
CAS cas = RutaTestUtils.getCAS(document);
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/MacroConditionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/MacroConditionTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/MacroConditionTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/MacroConditionTest.java Mon Feb 4 14:06:24 2019
@@ -30,6 +30,7 @@ import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class MacroConditionTest {
@@ -78,9 +79,9 @@ public class MacroConditionTest {
}
@Test
- public void testVariable()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testVariable() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
String document = "This is a Test.";
String script = "INT j;\n";
script += "CONDITION cc(VAR INT var) = TOTALCOUNT(W,1,1000,var);\n";
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/ResourcesFromDataPathTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/ResourcesFromDataPathTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/ResourcesFromDataPathTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/ResourcesFromDataPathTest.java Mon Feb 4 14:06:24 2019
@@ -34,18 +34,20 @@ import org.apache.uima.resource.Resource
import org.apache.uima.resource.ResourceManager;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class ResourcesFromDataPathTest {
@Test
public void test() throws IOException, ResourceInitializationException, InvalidXMLException,
- AnalysisEngineProcessException {
+ AnalysisEngineProcessException, SAXException {
final String datapath = "target/datapath/";
new File(datapath).mkdirs();
FileUtils.copyFile(new File("src/test/resources/org/apache/uima/ruta/action/MarkFastTest.ruta"),
new File(datapath + "MarkFastTest.ruta"));
- FileUtils.copyFile(new File("src/test/resources/org/apache/uima/ruta/action/MarkFastTestList.txt"),
+ FileUtils.copyFile(
+ new File("src/test/resources/org/apache/uima/ruta/action/MarkFastTestList.txt"),
new File(datapath + "MarkFastTestList.txt"));
ResourceManagerFactory.setResourceManagerCreator(new ResourceManagerCreator() {
@@ -61,12 +63,13 @@ public class ResourcesFromDataPathTest {
return resourceManager;
}
});
-
-
- AnalysisEngine ae = AnalysisEngineFactory.createEngine(RutaEngine.class, RutaEngine.PARAM_MAIN_SCRIPT, "MarkFastTest");
- CAS cas = RutaTestUtils.getCAS(FileUtils.readFileToString(new File("src/test/resources/org/apache/uima/ruta/action/MarkFastTest.txt")));
+
+ AnalysisEngine ae = AnalysisEngineFactory.createEngine(RutaEngine.class,
+ RutaEngine.PARAM_MAIN_SCRIPT, "MarkFastTest");
+ CAS cas = RutaTestUtils.getCAS(FileUtils.readFileToString(
+ new File("src/test/resources/org/apache/uima/ruta/action/MarkFastTest.txt")));
ae.process(cas);
-
+
RutaTestUtils.assertAnnotationsEquals(cas, 1, 3, "1 0 0", "100", "2 0 0");
RutaTestUtils.assertAnnotationsEquals(cas, 2, 0);
RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "100");
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaTest.java Mon Feb 4 14:06:24 2019
@@ -50,149 +50,152 @@ import org.apache.uima.util.InvalidXMLEx
import org.apache.uima.util.XMLInputSource;
import org.junit.Assert;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class RutaTest {
- @Test
- public void testApply() throws Exception {
- URL typePrioritiesUrl = RutaTestUtils.class.getResource("TypePriorities.xml");
- URL tsUrl = RutaTestUtils.class.getResource("BasicTypeSystem.xml");
- Object descriptor = UIMAFramework.getXMLParser().parse(new XMLInputSource(tsUrl));
- TypeSystemDescription tsDesc = (TypeSystemDescription) descriptor;
- tsDesc.addType("uima.ruta.T1", "", "uima.tcas.Annotation");
- tsDesc.addType("uima.ruta.T2", "", "uima.tcas.Annotation");
- tsDesc.addType("uima.ruta.T3", "", "uima.tcas.Annotation");
- tsDesc.resolveImports();
- TypePriorities typePriorities = UIMAFramework.getXMLParser().parseTypePriorities(
- new XMLInputSource(typePrioritiesUrl));
- CAS cas = CasCreationUtils.createCas(tsDesc, typePriorities, new FsIndexDescription[0]);
-
- cas.setDocumentText("Some document.");
-
- Ruta.apply(cas, "CW{-> MARK(T1)} SW;");
- AnnotationIndex<AnnotationFS> ai = null;
- FSIterator<AnnotationFS> iterator = null;
- ai = cas.getAnnotationIndex(cas.getTypeSystem().getType("uima.ruta.T1"));
- iterator = ai.iterator();
- assertEquals(1, ai.size());
- assertEquals("Some", iterator.next().getCoveredText());
-
- Ruta.apply(cas, "T1 SW{-> MARK(T2)};");
- ai = cas.getAnnotationIndex(cas.getTypeSystem().getType("uima.ruta.T2"));
- iterator = ai.iterator();
- assertEquals(1, ai.size());
- assertEquals("document", iterator.next().getCoveredText());
-
- Ruta.apply(cas, "T1{-> MARK(T3,1,2,3)} T2 PERIOD;");
- ai = cas.getAnnotationIndex(cas.getTypeSystem().getType("uima.ruta.T3"));
- iterator = ai.iterator();
- assertEquals(1, ai.size());
- assertEquals("Some document.", iterator.next().getCoveredText());
-
- cas.release();
- }
-
- @Test
- public void testCreateAnalysisEngineDescription() throws Exception {
- TypeSystemDescription_impl tsdi = new TypeSystemDescription_impl();
- String t1 = "some.type.Test1";
- String t2 = "some.type.Test2";
- TypeDescription_impl ti1 = new TypeDescription_impl(t1, "", "uima.tcas.Annotation");
- TypeDescription_impl ti2 = new TypeDescription_impl(t2, "", "uima.tcas.Annotation");
- tsdi.setTypes(new TypeDescription[] { ti1, ti2 });
-
- String script = "CW SW{-> MARK(Test1)};\n Test1 SW{-> MARK(Test2)};";
- @SuppressWarnings("deprecation")
- AnalysisEngineDescription aed = Ruta.createAnalysisEngineDescription(script, tsdi);
- AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(aed);
- CAS cas = ae.newCAS();
- cas.setDocumentText("Only some text.");
- ae.process(cas);
-
- Type type1 = cas.getTypeSystem().getType(t1);
- AnnotationIndex<AnnotationFS> ai1 = cas.getAnnotationIndex(type1);
- assertEquals(1, ai1.size());
- assertEquals("some", ai1.iterator().get().getCoveredText());
-
- Type type2 = cas.getTypeSystem().getType(t2);
- AnnotationIndex<AnnotationFS> ai2 = cas.getAnnotationIndex(type2);
- assertEquals(1, ai2.size());
- assertEquals("text", ai2.iterator().get().getCoveredText());
- }
-
- @Test
- public void testApplyRule() throws ResourceInitializationException, InvalidXMLException,
- IOException, CASException, AnalysisEngineProcessException {
- CAS cas = RutaTestUtils.getCAS("Some document.");
- JCas jcas = cas.getJCas();
-
- Ruta.applyRule(jcas, "CW{-> MARK(T1)} SW;");
- RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "Some");
-
- Ruta.applyRule(jcas, "T1 SW{-> MARK(T2)};");
- RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "document");
-
- Ruta.applyRule(jcas, "T1{-> MARK(T3,1,2,3)} T2 PERIOD;");
- RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "Some document.");
- }
-
- @Test
- public void testSelect() throws ResourceInitializationException, InvalidXMLException,
- IOException, CASException, AnalysisEngineProcessException {
- String document = "Some text.";
- CAS cas = RutaTestUtils.getCAS(document);
- JCas jcas = cas.getJCas();
- List<Annotation> select1 = Ruta.select(jcas, "W{REGEXP(\"t.*\")};");
- Assert.assertEquals(1, select1.size());
- Assert.assertEquals("text", select1.get(0).getCoveredText());
-
- List<Annotation> select2 = Ruta.select(jcas, "Document<-{ANY @PERIOD;};");
- Assert.assertEquals(1, select2.size());
- Assert.assertEquals("Some text.", select2.get(0).getCoveredText());
-
- List<Annotation> select3 = Ruta.select(jcas, "ANY @ANY;");
- Assert.assertEquals(2, select3.size());
- Assert.assertEquals("Some text", select3.get(0).getCoveredText());
- Assert.assertEquals("text.", select3.get(1).getCoveredText());
- }
+ @Test
+ public void testApply() throws Exception {
+ URL typePrioritiesUrl = RutaTestUtils.class.getResource("TypePriorities.xml");
+ URL tsUrl = RutaTestUtils.class.getResource("BasicTypeSystem.xml");
+ Object descriptor = UIMAFramework.getXMLParser().parse(new XMLInputSource(tsUrl));
+ TypeSystemDescription tsDesc = (TypeSystemDescription) descriptor;
+ tsDesc.addType("uima.ruta.T1", "", "uima.tcas.Annotation");
+ tsDesc.addType("uima.ruta.T2", "", "uima.tcas.Annotation");
+ tsDesc.addType("uima.ruta.T3", "", "uima.tcas.Annotation");
+ tsDesc.resolveImports();
+ TypePriorities typePriorities = UIMAFramework.getXMLParser()
+ .parseTypePriorities(new XMLInputSource(typePrioritiesUrl));
+ CAS cas = CasCreationUtils.createCas(tsDesc, typePriorities, new FsIndexDescription[0]);
+
+ cas.setDocumentText("Some document.");
+
+ Ruta.apply(cas, "CW{-> MARK(T1)} SW;");
+ AnnotationIndex<AnnotationFS> ai = null;
+ FSIterator<AnnotationFS> iterator = null;
+ ai = cas.getAnnotationIndex(cas.getTypeSystem().getType("uima.ruta.T1"));
+ iterator = ai.iterator();
+ assertEquals(1, ai.size());
+ assertEquals("Some", iterator.next().getCoveredText());
+
+ Ruta.apply(cas, "T1 SW{-> MARK(T2)};");
+ ai = cas.getAnnotationIndex(cas.getTypeSystem().getType("uima.ruta.T2"));
+ iterator = ai.iterator();
+ assertEquals(1, ai.size());
+ assertEquals("document", iterator.next().getCoveredText());
+
+ Ruta.apply(cas, "T1{-> MARK(T3,1,2,3)} T2 PERIOD;");
+ ai = cas.getAnnotationIndex(cas.getTypeSystem().getType("uima.ruta.T3"));
+ iterator = ai.iterator();
+ assertEquals(1, ai.size());
+ assertEquals("Some document.", iterator.next().getCoveredText());
+
+ cas.release();
+ }
+
+ @Test
+ public void testCreateAnalysisEngineDescription() throws Exception {
+ TypeSystemDescription_impl tsdi = new TypeSystemDescription_impl();
+ String t1 = "some.type.Test1";
+ String t2 = "some.type.Test2";
+ TypeDescription_impl ti1 = new TypeDescription_impl(t1, "", "uima.tcas.Annotation");
+ TypeDescription_impl ti2 = new TypeDescription_impl(t2, "", "uima.tcas.Annotation");
+ tsdi.setTypes(new TypeDescription[] { ti1, ti2 });
+
+ String script = "CW SW{-> MARK(Test1)};\n Test1 SW{-> MARK(Test2)};";
+ @SuppressWarnings("deprecation")
+ AnalysisEngineDescription aed = Ruta.createAnalysisEngineDescription(script, tsdi);
+ AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(aed);
+ CAS cas = ae.newCAS();
+ cas.setDocumentText("Only some text.");
+ ae.process(cas);
+
+ Type type1 = cas.getTypeSystem().getType(t1);
+ AnnotationIndex<AnnotationFS> ai1 = cas.getAnnotationIndex(type1);
+ assertEquals(1, ai1.size());
+ assertEquals("some", ai1.iterator().get().getCoveredText());
+
+ Type type2 = cas.getTypeSystem().getType(t2);
+ AnnotationIndex<AnnotationFS> ai2 = cas.getAnnotationIndex(type2);
+ assertEquals(1, ai2.size());
+ assertEquals("text", ai2.iterator().get().getCoveredText());
+ }
+
+ @Test
+ public void testApplyRule() throws ResourceInitializationException, InvalidXMLException,
+ IOException, CASException, AnalysisEngineProcessException, SAXException {
+ CAS cas = RutaTestUtils.getCAS("Some document.");
+ JCas jcas = cas.getJCas();
+
+ Ruta.applyRule(jcas, "CW{-> MARK(T1)} SW;");
+ RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "Some");
+
+ Ruta.applyRule(jcas, "T1 SW{-> MARK(T2)};");
+ RutaTestUtils.assertAnnotationsEquals(cas, 2, 1, "document");
+
+ Ruta.applyRule(jcas, "T1{-> MARK(T3,1,2,3)} T2 PERIOD;");
+ RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "Some document.");
+ }
@Test
- public void testSelectWithInjection() throws ResourceInitializationException,
- InvalidXMLException, IOException, CASException, AnalysisEngineProcessException {
+ public void testSelect() throws ResourceInitializationException, InvalidXMLException, IOException,
+ CASException, AnalysisEngineProcessException, SAXException {
+ String document = "Some text.";
+ CAS cas = RutaTestUtils.getCAS(document);
+ JCas jcas = cas.getJCas();
+ List<Annotation> select1 = Ruta.select(jcas, "W{REGEXP(\"t.*\")};");
+ Assert.assertEquals(1, select1.size());
+ Assert.assertEquals("text", select1.get(0).getCoveredText());
+
+ List<Annotation> select2 = Ruta.select(jcas, "Document<-{ANY @PERIOD;};");
+ Assert.assertEquals(1, select2.size());
+ Assert.assertEquals("Some text.", select2.get(0).getCoveredText());
+
+ List<Annotation> select3 = Ruta.select(jcas, "ANY @ANY;");
+ Assert.assertEquals(2, select3.size());
+ Assert.assertEquals("Some text", select3.get(0).getCoveredText());
+ Assert.assertEquals("text.", select3.get(1).getCoveredText());
+ }
+
+ @Test
+ public void testSelectWithInjection() throws ResourceInitializationException, InvalidXMLException,
+ IOException, CASException, AnalysisEngineProcessException, SAXException {
String document = "Some text.";
CAS cas = RutaTestUtils.getCAS(document);
AnnotationImpl t1 = (AnnotationImpl) cas.createAnnotation(RutaTestUtils.getTestType(cas, 1), 5,
9);
cas.addFsToIndexes(t1);
JCas jcas = cas.getJCas();
- List<Annotation> select1 = Ruta.select(jcas, Ruta.inject("W $;", t1));
- Assert.assertEquals(1, select1.size());
- Assert.assertEquals("Some text", select1.get(0).getCoveredText());
+ List<Annotation> select1 = Ruta.select(jcas, Ruta.inject("W $;", t1));
+ Assert.assertEquals(1, select1.size());
+ Assert.assertEquals("Some text", select1.get(0).getCoveredText());
// List<Annotation> select2 = Ruta.select(jcas, Ruta.inject("W{W.begin == $.begin};", t1));
// Assert.assertEquals(1, select2.size());
// Assert.assertEquals("text", select2.get(0).getCoveredText());
}
-
+
@Test
- public void testMatches() throws ResourceInitializationException,
- InvalidXMLException, IOException, CASException, AnalysisEngineProcessException {
+ public void testMatches() throws ResourceInitializationException, InvalidXMLException,
+ IOException, CASException, AnalysisEngineProcessException, SAXException {
JCas jcas = RutaTestUtils.getCAS("Some text.").getJCas();
Assert.assertTrue(Ruta.matches(jcas, "CW # @PERIOD;"));
Assert.assertTrue(Ruta.matches(jcas, "W{IS(CW)} \"text\";"));
}
-
+
@Test
- public void testMatchesWithInjection() throws ResourceInitializationException,
- InvalidXMLException, IOException, CASException, AnalysisEngineProcessException {
+ public void testMatchesWithInjection()
+ throws ResourceInitializationException, InvalidXMLException, IOException, CASException,
+ AnalysisEngineProcessException, SAXException {
String document = "Some text.";
CAS cas = RutaTestUtils.getCAS(document);
AnnotationImpl t1 = (AnnotationImpl) cas.createAnnotation(RutaTestUtils.getTestType(cas, 1), 5,
9);
cas.addFsToIndexes(t1);
JCas jcas = cas.getJCas();
- Assert.assertTrue(Ruta.matches(jcas, Ruta.inject("W $;", t1)));
- Assert.assertTrue(Ruta.matches(jcas, Ruta.inject("${REGEXP(\"te.*\"), PARTOF(SW)} PERIOD;", t1)));
+ Assert.assertTrue(Ruta.matches(jcas, Ruta.inject("W $;", t1)));
+ Assert.assertTrue(
+ Ruta.matches(jcas, Ruta.inject("${REGEXP(\"te.*\"), PARTOF(SW)} PERIOD;", t1)));
}
}
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/StackedScriptsTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/StackedScriptsTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/StackedScriptsTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/StackedScriptsTest.java Mon Feb 4 14:06:24 2019
@@ -39,6 +39,7 @@ import org.apache.uima.util.CasCreationU
import org.apache.uima.util.InvalidXMLException;
import org.apache.uima.util.XMLInputSource;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class StackedScriptsTest {
@@ -55,9 +56,9 @@ public class StackedScriptsTest {
String rules3 = "W{PARTOF({T1,T2,T3})->T4};";
@Test
- public void testWithUimaFitAggregated() throws ResourceInitializationException,
- InvalidXMLException, IOException, AnalysisEngineProcessException,
- ResourceConfigurationException {
+ public void testWithUimaFitAggregated()
+ throws ResourceInitializationException, InvalidXMLException, IOException,
+ AnalysisEngineProcessException, ResourceConfigurationException, SAXException {
AnalysisEngine aae = createEngine(createEngineDescription(
createEngineDescription(RutaEngine.class, RutaEngine.PARAM_RULES, rules1),
@@ -74,8 +75,9 @@ public class StackedScriptsTest {
}
@Test
- public void testWithoutUimaFit() throws ResourceInitializationException, InvalidXMLException,
- IOException, AnalysisEngineProcessException, ResourceConfigurationException {
+ public void testWithoutUimaFit()
+ throws ResourceInitializationException, InvalidXMLException, IOException,
+ AnalysisEngineProcessException, ResourceConfigurationException, SAXException {
AnalysisEngine rutaAE1 = createAnalysisEngine(rules1, null);
AnalysisEngine rutaAE2 = createAnalysisEngine(rules2, null);
@@ -85,9 +87,9 @@ public class StackedScriptsTest {
}
- private void processAndTest(AnalysisEngine rutaAE1, AnalysisEngine rutaAE2, AnalysisEngine rutaAE3)
- throws ResourceInitializationException, IOException, InvalidXMLException,
- AnalysisEngineProcessException {
+ private void processAndTest(AnalysisEngine rutaAE1, AnalysisEngine rutaAE2,
+ AnalysisEngine rutaAE3) throws ResourceInitializationException, IOException,
+ InvalidXMLException, AnalysisEngineProcessException, SAXException {
CAS cas = getCAS(LINES);
rutaAE1.process(cas);
@@ -128,8 +130,8 @@ public class StackedScriptsTest {
RutaTestUtils.assertAnnotationsEquals(cas, 4, 3 * lines, t4);
}
- private CAS getCAS(int lines) throws ResourceInitializationException, IOException,
- InvalidXMLException {
+ private CAS getCAS(int lines)
+ throws ResourceInitializationException, IOException, InvalidXMLException, SAXException {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < lines; i++) {
sb.append(DOC_TEXT);
@@ -144,7 +146,8 @@ public class StackedScriptsTest {
ResourceConfigurationException {
URL url = RutaEngine.class.getClassLoader().getResource("BasicEngine.xml");
if (url == null) {
- url = RutaTestUtils.class.getClassLoader().getResource("org/apache/uima/ruta/engine/BasicEngine.xml");
+ url = RutaTestUtils.class.getClassLoader()
+ .getResource("org/apache/uima/ruta/engine/BasicEngine.xml");
}
XMLInputSource in = new XMLInputSource(url);
ResourceSpecifier specifier = UIMAFramework.getXMLParser().parseResourceSpecifier(in);
@@ -171,7 +174,7 @@ public class StackedScriptsTest {
@Test
public void testPerformanceOfReindexOnly() throws ResourceInitializationException,
- InvalidXMLException, IOException, AnalysisEngineProcessException {
+ InvalidXMLException, IOException, AnalysisEngineProcessException, SAXException {
AnalysisEngine aaeNoReindex = createEngine(createEngineDescription(
createEngineDescription(RutaEngine.class, RutaEngine.PARAM_RULES, rules1),
createEngineDescription(RutaEngine.class, RutaEngine.PARAM_RULES, rules2),
@@ -182,8 +185,8 @@ public class StackedScriptsTest {
createEngineDescription(RutaEngine.class, RutaEngine.PARAM_RULES, rules2,
RutaEngine.PARAM_REINDEX_ONLY, new String[] { RutaTestUtils.TYPE + "1" }),
createEngineDescription(RutaEngine.class, RutaEngine.PARAM_RULES, rules3,
- RutaEngine.PARAM_REINDEX_ONLY, new String[] { RutaTestUtils.TYPE + "2",
- RutaTestUtils.TYPE + "3" })));
+ RutaEngine.PARAM_REINDEX_ONLY,
+ new String[] { RutaTestUtils.TYPE + "2", RutaTestUtils.TYPE + "3" })));
long start = 0;
long end = 0;
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationLabelExpressionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationLabelExpressionTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationLabelExpressionTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationLabelExpressionTest.java Mon Feb 4 14:06:24 2019
@@ -48,6 +48,7 @@ import org.apache.uima.util.InvalidXMLEx
import org.junit.Assert;
import org.junit.Ignore;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class AnnotationLabelExpressionTest {
@@ -315,15 +316,16 @@ public class AnnotationLabelExpressionTe
@Test(expected = AnalysisEngineProcessException.class)
public void testWrongFeature() throws ResourceInitializationException, InvalidXMLException,
- IOException, AnalysisEngineProcessException, CASException {
+ IOException, AnalysisEngineProcessException, CASException, SAXException {
CAS cas = RutaTestUtils.getCAS("Some text.");
Ruta.matches(cas.getJCas(), "a:W b:W{a.x == (b.y-1)-> T1};");
}
@Test
- public void testSequentialLabelSelfMatch() throws ResourceInitializationException,
- InvalidXMLException, IOException, AnalysisEngineProcessException, CASException {
+ public void testSequentialLabelSelfMatch()
+ throws ResourceInitializationException, InvalidXMLException, IOException,
+ AnalysisEngineProcessException, CASException, SAXException {
CAS cas = RutaTestUtils.getCAS("Some text.");
Assert.assertFalse(Ruta.matches(cas.getJCas(), "e:CW e;"));
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationVariableExpressionTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationVariableExpressionTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationVariableExpressionTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationVariableExpressionTest.java Mon Feb 4 14:06:24 2019
@@ -48,12 +48,14 @@ import org.apache.uima.ruta.engine.RutaT
import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class AnnotationVariableExpressionTest {
@Test
public void test() throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException,
+ SAXException {
String document = "Some text.";
String script = "ANNOTATION a;";
script += "CW{-> ASSIGN(a, CW)};";
@@ -94,9 +96,9 @@ public class AnnotationVariableExpressio
}
@Test
- public void testImplicitAssignment()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testImplicitAssignment() throws ResourceInitializationException, InvalidXMLException,
+ IOException, AnalysisEngineProcessException, ResourceConfigurationException,
+ URISyntaxException, SAXException {
String document = "Some text.";
String script = "ANNOTATION a;";
script += "CW{-> a = CW};";
@@ -137,9 +139,9 @@ public class AnnotationVariableExpressio
}
@Test
- public void testListImplicitAssignment()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testListImplicitAssignment() throws ResourceInitializationException,
+ InvalidXMLException, IOException, AnalysisEngineProcessException,
+ ResourceConfigurationException, URISyntaxException, SAXException {
String document = "Some text.";
String script = "ANNOTATIONLIST as;";
script += "Document{-> as = W};";
@@ -181,7 +183,8 @@ public class AnnotationVariableExpressio
@Test
public void testList() throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException,
+ SAXException {
String document = "Some text.";
String script = "ANNOTATIONLIST as;";
script += "Document{-> ASSIGN(as, W)};";
@@ -222,9 +225,9 @@ public class AnnotationVariableExpressio
}
@Test
- public void testResetVariableBetweenCases()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testResetVariableBetweenCases() throws ResourceInitializationException,
+ InvalidXMLException, IOException, AnalysisEngineProcessException,
+ ResourceConfigurationException, URISyntaxException, SAXException {
String document = "Some text.";
String script = "ANNOTATIONLIST as;\n";
@@ -263,9 +266,9 @@ public class AnnotationVariableExpressio
}
@Test
- public void testNullValueWithFeatureMatch()
- throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ public void testNullValueWithFeatureMatch() throws ResourceInitializationException,
+ InvalidXMLException, IOException, AnalysisEngineProcessException,
+ ResourceConfigurationException, URISyntaxException, SAXException {
String document = "Some text.";
String script = "";
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/RutaAnnotationTypeMatcherTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/RutaAnnotationTypeMatcherTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/RutaAnnotationTypeMatcherTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/RutaAnnotationTypeMatcherTest.java Mon Feb 4 14:06:24 2019
@@ -34,6 +34,7 @@ import org.apache.uima.ruta.engine.RutaT
import org.apache.uima.ruta.engine.RutaTestUtils.TestFeature;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class RutaAnnotationTypeMatcherTest {
@@ -77,10 +78,9 @@ public class RutaAnnotationTypeMatcherTe
script += "c:CW{->T26}<-{c.begin==0;};\n";
script += "s:Struct1->{s.as{-> T27};};\n";
script += "s:Struct1->{s.as.begin==5{-> T28};};\n";
-
-
+
CAS cas = apply(document, script);
-
+
RutaTestUtils.assertAnnotationsEquals(cas, 1, 1, "This");
RutaTestUtils.assertAnnotationsEquals(cas, 2, 0);
RutaTestUtils.assertAnnotationsEquals(cas, 3, 1, "This");
@@ -109,12 +109,12 @@ public class RutaAnnotationTypeMatcherTe
RutaTestUtils.assertAnnotationsEquals(cas, 26, 1, "This");
RutaTestUtils.assertAnnotationsEquals(cas, 27, 3, "is", "a", "test");
RutaTestUtils.assertAnnotationsEquals(cas, 28, 1, "is");
-
+
}
- private CAS apply(String document, String script)
- throws ResourceInitializationException, IOException, InvalidXMLException,
- ResourceConfigurationException, AnalysisEngineProcessException, URISyntaxException {
+ private CAS apply(String document, String script) throws ResourceInitializationException,
+ IOException, InvalidXMLException, ResourceConfigurationException,
+ AnalysisEngineProcessException, URISyntaxException, SAXException {
Map<String, String> complexTypes = new TreeMap<String, String>();
complexTypes.put("Struct1", "uima.tcas.Annotation");
complexTypes.put("Struct2", "uima.tcas.Annotation");
@@ -129,10 +129,10 @@ public class RutaAnnotationTypeMatcherTe
features.put("Struct4", list);
list.add(new TestFeature("a", "", "uima.tcas.Annotation"));
list.add(new TestFeature("as", "", "uima.cas.FSArray"));
-
+
CAS cas = RutaTestUtils.getCAS(document, complexTypes, features);
Ruta.apply(cas, script);
return cas;
}
-
+
}
Modified: uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/SidestepInComposedTest.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/SidestepInComposedTest.java?rev=1852917&r1=1852916&r2=1852917&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/SidestepInComposedTest.java (original)
+++ uima/ruta/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/SidestepInComposedTest.java Mon Feb 4 14:06:24 2019
@@ -30,12 +30,14 @@ import org.apache.uima.ruta.engine.Ruta;
import org.apache.uima.ruta.engine.RutaTestUtils;
import org.apache.uima.util.InvalidXMLException;
import org.junit.Test;
+import org.xml.sax.SAXException;
public class SidestepInComposedTest {
@Test
public void test() throws ResourceInitializationException, InvalidXMLException, IOException,
- AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException {
+ AnalysisEngineProcessException, ResourceConfigurationException, URISyntaxException,
+ SAXException {
String document = "15. Mai 2005";
String script = "\"Mai\" -> T1;";
script += "NUM{->T2} PERIOD @T1 NUM;\n";