1#![doc(
4 html_logo_url = "https://raw.githubusercontent.com/paradigmxyz/reth/main/assets/reth-docs.png",
5 html_favicon_url = "https://avatars0.githubusercontent.com/u/97369466?s=256",
6 issue_tracker_base_url = "https://github.com/paradigmxyz/reth/issues/"
7)]
8#![cfg_attr(not(test), warn(unused_crate_dependencies))]
9#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))]
10
11pub mod chainspec;
13pub mod interface;
14pub use interface::Cli;
15
16#[cfg(test)]
17mod test {
18 use crate::chainspec::EthereumChainSpecParser;
19 use clap::Parser;
20 use reth_chainspec::DEV;
21 use reth_cli_commands::NodeCommand;
22
23 #[test]
24 #[ignore = "reth cmd will print op-reth output if optimism feature enabled"]
25 fn parse_dev() {
26 let cmd: NodeCommand<EthereumChainSpecParser> = NodeCommand::parse_from(["reth", "--dev"]);
27 let chain = DEV.clone();
28 assert_eq!(cmd.chain.chain, chain.chain);
29 assert_eq!(cmd.chain.genesis_hash(), chain.genesis_hash());
30 assert_eq!(
31 cmd.chain.paris_block_and_final_difficulty,
32 chain.paris_block_and_final_difficulty
33 );
34 assert_eq!(cmd.chain.hardforks, chain.hardforks);
35
36 assert!(cmd.rpc.http);
37 assert!(cmd.network.discovery.disable_discovery);
38
39 assert!(cmd.dev.dev);
40 }
41}