Skip to content

Commit e46cd2a

Browse files
committed
Move testing constants to payjoin-test-utils
1 parent e043e3b commit e46cd2a

File tree

5 files changed

+22
-14
lines changed

5 files changed

+22
-14
lines changed

payjoin-test-utils/src/lib.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,18 @@ use tokio::task::JoinHandle;
1919
use tracing_subscriber::{EnvFilter, FmtSubscriber};
2020
use url::Url;
2121

22+
/// From the BIP-174 test vector
23+
pub const INVALID_PSBT: &str = "AgAAAAEmgXE3Ht/yhek3re6ks3t4AAwFZsuzrWRkFxPKQhcb9gAAAABqRzBEAiBwsiRRI+a/R01gxbUMBD1MaRpdJDXwmjSnZiqdwlF5CgIgATKcqdrPKAvfMHQOwDkEIkIsgctFg5RXrrdvwS7dlbMBIQJlfRGNM1e44PTCzUbbezn22cONmnCry5st5dyNv+TOMf7///8C09/1BQAAAAAZdqkU0MWZA8W6woaHYOkP1SGkZlqnZSCIrADh9QUAAAAAF6kUNUXm4zuDLEcFDyTT7rk8nAOUi8eHsy4TAA==";
24+
25+
/// From the BIP-78 test vector
26+
pub const PJ_PROPOSAL_PSBT: &str = "cHNidP8BAJwCAAAAAo8nutGgJdyYGXWiBEb45Hoe9lWGbkxh/6bNiOJdCDuDAAAAAAD+////jye60aAl3JgZdaIERvjkeh72VYZuTGH/ps2I4l0IO4MBAAAAAP7///8CJpW4BQAAAAAXqRQd6EnwadJ0FQ46/q6NcutaawlEMIcACT0AAAAAABepFHdAltvPSGdDwi9DR+m0af6+i2d6h9MAAAAAAQEgqBvXBQAAAAAXqRTeTh6QYcpZE1sDWtXm1HmQRUNU0IcAAQEggIQeAAAAAAAXqRTI8sv5ymFHLIjkZNRrNXSEXZHY1YcBBxcWABRfgGZV5ZJMkgTC1RvlOU9L+e2iEAEIawJHMEQCIGe7e0DfJaVPRYEKWxddL2Pr0G37BoKz0lyNa02O2/tWAiB7ZVgBoF4s8MHocYWWmo4Q1cyV2wl7MX0azlqa8NBENAEhAmXWPPW0G3yE3HajBOb7gO7iKzHSmZ0o0w0iONowcV+tAAAA";
27+
28+
/// From the BIP-78 test vector
29+
pub const PJ_PROPOSAL_WITH_SENDER_INFO_PSBT: &str = "cHNidP8BAJwCAAAAAo8nutGgJdyYGXWiBEb45Hoe9lWGbkxh/6bNiOJdCDuDAAAAAAD+////jye60aAl3JgZdaIERvjkeh72VYZuTGH/ps2I4l0IO4MBAAAAAP7///8CJpW4BQAAAAAXqRQd6EnwadJ0FQ46/q6NcutaawlEMIcACT0AAAAAABepFHdAltvPSGdDwi9DR+m0af6+i2d6h9MAAAAAAQEgqBvXBQAAAAAXqRTeTh6QYcpZE1sDWtXm1HmQRUNU0IcBBBYAFMeKRXJTVYKNVlgHTdUmDV/LaYUwIgYDFZrAGqDVh1TEtNi300ntHt/PCzYrT2tVEGcjooWPhRYYSFzWUDEAAIABAACAAAAAgAEAAAAAAAAAAAEBIICEHgAAAAAAF6kUyPLL+cphRyyI5GTUazV0hF2R2NWHAQcXFgAUX4BmVeWSTJIEwtUb5TlPS/ntohABCGsCRzBEAiBnu3tA3yWlT0WBClsXXS9j69Bt+waCs9JcjWtNjtv7VgIge2VYAaBeLPDB6HGFlpqOENXMldsJezF9Gs5amvDQRDQBIQJl1jz1tBt8hNx2owTm+4Du4isx0pmdKNMNIjjaMHFfrQABABYAFEb2Giu6c4KO5YW0pfw3lGp9jMUUIgICygvBWB5prpfx61y1HDAwo37kYP3YRJBvAjtunBAur3wYSFzWUDEAAIABAACAAAAAgAEAAAABAAAAAAA=";
30+
31+
/// From the BIP-78 test vector
32+
pub const ORIGINAL_PSBT: &str = "cHNidP8BAHMCAAAAAY8nutGgJdyYGXWiBEb45Hoe9lWGbkxh/6bNiOJdCDuDAAAAAAD+////AtyVuAUAAAAAF6kUHehJ8GnSdBUOOv6ujXLrWmsJRDCHgIQeAAAAAAAXqRR3QJbbz0hnQ8IvQ0fptGn+votneofTAAAAAAEBIKgb1wUAAAAAF6kU3k4ekGHKWRNbA1rV5tR5kEVDVNCHAQcXFgAUx4pFclNVgo1WWAdN1SYNX8tphTABCGsCRzBEAiB8Q+A6dep+Rz92vhy26lT0AjZn4PRLi8Bf9qoB/CMk0wIgP/Rj2PWZ3gEjUkTlhDRNAQ0gXwTO7t9n+V14pZ6oljUBIQMVmsAaoNWHVMS02LfTSe0e388LNitPa1UQZyOihY+FFgABABYAFEb2Giu6c4KO5YW0pfw3lGp9jMUUAAA=";
33+
2234
pub type BoxError = Box<dyn std::error::Error + 'static>;
2335
pub type BoxSendSyncError = Box<dyn std::error::Error + Send + Sync>;
2436

payjoin/src/receive/v1/exclusive/mod.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ fn parse_body(
7070
#[cfg(test)]
7171
mod tests {
7272
use bitcoin::{Address, AddressType};
73+
use payjoin_test_utils::ORIGINAL_PSBT;
7374

7475
use super::*;
7576
struct MockHeaders {
@@ -92,7 +93,7 @@ mod tests {
9293

9394
#[test]
9495
fn test_from_request() -> Result<(), Box<dyn std::error::Error>> {
95-
let body = super::test::ORIGINAL_PSBT.as_bytes();
96+
let body = ORIGINAL_PSBT.as_bytes();
9697
let headers = MockHeaders::new(body.len() as u64);
9798
let proposal = UncheckedProposal::from_request(body, super::test::QUERY_PARAMS, headers)?;
9899

payjoin/src/receive/v1/mod.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -788,16 +788,12 @@ pub(crate) mod test {
788788
use std::str::FromStr;
789789

790790
use bitcoin::{Address, Network};
791+
use payjoin_test_utils::ORIGINAL_PSBT;
791792
use rand::rngs::StdRng;
792793
use rand::SeedableRng;
793794

794795
use super::*;
795796

796-
// OriginalPSBT Test Vector from BIP
797-
// | InputScriptType | Original PSBT Fee rate | maxadditionalfeecontribution | additionalfeeoutputindex|
798-
// |-----------------|-----------------------|------------------------------|-------------------------|
799-
// | P2SH-P2WPKH | 2 sat/vbyte | 0.00000182 | 0 |
800-
pub const ORIGINAL_PSBT: &str = "cHNidP8BAHMCAAAAAY8nutGgJdyYGXWiBEb45Hoe9lWGbkxh/6bNiOJdCDuDAAAAAAD+////AtyVuAUAAAAAF6kUHehJ8GnSdBUOOv6ujXLrWmsJRDCHgIQeAAAAAAAXqRR3QJbbz0hnQ8IvQ0fptGn+votneofTAAAAAAEBIKgb1wUAAAAAF6kU3k4ekGHKWRNbA1rV5tR5kEVDVNCHAQcXFgAUx4pFclNVgo1WWAdN1SYNX8tphTABCGsCRzBEAiB8Q+A6dep+Rz92vhy26lT0AjZn4PRLi8Bf9qoB/CMk0wIgP/Rj2PWZ3gEjUkTlhDRNAQ0gXwTO7t9n+V14pZ6oljUBIQMVmsAaoNWHVMS02LfTSe0e388LNitPa1UQZyOihY+FFgABABYAFEb2Giu6c4KO5YW0pfw3lGp9jMUUAAA=";
801797
pub const QUERY_PARAMS: &str = "maxadditionalfeecontribution=182&additionalfeeoutputindex=0";
802798

803799
pub(crate) fn proposal_from_test_vector(

payjoin/src/send/mod.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -443,15 +443,13 @@ pub(crate) mod test {
443443

444444
use bitcoin::psbt::Psbt;
445445
use bitcoin::FeeRate;
446+
use payjoin_test_utils::{ORIGINAL_PSBT, PJ_PROPOSAL_WITH_SENDER_INFO_PSBT};
446447
use url::Url;
447448

448449
use super::serialize_url;
449450
use crate::psbt::PsbtExt;
450451
use crate::send::AdditionalFeeContribution;
451452

452-
pub(crate) const ORIGINAL_PSBT: &str = "cHNidP8BAHMCAAAAAY8nutGgJdyYGXWiBEb45Hoe9lWGbkxh/6bNiOJdCDuDAAAAAAD+////AtyVuAUAAAAAF6kUHehJ8GnSdBUOOv6ujXLrWmsJRDCHgIQeAAAAAAAXqRR3QJbbz0hnQ8IvQ0fptGn+votneofTAAAAAAEBIKgb1wUAAAAAF6kU3k4ekGHKWRNbA1rV5tR5kEVDVNCHAQcXFgAUx4pFclNVgo1WWAdN1SYNX8tphTABCGsCRzBEAiB8Q+A6dep+Rz92vhy26lT0AjZn4PRLi8Bf9qoB/CMk0wIgP/Rj2PWZ3gEjUkTlhDRNAQ0gXwTO7t9n+V14pZ6oljUBIQMVmsAaoNWHVMS02LfTSe0e388LNitPa1UQZyOihY+FFgABABYAFEb2Giu6c4KO5YW0pfw3lGp9jMUUAAA=";
453-
const PAYJOIN_PROPOSAL: &str = "cHNidP8BAJwCAAAAAo8nutGgJdyYGXWiBEb45Hoe9lWGbkxh/6bNiOJdCDuDAAAAAAD+////jye60aAl3JgZdaIERvjkeh72VYZuTGH/ps2I4l0IO4MBAAAAAP7///8CJpW4BQAAAAAXqRQd6EnwadJ0FQ46/q6NcutaawlEMIcACT0AAAAAABepFHdAltvPSGdDwi9DR+m0af6+i2d6h9MAAAAAAQEgqBvXBQAAAAAXqRTeTh6QYcpZE1sDWtXm1HmQRUNU0IcBBBYAFMeKRXJTVYKNVlgHTdUmDV/LaYUwIgYDFZrAGqDVh1TEtNi300ntHt/PCzYrT2tVEGcjooWPhRYYSFzWUDEAAIABAACAAAAAgAEAAAAAAAAAAAEBIICEHgAAAAAAF6kUyPLL+cphRyyI5GTUazV0hF2R2NWHAQcXFgAUX4BmVeWSTJIEwtUb5TlPS/ntohABCGsCRzBEAiBnu3tA3yWlT0WBClsXXS9j69Bt+waCs9JcjWtNjtv7VgIge2VYAaBeLPDB6HGFlpqOENXMldsJezF9Gs5amvDQRDQBIQJl1jz1tBt8hNx2owTm+4Du4isx0pmdKNMNIjjaMHFfrQABABYAFEb2Giu6c4KO5YW0pfw3lGp9jMUUIgICygvBWB5prpfx61y1HDAwo37kYP3YRJBvAjtunBAur3wYSFzWUDEAAIABAACAAAAAgAEAAAABAAAAAAA=";
454-
455453
pub(crate) fn create_psbt_context() -> super::PsbtContext {
456454
let original_psbt = Psbt::from_str(ORIGINAL_PSBT).unwrap();
457455
eprintln!("original: {:#?}", original_psbt);
@@ -473,7 +471,7 @@ pub(crate) mod test {
473471
let original_psbt = Psbt::from_str(ORIGINAL_PSBT).unwrap();
474472
eprintln!("original: {:#?}", original_psbt);
475473
let ctx = create_psbt_context();
476-
let mut proposal = Psbt::from_str(PAYJOIN_PROPOSAL).unwrap();
474+
let mut proposal = Psbt::from_str(PJ_PROPOSAL_WITH_SENDER_INFO_PSBT).unwrap();
477475
eprintln!("proposal: {:#?}", proposal);
478476
for output in proposal.outputs_mut() {
479477
output.bip32_derivation.clear();
@@ -491,7 +489,7 @@ pub(crate) mod test {
491489
let original_psbt = Psbt::from_str(ORIGINAL_PSBT).unwrap();
492490
eprintln!("original: {:#?}", original_psbt);
493491
let ctx = create_psbt_context();
494-
let mut proposal = Psbt::from_str(PAYJOIN_PROPOSAL).unwrap();
492+
let mut proposal = Psbt::from_str(PJ_PROPOSAL_WITH_SENDER_INFO_PSBT).unwrap();
495493
eprintln!("proposal: {:#?}", proposal);
496494
for output in proposal.outputs_mut() {
497495
output.bip32_derivation.clear();

payjoin/src/send/v2/mod.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -349,11 +349,12 @@ impl HpkeContext {
349349

350350
#[cfg(test)]
351351
mod test {
352+
use payjoin_test_utils::ORIGINAL_PSBT;
353+
354+
use super::*;
355+
352356
#[test]
353357
fn req_ctx_ser_de_roundtrip() -> Result<(), payjoin_test_utils::BoxError> {
354-
use super::*;
355-
use crate::send::test::ORIGINAL_PSBT;
356-
357358
let psbt = Psbt::from_str(ORIGINAL_PSBT)?;
358359
let endpoint = Url::parse("http://localhost:1234")?;
359360
let req_ctx = Sender {

0 commit comments

Comments
 (0)