spec/omniauth/strategies/twitter_spec.rb in omniauth-twitter-1.1.0 vs spec/omniauth/strategies/twitter_spec.rb in omniauth-twitter-1.2.0

- old
+ new

@@ -34,10 +34,18 @@ { 'profile_image_url' => 'http://twimg0-a.akamaihd.net/sticky/default_profile_images/default_profile_0_normal.png' } ) expect(subject.info[:image]).to eq('http://twimg0-a.akamaihd.net/sticky/default_profile_images/default_profile_0.png') end + it 'should return bigger image when bigger size specified' do + @options = { :image_size => 'bigger' } + allow(subject).to receive(:raw_info).and_return( + { 'profile_image_url' => 'http://twimg0-a.akamaihd.net/sticky/default_profile_images/default_profile_0_normal.png' } + ) + expect(subject.info[:image]).to eq('http://twimg0-a.akamaihd.net/sticky/default_profile_images/default_profile_0_bigger.png') + end + it 'should return secure image with size specified' do @options = { :secure_image_url => 'true', :image_size => 'mini' } allow(subject).to receive(:raw_info).and_return( { 'profile_image_url_https' => 'https://twimg0-a.akamaihd.net/sticky/default_profile_images/default_profile_0_normal.png' } ) @@ -51,10 +59,20 @@ expect(subject.info[:image]).to eq('http://twimg0-a.akamaihd.net/sticky/default_profile_images/default_profile_0_normal.png') end end end + describe 'skip_info option' do + context 'when skip info option is enabled' do + it 'should not include raw_info in extras hash' do + @options = { :skip_info => true } + allow(subject).to receive(:raw_info).and_return({:foo => 'bar'}) + expect(subject.extra[:raw_info]).to eq(nil) + end + end + end + describe 'request_phase' do context 'with no request params set and x_auth_access_type specified' do before do allow(subject).to receive(:request).and_return( double('Request', {:params => {'x_auth_access_type' => 'read'}}) @@ -68,17 +86,30 @@ end context "with no request params set and use_authorize options provided" do before do @options = { :use_authorize => true } - subject.stub(:request).and_return( - double('Request', {:params => {}}) - ) - subject.stub(:old_request_phase).and_return(:whatever) + allow(subject).to receive(:request) do + double('Request', {:params => {} }) + end + allow(subject).to receive(:old_request_phase) { :whatever } end it "should switch authorize_path from authenticate to authorize" do expect { subject.request_phase }.to change { subject.options.client_options.authorize_path }.from('/oauth/authenticate').to('/oauth/authorize') + end + end + + context "with no request params set and force_login specified" do + before do + allow(subject).to receive(:request) do + double('Request', {:params => { 'force_login' => true } }) + end + allow(subject).to receive(:old_request_phase) { :whatever } + end + + it "should change add force_login=true to authorize_params" do + expect { subject.request_phase }.to change {subject.options.authorize_params.force_login}.from(nil).to(true) end end end end