From a747b371d030468449a60ecef9b4fb4db819fe51 Mon Sep 17 00:00:00 2001 From: Joel Kappes Date: Wed, 6 Sep 2023 11:02:25 +0200 Subject: [PATCH 1/5] paging: later arguments override earlier ones --- src/bin/bat/clap_app.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/bin/bat/clap_app.rs b/src/bin/bat/clap_app.rs index 01f9d7549a..8ffeb5b228 100644 --- a/src/bin/bat/clap_app.rs +++ b/src/bin/bat/clap_app.rs @@ -79,6 +79,7 @@ pub fn build_app(interactive_output: bool) -> Command { Arg::new("plain") .overrides_with("plain") .overrides_with("number") + .overrides_with("paging") .short('p') .long("plain") .action(ArgAction::Count) @@ -303,6 +304,7 @@ pub fn build_app(interactive_output: bool) -> Command { .long("paging") .overrides_with("paging") .overrides_with("no-paging") + .overrides_with("plain") .value_name("when") .value_parser(["auto", "never", "always"]) .default_value("auto") From 9837046cec0297378b08ad2dff457fde1b58dcc8 Mon Sep 17 00:00:00 2001 From: Joel Kappes Date: Wed, 6 Sep 2023 11:43:56 +0200 Subject: [PATCH 2/5] tests: added test for "-P --paging=always" expecting pager --- tests/integration_tests.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/integration_tests.rs b/tests/integration_tests.rs index b118c38f9a..999baf66c4 100644 --- a/tests/integration_tests.rs +++ b/tests/integration_tests.rs @@ -873,6 +873,18 @@ fn disable_pager_if_disable_paging_flag_comes_after_paging() { .stdout(predicate::eq("hello world\n").normalize()); } +#[test] +fn enable_pager_if_disable_paging_flag_comes_before_paging() { + bat() + .env("PAGER", "echo pager-output") + .arg("-P") + .arg("--paging=always") + .arg("test.txt") + .assert() + .success() + .stdout(predicate::eq("pager-output\n").normalize()); +} + #[test] fn pager_failed_to_parse() { bat() From 1871aea603b932dea69d8a31bca5d8b719b15dab Mon Sep 17 00:00:00 2001 From: Joel Kappes Date: Wed, 6 Sep 2023 11:49:19 +0200 Subject: [PATCH 3/5] fixup! tests: added test for "-P --paging=always" expecting pager --- tests/integration_tests.rs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/integration_tests.rs b/tests/integration_tests.rs index 999baf66c4..4f190e3073 100644 --- a/tests/integration_tests.rs +++ b/tests/integration_tests.rs @@ -873,6 +873,18 @@ fn disable_pager_if_disable_paging_flag_comes_after_paging() { .stdout(predicate::eq("hello world\n").normalize()); } +#[test] +fn disable_pager_if_disable_pp_flag_comes_after_paging() { + bat() + .env("PAGER", "echo pager-output") + .arg("--paging=always") + .arg("-pp") + .arg("test.txt") + .assert() + .success() + .stdout(predicate::eq("hello world\n").normalize()); +} + #[test] fn enable_pager_if_disable_paging_flag_comes_before_paging() { bat() @@ -885,6 +897,18 @@ fn enable_pager_if_disable_paging_flag_comes_before_paging() { .stdout(predicate::eq("pager-output\n").normalize()); } +#[test] +fn disable_pager_if_disable_pp_flag_comes_before_paging() { + bat() + .env("PAGER", "echo pager-output") + .arg("-pp") + .arg("--paging=always") + .arg("test.txt") + .assert() + .success() + .stdout(predicate::eq("hello world\n").normalize()); +} + #[test] fn pager_failed_to_parse() { bat() From a0efda4a443ba5127972bb4cc9af5c60458e26c0 Mon Sep 17 00:00:00 2001 From: Joel Kappes Date: Wed, 6 Sep 2023 11:51:06 +0200 Subject: [PATCH 4/5] fixup! fixup! tests: added test for "-P --paging=always" expecting pager --- tests/integration_tests.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration_tests.rs b/tests/integration_tests.rs index 4f190e3073..2baee0eb9d 100644 --- a/tests/integration_tests.rs +++ b/tests/integration_tests.rs @@ -898,7 +898,7 @@ fn enable_pager_if_disable_paging_flag_comes_before_paging() { } #[test] -fn disable_pager_if_disable_pp_flag_comes_before_paging() { +fn enable_pager_if_disable_pp_flag_comes_before_paging() { bat() .env("PAGER", "echo pager-output") .arg("-pp") @@ -906,7 +906,7 @@ fn disable_pager_if_disable_pp_flag_comes_before_paging() { .arg("test.txt") .assert() .success() - .stdout(predicate::eq("hello world\n").normalize()); + .stdout(predicate::eq("pager-output\n").normalize()); } #[test] From 79734bfd19529852abce7e0572683c9b7eb29e50 Mon Sep 17 00:00:00 2001 From: Joel Kappes Date: Wed, 6 Sep 2023 12:01:48 +0200 Subject: [PATCH 5/5] fixup! tests: added test for "-P --paging=always" expecting pager --- tests/integration_tests.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration_tests.rs b/tests/integration_tests.rs index 2baee0eb9d..aa5ca845ec 100644 --- a/tests/integration_tests.rs +++ b/tests/integration_tests.rs @@ -874,7 +874,7 @@ fn disable_pager_if_disable_paging_flag_comes_after_paging() { } #[test] -fn disable_pager_if_disable_pp_flag_comes_after_paging() { +fn disable_pager_if_pp_flag_comes_after_paging() { bat() .env("PAGER", "echo pager-output") .arg("--paging=always") @@ -898,7 +898,7 @@ fn enable_pager_if_disable_paging_flag_comes_before_paging() { } #[test] -fn enable_pager_if_disable_pp_flag_comes_before_paging() { +fn enable_pager_if_pp_flag_comes_before_paging() { bat() .env("PAGER", "echo pager-output") .arg("-pp")