diff options
Diffstat (limited to 'tests/test-io-task.c')
-rw-r--r-- | tests/test-io-task.c | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/tests/test-io-task.c b/tests/test-io-task.c index e091c12e10..ff62272d5f 100644 --- a/tests/test-io-task.c +++ b/tests/test-io-task.c @@ -50,14 +50,13 @@ struct TestTaskData { }; -static void task_callback(Object *source, - Error *err, +static void task_callback(QIOTask *task, gpointer opaque) { struct TestTaskData *data = opaque; - data->source = source; - data->err = err; + data->source = qio_task_get_source(task); + qio_task_propagate_error(task, &data->err); } @@ -76,7 +75,6 @@ static void test_task_complete(void) g_assert(obj == src); object_unref(obj); - object_unref(src); g_assert(data.source == obj); g_assert(data.err == NULL); @@ -121,9 +119,9 @@ static void test_task_failure(void) error_setg(&err, "Some error"); - qio_task_abort(task, err); + qio_task_set_error(task, err); + qio_task_complete(task); - error_free(err); object_unref(obj); g_assert(data.source == obj); @@ -142,31 +140,28 @@ struct TestThreadWorkerData { GMainLoop *loop; }; -static int test_task_thread_worker(QIOTask *task, - Error **errp, - gpointer opaque) +static void test_task_thread_worker(QIOTask *task, + gpointer opaque) { struct TestThreadWorkerData *data = opaque; data->worker = g_thread_self(); if (data->fail) { - error_setg(errp, "Testing fail"); - return -1; + Error *err = NULL; + error_setg(&err, "Testing fail"); + qio_task_set_error(task, err); } - - return 0; } -static void test_task_thread_callback(Object *source, - Error *err, +static void test_task_thread_callback(QIOTask *task, gpointer opaque) { struct TestThreadWorkerData *data = opaque; - data->source = source; - data->err = err; + data->source = qio_task_get_source(task); + qio_task_propagate_error(task, &data->err); data->complete = g_thread_self(); |