Test multi addr serialization
This commit is contained in:
@@ -1552,7 +1552,7 @@ pub mod tests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn z_balances() {
|
fn test_z_balances() {
|
||||||
let wallet = LightWallet::new(None, &get_test_config(), 0).unwrap();
|
let wallet = LightWallet::new(None, &get_test_config(), 0).unwrap();
|
||||||
|
|
||||||
const AMOUNT1:u64 = 5;
|
const AMOUNT1:u64 = 5;
|
||||||
@@ -1591,7 +1591,7 @@ pub mod tests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn z_change_balances() {
|
fn test_z_change_balances() {
|
||||||
let wallet = LightWallet::new(None, &get_test_config(), 0).unwrap();
|
let wallet = LightWallet::new(None, &get_test_config(), 0).unwrap();
|
||||||
|
|
||||||
// First, add an incoming transaction
|
// First, add an incoming transaction
|
||||||
@@ -1880,6 +1880,38 @@ pub mod tests {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_multi_serialization() {
|
||||||
|
let config = get_test_config();
|
||||||
|
|
||||||
|
let wallet = LightWallet::new(None, &config, 0).unwrap();
|
||||||
|
|
||||||
|
let taddr1 = wallet.address_from_sk(&wallet.tkeys.read().unwrap()[0]);
|
||||||
|
let taddr2 = wallet.add_taddr();
|
||||||
|
|
||||||
|
let (zaddr1, zpk1) = &wallet.get_z_private_keys()[0];
|
||||||
|
let zaddr2 = wallet.add_zaddr();
|
||||||
|
|
||||||
|
let mut serialized_data = vec![];
|
||||||
|
wallet.write(&mut serialized_data).expect("Serialize wallet");
|
||||||
|
let wallet2 = LightWallet::read(&serialized_data[..], &config).unwrap();
|
||||||
|
|
||||||
|
assert_eq!(wallet2.tkeys.read().unwrap().len(), 2);
|
||||||
|
assert_eq!(wallet2.extsks.read().unwrap().len(), 2);
|
||||||
|
assert_eq!(wallet2.extfvks.read().unwrap().len(), 2);
|
||||||
|
assert_eq!(wallet2.address.read().unwrap().len(), 2);
|
||||||
|
|
||||||
|
assert_eq!(taddr1, wallet.address_from_sk(&wallet.tkeys.read().unwrap()[0]));
|
||||||
|
assert_eq!(taddr2, wallet.address_from_sk(&wallet.tkeys.read().unwrap()[1]));
|
||||||
|
|
||||||
|
let (w2_zaddr1, w2_zpk1) = &wallet.get_z_private_keys()[0];
|
||||||
|
let (w2_zaddr2, _) = &wallet.get_z_private_keys()[1];
|
||||||
|
assert_eq!(zaddr1, w2_zaddr1);
|
||||||
|
assert_eq!(zpk1, w2_zpk1);
|
||||||
|
assert_eq!(zaddr2, *w2_zaddr2);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
fn get_test_config() -> LightClientConfig {
|
fn get_test_config() -> LightClientConfig {
|
||||||
LightClientConfig {
|
LightClientConfig {
|
||||||
server: "0.0.0.0:0".parse().unwrap(),
|
server: "0.0.0.0:0".parse().unwrap(),
|
||||||
|
|||||||
Reference in New Issue
Block a user