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:
Diffstat (limited to 'spec/factories/projects.rb')
-rw-r--r--spec/factories/projects.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/spec/factories/projects.rb b/spec/factories/projects.rb
index a2848bd0256..83107e6cc4a 100644
--- a/spec/factories/projects.rb
+++ b/spec/factories/projects.rb
@@ -2,6 +2,10 @@
require_relative '../support/helpers/test_env'
+# TODO: Remove the debug_with_puts statements below! Used for debugging purposes.
+# TODO: https://gitlab.com/gitlab-org/quality/engineering-productivity/team/-/issues/323#note_1688925316
+require_relative '../support/helpers/debug_with_puts'
+
FactoryBot.define do
# Project without repository
#
@@ -66,6 +70,8 @@ FactoryBot.define do
end
after(:build) do |project, evaluator|
+ DebugWithPuts.debug_with_puts "Beginning of after :build of projects factory in spec/factories/projects.rb"
+
# Builds and MRs can't have higher visibility level than repository access level.
builds_access_level = [evaluator.builds_access_level, evaluator.repository_access_level].min
merge_requests_access_level = [evaluator.merge_requests_access_level, evaluator.repository_access_level].min
@@ -87,6 +93,8 @@ FactoryBot.define do
security_and_compliance_access_level: evaluator.security_and_compliance_access_level
}
+ DebugWithPuts.debug_with_puts "During after :build of projects factory in spec/factories/projects.rb:#{__LINE__}"
+
project_namespace_hash = {
name: evaluator.name,
path: evaluator.path,
@@ -97,10 +105,16 @@ FactoryBot.define do
project_namespace_hash[:id] = evaluator.project_namespace_id.presence
+ DebugWithPuts.debug_with_puts "During after :build of projects factory in spec/factories/projects.rb:#{__LINE__}"
+
project.build_project_namespace(project_namespace_hash)
project.build_project_feature(project_feature_hash)
+ DebugWithPuts.debug_with_puts "During after :build of projects factory in spec/factories/projects.rb:#{__LINE__}"
+
project.set_runners_token(evaluator.runners_token) if evaluator.runners_token.present?
+
+ DebugWithPuts.debug_with_puts "End of after :build of projects factory in spec/factories/projects.rb"
end
to_create do |project|
@@ -108,6 +122,7 @@ FactoryBot.define do
end
after(:create) do |project, evaluator|
+ DebugWithPuts.debug_with_puts "Beginning of after :create of projects factory in spec/factories/projects.rb"
# Normally the class Projects::CreateService is used for creating
# projects, and this class takes care of making sure the owner and current
# user have access to the project. Our specs don't use said service class,
@@ -116,12 +131,16 @@ FactoryBot.define do
project.add_owner(project.first_owner)
end
+ DebugWithPuts.debug_with_puts "During after :create of projects factory in spec/factories/projects.rb:#{__LINE__}"
+
if project.group
project.run_after_commit_or_now do
AuthorizedProjectUpdate::ProjectRecalculateService.new(project).execute
end
end
+ DebugWithPuts.debug_with_puts "During after :create of projects factory in spec/factories/projects.rb:#{__LINE__}"
+
# assign the delegated `#ci_cd_settings` attributes after create
project.group_runners_enabled = evaluator.group_runners_enabled unless evaluator.group_runners_enabled.nil?
project.merge_pipelines_enabled = evaluator.merge_pipelines_enabled unless evaluator.merge_pipelines_enabled.nil?
@@ -133,6 +152,8 @@ FactoryBot.define do
project.runner_token_expiration_interval = evaluator.runner_token_expiration_interval unless evaluator.runner_token_expiration_interval.nil?
project.runner_token_expiration_interval_human_readable = evaluator.runner_token_expiration_interval_human_readable unless evaluator.runner_token_expiration_interval_human_readable.nil?
+ DebugWithPuts.debug_with_puts "During after :create of projects factory in spec/factories/projects.rb:#{__LINE__}"
+
if evaluator.import_status
import_state = project.import_state || project.build_import_state
import_state.status = evaluator.import_status
@@ -142,8 +163,12 @@ FactoryBot.define do
import_state.save!
end
+ DebugWithPuts.debug_with_puts "During after :create of projects factory in spec/factories/projects.rb:#{__LINE__}"
+
# simulating ::Projects::ProcessSyncEventsWorker because most tests don't run Sidekiq inline
project.create_ci_project_mirror!(namespace_id: project.namespace_id) unless project.ci_project_mirror
+
+ DebugWithPuts.debug_with_puts "End of after :create of projects factory in spec/factories/projects.rb"
end
trait :public do
@@ -326,6 +351,7 @@ FactoryBot.define do
end
after :create do |project, evaluator|
+ DebugWithPuts.debug_with_puts "Beginning of after :create of trait :repository do in spec/factories/projects.rb"
# Specify `lfs: true` to create the LfsObject for the LFS file in the test repo:
# https://gitlab.com/gitlab-org/gitlab-test/-/blob/master/files/lfs/lfs_object.iso
if evaluator.lfs
@@ -351,6 +377,8 @@ FactoryBot.define do
end
end
+ DebugWithPuts.debug_with_puts "During after :create of trait :repository do in spec/factories/projects.rb:#{__LINE__}"
+
if evaluator.create_templates
templates_path = "#{evaluator.create_templates}_templates"
@@ -380,6 +408,8 @@ FactoryBot.define do
branch_name: 'master')
end
+ DebugWithPuts.debug_with_puts "During after :create of trait :repository do in spec/factories/projects.rb:#{__LINE__}"
+
if evaluator.create_branch
project.repository.create_file(
project.creator,
@@ -389,6 +419,8 @@ FactoryBot.define do
branch_name: evaluator.create_branch)
end
+ DebugWithPuts.debug_with_puts "During after :create of trait :repository do in spec/factories/projects.rb:#{__LINE__}"
+
if evaluator.create_tag
project.repository.add_tag(
project.creator,
@@ -397,6 +429,7 @@ FactoryBot.define do
end
project.track_project_repository
+ DebugWithPuts.debug_with_puts "End of after :create of trait :repository do in spec/factories/projects.rb"
end
end