Skip to content

Commit

Permalink
add tests for Facebook log in [#90]
Browse files Browse the repository at this point in the history
  • Loading branch information
Anna Anks Nowak committed Mar 22, 2016
1 parent 0d28bc3 commit cd0dc7a
Showing 1 changed file with 35 additions and 0 deletions.
35 changes: 35 additions & 0 deletions test/integration/sign_in_sign_out_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,41 @@ class SignInSignOutTest < ActionDispatch::IntegrationTest
assert_equal current_path, root_path
end

describe "Facebook" do
setup do
OmniAuth.config.test_mode = true
OmniAuth.config.add_mock(
:facebook,
provider: 'facebook',
uid: '123545',
info:
{
first_name: 'Facebook',
last_name: 'User'
}
)
OmniAuth.config.on_failure = Proc.new { |env|
OmniAuth::FailureEndpoint.new(env).redirect_to_failure
}
end

test "user can log in with Facebook account" do
visit root_path
click_link t('user.log_in_fb')
assert has_content? t('user.form.login_success')
assert has_content? "#{t('user.logged_in_as')} Facebook User"
end

test "user can log in with Facebook but resign during the process" do
OmniAuth.config.mock_auth[:facebook] = :invalid_credentials
visit root_path
click_link t('user.log_in_fb')
assert has_content? t('user.form.login_fail')
assert_not has_content? t('user.logged_in_as')
assert has_content? t('user.not_loggedin')
end
end

test "non-logged in user doesn't see any name on the page" do
visit login_path
assert has_content? t('user.not_loggedin')
Expand Down

0 comments on commit cd0dc7a

Please sign in to comment.