From: Eric Sunshine Date: Mon, 13 Dec 2021 06:30:48 +0000 (-0500) Subject: t/chainlint/one-liner: avoid overly intimate chainlint.sed knowledge X-Git-Tag: v2.35.0-rc0~50^2~11 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0cca54c706128338ee79efb55e9c0ddb6be723dc;p=thirdparty%2Fgit.git t/chainlint/one-liner: avoid overly intimate chainlint.sed knowledge The purpose of chainlint.sed is to detect &&-chain breakage only within subshells (one level deep); it doesn't bother checking for top-level &&-chain breakage since the &&-chain checker built into t/test-lib.sh should detect broken &&-chains outside of subshells by making them magically exit with code 117. Unfortunately, one of the chainlint.sed self-tests has overly intimate knowledge of this particular division of responsibilities and only cares about what chainlint.sed itself will produce, while ignoring the fact that a more all-encompassing linter would complain about a broken &&-chain outside the subshell. This makes it difficult to re-use the test with a more capable chainlint implementation should one ever be developed. Therefore, adjust the test and its "expected" output to avoid being specific to the tunnel-vision of this one implementation. Signed-off-by: Eric Sunshine Signed-off-by: Junio C Hamano --- diff --git a/t/chainlint/one-liner.expect b/t/chainlint/one-liner.expect index 237f227349..c64058f7af 100644 --- a/t/chainlint/one-liner.expect +++ b/t/chainlint/one-liner.expect @@ -4,6 +4,6 @@ ?!SEMI?!(foo; bar) && ?!SEMI?!(foo; bar) | -?!SEMI?!(foo; bar) >baz +?!SEMI?!(foo; bar) >baz && (foo "bar; baz") diff --git a/t/chainlint/one-liner.test b/t/chainlint/one-liner.test index 69796d7505..be9858fa29 100644 --- a/t/chainlint/one-liner.test +++ b/t/chainlint/one-liner.test @@ -6,7 +6,7 @@ # LINT: top-level one-liner subshell missing internal "&&" and broken &&-chain (foo; bar) && (foo; bar) | -(foo; bar) >baz +(foo; bar) >baz && # LINT: ";" in string not misinterpreted as broken &&-chain (foo "bar; baz")