require 'test_helper'

class UsersIndexTest < ActionDispatch::IntegrationTest
  
  def setup
  @admin= users(:michael)
   @non_admin = users(:archer) 
  end


  test "index as admin including pagination and delete links" do
   log_in_as(@admin)
   get users_path
   assert_template 'users/index'
   assert_select 'div.pagination'
   first_page_of_users = User.paginate(page: 1)
   first_page_of_users.each do |user|
    assert_select 'a[href=?]', user_path(user), text: user.name
    unless user == @admin
      assert_select 'a[href=?]', user_path(user), text: 'delete'
    end
   end
   assert_difference 'User.count', -1 do
    delete user_path(@non_admin)
   end
  end


  test "index as non-admin" do
    log_in_as(@non_admin)
    get users_path
    assert_select 'a', text: 'delete', count: 0
  end

end
