Merge prioridata-master

This commit is contained in:
Steven Bazyl 2014-12-15 13:42:17 -08:00
commit 91ae01aa83
2 changed files with 26 additions and 14 deletions

View File

@ -75,6 +75,8 @@ module Google
# @option options [String] :ca_file # @option options [String] :ca_file
# Optional set of root certificates to use when validating SSL connections. # Optional set of root certificates to use when validating SSL connections.
# By default, a bundled set of trusted roots will be used. # By default, a bundled set of trusted roots will be used.
# @options options[Hash] :faraday_options
# Pass through of options to set on the Faraday connection
def initialize(options={}) def initialize(options={})
logger.debug { "#{self.class} - Initializing client with options #{options}" } logger.debug { "#{self.class} - Initializing client with options #{options}" }
@ -123,6 +125,11 @@ module Google
faraday.ssl.verify = true faraday.ssl.verify = true
faraday.proxy proxy faraday.proxy proxy
faraday.adapter Faraday.default_adapter faraday.adapter Faraday.default_adapter
if options[:faraday_option].is_a?(Hash)
options[:faraday_option].each_pair do |option, value|
faraday.options.send("#{option}=", value)
end
end
end end
return self return self
end end

View File

@ -20,7 +20,7 @@ require 'google/api_client'
shared_examples_for 'configurable user agent' do shared_examples_for 'configurable user agent' do
include ConnectionHelpers include ConnectionHelpers
it 'should allow the user agent to be modified' do it 'should allow the user agent to be modified' do
client.user_agent = 'Custom User Agent/1.2.3' client.user_agent = 'Custom User Agent/1.2.3'
expect(client.user_agent).to eq('Custom User Agent/1.2.3') expect(client.user_agent).to eq('Custom User Agent/1.2.3')
@ -59,6 +59,11 @@ RSpec.describe Google::APIClient do
let(:client) { Google::APIClient.new(:application_name => 'API Client Tests') } let(:client) { Google::APIClient.new(:application_name => 'API Client Tests') }
it "should pass the faraday options provided on initialization to FaraDay configuration block" do
client = Google::APIClient.new(faraday_option: {timeout: 999})
expect(client.connection.options.timeout).to be == 999
end
it 'should make its version number available' do it 'should make its version number available' do
expect(Google::APIClient::VERSION::STRING).to be_instance_of(String) expect(Google::APIClient::VERSION::STRING).to be_instance_of(String)
end end
@ -73,7 +78,7 @@ RSpec.describe Google::APIClient do
end end
it_should_behave_like 'configurable user agent' it_should_behave_like 'configurable user agent'
end end
describe 'configured for OAuth 1' do describe 'configured for OAuth 1' do
before do before do
client.authorization = :oauth_1 client.authorization = :oauth_1
@ -107,7 +112,7 @@ RSpec.describe Google::APIClient do
# TODO # TODO
it_should_behave_like 'configurable user agent' it_should_behave_like 'configurable user agent'
end end
describe 'when executing requests' do describe 'when executing requests' do
before do before do
@prediction = client.discovered_api('prediction', 'v1.2') @prediction = client.discovered_api('prediction', 'v1.2')
@ -123,10 +128,10 @@ RSpec.describe Google::APIClient do
after do after do
@connection.verify @connection.verify
end end
it 'should use default authorization' do it 'should use default authorization' do
client.authorization.access_token = "12345" client.authorization.access_token = "12345"
client.execute( client.execute(
:api_method => @prediction.training.insert, :api_method => @prediction.training.insert,
:parameters => {'data' => '12345'}, :parameters => {'data' => '12345'},
:connection => @connection :connection => @connection
@ -136,14 +141,14 @@ RSpec.describe Google::APIClient do
it 'should use request scoped authorization when provided' do it 'should use request scoped authorization when provided' do
client.authorization.access_token = "abcdef" client.authorization.access_token = "abcdef"
new_auth = Signet::OAuth2::Client.new(:access_token => '12345') new_auth = Signet::OAuth2::Client.new(:access_token => '12345')
client.execute( client.execute(
:api_method => @prediction.training.insert, :api_method => @prediction.training.insert,
:parameters => {'data' => '12345'}, :parameters => {'data' => '12345'},
:authorization => new_auth, :authorization => new_auth,
:connection => @connection :connection => @connection
) )
end end
it 'should accept options with batch/request style execute' do it 'should accept options with batch/request style execute' do
client.authorization.access_token = "abcdef" client.authorization.access_token = "abcdef"
new_auth = Signet::OAuth2::Client.new(:access_token => '12345') new_auth = Signet::OAuth2::Client.new(:access_token => '12345')
@ -157,17 +162,17 @@ RSpec.describe Google::APIClient do
:connection => @connection :connection => @connection
) )
end end
it 'should accept options in array style execute' do it 'should accept options in array style execute' do
client.authorization.access_token = "abcdef" client.authorization.access_token = "abcdef"
new_auth = Signet::OAuth2::Client.new(:access_token => '12345') new_auth = Signet::OAuth2::Client.new(:access_token => '12345')
client.execute( client.execute(
@prediction.training.insert, {'data' => '12345'}, '', {}, @prediction.training.insert, {'data' => '12345'}, '', {},
{ :authorization => new_auth, :connection => @connection } { :authorization => new_auth, :connection => @connection }
) )
end end
end end
describe 'when retries enabled' do describe 'when retries enabled' do
before do before do
@ -177,7 +182,7 @@ RSpec.describe Google::APIClient do
after do after do
@connection.verify @connection.verify
end end
it 'should follow redirects' do it 'should follow redirects' do
client.authorization = nil client.authorization = nil
@connection = stub_connection do |stub| @connection = stub_connection do |stub|
@ -284,5 +289,5 @@ RSpec.describe Google::APIClient do
expect(count).to eq(3) expect(count).to eq(3)
end end
end end
end end