From f74f11d521fc073d5e6afc3060db34f2e87116c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Euzenat?= <Jerome.Euzenat@inria.fr> Date: Mon, 22 Mar 2010 11:16:56 +0000 Subject: [PATCH] - Added classical tests of parseString --- test/src/IOTest.java | 48 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/test/src/IOTest.java b/test/src/IOTest.java index 48aded16..b853e2b7 100644 --- a/test/src/IOTest.java +++ b/test/src/IOTest.java @@ -40,6 +40,9 @@ import java.io.PrintWriter; import java.io.BufferedWriter; import java.io.OutputStreamWriter; import java.io.FileOutputStream; +import java.io.File; +import java.io.BufferedInputStream; +import java.io.FileInputStream; /** * These tests corresponds to the tests presented in the examples/omwg directory @@ -74,4 +77,49 @@ public class IOTest { assertEquals( alignment.getOntology2URI().toString(), "http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl" ); assertEquals( alignment.nbCells(), 57 ); } + + private static String readFileAsString(String filePath) throws java.io.IOException { + byte[] buffer = new byte[(int) new File(filePath).length()]; + BufferedInputStream f = new BufferedInputStream(new FileInputStream(filePath)); + f.read(buffer); + return new String(buffer); + } + + /** + * The same tests as above (and elsewhere) using parseString instead of parse + */ + @Test(groups = { "full", "io", "raw" }, expectedExceptions = AlignmentException.class) + public void loadSOAPStringErrorTest() throws Exception { + aparser = new AlignmentParser( 0 ); + assertNotNull( aparser ); + try { // shut-up log4j + com.hp.hpl.jena.rdf.model.impl.RDFDefaultErrorHandler.silent = true; + alignment = aparser.parseString( readFileAsString( "test/input/soap.xml" ) ); + // error (we forgot to tell the parser that the alignment is embedded) + } catch (Exception ex) { + com.hp.hpl.jena.rdf.model.impl.RDFDefaultErrorHandler.silent = false; + throw ex; + } + } + + @Test(groups = { "full", "io", "raw" }, dependsOnMethods = {"loadSOAPStringErrorTest"}) + public void loadStringTest() throws Exception { + aparser.initAlignment( null ); + // a regular alignment, out of a SOAP message + alignment = aparser.parseString( readFileAsString( "examples/rdf/newsample.rdf" ) ); + assertNotNull( alignment ); + assertTrue( alignment instanceof URIAlignment ); + assertEquals( alignment.nbCells(), 2 ); + } + + @Test(groups = { "full", "io", "raw" }, dependsOnMethods = {"loadSOAPStringErrorTest"}) + public void loadSOAPStringTest() throws Exception { + aparser.initAlignment( null ); + aparser.setEmbedded( true ); + alignment = aparser.parseString( readFileAsString( "test/input/soap.xml" ) ); + assertNotNull( alignment ); + assertTrue( alignment instanceof URIAlignment ); + assertEquals( alignment.getOntology2URI().toString(), "http://alignapi.gforge.inria.fr/tutorial/edu.mit.visus.bibtex.owl" ); + assertEquals( alignment.nbCells(), 57 ); + } } -- GitLab