Add method to inspect account data in tests
Change-Id: I23ee5b351bcd1cb6fb998384ff87f7bfaf61b885
This commit is contained in:
parent
6aa5788354
commit
fd7b53a2a5
|
@ -1,6 +1,9 @@
|
||||||
#![allow(warnings)]
|
#![allow(warnings)]
|
||||||
|
|
||||||
use borsh::BorshSerialize;
|
use borsh::{
|
||||||
|
BorshDeserialize,
|
||||||
|
BorshSerialize,
|
||||||
|
};
|
||||||
use byteorder::{
|
use byteorder::{
|
||||||
BigEndian,
|
BigEndian,
|
||||||
WriteBytesExt,
|
WriteBytesExt,
|
||||||
|
@ -63,6 +66,8 @@ use bridge::{
|
||||||
GuardianSet,
|
GuardianSet,
|
||||||
GuardianSetDerivationData,
|
GuardianSetDerivationData,
|
||||||
MessageDerivationData,
|
MessageDerivationData,
|
||||||
|
Sequence,
|
||||||
|
SequenceDerivationData,
|
||||||
SignatureSet,
|
SignatureSet,
|
||||||
SignatureSetDerivationData,
|
SignatureSetDerivationData,
|
||||||
},
|
},
|
||||||
|
@ -127,6 +132,17 @@ mod helpers {
|
||||||
(payer, rpc, program)
|
(payer, rpc, program)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Fetch account data, the loop is there to re-attempt until data is available.
|
||||||
|
pub fn get_account_data<T: BorshDeserialize>(client: &RpcClient, account: &Pubkey) -> Option<T> {
|
||||||
|
for _ in 0..5 {
|
||||||
|
if let Ok(account) = client.get_account(account) {
|
||||||
|
return Some(T::try_from_slice(&account.data).unwrap());
|
||||||
|
}
|
||||||
|
std::thread::sleep(std::time::Duration::from_millis(2000));
|
||||||
|
}
|
||||||
|
None
|
||||||
|
}
|
||||||
|
|
||||||
/// Generate `count` secp256k1 private keys, along with their ethereum-styled public key
|
/// Generate `count` secp256k1 private keys, along with their ethereum-styled public key
|
||||||
/// encoding: 0x0123456789ABCDEF01234
|
/// encoding: 0x0123456789ABCDEF01234
|
||||||
pub fn generate_keys(count: u8) -> (Vec<[u8; 20]>, Vec<SecretKey>) {
|
pub fn generate_keys(count: u8) -> (Vec<[u8; 20]>, Vec<SecretKey>) {
|
||||||
|
|
Loading…
Reference in New Issue