vgritsenko 2004/01/08 19:52:35
Modified: java/tests/src/org/apache/xindice/integration/client/basic IndexTest.java java/tests/src/org/apache/xindice/integration/client XmlDbClient.java Log: Fixing index test. Enable inline meta data in tests. Revision Changes Path 1.5 +117 -138 xml-xindice/java/tests/src/org/apache/xindice/integration/client/basic/IndexTest.java Index: IndexTest.java =================================================================== RCS file: /home/cvs/xml-xindice/java/tests/src/org/apache/xindice/integration/client/basic/IndexTest.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- IndexTest.java 7 Aug 2003 20:13:26 -0000 1.4 +++ IndexTest.java 9 Jan 2004 03:52:35 -0000 1.5 @@ -60,8 +60,7 @@ package org.apache.xindice.integration.client.basic; import org.apache.xindice.integration.client.AbstractXmlDbClientTest; -import org.apache.xindice.util.XindiceException; - +import org.w3c.dom.Document; import org.xmldb.api.base.XMLDBException; import java.util.Arrays; @@ -71,139 +70,119 @@ * @version CVS $Revision$, $Date$ * @author Vladimir R. Bossicard <[EMAIL PROTECTED]> */ -public class IndexTest - extends AbstractXmlDbClientTest { - - - public void testCreateIndexer() - throws Exception { - this.client.createIndexer(TEST_COLLECTION_PATH, "goodindexer", getIndexDef("goodindexer")); - this.client.dropIndexer(TEST_COLLECTION_PATH, "goodindexer"); - } - - private String getIndexDef(String name) { - return "<?xml version=\"1.0\"?><index class=\"org.apache.xindice.core.indexer.ValueIndexer\" name=\"" + name + "\" pattern=\"pattern\" />"; - } - - public void testCreateDuplicateIndexer() - throws Exception { - this.client.createIndexer(TEST_COLLECTION_PATH, "duplicate", getIndexDef("duplicate")); - try { - this.client.createIndexer(TEST_COLLECTION_PATH, "duplicate", getIndexDef("duplicate")); - fail(); - } catch (XMLDBException e) { - //assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); - } finally { - this.client.dropIndexer(TEST_COLLECTION_PATH, "duplicate"); - } - } - - public void testCreateIndexerEmptyName() - throws Exception { - try { - this.client.createIndexer(TEST_COLLECTION_PATH, "", getIndexDef("")); - } catch (XMLDBException e) { - //assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); - return; - } - fail(); - } - - public void testCreateIndexerNullName() - throws Exception { - try { - this.client.createIndexer(TEST_COLLECTION_PATH, null, getIndexDef("")); - } catch (XMLDBException e) { - //assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); - return; - } - fail(); - } - - public void testCreateIndexerNullDefinition() - throws Exception { - try { - this.client.createIndexer(TEST_COLLECTION_PATH, "index", null); - } catch (XindiceException e) { - //assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); - return; - } - fail(); - } - - public void testCreateIndexerInvalidDefinition() - throws Exception { - try { - this.client.createIndexer(TEST_COLLECTION_PATH, "index", "blah"); - } catch (XindiceException e) { - //assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); - return; - } - fail(); - } - - public void testDropIndexerTwice() - throws Exception { - this.client.createIndexer(TEST_COLLECTION_PATH, "droptwice", getIndexDef("droptwice")); - this.client.dropIndexer(TEST_COLLECTION_PATH, "droptwice"); - - // drop the newly created index - try { - this.client.dropIndexer(TEST_COLLECTION_PATH, "droptwice"); - } catch (XMLDBException e) { - //assertTrue( e.getMessage().lastIndexOf( "Index Value Null" ) > 0 ); - return; - } - fail(); - } - - public void testDropIndexerInvalidName() - throws Exception { - try { - this.client.dropIndexer(TEST_COLLECTION_PATH, ""); - } catch (XMLDBException e) { - //assertTrue( e.getMessage().lastIndexOf( "Index Value Null" ) > 0 ); - return; - } - fail(); - } - - public void testDropIndexerNullName() - throws Exception { - try { - this.client.dropIndexer(TEST_COLLECTION_PATH, null); - } catch (XMLDBException e) { - //assertTrue( e.getMessage().lastIndexOf( "Index Value Null" ) > 0 ); - return; - } - fail(); - } - - public void testListIndexers() - throws Exception { - String[] indexes = this.client.listIndexes(TEST_COLLECTION_PATH); - assertEquals(0, indexes.length); - - this.client.createIndexer(TEST_COLLECTION_PATH, "index1", getIndexDef("index1")); - indexes = this.client.listIndexes(TEST_COLLECTION_PATH); - assertEquals(1, indexes.length); - assertEquals("index1", indexes[0]); - - this.client.createIndexer(TEST_COLLECTION_PATH, "index2", getIndexDef("index2")); - indexes = this.client.listIndexes(TEST_COLLECTION_PATH); - assertEquals(2, indexes.length); - Vector lst = new Vector(Arrays.asList(indexes)); - assertTrue(lst.contains("index1")); - assertTrue(lst.contains("index2")); - - this.client.dropIndexer(TEST_COLLECTION_PATH, "index1"); - indexes = this.client.listIndexes(TEST_COLLECTION_PATH); - assertEquals(1, indexes.length); - assertEquals("index2", indexes[0]); - - this.client.dropIndexer(TEST_COLLECTION_PATH, "index2"); - indexes = this.client.listIndexes(TEST_COLLECTION_PATH); - assertEquals(0, indexes.length); - } +public class IndexTest extends AbstractXmlDbClientTest { + public void testCreateIndexer() throws Exception { + this.client.createIndexer(TEST_COLLECTION_PATH, getIndexDef("goodindexer")); + this.client.dropIndexer(TEST_COLLECTION_PATH, "goodindexer"); + } + + private String getIndexDef(String name) { + return "<?xml version=\"1.0\"?>" + + "<index class=\"org.apache.xindice.core.indexer.ValueIndexer\" name=\"" + name + "\" pattern=\"pattern\" />"; + } + + public void testCreateDuplicateIndexer() throws Exception { + this.client.createIndexer(TEST_COLLECTION_PATH, getIndexDef("duplicate")); + try { + this.client.createIndexer(TEST_COLLECTION_PATH, getIndexDef("duplicate")); + fail(); + } catch (XMLDBException e) { + // assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); + } finally { + this.client.dropIndexer(TEST_COLLECTION_PATH, "duplicate"); + } + } + + public void testCreateIndexerEmptyName() throws Exception { + try { + this.client.createIndexer(TEST_COLLECTION_PATH, getIndexDef("")); + } catch (XMLDBException e) { + // assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); + return; + } + fail(); + } + + public void testCreateIndexerNullDefinition() throws Exception { + try { + this.client.createIndexer(TEST_COLLECTION_PATH, (Document)null); + } catch (XMLDBException e) { + // assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); + return; + } + fail(); + } + + public void testCreateIndexerInvalidDefinition() throws Exception { + try { + this.client.createIndexer(TEST_COLLECTION_PATH, + "<?xml version=\"1.0\"?>" + + "<index class=\"org.apache.xindice.core.indexer.BlahIndexer\" name=\"blah\" pattern=\"blah\" />"); + } catch (XMLDBException e) { + // assertTrue( e.getMessage().lastIndexOf( "No name specified" ) > 0 ); + return; + } + fail(); + } + + public void testDropIndexerTwice() throws Exception { + this.client.createIndexer(TEST_COLLECTION_PATH, getIndexDef("droptwice")); + this.client.dropIndexer(TEST_COLLECTION_PATH, "droptwice"); + + // drop the newly created index + try { + this.client.dropIndexer(TEST_COLLECTION_PATH, "droptwice"); + } catch (XMLDBException e) { + //assertTrue( e.getMessage().lastIndexOf( "Index Value Null" ) > 0 ); + return; + } + fail(); + } + + public void testDropIndexerInvalidName() throws Exception { + try { + this.client.dropIndexer(TEST_COLLECTION_PATH, ""); + } catch (XMLDBException e) { + //assertTrue( e.getMessage().lastIndexOf( "Index Value Null" ) > 0 ); + return; + } + fail(); + } + + public void testDropIndexerNullName() throws Exception { + try { + this.client.dropIndexer(TEST_COLLECTION_PATH, null); + } catch (XMLDBException e) { + //assertTrue( e.getMessage().lastIndexOf( "Index Value Null" ) > 0 ); + return; + } + fail(); + } + + public void testListIndexers() throws Exception { + String[] indexes = this.client.listIndexes(TEST_COLLECTION_PATH); + assertEquals(0, indexes.length); + + this.client.createIndexer(TEST_COLLECTION_PATH, getIndexDef("index1")); + indexes = this.client.listIndexes(TEST_COLLECTION_PATH); + assertEquals(1, indexes.length); + assertEquals("index1", indexes[0]); + + this.client.createIndexer(TEST_COLLECTION_PATH, getIndexDef("index2")); + indexes = this.client.listIndexes(TEST_COLLECTION_PATH); + assertEquals(2, indexes.length); + Vector lst = new Vector(Arrays.asList(indexes)); + assertTrue(lst.contains("index1")); + assertTrue(lst.contains("index2")); + + this.client.dropIndexer(TEST_COLLECTION_PATH, "index1"); + indexes = this.client.listIndexes(TEST_COLLECTION_PATH); + assertEquals(1, indexes.length); + assertEquals("index2", indexes[0]); + + this.client.dropIndexer(TEST_COLLECTION_PATH, "index2"); + indexes = this.client.listIndexes(TEST_COLLECTION_PATH); + assertEquals(0, indexes.length); + } } 1.14 +10 -6 xml-xindice/java/tests/src/org/apache/xindice/integration/client/XmlDbClient.java Index: XmlDbClient.java =================================================================== RCS file: /home/cvs/xml-xindice/java/tests/src/org/apache/xindice/integration/client/XmlDbClient.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- XmlDbClient.java 26 Dec 2003 02:41:58 -0000 1.13 +++ XmlDbClient.java 9 Jan 2004 03:52:35 -0000 1.14 @@ -98,9 +98,9 @@ } public Collection createCollection(String parent, String path, String name) throws Exception { - // FIXME: inline metadata conflicts with indexers? + // Inline meta data is on String config = - "<collection compressed=\"true\" name=\"" + name + "\" inline-metadata=\"false\">" + + "<collection compressed=\"true\" name=\"" + name + "\" inline-metadata=\"true\">" + " <filer class=\"org.apache.xindice.core.filer.BTreeFiler\" gzip=\"true\"/>" + "</collection>"; return createCollection(parent, path, DOMParser.toDocument(config)); @@ -144,14 +144,18 @@ return col.getChildCollectionCount(); } - public void createIndexer(String path, String name, String indexdef) throws Exception { + public void createIndexer(String path, String indexDoc) throws Exception { + createIndexer(path, DOMParser.toDocument(indexDoc)); + } + + public void createIndexer(String path, Document indexDoc) throws Exception { Collection col = DatabaseManager.getCollection(driver + "/" + path); if (col == null) { throw new XindiceException("DatabaseManager.getCollection(" + driver + "/" + path + ") returned null"); } CollectionManager service = (CollectionManager) col.getService("CollectionManager", "1.0"); - service.createIndexer(DOMParser.toDocument(indexdef)); + service.createIndexer(indexDoc); } public String[] listIndexes(String path) throws Exception {