Re: [PATCH v3 36/36] tests: assert consistent whitespace in -h output

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 30, 2022 at 2:10 PM Ævar Arnfjörð Bjarmason
<avarab@xxxxxxxxx> wrote:
> Add a test for the *.txt and *.c output assertions which asserts that
> for "-h" lines that aren't the "usage: " or " or: " lines they start
> with the same amount of whitespace. This ensures that we won't have
> buggy output like:
>
>    [...]
>    or: git tag [-n[<num>]]
>                [...]
>        [--create-reflog] [...]
>
> Which should instead be like this instead, i.e. the options lines
> should be aligned:

Too many "instead"s.

>    [...]
>    or: git tag [-n[<num>]]
>                [...]
>                [--create-reflog] [...]
>
> It would be better to be able to use "test_cmp" here, i.e. to
> construct the output we expect, and compare it against the actual
> output.
>
> For most built-in commands this would be rather straightforward. In
> "t0450-txt-doc-vs-help.sh" we already compute the whitespace that a
> "git-$builtin" needs, and strip away "usage: " or " or: " from the
> start of lines. The problem is:
>
>  * For commands that implement subcommands, such as "git bundle", we
>    don't know whether e.g. "git bundle create" is the subcommand
>    "create", or the argument "create" to "bundle" for the purposes of
>    alignment.
>
>    We *do* have that information from the *.txt version, since the
>    part within the ''-quotes should be the command & subcommand, but
>    that isn't consistent (e.g. see "git bundle" and "git
>    commit-graph", only the latter is correct), and parsing that out
>    would be non-trivial.
>
>  * If we were to make this stricter we have various
>    non-parse_options() users (e.g. "git diff-tree") that don't have the
>    nicely aligned output which we've had since
>    4631cfc20bd (parse-options: properly align continued usage output,
>    2021-09-21).
>
> So rather than make perfect the enemy of the good let's assert that
> for those lines that are indented they should all use the same
> indentation.
>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx>



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux