@@ -10,6 +10,7 @@ use lightning::util::persist::{
10
10
use lightning:: util:: test_utils;
11
11
use lightning:: { check_added_monitors, check_closed_broadcast, check_closed_event} ;
12
12
13
+ use std:: collections:: HashSet ;
13
14
use std:: panic:: RefUnwindSafe ;
14
15
15
16
pub ( crate ) fn do_read_write_remove_list_persist < K : KVStore + RefUnwindSafe > ( kv_store : & K ) {
@@ -70,6 +71,7 @@ pub(crate) fn do_test_data_migration<S: MigratableKVStore, T: MigratableKVStore>
70
71
let num_primary_namespaces = 2 ;
71
72
let num_secondary_namespaces = 2 ;
72
73
let num_keys = 3 ;
74
+ let mut stored_keys = HashSet :: new ( ) ;
73
75
for i in 0 ..num_primary_namespaces {
74
76
let primary_namespace =
75
77
format ! ( "testspace{}" , KVSTORE_NAMESPACE_KEY_ALPHABET . chars( ) . nth( i) . unwrap( ) ) ;
@@ -79,6 +81,11 @@ pub(crate) fn do_test_data_migration<S: MigratableKVStore, T: MigratableKVStore>
79
81
for k in 0 ..num_keys {
80
82
let key =
81
83
format ! ( "testkey{}" , KVSTORE_NAMESPACE_KEY_ALPHABET . chars( ) . nth( k) . unwrap( ) ) ;
84
+ stored_keys. insert ( (
85
+ primary_namespace. clone ( ) ,
86
+ secondary_namespace. clone ( ) ,
87
+ key. clone ( ) ,
88
+ ) ) ;
82
89
source_store
83
90
. write ( & primary_namespace, & secondary_namespace, & key, & dummy_data)
84
91
. unwrap ( ) ;
@@ -92,9 +99,11 @@ pub(crate) fn do_test_data_migration<S: MigratableKVStore, T: MigratableKVStore>
92
99
migrate_kv_store_data ( source_store, target_store) . unwrap ( ) ;
93
100
94
101
assert_eq ! ( target_store. list_all_keys( ) . unwrap( ) . len( ) , total_num_entries) ;
95
- for ( p, s, k) in & all_keys {
96
- assert_eq ! ( target_store. read( p, s, k) . unwrap( ) , dummy_data) ;
102
+ for ( p, s, k) in all_keys {
103
+ assert_eq ! ( target_store. read( & p, & s, & k) . unwrap( ) , dummy_data) ;
104
+ assert ! ( stored_keys. remove( & ( p, s, k) ) ) ;
97
105
}
106
+ assert ! ( stored_keys. is_empty( ) ) ;
98
107
}
99
108
100
109
// Integration-test the given KVStore implementation. Test relaying a few payments and check that
0 commit comments