summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMałgorzata Ksionek <mksionek@gitlab.com>2019-07-16 11:38:19 +0200
committerMałgorzata Ksionek <mksionek@gitlab.com>2019-07-16 12:33:42 +0200
commit1dde18f39424f6eaebe1777d0bfa35c5805178cd (patch)
treed056bf8a1b54261d39c44c1f489acd6342a80b9d
parent72cddf5a1f7e851864661ad97a611b1ef8d5563a (diff)
downloadgitlab-ce-1dde18f39424f6eaebe1777d0bfa35c5805178cd.tar.gz
Add code review remarks
Make specs more readable
-rw-r--r--app/models/cycle_analytics/group_level.rb2
-rw-r--r--app/models/cycle_analytics/level_base.rb (renamed from app/models/cycle_analytics/base_methods.rb)2
-rw-r--r--app/models/cycle_analytics/project_level.rb2
-rw-r--r--lib/gitlab/cycle_analytics/permissions.rb2
-rw-r--r--spec/lib/gitlab/cycle_analytics/code_stage_spec.rb30
-rw-r--r--spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb1
-rw-r--r--spec/lib/gitlab/cycle_analytics/issue_stage_spec.rb22
-rw-r--r--spec/lib/gitlab/cycle_analytics/plan_stage_spec.rb30
-rw-r--r--spec/lib/gitlab/cycle_analytics/review_stage_spec.rb17
-rw-r--r--spec/lib/gitlab/cycle_analytics/staging_stage_spec.rb16
-rw-r--r--spec/lib/gitlab/cycle_analytics/usage_data_spec.rb2
11 files changed, 61 insertions, 65 deletions
diff --git a/app/models/cycle_analytics/group_level.rb b/app/models/cycle_analytics/group_level.rb
index 58bd2eb0d9a..35efd8b8809 100644
--- a/app/models/cycle_analytics/group_level.rb
+++ b/app/models/cycle_analytics/group_level.rb
@@ -2,7 +2,7 @@
module CycleAnalytics
class GroupLevel
- include BaseMethods
+ include LevelBase
attr_reader :options
def initialize(options:)
diff --git a/app/models/cycle_analytics/base_methods.rb b/app/models/cycle_analytics/level_base.rb
index 1c2a0854769..543349ebf8f 100644
--- a/app/models/cycle_analytics/base_methods.rb
+++ b/app/models/cycle_analytics/level_base.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
module CycleAnalytics
- module BaseMethods
+ module LevelBase
STAGES = %i[issue plan code test review staging production].freeze
def all_medians_by_stage
diff --git a/app/models/cycle_analytics/project_level.rb b/app/models/cycle_analytics/project_level.rb
index abe1be11eae..4aa426c58a1 100644
--- a/app/models/cycle_analytics/project_level.rb
+++ b/app/models/cycle_analytics/project_level.rb
@@ -2,7 +2,7 @@
module CycleAnalytics
class ProjectLevel
- include BaseMethods
+ include LevelBase
attr_reader :project, :options
def initialize(project, options:)
diff --git a/lib/gitlab/cycle_analytics/permissions.rb b/lib/gitlab/cycle_analytics/permissions.rb
index 0da041f8950..55214e6b896 100644
--- a/lib/gitlab/cycle_analytics/permissions.rb
+++ b/lib/gitlab/cycle_analytics/permissions.rb
@@ -23,7 +23,7 @@ module Gitlab
end
def get
- ::CycleAnalytics::BaseMethods::STAGES.each do |stage|
+ ::CycleAnalytics::LevelBase::STAGES.each do |stage|
@stage_permission_hash[stage] = authorized_stage?(stage)
end
diff --git a/spec/lib/gitlab/cycle_analytics/code_stage_spec.rb b/spec/lib/gitlab/cycle_analytics/code_stage_spec.rb
index 68f73ba3c93..933f3c7896e 100644
--- a/spec/lib/gitlab/cycle_analytics/code_stage_spec.rb
+++ b/spec/lib/gitlab/cycle_analytics/code_stage_spec.rb
@@ -34,11 +34,11 @@ describe Gitlab::CycleAnalytics::CodeStage do
end
describe '#events' do
- it 'exposes merge requests that closes issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:title] }).to contain_exactly(mr_1.title, mr_2.title)
+ it 'exposes merge requests that closes issues' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(mr_1.title, mr_2.title)
end
end
@@ -74,11 +74,11 @@ describe Gitlab::CycleAnalytics::CodeStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:title] }).to contain_exactly(mr_2_1.title, mr_2_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(mr_2_1.title, mr_2_2.title)
end
end
@@ -101,18 +101,16 @@ describe Gitlab::CycleAnalytics::CodeStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(4)
- expect(result.map { |event| event[:title] }).to contain_exactly(mr_2_1.title, mr_2_2.title, mr_3_1.title, mr_3_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(4)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(mr_2_1.title, mr_2_2.title, mr_3_1.title, mr_3_2.title)
end
it 'exposes merge requests that close issues with full path for subgroup' do
- result = stage.events
-
- expect(result.count).to eq(4)
- expect(result.find { |event| event[:title] == mr_3_1.title }[:url]).to include("#{subgroup.full_path}")
+ expect(subject.count).to eq(4)
+ expect(subject.find { |event| event[:title] == mr_3_1.title }[:url]).to include("#{subgroup.full_path}")
end
end
end
diff --git a/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb b/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb
index 8e552b23283..7e79c3f939c 100644
--- a/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb
+++ b/spec/lib/gitlab/cycle_analytics/group_stage_summary_spec.rb
@@ -7,6 +7,7 @@ describe Gitlab::CycleAnalytics::GroupStageSummary do
let(:project_2) { create(:project, :repository, namespace: group) }
let(:from) { 1.day.ago }
let(:user) { create(:user, :admin) }
+
subject { described_class.new(group, from: Time.now, current_user: user).data }
describe "#new_issues" do
diff --git a/spec/lib/gitlab/cycle_analytics/issue_stage_spec.rb b/spec/lib/gitlab/cycle_analytics/issue_stage_spec.rb
index 64ac9df52b2..ffd0b84cb57 100644
--- a/spec/lib/gitlab/cycle_analytics/issue_stage_spec.rb
+++ b/spec/lib/gitlab/cycle_analytics/issue_stage_spec.rb
@@ -63,11 +63,11 @@ describe Gitlab::CycleAnalytics::IssueStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title)
end
end
@@ -85,18 +85,16 @@ describe Gitlab::CycleAnalytics::IssueStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(4)
- expect(result.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title, issue_3_1.title, issue_3_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(4)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title, issue_3_1.title, issue_3_2.title)
end
it 'exposes merge requests that close issues with full path for subgroup' do
- result = stage.events
-
- expect(result.count).to eq(4)
- expect(result.find { |event| event[:title] == issue_3_1.title }[:url]).to include("#{subgroup.full_path}")
+ expect(subject.count).to eq(4)
+ expect(subject.find { |event| event[:title] == issue_3_1.title }[:url]).to include("#{subgroup.full_path}")
end
end
end
diff --git a/spec/lib/gitlab/cycle_analytics/plan_stage_spec.rb b/spec/lib/gitlab/cycle_analytics/plan_stage_spec.rb
index 55de6192af1..3cd1320ca9c 100644
--- a/spec/lib/gitlab/cycle_analytics/plan_stage_spec.rb
+++ b/spec/lib/gitlab/cycle_analytics/plan_stage_spec.rb
@@ -29,11 +29,11 @@ describe Gitlab::CycleAnalytics::PlanStage do
end
describe '#events' do
- it 'exposes issues with metrics' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:title] }).to contain_exactly(issue_1.title, issue_2.title)
+ it 'exposes issues with metrics' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(issue_1.title, issue_2.title)
end
end
@@ -65,11 +65,11 @@ describe Gitlab::CycleAnalytics::PlanStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title)
end
end
@@ -88,18 +88,16 @@ describe Gitlab::CycleAnalytics::PlanStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(4)
- expect(result.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title, issue_3_1.title, issue_3_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(4)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(issue_2_1.title, issue_2_2.title, issue_3_1.title, issue_3_2.title)
end
it 'exposes merge requests that close issues with full path for subgroup' do
- result = stage.events
-
- expect(result.count).to eq(4)
- expect(result.find { |event| event[:title] == issue_3_1.title }[:url]).to include("#{subgroup.full_path}")
+ expect(subject.count).to eq(4)
+ expect(subject.find { |event| event[:title] == issue_3_1.title }[:url]).to include("#{subgroup.full_path}")
end
end
end
diff --git a/spec/lib/gitlab/cycle_analytics/review_stage_spec.rb b/spec/lib/gitlab/cycle_analytics/review_stage_spec.rb
index 9c7cb5811d0..6d14973c711 100644
--- a/spec/lib/gitlab/cycle_analytics/review_stage_spec.rb
+++ b/spec/lib/gitlab/cycle_analytics/review_stage_spec.rb
@@ -35,13 +35,14 @@ describe Gitlab::CycleAnalytics::ReviewStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:title] }).to contain_exactly(mr_1.title, mr_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(mr_1.title, mr_2.title)
end
end
+
context 'when group is given' do
let(:user) { create(:user) }
let(:group) { create(:group) }
@@ -77,11 +78,11 @@ describe Gitlab::CycleAnalytics::ReviewStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:title] }).to contain_exactly(mr_2_1.title, mr_2_2.title)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:title] }).to contain_exactly(mr_2_1.title, mr_2_2.title)
end
end
end
diff --git a/spec/lib/gitlab/cycle_analytics/staging_stage_spec.rb b/spec/lib/gitlab/cycle_analytics/staging_stage_spec.rb
index 3e2d748396f..9ca12cc448c 100644
--- a/spec/lib/gitlab/cycle_analytics/staging_stage_spec.rb
+++ b/spec/lib/gitlab/cycle_analytics/staging_stage_spec.rb
@@ -39,11 +39,11 @@ describe Gitlab::CycleAnalytics::StagingStage do
end
describe '#events' do
- it 'exposes builds connected to merge request' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:name] }).to contain_exactly(build_1.name, build_2.name)
+ it 'exposes builds connected to merge request' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:name] }).to contain_exactly(build_1.name, build_2.name)
end
end
@@ -84,11 +84,11 @@ describe Gitlab::CycleAnalytics::StagingStage do
end
describe '#events' do
- it 'exposes merge requests that close issues' do
- result = stage.events
+ subject { stage.events }
- expect(result.count).to eq(2)
- expect(result.map { |event| event[:name] }).to contain_exactly(build_1.name, build_2.name)
+ it 'exposes merge requests that close issues' do
+ expect(subject.count).to eq(2)
+ expect(subject.map { |event| event[:name] }).to contain_exactly(build_1.name, build_2.name)
end
end
end
diff --git a/spec/lib/gitlab/cycle_analytics/usage_data_spec.rb b/spec/lib/gitlab/cycle_analytics/usage_data_spec.rb
index 4ef33ff6e2b..ad61bdeace7 100644
--- a/spec/lib/gitlab/cycle_analytics/usage_data_spec.rb
+++ b/spec/lib/gitlab/cycle_analytics/usage_data_spec.rb
@@ -34,7 +34,7 @@ describe Gitlab::CycleAnalytics::UsageData do
expect(result).to have_key(:avg_cycle_analytics)
- CycleAnalytics::BaseMethods::STAGES.each do |stage|
+ CycleAnalytics::LevelBase::STAGES.each do |stage|
expect(result[:avg_cycle_analytics]).to have_key(stage)
stage_values = result[:avg_cycle_analytics][stage]