mirror of
https://github.com/orhun/systeroid
synced 2024-10-15 03:42:18 +00:00
test(app): add tests for app module
This commit is contained in:
parent
13faab0d91
commit
a2bba17e9a
|
@ -227,3 +227,45 @@ impl<'a, Output: Write> App<'a, Output> {
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::*;
|
||||||
|
use systeroid_core::config::Config;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_app() -> Result<()> {
|
||||||
|
let mut output = Vec::new();
|
||||||
|
let mut sysctl = Sysctl::init(Config {
|
||||||
|
no_pager: true,
|
||||||
|
..Config::default()
|
||||||
|
})?;
|
||||||
|
let mut app = App::new(&mut sysctl, &mut output, false)?;
|
||||||
|
|
||||||
|
app.display_parameters(Regex::new("kernel|vm").ok(), false)?;
|
||||||
|
let result = String::from_utf8_lossy(&app.output);
|
||||||
|
assert!(result.contains("vm.zone_reclaim_mode ="));
|
||||||
|
assert!(result.contains("kernel.version ="));
|
||||||
|
app.output.clear();
|
||||||
|
|
||||||
|
app.tree_output = true;
|
||||||
|
app.display_parameters(None, true)?;
|
||||||
|
assert!(String::from_utf8_lossy(&app.output).contains("─ osrelease ="));
|
||||||
|
app.output.clear();
|
||||||
|
|
||||||
|
app.update_documentation(None)?;
|
||||||
|
app.display_documentation("kernel.acct")?;
|
||||||
|
assert!(String::from_utf8_lossy(&app.output).contains("highwater lowwater frequency"));
|
||||||
|
app.output.clear();
|
||||||
|
|
||||||
|
let param_name = String::from("kernel.version");
|
||||||
|
app.tree_output = false;
|
||||||
|
app.process_parameter(param_name.clone(), true, false)?;
|
||||||
|
let result = String::from_utf8_lossy(&app.output);
|
||||||
|
assert_eq!(1, result.lines().count());
|
||||||
|
assert!(result.contains(¶m_name));
|
||||||
|
app.output.clear();
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue