Use ? instead of unwrap()
This change addresses #833, while there are still some unwrap() though.
This commit is contained in:
parent
575179be8e
commit
9c1b6288a4
|
@ -8,6 +8,7 @@ use solana::crdt::{Crdt, TestNode};
|
|||
use solana::logger;
|
||||
use solana::ncp::Ncp;
|
||||
use solana::packet::Blob;
|
||||
use solana::result;
|
||||
use solana::service::Service;
|
||||
use std::net::UdpSocket;
|
||||
use std::sync::atomic::{AtomicBool, Ordering};
|
||||
|
@ -71,7 +72,7 @@ where
|
|||
}
|
||||
/// ring a -> b -> c -> d -> e -> a
|
||||
#[test]
|
||||
fn gossip_ring() {
|
||||
fn gossip_ring() -> result::Result<()> {
|
||||
logger::setup();
|
||||
run_gossip_topo(|listen| {
|
||||
let num = listen.len();
|
||||
|
@ -85,6 +86,8 @@ fn gossip_ring() {
|
|||
xv.insert(&d);
|
||||
}
|
||||
});
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
/// star a -> (b,c,d,e)
|
||||
|
@ -131,7 +134,7 @@ fn gossip_rstar() {
|
|||
}
|
||||
|
||||
#[test]
|
||||
pub fn crdt_retransmit() {
|
||||
pub fn crdt_retransmit() -> result::Result<()> {
|
||||
logger::setup();
|
||||
let exit = Arc::new(AtomicBool::new(false));
|
||||
trace!("c1:");
|
||||
|
@ -164,7 +167,7 @@ pub fn crdt_retransmit() {
|
|||
assert!(done);
|
||||
let mut b = Blob::default();
|
||||
b.meta.size = 10;
|
||||
Crdt::retransmit(&c1, &Arc::new(RwLock::new(b)), &tn1).unwrap();
|
||||
Crdt::retransmit(&c1, &Arc::new(RwLock::new(b)), &tn1)?;
|
||||
let res: Vec<_> = [tn1, tn2, tn3]
|
||||
.into_par_iter()
|
||||
.map(|s| {
|
||||
|
@ -181,6 +184,8 @@ pub fn crdt_retransmit() {
|
|||
dr1.join().unwrap();
|
||||
dr2.join().unwrap();
|
||||
dr3.join().unwrap();
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
|
|
@ -10,6 +10,7 @@ use solana::ledger::LedgerWriter;
|
|||
use solana::logger;
|
||||
use solana::mint::Mint;
|
||||
use solana::ncp::Ncp;
|
||||
use solana::result;
|
||||
use solana::service::Service;
|
||||
use solana::signature::{KeyPair, KeyPairUtil, PublicKey};
|
||||
use solana::streamer::default_window;
|
||||
|
@ -107,7 +108,7 @@ fn tmp_copy_ledger(from: &str, name: &str) -> String {
|
|||
}
|
||||
|
||||
#[test]
|
||||
fn test_multi_node_validator_catchup_from_zero() {
|
||||
fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> {
|
||||
logger::setup();
|
||||
const N: usize = 5;
|
||||
trace!("test_multi_node_validator_catchup_from_zero");
|
||||
|
@ -195,7 +196,7 @@ fn test_multi_node_validator_catchup_from_zero() {
|
|||
info!("leader balance {}", leader_balance);
|
||||
loop {
|
||||
let mut client = mk_client(&leader_data);
|
||||
leader_balance = client.poll_get_balance(&bob_pubkey).unwrap();
|
||||
leader_balance = client.poll_get_balance(&bob_pubkey)?;
|
||||
if leader_balance == 1000 {
|
||||
break;
|
||||
}
|
||||
|
@ -220,11 +221,13 @@ fn test_multi_node_validator_catchup_from_zero() {
|
|||
assert_eq!(success, servers.len());
|
||||
|
||||
for node in nodes {
|
||||
node.close().unwrap();
|
||||
node.close()?;
|
||||
}
|
||||
for path in ledger_paths {
|
||||
remove_dir_all(path).unwrap();
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -293,7 +296,7 @@ fn test_multi_node_basic() {
|
|||
}
|
||||
|
||||
#[test]
|
||||
fn test_boot_validator_from_file() {
|
||||
fn test_boot_validator_from_file() -> result::Result<()> {
|
||||
logger::setup();
|
||||
let leader_keypair = KeyPair::new();
|
||||
let leader = TestNode::new_localhost_with_pubkey(leader_keypair.pubkey());
|
||||
|
@ -327,11 +330,13 @@ fn test_boot_validator_from_file() {
|
|||
let getbal = retry_get_balance(&mut client, &bob_pubkey, Some(leader_balance));
|
||||
assert!(getbal == Some(leader_balance));
|
||||
|
||||
val_fullnode.close().unwrap();
|
||||
leader_fullnode.close().unwrap();
|
||||
val_fullnode.close()?;
|
||||
leader_fullnode.close()?;
|
||||
for path in ledger_paths {
|
||||
remove_dir_all(path).unwrap();
|
||||
remove_dir_all(path)?;
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn create_leader(ledger_path: &str) -> (NodeInfo, FullNode) {
|
||||
|
@ -343,7 +348,7 @@ fn create_leader(ledger_path: &str) -> (NodeInfo, FullNode) {
|
|||
}
|
||||
|
||||
#[test]
|
||||
fn test_leader_restart_validator_start_from_old_ledger() {
|
||||
fn test_leader_restart_validator_start_from_old_ledger() -> result::Result<()> {
|
||||
// this test verifies that a freshly started leader makes his ledger available
|
||||
// in the repair window to validators that are started with an older
|
||||
// ledger (currently up to WINDOW_SIZE entries)
|
||||
|
@ -366,7 +371,7 @@ fn test_leader_restart_validator_start_from_old_ledger() {
|
|||
);
|
||||
|
||||
// restart the leader
|
||||
leader_fullnode.close().unwrap();
|
||||
leader_fullnode.close()?;
|
||||
let (leader_data, leader_fullnode) = create_leader(&ledger_path);
|
||||
|
||||
// lengthen the ledger
|
||||
|
@ -375,7 +380,7 @@ fn test_leader_restart_validator_start_from_old_ledger() {
|
|||
assert_eq!(leader_balance, 1000);
|
||||
|
||||
// restart the leader
|
||||
leader_fullnode.close().unwrap();
|
||||
leader_fullnode.close()?;
|
||||
let (leader_data, leader_fullnode) = create_leader(&ledger_path);
|
||||
|
||||
// start validator from old ledger
|
||||
|
@ -410,10 +415,12 @@ fn test_leader_restart_validator_start_from_old_ledger() {
|
|||
let getbal = retry_get_balance(&mut client, &bob_pubkey, Some(expected));
|
||||
assert_eq!(getbal, Some(expected));
|
||||
|
||||
val_fullnode.close().unwrap();
|
||||
leader_fullnode.close().unwrap();
|
||||
remove_dir_all(ledger_path).unwrap();
|
||||
remove_dir_all(stale_ledger_path).unwrap();
|
||||
val_fullnode.close()?;
|
||||
leader_fullnode.close()?;
|
||||
remove_dir_all(ledger_path)?;
|
||||
remove_dir_all(stale_ledger_path)?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
//TODO: this test will run a long time so it's disabled for CI
|
||||
|
|
Loading…
Reference in New Issue