Merge remote-tracking branch 'kraxel/tags/pull-vga-20161205-1' into staging
[qemu/ar7.git] / tests / check-qfloat.c
blob1da2cdae0882d2fbaad2afbe034530f57d534559
1 /*
2 * QFloat unit-tests.
4 * Copyright IBM, Corp. 2009
6 * Authors:
7 * Anthony Liguori <aliguori@us.ibm.com>
9 * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
10 * See the COPYING.LIB file in the top-level directory.
13 #include "qemu/osdep.h"
15 #include "qapi/qmp/qfloat.h"
16 #include "qemu-common.h"
19 * Public Interface test-cases
21 * (with some violations to access 'private' data)
24 static void qfloat_from_double_test(void)
26 QFloat *qf;
27 const double value = -42.23423;
29 qf = qfloat_from_double(value);
30 g_assert(qf != NULL);
31 g_assert(qf->value == value);
32 g_assert(qf->base.refcnt == 1);
33 g_assert(qobject_type(QOBJECT(qf)) == QTYPE_QFLOAT);
35 // destroy doesn't exit yet
36 g_free(qf);
39 static void qfloat_destroy_test(void)
41 QFloat *qf = qfloat_from_double(0.0);
42 QDECREF(qf);
45 int main(int argc, char **argv)
47 g_test_init(&argc, &argv, NULL);
49 g_test_add_func("/public/from_double", qfloat_from_double_test);
50 g_test_add_func("/public/destroy", qfloat_destroy_test);
52 return g_test_run();