Re: [PATCH] tests: Record negative tests as pass instead of expected-fail

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

 



On Mon, Feb 10, 2025 at 11:25:55 +0100, Tim Wiederhake wrote:
> meson's "test()" function provides a "should_fail: bool" argument that
> checks for a command to exit with a non-zero exit code instead of the usual
> zero exit code to signal success. If the program under test does so, it is
> recorded as "EXPECTEDFAIL" instead of "OK". While there is an argument to be
> made that the program under test failed as expected, the test in itself is
> successful and should be recorded as such.

Could you please elaborate what the problem is? The wording of the

> 
> Before:
>     $ meson test
>     ...
>     151/300 libvirt:bin / libvirtd fail with missing config                                EXPECTEDFAIL    0.03s   exit status 1


... EXPECTEDFAIL case?

>     ...
>     Ok:                 299
>     Expected Fail:      1
>     Fail:               0
>     Unexpected Pass:    0
>     Skipped:            0
>     Timeout:            0
> 
> After:
>     $ meson test
>     ...
>     151/300 libvirt:bin / libvirtd fail with missing config                                OK              0.03s
>     ...
>     Ok:                 300
>     Expected Fail:      0
>     Fail:               0
>     Unexpected Pass:    0
>     Skipped:            0
>     Timeout:            0
> 
> Signed-off-by: Tim Wiederhake <twiederh@xxxxxxxxxx>
> ---
>  tests/expected-fail | 13 +++++++++++++
>  tests/meson.build   |  5 ++---
>  2 files changed, 15 insertions(+), 3 deletions(-)
>  create mode 100755 tests/expected-fail
> 
> diff --git a/tests/expected-fail b/tests/expected-fail
> new file mode 100755
> index 0000000000..85738c95dc
> --- /dev/null
> +++ b/tests/expected-fail
> @@ -0,0 +1,13 @@
> +#!/bin/sh
> +
> +# meson's "test()" function provides a "should_fail: bool" argument that
> +# checks for a command to exit with a non-zero exit code instead of the usual
> +# zero exit code to signal success. If the program under test does so, it is
> +# recorded as "EXPECTEDFAIL" instead of "OK". While there is an argument to be
> +# made that the program under test failed as expected, the test in itself is
> +# successful and should be recorded as such.
> +
> +if "$@"
> +then
> +    exit 1
> +fi

The idea was exactly to avoid having this extra script.



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux