Skip to content

Commit cec034b

Browse files
authored
fix: fixed query param not going for delete (#693)
1 parent 9db1a24 commit cec034b

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

lib/twilio-ruby/http/http_client.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ module Twilio
66
module HTTP
77
class Client
88
attr_accessor :adapter
9-
attr_reader :timeout, :last_response, :last_request
9+
attr_reader :timeout, :last_response, :last_request, :connection
1010

1111
def initialize(proxy_prot = nil, proxy_addr = nil, proxy_port = nil, proxy_user = nil, proxy_pass = nil,
1212
ssl_ca_file = nil, timeout: nil)
@@ -39,6 +39,7 @@ def _request(request) # rubocop:disable Metrics/MethodLength
3939
f.proxy = "#{@proxy_prot}://#{@proxy_auth}#{@proxy_path}" if @proxy_prot && @proxy_path
4040
f.options.open_timeout = request.timeout || @timeout
4141
f.options.timeout = request.timeout || @timeout
42+
f.params = request.params.nil? ? {} : request.params
4243

4344
@configure_connection_blocks.each { |block| block.call(f) }
4445
f.adapter @adapter
@@ -65,7 +66,7 @@ def _request(request) # rubocop:disable Metrics/MethodLength
6566
def send(request)
6667
@connection.send(request.method.downcase.to_sym,
6768
request.url,
68-
request.method == 'GET' ? request.params : request.data)
69+
request.data)
6970
rescue Faraday::Error => e
7071
raise Twilio::REST::TwilioError, e
7172
end

spec/http/http_client_spec.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,13 @@
133133
expect(@client.last_request.timeout).to be_nil
134134
end
135135

136+
it 'should contain params in Connection object' do
137+
allow_any_instance_of(Faraday::Connection).to receive(:send).and_return(double('response', status: 301, body: {}, headers: { something: '1' }))
138+
params = Twilio::Values.of({ 'abc' => 'xyz' })
139+
@client.request('host', 'port', 'DELETE', 'url', params, nil, {}, ['a', 'b'])
140+
expect(@client.connection.params).to eq({ 'abc' => 'xyz' })
141+
end
142+
136143
describe 'last_response' do
137144
let(:last_response) { Twilio::Response.new(200, 'body') }
138145
end

spec/spec_helper.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
require 'twilio-ruby'
2020
require 'rspec/matchers'
2121
require 'equivalent-xml'
22+
require 'rspec/core'
2223

2324
RSpec.configure do |config|
2425
config.expect_with :rspec do |c|

0 commit comments

Comments
 (0)