Re: [PATCH] t3420-rebase-autostash: don't try to grep non-existing files
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Jun 27, 2026, 06:59 UTC
- Message-ID
- <aj90x3DsER5HASUS@szeder.dev>
- In-Reply-To
- <20211010172809.1472914-1-szeder.dev@gmail.com>
On Sun, Oct 10, 2021 at 07:28:09PM +0200, SZEDER Gábor wrote:
Show 43 quoted lines
> Several tests in 't3420-rebase-autostash.sh' start various rebase
> processes that are expected to fail because of merge conflicts. The
> tests [1] checking that 'git rebase --quit' and autostash work
> together as expected after such a failure then run '! grep ...' to
> ensure that the dirty contents of the file is gone. However, due to
> the test repo's history and the choice of upstream branch that file
> shouldn't exist in the conflicted state at all, and thus it shouldn't
> exist after the subsequent 'git rebase --quit' either. Consequently,
> this 'grep' doesn't fail as expected, i.e. because it can't find the
> dirty content, but instead it fails, because it can't open the file.
>
> Thighten this check by using 'test_path_is_missing' instead, thereby
> avoiding unexpected errors from 'grep' as well.
>
> Previously 2745817028 (t3420-rebase-autostash: don't try to grep
> non-existing files, 2018-08-22) fixed a couple of similar issues; this
> one was added later in 9b2df3e8d0 (rebase: save autostash entry into
> stash reflog on --quit, 2020-04-28).
>
> [1] This patch modifies only a single test, but that test is run
> several times with different strategies ('--apply', '--merge', and
> '--interactive'), hence the plural "tests".
>
> Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
> ---
> t/t3420-rebase-autostash.sh | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/t/t3420-rebase-autostash.sh b/t/t3420-rebase-autostash.sh
> index 43fcb68f27..bbe82d2c0c 100755
> --- a/t/t3420-rebase-autostash.sh
> +++ b/t/t3420-rebase-autostash.sh
> @@ -200,7 +200,7 @@ testrebase () {
> git rebase --quit &&
> test_when_finished git stash drop &&
> test_path_is_missing $dotest/autostash &&
> - ! grep dirty file3 &&
> + test_path_is_missing file3 &&
> git stash show -p >actual &&
> test_cmp expect actual &&
> git reset --hard &&
> --
> 2.33.0.1279.g1a260bf8c2It appears that this patch might have fallen quite deep through the cracks... ;)
But the issue this patch is addressing is still there, and the patch still applies cleanly after almost 5 years.