Sha256: aff433bc1b344862fedf9baf6a1384fb55c54c3bc8f72471a6a1d34fbc5869b4

Contents?: true

Size: 1.07 KB

Versions: 7

Compression:

Stored size: 1.07 KB

Contents

module FeatureMacros
  def login(user = nil, skip_site = false)
    user ||= FactoryGirl.create(:user)
    unless skip_site
      setup_site(user)
      set_domain(@current_site.custom_domain)
    end
    
    visit Storytime.login_path

    fill_in "user_email", :with => user.email
    fill_in "user_password", :with => user.password
    
    click_on "Log in"

    expect(page).to have_content("Signed in successfully.")
    @current_user = user
  end

  def login_admin(admin = nil)
    login FactoryGirl.create(:admin)
  end

  def login_editor(editor = nil)
    login FactoryGirl.create(:editor)
  end

  def login_writer(writer = nil)
    login FactoryGirl.create(:writer)
  end
  
  def current_user
    @current_user
  end

  def current_site
    @current_site
  end

  def setup_site(user)
    @current_site ||= FactoryGirl.create(:site)
    @current_site.save_with_seeds(user)
    @current_site.homepage = @current_site.blogs.first
    @current_site.save
  end

  def have_link_to_post(post)
    have_link(post.title, href: url_for([:edit, :dashboard, post, only_path: true]))
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
storytime-2.1.6 spec/support/feature_macros.rb
storytime-2.1.5 spec/support/feature_macros.rb
storytime-2.1.4 spec/support/feature_macros.rb
storytime-2.1.3 spec/support/feature_macros.rb
storytime-2.1.2 spec/support/feature_macros.rb
storytime-2.1.1 spec/support/feature_macros.rb
storytime-2.1.0 spec/support/feature_macros.rb