Module: RailsStuff::RSpecHelpers::Signinable

Defined in:
lib/rails_stuff/rspec_helpers/signinable.rb

Instance Method Summary collapse

Instance Method Details

#sign_in(&block) ⇒ Object

Context-level helper to add before filter to sign in user. Adds ‘current_user` with let if not defined yet or with gven block.

Instance-level ‘sign_in(user_or_nil)` method must be defined, so this module can be used in any of feature, request or controller groups.

 { owner }
 # will call current_user or define it with nil


12
13
14
15
16
17
18
# File 'lib/rails_stuff/rspec_helpers/signinable.rb', line 12

def (&block)
  if block || !instance_methods.include?(:current_user)
    block ||= ->(*) {}
    let(:current_user, &block)
  end
  before { (instance_eval { current_user }) }
end