require "test_helper" class UserRolesHelperTest < ActionView::TestCase attr_accessor :current_user def test_role_icon_normal self.current_user = create(:user) icon = role_icon(current_user, "moderator") assert_dom_equal "", icon icon = role_icon(create(:moderator_user), "moderator") expected = <<~HTML.delete("\n") This user is a moderator HTML assert_dom_equal expected, icon end def test_role_icon_administrator self.current_user = create(:administrator_user) user = create(:user) icon = role_icon(user, "moderator") expected = <<~HTML.delete("\n") Grant moderator access HTML assert_dom_equal expected, icon moderator_user = create(:moderator_user) icon = role_icon(moderator_user, "moderator") expected = <<~HTML.delete("\n") Revoke moderator access HTML assert_dom_equal expected, icon end def test_role_icons_normal self.current_user = create(:user) icons = role_icons(current_user) assert_dom_equal "", icons icons = role_icons(create(:moderator_user)) expected = <<~HTML.delete("\n") This user is a moderator HTML assert_dom_equal expected, icons icons = role_icons(create(:super_user)) expected = <<~HTML.delete("\n") This user is an administrator This user is a moderator HTML assert_dom_equal expected, icons end def test_role_icons_administrator self.current_user = create(:administrator_user) user = create(:user) icons = role_icons(user) expected = <<~HTML.delete("\n") Grant administrator access Grant moderator access HTML assert_dom_equal expected, icons moderator_user = create(:moderator_user) icons = role_icons(moderator_user) expected = <<~HTML.delete("\n") Grant administrator access Revoke moderator access HTML assert_dom_equal expected, icons super_user = create(:super_user) icons = role_icons(super_user) expected = <<~HTML.delete("\n") Revoke administrator access Revoke moderator access HTML assert_dom_equal expected, icons end end