From: Bryan T. <tho...@us...> - 2007-04-25 14:57:20
|
Update of /cvsroot/cweb/bigdata/src/test/com/bigdata/service In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv16408/src/test/com/bigdata/service Modified Files: TestBigdataClient.java TestMetadataServer0.java TestDataServer0.java Log Message: Progress on the BigdataClient. Index: TestBigdataClient.java =================================================================== RCS file: /cvsroot/cweb/bigdata/src/test/com/bigdata/service/TestBigdataClient.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** TestBigdataClient.java 23 Apr 2007 23:44:41 -0000 1.1 --- TestBigdataClient.java 25 Apr 2007 14:57:10 -0000 1.2 *************** *** 48,51 **** --- 48,56 ---- package com.bigdata.service; + import java.util.UUID; + + import com.bigdata.btree.IIndex; + import com.bigdata.service.BigdataClient.IBigdataFederation; + /** * Test suite for the {@link BigdataClient}. *************** *** 184,188 **** --- 189,251 ---- assertNotNull("metadataService", client.getMetadataService()); + + IBigdataFederation fed = client.connect(); + + final String name = "testIndex"; + + UUID indexUUID = fed.registerIndex(name); + + IIndex ndx = fed.getIndex(IBigdataFederation.UNISOLATED,name); + + // fetches the index UUID from the metadata service. + assertEquals("indexUUID",indexUUID,ndx.getIndexUUID()); + + // uses the cached copy of the index UUID. + assertEquals("indexUUID",indexUUID,ndx.getIndexUUID()); + + // the index is empty. + assertFalse(ndx.contains(new byte[]{1})); + + // the key is not in the index. + assertEquals(null,(byte[])ndx.lookup(new byte[]{1})); + // insert a key-value pair. + assertNull(ndx.insert(new byte[]{1}, new byte[]{1})); + + // verify index reports value exists for the key. + assertTrue(ndx.contains(new byte[]{1})); + + // verify correct value in the index. + assertEquals(new byte[]{1},(byte[])ndx.lookup(new byte[]{1})); + + // verify some range counts. + // @todo test with rangeCount(null,null). + assertEquals(0,ndx.rangeCount(new byte[]{}, new byte[]{1})); + assertEquals(1,ndx.rangeCount(new byte[]{}, new byte[]{2})); + assertEquals(1,ndx.rangeCount(new byte[]{1}, new byte[]{2})); + + // remove the index entry. + assertEquals(new byte[]{1},(byte[])ndx.remove(new byte[]{1})); + + // the index is empty. + assertFalse(ndx.contains(new byte[]{1})); + + // the key is not in the index. + assertEquals(null,(byte[])ndx.lookup(new byte[]{1})); + + /* + * verify some range counts. + * + * Note: the range counts do NOT immediately adjust when keys are + * removed since deletion markers are written into those entries. The + * relevant index partition(s) need to be compacted for those deletion + * markers to be removed and the range counts adjusted to match. + * + * @todo test with rangeCount(null,null). + */ + assertEquals(0,ndx.rangeCount(new byte[]{}, new byte[]{1})); + assertEquals(1,ndx.rangeCount(new byte[]{}, new byte[]{2})); + assertEquals(1,ndx.rangeCount(new byte[]{1}, new byte[]{2})); + } Index: TestMetadataServer0.java =================================================================== RCS file: /cvsroot/cweb/bigdata/src/test/com/bigdata/service/TestMetadataServer0.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** TestMetadataServer0.java 23 Apr 2007 23:44:41 -0000 1.4 --- TestMetadataServer0.java 25 Apr 2007 14:57:10 -0000 1.5 *************** *** 235,244 **** Thread.sleep(500); ! assertNotNull(metadataServer0.getDataServiceByID(dataService0ID)); ! assertNotNull(metadataServer0.getDataServiceByID(dataService1ID)); ! assertEquals("#dataServices", 2, metadataServer0 ! .getDataServiceCount()); } finally { --- 235,244 ---- Thread.sleep(500); ! assertNotNull(metadataServer0.dataServiceMap.getDataServiceByID(dataService0ID)); ! assertNotNull(metadataServer0.dataServiceMap.getDataServiceByID(dataService1ID)); ! assertEquals("#dataServices", 2, metadataServer0. ! dataServiceMap.getDataServiceCount()); } finally { *************** *** 257,266 **** assertEquals("#dataServices", 1, metadataServer0 ! .getDataServiceCount()); ! assertNull(metadataServer0.getDataServiceByID(dataService0ID)); assertNotNull(metadataServer0 ! .getDataServiceByID(dataService1ID)); } --- 257,266 ---- assertEquals("#dataServices", 1, metadataServer0 ! .dataServiceMap.getDataServiceCount()); ! assertNull(metadataServer0.dataServiceMap.getDataServiceByID(dataService0ID)); assertNotNull(metadataServer0 ! .dataServiceMap.getDataServiceByID(dataService1ID)); } *************** *** 335,349 **** */ ! IPartitionMetadata pmd; ! { ! ! byte[] val = metadataServiceProxy.lookup(IDataService.UNISOLATED, ! MetadataService.getMetadataName(indexName), new byte[] {}); ! ! assertNotNull(val); ! ! pmd = (IPartitionMetadata) SerializerUtil.deserialize(val); ! ! } /* --- 335,342 ---- */ ! IPartitionMetadata pmd = metadataServiceProxy.getPartition(indexName, ! new byte[] {}); ! ! assertNotNull(pmd); /* Index: TestDataServer0.java =================================================================== RCS file: /cvsroot/cweb/bigdata/src/test/com/bigdata/service/TestDataServer0.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** TestDataServer0.java 23 Apr 2007 13:09:30 -0000 1.4 --- TestDataServer0.java 25 Apr 2007 14:57:10 -0000 1.5 *************** *** 144,148 **** proxy.batchInsert(IDataService.UNISOLATED, name, 1, new byte[][] { new byte[] { 1 } }, ! new byte[][] { new byte[] { 1 } }); // verify keys that exist/do not exist. --- 144,149 ---- proxy.batchInsert(IDataService.UNISOLATED, name, 1, new byte[][] { new byte[] { 1 } }, ! new byte[][] { new byte[] { 1 } }, ! true /*returnOldValues*/ ); // verify keys that exist/do not exist. |