diff --git a/.gitignore b/.gitignore index 4469471..4269823 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /target cargotest.toml *.db +report.csv diff --git a/crates/cli/src/commands/report.rs b/crates/cli/src/commands/report.rs index 37b02f4..73a29a8 100644 --- a/crates/cli/src/commands/report.rs +++ b/crates/cli/src/commands/report.rs @@ -33,10 +33,20 @@ pub fn report( let mut writer = WriterBuilder::new().has_headers(true).from_path(out_file)?; write_run_txs(&mut writer, &txs)?; } else { + // print to stdout and write to default file let mut writer = WriterBuilder::new() .has_headers(true) .from_writer(std::io::stdout()); write_run_txs(&mut writer, &txs)?; // TODO: write a macro that lets us generalize the writer param to write_run_txs, then refactor this duplication + let home_dir = std::env::var("HOME").expect("Could not get home directory"); + let contender_dir = format!("{}/.contender", home_dir); + std::fs::create_dir_all(&contender_dir)?; + let report_path = format!("{}/report.csv", contender_dir); + let mut writer = WriterBuilder::new() + .has_headers(true) + .from_path(&report_path)?; + write_run_txs(&mut writer, &txs)?; + println!("saved report to {}", report_path); }; Ok(()) diff --git a/crates/cli/src/main.rs b/crates/cli/src/main.rs index 5ac088d..869cd51 100644 --- a/crates/cli/src/main.rs +++ b/crates/cli/src/main.rs @@ -9,7 +9,15 @@ use contender_core::{db::DbOps, generator::RandSeed}; use contender_sqlite::SqliteDb; static DB: LazyLock = std::sync::LazyLock::new(|| { - SqliteDb::from_file("contender.db").expect("failed to open contender.db") + let path = &format!( + "{}{}", + std::env::var("HOME").unwrap(), + "/.contender/contender.db" + ); + println!("opening DB at {}", path); + std::fs::create_dir_all(std::env::var("HOME").unwrap() + "/.contender") + .expect("failed to create ~/.contender directory"); + SqliteDb::from_file(path).expect("failed to open contender DB file") }); #[tokio::main] diff --git a/crates/core/src/spammer/tx_actor.rs b/crates/core/src/spammer/tx_actor.rs index 35d3b87..6f89488 100644 --- a/crates/core/src/spammer/tx_actor.rs +++ b/crates/core/src/spammer/tx_actor.rs @@ -165,7 +165,7 @@ where } RunTx { tx_hash: pending_tx.tx_hash, - start_timestamp: pending_tx.start_timestamp, + start_timestamp: pending_tx.start_timestamp / 1000, end_timestamp: target_block.header.timestamp as usize, block_number: target_block.header.number, gas_used: receipt.gas_used,