Skip to content
Snippets Groups Projects
Commit bfe8a9fe authored by Tim Emiola's avatar Tim Emiola
Browse files

Fixes the broken ruby interop tests

parent b53b36e2
No related branches found
No related tags found
No related merge requests found
...@@ -176,8 +176,7 @@ module GRPC ...@@ -176,8 +176,7 @@ module GRPC
deadline: deadline, deadline: deadline,
timeout: timeout, timeout: timeout,
parent: parent) parent: parent)
kw_with_jwt_uri = self.class.update_with_jwt_aud_uri(kw, @host, method) md = update_metadata(kw, method)
md = @update_metadata.nil? ? kw : @update_metadata.call(kw_with_jwt_uri)
return c.request_response(req, **md) unless return_op return c.request_response(req, **md) unless return_op
# return the operation view of the active_call; define #execute as a # return the operation view of the active_call; define #execute as a
...@@ -244,8 +243,7 @@ module GRPC ...@@ -244,8 +243,7 @@ module GRPC
deadline: deadline, deadline: deadline,
timeout: timeout, timeout: timeout,
parent: parent) parent: parent)
kw_with_jwt_uri = self.class.update_with_jwt_aud_uri(kw, @host, method) md = update_metadata(kw, method)
md = @update_metadata.nil? ? kw : @update_metadata.call(kw_with_jwt_uri)
return c.client_streamer(requests, **md) unless return_op return c.client_streamer(requests, **md) unless return_op
# return the operation view of the active_call; define #execute as a # return the operation view of the active_call; define #execute as a
...@@ -322,8 +320,7 @@ module GRPC ...@@ -322,8 +320,7 @@ module GRPC
deadline: deadline, deadline: deadline,
timeout: timeout, timeout: timeout,
parent: parent) parent: parent)
kw_with_jwt_uri = self.class.update_with_jwt_aud_uri(kw, @host, method) md = update_metadata(kw, method)
md = @update_metadata.nil? ? kw : @update_metadata.call(kw_with_jwt_uri)
return c.server_streamer(req, **md, &blk) unless return_op return c.server_streamer(req, **md, &blk) unless return_op
# return the operation view of the active_call; define #execute # return the operation view of the active_call; define #execute
...@@ -439,8 +436,7 @@ module GRPC ...@@ -439,8 +436,7 @@ module GRPC
deadline: deadline, deadline: deadline,
timeout: timeout, timeout: timeout,
parent: parent) parent: parent)
kw_with_jwt_uri = self.class.update_with_jwt_aud_uri(kw, @host, method) md = update_metadata(kw, method)
md = @update_metadata.nil? ? kw : @update_metadata.call(kw_with_jwt_uri)
return c.bidi_streamer(requests, **md, &blk) unless return_op return c.bidi_streamer(requests, **md, &blk) unless return_op
# return the operation view of the active_call; define #execute # return the operation view of the active_call; define #execute
...@@ -454,6 +450,16 @@ module GRPC ...@@ -454,6 +450,16 @@ module GRPC
private private
def update_metadata(kw, method)
return kw if @update_metadata.nil?
just_jwt_uri = self.class.update_with_jwt_aud_uri({}, @host, method)
updated = @update_metadata.call(just_jwt_uri)
# keys should be lowercase
updated = Hash[updated.each_pair.map { |k, v| [k.downcase, v] }]
kw.merge(updated)
end
# Creates a new active stub # Creates a new active stub
# #
# @param method [string] the method being called. # @param method [string] the method being called.
......
...@@ -159,6 +159,20 @@ describe 'ClientStub' do ...@@ -159,6 +159,20 @@ describe 'ClientStub' do
th.join th.join
end end
it 'should downcase the keys provided by the metadata updater' do
server_port = create_test_server
host = "localhost:#{server_port}"
th = run_request_response(@sent_msg, @resp, @pass,
k1: 'downcased-key-v1', k2: 'v2')
update_md = proc do |md|
md[:K1] = 'downcased-key-v1'
md
end
stub = GRPC::ClientStub.new(host, @cq, update_metadata: update_md)
expect(get_response(stub)).to eq(@resp)
th.join
end
it 'should send a request when configured using an override channel' do it 'should send a request when configured using an override channel' do
server_port = create_test_server server_port = create_test_server
alt_host = "localhost:#{server_port}" alt_host = "localhost:#{server_port}"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment