Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Andrew <mail@timothyandrew.net>2016-09-07 11:59:12 +0300
committerTimothy Andrew <mail@timothyandrew.net>2016-09-07 11:59:12 +0300
commit0a767f7b618161278b66f7e1d842a51c8cab37b3 (patch)
tree26ea426551f117870b2f63321bcf581e6711f34c /spec/models/cycle_analytics
parent32147ddf5412bceaea809dedb028b23f55461a89 (diff)
Consolidate all cycle analytics helper methods.
1. Move the test generation to `CycleAnalyticsHelpers::TestGeneration` 2. Move all helper methods (previously placed in each individual spec file) to `CycleAnalyticsHelpers`
Diffstat (limited to 'spec/models/cycle_analytics')
-rw-r--r--spec/models/cycle_analytics/code_spec.rb20
-rw-r--r--spec/models/cycle_analytics/plan_spec.rb6
-rw-r--r--spec/models/cycle_analytics/production_spec.rb30
-rw-r--r--spec/models/cycle_analytics/review_spec.rb21
-rw-r--r--spec/models/cycle_analytics/staging_spec.rb30
-rw-r--r--spec/models/cycle_analytics/test_spec.rb16
6 files changed, 0 insertions, 123 deletions
diff --git a/spec/models/cycle_analytics/code_spec.rb b/spec/models/cycle_analytics/code_spec.rb
index a81b5cf444d..18dd4d0f1ab 100644
--- a/spec/models/cycle_analytics/code_spec.rb
+++ b/spec/models/cycle_analytics/code_spec.rb
@@ -6,26 +6,6 @@ describe 'CycleAnalytics#code', feature: true do
let(:user) { create(:user, :admin) }
subject { CycleAnalytics.new(project, from: from_date) }
- def create_commit_referencing_issue(issue)
- sha = project.repository.commit_file(user, random_git_name, "content", "Commit for ##{issue.iid}", "master", false)
- commit = project.repository.commit(sha)
- commit.create_cross_references!(user)
- end
-
- def create_merge_request_closing_issue(issue, message: nil)
- source_branch = random_git_name
- project.repository.add_branch(user, source_branch, 'master')
-
- opts = {
- title: 'Awesome merge_request',
- description: message || "Fixes #{issue.to_reference}",
- source_branch: source_branch,
- target_branch: 'master'
- }
-
- MergeRequests::CreateService.new(project, user, opts).execute
- end
-
generate_cycle_analytics_spec(phase: :code,
data_fn: -> (context) { { issue: context.create(:issue, project: context.project) } },
start_time_conditions: [["issue mentioned in a commit", -> (context, data) { context.create_commit_referencing_issue(data[:issue]) }]],
diff --git a/spec/models/cycle_analytics/plan_spec.rb b/spec/models/cycle_analytics/plan_spec.rb
index 42984169b28..fa092bf6825 100644
--- a/spec/models/cycle_analytics/plan_spec.rb
+++ b/spec/models/cycle_analytics/plan_spec.rb
@@ -6,12 +6,6 @@ describe 'CycleAnalytics#plan', feature: true do
let(:user) { create(:user, :admin) }
subject { CycleAnalytics.new(project, from: from_date) }
- def create_commit_referencing_issue(issue)
- sha = project.repository.commit_file(user, random_git_name, "content", "Commit for ##{issue.iid}", "master", false)
- commit = project.repository.commit(sha)
- commit.create_cross_references!
- end
-
generate_cycle_analytics_spec(phase: :plan,
data_fn: -> (context) { { issue: context.create(:issue, project: context.project) } },
start_time_conditions: [["issue associated with a milestone", -> (context, data) { data[:issue].update(milestone: context.create(:milestone, project: context.project)) }],
diff --git a/spec/models/cycle_analytics/production_spec.rb b/spec/models/cycle_analytics/production_spec.rb
index 76e42c1c2d4..703f8d5f782 100644
--- a/spec/models/cycle_analytics/production_spec.rb
+++ b/spec/models/cycle_analytics/production_spec.rb
@@ -6,36 +6,6 @@ describe 'CycleAnalytics#production', feature: true do
let(:user) { create(:user, :admin) }
subject { CycleAnalytics.new(project, from: from_date) }
- def create_merge_request_closing_issue(issue, message: nil)
- source_branch = random_git_name
- project.repository.add_branch(user, source_branch, 'master')
- sha = project.repository.commit_file(user, random_git_name, "content", "commit message", source_branch, false)
- project.repository.commit(sha)
-
- opts = {
- title: 'Awesome merge_request',
- description: message || "Fixes #{issue.to_reference}",
- source_branch: source_branch,
- target_branch: 'master'
- }
-
- MergeRequests::CreateService.new(project, user, opts).execute
- end
-
- def merge_merge_requests_closing_issue(issue)
- merge_requests = issue.closed_by_merge_requests
- merge_requests.each { |merge_request| MergeRequests::MergeService.new(project, user).execute(merge_request) }
- end
-
- def deploy_master(environment: 'production')
- CreateDeploymentService.new(project, user, {
- environment: environment,
- ref: 'master',
- tag: false,
- sha: project.repository.commit('master').sha
- }).execute
- end
-
generate_cycle_analytics_spec(phase: :production,
data_fn: -> (context) { { issue: context.build(:issue, project: context.project) } },
start_time_conditions: [["issue is created", -> (context, data) { data[:issue].save }]],
diff --git a/spec/models/cycle_analytics/review_spec.rb b/spec/models/cycle_analytics/review_spec.rb
index 8530d70a38e..867a90d6258 100644
--- a/spec/models/cycle_analytics/review_spec.rb
+++ b/spec/models/cycle_analytics/review_spec.rb
@@ -6,27 +6,6 @@ describe 'CycleAnalytics#review', feature: true do
let(:user) { create(:user, :admin) }
subject { CycleAnalytics.new(project, from: from_date) }
- def create_merge_request_closing_issue(issue)
- source_branch = random_git_name
- project.repository.add_branch(user, source_branch, 'master')
- sha = project.repository.commit_file(user, random_git_name, "content", "commit message", source_branch, false)
- project.repository.commit(sha)
-
- opts = {
- title: 'Awesome merge_request',
- description: "Fixes #{issue.to_reference}",
- source_branch: source_branch,
- target_branch: 'master'
- }
-
- MergeRequests::CreateService.new(project, user, opts).execute
- end
-
- def merge_merge_requests_closing_issue(issue)
- merge_requests = issue.closed_by_merge_requests
- merge_requests.each { |merge_request| MergeRequests::MergeService.new(project, user).execute(merge_request) }
- end
-
generate_cycle_analytics_spec(phase: :review,
data_fn: -> (context) { { issue: context.create(:issue, project: context.project) } },
start_time_conditions: [["merge request that closes issue is created", -> (context, data) { context.create_merge_request_closing_issue(data[:issue]) }]],
diff --git a/spec/models/cycle_analytics/staging_spec.rb b/spec/models/cycle_analytics/staging_spec.rb
index 23e01532500..105f566f41c 100644
--- a/spec/models/cycle_analytics/staging_spec.rb
+++ b/spec/models/cycle_analytics/staging_spec.rb
@@ -6,36 +6,6 @@ describe 'CycleAnalytics#staging', feature: true do
let(:user) { create(:user, :admin) }
subject { CycleAnalytics.new(project, from: from_date) }
- def create_merge_request_closing_issue(issue, message: nil)
- source_branch = random_git_name
- project.repository.add_branch(user, source_branch, 'master')
- sha = project.repository.commit_file(user, random_git_name, "content", "commit message", source_branch, false)
- project.repository.commit(sha)
-
- opts = {
- title: 'Awesome merge_request',
- description: message || "Fixes #{issue.to_reference}",
- source_branch: source_branch,
- target_branch: 'master'
- }
-
- MergeRequests::CreateService.new(project, user, opts).execute
- end
-
- def merge_merge_requests_closing_issue(issue)
- merge_requests = issue.closed_by_merge_requests
- merge_requests.each { |merge_request| MergeRequests::MergeService.new(project, user).execute(merge_request) }
- end
-
- def deploy_master(environment: 'production')
- CreateDeploymentService.new(project, user, {
- environment: environment,
- ref: 'master',
- tag: false,
- sha: project.repository.commit('master').sha
- }).execute
- end
-
generate_cycle_analytics_spec(phase: :staging,
data_fn: lambda do |context|
issue = context.create(:issue, project: context.project)
diff --git a/spec/models/cycle_analytics/test_spec.rb b/spec/models/cycle_analytics/test_spec.rb
index af4d55f5801..aa7faa74d38 100644
--- a/spec/models/cycle_analytics/test_spec.rb
+++ b/spec/models/cycle_analytics/test_spec.rb
@@ -6,22 +6,6 @@ describe 'CycleAnalytics#test', feature: true do
let(:user) { create(:user, :admin) }
subject { CycleAnalytics.new(project, from: from_date) }
- def create_merge_request_closing_issue(issue, message: nil)
- source_branch = random_git_name
- project.repository.add_branch(user, source_branch, 'master')
- sha = project.repository.commit_file(user, random_git_name, "content", "commit message", source_branch, false)
- project.repository.commit(sha)
-
- opts = {
- title: 'Awesome merge_request',
- description: message || "Fixes #{issue.to_reference}",
- source_branch: source_branch,
- target_branch: 'master'
- }
-
- MergeRequests::CreateService.new(project, user, opts).execute
- end
-
generate_cycle_analytics_spec(phase: :test,
data_fn: lambda do |context|
issue = context.create(:issue, project: context.project)