ckb-testkit 0.0.1

ckb testkit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use crate::Node;
use ckb_types::core::{Cycle, TransactionView};

impl Node {
    /// Get the transaction cycles via RPC `dry_run_transaction`.
    ///
    /// NOTE: Transaction runs on different VM comsumes different cycles.
    /// Therefore, if a transaction triggers a script with `ScriptHashType::Type`,
    /// its transaction cycles depend on whether the node is fork2021 activated.
    pub fn get_transaction_cycles(&self, transaction: &TransactionView) -> Cycle {
        let dry_run_result = self
            .rpc_client()
            .dry_run_transaction(transaction.data().into());
        dry_run_result.cycles.value()
    }
}