mirror of https://github.com/apache/lucene.git
clear nocommit
git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/branches/lucene4547@1441418 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
a95815c362
commit
10fa1167dc
|
@ -1,14 +1,9 @@
|
||||||
package org.apache.lucene.util;
|
package org.apache.lucene.util;
|
||||||
|
|
||||||
import java.io.EOFException;
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.lucene.store.IndexInput;
|
|
||||||
import org.apache.lucene.store.IndexOutput;
|
|
||||||
import org.apache.lucene.store.RAMDirectory;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* contributor license agreements. See the NOTICE file distributed with this
|
* contributor license agreements. See the NOTICE file distributed with this
|
||||||
|
@ -27,46 +22,30 @@ import org.apache.lucene.store.RAMDirectory;
|
||||||
*/
|
*/
|
||||||
public class TestByteBlockPool extends LuceneTestCase {
|
public class TestByteBlockPool extends LuceneTestCase {
|
||||||
|
|
||||||
/* nocommit: test this in some other way than dumping out
|
public void testReadAndWrite() throws IOException {
|
||||||
public void testCopyRefAndWrite() throws IOException {
|
|
||||||
Counter bytesUsed = Counter.newCounter();
|
Counter bytesUsed = Counter.newCounter();
|
||||||
ByteBlockPool pool = new ByteBlockPool(new ByteBlockPool.DirectTrackingAllocator(bytesUsed));
|
ByteBlockPool pool = new ByteBlockPool(new ByteBlockPool.DirectTrackingAllocator(bytesUsed));
|
||||||
pool.nextBuffer();
|
pool.nextBuffer();
|
||||||
boolean reuseFirst = random().nextBoolean();
|
boolean reuseFirst = random().nextBoolean();
|
||||||
for (int j = 0; j < 2; j++) {
|
for (int j = 0; j < 2; j++) {
|
||||||
|
|
||||||
List<String> list = new ArrayList<String>();
|
List<BytesRef> list = new ArrayList<BytesRef>();
|
||||||
int maxLength = atLeast(500);
|
int maxLength = atLeast(500);
|
||||||
final int numValues = atLeast(100);
|
final int numValues = atLeast(100);
|
||||||
BytesRef ref = new BytesRef();
|
BytesRef ref = new BytesRef();
|
||||||
for (int i = 0; i < numValues; i++) {
|
for (int i = 0; i < numValues; i++) {
|
||||||
final String value = _TestUtil.randomRealisticUnicodeString(random(),
|
final String value = _TestUtil.randomRealisticUnicodeString(random(),
|
||||||
maxLength);
|
maxLength);
|
||||||
list.add(value);
|
list.add(new BytesRef(value));
|
||||||
ref.copyChars(value);
|
ref.copyChars(value);
|
||||||
pool.copy(ref);
|
pool.append(ref);
|
||||||
}
|
}
|
||||||
RAMDirectory dir = new RAMDirectory();
|
// verify
|
||||||
IndexOutput stream = dir.createOutput("foo.txt", newIOContext(random()));
|
long position = 0;
|
||||||
pool.writePool(stream);
|
for (BytesRef expected : list) {
|
||||||
stream.flush();
|
pool.readBytes(ref, position, expected.length);
|
||||||
stream.close();
|
assertEquals(expected, ref);
|
||||||
IndexInput input = dir.openInput("foo.txt", newIOContext(random()));
|
position += ref.length;
|
||||||
assertEquals(pool.byteOffset + pool.byteUpto, stream.length());
|
|
||||||
BytesRef expected = new BytesRef();
|
|
||||||
BytesRef actual = new BytesRef();
|
|
||||||
for (String string : list) {
|
|
||||||
expected.copyChars(string);
|
|
||||||
actual.grow(expected.length);
|
|
||||||
actual.length = expected.length;
|
|
||||||
input.readBytes(actual.bytes, 0, actual.length);
|
|
||||||
assertEquals(expected, actual);
|
|
||||||
}
|
|
||||||
try {
|
|
||||||
input.readByte();
|
|
||||||
fail("must be EOF");
|
|
||||||
} catch (EOFException e) {
|
|
||||||
// expected - read past EOF
|
|
||||||
}
|
}
|
||||||
pool.reset(random().nextBoolean(), reuseFirst);
|
pool.reset(random().nextBoolean(), reuseFirst);
|
||||||
if (reuseFirst) {
|
if (reuseFirst) {
|
||||||
|
@ -75,7 +54,6 @@ public class TestByteBlockPool extends LuceneTestCase {
|
||||||
assertEquals(0, bytesUsed.get());
|
assertEquals(0, bytesUsed.get());
|
||||||
pool.nextBuffer(); // prepare for next iter
|
pool.nextBuffer(); // prepare for next iter
|
||||||
}
|
}
|
||||||
dir.close();
|
|
||||||
}
|
}
|
||||||
} */
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue