Allow env vars to override config but not args

This commit is contained in:
Aaron Kollasch committed 2022-11-02 16:48:50 -04:00
1 parent 5652038f01
commit 36ccc6a31e
4 files changed
+74 -18

No files matched your search

+50
View File
@@ -508,6 +508,17 @@ fn pager_basic() {
.stdout(predicate::eq("pager-output\n").normalize());
}
#[test]
fn pager_basic_arg() {
bat()
.arg("--pager=echo pager-output")
.arg("--paging=always")
.arg("test.txt")
.assert()
.success()
.stdout(predicate::eq("pager-output\n").normalize());
}
#[test]
fn pager_overwrite() {
bat()
@@ -532,6 +543,45 @@ fn pager_disable() {
.stdout(predicate::eq("hello world\n").normalize());
}
#[test]
fn pager_arg_override_env() {
bat_with_config()
.env("BAT_CONFIG_PATH", "bat.conf")
.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()
.env("BAT_CONFIG_PATH", "bat.conf")
.env("PAGER", "echo other-pager")
.env("BAT_PAGER", "echo pager-output")
.arg("--paging=always")
.arg("test.txt")
.assert()
.success()
.stdout(predicate::eq("pager-output\n").normalize());
}
#[test]
fn pager_env_pager_nooverride_config() {
bat_with_config()
.env("BAT_CONFIG_PATH", "bat.conf")
.env("PAGER", "echo other-pager")
.arg("--paging=always")
.arg("test.txt")
.assert()
.success()
.stdout(predicate::eq("dummy-pager-from-config\n").normalize());
}
#[test]
fn env_var_pager_value_bat() {
bat()