diff options
Diffstat (limited to 'test/core/end2end/tests/binary_metadata.c')
-rw-r--r-- | test/core/end2end/tests/binary_metadata.c | 259 |
1 files changed, 135 insertions, 124 deletions
diff --git a/test/core/end2end/tests/binary_metadata.c b/test/core/end2end/tests/binary_metadata.c index 21e0bbcc49..2b32077847 100644 --- a/test/core/end2end/tests/binary_metadata.c +++ b/test/core/end2end/tests/binary_metadata.c @@ -43,97 +43,117 @@ #include <grpc/support/useful.h> #include "test/core/end2end/cq_verifier.h" -enum { TIMEOUT = 200000 }; +enum +{ TIMEOUT = 200000 }; -static void *tag(gpr_intptr t) { return (void *)t; } +static void * +tag (gpr_intptr t) +{ + return (void *) t; +} -static grpc_end2end_test_fixture begin_test(grpc_end2end_test_config config, - const char *test_name, - grpc_channel_args *client_args, - grpc_channel_args *server_args) { +static grpc_end2end_test_fixture +begin_test (grpc_end2end_test_config config, const char *test_name, grpc_channel_args * client_args, grpc_channel_args * server_args) +{ grpc_end2end_test_fixture f; - gpr_log(GPR_INFO, "%s/%s", test_name, config.name); - f = config.create_fixture(client_args, server_args); - config.init_client(&f, client_args); - config.init_server(&f, server_args); + gpr_log (GPR_INFO, "%s/%s", test_name, config.name); + f = config.create_fixture (client_args, server_args); + config.init_client (&f, client_args); + config.init_server (&f, server_args); return f; } -static gpr_timespec n_seconds_time(int n) { - return GRPC_TIMEOUT_SECONDS_TO_DEADLINE(n); +static gpr_timespec +n_seconds_time (int n) +{ + return GRPC_TIMEOUT_SECONDS_TO_DEADLINE (n); } -static gpr_timespec five_seconds_time(void) { return n_seconds_time(5); } +static gpr_timespec +five_seconds_time (void) +{ + return n_seconds_time (5); +} -static void drain_cq(grpc_completion_queue *cq) { +static void +drain_cq (grpc_completion_queue * cq) +{ grpc_event ev; - do { - ev = grpc_completion_queue_next(cq, five_seconds_time(), NULL); - } while (ev.type != GRPC_QUEUE_SHUTDOWN); + do + { + ev = grpc_completion_queue_next (cq, five_seconds_time (), NULL); + } + while (ev.type != GRPC_QUEUE_SHUTDOWN); } -static void shutdown_server(grpc_end2end_test_fixture *f) { - if (!f->server) return; - grpc_server_shutdown_and_notify(f->server, f->cq, tag(1000)); - GPR_ASSERT(grpc_completion_queue_pluck( - f->cq, tag(1000), GRPC_TIMEOUT_SECONDS_TO_DEADLINE(5), NULL) - .type == GRPC_OP_COMPLETE); - grpc_server_destroy(f->server); +static void +shutdown_server (grpc_end2end_test_fixture * f) +{ + if (!f->server) + return; + grpc_server_shutdown_and_notify (f->server, f->cq, tag (1000)); + GPR_ASSERT (grpc_completion_queue_pluck (f->cq, tag (1000), GRPC_TIMEOUT_SECONDS_TO_DEADLINE (5), NULL).type == GRPC_OP_COMPLETE); + grpc_server_destroy (f->server); f->server = NULL; } -static void shutdown_client(grpc_end2end_test_fixture *f) { - if (!f->client) return; - grpc_channel_destroy(f->client); +static void +shutdown_client (grpc_end2end_test_fixture * f) +{ + if (!f->client) + return; + grpc_channel_destroy (f->client); f->client = NULL; } -static void end_test(grpc_end2end_test_fixture *f) { - shutdown_server(f); - shutdown_client(f); +static void +end_test (grpc_end2end_test_fixture * f) +{ + shutdown_server (f); + shutdown_client (f); - grpc_completion_queue_shutdown(f->cq); - drain_cq(f->cq); - grpc_completion_queue_destroy(f->cq); + grpc_completion_queue_shutdown (f->cq); + drain_cq (f->cq); + grpc_completion_queue_destroy (f->cq); } /* Request/response with metadata and payload.*/ -static void test_request_response_with_metadata_and_payload( - grpc_end2end_test_config config) { +static void +test_request_response_with_metadata_and_payload (grpc_end2end_test_config config) +{ grpc_call *c; grpc_call *s; - gpr_slice request_payload_slice = gpr_slice_from_copied_string("hello world"); - gpr_slice response_payload_slice = gpr_slice_from_copied_string("hello you"); - grpc_byte_buffer *request_payload = - grpc_raw_byte_buffer_create(&request_payload_slice, 1); - grpc_byte_buffer *response_payload = - grpc_raw_byte_buffer_create(&response_payload_slice, 1); - gpr_timespec deadline = five_seconds_time(); + gpr_slice request_payload_slice = gpr_slice_from_copied_string ("hello world"); + gpr_slice response_payload_slice = gpr_slice_from_copied_string ("hello you"); + grpc_byte_buffer *request_payload = grpc_raw_byte_buffer_create (&request_payload_slice, 1); + grpc_byte_buffer *response_payload = grpc_raw_byte_buffer_create (&response_payload_slice, 1); + gpr_timespec deadline = five_seconds_time (); grpc_metadata meta_c[2] = { - {"key1-bin", - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc", - 13, - 0, - {{NULL, NULL, NULL, NULL}}}, - {"key2-bin", - "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d", - 14, - 0, - {{NULL, NULL, NULL, NULL}}}}; + {"key1-bin", + "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc", + 13, + 0, + {{NULL, NULL, NULL, NULL}}}, + {"key2-bin", + "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d", + 14, + 0, + {{NULL, NULL, NULL, NULL}}} + }; grpc_metadata meta_s[2] = { - {"key3-bin", - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee", - 15, - 0, - {{NULL, NULL, NULL, NULL}}}, - {"key4-bin", - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", - 16, - 0, - {{NULL, NULL, NULL, NULL}}}}; - grpc_end2end_test_fixture f = begin_test( - config, "test_request_response_with_metadata_and_payload", NULL, NULL); - cq_verifier *cqv = cq_verifier_create(f.cq); + {"key3-bin", + "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee", + 15, + 0, + {{NULL, NULL, NULL, NULL}}}, + {"key4-bin", + "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", + 16, + 0, + {{NULL, NULL, NULL, NULL}}} + }; + grpc_end2end_test_fixture f = begin_test (config, "test_request_response_with_metadata_and_payload", NULL, NULL); + cq_verifier *cqv = cq_verifier_create (f.cq); grpc_op ops[6]; grpc_op *op; grpc_metadata_array initial_metadata_recv; @@ -148,14 +168,13 @@ static void test_request_response_with_metadata_and_payload( size_t details_capacity = 0; int was_cancelled = 2; - c = grpc_channel_create_call(f.client, NULL, GRPC_PROPAGATE_DEFAULTS, f.cq, - "/foo", "foo.test.google.fr", deadline, NULL); - GPR_ASSERT(c); + c = grpc_channel_create_call (f.client, NULL, GRPC_PROPAGATE_DEFAULTS, f.cq, "/foo", "foo.test.google.fr", deadline, NULL); + GPR_ASSERT (c); - grpc_metadata_array_init(&initial_metadata_recv); - grpc_metadata_array_init(&trailing_metadata_recv); - grpc_metadata_array_init(&request_metadata_recv); - grpc_call_details_init(&call_details); + grpc_metadata_array_init (&initial_metadata_recv); + grpc_metadata_array_init (&trailing_metadata_recv); + grpc_metadata_array_init (&request_metadata_recv); + grpc_call_details_init (&call_details); op = ops; op->op = GRPC_OP_SEND_INITIAL_METADATA; @@ -191,15 +210,13 @@ static void test_request_response_with_metadata_and_payload( op->flags = 0; op->reserved = NULL; op++; - error = grpc_call_start_batch(c, ops, (size_t)(op - ops), tag(1), NULL); - GPR_ASSERT(GRPC_CALL_OK == error); + error = grpc_call_start_batch (c, ops, (size_t) (op - ops), tag (1), NULL); + GPR_ASSERT (GRPC_CALL_OK == error); - error = - grpc_server_request_call(f.server, &s, &call_details, - &request_metadata_recv, f.cq, f.cq, tag(101)); - GPR_ASSERT(GRPC_CALL_OK == error); - cq_expect_completion(cqv, tag(101), 1); - cq_verify(cqv); + error = grpc_server_request_call (f.server, &s, &call_details, &request_metadata_recv, f.cq, f.cq, tag (101)); + GPR_ASSERT (GRPC_CALL_OK == error); + cq_expect_completion (cqv, tag (101), 1); + cq_verify (cqv); op = ops; op->op = GRPC_OP_SEND_INITIAL_METADATA; @@ -213,11 +230,11 @@ static void test_request_response_with_metadata_and_payload( op->flags = 0; op->reserved = NULL; op++; - error = grpc_call_start_batch(s, ops, (size_t)(op - ops), tag(102), NULL); - GPR_ASSERT(GRPC_CALL_OK == error); + error = grpc_call_start_batch (s, ops, (size_t) (op - ops), tag (102), NULL); + GPR_ASSERT (GRPC_CALL_OK == error); - cq_expect_completion(cqv, tag(102), 1); - cq_verify(cqv); + cq_expect_completion (cqv, tag (102), 1); + cq_verify (cqv); op = ops; op->op = GRPC_OP_RECV_CLOSE_ON_SERVER; @@ -237,53 +254,47 @@ static void test_request_response_with_metadata_and_payload( op->flags = 0; op->reserved = NULL; op++; - error = grpc_call_start_batch(s, ops, (size_t)(op - ops), tag(103), NULL); - GPR_ASSERT(GRPC_CALL_OK == error); + error = grpc_call_start_batch (s, ops, (size_t) (op - ops), tag (103), NULL); + GPR_ASSERT (GRPC_CALL_OK == error); - cq_expect_completion(cqv, tag(103), 1); - cq_expect_completion(cqv, tag(1), 1); - cq_verify(cqv); + cq_expect_completion (cqv, tag (103), 1); + cq_expect_completion (cqv, tag (1), 1); + cq_verify (cqv); - GPR_ASSERT(status == GRPC_STATUS_OK); - GPR_ASSERT(0 == strcmp(details, "xyz")); - GPR_ASSERT(0 == strcmp(call_details.method, "/foo")); - GPR_ASSERT(0 == strcmp(call_details.host, "foo.test.google.fr")); - GPR_ASSERT(was_cancelled == 0); - GPR_ASSERT(byte_buffer_eq_string(request_payload_recv, "hello world")); - GPR_ASSERT(byte_buffer_eq_string(response_payload_recv, "hello you")); - GPR_ASSERT(contains_metadata( - &request_metadata_recv, "key1-bin", - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc")); - GPR_ASSERT(contains_metadata( - &request_metadata_recv, "key2-bin", - "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d")); - GPR_ASSERT(contains_metadata( - &initial_metadata_recv, "key3-bin", - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee")); - GPR_ASSERT(contains_metadata( - &initial_metadata_recv, "key4-bin", - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff")); + GPR_ASSERT (status == GRPC_STATUS_OK); + GPR_ASSERT (0 == strcmp (details, "xyz")); + GPR_ASSERT (0 == strcmp (call_details.method, "/foo")); + GPR_ASSERT (0 == strcmp (call_details.host, "foo.test.google.fr")); + GPR_ASSERT (was_cancelled == 0); + GPR_ASSERT (byte_buffer_eq_string (request_payload_recv, "hello world")); + GPR_ASSERT (byte_buffer_eq_string (response_payload_recv, "hello you")); + GPR_ASSERT (contains_metadata (&request_metadata_recv, "key1-bin", "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc")); + GPR_ASSERT (contains_metadata (&request_metadata_recv, "key2-bin", "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d")); + GPR_ASSERT (contains_metadata (&initial_metadata_recv, "key3-bin", "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee")); + GPR_ASSERT (contains_metadata (&initial_metadata_recv, "key4-bin", "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff")); - gpr_free(details); - grpc_metadata_array_destroy(&initial_metadata_recv); - grpc_metadata_array_destroy(&trailing_metadata_recv); - grpc_metadata_array_destroy(&request_metadata_recv); - grpc_call_details_destroy(&call_details); + gpr_free (details); + grpc_metadata_array_destroy (&initial_metadata_recv); + grpc_metadata_array_destroy (&trailing_metadata_recv); + grpc_metadata_array_destroy (&request_metadata_recv); + grpc_call_details_destroy (&call_details); - grpc_call_destroy(c); - grpc_call_destroy(s); + grpc_call_destroy (c); + grpc_call_destroy (s); - cq_verifier_destroy(cqv); + cq_verifier_destroy (cqv); - grpc_byte_buffer_destroy(request_payload); - grpc_byte_buffer_destroy(response_payload); - grpc_byte_buffer_destroy(request_payload_recv); - grpc_byte_buffer_destroy(response_payload_recv); + grpc_byte_buffer_destroy (request_payload); + grpc_byte_buffer_destroy (response_payload); + grpc_byte_buffer_destroy (request_payload_recv); + grpc_byte_buffer_destroy (response_payload_recv); - end_test(&f); - config.tear_down_data(&f); + end_test (&f); + config.tear_down_data (&f); } -void grpc_end2end_tests(grpc_end2end_test_config config) { - test_request_response_with_metadata_and_payload(config); +void +grpc_end2end_tests (grpc_end2end_test_config config) +{ + test_request_response_with_metadata_and_payload (config); } |