diff options
Diffstat (limited to 'spec/services/issues')
-rw-r--r-- | spec/services/issues/bulk_update_service_spec.rb | 121 | ||||
-rw-r--r-- | spec/services/issues/close_service_spec.rb | 35 | ||||
-rw-r--r-- | spec/services/issues/create_service_spec.rb | 23 | ||||
-rw-r--r-- | spec/services/issues/update_service_spec.rb | 54 |
4 files changed, 0 insertions, 233 deletions
diff --git a/spec/services/issues/bulk_update_service_spec.rb b/spec/services/issues/bulk_update_service_spec.rb deleted file mode 100644 index a97c55011c9..00000000000 --- a/spec/services/issues/bulk_update_service_spec.rb +++ /dev/null @@ -1,121 +0,0 @@ -require 'spec_helper' - -describe Issues::BulkUpdateService do - let(:issue) { - create(:issue, project: @project) - } - - before do - @user = create :user - opts = { - name: "GitLab", - namespace: @user.namespace - } - @project = Projects::CreateService.new(@user, opts).execute - end - - describe :close_issue do - - before do - @issues = 5.times.collect do - create(:issue, project: @project) - end - @params = { - state_event: 'close', - issues_ids: @issues.map(&:id) - } - end - - it { - result = Issues::BulkUpdateService.new(@project, @user, @params).execute - expect(result[:success]).to be_truthy - expect(result[:count]).to eq(@issues.count) - - expect(@project.issues.opened).to be_empty - expect(@project.issues.closed).not_to be_empty - } - - end - - describe :reopen_issues do - - before do - @issues = 5.times.collect do - create(:closed_issue, project: @project) - end - @params = { - state_event: 'reopen', - issues_ids: @issues.map(&:id) - } - end - - it { - result = Issues::BulkUpdateService.new(@project, @user, @params).execute - expect(result[:success]).to be_truthy - expect(result[:count]).to eq(@issues.count) - - expect(@project.issues.closed).to be_empty - expect(@project.issues.opened).not_to be_empty - } - - end - - describe :update_assignee do - - before do - @new_assignee = create :user - @params = { - issues_ids: [issue.id], - assignee_id: @new_assignee.id - } - end - - it { - result = Issues::BulkUpdateService.new(@project, @user, @params).execute - expect(result[:success]).to be_truthy - expect(result[:count]).to eq(1) - - expect(@project.issues.first.assignee).to eq(@new_assignee) - } - - it 'allows mass-unassigning' do - @project.issues.first.update_attribute(:assignee, @new_assignee) - expect(@project.issues.first.assignee).not_to be_nil - - @params[:assignee_id] = -1 - - Issues::BulkUpdateService.new(@project, @user, @params).execute - expect(@project.issues.first.assignee).to be_nil - end - - it 'does not unassign when assignee_id is not present' do - @project.issues.first.update_attribute(:assignee, @new_assignee) - expect(@project.issues.first.assignee).not_to be_nil - - @params[:assignee_id] = '' - - Issues::BulkUpdateService.new(@project, @user, @params).execute - expect(@project.issues.first.assignee).not_to be_nil - end - end - - describe :update_milestone do - - before do - @milestone = create :milestone - @params = { - issues_ids: [issue.id], - milestone_id: @milestone.id - } - end - - it { - result = Issues::BulkUpdateService.new(@project, @user, @params).execute - expect(result[:success]).to be_truthy - expect(result[:count]).to eq(1) - - expect(@project.issues.first.milestone).to eq(@milestone) - } - end - -end diff --git a/spec/services/issues/close_service_spec.rb b/spec/services/issues/close_service_spec.rb deleted file mode 100644 index d15dff1b52b..00000000000 --- a/spec/services/issues/close_service_spec.rb +++ /dev/null @@ -1,35 +0,0 @@ -require 'spec_helper' - -describe Issues::CloseService do - let(:project) { create(:empty_project) } - let(:user) { create(:user) } - let(:user2) { create(:user) } - let(:issue) { create(:issue, assignee: user2) } - - before do - project.team << [user, :master] - project.team << [user2, :developer] - end - - describe :execute do - context "valid params" do - before do - @issue = Issues::CloseService.new(project, user, {}).execute(issue) - end - - it { expect(@issue).to be_valid } - it { expect(@issue).to be_closed } - - it 'should send email to user2 about assign of new issue' do - email = ActionMailer::Base.deliveries.last - expect(email.to.first).to eq(user2.email) - expect(email.subject).to include(issue.title) - end - - it 'should create system note about issue reassign' do - note = @issue.notes.last - expect(note.note).to include "Status changed to closed" - end - end - end -end diff --git a/spec/services/issues/create_service_spec.rb b/spec/services/issues/create_service_spec.rb deleted file mode 100644 index 7f1ebcb3198..00000000000 --- a/spec/services/issues/create_service_spec.rb +++ /dev/null @@ -1,23 +0,0 @@ -require 'spec_helper' - -describe Issues::CreateService do - let(:project) { create(:empty_project) } - let(:user) { create(:user) } - - describe :execute do - context "valid params" do - before do - project.team << [user, :master] - opts = { - title: 'Awesome issue', - description: 'please fix' - } - - @issue = Issues::CreateService.new(project, user, opts).execute - end - - it { expect(@issue).to be_valid } - it { expect(@issue.title).to eq('Awesome issue') } - end - end -end diff --git a/spec/services/issues/update_service_spec.rb b/spec/services/issues/update_service_spec.rb deleted file mode 100644 index 22b89bec96d..00000000000 --- a/spec/services/issues/update_service_spec.rb +++ /dev/null @@ -1,54 +0,0 @@ -require 'spec_helper' - -describe Issues::UpdateService do - let(:project) { create(:empty_project) } - let(:user) { create(:user) } - let(:user2) { create(:user) } - let(:issue) { create(:issue) } - let(:label) { create(:label) } - - before do - project.team << [user, :master] - project.team << [user2, :developer] - end - - describe :execute do - context "valid params" do - before do - opts = { - title: 'New title', - description: 'Also please fix', - assignee_id: user2.id, - state_event: 'close', - label_ids: [label.id] - } - - @issue = Issues::UpdateService.new(project, user, opts).execute(issue) - @issue.reload - end - - it { expect(@issue).to be_valid } - it { expect(@issue.title).to eq('New title') } - it { expect(@issue.assignee).to eq(user2) } - it { expect(@issue).to be_closed } - it { expect(@issue.labels.count).to eq(1) } - it { expect(@issue.labels.first.title).to eq('Bug') } - - it 'should send email to user2 about assign of new issue' do - email = ActionMailer::Base.deliveries.last - expect(email.to.first).to eq(user2.email) - expect(email.subject).to include(issue.title) - end - - it 'should create system note about issue reassign' do - note = @issue.notes.last - expect(note.note).to include "Reassigned to \@#{user2.username}" - end - - it 'should create system note about issue label edit' do - note = @issue.notes[1] - expect(note.note).to include "Added ~#{label.id} label" - end - end - end -end |