|
|
|
@ -60,8 +60,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
describe 'restricted view methods' do |
|
|
|
|
before(:each) do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
@client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
finished_tag: done_tag, |
|
|
|
@ -92,8 +92,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
describe '#remote_send' do |
|
|
|
|
it 'allows a client to send a payload to the server' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
@client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
finished_tag: done_tag, |
|
|
|
@ -118,8 +118,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'marshals the payload using the marshal func' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
marshal = proc { |x| 'marshalled:' + x } |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, marshal, |
|
|
|
|
@pass_through, deadline, |
|
|
|
@ -139,11 +139,11 @@ describe GRPC::ActiveCall do |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
describe '#client_start_invoke' do |
|
|
|
|
describe '#client_invoke' do |
|
|
|
|
it 'sends keywords as metadata to the server when the are present' do |
|
|
|
|
call = make_test_call |
|
|
|
|
ActiveCall.client_start_invoke(call, @client_queue, deadline, |
|
|
|
|
k1: 'v1', k2: 'v2') |
|
|
|
|
ActiveCall.client_invoke(call, @client_queue, deadline, |
|
|
|
|
k1: 'v1', k2: 'v2') |
|
|
|
|
@server.request_call(@server_tag) |
|
|
|
|
ev = @server_queue.next(deadline) |
|
|
|
|
expect(ev).to_not be_nil |
|
|
|
@ -155,8 +155,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
describe '#remote_read' do |
|
|
|
|
it 'reads the response sent by a server' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
finished_tag: done_tag, |
|
|
|
@ -170,8 +170,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'saves metadata { status=200 } when the server adds no metadata' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
finished_tag: done_tag, |
|
|
|
@ -187,8 +187,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'saves metadata add by the server' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
finished_tag: done_tag, |
|
|
|
@ -205,7 +205,7 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'get a nil msg before a status when an OK status is sent' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
@ -224,8 +224,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'unmarshals the response using the unmarshal func' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
unmarshal = proc { |x| 'unmarshalled:' + x } |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
unmarshal, deadline, |
|
|
|
@ -251,8 +251,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'the returns an enumerator that can read n responses' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
finished_tag: done_tag, |
|
|
|
@ -271,8 +271,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'the returns an enumerator that stops after an OK Status' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
read_metadata_tag: meta_tag, |
|
|
|
@ -296,8 +296,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
describe '#writes_done' do |
|
|
|
|
it 'finishes ok if the server sends a status response' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
finished_tag: done_tag, |
|
|
|
@ -315,8 +315,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'finishes ok if the server sends an early status response' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
read_metadata_tag: meta_tag, |
|
|
|
@ -334,8 +334,8 @@ describe GRPC::ActiveCall do |
|
|
|
|
|
|
|
|
|
it 'finishes ok if writes_done is true' do |
|
|
|
|
call = make_test_call |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_start_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
done_tag, meta_tag = ActiveCall.client_invoke(call, @client_queue, |
|
|
|
|
deadline) |
|
|
|
|
client_call = ActiveCall.new(call, @client_queue, @pass_through, |
|
|
|
|
@pass_through, deadline, |
|
|
|
|
read_metadata_tag: meta_tag, |
|
|
|
|