mod common;
use common::*;
#[test]
fn tv_version() {
let pt = phantom();
let s = tv_with_args(&pt, &["--version"]).start().unwrap();
s.wait().text("television").until().unwrap();
s.wait().exit_code(0).until().unwrap();
}
#[test]
fn tv_list_channels() {
let pt = phantom();
let s = tv_local_config_and_cable_with_args(&pt, &["list-channels"])
.start()
.unwrap();
let cable_dir_filenames = std::fs::read_dir(DEFAULT_CABLE_DIR)
.expect("Failed to read cable directory")
.filter_map(Result::ok)
.filter_map(|entry| {
entry.path().extension().and_then(|ext| {
if ext == "toml" {
entry
.path()
.file_stem()
.and_then(|stem| stem.to_str().map(String::from))
} else {
None
}
})
})
.collect::<Vec<_>>();
s.wait()
.text(cable_dir_filenames.iter().max().unwrap())
.timeout_ms(wait_timeout_ms())
.until()
.unwrap();
s.wait().exit_code(0).until().unwrap();
}
#[test]
fn tv_init_zsh() {
let pt = phantom();
let s = tv_local_config_and_cable_with_args(&pt, &["init", "zsh"])
.start()
.unwrap();
s.wait().exit_code(0).until().unwrap();
}