diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-09-20 02:18:09 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-09-20 02:18:09 +0300 |
commit | 6ed4ec3e0b1340f96b7c043ef51d1b33bbe85fde (patch) | |
tree | dc4d20fe6064752c0bd323187252c77e0a89144b /spec/mailers/previews_spec.rb | |
parent | 9868dae7fc0655bd7ce4a6887d4e6d487690eeed (diff) |
Add latest changes from gitlab-org/gitlab@15-4-stable-eev15.4.0-rc42
Diffstat (limited to 'spec/mailers/previews_spec.rb')
-rw-r--r-- | spec/mailers/previews_spec.rb | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/spec/mailers/previews_spec.rb b/spec/mailers/previews_spec.rb new file mode 100644 index 00000000000..14bd56e5d40 --- /dev/null +++ b/spec/mailers/previews_spec.rb @@ -0,0 +1,44 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe 'Mailer previews' do + # Setup needed for email previews + let_it_be(:group) { create(:group) } + let_it_be(:project) { create(:project, :repository, :import_failed, group: group, import_last_error: 'some error') } + let_it_be(:user) { create(:user) } + let_it_be(:pipeline) { create(:ci_pipeline, project: project) } + let_it_be(:merge_request) { create(:merge_request, source_project: project) } + let_it_be(:milestone) { create(:milestone, project: project) } + let_it_be(:issue) { create(:issue, project: project, milestone: milestone) } + let_it_be(:remote_mirror) { create(:remote_mirror, project: project) } + let_it_be(:member) { create(:project_member, :maintainer, project: project, created_by: user) } + + Gitlab.ee do + let_it_be(:epic) { create(:epic, group: group) } + end + + let(:expected_kind) { [Mail::Message, ActionMailer::MessageDelivery] } + + let(:pending_failures) do + { + 'NotifyPreview#note_merge_request_email_for_diff_discussion' => + 'https://gitlab.com/gitlab-org/gitlab/-/issues/372885' + } + end + + subject { preview.call(email) } + + where(:preview, :email) do + ActionMailer::Preview.all.flat_map { |preview| preview.emails.map { |email| [preview, email] } } + end + + with_them do + it do + issue_link = pending_failures["#{preview.name}##{email}"] + pending "See #{issue_link}" if issue_link + + is_expected.to be_kind_of(Mail::Message).or(be_kind_of(ActionMailer::MessageDelivery)) + end + end +end |