v0.2.7-pre.009

This commit is contained in:
2026-08-22 23:08:47 +02:00
parent 93199d1856
commit d17161234a
15 changed files with 1093 additions and 35 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-onchain-transport-lib/tests/public_api.rs
// version: 29
// version: 30
//! Integration tests for the public `ksp-onchain-transport-lib` consumer contract.
@@ -585,3 +585,28 @@ fn public_v0_2_7_pre_008_backpressure_observability_contract_is_available_from_c
let _overflow_count = ksp_onchain_transport_lib::WsSessionSnapshot::overflow_count;
assert_eq!(ksp_onchain_transport_lib::ERROR_CODE_WS_BACKPRESSURE_OVERFLOW.code(), "ws_backpressure_overflow");
}
#[test]
fn public_v0_2_7_pre_009_stable_websocket_lot_a_wrappers_and_dtos_are_available_from_crate_root() {
let _account_subscribe = ksp_onchain_transport_lib::WsSession::account_subscribe;
let _program_subscribe = ksp_onchain_transport_lib::WsSession::program_subscribe;
let _logs_subscribe = ksp_onchain_transport_lib::WsSession::logs_subscribe;
let account_config = ksp_onchain_transport_lib::SolanaAccountSubscribeConfig::new(
std::option::Option::Some(ksp_onchain_transport_lib::SolanaAccountEncoding::Base64),
std::option::Option::Some(ksp_onchain_transport_lib::SolanaDataSliceConfig::new(0, 32)),
std::option::Option::Some(ksp_onchain_transport_lib::SolanaCommitment::Confirmed),
);
assert_eq!(account_config.commitment(), std::option::Option::Some(ksp_onchain_transport_lib::SolanaCommitment::Confirmed));
let program_config = ksp_onchain_transport_lib::SolanaProgramSubscribeConfig::new(
account_config,
std::vec![ksp_onchain_transport_lib::SolanaProgramAccountFilter::DataSize(80)],
std::option::Option::Some(true),
);
assert_eq!(program_config.with_context(), std::option::Option::Some(true));
let mention = "11111111111111111111111111111111".parse::<ksp_core_lib::Pubkey>().expect("public logs mention fixture must parse");
let filter = ksp_onchain_transport_lib::SolanaLogsSubscribeFilter::Mentions(mention);
let filter_name = std::any::type_name_of_val(&filter);
assert!(filter_name.ends_with("SolanaLogsSubscribeFilter"));
let _program_notification = std::any::type_name::<ksp_onchain_transport_lib::SolanaProgramNotification>();
let _logs_notification = std::any::type_name::<ksp_onchain_transport_lib::SolanaLogsNotification>();
}