@@ -6,7 +6,6 @@ use payego_primitives::models::WithdrawRequest;
66use payego_primitives:: schema:: { bank_accounts, banks, transactions, users, wallets} ;
77use serde_json:: json;
88use serial_test:: serial;
9- use std:: sync:: Arc ;
109use uuid:: Uuid ;
1110use wiremock:: matchers:: { method, path} ;
1211use wiremock:: { Mock , MockServer , ResponseTemplate } ;
@@ -65,10 +64,12 @@ async fn test_withdrawal_success() {
6564 . await ;
6665
6766 // 2. Setup AppState
68- let mut base_state = ( * common:: create_test_app_state ( ) ) . clone ( ) ;
69- base_state. config . exchange_api_url = base_url. clone ( ) ;
70- base_state. config . paystack_details . paystack_api_url = base_url. clone ( ) ;
71- let state = Arc :: new ( base_state) ;
67+ let base_state = common:: create_test_app_state ( ) ;
68+ let mut config = base_state. config . clone ( ) ;
69+ config. exchange_api_url = base_url. clone ( ) ;
70+ config. paystack_details . paystack_api_url = base_url. clone ( ) ;
71+ let state = payego_core:: AppState :: new ( base_state. db . clone ( ) , config)
72+ . expect ( "Failed to create AppState" ) ;
7273
7374 let pool = & state. db ;
7475 let conn = & mut pool. get ( ) . unwrap ( ) ;
@@ -131,7 +132,7 @@ async fn test_withdrawal_success() {
131132 }
132133
133134 let req = WithdrawRequest {
134- amount : 10 ,
135+ amount : 1000 ,
135136 currency : CurrencyCode :: USD ,
136137 reference : Uuid :: new_v4 ( ) ,
137138 idempotency_key : format ! ( "withdraw_key_{}" , Uuid :: new_v4( ) ) ,
@@ -154,6 +155,10 @@ async fn test_withdrawal_success() {
154155 assert_eq ! ( wallet. balance, 1000 ) ;
155156
156157 // 6. Cleanup
158+ use payego_primitives:: schema:: audit_logs;
159+ diesel:: delete ( audit_logs:: table. filter ( audit_logs:: user_id. eq ( user_id) ) )
160+ . execute ( conn)
161+ . unwrap ( ) ;
157162 diesel:: delete ( bank_accounts:: table. filter ( bank_accounts:: user_id. eq ( user_id) ) )
158163 . execute ( conn)
159164 . unwrap ( ) ;
@@ -202,7 +207,7 @@ async fn test_withdrawal_insufficient_balance() {
202207 . unwrap ( ) ;
203208
204209 let req = WithdrawRequest {
205- amount : 10 ,
210+ amount : 1000 ,
206211 currency : CurrencyCode :: USD ,
207212 reference : Uuid :: new_v4 ( ) ,
208213 idempotency_key : "any" . to_string ( ) ,
0 commit comments