55mod receipt_storage_adapter_unit_test {
66 use rand:: seq:: SliceRandom ;
77 use rand:: thread_rng;
8- use std:: collections:: { HashMap , HashSet } ;
8+ use std:: collections:: HashMap ;
99 use std:: str:: FromStr ;
1010 use std:: sync:: { Arc , RwLock } ;
1111
1212 use crate :: checks:: TimestampCheck ;
1313 use crate :: {
1414 adapters:: { executor_mock:: ExecutorMock , receipt_storage_adapter:: ReceiptStore } ,
15- checks:: { mock:: get_full_list_of_checks, ReceiptCheck } ,
1615 eip_712_signed_message:: EIP712SignedMessage ,
1716 tap_eip712_domain,
1817 tap_receipt:: { Receipt , ReceivedReceipt } ,
@@ -28,45 +27,24 @@ mod receipt_storage_adapter_unit_test {
2827 tap_eip712_domain ( 1 , Address :: from ( [ 0x11u8 ; 20 ] ) )
2928 }
3029
31- struct ExecutorFixture {
32- executor : ExecutorMock ,
33- checks : Vec < ReceiptCheck > ,
34- }
35-
3630 #[ fixture]
37- fn executor_mock ( domain_separator : Eip712Domain ) -> ExecutorFixture {
31+ fn executor ( ) -> ExecutorMock {
3832 let escrow_storage = Arc :: new ( RwLock :: new ( HashMap :: new ( ) ) ) ;
3933 let rav_storage = Arc :: new ( RwLock :: new ( None ) ) ;
40- let query_appraisals = Arc :: new ( RwLock :: new ( HashMap :: new ( ) ) ) ;
4134 let receipt_storage = Arc :: new ( RwLock :: new ( HashMap :: new ( ) ) ) ;
4235
4336 let timestamp_check = Arc :: new ( TimestampCheck :: new ( 0 ) ) ;
44- let executor = ExecutorMock :: new (
37+ ExecutorMock :: new (
4538 rav_storage,
4639 receipt_storage. clone ( ) ,
4740 escrow_storage. clone ( ) ,
4841 timestamp_check. clone ( ) ,
49- ) ;
50- let mut checks = get_full_list_of_checks (
51- domain_separator,
52- HashSet :: new ( ) ,
53- Arc :: new ( RwLock :: new ( HashSet :: new ( ) ) ) ,
54- receipt_storage,
55- query_appraisals. clone ( ) ,
56- ) ;
57- checks. push ( timestamp_check) ;
58-
59- ExecutorFixture { executor, checks }
42+ )
6043 }
6144
6245 #[ rstest]
6346 #[ tokio:: test]
64- async fn receipt_adapter_test ( domain_separator : Eip712Domain , executor_mock : ExecutorFixture ) {
65- let ExecutorFixture {
66- mut executor,
67- checks,
68- } = executor_mock;
69-
47+ async fn receipt_adapter_test ( domain_separator : Eip712Domain , mut executor : ExecutorMock ) {
7048 let wallet: LocalWallet = MnemonicBuilder :: < English > :: default ( )
7149 . phrase ( "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about" )
7250 . build ( )
@@ -76,7 +54,6 @@ mod receipt_storage_adapter_unit_test {
7654 Address :: from_str ( "0xabababababababababababababababababababab" ) . unwrap ( ) ;
7755
7856 // Create receipts
79- let query_id = 10u64 ;
8057 let value = 100u128 ;
8158 let received_receipt = ReceivedReceipt :: new (
8259 EIP712SignedMessage :: new (
@@ -85,8 +62,6 @@ mod receipt_storage_adapter_unit_test {
8562 & wallet,
8663 )
8764 . unwrap ( ) ,
88- query_id,
89- & checks,
9065 ) ;
9166
9267 let receipt_store_result = executor. store_receipt ( received_receipt) . await ;
@@ -114,13 +89,8 @@ mod receipt_storage_adapter_unit_test {
11489 #[ tokio:: test]
11590 async fn multi_receipt_adapter_test (
11691 domain_separator : Eip712Domain ,
117- executor_mock : ExecutorFixture ,
92+ mut executor : ExecutorMock ,
11893 ) {
119- let ExecutorFixture {
120- mut executor,
121- checks,
122- } = executor_mock;
123-
12494 let wallet: LocalWallet = MnemonicBuilder :: < English > :: default ( )
12595 . phrase ( "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about" )
12696 . build ( )
@@ -131,28 +101,21 @@ mod receipt_storage_adapter_unit_test {
131101
132102 // Create receipts
133103 let mut received_receipts = Vec :: new ( ) ;
134- for ( query_id , value) in ( 50 ..60 ) . enumerate ( ) {
104+ for value in 50 ..60 {
135105 received_receipts. push ( ReceivedReceipt :: new (
136106 EIP712SignedMessage :: new (
137107 & domain_separator,
138108 Receipt :: new ( allocation_id, value) . unwrap ( ) ,
139109 & wallet,
140110 )
141111 . unwrap ( ) ,
142- query_id as u64 ,
143- & checks,
144112 ) ) ;
145113 }
146114 let mut receipt_ids = Vec :: new ( ) ;
147115 let mut receipt_timestamps = Vec :: new ( ) ;
148116 for received_receipt in received_receipts {
149- receipt_ids. push (
150- executor
151- . store_receipt ( received_receipt. clone ( ) )
152- . await
153- . unwrap ( ) ,
154- ) ;
155- receipt_timestamps. push ( received_receipt. signed_receipt ( ) . message . timestamp_ns )
117+ receipt_timestamps. push ( received_receipt. signed_receipt ( ) . message . timestamp_ns ) ;
118+ receipt_ids. push ( executor. store_receipt ( received_receipt) . await . unwrap ( ) ) ;
156119 }
157120
158121 // Retreive receipts with timestamp
@@ -205,7 +168,6 @@ mod receipt_storage_adapter_unit_test {
205168 #[ test]
206169 fn safe_truncate_receipts_test (
207170 domain_separator : Eip712Domain ,
208- executor_mock : ExecutorFixture ,
209171 #[ case] input : Vec < u64 > ,
210172 #[ case] limit : u64 ,
211173 #[ case] expected : Vec < u64 > ,
@@ -214,7 +176,6 @@ mod receipt_storage_adapter_unit_test {
214176 . phrase ( "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about" )
215177 . build ( )
216178 . unwrap ( ) ;
217- let checks = executor_mock. checks ;
218179
219180 // Vec of (id, receipt)
220181 let mut receipts_orig: Vec < ( u64 , ReceivedReceipt ) > = Vec :: new ( ) ;
@@ -235,13 +196,11 @@ mod receipt_storage_adapter_unit_test {
235196 & wallet,
236197 )
237198 . unwrap ( ) ,
238- i as u64 , // Will use that to check the IDs
239- & checks,
240199 ) ,
241200 ) ) ;
242201 }
243202
244- let mut receipts_truncated = receipts_orig. clone ( ) ;
203+ let mut receipts_truncated = receipts_orig;
245204
246205 // shuffle the input receipts
247206 receipts_truncated. shuffle ( & mut thread_rng ( ) ) ;
@@ -259,9 +218,6 @@ mod receipt_storage_adapter_unit_test {
259218 elem_trun. 1 . signed_receipt( ) . message. timestamp_ns,
260219 * expected_timestamp
261220 ) ;
262-
263- // Check that the IDs are fine
264- assert_eq ! ( elem_trun. 0 , elem_trun. 1 . query_id( ) ) ;
265221 }
266222 }
267223}
0 commit comments