On 09/25/2015 06:39 AM, Andreas Färber wrote:
> Add a test for parsing and setting a uint64 property.
> 
> Signed-off-by: Andreas Färber <afaer...@suse.de>
> ---
>  MAINTAINERS             |   1 +
>  tests/Makefile          |   3 ++
>  tests/check-qom-props.c | 120 
> ++++++++++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 124 insertions(+)
>  create mode 100644 tests/check-qom-props.c
> 

> +static void test_dummy_uint64(void)
> +{
> +    Error *err = NULL;
> +    char *str;
> +    DummyObject *dobj = DUMMY_OBJECT(object_new(TYPE_DUMMY));
> +
> +    g_assert(dobj->u64val == 0);
> +
> +    str = g_strdup_printf("%" PRIu64, UINT64_MAX);
> +    object_property_parse(OBJECT(dobj), str, "u64val", &err);
> +    g_free(str);
> +    g_assert(!err);

Use &error_abort, then you don't need the g_assert(!err).

> +    g_assert_cmpint(dobj->u64val, ==, UINT64_MAX);
> +
> +    dobj->u64val = 0;
> +    str = g_strdup_printf("0x%" PRIx64, UINT64_MAX);
> +    object_property_parse(OBJECT(dobj), str, "u64val", &err);
> +    g_free(str);
> +    g_assert(!err);
> +    g_assert_cmpint(dobj->u64val, ==, UINT64_MAX);
> +
> +    object_unref(OBJECT(dobj));

As with other patches in this series, intentionally testing the behavior
of -1, and of (ULLONG_MAX+1), would be good.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to