Struct solana_program_test::ProgramTest
source · pub struct ProgramTest { /* private fields */ }
Implementations§
source§impl ProgramTest
impl ProgramTest
sourcepub 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.
sourcepub fn prefer_bpf(&mut self, prefer_bpf: bool)
pub fn prefer_bpf(&mut self, prefer_bpf: bool)
Override default BPF program selection
sourcepub fn set_compute_max_units(&mut self, compute_max_units: u64)
pub fn set_compute_max_units(&mut self, compute_max_units: u64)
Override the default maximum compute units
sourcepub fn set_bpf_compute_max_units(&mut self, bpf_compute_max_units: u64)
👎Deprecated since 1.8.0: please use set_compute_max_units
instead
pub fn set_bpf_compute_max_units(&mut self, bpf_compute_max_units: u64)
set_compute_max_units
insteadOverride the BPF compute budget
sourcepub fn use_bpf_jit(&mut self, use_bpf_jit: bool)
pub fn use_bpf_jit(&mut self, use_bpf_jit: bool)
Execute the BPF program with JIT if true, interpreted if false
sourcepub fn add_account(&mut self, address: Pubkey, account: Account)
pub fn add_account(&mut self, address: Pubkey, account: Account)
Add an account to the test environment
sourcepub 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
sourcepub 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
sourcepub 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.
sourcepub 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.
sourcepub fn deactivate_feature(&mut self, feature_id: Pubkey)
pub fn deactivate_feature(&mut self, feature_id: Pubkey)
Deactivate a runtime feature.
Note that all features are activated by default.
pub async fn start(self) -> (BanksClient, Keypair, Hash)
sourcepub async fn start_with_context(self) -> ProgramTestContext
pub async fn start_with_context(self) -> ProgramTestContext
Start the test client
Returns a BanksClient
interface into the test environment as well as a payer Keypair
with SAFE for sending transactions
Trait Implementations§
source§impl Default for ProgramTest
impl Default for ProgramTest
source§fn default() -> Self
fn default() -> Self
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