v0.2.9-pre.008
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
// file: crates/ksp-onchain-transport-lib/tests/public_api.rs
|
||||
// version: 44
|
||||
// version: 45
|
||||
|
||||
//! Integration tests for the public `ksp-onchain-transport-lib` consumer contract.
|
||||
|
||||
@@ -925,3 +925,47 @@ fn public_v0_2_9_pre_007_yellowstone_transactions_contract_is_available_from_cra
|
||||
let _return_data = std::any::type_name::<ksp_onchain_transport_lib::YellowstoneReturnData>();
|
||||
let _reward = std::any::type_name::<ksp_onchain_transport_lib::YellowstoneReward>();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn public_v0_2_9_pre_008_yellowstone_blocks_contract_is_available_from_crate_root() {
|
||||
let account = ksp_core_lib::Pubkey::new_from_array([71_u8; 32]);
|
||||
let mut block = ksp_onchain_transport_lib::YellowstoneSubscribeBlockFilter::new();
|
||||
assert!(block.push_account_include(account).is_ok());
|
||||
block.set_include_transactions(std::option::Option::Some(true));
|
||||
block.set_include_accounts(std::option::Option::Some(false));
|
||||
block.set_include_entries(std::option::Option::Some(true));
|
||||
assert_eq!(block.account_include(), &[account]);
|
||||
assert_eq!(block.include_transactions(), std::option::Option::Some(true));
|
||||
assert_eq!(block.include_accounts(), std::option::Option::Some(false));
|
||||
assert_eq!(block.include_entries(), std::option::Option::Some(true));
|
||||
let mut request = ksp_onchain_transport_lib::YellowstoneSubscribeRequest::new();
|
||||
assert!(
|
||||
request
|
||||
.insert_block_filter(ksp_onchain_transport_lib::YellowstoneSubscribeFilterName::new("blocks").expect("filter name must validate"), block,)
|
||||
.is_ok()
|
||||
);
|
||||
assert!(
|
||||
request
|
||||
.insert_blocks_meta_filter(
|
||||
ksp_onchain_transport_lib::YellowstoneSubscribeFilterName::new("block-meta").expect("filter name must validate"),
|
||||
ksp_onchain_transport_lib::YellowstoneSubscribeBlocksMetaFilter::new(),
|
||||
)
|
||||
.is_ok()
|
||||
);
|
||||
assert!(
|
||||
request
|
||||
.insert_entry_filter(
|
||||
ksp_onchain_transport_lib::YellowstoneSubscribeFilterName::new("entry").expect("filter name must validate"),
|
||||
ksp_onchain_transport_lib::YellowstoneSubscribeEntryFilter::new(),
|
||||
)
|
||||
.is_ok()
|
||||
);
|
||||
assert_eq!(request.block_filter_count(), 1);
|
||||
assert_eq!(request.blocks_meta_filter_count(), 1);
|
||||
assert_eq!(request.entry_filter_count(), 1);
|
||||
let _block_update = std::any::type_name::<ksp_onchain_transport_lib::YellowstoneBlockUpdate>();
|
||||
let _block_meta = std::any::type_name::<ksp_onchain_transport_lib::YellowstoneBlockMetaUpdate>();
|
||||
let _block_rewards = std::any::type_name::<ksp_onchain_transport_lib::YellowstoneBlockRewards>();
|
||||
let _entry_info = std::any::type_name::<ksp_onchain_transport_lib::YellowstoneEntryInfo>();
|
||||
let _entry_update = std::any::type_name::<ksp_onchain_transport_lib::YellowstoneEntryUpdate>();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user