Thanks for the feedback!

I've updated the test to use `command_fails_like()` instead of
`command_fails()`, so it now asserts that the error message matches the
expected stderr output.
I also changed the test invocation to use the `-U => ''` syntax for
consistency, as seen in the adjacent `--username` test.


Let me know if any further adjustments are needed.

Best regards,
Jianghua Yang

Dagfinn Ilmari Mannsåker <ilm...@ilmari.org> 于2025年7月2日周三 07:09写道:

> Jianghua Yang <yjhj...@gmail.com> writes:
>
> > - A regression test is added to `src/bin/initdb/t/001_initdb.pl` to
> verify
> > that the case `initdb -U ''` fails as expected.
> [ ... ]
> > diff --git a/src/bin/initdb/t/001_initdb.pl b/src/bin/initdb/t/
> 001_initdb.pl
> > index 15dd10ce40a..67eb53064f6 100644
> > --- a/src/bin/initdb/t/001_initdb.pl
> > +++ b/src/bin/initdb/t/001_initdb.pl
> > @@ -37,6 +37,10 @@ command_fails(
> >  command_fails([ 'initdb', '--username' => 'pg_test', $datadir ],
> >       'role names cannot begin with "pg_"');
> >
> > +command_fails(
> > +     [ 'initdb', '-U', '', $datadir ],
> > +     'empty username not allowed');
> > +
>
> This only tests that it fails, not that it fails as expected.  It should
> use command_fails_like() to check that stderr contains the expected
> error.  Also, it shoud use => between the -U option and its argument, as
> seen in the above test with --username.
>
> - ilmari
>

Attachment: 0001-initdb-Reject-empty-string-for-U-username-option-v3.patch
Description: Binary data

Reply via email to