Struct solana_program_test::ProgramTest
source · [−]pub struct ProgramTest { /* private fields */ }
Implementations
pub fn new(
program_name: &str,
program_id: Pubkey,
process_instruction: Option<ProcessInstructionWithContext>
) -> Self
pub fn new(
program_name: &str,
program_id: Pubkey,
process_instruction: Option<ProcessInstructionWithContext>
) -> Self
Create a ProgramTest
.
This is a wrapper around default
and add_program
. See their documentation for more
details.
Override default BPF program selection
Override the BPF compute budget
Execute the BPF program with JIT if true, interpreted if false
Add an account to the test environment
pub fn add_account_with_file_data(
&mut self,
address: Pubkey,
lamports: u64,
owner: Pubkey,
filename: &str
)
pub fn add_account_with_file_data(
&mut self,
address: Pubkey,
lamports: u64,
owner: Pubkey,
filename: &str
)
Add an account to the test environment with the account data in the provided filename
pub fn add_account_with_base64_data(
&mut self,
address: Pubkey,
lamports: u64,
owner: Pubkey,
data_base64: &str
)
pub fn add_account_with_base64_data(
&mut self,
address: Pubkey,
lamports: u64,
owner: Pubkey,
data_base64: &str
)
Add an account to the test environment with the account data in the provided as a base 64 string
pub fn add_program(
&mut self,
program_name: &str,
program_id: Pubkey,
process_instruction: Option<ProcessInstructionWithContext>
)
pub fn add_program(
&mut self,
program_name: &str,
program_id: Pubkey,
process_instruction: Option<ProcessInstructionWithContext>
)
Add a BPF program to the test environment.
program_name
will also be used to locate the BPF shared object in the current or fixtures
directory.
If process_instruction
is provided, the natively built-program may be used instead of the
BPF shared object depending on the BPF_OUT_DIR
environment variable.
pub fn add_builtin_program(
&mut self,
program_name: &str,
program_id: Pubkey,
process_instruction: ProcessInstructionWithContext
)
pub fn add_builtin_program(
&mut self,
program_name: &str,
program_id: Pubkey,
process_instruction: ProcessInstructionWithContext
)
Add a builtin program to the test environment.
Note that builtin programs are responsible for their own stable_log
output.
Start the test client
Returns a BanksClient
interface into the test environment as well as a payer Keypair
with SOL for sending transactions
Trait Implementations
Initialize a new ProgramTest
If the BPF_OUT_DIR
environment variable is defined, BPF programs will be preferred over
over a native instruction processor. The ProgramTest::prefer_bpf()
method may be
used to override this preference at runtime. cargo test-bpf
will set BPF_OUT_DIR
automatically.
BPF program shared objects and account data files are searched for in
- the value of the
BPF_OUT_DIR
environment variable - the
tests/fixtures
sub-directory - the current working directory
Auto Trait Implementations
impl RefUnwindSafe for ProgramTest
impl Send for ProgramTest
impl Sync for ProgramTest
impl Unpin for ProgramTest
impl UnwindSafe for ProgramTest
Blanket Implementations
pub default fn example() -> T
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more