Improve correctness and add more tests

This commit is contained in:
Aaron Kollasch
2022-10-25 22:18:03 -04:00
parent 36ccc6a31e
commit 76aad7c74f
4 changed files with 134 additions and 6 deletions

View File

@@ -477,6 +477,79 @@ fn tabs_8() {
);
}
#[test]
fn tabs_4_env_overrides_config() {
bat_with_config()
.env("BAT_CONFIG_PATH", "bat-tabs.conf")
.env("BAT_TABS", "4")
.arg("tabs.txt")
.arg("--style=plain")
.arg("--decorations=always")
.assert()
.success()
.stdout(
" 1 2 3 4
1 ?
22 ?
333 ?
4444 ?
55555 ?
666666 ?
7777777 ?
88888888 ?
",
);
}
#[test]
fn tabs_4_arg_overrides_env() {
bat_with_config()
.env("BAT_CONFIG_PATH", "bat-tabs.conf")
.env("BAT_TABS", "6")
.arg("tabs.txt")
.arg("--tabs=4")
.arg("--style=plain")
.arg("--decorations=always")
.assert()
.success()
.stdout(
" 1 2 3 4
1 ?
22 ?
333 ?
4444 ?
55555 ?
666666 ?
7777777 ?
88888888 ?
",
);
}
#[test]
fn tabs_4_arg_overrides_env_noconfig() {
bat()
.env("BAT_TABS", "6")
.arg("tabs.txt")
.arg("--tabs=4")
.arg("--style=plain")
.arg("--decorations=always")
.assert()
.success()
.stdout(
" 1 2 3 4
1 ?
22 ?
333 ?
4444 ?
55555 ?
666666 ?
7777777 ?
88888888 ?
",
);
}
#[test]
fn fail_non_existing() {
bat().arg("non-existing-file").assert().failure();
@@ -544,7 +617,7 @@ fn pager_disable() {
}
#[test]
fn pager_arg_override_env() {
fn pager_arg_override_env_withconfig() {
bat_with_config()
.env("BAT_CONFIG_PATH", "bat.conf")
.env("PAGER", "echo another-pager")
@@ -557,6 +630,19 @@ fn pager_arg_override_env() {
.stdout(predicate::eq("pager-output\n").normalize());
}
#[test]
fn pager_arg_override_env_noconfig() {
bat()
.env("PAGER", "echo another-pager")
.env("BAT_PAGER", "echo other-pager")
.arg("--pager=echo pager-output")
.arg("--paging=always")
.arg("test.txt")
.assert()
.success()
.stdout(predicate::eq("pager-output\n").normalize());
}
#[test]
fn pager_env_bat_pager_override_config() {
bat_with_config()
@@ -1031,6 +1117,35 @@ fn header_full_basic() {
.stderr("");
}
#[test]
fn header_env_basic() {
bat_with_config()
.env("BAT_STYLE", "header-filename,header-filesize")
.arg("test.txt")
.arg("--decorations=always")
.arg("-r=0:0")
.arg("--file-name=foo")
.assert()
.success()
.stdout("File: foo\nSize: 12 B\n")
.stderr("");
}
#[test]
fn header_arg_overrides_env() {
bat_with_config()
.env("BAT_STYLE", "header-filesize")
.arg("test.txt")
.arg("--decorations=always")
.arg("--style=header-filename")
.arg("-r=0:0")
.arg("--file-name=foo")
.assert()
.success()
.stdout("File: foo\n")
.stderr("");
}
#[test]
fn header_binary() {
bat()