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/support/shared_contexts/models/ci/job_token_scope.rb')
-rw-r--r--spec/support/shared_contexts/models/ci/job_token_scope.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/spec/support/shared_contexts/models/ci/job_token_scope.rb b/spec/support/shared_contexts/models/ci/job_token_scope.rb
new file mode 100644
index 00000000000..51f671b139d
--- /dev/null
+++ b/spec/support/shared_contexts/models/ci/job_token_scope.rb
@@ -0,0 +1,21 @@
+# frozen_string_literal: true
+
+RSpec.shared_context 'with scoped projects' do
+ let_it_be(:inbound_scoped_project) { create_scoped_project(source_project, direction: :inbound) }
+ let_it_be(:outbound_scoped_project) { create_scoped_project(source_project, direction: :outbound) }
+ let_it_be(:unscoped_project1) { create(:project) }
+ let_it_be(:unscoped_project2) { create(:project) }
+
+ let_it_be(:link_out_of_scope) { create(:ci_job_token_project_scope_link, target_project: unscoped_project1) }
+
+ def create_scoped_project(source_project, direction:)
+ create(:project).tap do |scoped_project|
+ create(
+ :ci_job_token_project_scope_link,
+ source_project: source_project,
+ target_project: scoped_project,
+ direction: direction
+ )
+ end
+ end
+end