Move test-validator to own module to reduce core dependencies (#20658)
* Move test-validator to own module to reduce core dependencies * Fix a few TestValidator paths * Use solana_test_validator crate for solana_test_validator bin * Move client int tests to separate crate Co-authored-by: Tyera Eulberg <tyera@solana.com>
This commit is contained in:
parent
e16c060abf
commit
a8d78e89d3
|
@ -4566,12 +4566,12 @@ dependencies = [
|
||||||
"solana-cli-output",
|
"solana-cli-output",
|
||||||
"solana-client",
|
"solana-client",
|
||||||
"solana-config-program",
|
"solana-config-program",
|
||||||
"solana-core",
|
|
||||||
"solana-faucet",
|
"solana-faucet",
|
||||||
"solana-logger 1.9.0",
|
"solana-logger 1.9.0",
|
||||||
"solana-remote-wallet",
|
"solana-remote-wallet",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-streamer",
|
"solana-streamer",
|
||||||
|
"solana-test-validator",
|
||||||
"solana-transaction-status",
|
"solana-transaction-status",
|
||||||
"solana-version",
|
"solana-version",
|
||||||
"solana-vote-program",
|
"solana-vote-program",
|
||||||
|
@ -4651,6 +4651,26 @@ dependencies = [
|
||||||
"url 2.2.2",
|
"url 2.2.2",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "solana-client-test"
|
||||||
|
version = "1.9.0"
|
||||||
|
dependencies = [
|
||||||
|
"solana-client",
|
||||||
|
"solana-logger 1.9.0",
|
||||||
|
"solana-measure",
|
||||||
|
"solana-merkle-tree",
|
||||||
|
"solana-metrics",
|
||||||
|
"solana-perf",
|
||||||
|
"solana-rayon-threadlimit",
|
||||||
|
"solana-rpc",
|
||||||
|
"solana-runtime",
|
||||||
|
"solana-sdk",
|
||||||
|
"solana-streamer",
|
||||||
|
"solana-test-validator",
|
||||||
|
"solana-version",
|
||||||
|
"systemstat",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-compute-budget-program"
|
name = "solana-compute-budget-program"
|
||||||
version = "1.9.0"
|
version = "1.9.0"
|
||||||
|
@ -4703,10 +4723,8 @@ dependencies = [
|
||||||
"serde_derive",
|
"serde_derive",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
"serial_test",
|
"serial_test",
|
||||||
"solana-account-decoder",
|
|
||||||
"solana-accountsdb-plugin-manager",
|
"solana-accountsdb-plugin-manager",
|
||||||
"solana-client",
|
"solana-client",
|
||||||
"solana-config-program",
|
|
||||||
"solana-entry",
|
"solana-entry",
|
||||||
"solana-frozen-abi 1.9.0",
|
"solana-frozen-abi 1.9.0",
|
||||||
"solana-frozen-abi-macro 1.9.0",
|
"solana-frozen-abi-macro 1.9.0",
|
||||||
|
@ -4719,7 +4737,6 @@ dependencies = [
|
||||||
"solana-perf",
|
"solana-perf",
|
||||||
"solana-poh",
|
"solana-poh",
|
||||||
"solana-program-runtime",
|
"solana-program-runtime",
|
||||||
"solana-program-test",
|
|
||||||
"solana-rayon-threadlimit",
|
"solana-rayon-threadlimit",
|
||||||
"solana-replica-lib",
|
"solana-replica-lib",
|
||||||
"solana-rpc",
|
"solana-rpc",
|
||||||
|
@ -5545,6 +5562,29 @@ dependencies = [
|
||||||
"tokio-util",
|
"tokio-util",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "solana-rpc-test"
|
||||||
|
version = "1.9.0"
|
||||||
|
dependencies = [
|
||||||
|
"bincode",
|
||||||
|
"bs58 0.4.0",
|
||||||
|
"jsonrpc-core",
|
||||||
|
"jsonrpc-core-client",
|
||||||
|
"log 0.4.14",
|
||||||
|
"reqwest",
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
"solana-account-decoder",
|
||||||
|
"solana-client",
|
||||||
|
"solana-logger 1.9.0",
|
||||||
|
"solana-rpc",
|
||||||
|
"solana-sdk",
|
||||||
|
"solana-streamer",
|
||||||
|
"solana-test-validator",
|
||||||
|
"solana-transaction-status",
|
||||||
|
"tokio",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-runtime"
|
name = "solana-runtime"
|
||||||
version = "1.9.0"
|
version = "1.9.0"
|
||||||
|
@ -5795,6 +5835,25 @@ dependencies = [
|
||||||
"users",
|
"users",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "solana-test-validator"
|
||||||
|
version = "1.9.0"
|
||||||
|
dependencies = [
|
||||||
|
"base64 0.12.3",
|
||||||
|
"log 0.4.14",
|
||||||
|
"solana-client",
|
||||||
|
"solana-core",
|
||||||
|
"solana-gossip",
|
||||||
|
"solana-ledger",
|
||||||
|
"solana-logger 1.9.0",
|
||||||
|
"solana-net-utils",
|
||||||
|
"solana-program-test",
|
||||||
|
"solana-rpc",
|
||||||
|
"solana-runtime",
|
||||||
|
"solana-sdk",
|
||||||
|
"solana-streamer",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "solana-tokens"
|
name = "solana-tokens"
|
||||||
version = "1.9.0"
|
version = "1.9.0"
|
||||||
|
@ -5813,11 +5872,11 @@ dependencies = [
|
||||||
"solana-clap-utils",
|
"solana-clap-utils",
|
||||||
"solana-cli-config",
|
"solana-cli-config",
|
||||||
"solana-client",
|
"solana-client",
|
||||||
"solana-core",
|
|
||||||
"solana-logger 1.9.0",
|
"solana-logger 1.9.0",
|
||||||
"solana-remote-wallet",
|
"solana-remote-wallet",
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-streamer",
|
"solana-streamer",
|
||||||
|
"solana-test-validator",
|
||||||
"solana-transaction-status",
|
"solana-transaction-status",
|
||||||
"solana-version",
|
"solana-version",
|
||||||
"spl-associated-token-account",
|
"spl-associated-token-account",
|
||||||
|
@ -5900,6 +5959,7 @@ dependencies = [
|
||||||
"solana-sdk",
|
"solana-sdk",
|
||||||
"solana-send-transaction-service",
|
"solana-send-transaction-service",
|
||||||
"solana-streamer",
|
"solana-streamer",
|
||||||
|
"solana-test-validator",
|
||||||
"solana-version",
|
"solana-version",
|
||||||
"solana-vote-program",
|
"solana-vote-program",
|
||||||
"symlink",
|
"symlink",
|
||||||
|
|
|
@ -73,6 +73,9 @@ members = [
|
||||||
"watchtower",
|
"watchtower",
|
||||||
"replica-node",
|
"replica-node",
|
||||||
"replica-lib",
|
"replica-lib",
|
||||||
|
"test-validator",
|
||||||
|
"rpc-test",
|
||||||
|
"client-test",
|
||||||
]
|
]
|
||||||
|
|
||||||
exclude = [
|
exclude = [
|
||||||
|
|
|
@ -46,8 +46,8 @@ thiserror = "1.0.30"
|
||||||
tiny-bip39 = "0.8.2"
|
tiny-bip39 = "0.8.2"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
solana-core = { path = "../core", version = "=1.9.0" }
|
|
||||||
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
||||||
|
solana-test-validator = { path = "../test-validator", version = "=1.9.0" }
|
||||||
tempfile = "3.2.0"
|
tempfile = "3.2.0"
|
||||||
|
|
||||||
[[bin]]
|
[[bin]]
|
||||||
|
|
|
@ -9,7 +9,6 @@ use solana_client::{
|
||||||
nonce_utils,
|
nonce_utils,
|
||||||
rpc_client::RpcClient,
|
rpc_client::RpcClient,
|
||||||
};
|
};
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_faucet::faucet::run_local_faucet;
|
use solana_faucet::faucet::run_local_faucet;
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
commitment_config::CommitmentConfig,
|
commitment_config::CommitmentConfig,
|
||||||
|
@ -19,6 +18,7 @@ use solana_sdk::{
|
||||||
system_program,
|
system_program,
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_nonce() {
|
fn test_nonce() {
|
||||||
|
|
|
@ -5,7 +5,6 @@ use solana_cli::{
|
||||||
};
|
};
|
||||||
use solana_cli_output::OutputFormat;
|
use solana_cli_output::OutputFormat;
|
||||||
use solana_client::rpc_client::RpcClient;
|
use solana_client::rpc_client::RpcClient;
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_faucet::faucet::run_local_faucet;
|
use solana_faucet::faucet::run_local_faucet;
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
account_utils::StateMut,
|
account_utils::StateMut,
|
||||||
|
@ -16,6 +15,7 @@ use solana_sdk::{
|
||||||
signature::{Keypair, Signer},
|
signature::{Keypair, Signer},
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
use std::{env, fs::File, io::Read, path::PathBuf, str::FromStr};
|
use std::{env, fs::File, io::Read, path::PathBuf, str::FromStr};
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
use solana_cli::cli::{process_command, CliCommand, CliConfig};
|
use solana_cli::cli::{process_command, CliCommand, CliConfig};
|
||||||
use solana_client::rpc_client::RpcClient;
|
use solana_client::rpc_client::RpcClient;
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_faucet::faucet::run_local_faucet;
|
use solana_faucet::faucet::run_local_faucet;
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
commitment_config::CommitmentConfig,
|
commitment_config::CommitmentConfig,
|
||||||
signature::{Keypair, Signer},
|
signature::{Keypair, Signer},
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_cli_request_airdrop() {
|
fn test_cli_request_airdrop() {
|
||||||
|
|
|
@ -11,7 +11,6 @@ use solana_client::{
|
||||||
nonce_utils,
|
nonce_utils,
|
||||||
rpc_client::RpcClient,
|
rpc_client::RpcClient,
|
||||||
};
|
};
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_faucet::faucet::run_local_faucet;
|
use solana_faucet::faucet::run_local_faucet;
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
account_utils::StateMut,
|
account_utils::StateMut,
|
||||||
|
@ -26,6 +25,7 @@ use solana_sdk::{
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_stake_delegation_force() {
|
fn test_stake_delegation_force() {
|
||||||
|
|
|
@ -10,7 +10,6 @@ use solana_client::{
|
||||||
nonce_utils,
|
nonce_utils,
|
||||||
rpc_client::RpcClient,
|
rpc_client::RpcClient,
|
||||||
};
|
};
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_faucet::faucet::run_local_faucet;
|
use solana_faucet::faucet::run_local_faucet;
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
commitment_config::CommitmentConfig,
|
commitment_config::CommitmentConfig,
|
||||||
|
@ -20,6 +19,7 @@ use solana_sdk::{
|
||||||
stake,
|
stake,
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_transfer() {
|
fn test_transfer() {
|
||||||
|
|
|
@ -7,7 +7,6 @@ use solana_client::{
|
||||||
blockhash_query::{self, BlockhashQuery},
|
blockhash_query::{self, BlockhashQuery},
|
||||||
rpc_client::RpcClient,
|
rpc_client::RpcClient,
|
||||||
};
|
};
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_faucet::faucet::run_local_faucet;
|
use solana_faucet::faucet::run_local_faucet;
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
account_utils::StateMut,
|
account_utils::StateMut,
|
||||||
|
@ -15,6 +14,7 @@ use solana_sdk::{
|
||||||
signature::{Keypair, Signer},
|
signature::{Keypair, Signer},
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
use solana_vote_program::vote_state::{VoteAuthorize, VoteState, VoteStateVersions};
|
use solana_vote_program::vote_state::{VoteAuthorize, VoteState, VoteStateVersions};
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
[package]
|
||||||
|
name = "solana-client-test"
|
||||||
|
version = "1.9.0"
|
||||||
|
description = "Solana RPC Test"
|
||||||
|
authors = ["Solana Maintainers <maintainers@solana.foundation>"]
|
||||||
|
repository = "https://github.com/solana-labs/solana"
|
||||||
|
license = "Apache-2.0"
|
||||||
|
homepage = "https://solana.com/"
|
||||||
|
documentation = "https://docs.rs/solana-client-test"
|
||||||
|
edition = "2018"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
solana-client = { path = "../client", version = "=1.9.0" }
|
||||||
|
solana-measure = { path = "../measure", version = "=1.9.0" }
|
||||||
|
solana-merkle-tree = { path = "../merkle-tree", version = "=1.9.0" }
|
||||||
|
solana-metrics = { path = "../metrics", version = "=1.9.0" }
|
||||||
|
solana-perf = { path = "../perf", version = "=1.9.0" }
|
||||||
|
solana-rayon-threadlimit = { path = "../rayon-threadlimit", version = "=1.9.0" }
|
||||||
|
solana-rpc = { path = "../rpc", version = "=1.9.0" }
|
||||||
|
solana-runtime = { path = "../runtime", version = "=1.9.0" }
|
||||||
|
solana-sdk = { path = "../sdk", version = "=1.9.0" }
|
||||||
|
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
||||||
|
solana-test-validator = { path = "../test-validator", version = "=1.9.0" }
|
||||||
|
solana-version = { path = "../version", version = "=1.9.0" }
|
||||||
|
systemstat = "0.1.10"
|
||||||
|
|
||||||
|
[dev-dependencies]
|
||||||
|
solana-logger = { path = "../logger", version = "=1.9.0" }
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
crate-type = ["lib"]
|
||||||
|
name = "solana_entry"
|
||||||
|
|
||||||
|
[package.metadata.docs.rs]
|
||||||
|
targets = ["x86_64-unknown-linux-gnu"]
|
|
@ -0,0 +1 @@
|
||||||
|
// This is a test-only crate
|
|
@ -1,5 +1,4 @@
|
||||||
use solana_client::{pubsub_client::PubsubClient, rpc_client::RpcClient, rpc_response::SlotInfo};
|
use solana_client::{pubsub_client::PubsubClient, rpc_client::RpcClient, rpc_response::SlotInfo};
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_rpc::{
|
use solana_rpc::{
|
||||||
optimistically_confirmed_bank_tracker::OptimisticallyConfirmedBank,
|
optimistically_confirmed_bank_tracker::OptimisticallyConfirmedBank,
|
||||||
rpc_pubsub_service::{PubSubConfig, PubSubService},
|
rpc_pubsub_service::{PubSubConfig, PubSubService},
|
||||||
|
@ -19,6 +18,7 @@ use solana_sdk::{
|
||||||
system_transaction,
|
system_transaction,
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
use std::{
|
use std::{
|
||||||
net::{IpAddr, SocketAddr},
|
net::{IpAddr, SocketAddr},
|
||||||
sync::{
|
sync::{
|
|
@ -34,10 +34,8 @@ rayon = "1.5.1"
|
||||||
retain_mut = "0.1.4"
|
retain_mut = "0.1.4"
|
||||||
serde = "1.0.130"
|
serde = "1.0.130"
|
||||||
serde_derive = "1.0.103"
|
serde_derive = "1.0.103"
|
||||||
solana-account-decoder = { path = "../account-decoder", version = "=1.9.0" }
|
|
||||||
solana-accountsdb-plugin-manager = { path = "../accountsdb-plugin-manager", version = "=1.9.0" }
|
solana-accountsdb-plugin-manager = { path = "../accountsdb-plugin-manager", version = "=1.9.0" }
|
||||||
solana-client = { path = "../client", version = "=1.9.0" }
|
solana-client = { path = "../client", version = "=1.9.0" }
|
||||||
solana-config-program = { path = "../programs/config", version = "=1.9.0" }
|
|
||||||
solana-entry = { path = "../entry", version = "=1.9.0" }
|
solana-entry = { path = "../entry", version = "=1.9.0" }
|
||||||
solana-gossip = { path = "../gossip", version = "=1.9.0" }
|
solana-gossip = { path = "../gossip", version = "=1.9.0" }
|
||||||
solana-ledger = { path = "../ledger", version = "=1.9.0" }
|
solana-ledger = { path = "../ledger", version = "=1.9.0" }
|
||||||
|
@ -47,7 +45,6 @@ solana-metrics = { path = "../metrics", version = "=1.9.0" }
|
||||||
solana-net-utils = { path = "../net-utils", version = "=1.9.0" }
|
solana-net-utils = { path = "../net-utils", version = "=1.9.0" }
|
||||||
solana-perf = { path = "../perf", version = "=1.9.0" }
|
solana-perf = { path = "../perf", version = "=1.9.0" }
|
||||||
solana-poh = { path = "../poh", version = "=1.9.0" }
|
solana-poh = { path = "../poh", version = "=1.9.0" }
|
||||||
solana-program-test = { path = "../program-test", version = "=1.9.0" }
|
|
||||||
solana-rpc = { path = "../rpc", version = "=1.9.0" }
|
solana-rpc = { path = "../rpc", version = "=1.9.0" }
|
||||||
solana-replica-lib = { path = "../replica-lib", version = "=1.9.0" }
|
solana-replica-lib = { path = "../replica-lib", version = "=1.9.0" }
|
||||||
solana-runtime = { path = "../runtime", version = "=1.9.0" }
|
solana-runtime = { path = "../runtime", version = "=1.9.0" }
|
||||||
|
|
|
@ -50,7 +50,6 @@ pub mod sigverify_shreds;
|
||||||
pub mod sigverify_stage;
|
pub mod sigverify_stage;
|
||||||
pub mod snapshot_packager_service;
|
pub mod snapshot_packager_service;
|
||||||
pub mod system_monitor_service;
|
pub mod system_monitor_service;
|
||||||
pub mod test_validator;
|
|
||||||
pub mod tower_storage;
|
pub mod tower_storage;
|
||||||
pub mod tpu;
|
pub mod tpu;
|
||||||
pub mod tree_diff;
|
pub mod tree_diff;
|
||||||
|
|
|
@ -292,7 +292,7 @@ pub struct Validator {
|
||||||
}
|
}
|
||||||
|
|
||||||
// in the distant future, get rid of ::new()/exit() and use Result properly...
|
// in the distant future, get rid of ::new()/exit() and use Result properly...
|
||||||
pub(crate) fn abort() -> ! {
|
pub fn abort() -> ! {
|
||||||
#[cfg(not(test))]
|
#[cfg(not(test))]
|
||||||
{
|
{
|
||||||
// standard error is usually redirected to a log file, cry for help on standard output as
|
// standard error is usually redirected to a log file, cry for help on standard output as
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
[package]
|
||||||
|
name = "solana-rpc-test"
|
||||||
|
version = "1.9.0"
|
||||||
|
description = "Solana RPC Test"
|
||||||
|
authors = ["Solana Maintainers <maintainers@solana.foundation>"]
|
||||||
|
repository = "https://github.com/solana-labs/solana"
|
||||||
|
license = "Apache-2.0"
|
||||||
|
homepage = "https://solana.com/"
|
||||||
|
documentation = "https://docs.rs/solana-rpc-test"
|
||||||
|
edition = "2018"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
bincode = "1.3.3"
|
||||||
|
bs58 = "0.4.0"
|
||||||
|
jsonrpc-core = "18.0.0"
|
||||||
|
jsonrpc-core-client = { version = "18.0.0", features = ["ipc", "ws"] }
|
||||||
|
log = "0.4.11"
|
||||||
|
reqwest = { version = "0.11.5", default-features = false, features = ["blocking", "rustls-tls", "json"] }
|
||||||
|
serde = "1.0.130"
|
||||||
|
serde_json = "1.0.68"
|
||||||
|
solana-account-decoder = { path = "../account-decoder", version = "=1.9.0" }
|
||||||
|
solana-client = { path = "../client", version = "=1.9.0" }
|
||||||
|
solana-rpc = { path = "../rpc", version = "=1.9.0" }
|
||||||
|
solana-sdk = { path = "../sdk", version = "=1.9.0" }
|
||||||
|
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
||||||
|
solana-test-validator = { path = "../test-validator", version = "=1.9.0" }
|
||||||
|
solana-transaction-status = { path = "../transaction-status", version = "=1.9.0" }
|
||||||
|
tokio = { version = "1", features = ["full"] }
|
||||||
|
|
||||||
|
[dev-dependencies]
|
||||||
|
solana-logger = { path = "../logger", version = "=1.9.0" }
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
crate-type = ["lib"]
|
||||||
|
name = "solana_entry"
|
||||||
|
|
||||||
|
[package.metadata.docs.rs]
|
||||||
|
targets = ["x86_64-unknown-linux-gnu"]
|
|
@ -0,0 +1 @@
|
||||||
|
// This is a test-only crate
|
|
@ -14,8 +14,8 @@ use solana_client::{
|
||||||
rpc_response::{Response as RpcResponse, RpcSignatureResult, SlotUpdate},
|
rpc_response::{Response as RpcResponse, RpcSignatureResult, SlotUpdate},
|
||||||
tpu_client::{TpuClient, TpuClientConfig},
|
tpu_client::{TpuClient, TpuClientConfig},
|
||||||
};
|
};
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_rpc::rpc_pubsub::gen_client::Client as PubsubClient;
|
use solana_rpc::rpc_pubsub::gen_client::Client as PubsubClient;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
|
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
commitment_config::CommitmentConfig,
|
commitment_config::CommitmentConfig,
|
|
@ -0,0 +1,29 @@
|
||||||
|
[package]
|
||||||
|
name = "solana-test-validator"
|
||||||
|
description = "Blockchain, Rebuilt for Scale"
|
||||||
|
version = "1.9.0"
|
||||||
|
homepage = "https://solana.com/"
|
||||||
|
documentation = "https://docs.rs/solana-test-validator"
|
||||||
|
readme = "../README.md"
|
||||||
|
repository = "https://github.com/solana-labs/solana"
|
||||||
|
authors = ["Solana Maintainers <maintainers@solana.foundation>"]
|
||||||
|
license = "Apache-2.0"
|
||||||
|
edition = "2018"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
base64 = "0.12.3"
|
||||||
|
log = "0.4.14"
|
||||||
|
solana-client = { path = "../client", version = "=1.9.0" }
|
||||||
|
solana-core = { path = "../core", version = "=1.9.0" }
|
||||||
|
solana-gossip = { path = "../gossip", version = "=1.9.0" }
|
||||||
|
solana-ledger = { path = "../ledger", version = "=1.9.0" }
|
||||||
|
solana-logger = { path = "../logger", version = "=1.9.0" }
|
||||||
|
solana-net-utils = { path = "../net-utils", version = "=1.9.0" }
|
||||||
|
solana-program-test = { path = "../program-test", version = "=1.9.0" }
|
||||||
|
solana-rpc = { path = "../rpc", version = "=1.9.0" }
|
||||||
|
solana-runtime = { path = "../runtime", version = "=1.9.0" }
|
||||||
|
solana-sdk = { path = "../sdk", version = "=1.9.0" }
|
||||||
|
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
||||||
|
|
||||||
|
[package.metadata.docs.rs]
|
||||||
|
targets = ["x86_64-unknown-linux-gnu"]
|
|
@ -1,9 +1,11 @@
|
||||||
|
#![allow(clippy::integer_arithmetic)]
|
||||||
use {
|
use {
|
||||||
crate::{
|
log::*,
|
||||||
|
solana_client::rpc_client::RpcClient,
|
||||||
|
solana_core::{
|
||||||
tower_storage::TowerStorage,
|
tower_storage::TowerStorage,
|
||||||
validator::{Validator, ValidatorConfig, ValidatorStartProgress},
|
validator::{Validator, ValidatorConfig, ValidatorStartProgress},
|
||||||
},
|
},
|
||||||
solana_client::rpc_client::RpcClient,
|
|
||||||
solana_gossip::{
|
solana_gossip::{
|
||||||
cluster_info::{ClusterInfo, Node},
|
cluster_info::{ClusterInfo, Node},
|
||||||
gossip_service::discover_cluster,
|
gossip_service::discover_cluster,
|
||||||
|
@ -193,7 +195,7 @@ impl TestValidatorGenesis {
|
||||||
info!("Fetching {} over RPC...", address);
|
info!("Fetching {} over RPC...", address);
|
||||||
let account = rpc_client.get_account(&address).unwrap_or_else(|err| {
|
let account = rpc_client.get_account(&address).unwrap_or_else(|err| {
|
||||||
error!("Failed to fetch {}: {}", address, err);
|
error!("Failed to fetch {}: {}", address, err);
|
||||||
crate::validator::abort();
|
solana_core::validator::abort();
|
||||||
});
|
});
|
||||||
self.add_account(address, AccountSharedData::from(account));
|
self.add_account(address, AccountSharedData::from(account));
|
||||||
}
|
}
|
|
@ -34,6 +34,6 @@ thiserror = "1.0"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
bincode = "1.3.3"
|
bincode = "1.3.3"
|
||||||
solana-core = { path = "../core", version = "=1.9.0" }
|
|
||||||
solana-logger = { path = "../logger", version = "=1.9.0" }
|
solana-logger = { path = "../logger", version = "=1.9.0" }
|
||||||
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
||||||
|
solana-test-validator = { path = "../test-validator", version = "=1.9.0" }
|
||||||
|
|
|
@ -1200,13 +1200,13 @@ pub fn test_process_distribute_stake_with_client(client: &RpcClient, sender_keyp
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::*;
|
use super::*;
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_sdk::{
|
use solana_sdk::{
|
||||||
instruction::AccountMeta,
|
instruction::AccountMeta,
|
||||||
signature::{read_keypair_file, write_keypair_file, Signer},
|
signature::{read_keypair_file, write_keypair_file, Signer},
|
||||||
stake::instruction::StakeInstruction,
|
stake::instruction::StakeInstruction,
|
||||||
};
|
};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
use solana_transaction_status::TransactionConfirmationStatus;
|
use solana_transaction_status::TransactionConfirmationStatus;
|
||||||
|
|
||||||
fn one_signer_message() -> Message {
|
fn one_signer_message() -> Message {
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use solana_client::rpc_client::RpcClient;
|
use solana_client::rpc_client::RpcClient;
|
||||||
use solana_core::test_validator::TestValidator;
|
|
||||||
use solana_sdk::signature::{Keypair, Signer};
|
use solana_sdk::signature::{Keypair, Signer};
|
||||||
use solana_streamer::socket::SocketAddrSpace;
|
use solana_streamer::socket::SocketAddrSpace;
|
||||||
|
use solana_test_validator::TestValidator;
|
||||||
use solana_tokens::commands::test_process_distribute_tokens_with_client;
|
use solana_tokens::commands::test_process_distribute_tokens_with_client;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
|
|
@ -46,6 +46,7 @@ solana-runtime = { path = "../runtime", version = "=1.9.0" }
|
||||||
solana-sdk = { path = "../sdk", version = "=1.9.0" }
|
solana-sdk = { path = "../sdk", version = "=1.9.0" }
|
||||||
solana-send-transaction-service = { path = "../send-transaction-service", version = "=1.9.0" }
|
solana-send-transaction-service = { path = "../send-transaction-service", version = "=1.9.0" }
|
||||||
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
solana-streamer = { path = "../streamer", version = "=1.9.0" }
|
||||||
|
solana-test-validator = { path = "../test-validator", version = "=1.9.0" }
|
||||||
solana-version = { path = "../version", version = "=1.9.0" }
|
solana-version = { path = "../version", version = "=1.9.0" }
|
||||||
solana-vote-program = { path = "../programs/vote", version = "=1.9.0" }
|
solana-vote-program = { path = "../programs/vote", version = "=1.9.0" }
|
||||||
symlink = "0.1.0"
|
symlink = "0.1.0"
|
||||||
|
|
|
@ -26,7 +26,7 @@ use {
|
||||||
solana_streamer::socket::SocketAddrSpace,
|
solana_streamer::socket::SocketAddrSpace,
|
||||||
solana_validator::{
|
solana_validator::{
|
||||||
admin_rpc_service, dashboard::Dashboard, ledger_lockfile, lock_ledger, println_name_value,
|
admin_rpc_service, dashboard::Dashboard, ledger_lockfile, lock_ledger, println_name_value,
|
||||||
redirect_stderr_to_file, test_validator::*,
|
redirect_stderr_to_file, solana_test_validator::*,
|
||||||
},
|
},
|
||||||
std::{
|
std::{
|
||||||
collections::HashSet,
|
collections::HashSet,
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#![allow(clippy::integer_arithmetic)]
|
#![allow(clippy::integer_arithmetic)]
|
||||||
pub use solana_core::test_validator;
|
|
||||||
pub use solana_gossip::cluster_info::MINIMUM_VALIDATOR_PORT_RANGE_WIDTH;
|
pub use solana_gossip::cluster_info::MINIMUM_VALIDATOR_PORT_RANGE_WIDTH;
|
||||||
|
pub use solana_test_validator;
|
||||||
use {
|
use {
|
||||||
console::style,
|
console::style,
|
||||||
fd_lock::{RwLock, RwLockWriteGuard},
|
fd_lock::{RwLock, RwLockWriteGuard},
|
||||||
|
|
Loading…
Reference in New Issue