1 /*
2 *
3 * Copyright 2015 gRPC authors.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 */
18
19 #ifndef GRPC_TEST_CORE_END2END_TESTS_CANCEL_TEST_HELPERS_H
20 #define GRPC_TEST_CORE_END2END_TESTS_CANCEL_TEST_HELPERS_H
21
22 typedef struct {
23 const char* name;
24 grpc_call_error (*initiate_cancel)(grpc_call* call, void* reserved);
25 grpc_status_code expect_status;
26 const char* expect_details;
27 } cancellation_mode;
28
wait_for_deadline(grpc_call * call,void * reserved)29 static grpc_call_error wait_for_deadline(grpc_call* call, void* reserved) {
30 (void)reserved;
31 return GRPC_CALL_OK;
32 }
33
34 static const cancellation_mode cancellation_modes[] = {
35 {"cancel", grpc_call_cancel, GRPC_STATUS_CANCELLED, "Cancelled"},
36 {"deadline", wait_for_deadline, GRPC_STATUS_DEADLINE_EXCEEDED,
37 "Deadline Exceeded"},
38 };
39
40 #endif /* GRPC_TEST_CORE_END2END_TESTS_CANCEL_TEST_HELPERS_H */
41