[Spice-devel] [PATCH spice-common] test-marshallers: Check for "zero" attribute

Christophe Fergeau cfergeau at redhat.com
Tue Jul 3 11:17:09 UTC 2018


Acked-by: Christophe Fergeau <cfergeau at redhat.com>
(when reverting this commit, compilation of the test case fails, with
this commit in, the test case succeeds)

Christophe

On Thu, Jun 28, 2018 at 07:40:20AM +0100, Frediano Ziglio wrote:
> Check the previous fix for "zero" attribute works correctly
> (commit bc9df5816210efbe15ca03e82510f34174784082, "marshal: Fix a bug
> with zero attribute").
> 
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
>  tests/test-marshallers.c     | 13 +++++++++++++
>  tests/test-marshallers.h     |  4 ++++
>  tests/test-marshallers.proto |  6 ++++++
>  3 files changed, 23 insertions(+)
> 
> diff --git a/tests/test-marshallers.c b/tests/test-marshallers.c
> index ae90770..3bd98e8 100644
> --- a/tests/test-marshallers.c
> +++ b/tests/test-marshallers.c
> @@ -62,6 +62,19 @@ int main(int argc G_GNUC_UNUSED, char **argv G_GNUC_UNUSED)
>      if (free_res) {
>          free(data);
>      }
> +    spice_marshaller_reset(marshaller);
> +
> +    SpiceMsgMainZeroes msg_zeroes = { 0x0102 };
> +
> +    spice_marshall_msg_main_Zeroes(marshaller, &msg_zeroes);
> +    spice_marshaller_flush(marshaller);
> +    data = spice_marshaller_linearize(marshaller, 0, &len, &free_res);
> +    g_assert_cmpint(len, ==, 7);
> +    g_assert_true(memcmp(data, "\x00\x02\x01\x00\x00\x00\x00", 7) == 0);
> +    if (free_res) {
> +        free(data);
> +    }
> +
>      spice_marshaller_destroy(marshaller);
>  
>      return 0;
> diff --git a/tests/test-marshallers.h b/tests/test-marshallers.h
> index 7b9f6c5..46263d7 100644
> --- a/tests/test-marshallers.h
> +++ b/tests/test-marshallers.h
> @@ -12,5 +12,9 @@ typedef struct {
>      int8_t *name;
>  } SpiceMsgMainArrayMessage;
>  
> +typedef struct {
> +    uint16_t n;
> +} SpiceMsgMainZeroes;
> +
>  #endif /* _H_TEST_MARSHALLERS */
>  
> diff --git a/tests/test-marshallers.proto b/tests/test-marshallers.proto
> index 95d086c..08d3e01 100644
> --- a/tests/test-marshallers.proto
> +++ b/tests/test-marshallers.proto
> @@ -8,6 +8,12 @@ channel TestChannel {
>     message {
>        int8 name[];
>     } ArrayMessage;
> +
> +    message {
> +        uint8 res1 @zero;
> +        uint16 n;
> +        uint32 res2 @zero;
> +    } Zeroes;
>  };
>  
>  protocol Spice {
> -- 
> 2.17.1
> 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20180703/5dad5e0b/attachment.sig>


More information about the Spice-devel mailing list