1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. 2 // This source code is licensed under both the GPLv2 (found in the 3 // COPYING file in the root directory) and Apache 2.0 License 4 // (found in the LICENSE.Apache file in the root directory). 5 6 package org.rocksdb; 7 8 import org.junit.ClassRule; 9 import org.junit.Test; 10 11 import static org.assertj.core.api.Assertions.assertThat; 12 13 public class CompactionOptionsTest { 14 15 @ClassRule 16 public static final RocksNativeLibraryResource ROCKS_NATIVE_LIBRARY_RESOURCE = 17 new RocksNativeLibraryResource(); 18 19 @Test 20 public void compression() { 21 try (final CompactionOptions compactionOptions = new CompactionOptions()) { 22 assertThat(compactionOptions.compression()) 23 .isEqualTo(CompressionType.SNAPPY_COMPRESSION); 24 compactionOptions.setCompression(CompressionType.NO_COMPRESSION); 25 assertThat(compactionOptions.compression()) 26 .isEqualTo(CompressionType.NO_COMPRESSION); 27 } 28 } 29 iso_week_from_yof(year: i32, of: Of) -> IsoWeek30 @Test 31 public void outputFileSizeLimit() { 32 final long mb250 = 1024 * 1024 * 250; 33 try (final CompactionOptions compactionOptions = new CompactionOptions()) { 34 assertThat(compactionOptions.outputFileSizeLimit()) 35 .isEqualTo(-1); 36 compactionOptions.setOutputFileSizeLimit(mb250); 37 assertThat(compactionOptions.outputFileSizeLimit()) 38 .isEqualTo(mb250); 39 } 40 } 41 42 @Test 43 public void maxSubcompactions() { 44 try (final CompactionOptions compactionOptions = new CompactionOptions()) { 45 assertThat(compactionOptions.maxSubcompactions()) 46 .isEqualTo(0); 47 compactionOptions.setMaxSubcompactions(9); 48 assertThat(compactionOptions.maxSubcompactions()) 49 .isEqualTo(9); 50 } 51 } 52 } 53