Sha256: 708c0deb16d1f46ce8c3759749acd5ef7c5ce6673b9f06892d54312ce5ce68fc
Contents?: true
Size: 1.89 KB
Versions: 2
Compression:
Stored size: 1.89 KB
Contents
require File.expand_path("../spec_helper", __FILE__) module Danger describe Danger::AssignStrategies::RandomStrategy do before do testing_env.each { |k,v| ENV[k] = "#{v}" } @dangerfile = testing_dangerfile @sam = Gitlab::User.new(1, 'Sam') @tom = Gitlab::User.new(2, 'Tom') @nic = Gitlab::User.new(3, 'Nic') @luke = Gitlab::User.new(4, 'Luke') @mock_client = double(Gitlab::Client) @author = @nic @members = [@author, @tom, @sam] allow(@mock_client).to receive(:fetch_author_for_mr).and_return(@author) allow(@mock_client).to receive(:fetch_users_for_group).with(2200).and_return(@members) @strategy = AssignStrategies::RandomStrategy.new(client: @mock_client, project: 10, mr: 110, group: 2200) end it "assign the right amount of reviewers" do allow(@mock_client).to receive(:fetch_mr_reviewers).with(10, 110).and_return([]) expect(@mock_client).to receive(:assign_mr_to_users) do |project, mr, users| expect(project).to be == 10 expect(mr).to be == 110 expect(users).to contain_exactly(@tom, @sam) end @strategy.assign!(2) end it "doesn't assign author" do allow(@mock_client).to receive(:fetch_mr_reviewers).with(10, 110).and_return([]) expect(@mock_client).to receive(:assign_mr_to_users) do |project, mr, users| expect(project).to be == 10 expect(mr).to be == 110 expect(users).to contain_exactly(@tom, @sam) end @strategy.assign!(3) end it "honours existing reviewers" do allow(@mock_client).to receive(:fetch_mr_reviewers).with(10, 110).and_return([@sam]) expect(@mock_client).to receive(:assign_mr_to_users) do |project, mr, users| expect(project).to be == 10 expect(mr).to be == 110 expect(users).to contain_exactly(@tom, @sam) end @strategy.assign!(2) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
danger-gitlab_reviewbot-1.0.2 | spec/random_strategy_spec.rb |
danger-gitlab_reviewbot-1.0.1 | spec/random_strategy_spec.rb |