[PATCH wayland v2 4/4] array-test: Include wayland-util.h and simplify init test
Yong Bakos
junk at humanoriented.com
Tue Oct 18 15:28:09 UTC 2016
On Oct 18, 2016, at 2:05 AM, Pekka Paalanen <ppaalanen at gmail.com> wrote:
>
> On Tue, 27 Sep 2016 23:27:00 +0200
> Dima Ryazanov <dima at gmail.com> wrote:
>
>> I think I actually know the point of the test.
>>
>> It tries to verify that size, alloc, and data were initialized to 0, rather
>> than left uninitialized - but the difficulty is that uninitialized memory
>> is often already filled with 0s. So the test repeats the process a whole
>> bunch of times, hoping to eventually catch non-0 uninitialized memory.
>
> If that was the idea, still the code is so small and deterministic that I
> can't see how round 2 could ever differ from round 3067.
>
>> (That doesn't mean it's a good way to test it, though, so I have nothing
>> against removing it. Something like valgrind is probably better.)
>
> Right. Even memset(&arr, 0x57, sizeof arr) before wl_array_init() would
> be much better.
>
> Yong, do you mind if I add the memset there on top of your patch?
Go for it. Thanks Pekka.
yong
>
>
> Thanks,
> pq
>
>> On Tue, Sep 27, 2016 at 8:03 PM, Yong Bakos <junk at humanoriented.com> wrote:
>>
>>> From: Yong Bakos <ybakos at humanoriented.com>
>>>
>>> Include wayland-util.h in addition to wayland-private.h, to be more
>>> explicit
>>> about where wl_array is defined.
>>>
>>> Remove the useless repeated testing of wl_array_init, because if it fails
>>> once
>>> out of thousands of iterations we're all doomed anyway.
>>>
>>> Signed-off-by: Yong Bakos <ybakos at humanoriented.com>
>>> Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com>
>>> Reviewed-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
>>> ---
>>> v2: Add empty line (pq)
>>>
>>> tests/array-test.c | 18 ++++++------------
>>> 1 file changed, 6 insertions(+), 12 deletions(-)
>>>
>>> diff --git a/tests/array-test.c b/tests/array-test.c
>>> index b0de8e6..ed6fbfb 100644
>>> --- a/tests/array-test.c
>>> +++ b/tests/array-test.c
>>> @@ -25,24 +25,18 @@
>>>
>>> #include <stdlib.h>
>>> #include <assert.h>
>>> +#include "wayland-util.h"
>>> #include "wayland-private.h"
>>> #include "test-runner.h"
>>>
>>> TEST(array_init)
>>> {
>>> - const int iterations = 4122; /* this is arbitrary */
>>> - int i;
>>> -
>>> - /* Init array an arbitray amount of times and verify the
>>> - * defaults are sensible. */
>>> + struct wl_array array;
>>>
>>> - for (i = 0; i < iterations; i++) {
>>> - struct wl_array array;
>>> - wl_array_init(&array);
>>> - assert(array.size == 0);
>>> - assert(array.alloc == 0);
>>> - assert(array.data == 0);
>>> - }
>>> + wl_array_init(&array);
>>> + assert(array.size == 0);
>>> + assert(array.alloc == 0);
>>> + assert(array.data == 0);
>>> }
>>>
>>> TEST(array_release)
>>> --
>>> 2.7.2
>>>
>>> _______________________________________________
>>> wayland-devel mailing list
>>> wayland-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/wayland-devel
>>>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20161018/2403941c/attachment.sig>
More information about the wayland-devel
mailing list