*/
#include "qemu/osdep.h"
-#include <glib.h>
#include "qemu-common.h"
#include "qapi/error.h"
#include "qapi/qmp/types.h"
typedef struct TestInputVisitorData {
- StringInputVisitor *siv;
+ Visitor *v;
} TestInputVisitorData;
static void visitor_input_teardown(TestInputVisitorData *data,
const void *unused)
{
- if (data->siv) {
- string_input_visitor_cleanup(data->siv);
- data->siv = NULL;
+ if (data->v) {
+ visit_free(data->v);
+ data->v = NULL;
}
}
Visitor *visitor_input_test_init(TestInputVisitorData *data,
const char *string)
{
- Visitor *v;
-
- data->siv = string_input_visitor_new(string);
- g_assert(data->siv != NULL);
-
- v = string_input_get_visitor(data->siv);
- g_assert(v != NULL);
-
- return v;
+ data->v = string_input_visitor_new(string);
+ g_assert(data->v);
+ return data->v;
}
static void test_visitor_in_int(TestInputVisitorData *data,
}
g_assert(!tmp);
- tmp = res;
- while (tmp) {
- res = res->next;
- g_free(tmp);
- tmp = res;
- }
+ qapi_free_int16List(res);
visitor_input_teardown(data, unused);
v = visitor_input_test_init(data, "not an int list");
visit_type_int16List(v, NULL, &res, &err);
- /* FIXME fix the visitor, then error_free_or_abort(&err) here */
+ error_free_or_abort(&err);
+ g_assert(!res);
}
static void test_visitor_in_bool(TestInputVisitorData *data,
visitor_input_teardown(data, NULL);
}
-
- data->siv = NULL;
}
/* Try to crash the visitors */