aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/core/iomgr/combiner_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/core/iomgr/combiner_test.c')
-rw-r--r--test/core/iomgr/combiner_test.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/test/core/iomgr/combiner_test.c b/test/core/iomgr/combiner_test.c
index d9f7601722..0aaeada345 100644
--- a/test/core/iomgr/combiner_test.c
+++ b/test/core/iomgr/combiner_test.c
@@ -120,16 +120,27 @@ static void test_execute_many(void) {
grpc_combiner_destroy(lock);
}
+static bool got_in_finally = false;
+
+static void in_finally(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
+ got_in_finally = true;
+}
+
+static void add_finally(grpc_exec_ctx *exec_ctx, void *arg, grpc_error *error) {
+ grpc_combiner_execute_finally(exec_ctx, arg,
+ grpc_closure_create(in_finally, NULL),
+ GRPC_ERROR_NONE, false);
+}
+
static void test_execute_finally(void) {
gpr_log(GPR_DEBUG, "test_execute_finally");
grpc_combiner *lock = grpc_combiner_create(NULL);
- bool done = false;
grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
grpc_combiner_execute(&exec_ctx, lock, grpc_closure_create(add_finally, lock),
GRPC_ERROR_NONE);
grpc_exec_ctx_finish(&exec_ctx);
- GPR_ASSERT(done);
+ GPR_ASSERT(got_in_finally);
grpc_combiner_destroy(lock);
}
@@ -138,8 +149,8 @@ int main(int argc, char **argv) {
grpc_init();
test_no_op();
test_execute_one();
- test_execute_many();
test_execute_finally();
+ test_execute_many();
grpc_shutdown();
return 0;