mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 04:09:23 +00:00
bitcoin 0.31
This commit is contained in:
@@ -51,7 +51,7 @@ async fn mint_and_burn_test() {
|
||||
secp256k1::{SECP256K1, SecretKey},
|
||||
PrivateKey, PublicKey,
|
||||
consensus::Encodable,
|
||||
network::constants::Network,
|
||||
network::Network,
|
||||
address::Address,
|
||||
};
|
||||
|
||||
@@ -263,8 +263,9 @@ async fn mint_and_burn_test() {
|
||||
sighash::{EcdsaSighashType, SighashCache},
|
||||
script::{PushBytesBuf, Script, ScriptBuf, Builder},
|
||||
absolute::LockTime,
|
||||
transaction::{Version, Transaction},
|
||||
address::Payload,
|
||||
Sequence, Witness, OutPoint, TxIn, TxOut, Transaction, Network,
|
||||
Sequence, Witness, OutPoint, TxIn, Amount, TxOut, Network,
|
||||
};
|
||||
|
||||
let private_key =
|
||||
@@ -278,17 +279,17 @@ async fn mint_and_burn_test() {
|
||||
rpc.get_block(&rpc.get_block_hash(1).await.unwrap()).await.unwrap().txdata.swap_remove(0);
|
||||
#[allow(clippy::inconsistent_digit_grouping)]
|
||||
let mut tx = Transaction {
|
||||
version: 2,
|
||||
version: Version(2),
|
||||
lock_time: LockTime::ZERO,
|
||||
input: vec![TxIn {
|
||||
previous_output: OutPoint { txid: tx.txid(), vout: 0 },
|
||||
script_sig: Script::empty().into(),
|
||||
script_sig: Script::new().into(),
|
||||
sequence: Sequence(u32::MAX),
|
||||
witness: Witness::default(),
|
||||
}],
|
||||
output: vec![
|
||||
TxOut {
|
||||
value: 1_100_000_00,
|
||||
value: Amount::from_sat(1_100_000_00),
|
||||
script_pubkey: Payload::p2tr_tweaked(TweakedPublicKey::dangerous_assume_tweaked(
|
||||
XOnlyPublicKey::from_slice(&bitcoin_key_pair.1[1 ..]).unwrap(),
|
||||
))
|
||||
@@ -296,16 +297,16 @@ async fn mint_and_burn_test() {
|
||||
},
|
||||
TxOut {
|
||||
// change = amount spent - fee
|
||||
value: tx.output[0].value - 1_100_000_00 - 1_000_00,
|
||||
value: Amount::from_sat(tx.output[0].value.to_sat() - 1_100_000_00 - 1_000_00),
|
||||
script_pubkey: Payload::p2tr_tweaked(TweakedPublicKey::dangerous_assume_tweaked(
|
||||
XOnlyPublicKey::from_slice(&public_key.inner.serialize()[1 ..]).unwrap(),
|
||||
))
|
||||
.script_pubkey(),
|
||||
},
|
||||
TxOut {
|
||||
value: 0,
|
||||
value: Amount::ZERO,
|
||||
script_pubkey: ScriptBuf::new_op_return(
|
||||
&PushBytesBuf::try_from(Shorthand::transfer(None, serai_addr).encode()).unwrap(),
|
||||
PushBytesBuf::try_from(Shorthand::transfer(None, serai_addr).encode()).unwrap(),
|
||||
),
|
||||
},
|
||||
],
|
||||
@@ -447,7 +448,7 @@ async fn mint_and_burn_test() {
|
||||
|
||||
// Create a random Bitcoin/Monero address
|
||||
let bitcoin_addr = {
|
||||
use bitcoin_serai::bitcoin::{network::constants::Network, key::PublicKey, address::Address};
|
||||
use bitcoin_serai::bitcoin::{network::Network, key::PublicKey, address::Address};
|
||||
// Uses Network::Bitcoin since it doesn't actually matter, Serai strips it out
|
||||
// TODO: Move Serai to Payload from Address
|
||||
Address::p2pkh(
|
||||
@@ -555,9 +556,9 @@ async fn mint_and_burn_test() {
|
||||
.unwrap();
|
||||
|
||||
let tx_fee = 1_100_000_00 -
|
||||
block.txdata[1].output.iter().map(|output| output.value).sum::<u64>();
|
||||
block.txdata[1].output.iter().map(|output| output.value.to_sat()).sum::<u64>();
|
||||
|
||||
assert_eq!(received_output.value, 1_000_000_00 - tx_fee);
|
||||
assert_eq!(received_output.value.to_sat(), 1_000_000_00 - tx_fee);
|
||||
found = true;
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -251,7 +251,7 @@ impl Coordinator {
|
||||
match self.network {
|
||||
NetworkId::Bitcoin => {
|
||||
use bitcoin_serai::{
|
||||
bitcoin::{consensus::Encodable, network::constants::Network, Script, Address},
|
||||
bitcoin::{consensus::Encodable, network::Network, Script, Address},
|
||||
rpc::Rpc,
|
||||
};
|
||||
|
||||
@@ -260,7 +260,7 @@ impl Coordinator {
|
||||
rpc
|
||||
.rpc_call::<Vec<String>>(
|
||||
"generatetoaddress",
|
||||
serde_json::json!([1, Address::p2sh(Script::empty(), Network::Regtest).unwrap()]),
|
||||
serde_json::json!([1, Address::p2sh(Script::new(), Network::Regtest).unwrap()]),
|
||||
)
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
@@ -233,28 +233,28 @@ impl Wallet {
|
||||
sighash::{EcdsaSighashType, SighashCache},
|
||||
script::{PushBytesBuf, Script, ScriptBuf, Builder},
|
||||
address::Payload,
|
||||
OutPoint, Sequence, Witness, TxIn, TxOut,
|
||||
OutPoint, Sequence, Witness, TxIn, Amount, TxOut,
|
||||
absolute::LockTime,
|
||||
Transaction,
|
||||
transaction::{Version, Transaction},
|
||||
};
|
||||
|
||||
const AMOUNT: u64 = 100000000;
|
||||
let mut tx = Transaction {
|
||||
version: 2,
|
||||
version: Version(2),
|
||||
lock_time: LockTime::ZERO,
|
||||
input: vec![TxIn {
|
||||
previous_output: OutPoint { txid: input_tx.txid(), vout: 0 },
|
||||
script_sig: Script::empty().into(),
|
||||
script_sig: Script::new().into(),
|
||||
sequence: Sequence(u32::MAX),
|
||||
witness: Witness::default(),
|
||||
}],
|
||||
output: vec![
|
||||
TxOut {
|
||||
value: input_tx.output[0].value - AMOUNT - 10000,
|
||||
value: Amount::from_sat(input_tx.output[0].value.to_sat() - AMOUNT - 10000),
|
||||
script_pubkey: input_tx.output[0].script_pubkey.clone(),
|
||||
},
|
||||
TxOut {
|
||||
value: AMOUNT,
|
||||
value: Amount::from_sat(AMOUNT),
|
||||
script_pubkey: Payload::p2tr_tweaked(TweakedPublicKey::dangerous_assume_tweaked(
|
||||
XOnlyPublicKey::from_slice(&to[1 ..]).unwrap(),
|
||||
))
|
||||
@@ -265,9 +265,9 @@ impl Wallet {
|
||||
|
||||
if let Some(instruction) = instruction {
|
||||
tx.output.push(TxOut {
|
||||
value: 0,
|
||||
value: Amount::ZERO,
|
||||
script_pubkey: ScriptBuf::new_op_return(
|
||||
&PushBytesBuf::try_from(
|
||||
PushBytesBuf::try_from(
|
||||
Shorthand::Raw(RefundableInInstruction { origin: None, instruction }).encode(),
|
||||
)
|
||||
.unwrap(),
|
||||
|
||||
Reference in New Issue
Block a user