Skip to content
Snippets Groups Projects
Commit 01ff99cb authored by Robert Speicher's avatar Robert Speicher Committed by DJ Mountney
Browse files

Merge branch '20121-add-a-new-have_html_escaped_body_text-matcher' into 'master'

Add a new have_html_escaped_body_text that match an HTML-escaped text

Closes #20121

See merge request !10015
parent 3d58c349
No related branches found
No related tags found
Loading
......@@ -54,7 +54,7 @@
end
it 'contains a link to note author' do
is_expected.to have_body_text issue.author_name
is_expected.to have_html_escaped_body_text issue.author_name
is_expected.to have_body_text /wrote\:/
end
end
......@@ -66,7 +66,7 @@
it_behaves_like 'it should show Gmail Actions View Issue link'
it 'contains the description' do
is_expected.to have_body_text /#{issue_with_description.description}/
is_expected.to have_html_escaped_body_text issue_with_description.description
end
end
......@@ -91,11 +91,11 @@
end
it 'contains the name of the previous assignee' do
is_expected.to have_body_text /#{previous_assignee.name}/
is_expected.to have_html_escaped_body_text previous_assignee.name
end
it 'contains the name of the new assignee' do
is_expected.to have_body_text /#{assignee.name}/
is_expected.to have_html_escaped_body_text assignee.name
end
it 'contains a link to the issue' do
......@@ -158,7 +158,7 @@
end
it 'contains the user name' do
is_expected.to have_body_text /#{current_user.name}/i
is_expected.to have_html_escaped_body_text current_user.name
end
it 'contains a link to the issue' do
......@@ -233,7 +233,7 @@
end
it 'contains a link to note author' do
is_expected.to have_body_text merge_request.author_name
is_expected.to have_html_escaped_body_text merge_request.author_name
is_expected.to have_body_text /wrote\:/
end
end
......@@ -246,7 +246,7 @@
it_behaves_like "an unsubscribeable thread"
it 'contains the description' do
is_expected.to have_body_text /#{merge_request_with_description.description}/
is_expected.to have_html_escaped_body_text merge_request_with_description.description
end
end
......@@ -271,11 +271,11 @@
end
it 'contains the name of the previous assignee' do
is_expected.to have_body_text /#{previous_assignee.name}/
is_expected.to have_html_escaped_body_text previous_assignee.name
end
it 'contains the name of the new assignee' do
is_expected.to have_body_text /#{assignee.name}/
is_expected.to have_html_escaped_body_text assignee.name
end
it 'contains a link to the merge request' do
......@@ -338,7 +338,7 @@
end
it 'contains the user name' do
is_expected.to have_body_text /#{current_user.name}/i
is_expected.to have_html_escaped_body_text current_user.name
end
it 'contains a link to the merge request' do
......@@ -391,7 +391,7 @@
end
it 'contains name of project' do
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
end
it 'contains new user role' do
......@@ -424,9 +424,9 @@
expect(to_emails[0].address).to eq(project.members.owners_and_masters.first.user.notification_email)
is_expected.to have_subject "Request to join the #{project.name_with_namespace} project"
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_body_text /#{namespace_project_project_members_url(project.namespace, project)}/
is_expected.to have_body_text /#{project_member.human_access}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
is_expected.to have_body_text namespace_project_project_members_url(project.namespace, project)
is_expected.to have_body_text project_member.human_access
end
end
......@@ -451,9 +451,9 @@
expect(to_emails[0].address).to eq(group.members.owners_and_masters.first.user.notification_email)
is_expected.to have_subject "Request to join the #{project.name_with_namespace} project"
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_body_text /#{namespace_project_project_members_url(project.namespace, project)}/
is_expected.to have_body_text /#{project_member.human_access}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
is_expected.to have_body_text namespace_project_project_members_url(project.namespace, project)
is_expected.to have_body_text project_member.human_access
end
end
end
......@@ -473,13 +473,14 @@
it 'contains all the useful information' do
is_expected.to have_subject "Access to the #{project.name_with_namespace} project was denied"
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_body_text /#{project.web_url}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
is_expected.to have_body_text project.web_url
end
end
describe 'project access changed' do
let(:project) { create(:empty_project, :public, :access_requestable) }
let(:owner) { create(:user, name: "Chang O'Keefe") }
let(:project) { create(:empty_project, :public, :access_requestable, namespace: owner.namespace) }
let(:user) { create(:user) }
let(:project_member) { create(:project_member, project: project, user: user) }
subject { Notify.member_access_granted_email('project', project_member.id) }
......@@ -490,9 +491,9 @@
it 'contains all the useful information' do
is_expected.to have_subject "Access to the #{project.name_with_namespace} project was granted"
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_body_text /#{project.web_url}/
is_expected.to have_body_text /#{project_member.human_access}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
is_expected.to have_body_text project.web_url
is_expected.to have_body_text project_member.human_access
end
end
......@@ -521,10 +522,10 @@ def invite_to_project(project, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject "Invitation to join the #{project.name_with_namespace} project"
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_body_text /#{project.web_url}/
is_expected.to have_body_text /#{project_member.human_access}/
is_expected.to have_body_text /#{project_member.invite_token}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
is_expected.to have_body_text project.web_url
is_expected.to have_body_text project_member.human_access
is_expected.to have_body_text project_member.invite_token
end
end
......@@ -546,10 +547,10 @@ def invite_to_project(project, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject 'Invitation accepted'
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_body_text /#{project.web_url}/
is_expected.to have_body_text /#{project_member.invite_email}/
is_expected.to have_body_text /#{invited_user.name}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
is_expected.to have_body_text project.web_url
is_expected.to have_body_text project_member.invite_email
is_expected.to have_html_escaped_body_text invited_user.name
end
end
......@@ -570,9 +571,9 @@ def invite_to_project(project, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject 'Invitation declined'
is_expected.to have_body_text /#{project.name_with_namespace}/
is_expected.to have_body_text /#{project.web_url}/
is_expected.to have_body_text /#{project_member.invite_email}/
is_expected.to have_html_escaped_body_text project.name_with_namespace
is_expected.to have_body_text project.web_url
is_expected.to have_body_text project_member.invite_email
end
end
......@@ -598,7 +599,7 @@ def invite_to_project(project, inviter:)
end
it 'contains the message from the note' do
is_expected.to have_body_text /#{note.note}/
is_expected.to have_html_escaped_body_text note.note
end
it 'does not contain note author' do
......@@ -611,7 +612,7 @@ def invite_to_project(project, inviter:)
end
it 'contains a link to note author' do
is_expected.to have_body_text note.author_name
is_expected.to have_html_escaped_body_text note.author_name
is_expected.to have_body_text /wrote\:/
end
end
......@@ -718,7 +719,7 @@ def invite_to_project(project, inviter:)
end
it 'contains the message from the note' do
is_expected.to have_body_text /#{note.note}/
is_expected.to have_html_escaped_body_text note.note
end
it 'does not contain note author' do
......@@ -731,7 +732,7 @@ def invite_to_project(project, inviter:)
end
it 'contains a link to note author' do
is_expected.to have_body_text note.author_name
is_expected.to have_html_escaped_body_text note.author_name
is_expected.to have_body_text /wrote\:/
end
end
......@@ -777,9 +778,9 @@ def invite_to_project(project, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject "Request to join the #{group.name} group"
is_expected.to have_body_text /#{group.name}/
is_expected.to have_body_text /#{group_group_members_url(group)}/
is_expected.to have_body_text /#{group_member.human_access}/
is_expected.to have_html_escaped_body_text group.name
is_expected.to have_body_text group_group_members_url(group)
is_expected.to have_body_text group_member.human_access
end
end
......@@ -798,8 +799,8 @@ def invite_to_project(project, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject "Access to the #{group.name} group was denied"
is_expected.to have_body_text /#{group.name}/
is_expected.to have_body_text /#{group.web_url}/
is_expected.to have_html_escaped_body_text group.name
is_expected.to have_body_text group.web_url
end
end
......@@ -816,9 +817,9 @@ def invite_to_project(project, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject "Access to the #{group.name} group was granted"
is_expected.to have_body_text /#{group.name}/
is_expected.to have_body_text /#{group.web_url}/
is_expected.to have_body_text /#{group_member.human_access}/
is_expected.to have_html_escaped_body_text group.name
is_expected.to have_body_text group.web_url
is_expected.to have_body_text group_member.human_access
end
end
......@@ -847,10 +848,10 @@ def invite_to_group(group, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject "Invitation to join the #{group.name} group"
is_expected.to have_body_text /#{group.name}/
is_expected.to have_body_text /#{group.web_url}/
is_expected.to have_body_text /#{group_member.human_access}/
is_expected.to have_body_text /#{group_member.invite_token}/
is_expected.to have_html_escaped_body_text group.name
is_expected.to have_body_text group.web_url
is_expected.to have_body_text group_member.human_access
is_expected.to have_body_text group_member.invite_token
end
end
......@@ -872,10 +873,10 @@ def invite_to_group(group, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject 'Invitation accepted'
is_expected.to have_body_text /#{group.name}/
is_expected.to have_body_text /#{group.web_url}/
is_expected.to have_body_text /#{group_member.invite_email}/
is_expected.to have_body_text /#{invited_user.name}/
is_expected.to have_html_escaped_body_text group.name
is_expected.to have_body_text group.web_url
is_expected.to have_body_text group_member.invite_email
is_expected.to have_html_escaped_body_text invited_user.name
end
end
......@@ -896,9 +897,9 @@ def invite_to_group(group, inviter:)
it 'contains all the useful information' do
is_expected.to have_subject 'Invitation declined'
is_expected.to have_body_text /#{group.name}/
is_expected.to have_body_text /#{group.web_url}/
is_expected.to have_body_text /#{group_member.invite_email}/
is_expected.to have_html_escaped_body_text group.name
is_expected.to have_body_text group.web_url
is_expected.to have_body_text group_member.invite_email
end
end
end
......
RSpec::Matchers.define :have_html_escaped_body_text do |expected|
match do |actual|
expect(actual).to have_body_text(ERB::Util.html_escape(expected))
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment