148 lines
4.1 KiB
Ruby
148 lines
4.1 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe EventCreateService do
|
|
include UserActivitiesHelpers
|
|
|
|
let(:service) { described_class.new }
|
|
|
|
describe 'Issues' do
|
|
describe '#open_issue' do
|
|
let(:issue) { create(:issue) }
|
|
|
|
it { expect(service.open_issue(issue, issue.author)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.open_issue(issue, issue.author) }.to change { Event.count }
|
|
end
|
|
end
|
|
|
|
describe '#close_issue' do
|
|
let(:issue) { create(:issue) }
|
|
|
|
it { expect(service.close_issue(issue, issue.author)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.close_issue(issue, issue.author) }.to change { Event.count }
|
|
end
|
|
end
|
|
|
|
describe '#reopen_issue' do
|
|
let(:issue) { create(:issue) }
|
|
|
|
it { expect(service.reopen_issue(issue, issue.author)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.reopen_issue(issue, issue.author) }.to change { Event.count }
|
|
end
|
|
end
|
|
end
|
|
|
|
describe 'Merge Requests' do
|
|
describe '#open_mr' do
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
it { expect(service.open_mr(merge_request, merge_request.author)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.open_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
end
|
|
end
|
|
|
|
describe '#close_mr' do
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
it { expect(service.close_mr(merge_request, merge_request.author)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.close_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
end
|
|
end
|
|
|
|
describe '#merge_mr' do
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
it { expect(service.merge_mr(merge_request, merge_request.author)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.merge_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
end
|
|
end
|
|
|
|
describe '#reopen_mr' do
|
|
let(:merge_request) { create(:merge_request) }
|
|
|
|
it { expect(service.reopen_mr(merge_request, merge_request.author)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.reopen_mr(merge_request, merge_request.author) }.to change { Event.count }
|
|
end
|
|
end
|
|
end
|
|
|
|
describe 'Milestone' do
|
|
let(:user) { create :user }
|
|
|
|
describe '#open_milestone' do
|
|
let(:milestone) { create(:milestone) }
|
|
|
|
it { expect(service.open_milestone(milestone, user)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.open_milestone(milestone, user) }.to change { Event.count }
|
|
end
|
|
end
|
|
|
|
describe '#close_mr' do
|
|
let(:milestone) { create(:milestone) }
|
|
|
|
it { expect(service.close_milestone(milestone, user)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.close_milestone(milestone, user) }.to change { Event.count }
|
|
end
|
|
end
|
|
|
|
describe '#destroy_mr' do
|
|
let(:milestone) { create(:milestone) }
|
|
|
|
it { expect(service.destroy_milestone(milestone, user)).to be_truthy }
|
|
|
|
it "creates new event" do
|
|
expect { service.destroy_milestone(milestone, user) }.to change { Event.count }
|
|
end
|
|
end
|
|
end
|
|
|
|
describe '#push', :clean_gitlab_redis_shared_state do
|
|
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
|
|
expect { service.push(project, user, {}) }.to change { user_activity(user) }
|
|
end
|
|
end
|
|
|
|
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
|
|
end
|