2014-03-25 08:48:02 -04:00
|
|
|
require 'spec_helper'
|
|
|
|
|
2017-07-10 10:24:02 -04:00
|
|
|
describe EventCreateService do
|
2016-11-25 11:10:25 -05:00
|
|
|
include UserActivitiesHelpers
|
|
|
|
|
2017-07-25 13:09:00 -04:00
|
|
|
let(:service) { described_class.new }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
|
|
|
describe 'Issues' do
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#open_issue' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:issue) { create(:issue) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.open_issue(issue, issue.author)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-11 11:30:18 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.open_issue(issue, issue.author) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#close_issue' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:issue) { create(:issue) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.close_issue(issue, issue.author)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-11 11:30:18 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.close_issue(issue, issue.author) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#reopen_issue' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:issue) { create(:issue) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.reopen_issue(issue, issue.author)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-11 11:30:18 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.reopen_issue(issue, issue.author) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
describe 'Merge Requests' do
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#open_mr' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.open_mr(merge_request, merge_request.author)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-01 11:00:44 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.open_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#close_mr' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.close_mr(merge_request, merge_request.author)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-01 11:00:44 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.close_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#merge_mr' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.merge_mr(merge_request, merge_request.author)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-01 11:00:44 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.merge_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#reopen_mr' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.reopen_mr(merge_request, merge_request.author)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-01 11:00:44 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.reopen_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
describe 'Milestone' do
|
|
|
|
let(:user) { create :user }
|
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#open_milestone' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:milestone) { create(:milestone) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.open_milestone(milestone, user)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-01 11:00:44 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.open_milestone(milestone, user) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#close_mr' do
|
2014-03-25 08:48:02 -04:00
|
|
|
let(:milestone) { create(:milestone) }
|
|
|
|
|
2015-02-12 13:17:35 -05:00
|
|
|
it { expect(service.close_milestone(milestone, user)).to be_truthy }
|
2014-03-25 08:48:02 -04:00
|
|
|
|
2016-08-01 11:00:44 -04:00
|
|
|
it "creates new event" do
|
2014-03-25 08:48:02 -04:00
|
|
|
expect { service.close_milestone(milestone, user) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
2015-08-31 00:51:34 -04:00
|
|
|
|
2016-07-11 18:12:31 -04:00
|
|
|
describe '#destroy_mr' do
|
2015-08-31 00:51:34 -04:00
|
|
|
let(:milestone) { create(:milestone) }
|
|
|
|
|
|
|
|
it { expect(service.destroy_milestone(milestone, user)).to be_truthy }
|
|
|
|
|
2016-08-01 11:00:44 -04:00
|
|
|
it "creates new event" do
|
2015-08-31 00:51:34 -04:00
|
|
|
expect { service.destroy_milestone(milestone, user) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
end
|
2014-03-25 08:48:02 -04:00
|
|
|
end
|
2016-10-06 11:19:27 -04:00
|
|
|
|
2017-07-10 23:35:47 -04:00
|
|
|
describe '#push', :clean_gitlab_redis_shared_state do
|
2016-11-25 11:10:25 -05:00
|
|
|
let(:project) { create(:empty_project) }
|
|
|
|
let(:user) { create(:user) }
|
|
|
|
|
|
|
|
it 'creates a new event' do
|
|
|
|
expect { service.push(project, user, {}) }.to change { Event.count }
|
|
|
|
end
|
|
|
|
|
|
|
|
it 'updates user last activity' do
|
2017-03-07 13:34:43 -05:00
|
|
|
expect { service.push(project, user, {}) }.to change { user_activity(user) }
|
2016-11-25 11:10:25 -05:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2016-10-06 11:19:27 -04:00
|
|
|
describe 'Project' do
|
|
|
|
let(:user) { create :user }
|
|
|
|
let(:project) { create(:empty_project) }
|
|
|
|
|
|
|
|
describe '#join_project' do
|
|
|
|
subject { service.join_project(project, user) }
|
|
|
|
|
|
|
|
it { is_expected.to be_truthy }
|
|
|
|
it { expect { subject }.to change { Event.count }.from(0).to(1) }
|
|
|
|
end
|
|
|
|
|
|
|
|
describe '#expired_leave_project' do
|
|
|
|
subject { service.expired_leave_project(project, user) }
|
|
|
|
|
|
|
|
it { is_expected.to be_truthy }
|
|
|
|
it { expect { subject }.to change { Event.count }.from(0).to(1) }
|
|
|
|
end
|
|
|
|
end
|
2014-03-25 08:48:02 -04:00
|
|
|
end
|