module Socrates::Adapters::StubUserDirectory

StubUserDirectory provides some simple stub behavior for adding stubbed users and querying against them. This is to be used by the stubbed versions of adapters (like Console and Memory).

Attributes

default_user[RW]

Public Class Methods

new() click to toggle source
# File lib/socrates/adapters/stubs.rb, line 23
def initialize
  @users = []
end

Public Instance Methods

add_user(id: nil, name: nil, first: nil, last: nil, email: nil, tz_offset: 0) click to toggle source

rubocop:disable Metrics/ParameterLists

# File lib/socrates/adapters/stubs.rb, line 28
def add_user(id: nil, name: nil, first: nil, last: nil, email: nil, tz_offset: 0)
  User.new(id, name, tz_offset, Profile.new(first, last, email)).tap do |new_user|
    @users << new_user
  end
end
lookup_email(*) click to toggle source
# File lib/socrates/adapters/stubs.rb, line 43
def lookup_email(*)
  @default_user.profile&.email
end
user_from(*) click to toggle source
# File lib/socrates/adapters/stubs.rb, line 39
def user_from(*)
  @default_user
end
users(*) click to toggle source

rubocop:enable Metrics/ParameterLists

# File lib/socrates/adapters/stubs.rb, line 35
def users(*)
  @users
end