Commit 13088593 authored by David Hildenbrand's avatar David Hildenbrand Committed by Markus Armbruster
Browse files

test-string-input-visitor: Use virtual walk



We now support virtual walks, so use that instead.

Reviewed-by: default avatarMarkus Armbruster <armbru@redhat.com>
Reviewed-by: default avatarEric Blake <eblake@redhat.com>
Signed-off-by: default avatarDavid Hildenbrand <david@redhat.com>
Message-Id: <20181121164421.20780-8-david@redhat.com>
Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
parent c9fba9de
Loading
Loading
Loading
Loading
+12 −24
Original line number Diff line number Diff line
@@ -115,7 +115,6 @@ static void test_visitor_in_intList(TestInputVisitorData *data,
    uint64_t expect5[] = { UINT64_MAX };
    Error *err = NULL;
    int64List *res = NULL;
    int64List *tail;
    Visitor *v;
    int64_t val;

@@ -188,39 +187,28 @@ static void test_visitor_in_intList(TestInputVisitorData *data,

    v = visitor_input_test_init(data, "0,2-3");

    /* Would be simpler if the visitor genuinely supported virtual walks */
    visit_start_list(v, NULL, (GenericList **)&res, sizeof(*res),
                     &error_abort);
    tail = res;
    visit_type_int64(v, NULL, &tail->value, &error_abort);
    g_assert_cmpint(tail->value, ==, 0);
    tail = (int64List *)visit_next_list(v, (GenericList *)tail, sizeof(*res));
    g_assert(tail);
    visit_type_int64(v, NULL, &tail->value, &error_abort);
    g_assert_cmpint(tail->value, ==, 2);
    tail = (int64List *)visit_next_list(v, (GenericList *)tail, sizeof(*res));
    g_assert(tail);
    visit_start_list(v, NULL, NULL, 0, &error_abort);
    visit_type_int64(v, NULL, &val, &error_abort);
    g_assert_cmpint(val, ==, 0);
    visit_type_int64(v, NULL, &val, &error_abort);
    g_assert_cmpint(val, ==, 2);

    visit_check_list(v, &err);
    error_free_or_abort(&err);
    visit_end_list(v, (void **)&res);

    qapi_free_int64List(res);
    visit_end_list(v, NULL);

    /* Visit beyond end of list */

    v = visitor_input_test_init(data, "0");

    visit_start_list(v, NULL, (GenericList **)&res, sizeof(*res),
                     &error_abort);
    tail = res;
    visit_type_int64(v, NULL, &tail->value, &err);
    g_assert_cmpint(tail->value, ==, 0);
    visit_start_list(v, NULL, NULL, 0, &error_abort);
    visit_type_int64(v, NULL, &val, &err);
    g_assert_cmpint(val, ==, 0);
    visit_type_int64(v, NULL, &val, &err);
    error_free_or_abort(&err);
    visit_check_list(v, &error_abort);
    visit_end_list(v, (void **)&res);

    qapi_free_int64List(res);
    visit_check_list(v, &error_abort);
    visit_end_list(v, NULL);
}

static void test_visitor_in_bool(TestInputVisitorData *data,