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 2012/12/19 23:16:24 UTC

svn commit: r1424168 - /opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java

Author: joern
Date: Wed Dec 19 22:16:23 2012
New Revision: 1424168

URL: http://svn.apache.org/viewvc?rev=1424168&view=rev
Log:
OPENNLP-553 model is now kept in memory and not serialized to the current working directory.

Modified:
    opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java

Modified: opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java
URL: http://svn.apache.org/viewvc/opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java?rev=1424168&r1=1424167&r2=1424168&view=diff
==============================================================================
--- opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java (original)
+++ opennlp/trunk/opennlp-maxent/src/test/java/opennlp/maxent/quasinewton/QNTrainerTest.java Wed Dec 19 22:16:23 2012
@@ -23,6 +23,10 @@ import static org.junit.Assert.assertNot
 import static org.junit.Assert.assertTrue;
 
 import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.DataInputStream;
+import java.io.DataOutputStream;
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
@@ -31,6 +35,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 import opennlp.model.AbstractModel;
+import opennlp.model.BinaryFileDataReader;
 import opennlp.model.DataIndexer;
 import opennlp.model.Event;
 import opennlp.model.GenericModelReader;
@@ -92,15 +97,17 @@ public class QNTrainerTest {
 	    // given
 	    RealValueFileEventStream rvfes1 = new RealValueFileEventStream("src/test/resources/data/opennlp/maxent/real-valued-weights-training-data.txt");  
 	    DataIndexer testDataIndexer = new OnePassRealValueDataIndexer(rvfes1,1);
-	    String modelFileName = "qn-test-model.bin";
 	    // when
 	   // QNModel trainedModel = new QNTrainer(5, 500, true).trainModel(new TwoPassDataIndexer(createTrainingStream()));
 	    QNModel trainedModel = new QNTrainer(5, 700, true).trainModel(testDataIndexer);
 	    
-	    GenericModelWriter modelWriter = new GenericModelWriter(trainedModel, new File(modelFileName));
+	    ByteArrayOutputStream modelBytes = new ByteArrayOutputStream();
+	    GenericModelWriter modelWriter = new GenericModelWriter(trainedModel, new DataOutputStream(modelBytes));
 	    modelWriter.persist();
+	    modelWriter.close();
 	    
-	    GenericModelReader modelReader = new GenericModelReader(new File(modelFileName));
+	    GenericModelReader modelReader = new GenericModelReader(new BinaryFileDataReader(
+	        new ByteArrayInputStream(modelBytes.toByteArray())));
 	    AbstractModel readModel = modelReader.getModel();
 	    QNModel deserModel = (QNModel) readModel;