assert_eq!(
Runestone::decipher(&Transaction {
input: Vec::new(),
output: vec![TxOut {
script_pubkey: script::Builder::new()
.push_opcode(opcodes::all::OP_RETURN)
.push_slice(b"RUNE_TEST")
.push_slice(payload)
.into_script(),
value: 0
}],
lock_time: locktime::absolute::LockTime::ZERO,
version: 0,
}),
Ok(Some(Runestone {
edicts: vec![Edict {
id: 1,
amount: 2,
output: 3,
}],
etching: Some(Etching {
rune: Rune(4),
..Default::default()
}),
..Default::default()
}))
);
}
#[test]
fn symbol_above_max_is_ignored() {
let payload = payload(&[2, 4, 3, u128::from(u32::from(char::MAX) + 1), 0, 1, 2, 3]);
let payload: &PushBytes = payload.as_slice().try_into().unwrap();
assert_eq!(
Runestone::decipher(&Transaction {
input: Vec::new(),
output: vec![TxOut {