diff options
Diffstat (limited to 'spec/support/shared_contexts/models/ci')
-rw-r--r-- | spec/support/shared_contexts/models/ci/job_token_scope.rb | 21 |
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 |