use super::Msg;
use std::path::PathBuf;
use std::time::Duration;
#[derive(Debug, Clone)]
pub enum Effect {
SpawnScan {
parent_label: String,
parent_path: PathBuf,
},
SpawnRefresh { path: PathBuf },
SpawnDelete {
items: Vec<(usize, PathBuf, u64)>,
dry_run: bool,
},
EmitAfter { dur: Duration, msg: Msg },
LoadSeeds { seeds: Vec<PathBuf> },
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn variants_construct() {
let _ = Effect::SpawnScan {
parent_label: "x".into(),
parent_path: PathBuf::from("/x"),
};
let _ = Effect::SpawnRefresh {
path: PathBuf::from("/x"),
};
let _ = Effect::SpawnDelete {
items: vec![],
dry_run: true,
};
let _ = Effect::EmitAfter {
dur: Duration::from_millis(0),
msg: Msg::Tick,
};
}
}