You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by jo...@apache.org on 2014/02/18 13:57:46 UTC
svn commit: r1569299 - in
/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats: ./ ad/
Author: joern
Date: Tue Feb 18 12:57:45 2014
New Revision: 1569299
URL: http://svn.apache.org/r1569299
Log:
OPENNLP-600 Stream test classes now use a InputStreamFactory instead of InputStream.
Added:
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ResourceAsStreamFactory.java (with props)
Modified:
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll02NameSampleStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll03NameSampleStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ConllXPOSSampleStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/EvalitaNameSampleStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADChunkSampleStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADNameSampleStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADPOSSampleStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADParagraphStreamTest.java
opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADSentenceSampleStreamTest.java
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll02NameSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll02NameSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll02NameSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll02NameSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -24,10 +24,10 @@ import static org.junit.Assert.assertNul
import static org.junit.Assert.assertTrue;
import java.io.IOException;
-import java.io.InputStream;
import opennlp.tools.formats.Conll02NameSampleStream.LANGUAGE;
import opennlp.tools.namefind.NameSample;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.ObjectStream;
import opennlp.tools.util.Span;
@@ -41,7 +41,8 @@ import org.junit.Test;
public class Conll02NameSampleStreamTest {
private static ObjectStream<NameSample> openData(LANGUAGE lang, String name) throws IOException {
- InputStream in = Conll02NameSampleStreamTest.class.getResourceAsStream("/opennlp/tools/formats/" + name);
+ InputStreamFactory in = new ResourceAsStreamFactory(Conll02NameSampleStreamTest.class,
+ "/opennlp/tools/formats/" + name);
return new Conll02NameSampleStream(lang, in, Conll02NameSampleStream.GENERATE_PERSON_ENTITIES);
}
@@ -84,4 +85,15 @@ public class Conll02NameSampleStreamTest
assertNull(sampleStream.read());
}
+
+ @Test
+ public void testReset() throws IOException {
+ ObjectStream<NameSample> sampleStream = openData(LANGUAGE.NL, "conll2002-nl.sample");
+
+ NameSample sample = sampleStream.read();
+
+ sampleStream.reset();
+
+ assertEquals(sample, sampleStream.read());
+ }
}
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll03NameSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll03NameSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll03NameSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/Conll03NameSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -22,10 +22,10 @@ import static org.junit.Assert.assertNot
import static org.junit.Assert.assertNull;
import java.io.IOException;
-import java.io.InputStream;
import opennlp.tools.formats.Conll03NameSampleStream.LANGUAGE;
import opennlp.tools.namefind.NameSample;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.ObjectStream;
import opennlp.tools.util.Span;
@@ -41,7 +41,8 @@ public class Conll03NameSampleStreamTest
private static ObjectStream<NameSample> openData(LANGUAGE lang, String name) throws IOException {
- InputStream in = Conll03NameSampleStreamTest.class.getResourceAsStream("/opennlp/tools/formats/" + name);
+ InputStreamFactory in = new ResourceAsStreamFactory(Conll03NameSampleStreamTest.class,
+ "/opennlp/tools/formats/" + name);
return new Conll03NameSampleStream(lang, in, Conll02NameSampleStream.GENERATE_PERSON_ENTITIES);
}
@@ -97,4 +98,15 @@ public class Conll03NameSampleStreamTest
assertEquals(0, personName.getNames().length);
assertEquals(true, personName.isClearAdaptiveDataSet());
}
+
+ @Test
+ public void testReset() throws IOException {
+ ObjectStream<NameSample> sampleStream = openData(LANGUAGE.DE, GERMAN_SAMPLE);
+
+ NameSample sample = sampleStream.read();
+
+ sampleStream.reset();
+
+ assertEquals(sample, sampleStream.read());
+ }
}
\ No newline at end of file
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ConllXPOSSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ConllXPOSSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ConllXPOSSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ConllXPOSSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -21,11 +21,10 @@ import static org.junit.Assert.assertEqu
import static org.junit.Assert.assertNull;
import java.io.IOException;
-import java.io.InputStream;
import java.nio.charset.Charset;
import opennlp.tools.postag.POSSample;
-import opennlp.tools.util.MockInputStreamFactory;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.ObjectStream;
import org.junit.Test;
@@ -35,10 +34,10 @@ public class ConllXPOSSampleStreamTest {
@Test
public void testParsingSample() throws IOException {
- InputStream in = ConllXPOSSampleStreamTest.class.getResourceAsStream("/opennlp/tools/formats/conllx.sample");
+ InputStreamFactory in = new ResourceAsStreamFactory(ConllXPOSSampleStreamTest.class,
+ "/opennlp/tools/formats/conllx.sample");
- ObjectStream<POSSample> sampleStream = new ConllXPOSSampleStream(new MockInputStreamFactory(in),
- Charset.forName("UTF-8"));
+ ObjectStream<POSSample> sampleStream = new ConllXPOSSampleStream(in,Charset.forName("UTF-8"));
POSSample a = sampleStream.read();
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/EvalitaNameSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/EvalitaNameSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/EvalitaNameSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/EvalitaNameSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -22,10 +22,10 @@ import static org.junit.Assert.assertNot
import static org.junit.Assert.assertNull;
import java.io.IOException;
-import java.io.InputStream;
import opennlp.tools.formats.EvalitaNameSampleStream.LANGUAGE;
import opennlp.tools.namefind.NameSample;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.ObjectStream;
import opennlp.tools.util.Span;
@@ -39,7 +39,8 @@ import org.junit.Test;
public class EvalitaNameSampleStreamTest {
private static ObjectStream<NameSample> openData(LANGUAGE lang, String name) throws IOException {
- InputStream in = EvalitaNameSampleStreamTest.class.getResourceAsStream("/opennlp/tools/formats/" + name);
+ InputStreamFactory in = new ResourceAsStreamFactory(EvalitaNameSampleStreamTest.class,
+ "/opennlp/tools/formats/" + name);
return new EvalitaNameSampleStream(lang, in, EvalitaNameSampleStream.GENERATE_PERSON_ENTITIES);
}
@@ -67,4 +68,14 @@ public class EvalitaNameSampleStreamTest
assertNull(sampleStream.read());
}
+ @Test
+ public void testReset() throws IOException {
+ ObjectStream<NameSample> sampleStream = openData(LANGUAGE.IT, "evalita-ner-it.sample");
+
+ NameSample sample = sampleStream.read();
+
+ sampleStream.reset();
+
+ assertEquals(sample, sampleStream.read());
+ }
}
Added: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ResourceAsStreamFactory.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ResourceAsStreamFactory.java?rev=1569299&view=auto
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ResourceAsStreamFactory.java (added)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ResourceAsStreamFactory.java Tue Feb 18 12:57:45 2014
@@ -0,0 +1,47 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package opennlp.tools.formats;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import opennlp.tools.util.InputStreamFactory;
+
+public class ResourceAsStreamFactory implements InputStreamFactory {
+
+ private Class<?> clazz;
+ private String name;
+
+ /**
+ *
+ * @param clazz
+ * @param name
+ */
+ public ResourceAsStreamFactory(Class<?> clazz, String name) {
+
+ if (clazz == null || name == null) {
+ throw new IllegalArgumentException("Null parameters are not allowed!");
+ }
+
+ this.clazz = clazz;
+ this.name = name;
+ }
+
+ @Override
+ public InputStream createInputStream() throws IOException {
+ return clazz.getResourceAsStream(name);
+ }
+}
Propchange: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ResourceAsStreamFactory.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADChunkSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADChunkSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADChunkSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADChunkSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -20,11 +20,12 @@ package opennlp.tools.formats.ad;
import static org.junit.Assert.assertEquals;
import java.io.IOException;
-import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import opennlp.tools.chunker.ChunkSample;
+import opennlp.tools.formats.ResourceAsStreamFactory;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.PlainTextByLineStream;
import org.junit.Before;
@@ -66,8 +67,8 @@ public class ADChunkSampleStreamTest {
@Before
public void setup() throws IOException {
- InputStream in = ADParagraphStreamTest.class
- .getResourceAsStream("/opennlp/tools/formats/ad.sample");
+ InputStreamFactory in = new ResourceAsStreamFactory(
+ ADParagraphStreamTest.class, "/opennlp/tools/formats/ad.sample");
ADChunkSampleStream stream = new ADChunkSampleStream(
new PlainTextByLineStream(in, "UTF-8"));
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADNameSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADNameSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADNameSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADNameSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -20,11 +20,12 @@ package opennlp.tools.formats.ad;
import static org.junit.Assert.assertEquals;
import java.io.IOException;
-import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
+import opennlp.tools.formats.ResourceAsStreamFactory;
import opennlp.tools.namefind.NameSample;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.PlainTextByLineStream;
import opennlp.tools.util.Span;
@@ -112,8 +113,8 @@ public class ADNameSampleStreamTest {
@Before
public void setup() throws IOException {
- InputStream in = ADParagraphStreamTest.class
- .getResourceAsStream("/opennlp/tools/formats/ad.sample");
+ InputStreamFactory in = new ResourceAsStreamFactory(ADParagraphStreamTest.class,
+ "/opennlp/tools/formats/ad.sample");
ADNameSampleStream stream = new ADNameSampleStream(
new PlainTextByLineStream(in, "UTF-8"), true);
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADPOSSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADPOSSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADPOSSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADPOSSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -21,6 +21,7 @@ import static org.junit.Assert.assertEqu
import java.io.IOException;
+import opennlp.tools.formats.ResourceAsStreamFactory;
import opennlp.tools.postag.POSSample;
import opennlp.tools.util.PlainTextByLineStream;
@@ -32,9 +33,8 @@ public class ADPOSSampleStreamTest {
public void testSimple() throws IOException {
// add one sentence with expandME = includeFeats = false
ADPOSSampleStream stream = new ADPOSSampleStream(
- new PlainTextByLineStream(
- ADParagraphStreamTest.class
- .getResourceAsStream("/opennlp/tools/formats/ad.sample"),
+ new PlainTextByLineStream(new ResourceAsStreamFactory(
+ ADParagraphStreamTest.class, "/opennlp/tools/formats/ad.sample"),
"UTF-8"), false, false);
POSSample sample = stream.read();
@@ -58,9 +58,8 @@ public class ADPOSSampleStreamTest {
public void testExpandME() throws IOException {
// add one sentence with expandME = true
ADPOSSampleStream stream = new ADPOSSampleStream(
- new PlainTextByLineStream(
- ADParagraphStreamTest.class
- .getResourceAsStream("/opennlp/tools/formats/ad.sample"),
+ new PlainTextByLineStream(new ResourceAsStreamFactory(
+ ADParagraphStreamTest.class, "/opennlp/tools/formats/ad.sample"),
"UTF-8"), true, false);
POSSample sample = stream.read();
@@ -87,9 +86,8 @@ public class ADPOSSampleStreamTest {
public void testIncludeFeats() throws IOException {
// add one sentence with includeFeats = true
ADPOSSampleStream stream = new ADPOSSampleStream(
- new PlainTextByLineStream(
- ADParagraphStreamTest.class
- .getResourceAsStream("/opennlp/tools/formats/ad.sample"),
+ new PlainTextByLineStream(new ResourceAsStreamFactory(
+ ADParagraphStreamTest.class, "/opennlp/tools/formats/ad.sample"),
"UTF-8"), false, true);
POSSample sample = stream.read();
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADParagraphStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADParagraphStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADParagraphStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADParagraphStreamTest.java Tue Feb 18 12:57:45 2014
@@ -20,8 +20,9 @@ package opennlp.tools.formats.ad;
import static org.junit.Assert.assertEquals;
import java.io.IOException;
-import java.io.InputStream;
+import opennlp.tools.formats.ResourceAsStreamFactory;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.PlainTextByLineStream;
import org.junit.Test;
@@ -64,7 +65,7 @@ public class ADParagraphStreamTest {
}
private static ADSentenceStream openData() throws IOException {
- InputStream in = ADParagraphStreamTest.class.getResourceAsStream("/opennlp/tools/formats/ad.sample");
+ InputStreamFactory in = new ResourceAsStreamFactory(ADParagraphStreamTest.class, "/opennlp/tools/formats/ad.sample");
return new ADSentenceStream(new PlainTextByLineStream(in, "UTF-8"));
}
Modified: opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADSentenceSampleStreamTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADSentenceSampleStreamTest.java?rev=1569299&r1=1569298&r2=1569299&view=diff
==============================================================================
--- opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADSentenceSampleStreamTest.java (original)
+++ opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/formats/ad/ADSentenceSampleStreamTest.java Tue Feb 18 12:57:45 2014
@@ -21,11 +21,12 @@ import static org.junit.Assert.assertEqu
import static org.junit.Assert.assertNotNull;
import java.io.IOException;
-import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
+import opennlp.tools.formats.ResourceAsStreamFactory;
import opennlp.tools.sentdetect.SentenceSample;
+import opennlp.tools.util.InputStreamFactory;
import opennlp.tools.util.PlainTextByLineStream;
import opennlp.tools.util.Span;
@@ -52,8 +53,8 @@ public class ADSentenceSampleStreamTest
@Before
public void setup() throws IOException {
- InputStream in = ADSentenceSampleStreamTest.class
- .getResourceAsStream("/opennlp/tools/formats/ad.sample");
+ InputStreamFactory in = new ResourceAsStreamFactory(ADSentenceSampleStreamTest.class,
+ "/opennlp/tools/formats/ad.sample");
ADSentenceSampleStream stream = new ADSentenceSampleStream(
new PlainTextByLineStream(in, "UTF-8"), true);