On Thu, Feb 3, 2022 at 9:55 PM Richard W.M. Jones <rjones(a)redhat.com> wrote:
On Thu, Feb 03, 2022 at 09:39:24PM +0200, Nir Soffer wrote:
> On Thu, Feb 3, 2022 at 9:24 PM Eric Blake <eblake(a)redhat.com> wrote:
> >
> > On Thu, Feb 03, 2022 at 08:07:52PM +0200, Nir Soffer wrote:
> > > Like lot of the C examples, the aio copy test ignores read and write
> > > errors in the completion callback, which can cause silent data
> > > corruption. The failure in the test is not critical, but this is a bad
> > > example that may be copied by developers to a real application.
> > >
> > > The test panics now if completion callback fails, similar to other Go
> > > examples.
> > >
> > > Signed-off-by: Nir Soffer <nsoffer(a)redhat.com>
> > > ---
> > > golang/libnbd_590_aio_copy_test.go | 12 ++++++++++--
> > > 1 file changed, 10 insertions(+), 2 deletions(-)
> >
> > ACK.
>
> Thanks, pushed as b80780e980275a879c13d27aff1449f91f883ce6
>
> > python/t/590-aio-copy.py and ocaml/tests/test_490_aio_copy.ml need the
> > same treatment. I'll post that with my v2 of the CVE fix.
> >
> > (It's nice that we've tried to share the same test numbers across
> > language bindings - it makes it a bit easier where we copy the same
> > coding paradigms across different languages)
>
> I wondered why we are using these numbers. I think using same pattern
> like {lang}/tests/{name}_test.{suffix} would be nicer.
But we want to run them in order, or at least express that there is an
ordering to them.
Tests ordering is an anti-pattern. Tests must not depend on each other
so you can run any tests in any order.
The only reason I can see for ordering tests is easier to use output
when you compare failures, you know where to find the names. This
can be done by the test runner (e.g sort tests before running them).
Nir