### Question:
MVCCStoreImpl extends RocksdbKVStore<K, V> implements MVCCStore<K, V> { @Override public synchronized V get(K key) { try (RangeOp<K, V> op = opFactory.newRange( key, opFactory.optionFactory().newRangeOption() .limit(1) .build())) { try (RangeResult<K, V> result = range(op)) { if (Code.OK != result.code()) { throw new MVCCStoreException(result.code(), "Failed to retrieve key from store " + name + " : code = " + result.code()); } if (result.count() <= 0) { return null; } else { return retain(result.kvs().get(0).value()); } } } } MVCCStoreImpl(); @Override OpFactory<K, V> getOpFactory(); @Override void put(K key, V value); @Override synchronized V putIfAbsent(K key, V value); @Override synchronized KVMulti<K, V> multi(); @Override synchronized V delete(K key); @Override synchronized V get(K key); @Override synchronized KVIterator<K, V> range(K from, K to); @Override IncrementResult<K, V> increment(long revision, IncrementOp<K, V> op); @Override PutResult<K, V> put(long revision, PutOp<K, V> op); @Override DeleteResult<K, V> delete(long revision, DeleteOp<K, V> op); @Override synchronized TxnResult<K, V> txn(long revision, TxnOp<K, V> op); @Override RangeResult<K, V> range(RangeOp<K, V> rangeOp);  }### Answer:
@Test public void testGetNull() throws Exception { store.init(spec); assertNull(store.get("key")); }