mirror of https://github.com/grpc/grpc.git
Api fuzzer extensions to support simulating traffic congestion (#27820)
* adding api_fuzzer changes * adding api fuzzer changes * updating some typos * updating api_fuzzer and corpus entries * updating api_fuzzer to fix crash due to two successive receive_op batches * adding some reverted fixes to api_fuzzer.cc * updating api_fuzzer and corpus as per initial comments * fix some typos * fix memory leaks and timeout issues * adding some comments and removing debug strings * updating api_fuzzer to remove previous edits to always add recv initial metadata ops for client calls * updating passthru endpoint to account for erroneous initialization when channel effects are not simulated * tidying up codepull/27967/head
parent
83868b695e
commit
c1089d2964
6 changed files with 1515 additions and 47 deletions
@ -0,0 +1,618 @@ |
||||
actions { |
||||
create_server { |
||||
} |
||||
} |
||||
actions { |
||||
create_channel { |
||||
target: "dns:server" |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
create_call { |
||||
method: { value: "/foo" } |
||||
timeout: 1000000000 |
||||
} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_initial_metadata {} |
||||
} |
||||
operations { |
||||
receive_initial_metadata {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
request_call {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_initial_metadata {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_message { |
||||
message { |
||||
value: "hello world" |
||||
} |
||||
} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
receive_message {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_message { |
||||
message { |
||||
value: "hello world" |
||||
} |
||||
} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
receive_message {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
receive_status_on_client {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_status_from_server { |
||||
status_code: 0 |
||||
} |
||||
} |
||||
operations { |
||||
receive_close_on_server {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_close_from_client {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
|
@ -0,0 +1,496 @@ |
||||
actions { |
||||
create_server { |
||||
} |
||||
} |
||||
actions { |
||||
create_channel { |
||||
target: "dns:server" |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 20 |
||||
add_n_bytes_readable: 20 |
||||
} |
||||
channel_actions { |
||||
wait_ms: 1000 |
||||
add_n_bytes_writable: 10 |
||||
add_n_bytes_readable: 10 |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
create_call { |
||||
method: { value: "/foo" } |
||||
timeout: 1000000000 |
||||
} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_initial_metadata {} |
||||
} |
||||
operations { |
||||
receive_initial_metadata {} |
||||
} |
||||
operations { |
||||
receive_message {} |
||||
} |
||||
operations { |
||||
send_close_from_client {} |
||||
} |
||||
operations { |
||||
receive_status_on_client {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
request_call {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
change_active_call {} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_initial_metadata {} |
||||
} |
||||
operations { |
||||
send_message { |
||||
message { |
||||
value: "hello world" |
||||
} |
||||
} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
queue_batch { |
||||
operations { |
||||
send_status_from_server { |
||||
status_code: 0 |
||||
} |
||||
} |
||||
operations { |
||||
receive_close_on_server {} |
||||
} |
||||
} |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
||||
actions { |
||||
poll_cq: {} |
||||
} |
||||
actions { |
||||
advance_time: 1000000 |
||||
} |
Loading…
Reference in new issue