use crate::block::{
address::{Address, AliasAddress, Ed25519Address, NftAddress},
output::{AliasId, NftId},
rand::{bytes::rand_bytes_array, number::rand_number},
};
pub fn rand_ed25519_address() -> Ed25519Address {
Ed25519Address::new(rand_bytes_array())
}
pub fn rand_alias_address() -> AliasAddress {
AliasAddress::new(AliasId::from(rand_bytes_array()))
}
pub fn rand_nft_address() -> NftAddress {
NftAddress::new(NftId::from(rand_bytes_array()))
}
pub fn rand_address() -> Address {
#[allow(clippy::modulo_one)]
match rand_number::<u64>() % 3 {
0 => rand_ed25519_address().into(),
1 => rand_alias_address().into(),
2 => rand_nft_address().into(),
_ => unreachable!(),
}
}