aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/core/iomgr/combiner_test.cc
diff options
context:
space:
mode:
authorGravatar Yash Tibrewal <yashkt@google.com>2017-12-06 09:05:05 -0800
committerGravatar GitHub <noreply@github.com>2017-12-06 09:05:05 -0800
commitad4d2dde0052efbbf49d64b0843c45f0381cfeb3 (patch)
tree6a657f8c6179d873b34505cdc24bce9462ca68eb /test/core/iomgr/combiner_test.cc
parenta3df36cc2505a89c2f481eea4a66a87b3002844a (diff)
Revert "All instances of exec_ctx being passed around in src/core removed"
Diffstat (limited to 'test/core/iomgr/combiner_test.cc')
-rw-r--r--test/core/iomgr/combiner_test.cc51
1 files changed, 31 insertions, 20 deletions
diff --git a/test/core/iomgr/combiner_test.cc b/test/core/iomgr/combiner_test.cc
index 891008c774..33d892fa06 100644
--- a/test/core/iomgr/combiner_test.cc
+++ b/test/core/iomgr/combiner_test.cc
@@ -28,11 +28,13 @@
static void test_no_op(void) {
gpr_log(GPR_DEBUG, "test_no_op");
- grpc_core::ExecCtx exec_ctx;
- GRPC_COMBINER_UNREF(grpc_combiner_create(), "test_no_op");
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
+ GRPC_COMBINER_UNREF(&exec_ctx, grpc_combiner_create(), "test_no_op");
+ grpc_exec_ctx_finish(&exec_ctx);
}
-static void set_event_to_true(void* value, grpc_error* error) {
+static void set_event_to_true(grpc_exec_ctx* exec_ctx, void* value,
+ grpc_error* error) {
gpr_event_set(static_cast<gpr_event*>(value), (void*)1);
}
@@ -42,14 +44,16 @@ static void test_execute_one(void) {
grpc_combiner* lock = grpc_combiner_create();
gpr_event done;
gpr_event_init(&done);
- grpc_core::ExecCtx exec_ctx;
- GRPC_CLOSURE_SCHED(GRPC_CLOSURE_CREATE(set_event_to_true, &done,
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
+ GRPC_CLOSURE_SCHED(&exec_ctx,
+ GRPC_CLOSURE_CREATE(set_event_to_true, &done,
grpc_combiner_scheduler(lock)),
GRPC_ERROR_NONE);
- grpc_core::ExecCtx::Get()->Flush();
+ grpc_exec_ctx_flush(&exec_ctx);
GPR_ASSERT(gpr_event_wait(&done, grpc_timeout_seconds_to_deadline(5)) !=
nullptr);
- GRPC_COMBINER_UNREF(lock, "test_execute_one");
+ GRPC_COMBINER_UNREF(&exec_ctx, lock, "test_execute_one");
+ grpc_exec_ctx_finish(&exec_ctx);
}
typedef struct {
@@ -63,7 +67,7 @@ typedef struct {
size_t value;
} ex_args;
-static void check_one(void* a, grpc_error* error) {
+static void check_one(grpc_exec_ctx* exec_ctx, void* a, grpc_error* error) {
ex_args* args = static_cast<ex_args*>(a);
GPR_ASSERT(*args->ctr == args->value - 1);
*args->ctr = args->value;
@@ -72,25 +76,28 @@ static void check_one(void* a, grpc_error* error) {
static void execute_many_loop(void* a) {
thd_args* args = static_cast<thd_args*>(a);
- grpc_core::ExecCtx exec_ctx;
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
size_t n = 1;
for (size_t i = 0; i < 10; i++) {
for (size_t j = 0; j < 10000; j++) {
ex_args* c = static_cast<ex_args*>(gpr_malloc(sizeof(*c)));
c->ctr = &args->ctr;
c->value = n++;
- GRPC_CLOSURE_SCHED(GRPC_CLOSURE_CREATE(
+ GRPC_CLOSURE_SCHED(&exec_ctx,
+ GRPC_CLOSURE_CREATE(
check_one, c, grpc_combiner_scheduler(args->lock)),
GRPC_ERROR_NONE);
- grpc_core::ExecCtx::Get()->Flush();
+ grpc_exec_ctx_flush(&exec_ctx);
}
// sleep for a little bit, to test a combiner draining and another thread
// picking it up
gpr_sleep_until(grpc_timeout_milliseconds_to_deadline(100));
}
- GRPC_CLOSURE_SCHED(GRPC_CLOSURE_CREATE(set_event_to_true, &args->done,
+ GRPC_CLOSURE_SCHED(&exec_ctx,
+ GRPC_CLOSURE_CREATE(set_event_to_true, &args->done,
grpc_combiner_scheduler(args->lock)),
GRPC_ERROR_NONE);
+ grpc_exec_ctx_finish(&exec_ctx);
}
static void test_execute_many(void) {
@@ -113,18 +120,20 @@ static void test_execute_many(void) {
gpr_inf_future(GPR_CLOCK_REALTIME)) != nullptr);
gpr_thd_join(thds[i]);
}
- grpc_core::ExecCtx exec_ctx;
- GRPC_COMBINER_UNREF(lock, "test_execute_many");
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
+ GRPC_COMBINER_UNREF(&exec_ctx, lock, "test_execute_many");
+ grpc_exec_ctx_finish(&exec_ctx);
}
static gpr_event got_in_finally;
-static void in_finally(void* arg, grpc_error* error) {
+static void in_finally(grpc_exec_ctx* exec_ctx, void* arg, grpc_error* error) {
gpr_event_set(&got_in_finally, (void*)1);
}
-static void add_finally(void* arg, grpc_error* error) {
- GRPC_CLOSURE_SCHED(GRPC_CLOSURE_CREATE(in_finally, arg,
+static void add_finally(grpc_exec_ctx* exec_ctx, void* arg, grpc_error* error) {
+ GRPC_CLOSURE_SCHED(exec_ctx,
+ GRPC_CLOSURE_CREATE(in_finally, arg,
grpc_combiner_finally_scheduler(
static_cast<grpc_combiner*>(arg))),
GRPC_ERROR_NONE);
@@ -134,15 +143,17 @@ static void test_execute_finally(void) {
gpr_log(GPR_DEBUG, "test_execute_finally");
grpc_combiner* lock = grpc_combiner_create();
- grpc_core::ExecCtx exec_ctx;
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
gpr_event_init(&got_in_finally);
GRPC_CLOSURE_SCHED(
+ &exec_ctx,
GRPC_CLOSURE_CREATE(add_finally, lock, grpc_combiner_scheduler(lock)),
GRPC_ERROR_NONE);
- grpc_core::ExecCtx::Get()->Flush();
+ grpc_exec_ctx_flush(&exec_ctx);
GPR_ASSERT(gpr_event_wait(&got_in_finally,
grpc_timeout_seconds_to_deadline(5)) != nullptr);
- GRPC_COMBINER_UNREF(lock, "test_execute_finally");
+ GRPC_COMBINER_UNREF(&exec_ctx, lock, "test_execute_finally");
+ grpc_exec_ctx_finish(&exec_ctx);
}
int main(int argc, char** argv) {