Skip to content

Commit

Permalink
Address comments
Browse files Browse the repository at this point in the history
  • Loading branch information
DOBEN committed Jul 18, 2024
1 parent ec111e7 commit 40d6d0c
Showing 1 changed file with 6 additions and 9 deletions.
15 changes: 6 additions & 9 deletions sponsoredTransactions/backend/src/handlers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -135,15 +135,16 @@ pub async fn submit_transaction(

log::debug!("Simulate transaction to check its validity.");

let dry_run = match contract_client
let dry_run_result = contract_client
.dry_run_update_with_reject_reason_info::<PermitParam, LogError>(
"permit",
Amount::zero(),
key.address,
&param,
)
.await?
{
.await?;

let dry_run = match dry_run_result {
InvokeContractOutcome::Success(dry_run) => Ok(dry_run),
InvokeContractOutcome::Failure(rejected_transaction) => {
match rejected_transaction.decoded_reason {
Expand Down Expand Up @@ -223,19 +224,15 @@ pub async fn handle_rejection(err: Rejection) -> Result<impl warp::Reply, Infall
Ok(mk_reply(message.into(), code))
} else if let Some(LogError::TransactionSimulationError(e)) = err.find() {
let code = StatusCode::INTERNAL_SERVER_ERROR;
let message = format!(
"Simulation of transaction rejected with reject reason: {:?}",
e
);
let message = format!("Simulation of transaction rejected with reject reason: {e:?}");
Ok(mk_reply(message, code))
} else if let Some(LogError::TransactionSimulationDecodedError(decoded_reason, reject_reason)) =
err.find()
{
let code = StatusCode::BAD_REQUEST;
let message = format!(
"Simulation of transaction rejected in smart contract with decoded reject reason: \
`{}` derived from: {:?}.",
decoded_reason, reject_reason
`{decoded_reason}` derived from: {reject_reason:?}."
);
Ok(mk_reply(message, code))
} else if let Some(LogError::SubmitSponsoredTransactionError(_e)) = err.find() {
Expand Down

0 comments on commit 40d6d0c

Please sign in to comment.