}; #[test] fn from_transaction_returns_none_if_decipher_returns_error() { assert_eq!( Runestone::from_transaction(&Transaction { input: Vec::new(), output: vec![TxOut { script_pubkey: ScriptBuf::from_bytes(vec![opcodes::all::OP_PUSHBYTES_4.to_u8()]), value: 0, }], lock_time: locktime::absolute::LockTime::ZERO, version: 0, }), None ); } #[test] fn deciphering_transaction_with_no_outputs_returns_none() { assert_eq!( Runestone::decipher(&Transaction { input: Vec::new(), output: Vec::new(), lock_time: locktime::absolute::LockTime::ZERO, version: 0, }), Ok(None) ); } #[test] fn deciphering_transaction_with_non_op_return_output_returns_none() { assert_eq!( Runestone::decipher(&Transaction { input: Vec::new(), output: vec![TxOut { script_pubkey: script::Builder::new().push_slice([]).into_script(), value: 0 }],