plug in new ledger

This commit is contained in:
Rob Walker
2018-08-02 10:18:59 -07:00
parent a9240a42bf
commit 46d9ba5ca0
15 changed files with 299 additions and 182 deletions

View File

@ -289,11 +289,26 @@ mod tests {
use mint::Mint;
use service::Service;
use signature::{KeyPair, KeyPairUtil};
use std::io::sink;
use std::fs::remove_dir_all;
use std::sync::atomic::{AtomicBool, Ordering};
use std::sync::Arc;
use transaction::{Instruction, Plan};
fn tmp_ledger_path(name: &str) -> String {
let keypair = KeyPair::new();
let id = {
let ids: Vec<_> = keypair
.pubkey()
.iter()
.map(|id| format!("{}", id))
.collect();
ids.join("")
};
format!("farf/{}-{}", name, id)
}
#[test]
fn test_thin_client() {
logger::setup();
@ -305,6 +320,7 @@ mod tests {
let bank = Bank::new(&alice);
let bob_pubkey = KeyPair::new().pubkey();
let exit = Arc::new(AtomicBool::new(false));
let ledger_path = tmp_ledger_path("thin_client");
let server = FullNode::new_leader(
leader_keypair,
@ -314,7 +330,7 @@ mod tests {
Some(Duration::from_millis(30)),
leader,
exit.clone(),
sink(),
&ledger_path,
false,
);
sleep(Duration::from_millis(900));
@ -351,6 +367,7 @@ mod tests {
let bob_pubkey = KeyPair::new().pubkey();
let exit = Arc::new(AtomicBool::new(false));
let leader_data = leader.data.clone();
let ledger_path = tmp_ledger_path("bad_sig");
let server = FullNode::new_leader(
leader_keypair,
@ -360,7 +377,7 @@ mod tests {
Some(Duration::from_millis(30)),
leader,
exit.clone(),
sink(),
&ledger_path,
false,
);
//TODO: remove this sleep, or add a retry so CI is stable
@ -397,6 +414,7 @@ mod tests {
assert_eq!(balance.unwrap(), 500);
exit.store(true, Ordering::Relaxed);
server.join().unwrap();
remove_dir_all(ledger_path).unwrap();
}
#[test]
@ -409,6 +427,8 @@ mod tests {
let bob_pubkey = KeyPair::new().pubkey();
let exit = Arc::new(AtomicBool::new(false));
let leader_data = leader.data.clone();
let ledger_path = tmp_ledger_path("client_check_signature");
let server = FullNode::new_leader(
leader_keypair,
bank,
@ -417,7 +437,7 @@ mod tests {
Some(Duration::from_millis(30)),
leader,
exit.clone(),
sink(),
&ledger_path,
false,
);
sleep(Duration::from_millis(300));
@ -443,5 +463,6 @@ mod tests {
exit.store(true, Ordering::Relaxed);
server.join().unwrap();
remove_dir_all(ledger_path).unwrap();
}
}