Re: [PATCH] t0004: replace test -e with test_path_exists
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 9, 2026, 21:14 UTC
- Message-ID
- <xmqq4imo4sf1.fsf@gitster.g>
- In-Reply-To
- <20260309173635.29683-1-prashantjee2025@gmail.com>
PRASHANT S BISHT <prashantjee2025@gmail.com> writes:
> -test_lazy_prereq WRITE_TREE_OUT 'test -e "$TRASH_DIRECTORY"/out.write-tree' > +test_lazy_prereq WRITE_TREE_OUT 'test_path_exists "$TRASH_DIRECTORY/out.write-tree"'
I suspect this is utterly wrong. As you wrote in the proposed log message, test_path_exists is *NOT* about checking if the path exists. It rather is about *expecting* for the path to exist, and fail *LOUDLY* if it does not.
You need to _think_ if we want a LOUD failure when somebody checks if a path exists and conditionally skip setting a test prerequisite when the path does not exist. The original code is trying to be quiet, as the check is done not because existence of the checked path is good and lack of it is a test failure. Lack of the path is expected on places where the prerequisite is not set, and that by itself is not a test failure that you want a LOUD report about.