use tempfile::TempDir;
use super::super::common::*;
#[test]
fn test_path_as_positional_argument_sets_working_directory() {
let pt = phantom();
let tmp_dir = TempDir::new().unwrap();
std::fs::write(tmp_dir.path().join("UNIQUE16CHARIDfile.txt"), "").unwrap();
let s = tv_local_config_and_cable_with_args(
&pt,
&[
"files",
"--input",
"UNIQUE16CHARID",
tmp_dir.path().to_str().unwrap(),
],
)
.start()
.unwrap();
s.wait().text("── files ──").until().unwrap();
s.wait().text("UNIQUE16CHARIDfile.txt").until().unwrap();
s.send().key("ctrl-c").unwrap();
s.wait().exit_code(0).until().unwrap();
}
#[test]
fn test_config_file_flag_loads_custom_config() {
let pt = phantom();
let s = tv_with_args(
&pt,
&[
"files",
"--config-file",
".config/config.toml",
"--cable-dir",
DEFAULT_CABLE_DIR,
],
)
.start()
.unwrap();
s.wait().text("files").until().unwrap();
s.send().key("ctrl-c").unwrap();
s.wait().exit_code(0).until().unwrap();
}
#[test]
fn test_config_file_flag_fails_to_load_custom_config() {
let pt = phantom();
let s = tv_with_args(
&pt,
&[
"files",
"--config-file",
".config/config1.toml",
"--cable-dir",
DEFAULT_CABLE_DIR,
],
)
.start()
.unwrap();
s.wait().text("File does not exist").until().unwrap();
}
#[test]
fn test_cable_dir_flag_loads_custom_cable_dir() {
let pt = phantom();
let s = tv_with_args(
&pt,
&[
"files",
"--cable-dir",
"cable/unix",
"--config-file",
DEFAULT_CONFIG_FILE,
],
)
.start()
.unwrap();
s.wait().text("── files ──").until().unwrap();
s.send().key("ctrl-c").unwrap();
s.wait().exit_code(0).until().unwrap();
}
#[test]
fn test_cable_dir_flag_fails_to_load_custom_cable_dir() {
let pt = phantom();
let s = tv_with_args(
&pt,
&[
"files",
"--cable-dir",
"cable/unix1",
"--config-file",
DEFAULT_CONFIG_FILE,
],
)
.start()
.unwrap();
s.wait().text("Directory does not exist").until().unwrap();
}