diff --git a/other/java/random_access/pom.xml b/test/random_access/pom.xml
similarity index 100%
rename from other/java/random_access/pom.xml
rename to test/random_access/pom.xml
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/BTreePersistentIndexedCache.java b/test/random_access/src/main/java/seaweedfs/client/btree/BTreePersistentIndexedCache.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/BTreePersistentIndexedCache.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/BTreePersistentIndexedCache.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/Block.java b/test/random_access/src/main/java/seaweedfs/client/btree/Block.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/Block.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/Block.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/BlockPayload.java b/test/random_access/src/main/java/seaweedfs/client/btree/BlockPayload.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/BlockPayload.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/BlockPayload.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/BlockPointer.java b/test/random_access/src/main/java/seaweedfs/client/btree/BlockPointer.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/BlockPointer.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/BlockPointer.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/BlockStore.java b/test/random_access/src/main/java/seaweedfs/client/btree/BlockStore.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/BlockStore.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/BlockStore.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/BufferCaster.java b/test/random_access/src/main/java/seaweedfs/client/btree/BufferCaster.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/BufferCaster.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/BufferCaster.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/ByteInput.java b/test/random_access/src/main/java/seaweedfs/client/btree/ByteInput.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/ByteInput.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/ByteInput.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/ByteOutput.java b/test/random_access/src/main/java/seaweedfs/client/btree/ByteOutput.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/ByteOutput.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/ByteOutput.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/CachingBlockStore.java b/test/random_access/src/main/java/seaweedfs/client/btree/CachingBlockStore.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/CachingBlockStore.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/CachingBlockStore.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/CorruptedCacheException.java b/test/random_access/src/main/java/seaweedfs/client/btree/CorruptedCacheException.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/CorruptedCacheException.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/CorruptedCacheException.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/FileBackedBlockStore.java b/test/random_access/src/main/java/seaweedfs/client/btree/FileBackedBlockStore.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/FileBackedBlockStore.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/FileBackedBlockStore.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/FreeListBlockStore.java b/test/random_access/src/main/java/seaweedfs/client/btree/FreeListBlockStore.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/FreeListBlockStore.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/FreeListBlockStore.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/KeyHasher.java b/test/random_access/src/main/java/seaweedfs/client/btree/KeyHasher.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/KeyHasher.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/KeyHasher.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileInputStream.java b/test/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileInputStream.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileInputStream.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileInputStream.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileOutputStream.java b/test/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileOutputStream.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileOutputStream.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/RandomAccessFileOutputStream.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/StateCheckBlockStore.java b/test/random_access/src/main/java/seaweedfs/client/btree/StateCheckBlockStore.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/StateCheckBlockStore.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/StateCheckBlockStore.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/StreamByteBuffer.java b/test/random_access/src/main/java/seaweedfs/client/btree/StreamByteBuffer.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/StreamByteBuffer.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/StreamByteBuffer.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/UncheckedException.java b/test/random_access/src/main/java/seaweedfs/client/btree/UncheckedException.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/UncheckedException.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/UncheckedException.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/UncheckedIOException.java b/test/random_access/src/main/java/seaweedfs/client/btree/UncheckedIOException.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/UncheckedIOException.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/UncheckedIOException.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractDecoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractDecoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractDecoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractDecoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractEncoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractEncoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractEncoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractEncoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractSerializer.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractSerializer.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractSerializer.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/AbstractSerializer.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Cast.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/Cast.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Cast.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/Cast.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/ClassLoaderObjectInputStream.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/ClassLoaderObjectInputStream.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/ClassLoaderObjectInputStream.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/ClassLoaderObjectInputStream.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Decoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/Decoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Decoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/Decoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/DefaultSerializer.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/DefaultSerializer.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/DefaultSerializer.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/DefaultSerializer.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Encoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/Encoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Encoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/Encoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/FlushableEncoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/FlushableEncoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/FlushableEncoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/FlushableEncoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectReader.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectReader.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectReader.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectReader.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectWriter.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectWriter.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectWriter.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/ObjectWriter.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Serializer.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/Serializer.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/Serializer.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/Serializer.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/StatefulSerializer.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/StatefulSerializer.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/StatefulSerializer.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/StatefulSerializer.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedDecoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedDecoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedDecoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedDecoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedEncoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedEncoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedEncoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/KryoBackedEncoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedDecoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedDecoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedDecoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedDecoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedEncoder.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedEncoder.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedEncoder.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/StringDeduplicatingKryoBackedEncoder.java
diff --git a/other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/TypeSafeSerializer.java b/test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/TypeSafeSerializer.java
similarity index 100%
rename from other/java/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/TypeSafeSerializer.java
rename to test/random_access/src/main/java/seaweedfs/client/btree/serialize/kryo/TypeSafeSerializer.java
diff --git a/other/java/random_access/src/test/java/seaweedfs/client/btree/BTreePersistentIndexedCacheTest.java b/test/random_access/src/test/java/seaweedfs/client/btree/BTreePersistentIndexedCacheTest.java
similarity index 100%
rename from other/java/random_access/src/test/java/seaweedfs/client/btree/BTreePersistentIndexedCacheTest.java
rename to test/random_access/src/test/java/seaweedfs/client/btree/BTreePersistentIndexedCacheTest.java