You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opennlp.apache.org by co...@apache.org on 2011/01/07 04:13:09 UTC
svn commit: r1056177 - in /incubator/opennlp/trunk/opennlp-tools/src:
main/java/opennlp/tools/chunker/ChunkSample.java
test/java/opennlp/tools/chunker/ChunkSampleTest.java
Author: colen
Date: Fri Jan 7 03:13:08 2011
New Revision: 1056177
URL: http://svn.apache.org/viewvc?rev=1056177&view=rev
Log:
OPENNLP-60 ChunkSample.toString should return a data that could be parsable back. This is necessary to make the Converter tool work
Modified:
incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkSample.java
incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkSampleTest.java
Modified: incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkSample.java
URL: http://svn.apache.org/viewvc/incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkSample.java?rev=1056177&r1=1056176&r2=1056177&view=diff
==============================================================================
--- incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkSample.java (original)
+++ incubator/opennlp/trunk/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkSample.java Fri Jan 7 03:13:08 2011
@@ -90,8 +90,8 @@ public class ChunkSample {
return phrases.toArray(new Span[phrases.size()]);
}
- @Override
- public String toString() {
+
+ public String nicePrint() {
StringBuilder chunkString = new StringBuilder();
@@ -108,4 +108,15 @@ public class ChunkSample {
return chunkString.toString();
}
+
+ @Override
+ public String toString() {
+
+ StringBuilder chunkString = new StringBuilder();
+
+ for (int ci=0; ci < preds.size(); ci++) {
+ chunkString.append(sentence.get(ci) + " " + tags.get(ci) + " " + preds.get(ci) + "\n");
+ }
+ return chunkString.toString();
+ }
}
Modified: incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkSampleTest.java
URL: http://svn.apache.org/viewvc/incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkSampleTest.java?rev=1056177&r1=1056176&r2=1056177&view=diff
==============================================================================
--- incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkSampleTest.java (original)
+++ incubator/opennlp/trunk/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkSampleTest.java Fri Jan 7 03:13:08 2011
@@ -20,9 +20,11 @@ package opennlp.tools.chunker;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
+import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
+import java.io.StringReader;
import opennlp.tools.util.PlainTextByLineStream;
import opennlp.tools.util.Span;
@@ -87,12 +89,32 @@ public class ChunkSampleTest {
}
@Test
- public void testToString() {
+ public void testToString() throws IOException {
+
+ ChunkSample sample = new ChunkSample(createSentence(), createTags(), createChunks());
+ String[] sentence = createSentence();
+ String[] tags = createTags();
+ String[] chunks = createChunks();
+
+ StringReader sr = new StringReader(sample.toString());
+ BufferedReader reader = new BufferedReader(sr);
+ for (int i = 0; i < sentence.length; i++) {
+ String line = reader.readLine();
+ String[] parts = line.split("\\s+");
+ assertEquals(3, parts.length);
+ assertEquals(sentence[i], parts[0]);
+ assertEquals(tags[i], parts[1]);
+ assertEquals(chunks[i], parts[2]);
+ }
+ }
+
+ @Test
+ public void testNicePrint() {
ChunkSample sample = new ChunkSample(createSentence(), createTags(), createChunks());
assertEquals(" [NP Forecasts_NNS ] [PP for_IN ] [NP the_DT trade_NN figures_NNS ] " +
- "[VP range_VBP ] [ADVP widely_RB ] ._.", sample.toString());
+ "[VP range_VBP ] [ADVP widely_RB ] ._.", sample.nicePrint());
}
@Test