Skip to content

Commit 5f8defc

Browse files
committed
fix: fixed replace execute_replace_payment_limits integration tests.
1 parent ee5dff7 commit 5f8defc

1 file changed

Lines changed: 82 additions & 54 deletions

File tree

  • parachain/runtime/runtime-tests/src/parachain

parachain/runtime/runtime-tests/src/parachain/replace.rs

Lines changed: 82 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -438,59 +438,87 @@ mod expiry_test {
438438
}
439439
}
440440

441-
// mod execute_replace_payment_limits {
442-
// use super::{assert_eq, *};
443-
//
444-
// #[test]
445-
// fn integration_test_execute_replace_with_exact_amount_succeeds() {
446-
// test_with(|old_vault_id, new_vault_id| {
447-
// let (replace_id, replace) = accept_replace(
448-
// &old_vault_id,
449-
// &new_vault_id,
450-
// old_vault_id.wrapped(1000000),
451-
// DEFAULT_GRIEFING_COLLATERAL,
452-
// Default::default(),
453-
// )
454-
// .unwrap();
455-
// assert_ok!(execute_replace_with_amount(replace_id, replace.amount()));
456-
// });
457-
// }
458-
// #[test]
459-
// fn integration_test_execute_replace_with_overpayment_fails() {
460-
// test_with(|old_vault_id, new_vault_id| {
461-
// let (replace_id, replace) = accept_replace(
462-
// &old_vault_id,
463-
// &new_vault_id,
464-
// old_vault_id.wrapped(1000000),
465-
// DEFAULT_GRIEFING_COLLATERAL,
466-
// Default::default(),
467-
// )
468-
// .unwrap();
469-
// assert_err!(
470-
// execute_replace_with_amount(replace_id, replace.amount().with_amount(|x| x + 1)),
471-
// BTCRelayError::InvalidPaymentAmount
472-
// );
473-
// });
474-
// }
475-
// #[test]
476-
// fn integration_test_execute_replace_with_underpayment_fails() {
477-
// test_with(|old_vault_id, new_vault_id| {
478-
// let (replace_id, replace) = accept_replace(
479-
// &old_vault_id,
480-
// &new_vault_id,
481-
// old_vault_id.wrapped(1000000),
482-
// DEFAULT_GRIEFING_COLLATERAL,
483-
// Default::default(),
484-
// )
485-
// .unwrap();
486-
// assert_err!(
487-
// execute_replace_with_amount(replace_id, replace.amount().with_amount(|x| x - 1)),
488-
// BTCRelayError::InvalidPaymentAmount
489-
// );
490-
// });
491-
// }
492-
// }
493-
//
441+
mod execute_replace_payment_limits {
442+
use super::{assert_eq, *};
443+
use crate::utils::redeem_utils::assert_redeem_request_event;
444+
445+
#[test]
446+
fn integration_test_execute_replace_with_exact_amount_succeeds() {
447+
test_with(|old_vault_id, new_vault_id| {
448+
let accept_amount = old_vault_id.wrapped(1000000);
449+
450+
assert_ok!(RuntimeCall::Redeem(RedeemCall::request_replace {
451+
currency_pair: old_vault_id.currencies.clone(),
452+
amount: accept_amount.amount(),
453+
new_vault_id: new_vault_id.clone(),
454+
griefing_currency: DEFAULT_GRIEFING_CURRENCY
455+
})
456+
.dispatch(origin_of(old_vault_id.account_id.clone())));
457+
let redeem_id = assert_redeem_request_event();
458+
459+
let replace = RedeemPallet::get_open_redeem_request_from_id(&redeem_id).unwrap();
460+
461+
assert_ok!(execute_replace_with_amount(
462+
redeem_id,
463+
Amount::new(replace.amount_btc, replace.vault.currencies.wrapped)
464+
));
465+
});
466+
}
467+
468+
#[test]
469+
fn integration_test_execute_replace_with_overpayment_fails() {
470+
test_with(|old_vault_id, new_vault_id| {
471+
let accept_amount = old_vault_id.wrapped(1000000);
472+
473+
assert_ok!(RuntimeCall::Redeem(RedeemCall::request_replace {
474+
currency_pair: old_vault_id.currencies.clone(),
475+
amount: accept_amount.amount(),
476+
new_vault_id: new_vault_id.clone(),
477+
griefing_currency: DEFAULT_GRIEFING_CURRENCY
478+
})
479+
.dispatch(origin_of(old_vault_id.account_id.clone())));
480+
481+
let redeem_id = assert_redeem_request_event();
482+
483+
let replace = RedeemPallet::get_open_redeem_request_from_id(&redeem_id).unwrap();
484+
485+
assert_err!(
486+
execute_replace_with_amount(
487+
redeem_id,
488+
Amount::new(replace.amount_btc, replace.vault.currencies.wrapped).with_amount(|x| x + 1)
489+
),
490+
BTCRelayError::InvalidPaymentAmount
491+
);
492+
});
493+
}
494+
#[test]
495+
fn integration_test_execute_replace_with_underpayment_fails() {
496+
test_with(|old_vault_id, new_vault_id| {
497+
let accept_amount = old_vault_id.wrapped(1000000);
498+
499+
assert_ok!(RuntimeCall::Redeem(RedeemCall::request_replace {
500+
currency_pair: old_vault_id.currencies.clone(),
501+
amount: accept_amount.amount(),
502+
new_vault_id: new_vault_id.clone(),
503+
griefing_currency: DEFAULT_GRIEFING_CURRENCY
504+
})
505+
.dispatch(origin_of(old_vault_id.account_id.clone())));
506+
507+
let redeem_id = assert_redeem_request_event();
508+
509+
let replace = RedeemPallet::get_open_redeem_request_from_id(&redeem_id).unwrap();
510+
511+
assert_err!(
512+
execute_replace_with_amount(
513+
redeem_id,
514+
Amount::new(replace.amount_btc, replace.vault.currencies.wrapped).with_amount(|x| x - 1)
515+
),
516+
BTCRelayError::InvalidPaymentAmount
517+
);
518+
});
519+
}
520+
}
521+
494522
// #[test]
495523
// fn integration_test_replace_cancel_replace() {
496524
// test_with(|old_vault_id, new_vault_id| {
@@ -506,7 +534,7 @@ mod expiry_test {
506534
// );
507535
// });
508536
// }
509-
//
537+
510538
// liquidation tests
511539

512540
fn execute_replace(redeem_id: H256) -> DispatchResultWithPostInfo {

0 commit comments

Comments
 (0)