test/test_client.rb in foursquare2-1.4.2 vs test/test_client.rb in foursquare2-1.5.0
- old
+ new
@@ -1,10 +1,10 @@
require 'helper'
class TestClient < Test::Unit::TestCase
- context "when instantiating a client instance" do
+ context "when instantiating a client instance" do
should "use the correct url for api requests" do
@client = Foursquare2::Client.new
@client.api_url.should == 'https://api.foursquare.com/v2'
end
@@ -17,17 +17,36 @@
@client = Foursquare2::Client.new(:client_id => 'awesome', :client_secret => 'sauce')
@client.client_id.should == 'awesome'
@client.client_secret.should == 'sauce'
end
+ should "retain api version for requests" do
+ @client = Foursquare2::Client.new(:api_version => '20120505')
+ @client.api_version.should == "20120505"
+ end
+
should "retain SSL option for requests when you don't pass it as param" do
@client = Foursquare2::Client.new(:client_id => 'awesome', :client_secret => 'sauce')
@client.ssl.should == {}
end
should "retain SSL option for requests" do
@client = Foursquare2::Client.new(:client_id => 'awesome', :client_secret => 'sauce', :ssl => {:ca_file => 'path_to_ca_file'})
@client.ssl[:ca_file].should == 'path_to_ca_file'
+ end
+
+ should "apply the middleware to the connection" do
+ middleware = [FaradayMiddleware::Instrumentation,
+ [FaradayMiddleware::ParseJson, {:content_type => /\bjson$/}]]
+ client = Foursquare2::Client.new(:connection_middleware => middleware)
+
+ Faraday::Builder.any_instance.expects(:use).at_least_once
+ Faraday::Builder.any_instance.expects(:use) \
+ .with(FaradayMiddleware::Instrumentation)
+ Faraday::Builder.any_instance.expects(:use) \
+ .with(FaradayMiddleware::ParseJson, {:content_type => /\bjson$/})
+
+ client.connection
end
end
context "When returning a successful response" do
should "return the response body as a Hash." do