Create 5 addresses when restoring wallet

This commit is contained in:
Aditya Kulkarni
2020-05-09 19:24:29 -07:00
parent d74a1cc73e
commit fdd65fbeb5
2 changed files with 47 additions and 11 deletions

View File

@@ -1208,22 +1208,48 @@ pub mod tests {
#[test]
pub fn test_addresses() {
let lc = super::LightClient::unconnected(TEST_SEED.to_string(), None).unwrap();
{
let addresses = lc.do_address();
// When restoring from seed, there should be 5+1 addresses
assert_eq!(addresses["z_addresses"].len(), 6);
assert_eq!(addresses["t_addresses"].len(), 6);
}
// Add new z and t addresses
let taddr1 = lc.do_new_address("t").unwrap()[0].as_str().unwrap().to_string();
let taddr2 = lc.do_new_address("t").unwrap()[0].as_str().unwrap().to_string();
let zaddr1 = lc.do_new_address("z").unwrap()[0].as_str().unwrap().to_string();
let zaddr2 = lc.do_new_address("z").unwrap()[0].as_str().unwrap().to_string();
let addresses = lc.do_address();
assert_eq!(addresses["z_addresses"].len(), 3);
assert_eq!(addresses["z_addresses"][1], zaddr1);
assert_eq!(addresses["z_addresses"][2], zaddr2);
assert_eq!(addresses["z_addresses"].len(), 8);
assert_eq!(addresses["z_addresses"][6], zaddr1);
assert_eq!(addresses["z_addresses"][7], zaddr2);
assert_eq!(addresses["t_addresses"].len(), 3);
assert_eq!(addresses["t_addresses"][1], taddr1);
assert_eq!(addresses["t_addresses"][2], taddr2);
assert_eq!(addresses["t_addresses"].len(), 8);
assert_eq!(addresses["t_addresses"][6], taddr1);
assert_eq!(addresses["t_addresses"][7], taddr2);
use std::sync::{Arc, RwLock, Mutex};
use crate::lightclient::{WalletStatus, LightWallet};
// When creating a new wallet, there is only 1 address
let config = LightClientConfig::create_unconnected("test".to_string(), None);
let lc = LightClient {
wallet : Arc::new(RwLock::new(LightWallet::new(None, &config, 0).unwrap())),
config : config,
sapling_output : vec![],
sapling_spend : vec![],
sync_lock : Mutex::new(()),
sync_status : Arc::new(RwLock::new(WalletStatus::new())),
};
{
let addresses = lc.do_address();
// New wallets have only 1 address
assert_eq!(addresses["z_addresses"].len(), 1);
assert_eq!(addresses["t_addresses"].len(), 1);
}
}
#[test]