]> git.proxmox.com Git - ceph.git/blob - ceph/src/rocksdb/java/src/test/java/org/rocksdb/MutableColumnFamilyOptionsTest.java
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / rocksdb / java / src / test / java / org / rocksdb / MutableColumnFamilyOptionsTest.java
1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
2 // This source code is licensed under the BSD-style license found in the
3 // LICENSE file in the root directory of this source tree. An additional grant
4 // of patent rights can be found in the PATENTS file in the same directory.
5 package org.rocksdb;
6
7 import org.junit.Test;
8 import org.rocksdb.MutableColumnFamilyOptions.MutableColumnFamilyOptionsBuilder;
9
10 import java.util.NoSuchElementException;
11
12 import static org.assertj.core.api.Assertions.assertThat;
13
14 public class MutableColumnFamilyOptionsTest {
15
16 @Test
17 public void builder() {
18 final MutableColumnFamilyOptionsBuilder builder =
19 MutableColumnFamilyOptions.builder();
20 builder
21 .setWriteBufferSize(10)
22 .setInplaceUpdateNumLocks(5)
23 .setDisableAutoCompactions(true)
24 .setParanoidFileChecks(true);
25
26 assertThat(builder.writeBufferSize()).isEqualTo(10);
27 assertThat(builder.inplaceUpdateNumLocks()).isEqualTo(5);
28 assertThat(builder.disableAutoCompactions()).isEqualTo(true);
29 assertThat(builder.paranoidFileChecks()).isEqualTo(true);
30 }
31
32 @Test(expected = NoSuchElementException.class)
33 public void builder_getWhenNotSet() {
34 final MutableColumnFamilyOptionsBuilder builder =
35 MutableColumnFamilyOptions.builder();
36
37 builder.writeBufferSize();
38 }
39
40 @Test
41 public void builder_build() {
42 final MutableColumnFamilyOptions options = MutableColumnFamilyOptions
43 .builder()
44 .setWriteBufferSize(10)
45 .setParanoidFileChecks(true)
46 .build();
47
48 assertThat(options.getKeys().length).isEqualTo(2);
49 assertThat(options.getValues().length).isEqualTo(2);
50 assertThat(options.getKeys()[0])
51 .isEqualTo(
52 MutableColumnFamilyOptions.MemtableOption.write_buffer_size.name());
53 assertThat(options.getValues()[0]).isEqualTo("10");
54 assertThat(options.getKeys()[1])
55 .isEqualTo(
56 MutableColumnFamilyOptions.MiscOption.paranoid_file_checks.name());
57 assertThat(options.getValues()[1]).isEqualTo("true");
58 }
59
60 @Test
61 public void mutableColumnFamilyOptions_toString() {
62 final String str = MutableColumnFamilyOptions
63 .builder()
64 .setWriteBufferSize(10)
65 .setInplaceUpdateNumLocks(5)
66 .setDisableAutoCompactions(true)
67 .setParanoidFileChecks(true)
68 .build()
69 .toString();
70
71 assertThat(str).isEqualTo("write_buffer_size=10;inplace_update_num_locks=5;"
72 + "disable_auto_compactions=true;paranoid_file_checks=true");
73 }
74
75 @Test
76 public void mutableColumnFamilyOptions_parse() {
77 final String str = "write_buffer_size=10;inplace_update_num_locks=5;"
78 + "disable_auto_compactions=true;paranoid_file_checks=true";
79
80 final MutableColumnFamilyOptionsBuilder builder =
81 MutableColumnFamilyOptions.parse(str);
82
83 assertThat(builder.writeBufferSize()).isEqualTo(10);
84 assertThat(builder.inplaceUpdateNumLocks()).isEqualTo(5);
85 assertThat(builder.disableAutoCompactions()).isEqualTo(true);
86 assertThat(builder.paranoidFileChecks()).isEqualTo(true);
87 }
88 }