File tree Expand file tree Collapse file tree 2 files changed +33
-0
lines changed Expand file tree Collapse file tree 2 files changed +33
-0
lines changed Original file line number Diff line number Diff line change 10
10
11
11
#[ cfg( ldk_bench) ] extern crate criterion;
12
12
13
+ #[ cfg( test) ]
14
+ mod test_utils;
15
+
13
16
mod util;
14
17
15
18
extern crate lightning;
Original file line number Diff line number Diff line change
1
+ use lightning:: util:: persist:: KVStore ;
2
+
3
+ pub ( crate ) fn do_read_write_remove_list_persist < K : KVStore > ( kv_store : & K ) {
4
+ use lightning:: util:: ser:: Readable ;
5
+
6
+ let data = [ 42u8 ; 32 ] ;
7
+
8
+ let namespace = "testspace" ;
9
+ let key = "testkey" ;
10
+
11
+ // Test the basic KVStore operations.
12
+ kv_store. write ( namespace, key, & data) . unwrap ( ) ;
13
+
14
+ // Test empty namespace is allowed, but not empty key.
15
+ kv_store. write ( "" , key, & data) . unwrap ( ) ;
16
+ assert ! ( kv_store. write( namespace, "" , & data) . is_err( ) ) ;
17
+
18
+ let listed_keys = kv_store. list ( namespace) . unwrap ( ) ;
19
+ assert_eq ! ( listed_keys. len( ) , 1 ) ;
20
+ assert_eq ! ( listed_keys[ 0 ] , key) ;
21
+
22
+ let mut reader = kv_store. read ( namespace, key) . unwrap ( ) ;
23
+ let read_data: [ u8 ; 32 ] = Readable :: read ( & mut reader) . unwrap ( ) ;
24
+ assert_eq ! ( data, read_data) ;
25
+
26
+ kv_store. remove ( namespace, key) . unwrap ( ) ;
27
+
28
+ let listed_keys = kv_store. list ( namespace) . unwrap ( ) ;
29
+ assert_eq ! ( listed_keys. len( ) , 0 ) ;
30
+ }
You can’t perform that action at this time.
0 commit comments