class TinyGate::TestHelper::User
Attributes
email[R]
first_name[R]
id[R]
last_name[R]
password[R]
token[R]
Public Class Methods
new(id, email, password, first_name = 'First', last_name = 'Last')
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 6 def initialize(id, email, password, first_name = 'First', last_name = 'Last') @id = id @email = email @password = password @first_name = first_name @last_name = last_name @token = SecureRandom.hex @permissions = Set.new @current_organization_id = nil end
Public Instance Methods
add_permission(permission_id, role_id, role_name, organization_id, organization_name = nil, app_id = nil)
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 21 def add_permission(permission_id, role_id, role_name, organization_id, organization_name = nil, app_id = nil) @permissions << OpenStruct.new( id: permission_id, role_id: role_id, role_name: role_name, organization_id: organization_id, organization_name: organization_name, app_id: app_id ) end
data()
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 32 def data { id: id, email: email, token: token, first_name: first_name, last_name: last_name, current_permission: current_permission, active_permissions: active_permissions } end
sign_in(organization_id = nil)
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 17 def sign_in(organization_id = nil) @current_organization_id = organization_id end
Private Instance Methods
active_permissions()
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 58 def active_permissions @permissions.map { |permission| to_hash(permission) } end
current_organization_id()
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 46 def current_organization_id @current_organization_id || @permissions.first.organization_id end
current_permission()
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 50 def current_permission to_hash(find_current_permission) end
find_current_permission()
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 54 def find_current_permission current_organization_id && @permissions.detect { |p| p.organization_id == current_organization_id } end
to_hash(permission)
click to toggle source
# File lib/tiny_gate/test_helper/user.rb, line 62 def to_hash(permission) { id: permission.id, role_id: permission.role_id, role_name: permission.role_name, organization_id: permission.organization_id, organization_name: permission.organization_name, app_id: permission.app_id, user_id: id } end