From: Dirk Gouders <dirk@gouders.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: Eric Sunshine <sunshine@sunshineco.com>,
Eric Sunshine <ericsunshine@charter.net>,
git@vger.kernel.org, Aryan Gupta <garyan447@gmail.com>
Subject: Re: [PATCH] test-lib-functions: simplify `test_file_not_empty` failure message
Date: Sun, 03 Mar 2024 07:42:36 +0100 [thread overview]
Message-ID: <ghmsrfhl43.fsf@gouders.net> (raw)
In-Reply-To: <xmqqbk7wy1di.fsf@gitster.g> (Junio C. Hamano's message of "Sat, 02 Mar 2024 09:44:41 -0800")
Junio C Hamano <gitster@pobox.com> writes:
> Dirk Gouders <dirk@gouders.net> writes:
>
>> Eric Sunshine <sunshine@sunshineco.com> writes:
>>
>>> On Fri, Mar 1, 2024 at 5:11 PM Junio C Hamano <gitster@pobox.com> wrote:
>>>> Eric Sunshine <ericsunshine@charter.net> writes:
>>>> > A more accurate message might be "'foo' is empty but
>>>> > should not be (or doesn't exist)", but that's unnecessarily long-winded
>>>> > and adds little information that the test author couldn't discover by
>>>> > noticing the file's absence.
>>>>
>>>> The "adds little information" version may be
>>>>
>>>> echo "'$1' is either missing or empty, but should not be"
>>>> ...
>>> I find "'$1' is either missing or empty, but should not be" suggestion
>>> clear and easily understood. I'll reroll with that.
>>
>> This is a view from a position with more distance:
>>
>> I find that not so easily understood -- the "but should not
>> be" part is rather unexpected and I feel, it doesn't provide necessary
>> information, e.g.:
>>
>> test_path_is_executable () {
>> ...
>> echo "$1 is not executable"
>> ...
>>
>> also doesn't state what is wanted and I doubt that message doesn't
>> clearly describe the problem.
>
> I cannot tell if you really meant the double negative involving
> "doubt", but assuming you did, you are saying that
I'm sorry about that double negative which was probably wrong wording of
a non-native speaker.
> With "X is not Y", it is clear enough that we expect X to be Y
> (if it were not clear to somebody who read "X is not Y" that we
> want X to be Y, then "X is not Y, but it should be" may needed,
> but "X is not Y" is clear enough).
>
> So you think "$1 is either missing or empty" is better without "but
> should not be" added to the end? Am I reading you correctly?
>
> I think this takes us back pretty much to square one ;-) but that is
> also fine.
>
> But the above argument depends on an untold assumption. The message
> "X is not Y" must be clearly understood as a complaint, not a mere
> statement of a fact. I am not sure if that is the case.
>
> Instead of "X is not Y, but it should be", the way to clarify these
> messages may be to say "error: X is not Y", perhaps?
That is exactly what came to my mind when I was later re-thinking
what I had written.
>> While I looked at it: there is another `test -s` in test_grep () that
>> perhaps could be fixed the same way:
>>
>> if test -s "$last_arg"
>> then
>> cat >&4 "$last_arg"
>> else
>> echo >&4 "<File '$last_arg' is empty>"
>> fi
>
> If you are worried about "test -s" failing because "$last_arg" does
> not exist, then you are worried too much. We upfront guard the
> test_grep() helper with "test -f" of the same file and diagnoses the
> lack of the file as a bug in the test. And we do not assume gremlins
> removing random files while we are running tests.
Yes, thank you for clarification and sorry for the noise.
Dirk
next prev parent reply other threads:[~2024-03-03 6:43 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-01 20:49 [PATCH] test-lib-functions: simplify `test_file_not_empty` failure message Eric Sunshine
2024-03-01 22:11 ` Junio C Hamano
2024-03-01 22:59 ` Eric Sunshine
2024-03-02 7:07 ` Dirk Gouders
2024-03-02 17:44 ` Junio C Hamano
2024-03-03 6:42 ` Dirk Gouders [this message]
2024-03-02 16:38 ` Rubén Justo
2024-03-02 18:08 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ghmsrfhl43.fsf@gouders.net \
--to=dirk@gouders.net \
--cc=ericsunshine@charter.net \
--cc=garyan447@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=sunshine@sunshineco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).