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 <[email protected]> > --- > 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
signature.asc
Description: OpenPGP digital signature
