54 lines
1.4 KiB
Ruby
54 lines
1.4 KiB
Ruby
require 'spec_helper'
|
|
require 'google_client'
|
|
|
|
describe "OAuth", :slow=>true, :js=>true, :type=>:feature, :capybara_feature=>true, intermittent: true do
|
|
|
|
subject { page }
|
|
|
|
before(:all) do
|
|
Capybara.javascript_driver = :poltergeist
|
|
Capybara.current_driver = Capybara.javascript_driver
|
|
Capybara.default_wait_time = 10
|
|
@previous_run_server = Capybara.run_server
|
|
Capybara.run_server = false
|
|
@user=FactoryGirl.create(:user, :email=>"jamkazamtest@gmail.com")
|
|
end
|
|
|
|
before(:each) do
|
|
@youtube_client = GoogleClient.new()
|
|
end
|
|
|
|
after(:each) do
|
|
@youtube_client.shutdown if @youtube_client
|
|
@youtube_client=nil
|
|
@user.user_authorizations.destroy_all
|
|
#page.driver.remove_cookie(:remember_token)
|
|
end
|
|
|
|
after(:all) do
|
|
@user.destroy
|
|
Capybara.run_server = @previous_run_server
|
|
end
|
|
|
|
it "client should not authorize a wrong password" do
|
|
expect {
|
|
authorize_google_user(@youtube_client, @user, "f00bar")
|
|
}.to raise_error
|
|
|
|
@user.reload
|
|
@user.user_authorizations.count.should eq(0)
|
|
end
|
|
|
|
it "client should authorize a google user" do
|
|
authorize_google_user(@youtube_client, @user, "filthyblueberryjam")
|
|
#save_screenshot("working.png")
|
|
@user.reload
|
|
@user.user_authorizations.count.should eq(1)
|
|
|
|
google_auth = UserAuthorization.google_auth(@user).first
|
|
google_auth.should_not be_nil
|
|
google_auth.token.should_not be_nil
|
|
end
|
|
|
|
end
|