module G5Authenticatable::Test::FeatureHelpers
Helpers for feature specs
Public Instance Methods
stub_g5_invalid_credentials()
click to toggle source
# File lib/g5_authenticatable/test/feature_helpers.rb, line 17 def stub_g5_invalid_credentials OmniAuth.config.mock_auth[:g5] = :invalid_credentials end
stub_g5_omniauth(user, options = {})
click to toggle source
# File lib/g5_authenticatable/test/feature_helpers.rb, line 7 def stub_g5_omniauth(user, options = {}) OmniAuth.config.mock_auth[:g5] = OmniAuth::AuthHash.new({ uid: user.uid, provider: 'g5', info: basic_auth_info(user), credentials: { token: user.g5_access_token }, extra: extra_auth_info(user) }.merge(options)) end
visit_path_and_login_with(path, user)
click to toggle source
# File lib/g5_authenticatable/test/feature_helpers.rb, line 21 def visit_path_and_login_with(path, user) stub_g5_omniauth(user) stub_valid_access_token(user.g5_access_token) visit path end
Private Instance Methods
basic_auth_info(user)
click to toggle source
# File lib/g5_authenticatable/test/feature_helpers.rb, line 29 def basic_auth_info(user) { email: user.email, first_name: user.first_name, last_name: user.last_name, phone: user.phone_number } end
extra_auth_info(user)
click to toggle source
# File lib/g5_authenticatable/test/feature_helpers.rb, line 38 def extra_auth_info(user) { title: user.title, organization_name: user.organization_name, roles: user.roles.collect do |role| { name: role.name, type: 'GLOBAL', urn: nil } end, raw_info: {} } end