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')
-rw-r--r--spec/support/shared_contexts/ci/catalog/resources/version_shared_context.rb8
-rw-r--r--spec/support/shared_contexts/features/integrations/project_integrations_jira_context.rb6
-rw-r--r--spec/support/shared_contexts/finders/issues_finder_shared_contexts.rb5
-rw-r--r--spec/support/shared_contexts/finders/work_items_finder_shared_contexts.rb19
-rw-r--r--spec/support/shared_contexts/graphql/types/query_type_shared_context.rb1
-rw-r--r--spec/support/shared_contexts/merge_request_edit_shared_context.rb2
-rw-r--r--spec/support/shared_contexts/navbar_structure_context.rb23
-rw-r--r--spec/support/shared_contexts/policies/group_policy_shared_context.rb4
-rw-r--r--spec/support/shared_contexts/policies/project_policy_table_shared_context.rb12
-rw-r--r--spec/support/shared_contexts/requests/api/graphql/work_items/work_item_types_shared_context.rb64
-rw-r--r--spec/support/shared_contexts/requests/api/terraform_modules_shared_context.rb27
-rw-r--r--spec/support/shared_contexts/services/service_ping/stubbed_service_ping_metrics_definitions_shared_context.rb3
-rw-r--r--spec/support/shared_contexts/single_change_access_checks_shared_context.rb2
13 files changed, 135 insertions, 41 deletions
diff --git a/spec/support/shared_contexts/ci/catalog/resources/version_shared_context.rb b/spec/support/shared_contexts/ci/catalog/resources/version_shared_context.rb
index 3c9bb980b46..3eeaa52d221 100644
--- a/spec/support/shared_contexts/ci/catalog/resources/version_shared_context.rb
+++ b/spec/support/shared_contexts/ci/catalog/resources/version_shared_context.rb
@@ -3,14 +3,14 @@
RSpec.shared_context 'when there are catalog resources with versions' do
let_it_be(:current_user) { create(:user) }
- let_it_be(:project1) { create(:project, :repository) }
- let_it_be(:project2) { create(:project, :repository) }
- let_it_be(:project3) { create(:project, :repository) }
+ let_it_be(:project1) { create(:project, :repository, name: 'A') }
+ let_it_be(:project2) { create(:project, :repository, name: 'Z') }
+ let_it_be(:project3) { create(:project, :repository, name: 'L', description: 'Z') }
let_it_be_with_reload(:resource1) { create(:ci_catalog_resource, project: project1) }
let_it_be_with_reload(:resource2) { create(:ci_catalog_resource, project: project2) }
let_it_be(:resource3) { create(:ci_catalog_resource, project: project3) }
- let_it_be(:release_v1_0) { create(:release, project: project1, tag: 'v1.0', released_at: 4.days.ago) }
+ let_it_be_with_reload(:release_v1_0) { create(:release, project: project1, tag: 'v1.0', released_at: 4.days.ago) }
let_it_be(:release_v1_1) { create(:release, project: project1, tag: 'v1.1', released_at: 3.days.ago) }
let_it_be(:release_v2_0) { create(:release, project: project2, tag: 'v2.0', released_at: 2.days.ago) }
let_it_be(:release_v2_1) { create(:release, project: project2, tag: 'v2.1', released_at: 1.day.ago) }
diff --git a/spec/support/shared_contexts/features/integrations/project_integrations_jira_context.rb b/spec/support/shared_contexts/features/integrations/project_integrations_jira_context.rb
index fadd46a7e12..c8552e02d0c 100644
--- a/spec/support/shared_contexts/features/integrations/project_integrations_jira_context.rb
+++ b/spec/support/shared_contexts/features/integrations/project_integrations_jira_context.rb
@@ -7,8 +7,8 @@ RSpec.shared_context 'project integration Jira context' do
def fill_form(disable: false)
click_active_checkbox if disable
- fill_in 'service_url', with: url
- fill_in 'service_username', with: 'username'
- fill_in 'service_password', with: 'password'
+ fill_in 'service-url', with: url
+ fill_in 'service-username', with: 'username'
+ fill_in 'service-password', with: 'password'
end
end
diff --git a/spec/support/shared_contexts/finders/issues_finder_shared_contexts.rb b/spec/support/shared_contexts/finders/issues_finder_shared_contexts.rb
index 16d23f63fd0..2ad2fcec39e 100644
--- a/spec/support/shared_contexts/finders/issues_finder_shared_contexts.rb
+++ b/spec/support/shared_contexts/finders/issues_finder_shared_contexts.rb
@@ -63,6 +63,11 @@ RSpec.shared_context 'IssuesFinder context' do
)
end
+ let_it_be(:group_level_item) { create(:issue, :epic, :group_level, namespace: group, author: user) }
+ let_it_be(:group_level_confidential_item) do
+ create(:issue, :confidential, :epic, :group_level, namespace: group, author: user2)
+ end
+
let_it_be(:award_emoji1) { create(:award_emoji, name: 'thumbsup', user: user, awardable: item1) }
let_it_be(:award_emoji2) { create(:award_emoji, name: 'thumbsup', user: user2, awardable: item2) }
let_it_be(:award_emoji3) { create(:award_emoji, name: 'thumbsdown', user: user, awardable: item3) }
diff --git a/spec/support/shared_contexts/finders/work_items_finder_shared_contexts.rb b/spec/support/shared_contexts/finders/work_items_finder_shared_contexts.rb
index 1118039d164..39e2819235b 100644
--- a/spec/support/shared_contexts/finders/work_items_finder_shared_contexts.rb
+++ b/spec/support/shared_contexts/finders/work_items_finder_shared_contexts.rb
@@ -63,6 +63,25 @@ RSpec.shared_context 'WorkItemsFinder context' do
)
end
+ let_it_be(:group_level_item) do
+ create(
+ :work_item,
+ :epic,
+ namespace: group,
+ author: user
+ )
+ end
+
+ let_it_be(:group_level_confidential_item) do
+ create(
+ :work_item,
+ :confidential,
+ :epic,
+ namespace: group,
+ author: user2
+ )
+ end
+
let_it_be(:award_emoji1) { create(:award_emoji, name: 'thumbsup', user: user, awardable: item1) }
let_it_be(:award_emoji2) { create(:award_emoji, name: 'thumbsup', user: user2, awardable: item2) }
let_it_be(:award_emoji3) { create(:award_emoji, name: 'thumbsdown', user: user, awardable: item3) }
diff --git a/spec/support/shared_contexts/graphql/types/query_type_shared_context.rb b/spec/support/shared_contexts/graphql/types/query_type_shared_context.rb
index 257ccc553fe..6ab41d87f44 100644
--- a/spec/support/shared_contexts/graphql/types/query_type_shared_context.rb
+++ b/spec/support/shared_contexts/graphql/types/query_type_shared_context.rb
@@ -43,6 +43,7 @@ RSpec.shared_context 'with FOSS query type fields' do
:user,
:users,
:work_item,
+ :work_items_by_reference,
:audit_event_definitions,
:abuse_report,
:abuse_report_labels
diff --git a/spec/support/shared_contexts/merge_request_edit_shared_context.rb b/spec/support/shared_contexts/merge_request_edit_shared_context.rb
index f0e89b0c5f9..cceaa14b3d2 100644
--- a/spec/support/shared_contexts/merge_request_edit_shared_context.rb
+++ b/spec/support/shared_contexts/merge_request_edit_shared_context.rb
@@ -5,7 +5,7 @@ RSpec.shared_context 'merge request edit context' do
let(:user2) { create(:user) }
let!(:milestone) { create(:milestone, project: target_project) }
let!(:label) { create(:label, project: target_project) }
- let!(:label2) { create(:label, project: target_project) }
+ let!(:label2) { create(:label, project: target_project, lock_on_merge: true) }
let(:target_project) { create(:project, :public, :repository) }
let(:source_project) { target_project }
let(:merge_request) do
diff --git a/spec/support/shared_contexts/navbar_structure_context.rb b/spec/support/shared_contexts/navbar_structure_context.rb
index a5ccce27aa5..2adb9e410a7 100644
--- a/spec/support/shared_contexts/navbar_structure_context.rb
+++ b/spec/support/shared_contexts/navbar_structure_context.rb
@@ -236,29 +236,6 @@ RSpec.shared_context '"Explore" navbar structure' do
nav_sub_items: []
},
{
- nav_item: _("Topics"),
- nav_sub_items: []
- },
- {
- nav_item: _("Snippets"),
- nav_sub_items: []
- }
- ]
- end
-end
-
-RSpec.shared_context '"Explore" navbar structure with global_ci_catalog FF' do
- let(:structure) do
- [
- {
- nav_item: _("Projects"),
- nav_sub_items: []
- },
- {
- nav_item: _("Groups"),
- nav_sub_items: []
- },
- {
nav_item: _("CI/CD Catalog"),
nav_sub_items: []
},
diff --git a/spec/support/shared_contexts/policies/group_policy_shared_context.rb b/spec/support/shared_contexts/policies/group_policy_shared_context.rb
index 4564fa23236..c6ea665a160 100644
--- a/spec/support/shared_contexts/policies/group_policy_shared_context.rb
+++ b/spec/support/shared_contexts/policies/group_policy_shared_context.rb
@@ -12,14 +12,14 @@ RSpec.shared_context 'GroupPolicy context' do
let(:public_permissions) do
%i[
- read_group read_counts read_issue
+ read_group read_counts read_issue read_namespace
read_label read_issue_board_list read_milestone read_issue_board
]
end
let(:guest_permissions) do
%i[
- read_label read_group upload_file read_namespace read_namespace_via_membership read_group_activity
+ read_label read_group upload_file read_namespace_via_membership read_group_activity
read_group_issues read_group_boards read_group_labels read_group_milestones
read_group_merge_requests
]
diff --git a/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb b/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb
index 11f6d816fc1..04bbbcb1c36 100644
--- a/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb
+++ b/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb
@@ -83,16 +83,16 @@ RSpec.shared_context 'ProjectPolicyTable context' do
:public | :anonymous | nil | 1
:internal | :admin | true | 1
- :internal | :admin | false | 0
- :internal | :reporter | nil | 0
- :internal | :guest | nil | 0
- :internal | :non_member | nil | 0
+ :internal | :admin | false | 1
+ :internal | :reporter | nil | 1
+ :internal | :guest | nil | 1
+ :internal | :non_member | nil | 1
:internal | :anonymous | nil | 0
:private | :admin | true | 1
:private | :admin | false | 0
- :private | :reporter | nil | 0
- :private | :guest | nil | 0
+ :private | :reporter | nil | 1
+ :private | :guest | nil | 1
:private | :non_member | nil | 0
:private | :anonymous | nil | 0
end
diff --git a/spec/support/shared_contexts/requests/api/graphql/work_items/work_item_types_shared_context.rb b/spec/support/shared_contexts/requests/api/graphql/work_items/work_item_types_shared_context.rb
new file mode 100644
index 00000000000..3a062d77b4f
--- /dev/null
+++ b/spec/support/shared_contexts/requests/api/graphql/work_items/work_item_types_shared_context.rb
@@ -0,0 +1,64 @@
+# frozen_string_literal: true
+
+RSpec.shared_context 'with work item types request context' do
+ let(:work_item_type_fields) do
+ <<~GRAPHQL
+ id
+ name
+ iconName
+ widgetDefinitions {
+ type
+ ... on WorkItemWidgetDefinitionAssignees {
+ canInviteMembers
+ }
+ ... on WorkItemWidgetDefinitionHierarchy {
+ allowedChildTypes {
+ nodes { id name }
+ }
+ }
+ }
+ GRAPHQL
+ end
+
+ # This is necessary so we can overwrite attributes in EE
+ let(:widget_attributes) { base_widget_attributes }
+ let(:base_widget_attributes) do
+ {
+ assignees: {
+ 'canInviteMembers' => false
+ }
+ }
+ end
+
+ def expected_work_item_type_response(work_item_type = nil)
+ base_scope = WorkItems::Type.default
+ base_scope = base_scope.id_in(work_item_type.id) if work_item_type
+
+ base_scope.map do |type|
+ hash_including(
+ 'id' => type.to_global_id.to_s,
+ 'name' => type.name,
+ 'iconName' => type.icon_name,
+ 'widgetDefinitions' => match_array(widgets_for(type))
+ )
+ end
+ end
+
+ def widgets_for(work_item_type)
+ work_item_type.widgets.map do |widget|
+ base_attributes = { 'type' => widget.type.to_s.upcase }
+ next hierarchy_widget_attributes(work_item_type, base_attributes) if widget == WorkItems::Widgets::Hierarchy
+ next base_attributes unless widget_attributes[widget.type]
+
+ base_attributes.merge(widget_attributes[widget.type])
+ end
+ end
+
+ def hierarchy_widget_attributes(work_item_type, base_attributes)
+ fields = work_item_type.allowed_child_types_by_name.map do |child_type|
+ { "id" => child_type.to_global_id.to_s, "name" => child_type.name }
+ end
+
+ base_attributes.merge({ 'allowedChildTypes' => { 'nodes' => fields } })
+ end
+end
diff --git a/spec/support/shared_contexts/requests/api/terraform_modules_shared_context.rb b/spec/support/shared_contexts/requests/api/terraform_modules_shared_context.rb
new file mode 100644
index 00000000000..359664ee4f3
--- /dev/null
+++ b/spec/support/shared_contexts/requests/api/terraform_modules_shared_context.rb
@@ -0,0 +1,27 @@
+# frozen_string_literal: true
+
+RSpec.shared_context 'for terraform modules api setup' do
+ include PackagesManagerApiSpecHelpers
+ include WorkhorseHelpers
+
+ let_it_be_with_reload(:group) { create(:group) }
+ let_it_be_with_reload(:project) { create(:project, namespace: group) }
+ let_it_be(:package) { create(:terraform_module_package, project: project) }
+ let_it_be(:personal_access_token) { create(:personal_access_token) }
+ let_it_be(:user) { personal_access_token.user }
+ let_it_be(:job) { create(:ci_build, :running, user: user, project: project) }
+ let_it_be(:deploy_token) { create(:deploy_token, read_package_registry: true, write_package_registry: true) }
+ let_it_be(:project_deploy_token) { create(:project_deploy_token, deploy_token: deploy_token, project: project) }
+
+ let(:headers) { {} }
+ let(:token) { tokens[token_type] }
+
+ let(:tokens) do
+ {
+ personal_access_token: personal_access_token.token,
+ deploy_token: deploy_token.token,
+ job_token: job.token,
+ invalid: 'invalid-token123'
+ }
+ end
+end
diff --git a/spec/support/shared_contexts/services/service_ping/stubbed_service_ping_metrics_definitions_shared_context.rb b/spec/support/shared_contexts/services/service_ping/stubbed_service_ping_metrics_definitions_shared_context.rb
index 24f0d22da47..b51c68f4958 100644
--- a/spec/support/shared_contexts/services/service_ping/stubbed_service_ping_metrics_definitions_shared_context.rb
+++ b/spec/support/shared_contexts/services/service_ping/stubbed_service_ping_metrics_definitions_shared_context.rb
@@ -50,7 +50,8 @@ RSpec.shared_context 'stubbed service ping metrics definitions' do
'value_type' => value_type,
'status' => status,
'instrumentation_class' => instrumentation_class,
- 'time_frame' => 'all'
+ 'time_frame' => 'all',
+ 'data_source' => 'redis_hll'
}
end
end
diff --git a/spec/support/shared_contexts/single_change_access_checks_shared_context.rb b/spec/support/shared_contexts/single_change_access_checks_shared_context.rb
index bf90c26047b..5945302824b 100644
--- a/spec/support/shared_contexts/single_change_access_checks_shared_context.rb
+++ b/spec/support/shared_contexts/single_change_access_checks_shared_context.rb
@@ -21,7 +21,7 @@ RSpec.shared_context 'change access checks context' do
)
end
- subject { described_class.new(change_access) }
+ subject(:change_check) { described_class.new(change_access) }
before do
project.add_developer(user)