From bc51b8d2169896ab5c513edb441a6d041a0449f6 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sat, 13 Jan 2024 15:09:08 +0100 Subject: [PATCH] cut: allow the same option to be passed multiple times --- src/uu/cut/src/cut.rs | 1 + tests/by-util/test_cut.rs | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/src/uu/cut/src/cut.rs b/src/uu/cut/src/cut.rs index 0d5f79b35..2a3196d00 100644 --- a/src/uu/cut/src/cut.rs +++ b/src/uu/cut/src/cut.rs @@ -510,6 +510,7 @@ pub fn uu_app() -> Command { .about(ABOUT) .after_help(AFTER_HELP) .infer_long_args(true) + .args_override_self(true) .arg( Arg::new(options::BYTES) .short('b') diff --git a/tests/by-util/test_cut.rs b/tests/by-util/test_cut.rs index 112dc0fd3..57e6666d3 100644 --- a/tests/by-util/test_cut.rs +++ b/tests/by-util/test_cut.rs @@ -255,3 +255,13 @@ fn test_equal_as_delimiter3() { .succeeds() .stdout_only_bytes("abZcd\n"); } + +#[test] +fn test_multiple() { + let result = new_ucmd!() + .args(&["-f2", "-d:", "-d="]) + .pipe_in("a=b\n") + .succeeds(); + assert_eq!(result.stdout_str(), "b\n"); + assert_eq!(result.stderr_str(), ""); +}