[RocksJava] Extended testcases
+ 7% coverage + 3% branch coverage
This commit is contained in:
parent
9bec23c413
commit
b092686959
@ -71,6 +71,7 @@ JAVA_TESTS = org.rocksdb.test.AbstractComparatorTest\
|
||||
org.rocksdb.test.StatisticsCollectorTest\
|
||||
org.rocksdb.test.WirteBatchHandlerTest\
|
||||
org.rocksdb.test.WriteBatchTest\
|
||||
org.rocksdb.test.WriteOptionsTest\
|
||||
|
||||
JAVA_TEST_LIBDIR = ./test-libs/
|
||||
JAVA_JUNIT_JAR = $(JAVA_TEST_LIBDIR)junit-4.12-beta-2.jar
|
||||
|
@ -20,7 +20,7 @@ public class BlockBasedTableConfigTest {
|
||||
|
||||
@AfterClass
|
||||
public static void printMessage(){
|
||||
System.out.println("Passed BlockBasedTableConfigTst.");
|
||||
System.out.println("Passed BlockBasedTableConfigTest.");
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -65,7 +65,6 @@ public class BlockBasedTableConfigTest {
|
||||
isEqualTo(5);
|
||||
blockBasedTableConfig.setBlockSize(10);
|
||||
assertThat(blockBasedTableConfig.blockSize()).isEqualTo(10);
|
||||
System.out.println("Passed BlockBasedTableConfigTest.");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -5,6 +5,7 @@
|
||||
|
||||
package org.rocksdb.test;
|
||||
|
||||
import org.junit.AfterClass;
|
||||
import org.junit.ClassRule;
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
@ -14,6 +15,8 @@ import org.rocksdb.*;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.FileSystems;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class ComparatorTest {
|
||||
|
||||
@ClassRule
|
||||
@ -23,6 +26,11 @@ public class ComparatorTest {
|
||||
@Rule
|
||||
public TemporaryFolder dbFolder = new TemporaryFolder();
|
||||
|
||||
@AfterClass
|
||||
public static void printMessage(){
|
||||
System.out.println("Passed ComparatorTest.");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldTestComparator() throws IOException {
|
||||
|
||||
@ -47,7 +55,126 @@ public class ComparatorTest {
|
||||
// test the round-tripability of keys written and read with the Comparator
|
||||
comparatorTest.testRoundtrip(FileSystems.getDefault().getPath(
|
||||
dbFolder.getRoot().getAbsolutePath()));
|
||||
}
|
||||
|
||||
System.out.println("Passed ComparatorTest");
|
||||
@Test
|
||||
public void shouldTestBuiltinForwardComparator()
|
||||
throws RocksDBException {
|
||||
Options options = new Options();
|
||||
options.setCreateIfMissing(true);
|
||||
options.setComparator(BuiltinComparator.BYTEWISE_COMPARATOR);
|
||||
RocksDB rocksDB = RocksDB.open(options,
|
||||
dbFolder.getRoot().getAbsolutePath());
|
||||
|
||||
rocksDB.put("abc1".getBytes(), "abc1".getBytes());
|
||||
rocksDB.put("abc2".getBytes(), "abc2".getBytes());
|
||||
rocksDB.put("abc3".getBytes(), "abc3".getBytes());
|
||||
|
||||
RocksIterator rocksIterator = rocksDB.newIterator();
|
||||
// Iterate over keys using a iterator
|
||||
rocksIterator.seekToFirst();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
rocksIterator.next();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc2".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc2".getBytes());
|
||||
rocksIterator.next();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
rocksIterator.next();
|
||||
assertThat(rocksIterator.isValid()).isFalse();
|
||||
// Get last one
|
||||
rocksIterator.seekToLast();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
// Seek for abc
|
||||
rocksIterator.seek("abc".getBytes());
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
rocksIterator.dispose();
|
||||
rocksDB.close();
|
||||
options.dispose();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldTestBuiltinReverseComparator()
|
||||
throws RocksDBException {
|
||||
Options options = new Options();
|
||||
options.setCreateIfMissing(true);
|
||||
options.setComparator(
|
||||
BuiltinComparator.REVERSE_BYTEWISE_COMPARATOR);
|
||||
RocksDB rocksDB = RocksDB.open(options,
|
||||
dbFolder.getRoot().getAbsolutePath());
|
||||
|
||||
rocksDB.put("abc1".getBytes(), "abc1".getBytes());
|
||||
rocksDB.put("abc2".getBytes(), "abc2".getBytes());
|
||||
rocksDB.put("abc3".getBytes(), "abc3".getBytes());
|
||||
|
||||
RocksIterator rocksIterator = rocksDB.newIterator();
|
||||
// Iterate over keys using a iterator
|
||||
rocksIterator.seekToFirst();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
rocksIterator.next();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc2".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc2".getBytes());
|
||||
rocksIterator.next();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
rocksIterator.next();
|
||||
assertThat(rocksIterator.isValid()).isFalse();
|
||||
// Get last one
|
||||
rocksIterator.seekToLast();
|
||||
assertThat(rocksIterator.isValid()).isTrue();
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc1".getBytes());
|
||||
// Will be invalid because abc is after abc1
|
||||
rocksIterator.seek("abc".getBytes());
|
||||
assertThat(rocksIterator.isValid()).isFalse();
|
||||
// Will be abc3 because the next one after abc999
|
||||
// is abc3
|
||||
rocksIterator.seek("abc999".getBytes());
|
||||
assertThat(rocksIterator.key()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
assertThat(rocksIterator.value()).isEqualTo(
|
||||
"abc3".getBytes());
|
||||
rocksIterator.dispose();
|
||||
rocksDB.close();
|
||||
options.dispose();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldTestBuiltinComparatorEnum(){
|
||||
assertThat(BuiltinComparator.BYTEWISE_COMPARATOR.ordinal())
|
||||
.isEqualTo(0);
|
||||
assertThat(
|
||||
BuiltinComparator.REVERSE_BYTEWISE_COMPARATOR.ordinal())
|
||||
.isEqualTo(1);
|
||||
}
|
||||
}
|
||||
|
38
java/org/rocksdb/test/WriteOptionsTest.java
Normal file
38
java/org/rocksdb/test/WriteOptionsTest.java
Normal file
@ -0,0 +1,38 @@
|
||||
// Copyright (c) 2014, Facebook, Inc. All rights reserved.
|
||||
// This source code is licensed under the BSD-style license found in the
|
||||
// LICENSE file in the root directory of this source tree. An additional grant
|
||||
// of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
package org.rocksdb.test;
|
||||
|
||||
import org.junit.AfterClass;
|
||||
import org.junit.ClassRule;
|
||||
import org.junit.Test;
|
||||
import org.rocksdb.WriteOptions;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class WriteOptionsTest {
|
||||
|
||||
@ClassRule
|
||||
public static final RocksMemoryResource rocksMemoryResource =
|
||||
new RocksMemoryResource();
|
||||
|
||||
@AfterClass
|
||||
public static void printMessage(){
|
||||
System.out.println("Passed WriteOptionsTest.");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldTestWriteOptions(){
|
||||
WriteOptions writeOptions = new WriteOptions();
|
||||
writeOptions.setDisableWAL(true);
|
||||
assertThat(writeOptions.disableWAL()).isTrue();
|
||||
writeOptions.setDisableWAL(false);
|
||||
assertThat(writeOptions.disableWAL()).isFalse();
|
||||
writeOptions.setSync(true);
|
||||
assertThat(writeOptions.sync()).isTrue();
|
||||
writeOptions.setSync(false);
|
||||
assertThat(writeOptions.sync()).isFalse();
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user