Re: [PATCH] initdb: Treat empty -U argument as unset username - Mailing list pgsql-hackers

From Jianghua Yang
Subject Re: [PATCH] initdb: Treat empty -U argument as unset username
Date
Msg-id CAAZLFmRX6ekqhUy+zjEzugnS=hGjoU359atjCZC3yxnFRZ6c6g@mail.gmail.com
Whole thread Raw
In response to Re: [PATCH] initdb: Treat empty -U argument as unset username  (Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>)
List pgsql-hackers
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 <ilmari@ilmari.org> 于2025年7月2日周三 07:09写道:
Jianghua Yang <yjhjstz@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

pgsql-hackers by date:

Previous
From: Fujii Masao
Date:
Subject: Re: Add progressive backoff to XactLockTableWait functions
Next
From: Andres Freund
Date:
Subject: Re: Add progressive backoff to XactLockTableWait functions