Welcome to mirror list, hosted at ThFree Co, Russian Federation.

errors_spec.rb « import « gitlab « lib « spec - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 21d96601609e8bbce057802140dc68dadf43cd53 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# frozen_string_literal: true

require 'spec_helper'

RSpec.describe Gitlab::Import::Errors, feature_category: :importers do
  let_it_be(:project) { create(:project) }

  describe '.merge_nested_errors' do
    it 'merges nested collection errors' do
      issue = project.issues.new(
        title: 'test',
        notes: [
          Note.new(
            award_emoji: [AwardEmoji.new(name: 'test')]
          )
        ],
        sentry_issue: SentryIssue.new
      )

      issue.validate

      expect(issue.errors.full_messages)
        .to contain_exactly(
          "Author can't be blank",
          "Notes is invalid",
          "Sentry issue sentry issue identifier can't be blank"
        )

      described_class.merge_nested_errors(issue)

      expect(issue.errors.full_messages)
        .to contain_exactly(
          "Notes is invalid",
          "Author can't be blank",
          "Sentry issue sentry issue identifier can't be blank",
          "Award emoji is invalid",
          "Note can't be blank",
          "Project can't be blank",
          "Noteable can't be blank",
          "Author can't be blank",
          "Project does not match noteable project",
          "Namespace can't be blank",
          "User can't be blank",
          "Name is not a valid emoji name"
        )
    end
  end
end