pub trait TransactionHelpers {
// Required methods
fn send_instruction(
&mut self,
instruction: Instruction,
signers: &[&Keypair],
) -> Result<TransactionResult, TransactionError>;
fn send_instructions(
&mut self,
instructions: &[Instruction],
signers: &[&Keypair],
) -> Result<TransactionResult, TransactionError>;
fn send_transaction_result(
&mut self,
transaction: Transaction,
) -> Result<TransactionResult, TransactionError>;
}Expand description
Transaction helper methods for LiteSVM
Required Methods§
Sourcefn send_instruction(
&mut self,
instruction: Instruction,
signers: &[&Keypair],
) -> Result<TransactionResult, TransactionError>
fn send_instruction( &mut self, instruction: Instruction, signers: &[&Keypair], ) -> Result<TransactionResult, TransactionError>
Send a single instruction and return a wrapped result
§Example
let result = svm.send_instruction(ix, &[&signer]).unwrap();
result.assert_success();Sourcefn send_instructions(
&mut self,
instructions: &[Instruction],
signers: &[&Keypair],
) -> Result<TransactionResult, TransactionError>
fn send_instructions( &mut self, instructions: &[Instruction], signers: &[&Keypair], ) -> Result<TransactionResult, TransactionError>
Send multiple instructions in a single transaction
§Example
let result = svm.send_instructions(&[ix1, ix2], &[&signer]).unwrap();
result.assert_success();Sourcefn send_transaction_result(
&mut self,
transaction: Transaction,
) -> Result<TransactionResult, TransactionError>
fn send_transaction_result( &mut self, transaction: Transaction, ) -> Result<TransactionResult, TransactionError>
Send a transaction and return a wrapped result
§Example
let tx = Transaction::new_signed_with_payer(
&[ix],
Some(&signer.pubkey()),
&[&signer],
svm.latest_blockhash(),
);
let result = svm.send_transaction_result(tx).unwrap();
result.assert_success();