Skip to content

Commit d996272

Browse files
committed
fix CI/CD bugs
1 parent 2a2f844 commit d996272

5 files changed

Lines changed: 46 additions & 24 deletions

File tree

bin/payego/tests/bank_service_test.rs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use payego_primitives::models::BankRequest;
66
use payego_primitives::schema::{bank_accounts, banks, users};
77
use serde_json::json;
88
use serial_test::serial;
9-
use std::sync::Arc;
109
use uuid::Uuid;
1110
use wiremock::matchers::{method, path};
1211
use wiremock::{Mock, MockServer, ResponseTemplate};
@@ -51,9 +50,11 @@ async fn test_add_bank_account_success() {
5150
.await;
5251

5352
// 3. Setup AppState
54-
let mut base_state = (*common::create_test_app_state()).clone();
55-
base_state.config.paystack_details.paystack_api_url = base_url.clone();
56-
let state = Arc::new(base_state);
53+
let base_state = common::create_test_app_state();
54+
let mut config = base_state.config.clone();
55+
config.paystack_details.paystack_api_url = base_url.clone();
56+
let state = payego_core::AppState::new(base_state.db.clone(), config)
57+
.expect("Failed to create AppState");
5758

5859
let pool = &state.db;
5960
let conn = &mut pool.get().unwrap();
@@ -107,6 +108,10 @@ async fn test_add_bank_account_success() {
107108
// Removed assertion for paystack_recipient_code if it doesn't exist on BankAccount struct
108109

109110
// 6. Cleanup
111+
use payego_primitives::schema::audit_logs;
112+
diesel::delete(audit_logs::table.filter(audit_logs::user_id.eq(user_id)))
113+
.execute(conn)
114+
.unwrap();
110115
diesel::delete(bank_accounts::table.filter(bank_accounts::user_id.eq(user_id)))
111116
.execute(conn)
112117
.unwrap();

bin/payego/tests/common/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ pub fn cleanup_test_db(conn: &mut PgConnection) {
186186

187187
// Truncate all tables
188188
let _ = sql_query(
189-
"TRUNCATE users, wallets, transactions, bank_accounts, blacklisted_tokens CASCADE",
189+
"TRUNCATE users, wallets, transactions, bank_accounts, blacklisted_tokens, audit_logs CASCADE",
190190
)
191191
.execute(conn);
192192
}

bin/payego/tests/conversion_service_test.rs

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use payego_primitives::models::ConvertRequest;
66
use payego_primitives::schema::{users, wallets};
77
use serde_json::json;
88
use serial_test::serial;
9-
use std::sync::Arc;
109
use uuid::Uuid;
1110
use wiremock::matchers::{method, path};
1211
use wiremock::{Mock, MockServer, ResponseTemplate};
@@ -31,9 +30,11 @@ async fn test_convert_currency_success() {
3130
.await;
3231

3332
// 2. Setup AppState
34-
let mut base_state = (*common::create_test_app_state()).clone();
35-
base_state.config.exchange_api_url = exchange_api_url;
36-
let state = Arc::new(base_state);
33+
let base_state = common::create_test_app_state();
34+
let mut config = base_state.config.clone();
35+
config.exchange_api_url = exchange_api_url.clone();
36+
let state = payego_core::AppState::new(base_state.db.clone(), config)
37+
.expect("Failed to create AppState");
3738

3839
let pool = &state.db;
3940
let conn = &mut pool.get().unwrap();
@@ -110,6 +111,10 @@ async fn test_convert_currency_success() {
110111
assert_eq!(wallet_ngn.balance, 1485000);
111112

112113
// Cleanup
114+
use payego_primitives::schema::audit_logs;
115+
diesel::delete(audit_logs::table.filter(audit_logs::user_id.eq(user_id)))
116+
.execute(conn)
117+
.unwrap();
113118
diesel::delete(wallets::table.filter(wallets::user_id.eq(user_id)))
114119
.execute(conn)
115120
.unwrap();
@@ -136,9 +141,11 @@ async fn test_convert_currency_insufficient_balance() {
136141
.await;
137142

138143
// 2. Setup AppState
139-
let mut base_state = (*common::create_test_app_state()).clone();
140-
base_state.config.exchange_api_url = exchange_api_url;
141-
let state = Arc::new(base_state);
144+
let base_state = common::create_test_app_state();
145+
let mut config = base_state.config.clone();
146+
config.exchange_api_url = exchange_api_url.clone();
147+
let state = payego_core::AppState::new(base_state.db.clone(), config)
148+
.expect("Failed to create AppState");
142149

143150
let pool = &state.db;
144151
let conn = &mut pool.get().unwrap();

bin/payego/tests/payment_service_test.rs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ use payego_primitives::models::TopUpRequest;
44
use payego_primitives::schema::{transactions, users};
55
use serde_json::json;
66
use serial_test::serial;
7-
use std::sync::Arc;
87
use uuid::Uuid;
98
use wiremock::matchers::{method, path};
109
use wiremock::{Mock, MockServer, ResponseTemplate};
@@ -46,9 +45,11 @@ async fn test_top_up_paypal_init_success() {
4645
.await;
4746

4847
// 3. Setup AppState
49-
let mut base_state = (*common::create_test_app_state()).clone();
50-
base_state.config.paypal_details.paypal_api_url = base_url.clone();
51-
let state = Arc::new(base_state);
48+
let base_state = common::create_test_app_state();
49+
let mut config = base_state.config.clone();
50+
config.paypal_details.paypal_api_url = base_url.clone();
51+
let state = payego_core::AppState::new(base_state.db.clone(), config)
52+
.expect("Failed to create AppState");
5253

5354
let pool = &state.db;
5455
let conn = &mut pool.get().unwrap();
@@ -103,7 +104,7 @@ async fn test_top_up_paypal_init_success() {
103104
.first::<Transaction>(conn)
104105
.unwrap();
105106

106-
assert_eq!(tx.amount, 100000); // 1000 * 100
107+
assert_eq!(tx.amount, 1000); // 1000 cents
107108
assert_eq!(
108109
tx.provider,
109110
Some(payego_primitives::models::entities::enum_types::PaymentProvider::Paypal)
@@ -114,6 +115,10 @@ async fn test_top_up_paypal_init_success() {
114115
);
115116

116117
// 6. Cleanup
118+
use payego_primitives::schema::audit_logs;
119+
diesel::delete(audit_logs::table.filter(audit_logs::user_id.eq(user_id)))
120+
.execute(conn)
121+
.unwrap();
117122
diesel::delete(transactions::table.filter(transactions::user_id.eq(user_id)))
118123
.execute(conn)
119124
.unwrap();

bin/payego/tests/withdrawal_service_test.rs

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use payego_primitives::models::WithdrawRequest;
66
use payego_primitives::schema::{bank_accounts, banks, transactions, users, wallets};
77
use serde_json::json;
88
use serial_test::serial;
9-
use std::sync::Arc;
109
use uuid::Uuid;
1110
use wiremock::matchers::{method, path};
1211
use 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

Comments
 (0)