Sha256: 04d9b21970e45375203f601c077f9fdb4f662b3af07d178aed5b8fc2d6ee908d

Contents?: true

Size: 1.03 KB

Versions: 3

Compression:

Stored size: 1.03 KB

Contents

require_relative '../lib/authn'

module ActiveModel::Model
  def self.included(base)
    base.class_eval do
      extend  ActiveModel::Naming
      extend  ActiveModel::Translation
      include ActiveModel::Validations
      include ActiveModel::Conversion
      include ActiveModel::SecurePassword
    end
  end

  def initialize(params={})
    params.each do |attr, value|
      self.public_send("#{attr}=", value)
    end if params
  end

  def persisted?
    false
  end
end

class Account
  include ActiveModel::Model
  include AuthN::Model
  has_authentication
  has_secure_password
  attr_accessor :password_digest

  def self.password(password=nil)
    if password
      @password = password
    else
      @password
    end
  end

  def self.where(hash)
    account = if hash[:email] == "kurtis@example.com"
      Account.new(password: password, password_confirmation: password)
    end
    [account]
  end

  def id
    @id ||= rand(100000)
  end
end


class Controller
  include AuthN::Session
  def self.session
    @session ||= {}
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
authn-2.0.1 test/helper.rb
authn-2.0.0 test/helper.rb
authn-1.0.0 test/helper.rb