diff --git a/side-node/src/utils.rs b/side-node/src/utils.rs index dda9264..14599e3 100644 --- a/side-node/src/utils.rs +++ b/side-node/src/utils.rs @@ -1,6 +1,7 @@ use std::path::PathBuf; use bft_json_crdt::json_crdt::SignedOp; +use bitcoin::{absolute, key::Keypair, transaction::Version, TxIn, TxOut}; use serde_json::{json, Value}; pub(crate) const BITCOIN_KEY_FILE: &str = "bitcoin_keys.pem"; @@ -37,6 +38,31 @@ pub fn fake_generic_transaction_json(from: String) -> Value { }) } +/// Generate a Bitcoin transaction from this node's bitcoin_keys +pub fn fake_bitcoin_transaction(key_pair: Keypair) -> bitcoin::Transaction { + let from = key_pair.public_key().to_string(); + let to = "Bob"; + let amount = 1; + let lock_time = absolute::LockTime::from_height(0).expect("couldn't format btc lock time"); + let input = TxIn { + previous_output: todo!(), + script_sig: todo!(), + sequence: todo!(), + witness: todo!(), + }; + let output = TxOut { + value: todo!(), + script_pubkey: todo!(), + }; + let tx = bitcoin::Transaction { + version: Version(1), + lock_time, + input, + output, + }; + tx +} + pub fn shappy(op: SignedOp) -> String { let b = serde_json::to_string(&op).unwrap().into_bytes(); sha256::digest(b).to_string()