diff --git a/.gitignore b/.gitignore index ea8c4bf..218f39f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /target +/coba.txt \ No newline at end of file diff --git a/Cargo.toml b/Cargo.toml index 2762a51..0d95386 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,6 +5,19 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html +[[bin]] +name = "wmtest-helper-dummy" +path = "src/bin/test-helper/dummy.rs" + +[[bin]] +name = "wmtest-helper-spawner" +path = "src/bin/test-helper/spawner.rs" + +[[bin]] +name = "wmtest-helper-log" +path = "src/bin/test-helper/log.rs" + + [dependencies] anyhow = "1.0.75" lazy_static = "1.4.0" diff --git a/src/bin/test-helper/dummy.rs b/src/bin/test-helper/dummy.rs new file mode 100644 index 0000000..e070065 --- /dev/null +++ b/src/bin/test-helper/dummy.rs @@ -0,0 +1,15 @@ +use std::{env, thread, time}; + + +fn main() -> Result<(), Box> { + let myi: u64; + let args: Vec = env::args().collect(); + if args.len() > 1 { + myi = args[1].parse().unwrap(); + thread::sleep(time::Duration::from_secs(myi)); + } else { + return Err(anyhow::anyhow!("invalid arguments").into()); + } + + Ok(()) +} diff --git a/src/bin/test-helper/log.rs b/src/bin/test-helper/log.rs new file mode 100644 index 0000000..d11ea80 --- /dev/null +++ b/src/bin/test-helper/log.rs @@ -0,0 +1,19 @@ +use std::env; +use std::fs; +use std::io; +use std::io::Write; +use time::OffsetDateTime; + +fn main() -> Result<(), Box> { + let args: Vec = env::args().collect(); + + if args.len() == 3 { + let file = fs::OpenOptions::new().create(true).append(true).open(&args[1])?; + let mut buf = io::BufWriter::new(file); + let local_time = OffsetDateTime::now_local()?; + buf.write_all(format!("{} {}\n", local_time, &args[2]).as_bytes())?; + } else { + return Err(anyhow::anyhow!("invalid argument").into()); + } + Ok(()) +} \ No newline at end of file diff --git a/src/bin/test-helper/spawner.rs b/src/bin/test-helper/spawner.rs new file mode 100644 index 0000000..c641793 --- /dev/null +++ b/src/bin/test-helper/spawner.rs @@ -0,0 +1,17 @@ +use std::error::Error; +use std::process::Command; +use std::env; + +fn main() -> Result<(), Box> { + let args: Vec = env::args().collect(); + if args.len() > 1 { + let x: u64 = args[1].parse()?; + for _i in 0..x { + // println!("spawning {}", _i); + Command::new("/usr/local/bin/dummy").arg("10").spawn()?; + } + } else { + return Err(anyhow::anyhow!("invalid arguments").into()); + } + Ok(()) +} diff --git a/src/init/error.rs b/src/init/error.rs index 2634896..67b5de7 100644 --- a/src/init/error.rs +++ b/src/init/error.rs @@ -75,14 +75,11 @@ pub enum CronConfigError { #[error("setting day of week and day of month at the same time will lead to unexpected behavior")] ClashingConfig, - #[error("when setting time for higher order, the smallest (minute) muste be set")] - MissingMinute, - - #[error("something went wrong")] - Other { - #[source] - source: anyhow::Error, - } + // #[error("something went wrong")] + // Other { + // #[source] + // source: anyhow::Error, + // } } #[derive(Error,Debug)] diff --git a/src/bin/init.rs b/src/main.rs similarity index 89% rename from src/bin/init.rs rename to src/main.rs index e6a44b9..7fc0b50 100644 --- a/src/bin/init.rs +++ b/src/main.rs @@ -1,6 +1,6 @@ +mod init; use std::error; -use wingmate_rs::init; #[tokio::main] async fn main() -> Result<(), Box> {