Add imag-init test
* Extract function to call imag-init for a tempdir path * Simplify setup helper functions Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
This commit is contained in:
parent
d78ab67956
commit
49af82cc68
2 changed files with 52 additions and 0 deletions
|
@ -17,3 +17,24 @@
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
//
|
//
|
||||||
|
|
||||||
|
use std::process::Command;
|
||||||
|
|
||||||
|
use assert_fs::fixture::TempDir;
|
||||||
|
use assert_cmd::prelude::*;
|
||||||
|
|
||||||
|
pub fn make_temphome() -> TempDir {
|
||||||
|
TempDir::new().unwrap().persist_if(std::env::var("IMAG_UI_TEST_PERSIST").is_ok())
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn binary(tempdir: &TempDir, binary_name: &str) -> Command {
|
||||||
|
let path = tempdir.path()
|
||||||
|
.to_str()
|
||||||
|
.map(String::from)
|
||||||
|
.unwrap_or_else(|| panic!("Cannot create imag home path string"));
|
||||||
|
|
||||||
|
let mut cmd = Command::cargo_bin(binary_name).unwrap();
|
||||||
|
cmd.arg("--rtp");
|
||||||
|
cmd.arg(path);
|
||||||
|
cmd
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -17,3 +17,34 @@
|
||||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
//
|
//
|
||||||
|
|
||||||
|
use std::process::Command;
|
||||||
|
|
||||||
|
use assert_cmd::prelude::*;
|
||||||
|
use assert_fs::fixture::TempDir;
|
||||||
|
|
||||||
|
/// Helper to call imag-init
|
||||||
|
pub fn call(tempdir: &TempDir) {
|
||||||
|
binary(tempdir).assert().success();
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn binary(tempdir: &TempDir) -> Command {
|
||||||
|
let path = tempdir.path()
|
||||||
|
.to_str()
|
||||||
|
.map(String::from)
|
||||||
|
.unwrap_or_else(|| panic!("Cannot create imag home path string"));
|
||||||
|
|
||||||
|
let mut cmd = Command::cargo_bin("imag-init").unwrap();
|
||||||
|
cmd.arg("--path");
|
||||||
|
cmd.arg(path);
|
||||||
|
cmd
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_init_makes_imag_dir() {
|
||||||
|
crate::setup_logging();
|
||||||
|
let imag_home = crate::imag::make_temphome();
|
||||||
|
call(&imag_home);
|
||||||
|
assert!(imag_home.path().exists(), "imag dir does not exist");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue