Skip to content

Commit

Permalink
Merge pull request #2 from jjbohn/openid_test
Browse files Browse the repository at this point in the history
Added name and email to info hash
  • Loading branch information
jjbohn committed Feb 24, 2014
2 parents 4437955 + b1a327d commit 8140444
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 9 deletions.
7 changes: 7 additions & 0 deletions lib/omniauth/strategies/openid-connect.rb
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,13 @@ class OpenIDConnect

uid { user_info.sub }

info do
{
name: user_info.name,
email: user_info.email,
}
end

def client
@client ||= ::OpenIDConnect::Client.new(client_options)
end
Expand Down
20 changes: 11 additions & 9 deletions test/lib/omniauth/strategies/openid-connect_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,9 @@ def test_request_phase
end

def test_uid
subscriber_id = "1234"
user_info = stub('OpenIDConnect::ResponseObject::UserInfo')
user_info.expects(:sub).returns(subscriber_id)
strategy.stubs(:user_info).returns(user_info)
strategy.expects(:user_info).returns(user_info)

assert_equal subscriber_id, strategy.uid
assert_equal user_info.sub, strategy.uid
end

def test_callback_phase
Expand All @@ -30,14 +27,19 @@ def test_callback_phase
request.stubs(:params).returns({"code" => code})
request.stubs(:path_info).returns("")

user_info = stub('OpenIDConnect::ResponseObject::UserInfo')
user_info.expects(:sub)
access_token = stub('OpenIDConnect::AccessToken')
access_token.expects(:userinfo!).returns(user_info)

client.expects(:access_token!).returns(access_token)
access_token.expects(:userinfo!).returns(user_info)

strategy.call!({"rack.session" => {}})
strategy.callback_phase
end

def test_info
strategy.stubs(:user_info).returns(user_info)

info = strategy.info
assert_equal user_info.name, info[:name]
assert_equal user_info.email, info[:email]
end
end
8 changes: 8 additions & 0 deletions test/test_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,14 @@ def client
strategy.client
end

def user_info
@user_info ||= stub('OpenIDConnect::ResponseObject::UserInfo').tap do |info|
info.stubs(:sub).returns("19349xw")
info.stubs(:name).returns("John Bohn")
info.stubs(:email).returns("jjbohn@gmail.com")
end
end

def request
@request ||= stub('Request').tap do |request|
request.stubs(:params).returns({})
Expand Down

0 comments on commit 8140444

Please sign in to comment.