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