new_fullnode: don't return the genesis_block, nobody uses it

This commit is contained in:
Michael Vines 2019-01-29 17:03:32 -08:00
parent 85e7046caf
commit 25f25d0f82
5 changed files with 41 additions and 24 deletions

View File

@ -437,9 +437,7 @@ pub fn retry_get_balance(
None None
} }
pub fn new_fullnode( pub fn new_fullnode(ledger_name: &'static str) -> (Fullnode, NodeInfo, Keypair, String) {
ledger_name: &'static str,
) -> (Fullnode, NodeInfo, GenesisBlock, Keypair, String) {
use crate::cluster_info::Node; use crate::cluster_info::Node;
use crate::db_ledger::create_tmp_ledger; use crate::db_ledger::create_tmp_ledger;
use crate::leader_scheduler::LeaderScheduler; use crate::leader_scheduler::LeaderScheduler;
@ -474,7 +472,7 @@ pub fn new_fullnode(
Default::default(), Default::default(),
); );
(server, leader_data, genesis_block, alice, ledger_path) (server, leader_data, alice, ledger_path)
} }
#[cfg(test)] #[cfg(test)]
@ -491,7 +489,7 @@ mod tests {
#[test] #[test]
fn test_thin_client() { fn test_thin_client() {
solana_logger::setup(); solana_logger::setup();
let (server, leader_data, _genesis_block, alice, ledger_path) = new_fullnode("thin_client"); let (server, leader_data, alice, ledger_path) = new_fullnode("thin_client");
let bob_pubkey = Keypair::new().pubkey(); let bob_pubkey = Keypair::new().pubkey();
sleep(Duration::from_millis(900)); sleep(Duration::from_millis(900));
@ -519,7 +517,7 @@ mod tests {
fn test_bad_sig() { fn test_bad_sig() {
solana_logger::setup(); solana_logger::setup();
let (server, leader_data, _genesis_block, alice, ledger_path) = new_fullnode("bad_sig"); let (server, leader_data, alice, ledger_path) = new_fullnode("bad_sig");
let bob_pubkey = Keypair::new().pubkey(); let bob_pubkey = Keypair::new().pubkey();
//TODO: remove this sleep, or add a retry so CI is stable //TODO: remove this sleep, or add a retry so CI is stable
@ -553,7 +551,7 @@ mod tests {
#[test] #[test]
fn test_client_check_signature() { fn test_client_check_signature() {
solana_logger::setup(); solana_logger::setup();
let (server, leader_data, _genesis_block, alice, ledger_path) = new_fullnode("thin_client"); let (server, leader_data, alice, ledger_path) = new_fullnode("thin_client");
let bob_pubkey = Keypair::new().pubkey(); let bob_pubkey = Keypair::new().pubkey();
let mut client = mk_client(&leader_data); let mut client = mk_client(&leader_data);
@ -569,7 +567,7 @@ mod tests {
#[test] #[test]
fn test_register_vote_account() { fn test_register_vote_account() {
solana_logger::setup(); solana_logger::setup();
let (server, leader_data, _genesis_block, alice, ledger_path) = new_fullnode("thin_client"); let (server, leader_data, alice, ledger_path) = new_fullnode("thin_client");
let mut client = mk_client(&leader_data); let mut client = mk_client(&leader_data);
@ -633,7 +631,7 @@ mod tests {
#[test] #[test]
fn test_zero_balance_after_nonzero() { fn test_zero_balance_after_nonzero() {
solana_logger::setup(); solana_logger::setup();
let (server, leader_data, _genesis_block, alice, ledger_path) = new_fullnode("thin_client"); let (server, leader_data, alice, ledger_path) = new_fullnode("thin_client");
let bob_keypair = Keypair::new(); let bob_keypair = Keypair::new();
let mut client = mk_client(&leader_data); let mut client = mk_client(&leader_data);

View File

@ -1,9 +1,11 @@
use bincode::serialize; use bincode::serialize;
use log::*;
use reqwest; use reqwest;
use reqwest::header::CONTENT_TYPE; use reqwest::header::CONTENT_TYPE;
use serde_json::{json, Value}; use serde_json::{json, Value};
use solana::rpc_request::get_rpc_request_str; use solana::rpc_request::get_rpc_request_str;
use solana::thin_client::new_fullnode; use solana::thin_client::new_fullnode;
use solana_sdk::hash::Hash;
use solana_sdk::signature::{Keypair, KeypairUtil}; use solana_sdk::signature::{Keypair, KeypairUtil};
use solana_sdk::system_transaction::SystemTransaction; use solana_sdk::system_transaction::SystemTransaction;
use solana_sdk::transaction::Transaction; use solana_sdk::transaction::Transaction;
@ -12,12 +14,34 @@ use std::thread::sleep;
use std::time::Duration; use std::time::Duration;
#[test] #[test]
#[ignore]
fn test_rpc_send_tx() { fn test_rpc_send_tx() {
let (server, leader_data, genesis_block, alice, ledger_path) = new_fullnode("test_rpc_send_tx"); solana_logger::setup();
let (server, leader_data, alice, ledger_path) = new_fullnode("test_rpc_send_tx");
let bob_pubkey = Keypair::new().pubkey(); let bob_pubkey = Keypair::new().pubkey();
let last_id = genesis_block.last_id(); let client = reqwest::Client::new();
let request = json!({
"jsonrpc": "2.0",
"id": 1,
"method": "getLastId",
"params": json!([])
});
let rpc_addr = leader_data.rpc;
let rpc_string = get_rpc_request_str(rpc_addr, false);
let mut response = client
.post(&rpc_string)
.header(CONTENT_TYPE, "application/json")
.body(request.to_string())
.send()
.unwrap();
let json: Value = serde_json::from_str(&response.text().unwrap()).unwrap();
let last_id_vec = bs58::decode(json["result"].as_str().unwrap())
.into_vec()
.unwrap();
let last_id = Hash::new(&last_id_vec);
info!("last_id: {:?}", last_id);
let tx = Transaction::system_move(&alice, bob_pubkey, 20, last_id, 0); let tx = Transaction::system_move(&alice, bob_pubkey, 20, last_id, 0);
let serial_tx = serialize(&tx).unwrap(); let serial_tx = serialize(&tx).unwrap();
@ -49,7 +73,7 @@ fn test_rpc_send_tx() {
"params": [signature], "params": [signature],
}); });
for _ in 0..5 { for _ in 0..10 {
let mut response = client let mut response = client
.post(&rpc_string) .post(&rpc_string)
.header(CONTENT_TYPE, "application/json") .header(CONTENT_TYPE, "application/json")
@ -64,7 +88,7 @@ fn test_rpc_send_tx() {
break; break;
} }
sleep(Duration::from_millis(250)); sleep(Duration::from_millis(500));
} }
assert_eq!(confirmed_tx, true); assert_eq!(confirmed_tx, true);

View File

@ -17,8 +17,7 @@ fn test_wallet_deploy_program() {
pathbuf.push("noop"); pathbuf.push("noop");
pathbuf.set_extension("so"); pathbuf.set_extension("so");
let (server, leader_data, _genesis_block, alice, ledger_path) = let (server, leader_data, alice, ledger_path) = new_fullnode("test_wallet_deploy_program");
new_fullnode("test_wallet_deploy_program");
let (sender, receiver) = channel(); let (sender, receiver) = channel();
run_local_drone(alice, sender); run_local_drone(alice, sender);

View File

@ -24,8 +24,7 @@ fn check_balance(expected_balance: u64, client: &RpcClient, params: Value) {
#[test] #[test]
fn test_wallet_timestamp_tx() { fn test_wallet_timestamp_tx() {
let (server, leader_data, _genesis_block, alice, ledger_path) = let (server, leader_data, alice, ledger_path) = new_fullnode("test_wallet_timestamp_tx");
new_fullnode("test_wallet_timestamp_tx");
let bob_pubkey = Keypair::new().pubkey(); let bob_pubkey = Keypair::new().pubkey();
let (sender, receiver) = channel(); let (sender, receiver) = channel();
@ -92,8 +91,7 @@ fn test_wallet_timestamp_tx() {
#[test] #[test]
fn test_wallet_witness_tx() { fn test_wallet_witness_tx() {
let (server, leader_data, _genesis_block, alice, ledger_path) = let (server, leader_data, alice, ledger_path) = new_fullnode("test_wallet_witness_tx");
new_fullnode("test_wallet_witness_tx");
let bob_pubkey = Keypair::new().pubkey(); let bob_pubkey = Keypair::new().pubkey();
let (sender, receiver) = channel(); let (sender, receiver) = channel();
@ -156,8 +154,7 @@ fn test_wallet_witness_tx() {
#[test] #[test]
fn test_wallet_cancel_tx() { fn test_wallet_cancel_tx() {
let (server, leader_data, _genesis_block, alice, ledger_path) = let (server, leader_data, alice, ledger_path) = new_fullnode("test_wallet_cancel_tx");
new_fullnode("test_wallet_cancel_tx");
let bob_pubkey = Keypair::new().pubkey(); let bob_pubkey = Keypair::new().pubkey();
let (sender, receiver) = channel(); let (sender, receiver) = channel();

View File

@ -9,8 +9,7 @@ use std::sync::mpsc::channel;
#[test] #[test]
fn test_wallet_request_airdrop() { fn test_wallet_request_airdrop() {
let (server, leader_data, _genesis_block, alice, ledger_path) = let (server, leader_data, alice, ledger_path) = new_fullnode("test_wallet_request_airdrop");
new_fullnode("test_wallet_request_airdrop");
let (sender, receiver) = channel(); let (sender, receiver) = channel();
run_local_drone(alice, sender); run_local_drone(alice, sender);