Author: ryan
Date: Wed Sep 19 10:31:05 2007
New Revision: 577394

URL: http://svn.apache.org/viewvc?rev=577394&view=rev
Log:
SOLR-361 : refactor solrj tests so they are more extendable

Added:
    
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTests.java
   (with props)
    
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleEmbeddedTest.java
   (with props)
    
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
   (with props)
Removed:
    
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/TestEmbeddedSolrServer.java
    
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/TestJettySolrRunner.java
Modified:
    
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTestBase.java

Modified: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTestBase.java
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTestBase.java?rev=577394&r1=577393&r2=577394&view=diff
==============================================================================
--- 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTestBase.java
 (original)
+++ 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTestBase.java
 Wed Sep 19 10:31:05 2007
@@ -18,19 +18,6 @@
 package org.apache.solr.client.solrj;
 
 
-import java.io.IOException;
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import junit.framework.Assert;
-
-import org.apache.solr.client.solrj.response.QueryResponse;
-import org.apache.solr.client.solrj.response.UpdateResponse;
-import org.apache.solr.client.solrj.util.ClientUtils;
-import org.apache.solr.common.SolrInputDocument;
-import org.apache.solr.common.util.XML;
 import org.apache.solr.util.AbstractSolrTestCase;
 
 /**
@@ -52,212 +39,7 @@
   protected abstract SolrServer getSolrServer();
   
   /**
-   * query the example
+   * Create a new solr server
    */
-  public void testExampleConfig() throws Exception
-  {    
-    SolrServer server = getSolrServer();
-    
-    // Empty the database...
-    server.deleteByQuery( "*:*" );// delete everything!
-    
-    // Now add something...
-    SolrInputDocument doc = new SolrInputDocument();
-    String docID = "1112211111";
-    doc.addField( "id", docID, 1.0f );
-    doc.addField( "name", "my name!", 1.0f );
-    
-    Assert.assertEquals( null, doc.getField("foo") );
-    Assert.assertTrue(doc.getField("name").getValue() != null );
-        
-    UpdateResponse upres = server.add( doc ); 
-    System.out.println( "ADD:"+upres.getResponse() );
-    Assert.assertEquals(0, upres.getStatus());
-    
-    upres = server.commit( true, true );
-    System.out.println( "COMMIT:"+upres.getResponse() );
-    Assert.assertEquals(0, upres.getStatus());
-    
-    upres = server.optimize( true, true );
-    System.out.println( "OPTIMIZE:"+upres.getResponse() );
-    Assert.assertEquals(0, upres.getStatus());
-    
-    SolrQuery query = new SolrQuery();
-    query.setQuery( "id:"+docID );
-    QueryResponse response = server.query( query );
-    
-    Assert.assertEquals(docID, 
response.getResults().get(0).getFieldValue("id") );
-    
-    // Now add a few docs for facet testing...
-    List<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();
-    SolrInputDocument doc2 = new SolrInputDocument();
-    doc2.addField( "id", "2", 1.0f );
-    doc2.addField( "inStock", true, 1.0f );
-    doc2.addField( "price", 2, 1.0f );
-    doc2.addField( "timestamp", new java.util.Date(), 1.0f );
-    docs.add(doc2);
-    SolrInputDocument doc3 = new SolrInputDocument();
-    doc3.addField( "id", "3", 1.0f );
-    doc3.addField( "inStock", false, 1.0f );
-    doc3.addField( "price", 3, 1.0f );
-    doc3.addField( "timestamp", new java.util.Date(), 1.0f );
-    docs.add(doc3);
-    SolrInputDocument doc4 = new SolrInputDocument();
-    doc4.addField( "id", "4", 1.0f );
-    doc4.addField( "inStock", true, 1.0f );
-    doc4.addField( "price", 4, 1.0f );
-    doc4.addField( "timestamp", new java.util.Date(), 1.0f );
-    docs.add(doc4);
-    SolrInputDocument doc5 = new SolrInputDocument();
-    doc5.addField( "id", "5", 1.0f );
-    doc5.addField( "inStock", false, 1.0f );
-    doc5.addField( "price", 5, 1.0f );
-    doc5.addField( "timestamp", new java.util.Date(), 1.0f );
-    docs.add(doc5);
-    
-    upres = server.add( docs ); 
-    System.out.println( "ADD:"+upres.getResponse() );
-    Assert.assertEquals(0, upres.getStatus());
-    
-    upres = server.commit( true, true );
-    System.out.println( "COMMIT:"+upres.getResponse() );
-    Assert.assertEquals(0, upres.getStatus());
-    
-    upres = server.optimize( true, true );
-    System.out.println( "OPTIMIZE:"+upres.getResponse() );
-    Assert.assertEquals(0, upres.getStatus());
-    
-    query = new SolrQuery("*:*");
-    query.addFacetQuery("price:[* TO 2]");
-    query.addFacetQuery("price:[2 TO 4]");
-    query.addFacetQuery("price:[5 TO *]");
-    query.addFacetField("inStock");
-    query.addFacetField("price");
-    query.addFacetField("timestamp");
-    query.removeFilterQuery("inStock:true");
-    
-    response = server.query( query );
-    Assert.assertEquals(0, response.getStatus());
-    Assert.assertEquals(5, response.getResults().getNumFound() );
-    Assert.assertEquals(3, response.getFacetQuery().size());    
-    Assert.assertEquals(2, response.getFacetField("inStock").getValueCount());
-    Assert.assertEquals(4, response.getFacetField("price").getValueCount());
-    
-    // test a second query, test making a copy of the main query
-    SolrQuery query2 = query.getCopy();
-    query2.addFilterQuery("inStock:true");
-    response = server.query( query2 );
-    Assert.assertEquals(1, query2.getFilterQueries().length);
-    Assert.assertEquals(0, response.getStatus());
-    Assert.assertEquals(2, response.getResults().getNumFound() );
-    Assert.assertFalse(query.getFilterQueries() == query2.getFilterQueries());
-  }
-  
-
-  /**
-   * query the example
-   */
-  public void testAddRetrieve() throws Exception
-  {    
-    SolrServer server = getSolrServer();
-    
-    // Empty the database...
-    server.deleteByQuery( "*:*" );// delete everything!
-    
-    // Now add something...
-    SolrInputDocument doc1 = new SolrInputDocument();
-    doc1.addField( "id", "id1", 1.0f );
-    doc1.addField( "name", "doc1", 1.0f );
-    doc1.addField( "price", 10 );
-
-    SolrInputDocument doc2 = new SolrInputDocument();
-    doc2.addField( "id", "id2", 1.0f );
-    doc2.addField( "name", "doc2", 1.0f );
-    doc2.addField( "price", 20 );
-    
-    Collection<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();
-    docs.add( doc1 );
-    docs.add( doc2 );
-    
-    // Add the documents
-    server.add( docs );
-    server.commit();
-    
-    SolrQuery query = new SolrQuery();
-    query.setQuery( "*:*" );
-    query.addSortField( "price", SolrQuery.ORDER.asc );
-    QueryResponse rsp = server.query( query );
-    
-    Assert.assertEquals( 2, rsp.getResults().getNumFound() );
-    System.out.println( rsp.getResults() );
-    
-    // Now do it again
-    server.add( docs );
-    server.commit();
-    
-    rsp = server.query( query );
-    Assert.assertEquals( 2, rsp.getResults().getNumFound() );
-    System.out.println( rsp.getResults() );
-  }
-  
-  protected void assertNumFound( String query, int num ) throws 
SolrServerException, IOException
-  {
-    QueryResponse rsp = getSolrServer().query( new SolrQuery( query ) );
-    if( num != rsp.getResults().getNumFound() ) {
-      fail( "expected: "+num +" but had: "+rsp.getResults().getNumFound() + " 
:: " + rsp.getResults() );
-    }
-  }
-
-  public void testAddDelete() throws Exception
-  {    
-    SolrServer server = getSolrServer();
-    
-    // Empty the database...
-    server.deleteByQuery( "*:*" );// delete everything!
-    
-    SolrInputDocument[] doc = new SolrInputDocument[3];
-    for( int i=0; i<3; i++ ) {
-      doc[i] = new SolrInputDocument();
-      doc[i].setField( "id", i + " & 222", 1.0f );
-    }
-    String id = (String) doc[0].getField( "id" ).getFirstValue();
-    
-    server.add( doc[0] );
-    server.commit();
-    assertNumFound( "*:*", 1 ); // make sure it got in
-    
-    // make sure it got in there
-    server.deleteById( id );
-    server.commit();
-    assertNumFound( "*:*", 0 ); // make sure it got out
-    
-    // add it back 
-    server.add( doc[0] );
-    server.commit();
-    assertNumFound( "*:*", 1 ); // make sure it got in
-    server.deleteByQuery( "id:\""+ClientUtils.escapeQueryChars(id)+"\"" );
-    server.commit();
-    assertNumFound( "*:*", 0 ); // make sure it got out
-    
-    // Add two documents
-    for( SolrInputDocument d : doc ) {
-      server.add( d );
-    }
-    server.commit();
-    assertNumFound( "*:*", 3 ); // make sure it got in
-    
-    // should be able to handle multiple delete commands in a single go
-    StringWriter xml = new StringWriter();
-    xml.append( "<delete>" );
-    for( SolrInputDocument d : doc ) {
-      xml.append( "<id>" );
-      XML.escapeCharData( (String)d.getField( "id" ).getFirstValue(), xml );
-      xml.append( "</id>" );
-    }
-    xml.append( "</delete>" );
-    DirectXmlUpdateRequest up = new DirectXmlUpdateRequest( "/update", 
xml.toString() );
-    server.request( up );
-    server.commit();
-    assertNumFound( "*:*", 0 ); // make sure it got out
-  }
+  protected abstract SolrServer createNewSolrServer();
 }

Added: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTests.java
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTests.java?rev=577394&view=auto
==============================================================================
--- 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTests.java
 (added)
+++ 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTests.java
 Wed Sep 19 10:31:05 2007
@@ -0,0 +1,254 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+package org.apache.solr.client.solrj;
+
+
+import java.io.IOException;
+import java.io.StringWriter;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import junit.framework.Assert;
+
+import org.apache.solr.client.solrj.response.QueryResponse;
+import org.apache.solr.client.solrj.response.UpdateResponse;
+import org.apache.solr.client.solrj.util.ClientUtils;
+import org.apache.solr.common.SolrInputDocument;
+import org.apache.solr.common.util.XML;
+
+/**
+ * This should include tests against the example solr config
+ * 
+ * This lets us try various SolrServer implementations with the same tests.
+ * 
+ * @version $Id$
+ * @since solr 1.3
+ */
+abstract public class SolrExampleTests extends SolrExampleTestBase 
+{
+  /**
+   * query the example
+   */
+  public void testExampleConfig() throws Exception
+  {    
+    SolrServer server = getSolrServer();
+    
+    // Empty the database...
+    server.deleteByQuery( "*:*" );// delete everything!
+    
+    // Now add something...
+    SolrInputDocument doc = new SolrInputDocument();
+    String docID = "1112211111";
+    doc.addField( "id", docID, 1.0f );
+    doc.addField( "name", "my name!", 1.0f );
+    
+    Assert.assertEquals( null, doc.getField("foo") );
+    Assert.assertTrue(doc.getField("name").getValue() != null );
+        
+    UpdateResponse upres = server.add( doc ); 
+    System.out.println( "ADD:"+upres.getResponse() );
+    Assert.assertEquals(0, upres.getStatus());
+    
+    upres = server.commit( true, true );
+    System.out.println( "COMMIT:"+upres.getResponse() );
+    Assert.assertEquals(0, upres.getStatus());
+    
+    upres = server.optimize( true, true );
+    System.out.println( "OPTIMIZE:"+upres.getResponse() );
+    Assert.assertEquals(0, upres.getStatus());
+    
+    SolrQuery query = new SolrQuery();
+    query.setQuery( "id:"+docID );
+    QueryResponse response = server.query( query );
+    
+    Assert.assertEquals(docID, 
response.getResults().get(0).getFieldValue("id") );
+    
+    // Now add a few docs for facet testing...
+    List<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();
+    SolrInputDocument doc2 = new SolrInputDocument();
+    doc2.addField( "id", "2", 1.0f );
+    doc2.addField( "inStock", true, 1.0f );
+    doc2.addField( "price", 2, 1.0f );
+    doc2.addField( "timestamp", new java.util.Date(), 1.0f );
+    docs.add(doc2);
+    SolrInputDocument doc3 = new SolrInputDocument();
+    doc3.addField( "id", "3", 1.0f );
+    doc3.addField( "inStock", false, 1.0f );
+    doc3.addField( "price", 3, 1.0f );
+    doc3.addField( "timestamp", new java.util.Date(), 1.0f );
+    docs.add(doc3);
+    SolrInputDocument doc4 = new SolrInputDocument();
+    doc4.addField( "id", "4", 1.0f );
+    doc4.addField( "inStock", true, 1.0f );
+    doc4.addField( "price", 4, 1.0f );
+    doc4.addField( "timestamp", new java.util.Date(), 1.0f );
+    docs.add(doc4);
+    SolrInputDocument doc5 = new SolrInputDocument();
+    doc5.addField( "id", "5", 1.0f );
+    doc5.addField( "inStock", false, 1.0f );
+    doc5.addField( "price", 5, 1.0f );
+    doc5.addField( "timestamp", new java.util.Date(), 1.0f );
+    docs.add(doc5);
+    
+    upres = server.add( docs ); 
+    System.out.println( "ADD:"+upres.getResponse() );
+    Assert.assertEquals(0, upres.getStatus());
+    
+    upres = server.commit( true, true );
+    System.out.println( "COMMIT:"+upres.getResponse() );
+    Assert.assertEquals(0, upres.getStatus());
+    
+    upres = server.optimize( true, true );
+    System.out.println( "OPTIMIZE:"+upres.getResponse() );
+    Assert.assertEquals(0, upres.getStatus());
+    
+    query = new SolrQuery("*:*");
+    query.addFacetQuery("price:[* TO 2]");
+    query.addFacetQuery("price:[2 TO 4]");
+    query.addFacetQuery("price:[5 TO *]");
+    query.addFacetField("inStock");
+    query.addFacetField("price");
+    query.addFacetField("timestamp");
+    query.removeFilterQuery("inStock:true");
+    
+    response = server.query( query );
+    Assert.assertEquals(0, response.getStatus());
+    Assert.assertEquals(5, response.getResults().getNumFound() );
+    Assert.assertEquals(3, response.getFacetQuery().size());    
+    Assert.assertEquals(2, response.getFacetField("inStock").getValueCount());
+    Assert.assertEquals(4, response.getFacetField("price").getValueCount());
+    
+    // test a second query, test making a copy of the main query
+    SolrQuery query2 = query.getCopy();
+    query2.addFilterQuery("inStock:true");
+    response = server.query( query2 );
+    Assert.assertEquals(1, query2.getFilterQueries().length);
+    Assert.assertEquals(0, response.getStatus());
+    Assert.assertEquals(2, response.getResults().getNumFound() );
+    Assert.assertFalse(query.getFilterQueries() == query2.getFilterQueries());
+  }
+  
+
+  /**
+   * query the example
+   */
+  public void testAddRetrieve() throws Exception
+  {    
+    SolrServer server = getSolrServer();
+    
+    // Empty the database...
+    server.deleteByQuery( "*:*" );// delete everything!
+    
+    // Now add something...
+    SolrInputDocument doc1 = new SolrInputDocument();
+    doc1.addField( "id", "id1", 1.0f );
+    doc1.addField( "name", "doc1", 1.0f );
+    doc1.addField( "price", 10 );
+
+    SolrInputDocument doc2 = new SolrInputDocument();
+    doc2.addField( "id", "id2", 1.0f );
+    doc2.addField( "name", "doc2", 1.0f );
+    doc2.addField( "price", 20 );
+    
+    Collection<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();
+    docs.add( doc1 );
+    docs.add( doc2 );
+    
+    // Add the documents
+    server.add( docs );
+    server.commit();
+    
+    SolrQuery query = new SolrQuery();
+    query.setQuery( "*:*" );
+    query.addSortField( "price", SolrQuery.ORDER.asc );
+    QueryResponse rsp = server.query( query );
+    
+    Assert.assertEquals( 2, rsp.getResults().getNumFound() );
+    System.out.println( rsp.getResults() );
+    
+    // Now do it again
+    server.add( docs );
+    server.commit();
+    
+    rsp = server.query( query );
+    Assert.assertEquals( 2, rsp.getResults().getNumFound() );
+    System.out.println( rsp.getResults() );
+  }
+  
+  protected void assertNumFound( String query, int num ) throws 
SolrServerException, IOException
+  {
+    QueryResponse rsp = getSolrServer().query( new SolrQuery( query ) );
+    if( num != rsp.getResults().getNumFound() ) {
+      fail( "expected: "+num +" but had: "+rsp.getResults().getNumFound() + " 
:: " + rsp.getResults() );
+    }
+  }
+
+  public void testAddDelete() throws Exception
+  {    
+    SolrServer server = getSolrServer();
+    
+    // Empty the database...
+    server.deleteByQuery( "*:*" );// delete everything!
+    
+    SolrInputDocument[] doc = new SolrInputDocument[3];
+    for( int i=0; i<3; i++ ) {
+      doc[i] = new SolrInputDocument();
+      doc[i].setField( "id", i + " & 222", 1.0f );
+    }
+    String id = (String) doc[0].getField( "id" ).getFirstValue();
+    
+    server.add( doc[0] );
+    server.commit();
+    assertNumFound( "*:*", 1 ); // make sure it got in
+    
+    // make sure it got in there
+    server.deleteById( id );
+    server.commit();
+    assertNumFound( "*:*", 0 ); // make sure it got out
+    
+    // add it back 
+    server.add( doc[0] );
+    server.commit();
+    assertNumFound( "*:*", 1 ); // make sure it got in
+    server.deleteByQuery( "id:\""+ClientUtils.escapeQueryChars(id)+"\"" );
+    server.commit();
+    assertNumFound( "*:*", 0 ); // make sure it got out
+    
+    // Add two documents
+    for( SolrInputDocument d : doc ) {
+      server.add( d );
+    }
+    server.commit();
+    assertNumFound( "*:*", 3 ); // make sure it got in
+    
+    // should be able to handle multiple delete commands in a single go
+    StringWriter xml = new StringWriter();
+    xml.append( "<delete>" );
+    for( SolrInputDocument d : doc ) {
+      xml.append( "<id>" );
+      XML.escapeCharData( (String)d.getField( "id" ).getFirstValue(), xml );
+      xml.append( "</id>" );
+    }
+    xml.append( "</delete>" );
+    DirectXmlUpdateRequest up = new DirectXmlUpdateRequest( "/update", 
xml.toString() );
+    server.request( up );
+    server.commit();
+    assertNumFound( "*:*", 0 ); // make sure it got out
+  }
+}

Propchange: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTests.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/SolrExampleTests.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleEmbeddedTest.java
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleEmbeddedTest.java?rev=577394&view=auto
==============================================================================
--- 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleEmbeddedTest.java
 (added)
+++ 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleEmbeddedTest.java
 Wed Sep 19 10:31:05 2007
@@ -0,0 +1,52 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+package org.apache.solr.client.solrj.embedded;
+
+import org.apache.solr.client.solrj.SolrExampleTests;
+import org.apache.solr.client.solrj.SolrServer;
+
+/**
+ * This runs SolrServer test using 
+ * 
+ * @version $Id$
+ * @since solr 1.3
+ */
+public class SolrExampleEmbeddedTest extends SolrExampleTests {
+
+  SolrServer server;
+  
+  @Override public void setUp() throws Exception 
+  {
+    super.setUp();
+    
+    // setup the server...
+    server = createNewSolrServer();
+  }
+
+  @Override
+  protected SolrServer getSolrServer()
+  {
+    return server;
+  }
+
+  @Override
+  protected SolrServer createNewSolrServer()
+  {
+    return new EmbeddedSolrServer( h.getCore() );
+  }
+}

Propchange: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleEmbeddedTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleEmbeddedTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java?rev=577394&view=auto
==============================================================================
--- 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
 (added)
+++ 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
 Wed Sep 19 10:31:05 2007
@@ -0,0 +1,81 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+package org.apache.solr.client.solrj.embedded;
+
+import org.apache.solr.client.solrj.SolrExampleTests;
+import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.impl.CommonsHttpSolrServer;
+import org.apache.solr.core.SolrCore;
+import org.apache.solr.schema.SchemaField;
+
+/**
+ * TODO? perhaps use:
+ *  http://docs.codehaus.org/display/JETTY/ServletTester
+ * rather then open a real connection?
+ * 
+ * @version $Id$
+ * @since solr 1.3
+ */
+public class SolrExampleJettyTest extends SolrExampleTests {
+
+  SolrServer server;
+  JettySolrRunner jetty;
+
+  static final int port = 8984; // not 8983
+  static final String context = "/example";
+  
+  @Override public void setUp() throws Exception 
+  {
+    super.setUp();
+    
+    jetty = new JettySolrRunner( context, port );
+    jetty.start();
+    
+    server = this.createNewSolrServer();
+  }
+
+  @Override public void tearDown() throws Exception 
+  {
+    super.tearDown();
+    jetty.stop();  // stop the server
+  }
+  
+  
+  @Override
+  protected SolrServer getSolrServer()
+  {
+    return server;
+  }
+
+  @Override
+  protected SolrServer createNewSolrServer()
+  {
+    try {
+      // setup the server...
+      String url = "http://localhost:"+port+context;
+      CommonsHttpSolrServer s = new CommonsHttpSolrServer( url );
+      s.setConnectionTimeout(5);
+      s.setDefaultMaxConnectionsPerHost(100);
+      s.setMaxTotalConnections(100);
+      return s;
+    }
+    catch( Exception ex ) {
+      throw new RuntimeException( ex );
+    }
+  }
+}

Propchange: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/SolrExampleJettyTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL


Reply via email to