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:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-07-21 15:10:03 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-07-21 15:10:03 +0300
commitf44215bf40c974c5b20c06c4260eb48c8a6cc7c2 (patch)
tree3e1145dc1a52fad5cc2f0ef14a1107a15c00b07a
parent265a7ceccadf01cf1c2983c54abf86de19f6c2ad (diff)
Add latest changes from gitlab-org/gitlab@master
-rw-r--r--.rubocop.yml12
-rw-r--r--.rubocop_todo/rspec/context_wording.yml559
-rw-r--r--app/assets/javascripts/repository/constants.js1
-rw-r--r--app/assets/javascripts/vue_shared/components/source_viewer/constants.js1
-rw-r--r--app/assets/javascripts/vue_shared/components/source_viewer/plugins/link_dependencies.js2
-rw-r--r--app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/dependency_linker_util.js3
-rw-r--r--app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/gemspec_linker.js39
-rw-r--r--app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql2
-rw-r--r--app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql2
-rw-r--r--app/assets/javascripts/work_items/graphql/local_update_work_item.mutation.graphql2
-rw-r--r--app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql2
-rw-r--r--app/assets/javascripts/work_items/graphql/update_work_item_task.mutation.graphql2
-rw-r--r--app/assets/javascripts/work_items/graphql/update_work_item_widgets.mutation.graphql2
-rw-r--r--app/assets/javascripts/work_items/graphql/work_item.fragment.graphql10
-rw-r--r--app/assets/javascripts/work_items/graphql/work_item.query.graphql2
-rw-r--r--app/controllers/import/bulk_imports_controller.rb10
-rw-r--r--app/graphql/types/ci/pipeline_type.rb2
-rw-r--r--app/models/bulk_imports/entity.rb2
-rw-r--r--app/models/environment.rb26
-rw-r--r--app/models/members/group_member.rb23
-rw-r--r--app/services/boards/destroy_service.rb4
-rw-r--r--app/services/bulk_imports/create_service.rb2
-rw-r--r--config/feature_flags/development/soft_validation_on_external_url.yml (renamed from config/feature_flags/development/refresh_authorizations_via_affected_projects_on_group_membership.yml)10
-rw-r--r--doc/administration/incoming_email.md3
-rw-r--r--doc/api/bulk_imports.md9
-rw-r--r--doc/api/graphql/reference/index.md40
-rw-r--r--doc/ci/environments/index.md2
-rw-r--r--lib/api/bulk_imports.rb14
-rw-r--r--lib/api/entities/bulk_imports/entity.rb3
-rw-r--r--lib/bulk_imports/groups/transformers/group_attributes_transformer.rb2
-rw-r--r--lib/bulk_imports/projects/transformers/project_attributes_transformer.rb4
-rw-r--r--spec/controllers/admin/users_controller_spec.rb4
-rw-r--r--spec/controllers/import/bulk_imports_controller_spec.rb38
-rw-r--r--spec/controllers/profiles_controller_spec.rb6
-rw-r--r--spec/controllers/projects/environments_controller_spec.rb2
-rw-r--r--spec/controllers/registrations_controller_spec.rb8
-rw-r--r--spec/features/merge_request/user_posts_diff_notes_spec.rb1
-rw-r--r--spec/features/users/login_spec.rb4
-rw-r--r--spec/frontend/vue_shared/components/source_viewer/plugins/link_dependencies_spec.js9
-rw-r--r--spec/frontend/vue_shared/components/source_viewer/plugins/mock_data.js2
-rw-r--r--spec/frontend/vue_shared/components/source_viewer/plugins/utils/gemspec_linker_spec.js14
-rw-r--r--spec/frontend/work_items/mock_data.js16
-rw-r--r--spec/lib/api/entities/bulk_imports/entity_spec.rb1
-rw-r--r--spec/lib/bulk_imports/groups/transformers/group_attributes_transformer_spec.rb8
-rw-r--r--spec/lib/bulk_imports/projects/transformers/project_attributes_transformer_spec.rb10
-rw-r--r--spec/models/environment_spec.rb86
-rw-r--r--spec/models/members/group_member_spec.rb72
-rw-r--r--spec/requests/api/boards_spec.rb6
-rw-r--r--spec/requests/api/bulk_imports_spec.rb93
-rw-r--r--spec/requests/api/graphql/ci/pipelines_spec.rb29
-rw-r--r--spec/requests/api/graphql/mutations/boards/destroy_spec.rb11
-rw-r--r--spec/services/bulk_imports/create_service_spec.rb6
-rw-r--r--spec/services/deployments/update_environment_service_spec.rb4
-rw-r--r--spec/support/helpers/login_helpers.rb4
-rw-r--r--spec/support/shared_examples/boards/destroy_service_shared_examples.rb6
55 files changed, 603 insertions, 634 deletions
diff --git a/.rubocop.yml b/.rubocop.yml
index 4c7abe0dc89..e2cbda196c3 100644
--- a/.rubocop.yml
+++ b/.rubocop.yml
@@ -596,6 +596,18 @@ RSpec/HaveGitlabHttpStatus:
- 'spec/**/*'
- 'ee/spec/**/*'
+RSpec/ContextWording:
+ Prefixes:
+ - when
+ - with
+ - without
+ - for
+ - and
+ - on
+ - in
+ - as
+ - if
+
Style/MultilineWhenThen:
Enabled: false
diff --git a/.rubocop_todo/rspec/context_wording.yml b/.rubocop_todo/rspec/context_wording.yml
index 724aa420d89..797f03573d5 100644
--- a/.rubocop_todo/rspec/context_wording.yml
+++ b/.rubocop_todo/rspec/context_wording.yml
@@ -1,9 +1,7 @@
---
RSpec/ContextWording:
- # Offense count: 18360
- # Temporarily disabled due to too many offenses
- Enabled: false
Exclude:
+ - 'ee/spec/components/namespaces/free_user_cap/personal_usage_quota_limitations_alert_component_spec.rb'
- 'ee/spec/controllers/admin/application_settings_controller_spec.rb'
- 'ee/spec/controllers/admin/audit_logs_controller_spec.rb'
- 'ee/spec/controllers/admin/dev_ops_report_controller_spec.rb'
@@ -15,10 +13,8 @@ RSpec/ContextWording:
- 'ee/spec/controllers/autocomplete_controller_spec.rb'
- 'ee/spec/controllers/boards/lists_controller_spec.rb'
- 'ee/spec/controllers/dashboard_controller_spec.rb'
- - 'ee/spec/controllers/ee/dashboard/projects_controller_spec.rb'
- 'ee/spec/controllers/ee/groups/variables_controller_spec.rb'
- 'ee/spec/controllers/ee/groups_controller_spec.rb'
- - 'ee/spec/controllers/ee/profiles/preferences_controller_spec.rb'
- 'ee/spec/controllers/ee/projects/jobs_controller_spec.rb'
- 'ee/spec/controllers/ee/projects/merge_requests/content_controller_spec.rb'
- 'ee/spec/controllers/ee/registrations_controller_spec.rb'
@@ -27,7 +23,6 @@ RSpec/ContextWording:
- 'ee/spec/controllers/ee/sent_notifications_controller_spec.rb'
- 'ee/spec/controllers/ee/sessions_controller_spec.rb'
- 'ee/spec/controllers/groups/analytics/cycle_analytics_controller_spec.rb'
- - 'ee/spec/controllers/groups/analytics/productivity_analytics_controller_spec.rb'
- 'ee/spec/controllers/groups/audit_events_controller_spec.rb'
- 'ee/spec/controllers/groups/billings_controller_spec.rb'
- 'ee/spec/controllers/groups/boards_controller_spec.rb'
@@ -42,10 +37,7 @@ RSpec/ContextWording:
- 'ee/spec/controllers/groups/push_rules_controller_spec.rb'
- 'ee/spec/controllers/groups/saml_providers_controller_spec.rb'
- 'ee/spec/controllers/groups/scim_oauth_controller_spec.rb'
- - 'ee/spec/controllers/groups/security/compliance_dashboards_controller_spec.rb'
- - 'ee/spec/controllers/groups/security/dashboard_controller_spec.rb'
- 'ee/spec/controllers/groups/security/merge_commit_reports_controller_spec.rb'
- - 'ee/spec/controllers/groups/security/vulnerabilities_controller_spec.rb'
- 'ee/spec/controllers/groups/sso_controller_spec.rb'
- 'ee/spec/controllers/ldap/omniauth_callbacks_controller_spec.rb'
- 'ee/spec/controllers/oauth/applications_controller_spec.rb'
@@ -56,7 +48,6 @@ RSpec/ContextWording:
- 'ee/spec/controllers/projects/approvers_controller_spec.rb'
- 'ee/spec/controllers/projects/audit_events_controller_spec.rb'
- 'ee/spec/controllers/projects/boards_controller_spec.rb'
- - 'ee/spec/controllers/projects/branches_controller_spec.rb'
- 'ee/spec/controllers/projects/environments_controller_spec.rb'
- 'ee/spec/controllers/projects/imports_controller_spec.rb'
- 'ee/spec/controllers/projects/incident_management/escalation_policies_controller_spec.rb'
@@ -81,12 +72,15 @@ RSpec/ContextWording:
- 'ee/spec/controllers/registrations/welcome_controller_spec.rb'
- 'ee/spec/controllers/repositories/git_http_controller_spec.rb'
- 'ee/spec/controllers/security/dashboard_controller_spec.rb'
- - 'ee/spec/controllers/security/projects_controller_spec.rb'
- 'ee/spec/controllers/security/vulnerabilities_controller_spec.rb'
- 'ee/spec/controllers/subscriptions_controller_spec.rb'
- 'ee/spec/controllers/trial_registrations_controller_spec.rb'
- 'ee/spec/controllers/trials_controller_spec.rb'
- 'ee/spec/controllers/users_controller_spec.rb'
+ - 'ee/spec/elastic/migrate/20220119120500_populate_commit_permissions_in_main_index_spec.rb'
+ - 'ee/spec/elastic/migrate/20220512150000_pause_indexing_for_unsupported_es_versions_spec.rb'
+ - 'ee/spec/elastic/migrate/20220613120500_migrate_commits_to_separate_index_spec.rb'
+ - 'ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb'
- 'ee/spec/elastic/migrate/migration_shared_examples.rb'
- 'ee/spec/elastic_integration/global_search_spec.rb'
- 'ee/spec/features/admin/admin_audit_logs_spec.rb'
@@ -96,9 +90,7 @@ RSpec/ContextWording:
- 'ee/spec/features/admin/admin_settings_spec.rb'
- 'ee/spec/features/admin/geo/admin_geo_nodes_spec.rb'
- 'ee/spec/features/admin/geo/admin_geo_sidebar_spec.rb'
- - 'ee/spec/features/admin/groups/admin_subscription_alerts_spec.rb'
- 'ee/spec/features/admin/licenses/admin_adds_license_spec.rb'
- - 'ee/spec/features/admin/licenses/show_user_count_threshold_spec.rb'
- 'ee/spec/features/analytics/code_analytics_spec.rb'
- 'ee/spec/features/billings/billing_plans_spec.rb'
- 'ee/spec/features/boards/boards_licensed_features_spec.rb'
@@ -109,9 +101,8 @@ RSpec/ContextWording:
- 'ee/spec/features/boards/swimlanes/epics_swimlanes_drag_drop_spec.rb'
- 'ee/spec/features/boards/swimlanes/epics_swimlanes_filtering_spec.rb'
- 'ee/spec/features/boards/swimlanes/epics_swimlanes_sidebar_labels_spec.rb'
- - 'ee/spec/features/boards/swimlanes/epics_swimlanes_sidebar_spec.rb'
- 'ee/spec/features/boards/swimlanes/epics_swimlanes_spec.rb'
- - 'ee/spec/features/boards/user_visits_board_spec.rb'
+ - 'ee/spec/features/dashboards/todos_spec.rb'
- 'ee/spec/features/discussion_comments/epic_quick_actions_spec.rb'
- 'ee/spec/features/epic_boards/epic_boards_sidebar_spec.rb'
- 'ee/spec/features/epic_boards/epic_boards_spec.rb'
@@ -120,11 +111,11 @@ RSpec/ContextWording:
- 'ee/spec/features/epics/epic_issues_spec.rb'
- 'ee/spec/features/epics/epics_list_spec.rb'
- 'ee/spec/features/epics/gfm_autocomplete_spec.rb'
- - 'ee/spec/features/epics/issue_promotion_spec.rb'
- 'ee/spec/features/epics/referencing_epics_spec.rb'
- 'ee/spec/features/epics/update_epic_spec.rb'
- 'ee/spec/features/epics/user_uses_quick_actions_spec.rb'
- 'ee/spec/features/geo_node_spec.rb'
+ - 'ee/spec/features/gitlab_subscriptions/seat_count_alert_spec.rb'
- 'ee/spec/features/google_analytics_datalayer_spec.rb'
- 'ee/spec/features/groups/active_tabs_spec.rb'
- 'ee/spec/features/groups/analytics/cycle_analytics/charts_spec.rb'
@@ -137,8 +128,6 @@ RSpec/ContextWording:
- 'ee/spec/features/groups/groups_security_credentials_spec.rb'
- 'ee/spec/features/groups/issues_spec.rb'
- 'ee/spec/features/groups/iteration_spec.rb'
- - 'ee/spec/features/groups/iterations/iterations_list_spec.rb'
- - 'ee/spec/features/groups/iterations/user_edits_iteration_cadence_spec.rb'
- 'ee/spec/features/groups/iterations/user_edits_iteration_spec.rb'
- 'ee/spec/features/groups/ldap_group_links_spec.rb'
- 'ee/spec/features/groups/members/manage_groups_spec.rb'
@@ -148,11 +137,10 @@ RSpec/ContextWording:
- 'ee/spec/features/groups/saml_providers_spec.rb'
- 'ee/spec/features/groups/seat_usage/seat_usage_spec.rb'
- 'ee/spec/features/groups/security/compliance_dashboards_spec.rb'
- - 'ee/spec/features/groups/settings/user_searches_in_settings_spec.rb'
- 'ee/spec/features/groups/sso_spec.rb'
- 'ee/spec/features/groups/usage_quotas_spec.rb'
- - 'ee/spec/features/groups/wiki/user_views_wiki_empty_spec.rb'
- 'ee/spec/features/groups_spec.rb'
+ - 'ee/spec/features/ide/user_commits_changes_spec.rb'
- 'ee/spec/features/ide/user_opens_ide_spec.rb'
- 'ee/spec/features/integrations/jira/jira_issues_list_spec.rb'
- 'ee/spec/features/issues/epic_in_issue_sidebar_spec.rb'
@@ -180,20 +168,19 @@ RSpec/ContextWording:
- 'ee/spec/features/merge_requests/user_filters_by_approvers_spec.rb'
- 'ee/spec/features/oncall_schedules/user_creates_schedule_spec.rb'
- 'ee/spec/features/profiles/account_spec.rb'
+ - 'ee/spec/features/profiles/usage_quotas_spec.rb'
- 'ee/spec/features/projects/active_tabs_spec.rb'
- 'ee/spec/features/projects/audit_events_spec.rb'
- 'ee/spec/features/projects/custom_projects_template_spec.rb'
- - 'ee/spec/features/projects/issues/user_creates_issue_spec.rb'
- - 'ee/spec/features/projects/iterations/iteration_cadences_list_spec.rb'
- - 'ee/spec/features/projects/iterations/iterations_list_spec.rb'
- 'ee/spec/features/projects/iterations/user_views_iteration_spec.rb'
- 'ee/spec/features/projects/jobs_spec.rb'
- 'ee/spec/features/projects/kerberos_clone_instructions_spec.rb'
- - 'ee/spec/features/projects/members/invite_group_and_members_spec.rb'
+ - 'ee/spec/features/projects/members/manage_groups_spec.rb'
- 'ee/spec/features/projects/members/member_leaves_project_spec.rb'
- 'ee/spec/features/projects/milestones/milestone_spec.rb'
- 'ee/spec/features/projects/new_project_from_template_spec.rb'
- 'ee/spec/features/projects/new_project_spec.rb'
+ - 'ee/spec/features/projects/pipelines/legacy_pipeline_spec.rb'
- 'ee/spec/features/projects/pipelines/pipeline_spec.rb'
- 'ee/spec/features/projects/push_rules_spec.rb'
- 'ee/spec/features/projects/quality/test_case_create_spec.rb'
@@ -206,25 +193,18 @@ RSpec/ContextWording:
- 'ee/spec/features/projects/settings/merge_requests_settings_spec.rb'
- 'ee/spec/features/projects/settings/protected_environments_spec.rb'
- 'ee/spec/features/projects/settings/push_rules_settings_spec.rb'
- - 'ee/spec/features/projects/settings/user_manages_members_spec.rb'
- - 'ee/spec/features/projects/show_project_spec.rb'
- 'ee/spec/features/promotion_spec.rb'
- 'ee/spec/features/protected_branches_spec.rb'
- 'ee/spec/features/registrations/saas_user_registration_spec.rb'
- 'ee/spec/features/registrations/welcome_spec.rb'
- 'ee/spec/features/search/elastic/global_search_spec.rb'
- - 'ee/spec/features/search/elastic/snippet_search_spec.rb'
- - 'ee/spec/features/security/project/snippet/internal_access_spec.rb'
- - 'ee/spec/features/security/project/snippet/public_access_spec.rb'
- 'ee/spec/features/signup_spec.rb'
- - 'ee/spec/features/subscriptions/expiring_subscription_message_spec.rb'
- 'ee/spec/features/trial_registrations/company_information_spec.rb'
- 'ee/spec/features/trials/select_namespace_spec.rb'
- 'ee/spec/features/users/login_spec.rb'
- 'ee/spec/features/users/signup_spec.rb'
+ - 'ee/spec/finders/approval_rules/group_finder_spec.rb'
- 'ee/spec/finders/audit_event_finder_spec.rb'
- - 'ee/spec/finders/autocomplete/vulnerabilities_autocomplete_finder_spec.rb'
- - 'ee/spec/finders/billed_users_finder_spec.rb'
- 'ee/spec/finders/clusters/environments_finder_spec.rb'
- 'ee/spec/finders/compliance_management/merge_requests/compliance_violations_finder_spec.rb'
- 'ee/spec/finders/custom_project_templates_finder_spec.rb'
@@ -234,6 +214,7 @@ RSpec/ContextWording:
- 'ee/spec/finders/dast_site_validations_finder_spec.rb'
- 'ee/spec/finders/ee/alert_management/http_integrations_finder_spec.rb'
- 'ee/spec/finders/ee/clusters/agent_authorizations_finder_spec.rb'
+ - 'ee/spec/finders/ee/clusters/agents_finder_spec.rb'
- 'ee/spec/finders/ee/group_members_finder_spec.rb'
- 'ee/spec/finders/ee/namespaces/projects_finder_spec.rb'
- 'ee/spec/finders/ee/projects_finder_spec.rb'
@@ -260,7 +241,6 @@ RSpec/ContextWording:
- 'ee/spec/finders/security/vulnerability_reads_finder_spec.rb'
- 'ee/spec/finders/snippets_finder_spec.rb'
- 'ee/spec/finders/software_license_policies_finder_spec.rb'
- - 'ee/spec/finders/status_page/incidents_finder_spec.rb'
- 'ee/spec/finders/template_finder_spec.rb'
- 'ee/spec/frontend/fixtures/dast_profiles.rb'
- 'ee/spec/frontend/fixtures/on_demand_dast_scans.rb'
@@ -269,6 +249,8 @@ RSpec/ContextWording:
- 'ee/spec/graphql/ee/resolvers/board_list_issues_resolver_spec.rb'
- 'ee/spec/graphql/ee/resolvers/namespace_projects_resolver_spec.rb'
- 'ee/spec/graphql/ee/types/projects/service_type_enum_spec.rb'
+ - 'ee/spec/graphql/mutations/audit_events/streaming/headers/create_spec.rb'
+ - 'ee/spec/graphql/mutations/audit_events/streaming/headers/destroy_spec.rb'
- 'ee/spec/graphql/mutations/boards/epic_boards/create_spec.rb'
- 'ee/spec/graphql/mutations/boards/epic_boards/destroy_spec.rb'
- 'ee/spec/graphql/mutations/boards/epic_boards/epic_move_list_spec.rb'
@@ -294,12 +276,11 @@ RSpec/ContextWording:
- 'ee/spec/graphql/mutations/security_policy/assign_security_policy_project_spec.rb'
- 'ee/spec/graphql/mutations/security_policy/commit_scan_execution_policy_spec.rb'
- 'ee/spec/graphql/mutations/security_policy/create_security_policy_project_spec.rb'
- - 'ee/spec/graphql/mutations/security_policy/unassign_security_policy_project_spec.rb'
- - 'ee/spec/graphql/mutations/vulnerabilities/create_external_issue_link_spec.rb'
- 'ee/spec/graphql/resolvers/admin/cloud_licenses/subscription_future_entries_resolver_spec.rb'
- - 'ee/spec/graphql/resolvers/analytics/devops_adoption/enabled_namespaces_resolver_spec.rb'
- 'ee/spec/graphql/resolvers/boards/board_list_epics_resolver_spec.rb'
+ - 'ee/spec/graphql/resolvers/clusters/agents_resolver_spec.rb'
- 'ee/spec/graphql/resolvers/compliance_management/merge_requests/compliance_violation_resolver_spec.rb'
+ - 'ee/spec/graphql/resolvers/dora_metrics_resolver_spec.rb'
- 'ee/spec/graphql/resolvers/epics_resolver_spec.rb'
- 'ee/spec/graphql/resolvers/incident_management/oncall_schedule_resolver_spec.rb'
- 'ee/spec/graphql/resolvers/instance_security_dashboard/projects_resolver_spec.rb'
@@ -308,7 +289,7 @@ RSpec/ContextWording:
- 'ee/spec/graphql/resolvers/path_locks_resolver_spec.rb'
- 'ee/spec/graphql/resolvers/requirements_management/requirements_resolver_spec.rb'
- 'ee/spec/graphql/resolvers/security_report_summary_resolver_spec.rb'
- - 'ee/spec/graphql/resolvers/vulnerabilities_resolver_spec.rb'
+ - 'ee/spec/graphql/types/audit_events/exterrnal_audit_event_destination_type_spec.rb'
- 'ee/spec/graphql/types/global_id_type_spec.rb'
- 'ee/spec/graphql/types/incident_management/escalation_rule_input_type_spec.rb'
- 'ee/spec/graphql/types/issue_type_spec.rb'
@@ -320,42 +301,32 @@ RSpec/ContextWording:
- 'ee/spec/helpers/application_helper_spec.rb'
- 'ee/spec/helpers/boards_helper_spec.rb'
- 'ee/spec/helpers/compliance_management/compliance_framework/group_settings_helper_spec.rb'
- - 'ee/spec/helpers/ee/application_settings_helper_spec.rb'
- 'ee/spec/helpers/ee/auth_helper_spec.rb'
- - 'ee/spec/helpers/ee/dashboard_helper_spec.rb'
- 'ee/spec/helpers/ee/environments_helper_spec.rb'
- - 'ee/spec/helpers/ee/events_helper_spec.rb'
- 'ee/spec/helpers/ee/gitlab_routing_helper_spec.rb'
+ - 'ee/spec/helpers/ee/groups/group_members_helper_spec.rb'
- 'ee/spec/helpers/ee/groups_helper_spec.rb'
- 'ee/spec/helpers/ee/integrations_helper_spec.rb'
- 'ee/spec/helpers/ee/issuables_helper_spec.rb'
- 'ee/spec/helpers/ee/issues_helper_spec.rb'
- - 'ee/spec/helpers/ee/learn_gitlab_helper_spec.rb'
- 'ee/spec/helpers/ee/lock_helper_spec.rb'
- - 'ee/spec/helpers/ee/namespaces_helper_spec.rb'
- 'ee/spec/helpers/ee/operations_helper_spec.rb'
- 'ee/spec/helpers/ee/personal_access_tokens_helper_spec.rb'
- 'ee/spec/helpers/ee/projects/security/api_fuzzing_configuration_helper_spec.rb'
- - 'ee/spec/helpers/ee/security_orchestration_helper_spec.rb'
- - 'ee/spec/helpers/ee/system_note_helper_spec.rb'
- - 'ee/spec/helpers/ee/version_check_helper_spec.rb'
- 'ee/spec/helpers/ee/welcome_helper_spec.rb'
- 'ee/spec/helpers/groups/security_features_helper_spec.rb'
- 'ee/spec/helpers/license_helper_spec.rb'
- 'ee/spec/helpers/license_monitoring_helper_spec.rb'
- - 'ee/spec/helpers/notes_helper_spec.rb'
- 'ee/spec/helpers/paid_feature_callout_helper_spec.rb'
- 'ee/spec/helpers/projects/security/discover_helper_spec.rb'
- 'ee/spec/helpers/projects_helper_spec.rb'
- 'ee/spec/helpers/roadmaps_helper_spec.rb'
+ - 'ee/spec/helpers/security_helper_spec.rb'
- 'ee/spec/helpers/subscriptions_helper_spec.rb'
- 'ee/spec/helpers/timeboxes_helper_spec.rb'
- 'ee/spec/helpers/vulnerabilities_helper_spec.rb'
- 'ee/spec/initializers/1_settings_spec.rb'
- - 'ee/spec/initializers/database_config_spec.rb'
- 'ee/spec/initializers/session_store_spec.rb'
- - 'ee/spec/lib/analytics/devops_adoption/snapshot_calculator_spec.rb'
- - 'ee/spec/lib/analytics/refresh_comments_data_spec.rb'
- 'ee/spec/lib/audit/details_spec.rb'
- 'ee/spec/lib/audit/group_push_rules_changes_auditor_spec.rb'
- 'ee/spec/lib/banzai/filter/references/epic_reference_filter_spec.rb'
@@ -370,10 +341,10 @@ RSpec/ContextWording:
- 'ee/spec/lib/ee/api/entities/user_with_admin_spec.rb'
- 'ee/spec/lib/ee/api/helpers/variables_helpers_spec.rb'
- 'ee/spec/lib/ee/api/helpers_spec.rb'
+ - 'ee/spec/lib/ee/backup/repositories_spec.rb'
- 'ee/spec/lib/ee/gitlab/alert_management/payload/generic_spec.rb'
- 'ee/spec/lib/ee/gitlab/application_context_spec.rb'
- 'ee/spec/lib/ee/gitlab/auth/ldap/sync/group_spec.rb'
- - 'ee/spec/lib/ee/gitlab/auth/ldap/sync/groups_spec.rb'
- 'ee/spec/lib/ee/gitlab/background_migration/backfill_iteration_cadence_id_for_boards_spec.rb'
- 'ee/spec/lib/ee/gitlab/background_migration/drop_invalid_remediations_spec.rb'
- 'ee/spec/lib/ee/gitlab/background_migration/fix_incorrect_max_seats_used_spec.rb'
@@ -382,9 +353,7 @@ RSpec/ContextWording:
- 'ee/spec/lib/ee/gitlab/checks/push_rules/commit_check_spec.rb'
- 'ee/spec/lib/ee/gitlab/ci/config/entry/needs_spec.rb'
- 'ee/spec/lib/ee/gitlab/ci/matching/runner_matcher_spec.rb'
- - 'ee/spec/lib/ee/gitlab/ci/parsers/security/validators/schema_validator_spec.rb'
- 'ee/spec/lib/ee/gitlab/ci/pipeline/quota/activity_spec.rb'
- - 'ee/spec/lib/ee/gitlab/ci/pipeline/quota/job_activity_spec.rb'
- 'ee/spec/lib/ee/gitlab/ci/pipeline/quota/size_spec.rb'
- 'ee/spec/lib/ee/gitlab/ci/templates/templates_spec.rb'
- 'ee/spec/lib/ee/gitlab/cleanup/orphan_job_artifact_files_batch_spec.rb'
@@ -395,7 +364,6 @@ RSpec/ContextWording:
- 'ee/spec/lib/ee/gitlab/gon_helper_spec.rb'
- 'ee/spec/lib/ee/gitlab/group_search_results_spec.rb'
- 'ee/spec/lib/ee/gitlab/hook_data/group_member_builder_spec.rb'
- - 'ee/spec/lib/ee/gitlab/hook_data/issue_builder_spec.rb'
- 'ee/spec/lib/ee/gitlab/hook_data/user_builder_spec.rb'
- 'ee/spec/lib/ee/gitlab/import_export/group/legacy_tree_restorer_spec.rb'
- 'ee/spec/lib/ee/gitlab/import_export/group/legacy_tree_saver_spec.rb'
@@ -403,22 +371,17 @@ RSpec/ContextWording:
- 'ee/spec/lib/ee/gitlab/import_export/group/tree_saver_spec.rb'
- 'ee/spec/lib/ee/gitlab/import_export/project/tree_saver_spec.rb'
- 'ee/spec/lib/ee/gitlab/ip_restriction/enforcer_spec.rb'
+ - 'ee/spec/lib/ee/gitlab/issuable/clone/copy_resource_events_service_spec.rb'
- 'ee/spec/lib/ee/gitlab/issuable_metadata_spec.rb'
- - 'ee/spec/lib/ee/gitlab/metrics/samplers/database_sampler_spec.rb'
- - 'ee/spec/lib/ee/gitlab/omniauth_initializer_spec.rb'
- - 'ee/spec/lib/ee/gitlab/prometheus/metric_group_spec.rb'
- 'ee/spec/lib/ee/gitlab/repo_path_spec.rb'
- 'ee/spec/lib/ee/gitlab/scim/provisioning_service_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage/service_ping/payload_keys_processor_spec.rb'
- - 'ee/spec/lib/ee/gitlab/usage/service_ping_report_spec.rb'
- - 'ee/spec/lib/ee/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage_data_spec.rb'
+ - 'ee/spec/lib/ee/service_ping/build_payload_spec.rb'
- 'ee/spec/lib/elastic/multi_version_class_proxy_spec.rb'
- 'ee/spec/lib/elastic/multi_version_instance_proxy_spec.rb'
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb'
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/request_params_spec.rb'
- - 'ee/spec/lib/gitlab/analytics/cycle_analytics/summary/lead_time_for_changes_spec.rb'
- - 'ee/spec/lib/gitlab/analytics/cycle_analytics/summary/lead_time_spec.rb'
- 'ee/spec/lib/gitlab/auth/group_saml/gma_membership_enforcer_spec.rb'
- 'ee/spec/lib/gitlab/auth/group_saml/group_lookup_spec.rb'
- 'ee/spec/lib/gitlab/auth/group_saml/identity_linker_spec.rb'
@@ -433,7 +396,6 @@ RSpec/ContextWording:
- 'ee/spec/lib/gitlab/auth/smartcard/ldap_certificate_spec.rb'
- 'ee/spec/lib/gitlab/auth/smartcard/san_extension_spec.rb'
- 'ee/spec/lib/gitlab/background_migration/remove_all_trace_expiration_dates_spec.rb'
- - 'ee/spec/lib/gitlab/cache_spec.rb'
- 'ee/spec/lib/gitlab/checks/diff_check_spec.rb'
- 'ee/spec/lib/gitlab/ci/minutes/cost_factor_spec.rb'
- 'ee/spec/lib/gitlab/ci/minutes/runners_availability_spec.rb'
@@ -454,6 +416,7 @@ RSpec/ContextWording:
- 'ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb'
- 'ee/spec/lib/gitlab/ci/templates/license_scanning_gitlab_ci_yaml_spec.rb'
- 'ee/spec/lib/gitlab/ci/templates/sast_gitlab_ci_yaml_spec.rb'
+ - 'ee/spec/lib/gitlab/ci/templates/sast_iac_gitlab_ci_yaml_spec.rb'
- 'ee/spec/lib/gitlab/ci/templates/sast_iac_latest_gitlab_ci_yaml_spec.rb'
- 'ee/spec/lib/gitlab/ci/templates/sast_latest_gitlab_ci_yaml_spec.rb'
- 'ee/spec/lib/gitlab/ci/templates/secret_detection_gitlab_ci_yaml_spec.rb'
@@ -493,24 +456,14 @@ RSpec/ContextWording:
- 'ee/spec/lib/gitlab/gl_repository/identifier_spec.rb'
- 'ee/spec/lib/gitlab/gl_repository/repo_type_spec.rb'
- 'ee/spec/lib/gitlab/graphql/aggregations/epics/epic_node_spec.rb'
- - 'ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_epic_aggregate_spec.rb'
- - 'ee/spec/lib/gitlab/graphql/aggregations/issues/lazy_links_aggregate_spec.rb'
- - 'ee/spec/lib/gitlab/graphql/aggregations/security_orchestration_policies/lazy_dast_profile_aggregate_spec.rb'
- - 'ee/spec/lib/gitlab/graphql/aggregations/vulnerabilities/lazy_user_notes_count_aggregate_spec.rb'
- - 'ee/spec/lib/gitlab/graphql/aggregations/vulnerability_statistics/lazy_aggregate_spec.rb'
- 'ee/spec/lib/gitlab/graphql/loaders/bulk_epic_aggregate_loader_spec.rb'
- - 'ee/spec/lib/gitlab/import_export/group/group_and_descendants_repo_restorer_spec.rb'
- - 'ee/spec/lib/gitlab/import_export/group/group_and_descendants_repo_saver_spec.rb'
- 'ee/spec/lib/gitlab/import_export/group/relation_factory_spec.rb'
- 'ee/spec/lib/gitlab/import_export/project/object_builder_spec.rb'
- 'ee/spec/lib/gitlab/insights/finders/issuable_finder_spec.rb'
- 'ee/spec/lib/gitlab/insights/project_insights_config_spec.rb'
- 'ee/spec/lib/gitlab/legacy_github_import/project_creator_spec.rb'
- 'ee/spec/lib/gitlab/pagination_delegate_spec.rb'
- - 'ee/spec/lib/gitlab/patch/database_config_spec.rb'
- - 'ee/spec/lib/gitlab/reference_extractor_spec.rb'
- 'ee/spec/lib/gitlab/search/aggregation_parser_spec.rb'
- - 'ee/spec/lib/gitlab/sitemaps/generator_spec.rb'
- 'ee/spec/lib/gitlab/sitemaps/url_extractor_spec.rb'
- 'ee/spec/lib/gitlab/slash_commands/presenters/issue_show_spec.rb'
- 'ee/spec/lib/gitlab/status_page/filter/image_filter_spec.rb'
@@ -522,11 +475,9 @@ RSpec/ContextWording:
- 'ee/spec/lib/gitlab/usage/metrics/instrumentations/advanced_search/distribution_metric_spec.rb'
- 'ee/spec/lib/gitlab/usage/metrics/instrumentations/advanced_search/lucene_version_metric_spec.rb'
- 'ee/spec/lib/gitlab/usage/metrics/instrumentations/advanced_search/version_metric_spec.rb'
- - 'ee/spec/lib/gitlab/usage/metrics/instrumentations/approval_project_rules_with_user_metric_spec.rb'
- 'ee/spec/lib/gitlab/usage_data_counters/epic_activity_unique_counter_spec.rb'
- 'ee/spec/lib/incident_management/oncall_shift_generator_spec.rb'
- 'ee/spec/lib/omni_auth/strategies/group_saml_spec.rb'
- - 'ee/spec/lib/system_check/app/search_check_spec.rb'
- 'ee/spec/lib/system_check/geo/authorized_keys_check_spec.rb'
- 'ee/spec/lib/system_check/geo/http_connection_check_spec.rb'
- 'ee/spec/lib/system_check/rake_task/geo_task_spec.rb'
@@ -542,6 +493,7 @@ RSpec/ContextWording:
- 'ee/spec/models/approval_merge_request_rule_spec.rb'
- 'ee/spec/models/approval_project_rule_spec.rb'
- 'ee/spec/models/approval_state_spec.rb'
+ - 'ee/spec/models/audit_events/external_audit_event_destination_spec.rb'
- 'ee/spec/models/board_spec.rb'
- 'ee/spec/models/boards/epic_board_position_spec.rb'
- 'ee/spec/models/broadcast_message_spec.rb'
@@ -551,12 +503,10 @@ RSpec/ContextWording:
- 'ee/spec/models/ci/pipeline_spec.rb'
- 'ee/spec/models/ci/sources/project_spec.rb'
- 'ee/spec/models/ci/subscriptions/project_spec.rb'
- - 'ee/spec/models/compliance_management/framework_spec.rb'
- 'ee/spec/models/concerns/approval_rule_like_spec.rb'
- 'ee/spec/models/concerns/approver_migrate_hook_spec.rb'
- 'ee/spec/models/concerns/deprecated_approvals_before_merge_spec.rb'
- 'ee/spec/models/concerns/ee/issuable_spec.rb'
- - 'ee/spec/models/concerns/ee/milestoneable_spec.rb'
- 'ee/spec/models/concerns/ee/participable_spec.rb'
- 'ee/spec/models/concerns/elastic/issue_spec.rb'
- 'ee/spec/models/concerns/elastic/note_spec.rb'
@@ -571,22 +521,18 @@ RSpec/ContextWording:
- 'ee/spec/models/dast_site_profile_spec.rb'
- 'ee/spec/models/dast_site_validation_spec.rb'
- 'ee/spec/models/deployment_spec.rb'
- - 'ee/spec/models/dora/change_failure_rate_metric_spec.rb'
- - 'ee/spec/models/dora/time_to_restore_service_metric_spec.rb'
- 'ee/spec/models/ee/audit_event_spec.rb'
- 'ee/spec/models/ee/award_emoji_spec.rb'
- - 'ee/spec/models/ee/ci/build_dependencies_spec.rb'
- 'ee/spec/models/ee/ci/job_artifact_spec.rb'
- - 'ee/spec/models/ee/ci/runner_spec.rb'
+ - 'ee/spec/models/ee/event_collection_spec.rb'
- 'ee/spec/models/ee/event_spec.rb'
+ - 'ee/spec/models/ee/group_group_link_spec.rb'
- 'ee/spec/models/ee/group_spec.rb'
- 'ee/spec/models/ee/incident_management/project_incident_management_setting_spec.rb'
- - 'ee/spec/models/ee/integrations/jira_spec.rb'
- 'ee/spec/models/ee/iteration_spec.rb'
- 'ee/spec/models/ee/iterations/cadence_spec.rb'
- - 'ee/spec/models/ee/key_spec.rb'
- - 'ee/spec/models/ee/merge_request_diff_spec.rb'
- 'ee/spec/models/ee/namespace/root_storage_size_spec.rb'
+ - 'ee/spec/models/ee/namespace/storage/notification_spec.rb'
- 'ee/spec/models/ee/namespace_ci_cd_setting_spec.rb'
- 'ee/spec/models/ee/namespace_limit_spec.rb'
- 'ee/spec/models/ee/namespace_spec.rb'
@@ -594,15 +540,11 @@ RSpec/ContextWording:
- 'ee/spec/models/ee/personal_access_token_spec.rb'
- 'ee/spec/models/ee/project_group_link_spec.rb'
- 'ee/spec/models/ee/protected_branch_spec.rb'
- - 'ee/spec/models/ee/protected_ref_spec.rb'
- - 'ee/spec/models/ee/service_desk_setting_spec.rb'
- 'ee/spec/models/ee/user_spec.rb'
- - 'ee/spec/models/environment_spec.rb'
- 'ee/spec/models/epic_issue_spec.rb'
- 'ee/spec/models/epic_spec.rb'
- 'ee/spec/models/geo/container_repository_registry_spec.rb'
- 'ee/spec/models/geo/design_registry_spec.rb'
- - 'ee/spec/models/geo/job_artifact_registry_spec.rb'
- 'ee/spec/models/geo/project_registry_spec.rb'
- 'ee/spec/models/geo/secondary_usage_data_spec.rb'
- 'ee/spec/models/geo_node_spec.rb'
@@ -614,10 +556,8 @@ RSpec/ContextWording:
- 'ee/spec/models/group_wiki_spec.rb'
- 'ee/spec/models/incident_management/escalation_rule_spec.rb'
- 'ee/spec/models/incident_management/oncall_rotation_spec.rb'
- - 'ee/spec/models/incident_management/oncall_shift_spec.rb'
- 'ee/spec/models/incident_management/pending_escalations/alert_spec.rb'
- 'ee/spec/models/incident_management/pending_escalations/issue_spec.rb'
- - 'ee/spec/models/integrations/github/remote_project_spec.rb'
- 'ee/spec/models/integrations/github_spec.rb'
- 'ee/spec/models/ip_restriction_spec.rb'
- 'ee/spec/models/issuable_metric_image_spec.rb'
@@ -633,7 +573,6 @@ RSpec/ContextWording:
- 'ee/spec/models/note_spec.rb'
- 'ee/spec/models/packages/package_file_spec.rb'
- 'ee/spec/models/path_lock_spec.rb'
- - 'ee/spec/models/productivity_analytics_spec.rb'
- 'ee/spec/models/project_import_data_spec.rb'
- 'ee/spec/models/project_import_state_spec.rb'
- 'ee/spec/models/project_member_spec.rb'
@@ -643,15 +582,12 @@ RSpec/ContextWording:
- 'ee/spec/models/protected_environments/approval_summary_spec.rb'
- 'ee/spec/models/push_rule_spec.rb'
- 'ee/spec/models/release_highlight_spec.rb'
- - 'ee/spec/models/remote_mirror_spec.rb'
- 'ee/spec/models/repository_spec.rb'
- - 'ee/spec/models/requirements_management/requirement_spec.rb'
- 'ee/spec/models/requirements_management/test_report_spec.rb'
- 'ee/spec/models/saml_group_link_spec.rb'
- 'ee/spec/models/saml_provider_spec.rb'
- 'ee/spec/models/status_page/project_setting_spec.rb'
- 'ee/spec/models/uploads/local_spec.rb'
- - 'ee/spec/models/vulnerabilities/export_spec.rb'
- 'ee/spec/models/vulnerabilities/feedback_spec.rb'
- 'ee/spec/models/vulnerabilities/finding_pipeline_spec.rb'
- 'ee/spec/models/vulnerabilities/finding_spec.rb'
@@ -669,7 +605,6 @@ RSpec/ContextWording:
- 'ee/spec/policies/incident_management/oncall_shift_policy_spec.rb'
- 'ee/spec/policies/issuable_policy_spec.rb'
- 'ee/spec/policies/merge_request_policy_spec.rb'
- - 'ee/spec/policies/note_policy_spec.rb'
- 'ee/spec/policies/project_policy_spec.rb'
- 'ee/spec/policies/project_snippet_policy_spec.rb'
- 'ee/spec/policies/protected_branch_policy_spec.rb'
@@ -682,6 +617,7 @@ RSpec/ContextWording:
- 'ee/spec/presenters/group_clusterable_presenter_spec.rb'
- 'ee/spec/presenters/merge_request_approver_presenter_spec.rb'
- 'ee/spec/presenters/subscription_presenter_spec.rb'
+ - 'ee/spec/replicators/geo/pipeline_replicator_spec.rb'
- 'ee/spec/requests/admin/credentials_controller_spec.rb'
- 'ee/spec/requests/admin/geo/replicables_controller_spec.rb'
- 'ee/spec/requests/api/analytics/group_activity_analytics_spec.rb'
@@ -691,13 +627,12 @@ RSpec/ContextWording:
- 'ee/spec/requests/api/ci/jobs_spec.rb'
- 'ee/spec/requests/api/ci/pipelines_spec.rb'
- 'ee/spec/requests/api/ci/runner_spec.rb'
- - 'ee/spec/requests/api/ci/triggers_spec.rb'
- 'ee/spec/requests/api/commits_spec.rb'
- 'ee/spec/requests/api/deployments_spec.rb'
+ - 'ee/spec/requests/api/dora/metrics_spec.rb'
- 'ee/spec/requests/api/epic_issues_spec.rb'
- 'ee/spec/requests/api/epic_links_spec.rb'
- 'ee/spec/requests/api/epics_spec.rb'
- - 'ee/spec/requests/api/experiments_spec.rb'
- 'ee/spec/requests/api/geo_nodes_spec.rb'
- 'ee/spec/requests/api/geo_spec.rb'
- 'ee/spec/requests/api/graphql/boards/epic_boards_query_spec.rb'
@@ -720,15 +655,14 @@ RSpec/ContextWording:
- 'ee/spec/requests/api/graphql/mutations/compliance_management/frameworks/destroy_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/compliance_management/frameworks/update_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/epics/create_spec.rb'
+ - 'ee/spec/requests/api/graphql/mutations/epics/update_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/incident_management/escalation_policy/create_spec.rb'
+ - 'ee/spec/requests/api/graphql/mutations/incident_management/issuable_resource_link/create_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/incident_management/oncall_rotation/create_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/incident_management/oncall_rotation/update_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/issues/update_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/security_policy/assign_security_policy_project_spec.rb'
- 'ee/spec/requests/api/graphql/mutations/security_policy/commit_scan_execution_policy_spec.rb'
- - 'ee/spec/requests/api/graphql/mutations/security_policy/create_security_policy_project_spec.rb'
- - 'ee/spec/requests/api/graphql/mutations/security_policy/unassign_security_policy_project_spec.rb'
- - 'ee/spec/requests/api/graphql/mutations/vulnerabilities/create_external_issue_link_spec.rb'
- 'ee/spec/requests/api/graphql/project/code_coverage_summary_spec.rb'
- 'ee/spec/requests/api/graphql/project/incident_management/escalation_policies_spec.rb'
- 'ee/spec/requests/api/graphql/project/incident_management/oncall_participants_spec.rb'
@@ -739,7 +673,6 @@ RSpec/ContextWording:
- 'ee/spec/requests/api/graphql/projects/compliance_frameworks_spec.rb'
- 'ee/spec/requests/api/graphql/vulnerabilities/sort_spec.rb'
- 'ee/spec/requests/api/group_clusters_spec.rb'
- - 'ee/spec/requests/api/group_hooks_spec.rb'
- 'ee/spec/requests/api/group_push_rule_spec.rb'
- 'ee/spec/requests/api/group_variables_spec.rb'
- 'ee/spec/requests/api/groups_spec.rb'
@@ -753,7 +686,6 @@ RSpec/ContextWording:
- 'ee/spec/requests/api/members_spec.rb'
- 'ee/spec/requests/api/merge_request_approval_rules_spec.rb'
- 'ee/spec/requests/api/merge_request_approval_settings_spec.rb'
- - 'ee/spec/requests/api/merge_request_approvals_spec.rb'
- 'ee/spec/requests/api/merge_requests_spec.rb'
- 'ee/spec/requests/api/namespaces_spec.rb'
- 'ee/spec/requests/api/project_aliases_spec.rb'
@@ -773,19 +705,13 @@ RSpec/ContextWording:
- 'ee/spec/requests/api/status_checks_spec.rb'
- 'ee/spec/requests/api/users_spec.rb'
- 'ee/spec/requests/api/v3/github_spec.rb'
- - 'ee/spec/requests/api/visual_review_discussions_spec.rb'
- - 'ee/spec/requests/api/vulnerabilities_spec.rb'
- - 'ee/spec/requests/api/vulnerability_exports_spec.rb'
- 'ee/spec/requests/api/vulnerability_findings_spec.rb'
- 'ee/spec/requests/git_http_geo_spec.rb'
- - 'ee/spec/requests/groups/group_members_controller_spec.rb'
- 'ee/spec/requests/groups/roadmap_controller_spec.rb'
- 'ee/spec/requests/groups/security/credentials_controller_spec.rb'
- - 'ee/spec/requests/groups/usage_quotas_spec.rb'
+ - 'ee/spec/requests/groups/settings/reporting_controller_spec.rb'
- 'ee/spec/requests/groups_controller_spec.rb'
- 'ee/spec/requests/jwt_controller_spec.rb'
- - 'ee/spec/requests/lfs_http_spec.rb'
- - 'ee/spec/requests/projects/analytics/code_reviews_controller_spec.rb'
- 'ee/spec/requests/projects/on_demand_scans_controller_spec.rb'
- 'ee/spec/requests/projects/requirements_management/requirements_controller_spec.rb'
- 'ee/spec/requests/projects/security/corpus_management_controller_spec.rb'
@@ -796,7 +722,6 @@ RSpec/ContextWording:
- 'ee/spec/requests/projects/security/scanned_resources_controller_spec.rb'
- 'ee/spec/requests/rack_attack_spec.rb'
- 'ee/spec/requests/repositories/git_http_controller_spec.rb'
- - 'ee/spec/requests/search_controller_spec.rb'
- 'ee/spec/requests/smartcard_controller_spec.rb'
- 'ee/spec/routing/user_routing_spec.rb'
- 'ee/spec/serializers/analytics/cycle_analytics/value_stream_errors_serializer_spec.rb'
@@ -804,9 +729,7 @@ RSpec/ContextWording:
- 'ee/spec/serializers/board_serializer_spec.rb'
- 'ee/spec/serializers/clusters/environment_entity_spec.rb'
- 'ee/spec/serializers/dashboard_operations_project_entity_spec.rb'
- - 'ee/spec/serializers/ee/blob_entity_spec.rb'
- 'ee/spec/serializers/ee/group_child_entity_spec.rb'
- - 'ee/spec/serializers/ee/issue_sidebar_basic_entity_spec.rb'
- 'ee/spec/serializers/ee/issue_sidebar_extras_entity_spec.rb'
- 'ee/spec/serializers/ee/merge_request_poll_cached_widget_entity_spec.rb'
- 'ee/spec/serializers/ee/user_serializer_spec.rb'
@@ -819,10 +742,8 @@ RSpec/ContextWording:
- 'ee/spec/serializers/project_mirror_entity_spec.rb'
- 'ee/spec/serializers/vulnerabilities/finding_entity_spec.rb'
- 'ee/spec/services/alert_management/process_prometheus_alert_service_spec.rb'
- - 'ee/spec/services/analytics/cycle_analytics/consistency_check_service_spec.rb'
- 'ee/spec/services/analytics/cycle_analytics/stages/delete_service_spec.rb'
- 'ee/spec/services/analytics/cycle_analytics/value_streams/update_service_spec.rb'
- - 'ee/spec/services/analytics/devops_adoption/enabled_namespaces/create_service_spec.rb'
- 'ee/spec/services/app_sec/dast/builds/associate_service_spec.rb'
- 'ee/spec/services/app_sec/dast/profiles/create_associations_service_spec.rb'
- 'ee/spec/services/application_settings/update_service_spec.rb'
@@ -834,28 +755,22 @@ RSpec/ContextWording:
- 'ee/spec/services/audit_event_service_spec.rb'
- 'ee/spec/services/audit_events/export_csv_service_spec.rb'
- 'ee/spec/services/audit_events/register_runner_audit_event_service_spec.rb'
- - 'ee/spec/services/audit_events/runners_token_audit_event_service_spec.rb'
- - 'ee/spec/services/audit_events/unregister_runner_audit_event_service_spec.rb'
- - 'ee/spec/services/award_emojis/add_service_spec.rb'
- 'ee/spec/services/boards/create_service_spec.rb'
- 'ee/spec/services/boards/epic_boards/create_service_spec.rb'
- 'ee/spec/services/boards/epics/move_service_spec.rb'
- - 'ee/spec/services/boards/epics/position_create_service_spec.rb'
- 'ee/spec/services/boards/lists/update_service_spec.rb'
- 'ee/spec/services/ci/copy_cross_database_associations_service_spec.rb'
- 'ee/spec/services/ci/create_pipeline_service_spec.rb'
- - 'ee/spec/services/ci/minutes/update_build_minutes_service_spec.rb'
- 'ee/spec/services/ci/minutes/update_project_and_namespace_usage_service_spec.rb'
- - 'ee/spec/services/ci/process_build_service_spec.rb'
+ - 'ee/spec/services/ci/pipeline_trigger_service_spec.rb'
- 'ee/spec/services/ci/register_job_service_spec.rb'
- 'ee/spec/services/ci/retry_job_service_spec.rb'
+ - 'ee/spec/services/ci/runners/stale_group_runners_prune_service_spec.rb'
- 'ee/spec/services/ci/runners/unregister_runner_service_spec.rb'
- 'ee/spec/services/ci/sync_reports_to_approval_rules_service_spec.rb'
- 'ee/spec/services/ci_cd/setup_project_spec.rb'
- 'ee/spec/services/compliance_management/frameworks/create_service_spec.rb'
- 'ee/spec/services/compliance_management/frameworks/update_service_spec.rb'
- - 'ee/spec/services/compliance_management/merge_requests/create_compliance_violations_service_spec.rb'
- - 'ee/spec/services/dashboard/projects/list_service_spec.rb'
- 'ee/spec/services/deployments/approval_service_spec.rb'
- 'ee/spec/services/dora/aggregate_metrics_service_spec.rb'
- 'ee/spec/services/ee/alert_management/alerts/update_service_spec.rb'
@@ -878,9 +793,10 @@ RSpec/ContextWording:
- 'ee/spec/services/ee/issues/move_service_spec.rb'
- 'ee/spec/services/ee/issues/reopen_service_spec.rb'
- 'ee/spec/services/ee/issues/update_service_spec.rb'
- - 'ee/spec/services/ee/labels/create_service_spec.rb'
+ - 'ee/spec/services/ee/keys/destroy_service_spec.rb'
- 'ee/spec/services/ee/members/create_service_spec.rb'
- 'ee/spec/services/ee/members/destroy_service_spec.rb'
+ - 'ee/spec/services/ee/members/import_project_team_service_spec.rb'
- 'ee/spec/services/ee/members/invite_service_spec.rb'
- 'ee/spec/services/ee/merge_requests/base_service_spec.rb'
- 'ee/spec/services/ee/merge_requests/create_service_spec.rb'
@@ -888,16 +804,13 @@ RSpec/ContextWording:
- 'ee/spec/services/ee/merge_requests/refresh_service_spec.rb'
- 'ee/spec/services/ee/merge_requests/update_assignees_service_spec.rb'
- 'ee/spec/services/ee/merge_requests/update_service_spec.rb'
- - 'ee/spec/services/ee/namespace_settings/update_service_spec.rb'
- 'ee/spec/services/ee/notes/create_service_spec.rb'
- 'ee/spec/services/ee/notes/post_process_service_spec.rb'
- 'ee/spec/services/ee/notes/quick_actions_service_spec.rb'
- - 'ee/spec/services/ee/notes/update_service_spec.rb'
- 'ee/spec/services/ee/notification_service_spec.rb'
- 'ee/spec/services/ee/personal_access_tokens/revoke_service_spec.rb'
- 'ee/spec/services/ee/preview_markdown_service_spec.rb'
- 'ee/spec/services/ee/protected_branches/create_service_spec.rb'
- - 'ee/spec/services/ee/quick_actions/target_service_spec.rb'
- 'ee/spec/services/ee/resource_events/merge_into_notes_service_spec.rb'
- 'ee/spec/services/ee/users/build_service_spec.rb'
- 'ee/spec/services/ee/users/create_service_spec.rb'
@@ -936,13 +849,13 @@ RSpec/ContextWording:
- 'ee/spec/services/geo/repository_created_event_store_spec.rb'
- 'ee/spec/services/geo/repository_sync_service_spec.rb'
- 'ee/spec/services/geo/repository_verification_reset_spec.rb'
- - 'ee/spec/services/geo/repository_verification_secondary_service_spec.rb'
- 'ee/spec/services/geo/wiki_sync_service_spec.rb'
+ - 'ee/spec/services/gitlab_subscriptions/activate_awaiting_users_service_spec.rb'
- 'ee/spec/services/gitlab_subscriptions/apply_trial_service_spec.rb'
- 'ee/spec/services/gitlab_subscriptions/create_hand_raise_lead_service_spec.rb'
- 'ee/spec/services/gitlab_subscriptions/create_service_spec.rb'
- 'ee/spec/services/gitlab_subscriptions/extend_reactivate_trial_service_spec.rb'
- - 'ee/spec/services/group_saml/group_managed_accounts/clean_up_members_service_spec.rb'
+ - 'ee/spec/services/gitlab_subscriptions/preview_billable_user_change_service_spec.rb'
- 'ee/spec/services/group_saml/group_managed_accounts/transfer_membership_service_spec.rb'
- 'ee/spec/services/groups/create_service_spec.rb'
- 'ee/spec/services/groups/destroy_service_spec.rb'
@@ -975,10 +888,10 @@ RSpec/ContextWording:
- 'ee/spec/services/merge_requests/approval_service_spec.rb'
- 'ee/spec/services/merge_requests/build_service_spec.rb'
- 'ee/spec/services/merge_requests/merge_service_spec.rb'
+ - 'ee/spec/services/merge_requests/reload_merge_head_diff_service_spec.rb'
- 'ee/spec/services/merge_requests/update_blocks_service_spec.rb'
- 'ee/spec/services/milestones/update_service_spec.rb'
- 'ee/spec/services/namespaces/in_product_marketing_emails_service_spec.rb'
- - 'ee/spec/services/namespaces/storage/email_notification_service_spec.rb'
- 'ee/spec/services/personal_access_tokens/revoke_invalid_tokens_spec.rb'
- 'ee/spec/services/personal_access_tokens/rotation_verifier_service_spec.rb'
- 'ee/spec/services/projects/alerting/notify_service_spec.rb'
@@ -988,6 +901,7 @@ RSpec/ContextWording:
- 'ee/spec/services/projects/gitlab_projects_import_service_spec.rb'
- 'ee/spec/services/projects/group_links/create_service_spec.rb'
- 'ee/spec/services/projects/group_links/destroy_service_spec.rb'
+ - 'ee/spec/services/projects/group_links/update_service_spec.rb'
- 'ee/spec/services/projects/hashed_storage/migrate_attachments_service_spec.rb'
- 'ee/spec/services/projects/import_export/export_service_spec.rb'
- 'ee/spec/services/projects/mark_for_deletion_service_spec.rb'
@@ -1011,13 +925,12 @@ RSpec/ContextWording:
- 'ee/spec/services/search/snippet_service_spec.rb'
- 'ee/spec/services/search_service_spec.rb'
- 'ee/spec/services/security/dependency_list_service_spec.rb'
+ - 'ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/create_spec.rb'
+ - 'ee/spec/services/security/ingestion/tasks/update_vulnerability_uuids_spec.rb'
- 'ee/spec/services/security/merge_reports_service_spec.rb'
- - 'ee/spec/services/security/orchestration/assign_service_spec.rb'
- - 'ee/spec/services/security/orchestration/unassign_service_spec.rb'
- 'ee/spec/services/security/report_summary_service_spec.rb'
- 'ee/spec/services/security/scanned_resources_counting_service_spec.rb'
- 'ee/spec/services/security/scanned_resources_service_spec.rb'
- - 'ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb'
- 'ee/spec/services/security/security_orchestration_policies/policy_commit_service_spec.rb'
- 'ee/spec/services/security/security_orchestration_policies/process_policy_service_spec.rb'
- 'ee/spec/services/security/store_grouped_scans_service_spec.rb'
@@ -1027,16 +940,12 @@ RSpec/ContextWording:
- 'ee/spec/services/software_license_policies/update_service_spec.rb'
- 'ee/spec/services/status_page/publish_attachments_service_spec.rb'
- 'ee/spec/services/status_page/publish_details_service_spec.rb'
- - 'ee/spec/services/status_page/trigger_publish_service_spec.rb'
- 'ee/spec/services/system_notes/epics_service_spec.rb'
- 'ee/spec/services/timebox_report_service_spec.rb'
- 'ee/spec/services/todo_service_spec.rb'
- 'ee/spec/services/upcoming_reconciliations/update_service_spec.rb'
- 'ee/spec/services/user_permissions/export_service_spec.rb'
- - 'ee/spec/services/vulnerabilities/create_service_spec.rb'
- - 'ee/spec/services/vulnerabilities/historical_statistics/deletion_service_spec.rb'
- 'ee/spec/services/vulnerability_exports/export_service_spec.rb'
- - 'ee/spec/services/vulnerability_external_issue_links/create_service_spec.rb'
- 'ee/spec/support/features/manual_quarterly_co_term_banner_examples.rb'
- 'ee/spec/support/protected_tags/access_control_shared_examples.rb'
- 'ee/spec/support/shared_contexts/audit_event_not_licensed_shared_context.rb'
@@ -1046,25 +955,23 @@ RSpec/ContextWording:
- 'ee/spec/support/shared_contexts/gitlab_team_member_shared_context.rb'
- 'ee/spec/support/shared_contexts/graphql/resolvers/security_orchestration/resolves_orchestration_policy_shared_contexts.rb'
- 'ee/spec/support/shared_contexts/lib/gitlab/insights/reducers/reducers_shared_contexts.rb'
+ - 'ee/spec/support/shared_contexts/lib/gitlab/insights/serializers/serializers_shared_context.rb'
- 'ee/spec/support/shared_contexts/push_rules_checks_shared_context.rb'
- 'ee/spec/support/shared_contexts/requests/api/members_shared_contexts.rb'
- 'ee/spec/support/shared_contexts/status_page/status_page_enabled_context.rb'
- 'ee/spec/support/shared_contexts/status_page/status_page_list_objects.rb'
- 'ee/spec/support/shared_examples/controllers/analytics/cycle_analytics/shared_stage_shared_examples.rb'
- - 'ee/spec/support/shared_examples/controllers/analytics/issues_analytics/shared_issues_analytics_examples.rb'
- 'ee/spec/support/shared_examples/controllers/boards_actions_shared_examples.rb'
- 'ee/spec/support/shared_examples/controllers/cluster_metrics_shared_examples.rb'
- 'ee/spec/support/shared_examples/controllers/concerns/description_diff_actions_shared_examples.rb'
- 'ee/spec/support/shared_examples/controllers/registrations/groups_controller_shared_examples.rb'
- 'ee/spec/support/shared_examples/controllers/registrations/projects_controller_shared_examples.rb'
- - 'ee/spec/support/shared_examples/controllers/security/application_controller_shared_examples.rb'
- - 'ee/spec/support/shared_examples/features/credentials_inventory_shared_examples.rb'
- 'ee/spec/support/shared_examples/features/insights_shared_examples.rb'
+ - 'ee/spec/support/shared_examples/features/password_complexity_shared_examples.rb'
- 'ee/spec/support/shared_examples/features/protected_branches_access_control_shared_examples.rb'
- 'ee/spec/support/shared_examples/features/sidebar_shared_examples.rb'
- 'ee/spec/support/shared_examples/features/ultimate_trial_callout_shared_examples.rb'
- 'ee/spec/support/shared_examples/graphql/mutations/epics/permission_check_shared_examples.rb'
- - 'ee/spec/support/shared_examples/graphql/mutations/update_health_status_shared_examples.rb'
- 'ee/spec/support/shared_examples/lib/gitlab/git_access_shared_examples.rb'
- 'ee/spec/support/shared_examples/lib/gitlab/middleware/allowlisted_admin_geo_requests_shared_examples.rb'
- 'ee/spec/support/shared_examples/lib/gitlab/middleware/maintenance_mode_gitlab_ee_instance_shared_examples.rb'
@@ -1076,16 +983,13 @@ RSpec/ContextWording:
- 'ee/spec/support/shared_examples/models/concerns/replicator_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/concerns/repository_replicator_strategy_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/concerns/verifiable_replicator_shared_examples.rb'
- - 'ee/spec/support/shared_examples/models/geo_batcher_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/geo_framework_registry_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/geo_verifiable_registry_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/member_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/mentionable_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/protected_environments/authorizable_examples.rb'
- 'ee/spec/support/shared_examples/quick_actions/issue/status_page_quick_actions_shared_examples.rb'
- - 'ee/spec/support/shared_examples/requests/api/project_approval_rules_api_shared_examples.rb'
- 'ee/spec/support/shared_examples/requests/credentials_inventory_shared_examples.rb'
- - 'ee/spec/support/shared_examples/requests/security/security_dashboard_json_endpoint_shared_examples.rb'
- 'ee/spec/support/shared_examples/services/alert_management/alert_processing/alert_firing_shared_examples.rb'
- 'ee/spec/support/shared_examples/services/alert_management/alert_processing/alert_recovery_shared_examples.rb'
- 'ee/spec/support/shared_examples/services/base_sync_service_shared_examples.rb'
@@ -1095,49 +999,41 @@ RSpec/ContextWording:
- 'ee/spec/support/shared_examples/services/search_notes_shared_examples.rb'
- 'ee/spec/support/shared_examples/services/search_service_shared_examples.rb'
- 'ee/spec/support/shared_examples/services/update_issuable_health_status_shared_examples.rb'
- - 'ee/spec/support/shared_examples/views/registration_features_prompt_settings_link_shared_examples.rb'
- 'ee/spec/tasks/gitlab/elastic_rake_spec.rb'
- 'ee/spec/tasks/gitlab/license_rake_spec.rb'
- - 'ee/spec/tasks/gitlab/uploads/migrate_rake_spec.rb'
- 'ee/spec/views/admin/application_settings/_elasticsearch_form.html.haml_spec.rb'
- 'ee/spec/views/admin/users/show.html.haml_spec.rb'
- 'ee/spec/views/compliance_management/compliance_framework/_project_settings.html.haml_spec.rb'
- 'ee/spec/views/groups/edit.html.haml_spec.rb'
- 'ee/spec/views/groups/security/discover/show.html.haml_spec.rb'
- 'ee/spec/views/layouts/header/_new_dropdown.haml_spec.rb'
+ - 'ee/spec/views/layouts/header/_read_only_banner.html.haml_spec.rb'
- 'ee/spec/views/layouts/nav/sidebar/_admin.html.haml_spec.rb'
- 'ee/spec/views/layouts/nav/sidebar/_group.html.haml_spec.rb'
- 'ee/spec/views/layouts/nav/sidebar/_push_rules_link.html.haml_spec.rb'
- 'ee/spec/views/profiles/preferences/show.html.haml_spec.rb'
- 'ee/spec/views/projects/edit.html.haml_spec.rb'
- - 'ee/spec/views/projects/issues/show.html.haml_spec.rb'
- 'ee/spec/views/projects/security/discover/show.html.haml_spec.rb'
- 'ee/spec/views/registrations/groups/new.html.haml_spec.rb'
- - 'ee/spec/views/registrations/projects/new.html.haml_spec.rb'
- 'ee/spec/views/registrations/welcome/show.html.haml_spec.rb'
- 'ee/spec/views/search/_category.html.haml_spec.rb'
- 'ee/spec/views/shared/_clone_panel.html.haml_spec.rb'
- 'ee/spec/views/shared/_kerberos_clone_button.html.haml_spec.rb'
- 'ee/spec/views/shared/_mirror_update_button.html.haml_spec.rb'
- - 'ee/spec/views/shared/credentials_inventory/_expiry_date.html.haml_spec.rb'
- 'ee/spec/views/shared/credentials_inventory/gpg_keys/_gpg_key.html.haml_spec.rb'
- 'ee/spec/views/shared/credentials_inventory/personal_access_tokens/_personal_access_token.html.haml_spec.rb'
- 'ee/spec/views/shared/credentials_inventory/project_access_tokens/_project_access_token.html.haml_spec.rb'
- 'ee/spec/views/shared/credentials_inventory/ssh_keys/_ssh_key.html.haml_spec.rb'
- 'ee/spec/views/shared/issuable/_sidebar.html.haml_spec.rb'
- - 'ee/spec/views/shared/labels/_create_label_help_text.html.haml_spec.rb'
- - 'ee/spec/views/shared/promotions/_promotion_link_project.html.haml_spec.rb'
- 'ee/spec/views/subscriptions/groups/edit.html.haml_spec.rb'
- 'ee/spec/workers/active_user_count_threshold_worker_spec.rb'
- 'ee/spec/workers/adjourned_projects_deletion_cron_worker_spec.rb'
- 'ee/spec/workers/admin_emails_worker_spec.rb'
- - 'ee/spec/workers/analytics/code_review_metrics_worker_spec.rb'
- 'ee/spec/workers/audit_events/audit_event_streaming_worker_spec.rb'
- 'ee/spec/workers/ci/minutes/refresh_cached_data_worker_spec.rb'
- 'ee/spec/workers/ci/minutes/update_project_and_namespace_usage_worker_spec.rb'
- 'ee/spec/workers/ci/runners/stale_group_runners_prune_cron_worker_spec.rb'
- 'ee/spec/workers/ci/upstream_projects_subscriptions_cleanup_worker_spec.rb'
- - 'ee/spec/workers/compliance_management/merge_requests/compliance_violations_worker_spec.rb'
- 'ee/spec/workers/ee/repository_check/batch_worker_spec.rb'
- 'ee/spec/workers/ee/repository_check/single_repository_worker_spec.rb'
- 'ee/spec/workers/elastic/migration_worker_spec.rb'
@@ -1151,10 +1047,9 @@ RSpec/ContextWording:
- 'ee/spec/workers/geo/repository_verification/primary/shard_worker_spec.rb'
- 'ee/spec/workers/geo/repository_verification/secondary/shard_worker_spec.rb'
- 'ee/spec/workers/geo/verification_timeout_worker_spec.rb'
+ - 'ee/spec/workers/group_saml_group_sync_worker_spec.rb'
- 'ee/spec/workers/incident_management/apply_incident_sla_exceeded_label_worker_spec.rb'
- 'ee/spec/workers/incident_management/oncall_rotations/persist_shifts_job_spec.rb'
- - 'ee/spec/workers/iterations/cadences/schedule_create_iterations_worker_spec.rb'
- - 'ee/spec/workers/iterations_update_status_worker_spec.rb'
- 'ee/spec/workers/merge_request_reset_approvals_worker_spec.rb'
- 'ee/spec/workers/new_epic_worker_spec.rb'
- 'ee/spec/workers/personal_access_tokens/groups/policy_worker_spec.rb'
@@ -1163,12 +1058,8 @@ RSpec/ContextWording:
- 'ee/spec/workers/project_import_schedule_worker_spec.rb'
- 'ee/spec/workers/requirements_management/process_requirements_reports_worker_spec.rb'
- 'ee/spec/workers/security/track_secure_scans_worker_spec.rb'
- - 'ee/spec/workers/store_security_reports_worker_spec.rb'
- - 'ee/spec/workers/sync_seat_link_request_worker_spec.rb'
- 'ee/spec/workers/sync_seat_link_worker_spec.rb'
- - 'ee/spec/workers/update_all_mirrors_worker_spec.rb'
- 'ee/spec/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker_spec.rb'
- - 'qa/qa/specs/features/api/1_manage/project_access_token_spec.rb'
- 'qa/qa/specs/features/api/1_manage/user_access_termination_spec.rb'
- 'qa/qa/specs/features/api/3_create/gitaly/automatic_failover_and_recovery_spec.rb'
- 'qa/qa/specs/features/api/3_create/gitaly/backend_node_recovery_spec.rb'
@@ -1179,7 +1070,6 @@ RSpec/ContextWording:
- 'qa/qa/specs/features/api/3_create/gitaly/praefect_replication_queue_spec.rb'
- 'qa/qa/specs/features/api/3_create/gitaly/praefect_repo_sync_spec.rb'
- 'qa/qa/specs/features/browser_ui/1_manage/login/2fa_ssh_recovery_spec.rb'
- - 'qa/qa/specs/features/browser_ui/1_manage/project/create_project_spec.rb'
- 'qa/qa/specs/features/browser_ui/1_manage/project/invite_group_to_project_spec.rb'
- 'qa/qa/specs/features/browser_ui/1_manage/user/user_access_termination_spec.rb'
- 'qa/qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb'
@@ -1191,7 +1081,9 @@ RSpec/ContextWording:
- 'qa/qa/specs/features/browser_ui/3_create/repository/file/create_file_via_web_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/repository/file/delete_file_via_web_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/repository/file/edit_file_via_web_spec.rb'
+ - 'qa/qa/specs/features/browser_ui/3_create/repository/license_detecton_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/repository/ssh_key_support_spec.rb'
+ - 'qa/qa/specs/features/browser_ui/3_create/web_ide/server_hooks_custom_error_message_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/wiki/content_editor_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/wiki/project_based_content_creation_spec.rb'
- 'qa/qa/specs/features/browser_ui/3_create/wiki/project_based_content_manipulation_spec.rb'
@@ -1200,11 +1092,13 @@ RSpec/ContextWording:
- 'qa/qa/specs/features/browser_ui/3_create/wiki/project_based_page_deletion_spec.rb'
- 'qa/qa/specs/features/browser_ui/4_verify/pipeline/merge_mr_when_pipline_is_blocked_spec.rb'
- 'qa/qa/specs/features/browser_ui/4_verify/pipeline/mr_event_rule_pipeline_spec.rb'
+ - 'qa/qa/specs/features/browser_ui/4_verify/testing/endpoint_coverage_spec.rb'
- 'qa/qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb'
- 'qa/qa/specs/features/browser_ui/5_package/package_registry/pypi_repository_spec.rb'
- 'qa/qa/specs/features/browser_ui/7_configure/kubernetes/kubernetes_integration_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/license/cloud_activation_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/license/license_spec.rb'
+ - 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/purchase/free_tier_group_namespace_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/purchase/purchase_ci_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/purchase/purchase_storage_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/12_geo/http_push_spec.rb'
@@ -1225,8 +1119,6 @@ RSpec/ContextWording:
- 'qa/qa/specs/features/ee/browser_ui/1_manage/project/project_templates_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb'
- - 'qa/qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_root_group_spec.rb'
- - 'qa/qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/3_create/wiki/create_group_wiki_page_spec.rb'
- 'qa/qa/specs/features/ee/browser_ui/4_verify/new_discussion_not_dropping_merge_trains_mr_spec.rb'
@@ -1235,7 +1127,6 @@ RSpec/ContextWording:
- 'qa/spec/service/docker_run/gitlab_runner_spec.rb'
- 'qa/spec/service/docker_run/k3s_spec.rb'
- 'qa/spec/specs/helpers/context_selector_spec.rb'
- - 'qa/spec/specs/helpers/feature_flag_spec.rb'
- 'qa/spec/specs/helpers/quarantine_spec.rb'
- 'qa/spec/specs/runner_spec.rb'
- 'qa/spec/support/loglinking_spec.rb'
@@ -1245,29 +1136,26 @@ RSpec/ContextWording:
- 'spec/commands/sidekiq_cluster/cli_spec.rb'
- 'spec/components/diffs/overflow_warning_component_spec.rb'
- 'spec/components/pajamas/alert_component_spec.rb'
+ - 'spec/components/pajamas/banner_component_spec.rb'
+ - 'spec/components/pajamas/button_component_spec.rb'
+ - 'spec/components/pajamas/card_component_spec.rb'
+ - 'spec/components/pajamas/spinner_component_spec.rb'
- 'spec/config/object_store_settings_spec.rb'
- 'spec/controllers/admin/application_settings_controller_spec.rb'
- - 'spec/controllers/admin/clusters_controller_spec.rb'
- - 'spec/controllers/admin/dev_ops_report_controller_spec.rb'
- - 'spec/controllers/admin/impersonations_controller_spec.rb'
- 'spec/controllers/admin/instance_review_controller_spec.rb'
- 'spec/controllers/admin/integrations_controller_spec.rb'
- 'spec/controllers/admin/runner_projects_controller_spec.rb'
- 'spec/controllers/admin/sessions_controller_spec.rb'
- - 'spec/controllers/admin/topics_controller_spec.rb'
- 'spec/controllers/admin/users_controller_spec.rb'
- 'spec/controllers/application_controller_spec.rb'
- 'spec/controllers/autocomplete_controller_spec.rb'
- - 'spec/controllers/boards/issues_controller_spec.rb'
- 'spec/controllers/concerns/controller_with_cross_project_access_check_spec.rb'
- 'spec/controllers/concerns/enforces_admin_authentication_spec.rb'
- - 'spec/controllers/concerns/graceful_timeout_handling_spec.rb'
- 'spec/controllers/concerns/group_tree_spec.rb'
- 'spec/controllers/concerns/import_url_params_spec.rb'
- 'spec/controllers/concerns/issuable_collections_spec.rb'
- 'spec/controllers/concerns/metrics_dashboard_spec.rb'
- 'spec/controllers/concerns/renders_commits_spec.rb'
- - 'spec/controllers/concerns/send_file_upload_spec.rb'
- 'spec/controllers/confirmations_controller_spec.rb'
- 'spec/controllers/dashboard/milestones_controller_spec.rb'
- 'spec/controllers/dashboard/projects_controller_spec.rb'
@@ -1308,8 +1196,8 @@ RSpec/ContextWording:
- 'spec/controllers/passwords_controller_spec.rb'
- 'spec/controllers/profiles/emails_controller_spec.rb'
- 'spec/controllers/profiles/notifications_controller_spec.rb'
+ - 'spec/controllers/profiles/personal_access_tokens_controller_spec.rb'
- 'spec/controllers/profiles/preferences_controller_spec.rb'
- - 'spec/controllers/profiles/two_factor_auths_controller_spec.rb'
- 'spec/controllers/projects/alerting/notifications_controller_spec.rb'
- 'spec/controllers/projects/artifacts_controller_spec.rb'
- 'spec/controllers/projects/badges_controller_spec.rb'
@@ -1328,11 +1216,9 @@ RSpec/ContextWording:
- 'spec/controllers/projects/discussions_controller_spec.rb'
- 'spec/controllers/projects/environments_controller_spec.rb'
- 'spec/controllers/projects/feature_flags_clients_controller_spec.rb'
- - 'spec/controllers/projects/feature_flags_controller_spec.rb'
- 'spec/controllers/projects/find_file_controller_spec.rb'
- 'spec/controllers/projects/forks_controller_spec.rb'
- 'spec/controllers/projects/import/jira_controller_spec.rb'
- - 'spec/controllers/projects/incidents_controller_spec.rb'
- 'spec/controllers/projects/issues_controller_spec.rb'
- 'spec/controllers/projects/jobs_controller_spec.rb'
- 'spec/controllers/projects/labels_controller_spec.rb'
@@ -1358,7 +1244,6 @@ RSpec/ContextWording:
- 'spec/controllers/projects/prometheus/metrics_controller_spec.rb'
- 'spec/controllers/projects/raw_controller_spec.rb'
- 'spec/controllers/projects/releases_controller_spec.rb'
- - 'spec/controllers/projects/repositories_controller_spec.rb'
- 'spec/controllers/projects/settings/ci_cd_controller_spec.rb'
- 'spec/controllers/projects/settings/operations_controller_spec.rb'
- 'spec/controllers/projects/settings/repository_controller_spec.rb'
@@ -1372,39 +1257,33 @@ RSpec/ContextWording:
- 'spec/controllers/projects_controller_spec.rb'
- 'spec/controllers/registrations/welcome_controller_spec.rb'
- 'spec/controllers/registrations_controller_spec.rb'
- - 'spec/controllers/repositories/git_http_controller_spec.rb'
- 'spec/controllers/root_controller_spec.rb'
- 'spec/controllers/search_controller_spec.rb'
- - 'spec/controllers/sent_notifications_controller_spec.rb'
- 'spec/controllers/sessions_controller_spec.rb'
- 'spec/controllers/snippets/notes_controller_spec.rb'
- 'spec/controllers/snippets_controller_spec.rb'
- 'spec/controllers/uploads_controller_spec.rb'
- 'spec/controllers/users/terms_controller_spec.rb'
- - 'spec/db/docs_spec.rb'
- 'spec/db/production/settings_spec.rb'
- 'spec/db/schema_spec.rb'
- 'spec/docs_screenshots/container_registry_docs.rb'
- 'spec/docs_screenshots/wiki_docs.rb'
- 'spec/experiments/application_experiment_spec.rb'
- 'spec/experiments/ios_specific_templates_experiment_spec.rb'
- - 'spec/features/admin/admin_abuse_reports_spec.rb'
- 'spec/features/admin/admin_appearance_spec.rb'
- 'spec/features/admin/admin_disables_git_access_protocol_spec.rb'
+ - 'spec/features/admin/admin_hook_logs_spec.rb'
- 'spec/features/admin/admin_hooks_spec.rb'
- 'spec/features/admin/admin_jobs_spec.rb'
- 'spec/features/admin/admin_mode/login_spec.rb'
- 'spec/features/admin/admin_mode/logout_spec.rb'
- - 'spec/features/admin/admin_mode/workers_spec.rb'
- 'spec/features/admin/admin_mode_spec.rb'
- - 'spec/features/admin/admin_search_settings_spec.rb'
- 'spec/features/admin/admin_settings_spec.rb'
- 'spec/features/admin/dashboard_spec.rb'
- 'spec/features/admin/users/user_spec.rb'
- 'spec/features/admin/users/users_spec.rb'
- 'spec/features/atom/dashboard_issues_spec.rb'
- 'spec/features/atom/dashboard_spec.rb'
- - 'spec/features/atom/issues_spec.rb'
- 'spec/features/atom/merge_requests_spec.rb'
- 'spec/features/atom/users_spec.rb'
- 'spec/features/boards/boards_spec.rb'
@@ -1417,10 +1296,8 @@ RSpec/ContextWording:
- 'spec/features/boards/sidebar_labels_spec.rb'
- 'spec/features/boards/user_visits_board_spec.rb'
- 'spec/features/calendar_spec.rb'
- - 'spec/features/clusters/cluster_detail_page_spec.rb'
- 'spec/features/clusters/cluster_health_dashboard_spec.rb'
- 'spec/features/commits_spec.rb'
- - 'spec/features/cycle_analytics_spec.rb'
- 'spec/features/dashboard/activity_spec.rb'
- 'spec/features/dashboard/datetime_on_tooltips_spec.rb'
- 'spec/features/dashboard/groups_list_spec.rb'
@@ -1436,7 +1313,6 @@ RSpec/ContextWording:
- 'spec/features/dashboard/user_filters_projects_spec.rb'
- 'spec/features/expand_collapse_diffs_spec.rb'
- 'spec/features/file_uploads/multipart_invalid_uploads_spec.rb'
- - 'spec/features/frequently_visited_projects_and_groups_spec.rb'
- 'spec/features/groups/board_sidebar_spec.rb'
- 'spec/features/groups/board_spec.rb'
- 'spec/features/groups/clusters/user_spec.rb'
@@ -1450,11 +1326,8 @@ RSpec/ContextWording:
- 'spec/features/groups/merge_requests_spec.rb'
- 'spec/features/groups/milestone_spec.rb'
- 'spec/features/groups/packages_spec.rb'
- - 'spec/features/groups/settings/ci_cd_spec.rb'
- 'spec/features/groups/settings/group_badges_spec.rb'
- - 'spec/features/groups/settings/packages_and_registries_spec.rb'
- 'spec/features/groups/settings/repository_spec.rb'
- - 'spec/features/groups/settings/user_searches_in_settings_spec.rb'
- 'spec/features/groups/share_lock_spec.rb'
- 'spec/features/groups/show_spec.rb'
- 'spec/features/groups/user_sees_package_sidebar_spec.rb'
@@ -1504,14 +1377,15 @@ RSpec/ContextWording:
- 'spec/features/markdown/metrics_spec.rb'
- 'spec/features/merge_request/batch_comments_spec.rb'
- 'spec/features/merge_request/close_reopen_report_toggle_spec.rb'
+ - 'spec/features/merge_request/merge_request_discussion_lock_spec.rb'
- 'spec/features/merge_request/user_accepts_merge_request_spec.rb'
- 'spec/features/merge_request/user_assigns_themselves_spec.rb'
- - 'spec/features/merge_request/user_comments_on_diff_spec.rb'
- 'spec/features/merge_request/user_creates_image_diff_notes_spec.rb'
- 'spec/features/merge_request/user_creates_merge_request_spec.rb'
- 'spec/features/merge_request/user_creates_mr_spec.rb'
- 'spec/features/merge_request/user_edits_mr_spec.rb'
- 'spec/features/merge_request/user_interacts_with_batched_mr_diffs_spec.rb'
+ - 'spec/features/merge_request/user_manages_subscription_spec.rb'
- 'spec/features/merge_request/user_merges_merge_request_spec.rb'
- 'spec/features/merge_request/user_merges_only_if_pipeline_succeeds_spec.rb'
- 'spec/features/merge_request/user_merges_when_pipeline_succeeds_spec.rb'
@@ -1522,15 +1396,11 @@ RSpec/ContextWording:
- 'spec/features/merge_request/user_sees_avatar_on_diff_notes_spec.rb'
- 'spec/features/merge_request/user_sees_cherry_pick_modal_spec.rb'
- 'spec/features/merge_request/user_sees_closing_issues_message_spec.rb'
- - 'spec/features/merge_request/user_sees_deployment_widget_spec.rb'
- - 'spec/features/merge_request/user_sees_diff_spec.rb'
- 'spec/features/merge_request/user_sees_discussions_spec.rb'
- 'spec/features/merge_request/user_sees_merge_widget_spec.rb'
- - 'spec/features/merge_request/user_sees_mini_pipeline_graph_spec.rb'
- 'spec/features/merge_request/user_suggests_changes_on_diff_spec.rb'
- 'spec/features/merge_request/user_uses_quick_actions_spec.rb'
- 'spec/features/merge_request/user_views_open_merge_request_spec.rb'
- - 'spec/features/merge_request/user_views_user_status_on_merge_request_spec.rb'
- 'spec/features/merge_requests/filters_generic_behavior_spec.rb'
- 'spec/features/merge_requests/user_exports_as_csv_spec.rb'
- 'spec/features/merge_requests/user_filters_by_approvals_spec.rb'
@@ -1539,7 +1409,6 @@ RSpec/ContextWording:
- 'spec/features/merge_requests/user_filters_by_target_branch_spec.rb'
- 'spec/features/merge_requests/user_lists_merge_requests_spec.rb'
- 'spec/features/merge_requests/user_mass_updates_spec.rb'
- - 'spec/features/merge_requests/user_sees_empty_state_spec.rb'
- 'spec/features/milestones/user_views_milestone_spec.rb'
- 'spec/features/monitor_sidebar_link_spec.rb'
- 'spec/features/nav/top_nav_responsive_spec.rb'
@@ -1550,7 +1419,6 @@ RSpec/ContextWording:
- 'spec/features/profiles/keys_spec.rb'
- 'spec/features/profiles/password_spec.rb'
- 'spec/features/profiles/user_edit_profile_spec.rb'
- - 'spec/features/profiles/user_search_settings_spec.rb'
- 'spec/features/projects/active_tabs_spec.rb'
- 'spec/features/projects/activity/user_sees_design_activity_spec.rb'
- 'spec/features/projects/artifacts/file_spec.rb'
@@ -1565,6 +1433,7 @@ RSpec/ContextWording:
- 'spec/features/projects/commits/multi_view_diff_spec.rb'
- 'spec/features/projects/commits/user_browses_commits_spec.rb'
- 'spec/features/projects/compare_spec.rb'
+ - 'spec/features/projects/deploy_keys_spec.rb'
- 'spec/features/projects/diffs/diff_show_spec.rb'
- 'spec/features/projects/environments/environment_spec.rb'
- 'spec/features/projects/environments/environments_spec.rb'
@@ -1575,6 +1444,7 @@ RSpec/ContextWording:
- 'spec/features/projects/files/user_creates_directory_spec.rb'
- 'spec/features/projects/fork_spec.rb'
- 'spec/features/projects/graph_spec.rb'
+ - 'spec/features/projects/hook_logs/user_reads_log_spec.rb'
- 'spec/features/projects/import_export/export_file_spec.rb'
- 'spec/features/projects/infrastructure_registry_spec.rb'
- 'spec/features/projects/integrations/disable_triggers_spec.rb'
@@ -1582,15 +1452,12 @@ RSpec/ContextWording:
- 'spec/features/projects/issuable_templates_spec.rb'
- 'spec/features/projects/issues/design_management/user_links_to_designs_in_issue_spec.rb'
- 'spec/features/projects/issues/design_management/user_views_designs_spec.rb'
- - 'spec/features/projects/issues/email_participants_spec.rb'
+ - 'spec/features/projects/jobs/user_browses_job_spec.rb'
- 'spec/features/projects/jobs/user_browses_jobs_spec.rb'
- 'spec/features/projects/jobs_spec.rb'
- 'spec/features/projects/labels/search_labels_spec.rb'
- - 'spec/features/projects/labels/update_prioritization_spec.rb'
- - 'spec/features/projects/labels/user_creates_labels_spec.rb'
- 'spec/features/projects/members/group_members_spec.rb'
- 'spec/features/projects/members/groups_with_access_list_spec.rb'
- - 'spec/features/projects/members/manage_groups_spec.rb'
- 'spec/features/projects/members/manage_members_spec.rb'
- 'spec/features/projects/members/tabs_spec.rb'
- 'spec/features/projects/members/user_requests_access_spec.rb'
@@ -1601,21 +1468,20 @@ RSpec/ContextWording:
- 'spec/features/projects/packages_spec.rb'
- 'spec/features/projects/pages/user_edits_settings_spec.rb'
- 'spec/features/projects/pipeline_schedules_spec.rb'
+ - 'spec/features/projects/pipelines/legacy_pipeline_spec.rb'
+ - 'spec/features/projects/pipelines/legacy_pipelines_spec.rb'
- 'spec/features/projects/pipelines/pipeline_spec.rb'
- 'spec/features/projects/pipelines/pipelines_spec.rb'
- 'spec/features/projects/releases/user_views_releases_spec.rb'
+ - 'spec/features/projects/settings/branch_rules_settings_spec.rb'
- 'spec/features/projects/settings/lfs_settings_spec.rb'
- 'spec/features/projects/settings/packages_settings_spec.rb'
- - 'spec/features/projects/settings/pipelines_settings_spec.rb'
- 'spec/features/projects/settings/project_badges_spec.rb'
- 'spec/features/projects/settings/project_settings_spec.rb'
- - 'spec/features/projects/settings/registry_settings_spec.rb'
- 'spec/features/projects/settings/repository_settings_spec.rb'
+ - 'spec/features/projects/settings/secure_files_spec.rb'
- 'spec/features/projects/settings/service_desk_setting_spec.rb'
- 'spec/features/projects/settings/user_interacts_with_deploy_keys_spec.rb'
- - 'spec/features/projects/settings/user_renames_a_project_spec.rb'
- - 'spec/features/projects/settings/user_searches_in_settings_spec.rb'
- - 'spec/features/projects/settings/user_transfers_a_project_spec.rb'
- 'spec/features/projects/settings/visibility_settings_spec.rb'
- 'spec/features/projects/settings/webhooks_settings_spec.rb'
- 'spec/features/projects/show/user_manages_notifications_spec.rb'
@@ -1628,26 +1494,21 @@ RSpec/ContextWording:
- 'spec/features/projects/tags/user_edits_tags_spec.rb'
- 'spec/features/projects/tags/user_views_tags_spec.rb'
- 'spec/features/projects/tree/tree_show_spec.rb'
- - 'spec/features/projects/user_creates_project_spec.rb'
- 'spec/features/projects/user_sees_sidebar_spec.rb'
- 'spec/features/projects/user_sorts_projects_spec.rb'
- 'spec/features/projects/user_uses_shortcuts_spec.rb'
- - 'spec/features/projects/view_on_env_spec.rb'
- - 'spec/features/projects/wiki/user_views_wiki_empty_spec.rb'
- 'spec/features/projects_spec.rb'
- 'spec/features/protected_branches_spec.rb'
- 'spec/features/reportable_note/commit_spec.rb'
- 'spec/features/reportable_note/merge_request_spec.rb'
- 'spec/features/runners_spec.rb'
- 'spec/features/search/user_searches_for_code_spec.rb'
- - 'spec/features/search/user_uses_header_search_field_spec.rb'
- - 'spec/features/security/project/snippet/internal_access_spec.rb'
- - 'spec/features/security/project/snippet/public_access_spec.rb'
- 'spec/features/signed_commits_spec.rb'
- 'spec/features/snippets/explore_spec.rb'
- 'spec/features/tags/developer_creates_tag_spec.rb'
- 'spec/features/tags/developer_deletes_tag_spec.rb'
- 'spec/features/tags/developer_updates_tag_spec.rb'
+ - 'spec/features/tags/maintainer_deletes_protected_tag_spec.rb'
- 'spec/features/uploads/user_uploads_file_to_note_spec.rb'
- 'spec/features/user_can_display_performance_bar_spec.rb'
- 'spec/features/user_opens_link_to_comment_spec.rb'
@@ -1664,14 +1525,12 @@ RSpec/ContextWording:
- 'spec/finders/applications_finder_spec.rb'
- 'spec/finders/autocomplete/acts_as_taggable_on/tags_finder_spec.rb'
- 'spec/finders/autocomplete/move_to_project_finder_spec.rb'
- - 'spec/finders/autocomplete/routes_finder_spec.rb'
- 'spec/finders/autocomplete/users_finder_spec.rb'
- 'spec/finders/branches_finder_spec.rb'
- 'spec/finders/ci/commit_statuses_finder_spec.rb'
- 'spec/finders/ci/jobs_finder_spec.rb'
- 'spec/finders/ci/pipelines_finder_spec.rb'
- 'spec/finders/ci/runners_finder_spec.rb'
- - 'spec/finders/ci/variables_finder_spec.rb'
- 'spec/finders/cluster_ancestors_finder_spec.rb'
- 'spec/finders/clusters/agent_authorizations_finder_spec.rb'
- 'spec/finders/clusters/agents_finder_spec.rb'
@@ -1679,7 +1538,6 @@ RSpec/ContextWording:
- 'spec/finders/contributed_projects_finder_spec.rb'
- 'spec/finders/deploy_tokens/tokens_finder_spec.rb'
- 'spec/finders/deployments_finder_spec.rb'
- - 'spec/finders/design_management/designs_finder_spec.rb'
- 'spec/finders/environments/environment_names_finder_spec.rb'
- 'spec/finders/environments/environments_by_deployments_finder_spec.rb'
- 'spec/finders/environments/environments_finder_spec.rb'
@@ -1690,7 +1548,6 @@ RSpec/ContextWording:
- 'spec/finders/groups/projects_requiring_authorizations_refresh/on_direct_membership_finder_spec.rb'
- 'spec/finders/groups/projects_requiring_authorizations_refresh/on_transfer_finder_spec.rb'
- 'spec/finders/groups_finder_spec.rb'
- - 'spec/finders/issues_finder_spec.rb'
- 'spec/finders/joined_groups_finder_spec.rb'
- 'spec/finders/keys_finder_spec.rb'
- 'spec/finders/labels_finder_spec.rb'
@@ -1703,8 +1560,6 @@ RSpec/ContextWording:
- 'spec/finders/metrics/users_starred_dashboards_finder_spec.rb'
- 'spec/finders/milestones_finder_spec.rb'
- 'spec/finders/notes_finder_spec.rb'
- - 'spec/finders/packages/conan/package_finder_spec.rb'
- - 'spec/finders/packages/go/version_finder_spec.rb'
- 'spec/finders/packages/group_packages_finder_spec.rb'
- 'spec/finders/packages/helm/packages_finder_spec.rb'
- 'spec/finders/packages/maven/package_finder_spec.rb'
@@ -1738,7 +1593,6 @@ RSpec/ContextWording:
- 'spec/frontend/fixtures/u2f.rb'
- 'spec/frontend/fixtures/webauthn.rb'
- 'spec/graphql/features/feature_flag_spec.rb'
- - 'spec/graphql/mutations/alert_management/alerts/set_assignees_spec.rb'
- 'spec/graphql/mutations/alert_management/create_alert_issue_spec.rb'
- 'spec/graphql/mutations/alert_management/http_integration/create_spec.rb'
- 'spec/graphql/mutations/alert_management/http_integration/destroy_spec.rb'
@@ -1755,7 +1609,6 @@ RSpec/ContextWording:
- 'spec/graphql/mutations/design_management/delete_spec.rb'
- 'spec/graphql/mutations/design_management/move_spec.rb'
- 'spec/graphql/mutations/groups/update_spec.rb'
- - 'spec/graphql/mutations/issues/set_severity_spec.rb'
- 'spec/graphql/mutations/merge_requests/update_spec.rb'
- 'spec/graphql/mutations/release_asset_links/update_spec.rb'
- 'spec/graphql/mutations/releases/delete_spec.rb'
@@ -1780,7 +1633,6 @@ RSpec/ContextWording:
- 'spec/graphql/resolvers/design_management/design_resolver_spec.rb'
- 'spec/graphql/resolvers/design_management/designs_resolver_spec.rb'
- 'spec/graphql/resolvers/design_management/version/design_at_version_resolver_spec.rb'
- - 'spec/graphql/resolvers/design_management/version/designs_at_version_resolver_spec.rb'
- 'spec/graphql/resolvers/design_management/version_in_collection_resolver_spec.rb'
- 'spec/graphql/resolvers/design_management/version_resolver_spec.rb'
- 'spec/graphql/resolvers/design_management/versions_resolver_spec.rb'
@@ -1793,7 +1645,6 @@ RSpec/ContextWording:
- 'spec/graphql/resolvers/kas/agent_configurations_resolver_spec.rb'
- 'spec/graphql/resolvers/kas/agent_connections_resolver_spec.rb'
- 'spec/graphql/resolvers/last_commit_resolver_spec.rb'
- - 'spec/graphql/resolvers/metrics/dashboard_resolver_spec.rb'
- 'spec/graphql/resolvers/metrics/dashboards/annotation_resolver_spec.rb'
- 'spec/graphql/resolvers/namespace_projects_resolver_spec.rb'
- 'spec/graphql/resolvers/project_merge_requests_resolver_spec.rb'
@@ -1809,9 +1660,7 @@ RSpec/ContextWording:
- 'spec/graphql/subscriptions/issuable_updated_spec.rb'
- 'spec/graphql/types/base_field_spec.rb'
- 'spec/graphql/types/global_id_type_spec.rb'
- - 'spec/graphql/types/invitation_interface_spec.rb'
- 'spec/graphql/types/issue_type_spec.rb'
- - 'spec/graphql/types/member_interface_spec.rb'
- 'spec/graphql/types/range_input_type_spec.rb'
- 'spec/graphql/types/release_links_type_spec.rb'
- 'spec/graphql/types/user_type_spec.rb'
@@ -1826,13 +1675,12 @@ RSpec/ContextWording:
- 'spec/helpers/award_emoji_helper_spec.rb'
- 'spec/helpers/blob_helper_spec.rb'
- 'spec/helpers/boards_helper_spec.rb'
- - 'spec/helpers/ci/runners_helper_spec.rb'
+ - 'spec/helpers/ci/secure_files_helper_spec.rb'
- 'spec/helpers/clusters_helper_spec.rb'
- 'spec/helpers/colors_helper_spec.rb'
- 'spec/helpers/commits_helper_spec.rb'
- 'spec/helpers/diff_helper_spec.rb'
- 'spec/helpers/emails_helper_spec.rb'
- - 'spec/helpers/environment_helper_spec.rb'
- 'spec/helpers/environments_helper_spec.rb'
- 'spec/helpers/events_helper_spec.rb'
- 'spec/helpers/git_helper_spec.rb'
@@ -1842,7 +1690,6 @@ RSpec/ContextWording:
- 'spec/helpers/ide_helper_spec.rb'
- 'spec/helpers/integrations_helper_spec.rb'
- 'spec/helpers/invite_members_helper_spec.rb'
- - 'spec/helpers/issues_helper_spec.rb'
- 'spec/helpers/jira_connect_helper_spec.rb'
- 'spec/helpers/labels_helper_spec.rb'
- 'spec/helpers/listbox_helper_spec.rb'
@@ -1853,34 +1700,33 @@ RSpec/ContextWording:
- 'spec/helpers/notes_helper_spec.rb'
- 'spec/helpers/operations_helper_spec.rb'
- 'spec/helpers/projects/cluster_agents_helper_spec.rb'
+ - 'spec/helpers/projects/project_members_helper_spec.rb'
- 'spec/helpers/projects_helper_spec.rb'
- 'spec/helpers/releases_helper_spec.rb'
- 'spec/helpers/routing/pseudonymization_helper_spec.rb'
- 'spec/helpers/search_helper_spec.rb'
- - 'spec/helpers/snippets_helper_spec.rb'
- 'spec/helpers/sorting_helper_spec.rb'
- 'spec/helpers/storage_helper_spec.rb'
- 'spec/helpers/submodule_helper_spec.rb'
- 'spec/helpers/timeboxes_helper_spec.rb'
- - 'spec/helpers/timeboxes_routing_helper_spec.rb'
- 'spec/helpers/todos_helper_spec.rb'
- 'spec/helpers/tree_helper_spec.rb'
+ - 'spec/helpers/users/callouts_helper_spec.rb'
- 'spec/helpers/users/group_callouts_helper_spec.rb'
- 'spec/helpers/users_helper_spec.rb'
- 'spec/helpers/visibility_level_helper_spec.rb'
+ - 'spec/helpers/web_hooks/web_hooks_helper_spec.rb'
- 'spec/helpers/whats_new_helper_spec.rb'
- 'spec/helpers/wiki_helper_spec.rb'
- 'spec/initializers/00_rails_disable_joins_spec.rb'
- - 'spec/initializers/0_log_deprecations_spec.rb'
+ - 'spec/initializers/1_acts_as_taggable_spec.rb'
- 'spec/initializers/carrierwave_patch_spec.rb'
- - 'spec/initializers/lograge_spec.rb'
+ - 'spec/initializers/enumerator_next_patch_spec.rb'
- 'spec/initializers/mail_encoding_patch_spec.rb'
- - 'spec/initializers/net_http_patch_spec.rb'
- 'spec/initializers/rack_multipart_patch_spec.rb'
- 'spec/initializers/secret_token_spec.rb'
- 'spec/initializers/settings_spec.rb'
- 'spec/initializers/validate_database_config_spec.rb'
- - 'spec/initializers/validate_puma_spec.rb'
- 'spec/lib/api/entities/application_setting_spec.rb'
- 'spec/lib/api/entities/basic_project_details_spec.rb'
- 'spec/lib/api/entities/clusters/agent_authorization_spec.rb'
@@ -1911,14 +1757,12 @@ RSpec/ContextWording:
- 'spec/lib/atlassian/jira_connect/serializers/deployment_entity_spec.rb'
- 'spec/lib/atlassian/jira_connect/serializers/feature_flag_entity_spec.rb'
- 'spec/lib/atlassian/jira_connect_spec.rb'
- - 'spec/lib/backup/files_spec.rb'
- 'spec/lib/backup/gitaly_backup_spec.rb'
- 'spec/lib/backup/manager_spec.rb'
- 'spec/lib/backup/repositories_spec.rb'
- 'spec/lib/banzai/color_parser_spec.rb'
- 'spec/lib/banzai/filter/absolute_link_filter_spec.rb'
- 'spec/lib/banzai/filter/asset_proxy_filter_spec.rb'
- - 'spec/lib/banzai/filter/audio_link_filter_spec.rb'
- 'spec/lib/banzai/filter/autolink_filter_spec.rb'
- 'spec/lib/banzai/filter/broadcast_message_placeholders_filter_spec.rb'
- 'spec/lib/banzai/filter/broadcast_message_sanitization_filter_spec.rb'
@@ -1927,7 +1771,6 @@ RSpec/ContextWording:
- 'spec/lib/banzai/filter/front_matter_filter_spec.rb'
- 'spec/lib/banzai/filter/gollum_tags_filter_spec.rb'
- 'spec/lib/banzai/filter/inline_metrics_redactor_filter_spec.rb'
- - 'spec/lib/banzai/filter/issuable_reference_expansion_filter_spec.rb'
- 'spec/lib/banzai/filter/markdown_filter_spec.rb'
- 'spec/lib/banzai/filter/reference_redactor_filter_spec.rb'
- 'spec/lib/banzai/filter/references/abstract_reference_filter_spec.rb'
@@ -1949,12 +1792,10 @@ RSpec/ContextWording:
- 'spec/lib/banzai/filter/table_of_contents_filter_spec.rb'
- 'spec/lib/banzai/filter/table_of_contents_tag_filter_spec.rb'
- 'spec/lib/banzai/filter/upload_link_filter_spec.rb'
- - 'spec/lib/banzai/filter/video_link_filter_spec.rb'
- 'spec/lib/banzai/filter/wiki_link_filter_spec.rb'
- 'spec/lib/banzai/pipeline/broadcast_message_pipeline_spec.rb'
- 'spec/lib/banzai/pipeline_spec.rb'
- 'spec/lib/banzai/reference_parser/alert_parser_spec.rb'
- - 'spec/lib/banzai/reference_parser/base_parser_spec.rb'
- 'spec/lib/banzai/reference_parser/commit_range_parser_spec.rb'
- 'spec/lib/banzai/reference_parser/design_parser_spec.rb'
- 'spec/lib/banzai/reference_parser/feature_flag_parser_spec.rb'
@@ -1984,7 +1825,6 @@ RSpec/ContextWording:
- 'spec/lib/constraints/group_url_constrainer_spec.rb'
- 'spec/lib/constraints/project_url_constrainer_spec.rb'
- 'spec/lib/constraints/user_url_constrainer_spec.rb'
- - 'spec/lib/container_registry/blob_spec.rb'
- 'spec/lib/container_registry/gitlab_api_client_spec.rb'
- 'spec/lib/container_registry/migration_spec.rb'
- 'spec/lib/container_registry/registry_spec.rb'
@@ -1999,11 +1839,7 @@ RSpec/ContextWording:
- 'spec/lib/feature/definition_spec.rb'
- 'spec/lib/feature_spec.rb'
- 'spec/lib/generators/gitlab/snowplow_event_definition_generator_spec.rb'
- - 'spec/lib/generators/gitlab/usage_metric_generator_spec.rb'
- - 'spec/lib/gitlab/alert_management/alert_status_counts_spec.rb'
- 'spec/lib/gitlab/alert_management/fingerprint_spec.rb'
- - 'spec/lib/gitlab/alert_management/payload/base_spec.rb'
- - 'spec/lib/gitlab/alert_management/payload_spec.rb'
- 'spec/lib/gitlab/analytics/cycle_analytics/average_spec.rb'
- 'spec/lib/gitlab/analytics/cycle_analytics/base_query_builder_spec.rb'
- 'spec/lib/gitlab/analytics/cycle_analytics/sorting_spec.rb'
@@ -2011,19 +1847,13 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/asciidoc_spec.rb'
- 'spec/lib/gitlab/asset_proxy_spec.rb'
- 'spec/lib/gitlab/auth/atlassian/identity_linker_spec.rb'
- - 'spec/lib/gitlab/auth/atlassian/user_spec.rb'
- 'spec/lib/gitlab/auth/auth_finders_spec.rb'
- 'spec/lib/gitlab/auth/current_user_mode_spec.rb'
- - 'spec/lib/gitlab/auth/key_status_checker_spec.rb'
- - 'spec/lib/gitlab/auth/ldap/access_spec.rb'
- 'spec/lib/gitlab/auth/ldap/adapter_spec.rb'
- - 'spec/lib/gitlab/auth/ldap/auth_hash_spec.rb'
- 'spec/lib/gitlab/auth/ldap/dn_spec.rb'
- - 'spec/lib/gitlab/auth/ldap/person_spec.rb'
- 'spec/lib/gitlab/auth/ldap/user_spec.rb'
- 'spec/lib/gitlab/auth/o_auth/auth_hash_spec.rb'
- 'spec/lib/gitlab/auth/o_auth/identity_linker_spec.rb'
- - 'spec/lib/gitlab/auth/o_auth/provider_spec.rb'
- 'spec/lib/gitlab/auth/o_auth/user_spec.rb'
- 'spec/lib/gitlab/auth/otp/strategies/forti_authenticator/manual_otp_spec.rb'
- 'spec/lib/gitlab/auth/otp/strategies/forti_authenticator/push_otp_spec.rb'
@@ -2038,16 +1868,12 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/authorized_keys_spec.rb'
- 'spec/lib/gitlab/avatar_cache_spec.rb'
- 'spec/lib/gitlab/background_migration/backfill_ci_queuing_tables_spec.rb'
- - 'spec/lib/gitlab/background_migration/backfill_draft_status_on_merge_requests_spec.rb'
- - 'spec/lib/gitlab/background_migration/backfill_draft_status_on_merge_requests_with_corrected_regex_spec.rb'
- - 'spec/lib/gitlab/background_migration/backfill_project_repositories_spec.rb'
+ - 'spec/lib/gitlab/background_migration/backfill_imported_issue_search_data_spec.rb'
- 'spec/lib/gitlab/background_migration/batching_strategies/primary_key_batching_strategy_spec.rb'
- 'spec/lib/gitlab/background_migration/cleanup_draft_data_from_faulty_regex_spec.rb'
- 'spec/lib/gitlab/background_migration/copy_column_using_background_migration_job_spec.rb'
- 'spec/lib/gitlab/background_migration/disable_expiration_policies_linked_to_no_container_images_spec.rb'
- 'spec/lib/gitlab/background_migration/project_namespaces/backfill_project_namespaces_spec.rb'
- - 'spec/lib/gitlab/background_migration/recalculate_vulnerabilities_occurrences_uuid_spec.rb'
- - 'spec/lib/gitlab/background_migration/remove_all_trace_expiration_dates_spec.rb'
- 'spec/lib/gitlab/bare_repository_import/importer_spec.rb'
- 'spec/lib/gitlab/bare_repository_import/repository_spec.rb'
- 'spec/lib/gitlab/bitbucket_import/importer_spec.rb'
@@ -2056,7 +1882,6 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/cache/ci/project_pipeline_status_spec.rb'
- 'spec/lib/gitlab/cache/helpers_spec.rb'
- 'spec/lib/gitlab/chat/responder_spec.rb'
- - 'spec/lib/gitlab/chat_name_token_spec.rb'
- 'spec/lib/gitlab/checks/branch_check_spec.rb'
- 'spec/lib/gitlab/checks/lfs_integrity_spec.rb'
- 'spec/lib/gitlab/checks/matching_merge_request_spec.rb'
@@ -2066,7 +1891,6 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/ci/ansi2html_spec.rb'
- 'spec/lib/gitlab/ci/ansi2json/style_spec.rb'
- 'spec/lib/gitlab/ci/ansi2json_spec.rb'
- - 'spec/lib/gitlab/ci/badge/coverage/report_spec.rb'
- 'spec/lib/gitlab/ci/badge/pipeline/status_spec.rb'
- 'spec/lib/gitlab/ci/badge/release/template_spec.rb'
- 'spec/lib/gitlab/ci/build/artifacts/metadata_spec.rb'
@@ -2074,13 +1898,13 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/ci/build/prerequisite/factory_spec.rb'
- 'spec/lib/gitlab/ci/build/prerequisite/kubernetes_namespace_spec.rb'
- 'spec/lib/gitlab/ci/build/releaser_spec.rb'
+ - 'spec/lib/gitlab/ci/build/rules/rule/clause/changes_spec.rb'
- 'spec/lib/gitlab/ci/build/rules/rule/clause/exists_spec.rb'
- 'spec/lib/gitlab/ci/build/rules_spec.rb'
- 'spec/lib/gitlab/ci/charts_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/default_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/environment_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/include/rules/rule_spec.rb'
- - 'spec/lib/gitlab/ci/config/entry/include_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/inherit/default_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/inherit/variables_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/job_spec.rb'
@@ -2089,8 +1913,6 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/ci/config/entry/port_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/ports_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/processable_spec.rb'
- - 'spec/lib/gitlab/ci/config/entry/release_spec.rb'
- - 'spec/lib/gitlab/ci/config/entry/reports_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/retry_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/rules/rule_spec.rb'
- 'spec/lib/gitlab/ci/config/entry/trigger/forward_spec.rb'
@@ -2100,9 +1922,7 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/ci/jwt_spec.rb'
- 'spec/lib/gitlab/ci/lint_spec.rb'
- 'spec/lib/gitlab/ci/matching/runner_matcher_spec.rb'
- - 'spec/lib/gitlab/ci/parsers/coverage/sax_document_spec.rb'
- 'spec/lib/gitlab/ci/parsers/security/common_spec.rb'
- - 'spec/lib/gitlab/ci/parsers/security/validators/schema_validator_spec.rb'
- 'spec/lib/gitlab/ci/parsers/test/junit_spec.rb'
- 'spec/lib/gitlab/ci/pipeline/chain/command_spec.rb'
- 'spec/lib/gitlab/ci/pipeline/chain/create_spec.rb'
@@ -2113,23 +1933,23 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/ci/pipeline/expression/parser_spec.rb'
- 'spec/lib/gitlab/ci/pipeline/quota/deployments_spec.rb'
- 'spec/lib/gitlab/ci/pipeline/seed/build_spec.rb'
- - 'spec/lib/gitlab/ci/pipeline/seed/environment_spec.rb'
- 'spec/lib/gitlab/ci/pipeline_object_hierarchy_spec.rb'
- 'spec/lib/gitlab/ci/reports/reports_comparer_spec.rb'
- 'spec/lib/gitlab/ci/reports/security/aggregated_report_spec.rb'
- 'spec/lib/gitlab/ci/reports/security/vulnerability_reports_comparer_spec.rb'
- 'spec/lib/gitlab/ci/reports/test_suite_comparer_spec.rb'
- 'spec/lib/gitlab/ci/runner_instructions_spec.rb'
+ - 'spec/lib/gitlab/ci/runner_upgrade_check_spec.rb'
- 'spec/lib/gitlab/ci/status/bridge/factory_spec.rb'
- 'spec/lib/gitlab/ci/status/build/failed_spec.rb'
- 'spec/lib/gitlab/ci/status/composite_spec.rb'
- 'spec/lib/gitlab/ci/status/factory_spec.rb'
- - 'spec/lib/gitlab/ci/status/stage/play_manual_spec.rb'
- 'spec/lib/gitlab/ci/templates/5_minute_production_app_ci_yaml_spec.rb'
- 'spec/lib/gitlab/ci/templates/Jobs/build_gitlab_ci_yaml_spec.rb'
- 'spec/lib/gitlab/ci/templates/Jobs/code_quality_gitlab_ci_yaml_spec.rb'
- 'spec/lib/gitlab/ci/templates/Jobs/deploy_gitlab_ci_yaml_spec.rb'
- 'spec/lib/gitlab/ci/templates/Jobs/sast_iac_gitlab_ci_yaml_spec.rb'
+ - 'spec/lib/gitlab/ci/templates/Jobs/sast_iac_latest_gitlab_ci_yaml_spec.rb'
- 'spec/lib/gitlab/ci/templates/Jobs/test_gitlab_ci_yaml_spec.rb'
- 'spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb'
- 'spec/lib/gitlab/ci/templates/auto_devops_gitlab_ci_yaml_spec.rb'
@@ -2159,21 +1979,21 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/console_spec.rb'
- 'spec/lib/gitlab/consul/internal_spec.rb'
- 'spec/lib/gitlab/content_security_policy/config_loader_spec.rb'
- - 'spec/lib/gitlab/current_settings_spec.rb'
- 'spec/lib/gitlab/cycle_analytics/permissions_spec.rb'
- 'spec/lib/gitlab/daemon_spec.rb'
- 'spec/lib/gitlab/data_builder/build_spec.rb'
- 'spec/lib/gitlab/data_builder/issuable_spec.rb'
- 'spec/lib/gitlab/data_builder/pipeline_spec.rb'
- 'spec/lib/gitlab/database/background_migration/batch_optimizer_spec.rb'
+ - 'spec/lib/gitlab/database/background_migration/batched_migration_runner_spec.rb'
- 'spec/lib/gitlab/database/background_migration/batched_migration_spec.rb'
+ - 'spec/lib/gitlab/database/background_migration/health_status_spec.rb'
- 'spec/lib/gitlab/database/batch_count_spec.rb'
- 'spec/lib/gitlab/database/bulk_update_spec.rb'
- 'spec/lib/gitlab/database/count/reltuples_count_strategy_spec.rb'
- 'spec/lib/gitlab/database/count/tablesample_count_strategy_spec.rb'
- 'spec/lib/gitlab/database/count_spec.rb'
- 'spec/lib/gitlab/database/load_balancing/connection_proxy_spec.rb'
- - 'spec/lib/gitlab/database/load_balancing/host_spec.rb'
- 'spec/lib/gitlab/database/load_balancing/load_balancer_spec.rb'
- 'spec/lib/gitlab/database/load_balancing/rack_middleware_spec.rb'
- 'spec/lib/gitlab/database/load_balancing/setup_spec.rb'
@@ -2200,6 +2020,7 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/database/postgres_hll/batch_distinct_counter_spec.rb'
- 'spec/lib/gitlab/database/query_analyzer_spec.rb'
- 'spec/lib/gitlab/database/query_analyzers/gitlab_schemas_metrics_spec.rb'
+ - 'spec/lib/gitlab/database/query_analyzers/gitlab_schemas_validate_connection_spec.rb'
- 'spec/lib/gitlab/database/query_analyzers/prevent_cross_database_modification_spec.rb'
- 'spec/lib/gitlab/database/query_analyzers/restrict_allowed_schemas_spec.rb'
- 'spec/lib/gitlab/database/reflection_spec.rb'
@@ -2223,6 +2044,7 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/diff/lines_unfolder_spec.rb'
- 'spec/lib/gitlab/diff/position_spec.rb'
- 'spec/lib/gitlab/diff/position_tracer_spec.rb'
+ - 'spec/lib/gitlab/diff/rendered/notebook/diff_file_helper_spec.rb'
- 'spec/lib/gitlab/diff/rendered/notebook/diff_file_spec.rb'
- 'spec/lib/gitlab/diff/suggestions_parser_spec.rb'
- 'spec/lib/gitlab/email/failure_handler_spec.rb'
@@ -2234,18 +2056,17 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/email/handler_spec.rb'
- 'spec/lib/gitlab/email/message/in_product_marketing/admin_verify_spec.rb'
- 'spec/lib/gitlab/email/message/in_product_marketing/base_spec.rb'
- - 'spec/lib/gitlab/email/message/in_product_marketing/experience_spec.rb'
- 'spec/lib/gitlab/email/message/in_product_marketing/helper_spec.rb'
- 'spec/lib/gitlab/email/message/in_product_marketing/team_short_spec.rb'
- 'spec/lib/gitlab/email/message/in_product_marketing/team_spec.rb'
- 'spec/lib/gitlab/email/message/in_product_marketing/trial_short_spec.rb'
- 'spec/lib/gitlab/email/message/in_product_marketing/trial_spec.rb'
- 'spec/lib/gitlab/email/message/repository_push_spec.rb'
+ - 'spec/lib/gitlab/email/reply_parser_spec.rb'
- 'spec/lib/gitlab/encoding_helper_spec.rb'
- 'spec/lib/gitlab/error_tracking/context_payload_generator_spec.rb'
- 'spec/lib/gitlab/error_tracking/processor/sidekiq_processor_spec.rb'
- 'spec/lib/gitlab/error_tracking_spec.rb'
- - 'spec/lib/gitlab/exceptions_app_spec.rb'
- 'spec/lib/gitlab/exclusive_lease_helpers/sleeping_lock_spec.rb'
- 'spec/lib/gitlab/experimentation/controller_concern_spec.rb'
- 'spec/lib/gitlab/experimentation_spec.rb'
@@ -2266,7 +2087,6 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/git/cross_repo_comparer_spec.rb'
- 'spec/lib/gitlab/git/diff_collection_spec.rb'
- 'spec/lib/gitlab/git/diff_spec.rb'
- - 'spec/lib/gitlab/git/keep_around_spec.rb'
- 'spec/lib/gitlab/git/merge_base_spec.rb'
- 'spec/lib/gitlab/git/raw_diff_change_spec.rb'
- 'spec/lib/gitlab/git/repository_spec.rb'
@@ -2284,6 +2104,7 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/github_import/importer/milestones_importer_spec.rb'
- 'spec/lib/gitlab/github_import/importer/releases_importer_spec.rb'
- 'spec/lib/gitlab/github_import/representation/diff_note_spec.rb'
+ - 'spec/lib/gitlab/github_import/representation/issue_event_spec.rb'
- 'spec/lib/gitlab/github_import/representation/issue_spec.rb'
- 'spec/lib/gitlab/github_import/representation/note_spec.rb'
- 'spec/lib/gitlab/github_import/representation/pull_request_spec.rb'
@@ -2297,17 +2118,16 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/graphql/markdown_field_spec.rb'
- 'spec/lib/gitlab/graphql/pagination/externally_paginated_array_connection_spec.rb'
- 'spec/lib/gitlab/graphql/pagination/keyset/connection_spec.rb'
- - 'spec/lib/gitlab/graphql/pagination/keyset/order_info_spec.rb'
- 'spec/lib/gitlab/graphql/queries_spec.rb'
- 'spec/lib/gitlab/graphql_logger_spec.rb'
+ - 'spec/lib/gitlab/harbor/client_spec.rb'
+ - 'spec/lib/gitlab/harbor/query_spec.rb'
- 'spec/lib/gitlab/health_checks/gitaly_check_spec.rb'
- 'spec/lib/gitlab/health_checks/middleware_spec.rb'
- - 'spec/lib/gitlab/health_checks/puma_check_spec.rb'
- 'spec/lib/gitlab/health_checks/simple_check_shared.rb'
- 'spec/lib/gitlab/highlight_spec.rb'
- 'spec/lib/gitlab/hook_data/group_builder_spec.rb'
- 'spec/lib/gitlab/hook_data/group_member_builder_spec.rb'
- - 'spec/lib/gitlab/hook_data/issue_builder_spec.rb'
- 'spec/lib/gitlab/hook_data/key_builder_spec.rb'
- 'spec/lib/gitlab/hook_data/project_builder_spec.rb'
- 'spec/lib/gitlab/hook_data/project_member_builder_spec.rb'
@@ -2315,10 +2135,10 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/hook_data/user_builder_spec.rb'
- 'spec/lib/gitlab/hotlinking_detector_spec.rb'
- 'spec/lib/gitlab/http_spec.rb'
- - 'spec/lib/gitlab/i18n/po_linter_spec.rb'
- 'spec/lib/gitlab/import/merge_request_creator_spec.rb'
- 'spec/lib/gitlab/import_export/attributes_finder_spec.rb'
- 'spec/lib/gitlab/import_export/command_line_util_spec.rb'
+ - 'spec/lib/gitlab/import_export/decompressed_archive_size_validator_spec.rb'
- 'spec/lib/gitlab/import_export/fast_hash_serializer_spec.rb'
- 'spec/lib/gitlab/import_export/file_importer_spec.rb'
- 'spec/lib/gitlab/import_export/group/legacy_tree_restorer_spec.rb'
@@ -2345,9 +2165,10 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/incoming_email_spec.rb'
- 'spec/lib/gitlab/instrumentation/redis_base_spec.rb'
- 'spec/lib/gitlab/instrumentation/redis_cluster_validator_spec.rb'
+ - 'spec/lib/gitlab/instrumentation_helper_spec.rb'
- 'spec/lib/gitlab/internal_post_receive/response_spec.rb'
+ - 'spec/lib/gitlab/issuable/clone/attributes_rewriter_spec.rb'
- 'spec/lib/gitlab/issuable_metadata_spec.rb'
- - 'spec/lib/gitlab/issuable_sorter_spec.rb'
- 'spec/lib/gitlab/issuables_count_for_state_spec.rb'
- 'spec/lib/gitlab/issues/rebalancing/state_spec.rb'
- 'spec/lib/gitlab/jira/dvcs_spec.rb'
@@ -2361,26 +2182,24 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/kubernetes/helm/v2/certificate_spec.rb'
- 'spec/lib/gitlab/kubernetes/helm/v2/init_command_spec.rb'
- 'spec/lib/gitlab/kubernetes/kube_client_spec.rb'
- - 'spec/lib/gitlab/kubernetes/rollout_status_spec.rb'
- 'spec/lib/gitlab/legacy_github_import/client_spec.rb'
- 'spec/lib/gitlab/lfs/client_spec.rb'
- 'spec/lib/gitlab/lfs_token_spec.rb'
- - 'spec/lib/gitlab/logger_spec.rb'
- 'spec/lib/gitlab/lograge/custom_options_spec.rb'
- 'spec/lib/gitlab/mail_room/authenticator_spec.rb'
- 'spec/lib/gitlab/mail_room/mail_room_spec.rb'
+ - 'spec/lib/gitlab/mailgun/webhook_processors/failure_logger_spec.rb'
- 'spec/lib/gitlab/manifest_import/manifest_spec.rb'
- 'spec/lib/gitlab/markdown_cache/active_record/extension_spec.rb'
+ - 'spec/lib/gitlab/memory/reports_daemon_spec.rb'
+ - 'spec/lib/gitlab/memory/watchdog_spec.rb'
- 'spec/lib/gitlab/merge_requests/commit_message_generator_spec.rb'
- 'spec/lib/gitlab/metrics/boot_time_tracker_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/cache_spec.rb'
- - 'spec/lib/gitlab/metrics/dashboard/finder_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/importer_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/importers/prometheus_metrics_spec.rb'
- - 'spec/lib/gitlab/metrics/dashboard/processor_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/stages/url_validator_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/transformers/yml/v1/prometheus_metrics_spec.rb'
- - 'spec/lib/gitlab/metrics/dashboard/url_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/validator/errors_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/validator/post_schema_validator_spec.rb'
- 'spec/lib/gitlab/metrics/dashboard/validator_spec.rb'
@@ -2388,7 +2207,6 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/metrics/method_call_spec.rb'
- 'spec/lib/gitlab/metrics/methods_spec.rb'
- 'spec/lib/gitlab/metrics/requests_rack_middleware_spec.rb'
- - 'spec/lib/gitlab/metrics/samplers/puma_sampler_spec.rb'
- 'spec/lib/gitlab/metrics/samplers/threads_sampler_spec.rb'
- 'spec/lib/gitlab/metrics/subscribers/active_record_spec.rb'
- 'spec/lib/gitlab/metrics/subscribers/rack_attack_spec.rb'
@@ -2396,9 +2214,7 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/middleware/basic_health_check_spec.rb'
- 'spec/lib/gitlab/middleware/compressed_json_spec.rb'
- 'spec/lib/gitlab/middleware/go_spec.rb'
- - 'spec/lib/gitlab/middleware/handle_malformed_strings_spec.rb'
- 'spec/lib/gitlab/middleware/multipart_spec.rb'
- - 'spec/lib/gitlab/middleware/rack_multipart_tempfile_factory_spec.rb'
- 'spec/lib/gitlab/middleware/request_context_spec.rb'
- 'spec/lib/gitlab/middleware/same_site_cookies_spec.rb'
- 'spec/lib/gitlab/namespaced_session_store_spec.rb'
@@ -2410,22 +2226,18 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/pagination/keyset/in_operator_optimization/query_builder_spec.rb'
- 'spec/lib/gitlab/pagination/keyset/order_spec.rb'
- 'spec/lib/gitlab/pagination/keyset/pager_spec.rb'
- - 'spec/lib/gitlab/pagination/keyset/paginator_spec.rb'
- 'spec/lib/gitlab/pagination/keyset/simple_order_builder_spec.rb'
- 'spec/lib/gitlab/pagination/offset_header_builder_spec.rb'
- - 'spec/lib/gitlab/pagination/offset_pagination_spec.rb'
- 'spec/lib/gitlab/patch/prependable_spec.rb'
- 'spec/lib/gitlab/path_regex_spec.rb'
- 'spec/lib/gitlab/performance_bar_spec.rb'
- 'spec/lib/gitlab/phabricator_import/issues/importer_spec.rb'
- - 'spec/lib/gitlab/phabricator_import/user_finder_spec.rb'
- 'spec/lib/gitlab/popen_spec.rb'
- 'spec/lib/gitlab/process_supervisor_spec.rb'
- 'spec/lib/gitlab/profiler_spec.rb'
- 'spec/lib/gitlab/project_authorizations_spec.rb'
- 'spec/lib/gitlab/project_search_results_spec.rb'
- 'spec/lib/gitlab/prometheus/adapter_spec.rb'
- - 'spec/lib/gitlab/prometheus/queries/additional_metrics_environment_query_spec.rb'
- 'spec/lib/gitlab/prometheus/queries/knative_invocation_query_spec.rb'
- 'spec/lib/gitlab/prometheus/queries/matched_metric_query_spec.rb'
- 'spec/lib/gitlab/prometheus/queries/validate_query_spec.rb'
@@ -2438,7 +2250,8 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/rack_attack_spec.rb'
- 'spec/lib/gitlab/reactive_cache_set_cache_spec.rb'
- 'spec/lib/gitlab/redis/boolean_spec.rb'
- - 'spec/lib/gitlab/redis/hll_spec.rb'
+ - 'spec/lib/gitlab/redis/duplicate_jobs_spec.rb'
+ - 'spec/lib/gitlab/regex_requires_app_spec.rb'
- 'spec/lib/gitlab/regex_spec.rb'
- 'spec/lib/gitlab/relative_positioning/item_context_spec.rb'
- 'spec/lib/gitlab/relative_positioning/mover_spec.rb'
@@ -2452,12 +2265,12 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/runtime_spec.rb'
- 'spec/lib/gitlab/sanitizers/exif_spec.rb'
- 'spec/lib/gitlab/sanitizers/svg_spec.rb'
- - 'spec/lib/gitlab/search/params_spec.rb'
- 'spec/lib/gitlab/search/sort_options_spec.rb'
- 'spec/lib/gitlab/search_context/controller_concern_spec.rb'
- 'spec/lib/gitlab/search_results_spec.rb'
+ - 'spec/lib/gitlab/service_desk_email_spec.rb'
- 'spec/lib/gitlab/sidekiq_config/worker_router_spec.rb'
- - 'spec/lib/gitlab/sidekiq_daemon/monitor_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_daemon/memory_killer_spec.rb'
- 'spec/lib/gitlab/sidekiq_logging/json_formatter_spec.rb'
- 'spec/lib/gitlab/sidekiq_middleware/admin_mode/client_spec.rb'
- 'spec/lib/gitlab/sidekiq_middleware/admin_mode/server_spec.rb'
@@ -2467,12 +2280,12 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb'
- 'spec/lib/gitlab/sidekiq_middleware/size_limiter/compressor_spec.rb'
- 'spec/lib/gitlab/sidekiq_middleware/size_limiter/validator_spec.rb'
+ - 'spec/lib/gitlab/sidekiq_middleware/worker_context/client_spec.rb'
- 'spec/lib/gitlab/sidekiq_middleware/worker_context/server_spec.rb'
- 'spec/lib/gitlab/sidekiq_middleware_spec.rb'
- 'spec/lib/gitlab/sidekiq_migrate_jobs_spec.rb'
- 'spec/lib/gitlab/sidekiq_signals_spec.rb'
- 'spec/lib/gitlab/slash_commands/command_spec.rb'
- - 'spec/lib/gitlab/slash_commands/deploy_spec.rb'
- 'spec/lib/gitlab/slash_commands/issue_close_spec.rb'
- 'spec/lib/gitlab/slash_commands/issue_new_spec.rb'
- 'spec/lib/gitlab/slash_commands/issue_search_spec.rb'
@@ -2480,9 +2293,7 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/slash_commands/presenters/issue_close_spec.rb'
- 'spec/lib/gitlab/slash_commands/presenters/issue_show_spec.rb'
- 'spec/lib/gitlab/slash_commands/run_spec.rb'
- - 'spec/lib/gitlab/sourcegraph_spec.rb'
- 'spec/lib/gitlab/spamcheck/client_spec.rb'
- - 'spec/lib/gitlab/sql/pattern_spec.rb'
- 'spec/lib/gitlab/ssh_public_key_spec.rb'
- 'spec/lib/gitlab/submodule_links_spec.rb'
- 'spec/lib/gitlab/subscription_portal_spec.rb'
@@ -2493,30 +2304,26 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/tracking/incident_management_spec.rb'
- 'spec/lib/gitlab/tracking/snowplow_schema_validation_spec.rb'
- 'spec/lib/gitlab/tracking/standard_context_spec.rb'
+ - 'spec/lib/gitlab/tracking_spec.rb'
- 'spec/lib/gitlab/tree_summary_spec.rb'
- 'spec/lib/gitlab/untrusted_regexp/ruby_syntax_spec.rb'
- 'spec/lib/gitlab/untrusted_regexp_spec.rb'
- 'spec/lib/gitlab/url_blocker_spec.rb'
- - 'spec/lib/gitlab/url_builder_spec.rb'
- 'spec/lib/gitlab/url_sanitizer_spec.rb'
- 'spec/lib/gitlab/usage/metric_definition_spec.rb'
- 'spec/lib/gitlab/usage/metric_spec.rb'
- 'spec/lib/gitlab/usage/metrics/aggregates/aggregate_spec.rb'
- 'spec/lib/gitlab/usage/metrics/aggregates/sources/postgres_hll_spec.rb'
- - 'spec/lib/gitlab/usage/metrics/instrumentations/count_users_creating_issues_metric_spec.rb'
- 'spec/lib/gitlab/usage/metrics/instrumentations/redis_hll_metric_spec.rb'
- 'spec/lib/gitlab/usage/metrics/instrumentations/redis_metric_spec.rb'
- - 'spec/lib/gitlab/usage/metrics/instrumentations/snowplow_configured_to_gitlab_collector_metric_spec.rb'
- - 'spec/lib/gitlab/usage/metrics/instrumentations/snowplow_enabled_metric_spec.rb'
- 'spec/lib/gitlab/usage/metrics/name_suggestion_spec.rb'
- 'spec/lib/gitlab/usage/metrics/names_suggestions/generator_spec.rb'
- 'spec/lib/gitlab/usage/service_ping/payload_keys_processor_spec.rb'
- 'spec/lib/gitlab/usage/service_ping_report_spec.rb'
- 'spec/lib/gitlab/usage_data/topology_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/ci_template_unique_counter_spec.rb'
- - 'spec/lib/gitlab/usage_data_counters/editor_unique_counter_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/hll_redis_counter_spec.rb'
- - 'spec/lib/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb'
+ - 'spec/lib/gitlab/usage_data_counters/ipynb_diff_activity_counter_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/kubernetes_agent_counter_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/quick_action_activity_unique_counter_spec.rb'
- 'spec/lib/gitlab/usage_data_counters/search_counter_spec.rb'
@@ -2527,8 +2334,6 @@ RSpec/ContextWording:
- 'spec/lib/gitlab/utils/strong_memoize_spec.rb'
- 'spec/lib/gitlab/utils/usage_data_spec.rb'
- 'spec/lib/gitlab/utils_spec.rb'
- - 'spec/lib/gitlab/uuid_spec.rb'
- - 'spec/lib/gitlab/version_info_spec.rb'
- 'spec/lib/gitlab/view/presenter/base_spec.rb'
- 'spec/lib/gitlab/visibility_level_checker_spec.rb'
- 'spec/lib/gitlab/visibility_level_spec.rb'
@@ -2545,14 +2350,11 @@ RSpec/ContextWording:
- 'spec/lib/json_web_token/token_spec.rb'
- 'spec/lib/kramdown/parser/atlassian_document_format_spec.rb'
- 'spec/lib/mattermost/client_spec.rb'
- - 'spec/lib/mattermost/command_spec.rb'
- 'spec/lib/mattermost/session_spec.rb'
- - 'spec/lib/mattermost/team_spec.rb'
- 'spec/lib/object_storage/direct_upload_spec.rb'
- 'spec/lib/omni_auth/strategies/jwt_spec.rb'
- 'spec/lib/peek/views/bullet_detailed_spec.rb'
- 'spec/lib/product_analytics/event_params_spec.rb'
- - 'spec/lib/prometheus/pid_provider_spec.rb'
- 'spec/lib/safe_zip/entry_spec.rb'
- 'spec/lib/security/ci_configuration/container_scanning_build_action_spec.rb'
- 'spec/lib/security/ci_configuration/sast_build_action_spec.rb'
@@ -2571,19 +2373,17 @@ RSpec/ContextWording:
- 'spec/lib/system_check/orphans/repository_check_spec.rb'
- 'spec/lib/uploaded_file_spec.rb'
- 'spec/lib/version_check_spec.rb'
+ - 'spec/mailers/devise_mailer_spec.rb'
- 'spec/mailers/emails/profile_spec.rb'
- 'spec/mailers/emails/projects_spec.rb'
- 'spec/mailers/emails/releases_spec.rb'
- 'spec/mailers/emails/service_desk_spec.rb'
- 'spec/mailers/notify_spec.rb'
- - 'spec/metrics_server/metrics_server_spec.rb'
- 'spec/migrations/20210812013042_remove_duplicate_project_authorizations_spec.rb'
- - 'spec/migrations/20220426185933_backfill_deployments_finished_at_spec.rb'
- - 'spec/migrations/backfill_cadence_id_for_boards_scoped_to_iteration_spec.rb'
+ - 'spec/migrations/20220520040416_schedule_set_legacy_open_source_license_available_for_non_public_projects_spec.rb'
+ - 'spec/migrations/20220627090231_schedule_disable_legacy_open_source_license_for_inactive_public_projects_spec.rb'
- 'spec/migrations/finalize_traversal_ids_background_migrations_spec.rb'
- - 'spec/migrations/fix_and_backfill_project_namespaces_for_projects_with_duplicate_name_spec.rb'
- 'spec/migrations/rename_services_to_integrations_spec.rb'
- - 'spec/migrations/schedule_security_setting_creation_spec.rb'
- 'spec/models/ability_spec.rb'
- 'spec/models/active_session_spec.rb'
- 'spec/models/alert_management/alert_spec.rb'
@@ -2594,17 +2394,16 @@ RSpec/ContextWording:
- 'spec/models/application_setting_spec.rb'
- 'spec/models/approval_spec.rb'
- 'spec/models/audit_event_spec.rb'
+ - 'spec/models/authentication_event_spec.rb'
- 'spec/models/award_emoji_spec.rb'
- 'spec/models/aws/role_spec.rb'
- 'spec/models/badge_spec.rb'
- 'spec/models/badges/project_badge_spec.rb'
- 'spec/models/blob_spec.rb'
- 'spec/models/blob_viewer/package_json_spec.rb'
- - 'spec/models/board_spec.rb'
- 'spec/models/bulk_imports/entity_spec.rb'
- 'spec/models/ci/artifact_blob_spec.rb'
- 'spec/models/ci/bridge_spec.rb'
- - 'spec/models/ci/build_dependencies_spec.rb'
- 'spec/models/ci/build_metadata_spec.rb'
- 'spec/models/ci/build_runner_session_spec.rb'
- 'spec/models/ci/build_spec.rb'
@@ -2620,7 +2419,6 @@ RSpec/ContextWording:
- 'spec/models/ci/processable_spec.rb'
- 'spec/models/ci/project_mirror_spec.rb'
- 'spec/models/ci/ref_spec.rb'
- - 'spec/models/ci/resource_spec.rb'
- 'spec/models/ci/runner_project_spec.rb'
- 'spec/models/ci/runner_spec.rb'
- 'spec/models/ci/running_build_spec.rb'
@@ -2643,7 +2441,6 @@ RSpec/ContextWording:
- 'spec/models/clusters/kubernetes_namespace_spec.rb'
- 'spec/models/clusters/platforms/kubernetes_spec.rb'
- 'spec/models/clusters/providers/aws_spec.rb'
- - 'spec/models/commit_signatures/x509_commit_signature_spec.rb'
- 'spec/models/commit_spec.rb'
- 'spec/models/commit_status_spec.rb'
- 'spec/models/compare_spec.rb'
@@ -2651,18 +2448,15 @@ RSpec/ContextWording:
- 'spec/models/concerns/awardable_spec.rb'
- 'spec/models/concerns/bulk_insert_safe_spec.rb'
- 'spec/models/concerns/bulk_insertable_associations_spec.rb'
- - 'spec/models/concerns/cache_markdown_field_spec.rb'
- 'spec/models/concerns/cacheable_attributes_spec.rb'
- - 'spec/models/concerns/cascading_namespace_setting_attribute_spec.rb'
- 'spec/models/concerns/ci/artifactable_spec.rb'
- 'spec/models/concerns/ci/has_ref_spec.rb'
- 'spec/models/concerns/ci/has_status_spec.rb'
- - 'spec/models/concerns/cron_schedulable_spec.rb'
- 'spec/models/concerns/cross_database_modification_spec.rb'
- 'spec/models/concerns/deployment_platform_spec.rb'
- - 'spec/models/concerns/group_descendant_spec.rb'
- 'spec/models/concerns/ignorable_columns_spec.rb'
- 'spec/models/concerns/issuable_spec.rb'
+ - 'spec/models/concerns/loose_index_scan_spec.rb'
- 'spec/models/concerns/mentionable_spec.rb'
- 'spec/models/concerns/milestoneable_spec.rb'
- 'spec/models/concerns/noteable_spec.rb'
@@ -2671,20 +2465,16 @@ RSpec/ContextWording:
- 'spec/models/concerns/protected_ref_access_spec.rb'
- 'spec/models/concerns/reactive_caching_spec.rb'
- 'spec/models/concerns/resolvable_note_spec.rb'
- - 'spec/models/concerns/routable_spec.rb'
- - 'spec/models/concerns/schedulable_spec.rb'
- 'spec/models/concerns/sensitive_serializable_hash_spec.rb'
- - 'spec/models/concerns/spammable_spec.rb'
- 'spec/models/concerns/token_authenticatable_spec.rb'
- 'spec/models/concerns/triggerable_hooks_spec.rb'
- 'spec/models/concerns/usage_statistics_spec.rb'
- 'spec/models/container_expiration_policy_spec.rb'
- 'spec/models/container_repository_spec.rb'
- - 'spec/models/customer_relations/issue_contact_spec.rb'
- 'spec/models/dependency_proxy/manifest_spec.rb'
- 'spec/models/dependency_proxy/registry_spec.rb'
- - 'spec/models/deploy_key_spec.rb'
- 'spec/models/deploy_token_spec.rb'
+ - 'spec/models/deployment_cluster_spec.rb'
- 'spec/models/deployment_metrics_spec.rb'
- 'spec/models/deployment_spec.rb'
- 'spec/models/design_management/action_spec.rb'
@@ -2697,20 +2487,17 @@ RSpec/ContextWording:
- 'spec/models/diff_note_spec.rb'
- 'spec/models/environment_spec.rb'
- 'spec/models/environment_status_spec.rb'
- - 'spec/models/error_tracking/error_event_spec.rb'
- 'spec/models/error_tracking/error_spec.rb'
- 'spec/models/event_collection_spec.rb'
- 'spec/models/event_spec.rb'
- 'spec/models/experiment_spec.rb'
- - 'spec/models/external_issue_spec.rb'
- 'spec/models/external_pull_request_spec.rb'
- - 'spec/models/fork_network_spec.rb'
- 'spec/models/gpg_key_spec.rb'
- 'spec/models/grafana_integration_spec.rb'
- - 'spec/models/group_deploy_token_spec.rb'
- 'spec/models/group_label_spec.rb'
- 'spec/models/group_spec.rb'
- 'spec/models/hooks/active_hook_filter_spec.rb'
+ - 'spec/models/hooks/project_hook_spec.rb'
- 'spec/models/hooks/system_hook_spec.rb'
- 'spec/models/identity_spec.rb'
- 'spec/models/import_export_upload_spec.rb'
@@ -2791,45 +2578,36 @@ RSpec/ContextWording:
- 'spec/models/project_metrics_setting_spec.rb'
- 'spec/models/project_spec.rb'
- 'spec/models/project_team_spec.rb'
- - 'spec/models/projects/repository_storage_move_spec.rb'
- 'spec/models/prometheus_alert_event_spec.rb'
- - 'spec/models/protectable_dropdown_spec.rb'
- 'spec/models/protected_branch_spec.rb'
- 'spec/models/raw_usage_data_spec.rb'
- 'spec/models/release_highlight_spec.rb'
- 'spec/models/release_spec.rb'
- - 'spec/models/releases/link_spec.rb'
- 'spec/models/remote_mirror_spec.rb'
- 'spec/models/repository_spec.rb'
- 'spec/models/resource_label_event_spec.rb'
- 'spec/models/resource_state_event_spec.rb'
- 'spec/models/route_spec.rb'
- - 'spec/models/sent_notification_spec.rb'
- 'spec/models/sentry_issue_spec.rb'
- 'spec/models/snippet_input_action_spec.rb'
- 'spec/models/snippet_repository_spec.rb'
- 'spec/models/snippet_spec.rb'
- 'spec/models/spam_log_spec.rb'
- 'spec/models/ssh_host_key_spec.rb'
- - 'spec/models/suggestion_spec.rb'
- 'spec/models/terraform/state_spec.rb'
- 'spec/models/terraform/state_version_spec.rb'
- - 'spec/models/todo_spec.rb'
- 'spec/models/upload_spec.rb'
- 'spec/models/uploads/fog_spec.rb'
- 'spec/models/uploads/local_spec.rb'
- - 'spec/models/user_interacted_project_spec.rb'
- 'spec/models/user_preference_spec.rb'
- 'spec/models/user_spec.rb'
- 'spec/models/users/in_product_marketing_email_spec.rb'
- 'spec/models/wiki_page/meta_spec.rb'
- 'spec/models/wiki_page/slug_spec.rb'
- 'spec/models/wiki_page_spec.rb'
+ - 'spec/models/work_item_spec.rb'
- 'spec/models/x509_certificate_spec.rb'
- - 'spec/models/zoom_meeting_spec.rb'
- - 'spec/policies/application_setting/term_policy_spec.rb'
- 'spec/policies/application_setting_policy_spec.rb'
- - 'spec/policies/base_policy_spec.rb'
- 'spec/policies/board_policy_spec.rb'
- 'spec/policies/ci/build_policy_spec.rb'
- 'spec/policies/clusters/agents/activity_event_policy_spec.rb'
@@ -2837,18 +2615,14 @@ RSpec/ContextWording:
- 'spec/policies/custom_emoji_policy_spec.rb'
- 'spec/policies/deploy_key_policy_spec.rb'
- 'spec/policies/deploy_keys_project_policy_spec.rb'
- - 'spec/policies/design_management/design_policy_spec.rb'
- 'spec/policies/global_policy_spec.rb'
- 'spec/policies/group_member_policy_spec.rb'
- 'spec/policies/group_policy_spec.rb'
- - 'spec/policies/instance_metadata_policy_spec.rb'
- 'spec/policies/issuable_policy_spec.rb'
- 'spec/policies/issue_policy_spec.rb'
- - 'spec/policies/merge_request_policy_spec.rb'
- 'spec/policies/metrics/dashboard/annotation_policy_spec.rb'
- 'spec/policies/namespaces/project_namespace_policy_spec.rb'
- 'spec/policies/namespaces/user_namespace_policy_spec.rb'
- - 'spec/policies/note_policy_spec.rb'
- 'spec/policies/personal_access_token_policy_spec.rb'
- 'spec/policies/personal_snippet_policy_spec.rb'
- 'spec/policies/project_policy_spec.rb'
@@ -2863,12 +2637,9 @@ RSpec/ContextWording:
- 'spec/presenters/clusters/cluster_presenter_spec.rb'
- 'spec/presenters/commit_status_presenter_spec.rb'
- 'spec/presenters/gitlab/blame_presenter_spec.rb'
- - 'spec/presenters/group_member_presenter_spec.rb'
- 'spec/presenters/merge_request_presenter_spec.rb'
- 'spec/presenters/packages/conan/package_presenter_spec.rb'
- 'spec/presenters/packages/npm/package_presenter_spec.rb'
- - 'spec/presenters/packages/nuget/service_index_presenter_spec.rb'
- - 'spec/presenters/project_member_presenter_spec.rb'
- 'spec/presenters/project_presenter_spec.rb'
- 'spec/presenters/projects/import_export/project_export_presenter_spec.rb'
- 'spec/presenters/projects/security/configuration_presenter_spec.rb'
@@ -2891,7 +2662,6 @@ RSpec/ContextWording:
- 'spec/requests/api/award_emoji_spec.rb'
- 'spec/requests/api/badges_spec.rb'
- 'spec/requests/api/branches_spec.rb'
- - 'spec/requests/api/broadcast_messages_spec.rb'
- 'spec/requests/api/bulk_imports_spec.rb'
- 'spec/requests/api/ci/job_artifacts_spec.rb'
- 'spec/requests/api/ci/jobs_spec.rb'
@@ -2919,10 +2689,8 @@ RSpec/ContextWording:
- 'spec/requests/api/environments_spec.rb'
- 'spec/requests/api/error_tracking/collector_spec.rb'
- 'spec/requests/api/error_tracking/project_settings_spec.rb'
- - 'spec/requests/api/events_spec.rb'
- 'spec/requests/api/files_spec.rb'
- 'spec/requests/api/generic_packages_spec.rb'
- - 'spec/requests/api/go_proxy_spec.rb'
- 'spec/requests/api/graphql/ci/runner_spec.rb'
- 'spec/requests/api/graphql/ci/runners_spec.rb'
- 'spec/requests/api/graphql/container_repository/container_repository_details_spec.rb'
@@ -2933,6 +2701,7 @@ RSpec/ContextWording:
- 'spec/requests/api/graphql/group/group_members_spec.rb'
- 'spec/requests/api/graphql/group/issues_spec.rb'
- 'spec/requests/api/graphql/group/milestones_spec.rb'
+ - 'spec/requests/api/graphql/issue/issue_spec.rb'
- 'spec/requests/api/graphql/metadata_query_spec.rb'
- 'spec/requests/api/graphql/metrics/dashboard/annotations_spec.rb'
- 'spec/requests/api/graphql/metrics/dashboard_query_spec.rb'
@@ -2942,7 +2711,6 @@ RSpec/ContextWording:
- 'spec/requests/api/graphql/mutations/branches/create_spec.rb'
- 'spec/requests/api/graphql/mutations/ci/runners_registration_token/reset_spec.rb'
- 'spec/requests/api/graphql/mutations/commits/create_spec.rb'
- - 'spec/requests/api/graphql/mutations/container_expiration_policy/update_spec.rb'
- 'spec/requests/api/graphql/mutations/custom_emoji/destroy_spec.rb'
- 'spec/requests/api/graphql/mutations/design_management/delete_spec.rb'
- 'spec/requests/api/graphql/mutations/design_management/move_spec.rb'
@@ -2951,9 +2719,7 @@ RSpec/ContextWording:
- 'spec/requests/api/graphql/mutations/issues/update_spec.rb'
- 'spec/requests/api/graphql/mutations/merge_requests/create_spec.rb'
- 'spec/requests/api/graphql/mutations/merge_requests/request_attention_spec.rb'
- - 'spec/requests/api/graphql/mutations/namespace/package_settings/update_spec.rb'
- 'spec/requests/api/graphql/mutations/notes/create/diff_note_spec.rb'
- - 'spec/requests/api/graphql/mutations/notes/create/note_spec.rb'
- 'spec/requests/api/graphql/mutations/releases/create_spec.rb'
- 'spec/requests/api/graphql/mutations/releases/delete_spec.rb'
- 'spec/requests/api/graphql/mutations/releases/update_spec.rb'
@@ -2963,10 +2729,11 @@ RSpec/ContextWording:
- 'spec/requests/api/graphql/mutations/work_items/create_spec.rb'
- 'spec/requests/api/graphql/mutations/work_items/delete_task_spec.rb'
- 'spec/requests/api/graphql/mutations/work_items/update_spec.rb'
+ - 'spec/requests/api/graphql/mutations/work_items/update_task_spec.rb'
+ - 'spec/requests/api/graphql/mutations/work_items/update_widgets_spec.rb'
- 'spec/requests/api/graphql/namespace_query_spec.rb'
- 'spec/requests/api/graphql/packages/maven_spec.rb'
- 'spec/requests/api/graphql/packages/package_spec.rb'
- - 'spec/requests/api/graphql/project/alert_management/alert/notes_spec.rb'
- 'spec/requests/api/graphql/project/alert_management/alerts_spec.rb'
- 'spec/requests/api/graphql/project/cluster_agents_spec.rb'
- 'spec/requests/api/graphql/project/container_repositories_spec.rb'
@@ -2981,7 +2748,6 @@ RSpec/ContextWording:
- 'spec/requests/api/graphql/project/pipeline_spec.rb'
- 'spec/requests/api/graphql/project/project_members_spec.rb'
- 'spec/requests/api/graphql/project/release_spec.rb'
- - 'spec/requests/api/graphql/project/repository_spec.rb'
- 'spec/requests/api/graphql/project/terraform/state_spec.rb'
- 'spec/requests/api/graphql/project/terraform/states_spec.rb'
- 'spec/requests/api/graphql/project_query_spec.rb'
@@ -2990,7 +2756,6 @@ RSpec/ContextWording:
- 'spec/requests/api/graphql/user_query_spec.rb'
- 'spec/requests/api/graphql/users_spec.rb'
- 'spec/requests/api/graphql_spec.rb'
- - 'spec/requests/api/group_avatar_spec.rb'
- 'spec/requests/api/group_clusters_spec.rb'
- 'spec/requests/api/group_labels_spec.rb'
- 'spec/requests/api/group_packages_spec.rb'
@@ -2998,6 +2763,7 @@ RSpec/ContextWording:
- 'spec/requests/api/groups_spec.rb'
- 'spec/requests/api/helm_packages_spec.rb'
- 'spec/requests/api/helpers_spec.rb'
+ - 'spec/requests/api/integrations/jira_connect/subscriptions_spec.rb'
- 'spec/requests/api/integrations_spec.rb'
- 'spec/requests/api/internal/base_spec.rb'
- 'spec/requests/api/internal/container_registry/migration_spec.rb'
@@ -3005,6 +2771,7 @@ RSpec/ContextWording:
- 'spec/requests/api/internal/lfs_spec.rb'
- 'spec/requests/api/internal/mail_room_spec.rb'
- 'spec/requests/api/internal/pages_spec.rb'
+ - 'spec/requests/api/internal/workhorse_spec.rb'
- 'spec/requests/api/invitations_spec.rb'
- 'spec/requests/api/issue_links_spec.rb'
- 'spec/requests/api/issues/get_group_issues_spec.rb'
@@ -3013,11 +2780,9 @@ RSpec/ContextWording:
- 'spec/requests/api/issues/post_projects_issues_spec.rb'
- 'spec/requests/api/issues/put_projects_issues_spec.rb'
- 'spec/requests/api/keys_spec.rb'
- - 'spec/requests/api/labels_spec.rb'
- 'spec/requests/api/lint_spec.rb'
- 'spec/requests/api/maven_packages_spec.rb'
- 'spec/requests/api/members_spec.rb'
- - 'spec/requests/api/merge_request_approvals_spec.rb'
- 'spec/requests/api/merge_request_diffs_spec.rb'
- 'spec/requests/api/merge_requests_spec.rb'
- 'spec/requests/api/metrics/user_starred_dashboards_spec.rb'
@@ -3034,8 +2799,6 @@ RSpec/ContextWording:
- 'spec/requests/api/project_container_repositories_spec.rb'
- 'spec/requests/api/project_events_spec.rb'
- 'spec/requests/api/project_export_spec.rb'
- - 'spec/requests/api/project_hooks_spec.rb'
- - 'spec/requests/api/project_import_spec.rb'
- 'spec/requests/api/project_packages_spec.rb'
- 'spec/requests/api/project_snippets_spec.rb'
- 'spec/requests/api/projects_spec.rb'
@@ -3046,6 +2809,7 @@ RSpec/ContextWording:
- 'spec/requests/api/rubygem_packages_spec.rb'
- 'spec/requests/api/search_spec.rb'
- 'spec/requests/api/settings_spec.rb'
+ - 'spec/requests/api/snippets_spec.rb'
- 'spec/requests/api/tags_spec.rb'
- 'spec/requests/api/task_completion_status_spec.rb'
- 'spec/requests/api/templates_spec.rb'
@@ -3053,7 +2817,6 @@ RSpec/ContextWording:
- 'spec/requests/api/terraform/state_spec.rb'
- 'spec/requests/api/terraform/state_version_spec.rb'
- 'spec/requests/api/todos_spec.rb'
- - 'spec/requests/api/topics_spec.rb'
- 'spec/requests/api/usage_data_spec.rb'
- 'spec/requests/api/user_counts_spec.rb'
- 'spec/requests/api/users_preferences_spec.rb'
@@ -3073,24 +2836,26 @@ RSpec/ContextWording:
- 'spec/requests/health_controller_spec.rb'
- 'spec/requests/ide_controller_spec.rb'
- 'spec/requests/jira_connect/installations_controller_spec.rb'
+ - 'spec/requests/jira_connect/oauth_application_ids_controller_spec.rb'
- 'spec/requests/jira_routing_spec.rb'
- 'spec/requests/jwt_controller_spec.rb'
- 'spec/requests/lfs_http_spec.rb'
+ - 'spec/requests/mailgun/webhooks_controller_spec.rb'
- 'spec/requests/oauth_tokens_spec.rb'
- 'spec/requests/openid_connect_spec.rb'
- 'spec/requests/product_analytics/collector_app_attack_spec.rb'
- 'spec/requests/product_analytics/collector_app_spec.rb'
- 'spec/requests/projects/clusters/integrations_controller_spec.rb'
- 'spec/requests/projects/commits_controller_spec.rb'
+ - 'spec/requests/projects/google_cloud/configuration_controller_spec.rb'
+ - 'spec/requests/projects/google_cloud/databases_controller_spec.rb'
- 'spec/requests/projects/google_cloud/deployments_controller_spec.rb'
- 'spec/requests/projects/google_cloud/gcp_regions_controller_spec.rb'
- 'spec/requests/projects/google_cloud/service_accounts_controller_spec.rb'
- - 'spec/requests/projects/google_cloud_controller_spec.rb'
- 'spec/requests/projects/issues/discussions_spec.rb'
- 'spec/requests/projects/issues_controller_spec.rb'
- 'spec/requests/projects/merge_requests_controller_spec.rb'
- 'spec/requests/projects/merge_requests_discussions_spec.rb'
- - 'spec/requests/projects/merge_requests_spec.rb'
- 'spec/requests/projects/metrics/dashboards/builder_spec.rb'
- 'spec/requests/projects/releases_controller_spec.rb'
- 'spec/requests/projects/settings/access_tokens_controller_spec.rb'
@@ -3098,13 +2863,11 @@ RSpec/ContextWording:
- 'spec/requests/projects/usage_quotas_spec.rb'
- 'spec/requests/projects_controller_spec.rb'
- 'spec/requests/rack_attack_global_spec.rb'
- - 'spec/requests/search_controller_spec.rb'
- 'spec/requests/sessions_spec.rb'
- 'spec/requests/users_controller_spec.rb'
- 'spec/routing/git_http_routing_spec.rb'
- 'spec/routing/group_routing_spec.rb'
- 'spec/routing/project_routing_spec.rb'
- - 'spec/rubocop/cop/gitlab/avoid_feature_category_not_owned_spec.rb'
- 'spec/rubocop/cop/gitlab/change_timezone_spec.rb'
- 'spec/rubocop/cop/gitlab/const_get_inherit_false_spec.rb'
- 'spec/rubocop/cop/gitlab/duplicate_spec_location_spec.rb'
@@ -3127,45 +2890,31 @@ RSpec/ContextWording:
- 'spec/rubocop/cop/migration/update_column_in_batches_spec.rb'
- 'spec/rubocop/cop/migration/versioned_migration_class_spec.rb'
- 'spec/rubocop/cop/performance/ar_exists_and_present_blank_spec.rb'
- - 'spec/rubocop/cop/performance/readlines_each_spec.rb'
- 'spec/rubocop/cop/qa/ambiguous_page_object_name_spec.rb'
- 'spec/rubocop/cop/qa/element_with_pattern_spec.rb'
- 'spec/rubocop/cop/qa/selector_usage_spec.rb'
- 'spec/rubocop/cop/rspec/factory_bot/inline_association_spec.rb'
- 'spec/scripts/pipeline_test_report_builder_spec.rb'
- 'spec/serializers/analytics_build_entity_spec.rb'
- - 'spec/serializers/blob_entity_spec.rb'
- 'spec/serializers/board_serializer_spec.rb'
- - 'spec/serializers/ci/job_serializer_spec.rb'
- 'spec/serializers/ci/pipeline_entity_spec.rb'
- 'spec/serializers/cluster_application_entity_spec.rb'
- - 'spec/serializers/cluster_entity_spec.rb'
- - 'spec/serializers/context_commits_diff_entity_spec.rb'
+ - 'spec/serializers/deploy_keys/basic_deploy_key_entity_spec.rb'
- 'spec/serializers/diff_file_base_entity_spec.rb'
- 'spec/serializers/diff_file_entity_spec.rb'
- - 'spec/serializers/diff_file_metadata_entity_spec.rb'
- 'spec/serializers/diffs_entity_spec.rb'
- - 'spec/serializers/diffs_metadata_entity_spec.rb'
- 'spec/serializers/environment_entity_spec.rb'
- 'spec/serializers/environment_serializer_spec.rb'
- 'spec/serializers/group_child_entity_spec.rb'
- - 'spec/serializers/group_child_serializer_spec.rb'
- 'spec/serializers/group_link/group_group_link_entity_spec.rb'
- - 'spec/serializers/integrations/project_entity_spec.rb'
- 'spec/serializers/issue_serializer_spec.rb'
- - 'spec/serializers/issue_sidebar_basic_entity_spec.rb'
- 'spec/serializers/member_entity_spec.rb'
- 'spec/serializers/member_serializer_spec.rb'
- - 'spec/serializers/merge_request_current_user_entity_spec.rb'
- 'spec/serializers/merge_request_diff_entity_spec.rb'
- - 'spec/serializers/merge_request_for_pipeline_entity_spec.rb'
- 'spec/serializers/merge_request_serializer_spec.rb'
- 'spec/serializers/merge_request_user_entity_spec.rb'
- - 'spec/serializers/merge_request_widget_commit_entity_spec.rb'
- - 'spec/serializers/merge_request_widget_entity_spec.rb'
- 'spec/serializers/paginated_diff_entity_spec.rb'
- 'spec/serializers/pipeline_details_entity_spec.rb'
- - 'spec/serializers/stage_entity_spec.rb'
- 'spec/serializers/user_serializer_spec.rb'
- 'spec/services/access_token_validation_service_spec.rb'
- 'spec/services/alert_management/alerts/update_service_spec.rb'
@@ -3178,7 +2927,6 @@ RSpec/ContextWording:
- 'spec/services/auto_merge/merge_when_pipeline_succeeds_service_spec.rb'
- 'spec/services/boards/issues/list_service_spec.rb'
- 'spec/services/boards/issues/move_service_spec.rb'
- - 'spec/services/boards/lists/update_service_spec.rb'
- 'spec/services/branches/delete_merged_service_spec.rb'
- 'spec/services/branches/validate_new_service_spec.rb'
- 'spec/services/bulk_create_integration_service_spec.rb'
@@ -3186,7 +2934,6 @@ RSpec/ContextWording:
- 'spec/services/ci/after_requeue_job_service_spec.rb'
- 'spec/services/ci/append_build_trace_service_spec.rb'
- 'spec/services/ci/archive_trace_service_spec.rb'
- - 'spec/services/ci/build_report_result_service_spec.rb'
- 'spec/services/ci/compare_test_reports_service_spec.rb'
- 'spec/services/ci/create_downstream_pipeline_service_spec.rb'
- 'spec/services/ci/create_pipeline_service/cache_spec.rb'
@@ -3209,14 +2956,11 @@ RSpec/ContextWording:
- 'spec/services/ci/job_artifacts/update_unknown_locked_status_service_spec.rb'
- 'spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb'
- 'spec/services/ci/pipelines/add_job_service_spec.rb'
- - 'spec/services/ci/play_build_service_spec.rb'
- 'spec/services/ci/prepare_build_service_spec.rb'
- - 'spec/services/ci/process_sync_events_service_spec.rb'
- 'spec/services/ci/prometheus_metrics/observe_histograms_service_spec.rb'
- 'spec/services/ci/register_job_service_spec.rb'
- 'spec/services/ci/retry_job_service_spec.rb'
- - 'spec/services/ci/stuck_builds/drop_pending_service_spec.rb'
- - 'spec/services/ci/stuck_builds/drop_scheduled_service_spec.rb'
+ - 'spec/services/ci/runners/reconcile_existing_runner_versions_service_spec.rb'
- 'spec/services/ci/update_build_queue_service_spec.rb'
- 'spec/services/ci/update_pending_build_service_spec.rb'
- 'spec/services/clusters/agent_tokens/track_usage_service_spec.rb'
@@ -3253,18 +2997,16 @@ RSpec/ContextWording:
- 'spec/services/dependency_proxy/find_cached_manifest_service_spec.rb'
- 'spec/services/dependency_proxy/head_manifest_service_spec.rb'
- 'spec/services/dependency_proxy/request_token_service_spec.rb'
- - 'spec/services/deployments/older_deployments_drop_service_spec.rb'
- 'spec/services/deployments/update_environment_service_spec.rb'
- 'spec/services/design_management/delete_designs_service_spec.rb'
- 'spec/services/design_management/generate_image_versions_service_spec.rb'
- 'spec/services/design_management/move_designs_service_spec.rb'
- 'spec/services/discussions/capture_diff_note_position_service_spec.rb'
- - 'spec/services/discussions/capture_diff_note_positions_service_spec.rb'
- - 'spec/services/discussions/resolve_service_spec.rb'
- 'spec/services/draft_notes/create_service_spec.rb'
- 'spec/services/draft_notes/destroy_service_spec.rb'
- 'spec/services/draft_notes/publish_service_spec.rb'
- 'spec/services/environments/schedule_to_delete_review_apps_service_spec.rb'
+ - 'spec/services/environments/stop_service_spec.rb'
- 'spec/services/error_tracking/collect_error_service_spec.rb'
- 'spec/services/error_tracking/list_issues_service_spec.rb'
- 'spec/services/error_tracking/list_projects_service_spec.rb'
@@ -3295,12 +3037,13 @@ RSpec/ContextWording:
- 'spec/services/ide/schemas_config_service_spec.rb'
- 'spec/services/ide/terminal_config_service_spec.rb'
- 'spec/services/import/bitbucket_server_service_spec.rb'
+ - 'spec/services/import/fogbugz_service_spec.rb'
- 'spec/services/import/github_service_spec.rb'
- 'spec/services/import/gitlab_projects/file_acquisition_strategies/remote_file_s3_spec.rb'
- 'spec/services/import/gitlab_projects/file_acquisition_strategies/remote_file_spec.rb'
- 'spec/services/incident_management/incidents/create_service_spec.rb'
- 'spec/services/incident_management/issuable_escalation_statuses/create_service_spec.rb'
- - 'spec/services/integrations/propagate_service_spec.rb'
+ - 'spec/services/incident_management/timeline_events/destroy_service_spec.rb'
- 'spec/services/integrations/test/project_service_spec.rb'
- 'spec/services/issuable/common_system_notes_service_spec.rb'
- 'spec/services/issue_links/list_service_spec.rb'
@@ -3317,17 +3060,17 @@ RSpec/ContextWording:
- 'spec/services/issues/set_crm_contacts_service_spec.rb'
- 'spec/services/issues/update_service_spec.rb'
- 'spec/services/issues/zoom_link_service_spec.rb'
- - 'spec/services/jira_connect_installations/destroy_service_spec.rb'
- 'spec/services/jira_connect_subscriptions/create_service_spec.rb'
- 'spec/services/keys/create_service_spec.rb'
- 'spec/services/keys/expiry_notification_service_spec.rb'
- - 'spec/services/labels/create_service_spec.rb'
- - 'spec/services/lfs/file_transformer_spec.rb'
- 'spec/services/lfs/locks_finder_service_spec.rb'
- 'spec/services/lfs/push_service_spec.rb'
- 'spec/services/lfs/unlock_file_service_spec.rb'
- 'spec/services/members/approve_access_request_service_spec.rb'
- 'spec/services/members/destroy_service_spec.rb'
+ - 'spec/services/members/groups/creator_service_spec.rb'
+ - 'spec/services/members/projects/creator_service_spec.rb'
+ - 'spec/services/members/update_service_spec.rb'
- 'spec/services/merge_requests/add_todo_when_build_fails_service_spec.rb'
- 'spec/services/merge_requests/after_create_service_spec.rb'
- 'spec/services/merge_requests/approval_service_spec.rb'
@@ -3351,7 +3094,6 @@ RSpec/ContextWording:
- 'spec/services/merge_requests/refresh_service_spec.rb'
- 'spec/services/merge_requests/reload_diffs_service_spec.rb'
- 'spec/services/merge_requests/reopen_service_spec.rb'
- - 'spec/services/merge_requests/retarget_chain_service_spec.rb'
- 'spec/services/merge_requests/squash_service_spec.rb'
- 'spec/services/merge_requests/toggle_attention_requested_service_spec.rb'
- 'spec/services/merge_requests/update_assignees_service_spec.rb'
@@ -3379,7 +3121,6 @@ RSpec/ContextWording:
- 'spec/services/milestones/promote_service_spec.rb'
- 'spec/services/milestones/update_service_spec.rb'
- 'spec/services/namespace_settings/update_service_spec.rb'
- - 'spec/services/namespaces/in_product_marketing_emails_service_spec.rb'
- 'spec/services/note_summary_spec.rb'
- 'spec/services/notes/build_service_spec.rb'
- 'spec/services/notes/copy_service_spec.rb'
@@ -3388,8 +3129,8 @@ RSpec/ContextWording:
- 'spec/services/notes/quick_actions_service_spec.rb'
- 'spec/services/notes/update_service_spec.rb'
- 'spec/services/notification_recipients/builder/default_spec.rb'
- - 'spec/services/notification_recipients/builder/new_note_spec.rb'
- 'spec/services/notification_service_spec.rb'
+ - 'spec/services/packages/cleanup/execute_policy_service_spec.rb'
- 'spec/services/packages/composer/create_package_service_spec.rb'
- 'spec/services/packages/conan/create_package_file_service_spec.rb'
- 'spec/services/packages/conan/create_package_service_spec.rb'
@@ -3404,7 +3145,6 @@ RSpec/ContextWording:
- 'spec/services/packages/helm/process_file_service_spec.rb'
- 'spec/services/packages/maven/create_package_service_spec.rb'
- 'spec/services/packages/maven/find_or_create_package_service_spec.rb'
- - 'spec/services/packages/maven/metadata/create_plugins_xml_service_spec.rb'
- 'spec/services/packages/maven/metadata/create_versions_xml_service_spec.rb'
- 'spec/services/packages/maven/metadata/sync_service_spec.rb'
- 'spec/services/packages/npm/create_package_service_spec.rb'
@@ -3450,7 +3190,6 @@ RSpec/ContextWording:
- 'spec/services/projects/record_target_platforms_service_spec.rb'
- 'spec/services/projects/transfer_service_spec.rb'
- 'spec/services/projects/unlink_fork_service_spec.rb'
- - 'spec/services/projects/update_pages_service_spec.rb'
- 'spec/services/projects/update_remote_mirror_service_spec.rb'
- 'spec/services/projects/update_repository_storage_service_spec.rb'
- 'spec/services/projects/update_service_spec.rb'
@@ -3458,7 +3197,6 @@ RSpec/ContextWording:
- 'spec/services/prometheus/proxy_variable_substitution_service_spec.rb'
- 'spec/services/protected_tags/create_service_spec.rb'
- 'spec/services/quick_actions/interpret_service_spec.rb'
- - 'spec/services/quick_actions/target_service_spec.rb'
- 'spec/services/releases/create_service_spec.rb'
- 'spec/services/releases/update_service_spec.rb'
- 'spec/services/repositories/destroy_service_spec.rb'
@@ -3486,12 +3224,13 @@ RSpec/ContextWording:
- 'spec/services/system_notes/merge_requests_service_spec.rb'
- 'spec/services/tasks_to_be_done/base_service_spec.rb'
- 'spec/services/terraform/remote_state_handler_spec.rb'
+ - 'spec/services/terraform/states/destroy_service_spec.rb'
+ - 'spec/services/terraform/states/trigger_destroy_service_spec.rb'
- 'spec/services/test_hooks/project_service_spec.rb'
- 'spec/services/test_hooks/system_service_spec.rb'
- 'spec/services/todo_service_spec.rb'
- 'spec/services/todos/destroy/entity_leave_service_spec.rb'
- 'spec/services/two_factor/destroy_service_spec.rb'
- - 'spec/services/upload_service_spec.rb'
- 'spec/services/user_preferences/update_service_spec.rb'
- 'spec/services/users/activity_service_spec.rb'
- 'spec/services/users/approve_service_spec.rb'
@@ -3514,10 +3253,9 @@ RSpec/ContextWording:
- 'spec/services/wiki_pages/event_create_service_spec.rb'
- 'spec/services/wikis/create_attachment_service_spec.rb'
- 'spec/services/work_items/create_service_spec.rb'
- - 'spec/services/x509_certificate_revoke_service_spec.rb'
+ - 'spec/services/work_items/parent_links/create_service_spec.rb'
- 'spec/support/banzai/reference_filter_shared_examples.rb'
- 'spec/support/prometheus/additional_metrics_shared_examples.rb'
- - 'spec/support/redis/redis_new_instance_shared_examples.rb'
- 'spec/support/redis/redis_shared_examples.rb'
- 'spec/support/services/clusters/create_service_shared.rb'
- 'spec/support/services/deploy_token_shared_examples.rb'
@@ -3546,6 +3284,7 @@ RSpec/ContextWording:
- 'spec/support/shared_contexts/finders/merge_requests_finder_shared_contexts.rb'
- 'spec/support/shared_contexts/finders/packages/npm/package_finder_shared_context.rb'
- 'spec/support/shared_contexts/finders/users_finder_shared_contexts.rb'
+ - 'spec/support/shared_contexts/finders/work_items_finder_shared_contexts.rb'
- 'spec/support/shared_contexts/fixtures/analytics_shared_context.rb'
- 'spec/support/shared_contexts/graphql/requests/packages_shared_context.rb'
- 'spec/support/shared_contexts/graphql/resolvers/runners_resolver_shared_context.rb'
@@ -3569,6 +3308,7 @@ RSpec/ContextWording:
- 'spec/support/shared_contexts/policies/group_policy_shared_context.rb'
- 'spec/support/shared_contexts/policies/project_policy_shared_context.rb'
- 'spec/support/shared_contexts/policies/project_policy_table_shared_context.rb'
+ - 'spec/support/shared_contexts/project_features_shared_context.rb'
- 'spec/support/shared_contexts/prometheus/alert_shared_context.rb'
- 'spec/support/shared_contexts/rack_attack_shared_context.rb'
- 'spec/support/shared_contexts/read_ci_configuration_shared_context.rb'
@@ -3592,18 +3332,14 @@ RSpec/ContextWording:
- 'spec/support/shared_contexts/unique_ip_check_shared_context.rb'
- 'spec/support/shared_contexts/upload_type_check_shared_context.rb'
- 'spec/support/shared_contexts/url_shared_context.rb'
- - 'spec/support/shared_examples/banzai/filters/inline_embeds_shared_examples.rb'
- 'spec/support/shared_examples/banzai/filters/inline_metrics_redactor_shared_examples.rb'
- 'spec/support/shared_examples/boards/multiple_issue_boards_shared_examples.rb'
- 'spec/support/shared_examples/controllers/clusters_controller_shared_examples.rb'
- 'spec/support/shared_examples/controllers/githubish_import_controller_shared_examples.rb'
- 'spec/support/shared_examples/controllers/hotlink_interceptor_shared_examples.rb'
- 'spec/support/shared_examples/controllers/issuables_list_metadata_shared_examples.rb'
- - 'spec/support/shared_examples/controllers/milestone_tabs_shared_examples.rb'
- - 'spec/support/shared_examples/controllers/repository_lfs_file_load_shared_examples.rb'
- 'spec/support/shared_examples/controllers/snippet_blob_shared_examples.rb'
- 'spec/support/shared_examples/controllers/uploads_actions_shared_examples.rb'
- - 'spec/support/shared_examples/controllers/variables_shared_examples.rb'
- 'spec/support/shared_examples/controllers/wiki_actions_shared_examples.rb'
- 'spec/support/shared_examples/csp.rb'
- 'spec/support/shared_examples/features/access_tokens_shared_examples.rb'
@@ -3622,6 +3358,7 @@ RSpec/ContextWording:
- 'spec/support/shared_examples/features/wiki/user_views_wiki_page_shared_examples.rb'
- 'spec/support/shared_examples/features/wiki/user_views_wiki_pages_shared_examples.rb'
- 'spec/support/shared_examples/finders/assignees_filter_shared_examples.rb'
+ - 'spec/support/shared_examples/finders/issues_finder_shared_examples.rb'
- 'spec/support/shared_examples/finders/packages/debian/distributions_finder_shared_examples.rb'
- 'spec/support/shared_examples/finders/packages_shared_examples.rb'
- 'spec/support/shared_examples/finders/snippet_visibility_shared_examples.rb'
@@ -3632,14 +3369,13 @@ RSpec/ContextWording:
- 'spec/support/shared_examples/graphql/notes_on_noteables_shared_examples.rb'
- 'spec/support/shared_examples/graphql/resolvers/packages_resolvers_shared_examples.rb'
- 'spec/support/shared_examples/graphql/resolves_issuable_shared_examples.rb'
- - 'spec/support/shared_examples/graphql/spam_protection_shared_examples.rb'
+ - 'spec/support/shared_examples/graphql/sorted_paginated_query_shared_examples.rb'
- 'spec/support/shared_examples/helm_commands_shared_examples.rb'
- 'spec/support/shared_examples/helpers/issuable_description_templates_shared_examples.rb'
- 'spec/support/shared_examples/lib/api/internal_base_shared_examples.rb'
- 'spec/support/shared_examples/lib/cache_helpers_shared_examples.rb'
- 'spec/support/shared_examples/lib/gitlab/ci/ci_trace_shared_examples.rb'
- - 'spec/support/shared_examples/lib/gitlab/config/inheritable_shared_examples.rb'
- - 'spec/support/shared_examples/lib/gitlab/import_export/relation_factory_shared_examples.rb'
+ - 'spec/support/shared_examples/lib/gitlab/database/reestablished_connection_stack_shared_examples.rb'
- 'spec/support/shared_examples/lib/gitlab/middleware/multipart_shared_examples.rb'
- 'spec/support/shared_examples/lib/gitlab/middleware/read_only_gitlab_instance_shared_examples.rb'
- 'spec/support/shared_examples/lib/gitlab/search_confidential_filter_shared_examples.rb'
@@ -3663,6 +3399,7 @@ RSpec/ContextWording:
- 'spec/support/shared_examples/models/cycle_analytics_stage_shared_examples.rb'
- 'spec/support/shared_examples/models/diff_positionable_note_shared_examples.rb'
- 'spec/support/shared_examples/models/integrations/base_slash_commands_shared_examples.rb'
+ - 'spec/support/shared_examples/models/members_notifications_shared_example.rb'
- 'spec/support/shared_examples/models/mentionable_shared_examples.rb'
- 'spec/support/shared_examples/models/packages/debian/component_file_shared_example.rb'
- 'spec/support/shared_examples/models/project_latest_successful_build_for_shared_examples.rb'
@@ -3680,7 +3417,6 @@ RSpec/ContextWording:
- 'spec/support/shared_examples/requests/api/composer_packages_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/conan_packages_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/container_repositories_shared_examples.rb'
- - 'spec/support/shared_examples/requests/api/debian_common_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/debian_packages_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/discussions_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/graphql/mutations/boards/update_list_shared_examples.rb'
@@ -3688,6 +3424,7 @@ RSpec/ContextWording:
- 'spec/support/shared_examples/requests/api/graphql/packages/group_and_project_packages_list_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/graphql/read_only_instance_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/helm_packages_shared_examples.rb'
+ - 'spec/support/shared_examples/requests/api/hooks_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/issues_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/multiple_and_scoped_issue_boards_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/notes_shared_examples.rb'
@@ -3696,17 +3433,12 @@ RSpec/ContextWording:
- 'spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/packages_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/pypi_packages_shared_examples.rb'
- - 'spec/support/shared_examples/requests/api/read_user_shared_examples.rb'
- 'spec/support/shared_examples/requests/api/repositories_shared_context.rb'
- 'spec/support/shared_examples/requests/api/repository_storage_moves_shared_examples.rb'
- - 'spec/support/shared_examples/requests/api/rubygems_packages_shared_examples.rb'
- - 'spec/support/shared_examples/requests/api/status_shared_examples.rb'
- - 'spec/support/shared_examples/requests/api/terraform/modules/v1/packages_shared_examples.rb'
- 'spec/support/shared_examples/requests/clusters/certificate_based_clusters_feature_flag_shared_examples.rb'
- 'spec/support/shared_examples/requests/lfs_http_shared_examples.rb'
- 'spec/support/shared_examples/requests/releases_shared_examples.rb'
- 'spec/support/shared_examples/routing/git_http_routing_shared_examples.rb'
- - 'spec/support/shared_examples/sends_git_audit_streaming_event_shared_examples.rb'
- 'spec/support/shared_examples/serializers/diff_file_entity_shared_examples.rb'
- 'spec/support/shared_examples/serializers/note_entity_shared_examples.rb'
- 'spec/support/shared_examples/services/alert_management/alert_processing/alert_firing_shared_examples.rb'
@@ -3726,42 +3458,37 @@ RSpec/ContextWording:
- 'spec/support/shared_examples/services/repositories/housekeeping_shared_examples.rb'
- 'spec/support/shared_examples/services/schedule_bulk_repository_shard_moves_shared_examples.rb'
- 'spec/support/shared_examples/services/security/ci_configuration/create_service_shared_examples.rb'
- - 'spec/support/shared_examples/services/updating_mentions_shared_examples.rb'
- 'spec/support/shared_examples/services/wiki_pages/create_service_shared_examples.rb'
- 'spec/support/shared_examples/services/wiki_pages/update_service_shared_examples.rb'
- 'spec/support/shared_examples/services/wikis/create_attachment_service_shared_examples.rb'
- - 'spec/support/shared_examples/snippet_blob_shared_examples.rb'
- 'spec/support/shared_examples/uploaders/object_storage_shared_examples.rb'
- 'spec/support/shared_examples/validators/url_validator_shared_examples.rb'
- 'spec/support/shared_examples/views/pipeline_status_changes_email.rb'
+ - 'spec/support/shared_examples/workers/batched_background_migration_worker_shared_examples.rb'
- 'spec/support/shared_examples/workers/concerns/git_garbage_collect_methods_shared_examples.rb'
- 'spec/support/shared_examples/workers/project_export_shared_examples.rb'
- 'spec/support_specs/database/multiple_databases_spec.rb'
- 'spec/support_specs/helpers/migrations_helpers_spec.rb'
- 'spec/support_specs/helpers/stub_feature_flags_spec.rb'
+ - 'spec/support_specs/helpers/stub_method_calls_spec.rb'
- 'spec/tasks/cache/clear/redis_spec.rb'
- 'spec/tasks/dev_rake_spec.rb'
- 'spec/tasks/gettext_rake_spec.rb'
- - 'spec/tasks/gitlab/artifacts/migrate_rake_spec.rb'
- 'spec/tasks/gitlab/backup_rake_spec.rb'
- 'spec/tasks/gitlab/cleanup_rake_spec.rb'
+ - 'spec/tasks/gitlab/db/lock_writes_rake_spec.rb'
- 'spec/tasks/gitlab/db/validate_config_rake_spec.rb'
- 'spec/tasks/gitlab/db_rake_spec.rb'
- 'spec/tasks/gitlab/dependency_proxy/migrate_rake_spec.rb'
- 'spec/tasks/gitlab/gitaly_rake_spec.rb'
- 'spec/tasks/gitlab/lfs/migrate_rake_spec.rb'
- 'spec/tasks/gitlab/packages/migrate_rake_spec.rb'
- - 'spec/tasks/gitlab/pages_rake_spec.rb'
- 'spec/tasks/gitlab/storage_rake_spec.rb'
- 'spec/tasks/gitlab/task_helpers_spec.rb'
- 'spec/tasks/gitlab/terraform/migrate_rake_spec.rb'
- - 'spec/tasks/gitlab/uploads/migrate_rake_spec.rb'
- - 'spec/tasks/gitlab/user_management_rake_spec.rb'
- 'spec/tasks/gitlab/workhorse_rake_spec.rb'
- - 'spec/tooling/danger/feature_flag_spec.rb'
- 'spec/tooling/danger/project_helper_spec.rb'
- 'spec/tooling/lib/tooling/parallel_rspec_runner_spec.rb'
- - 'spec/tooling/rspec_flaky/listener_spec.rb'
- 'spec/uploaders/attachment_uploader_spec.rb'
- 'spec/uploaders/avatar_uploader_spec.rb'
- 'spec/uploaders/content_type_whitelist_spec.rb'
@@ -3782,7 +3509,6 @@ RSpec/ContextWording:
- 'spec/uploaders/packages/package_file_uploader_spec.rb'
- 'spec/uploaders/personal_file_uploader_spec.rb'
- 'spec/uploaders/terraform/state_uploader_spec.rb'
- - 'spec/uploaders/workers/object_storage/background_move_worker_spec.rb'
- 'spec/uploaders/workers/object_storage/migrate_uploads_worker_spec.rb'
- 'spec/validators/addressable_url_validator_spec.rb'
- 'spec/validators/array_members_validator_spec.rb'
@@ -3817,15 +3543,13 @@ RSpec/ContextWording:
- 'spec/views/projects/hooks/edit.html.haml_spec.rb'
- 'spec/views/projects/hooks/index.html.haml_spec.rb'
- 'spec/views/projects/pipeline_schedules/_pipeline_schedule.html.haml_spec.rb'
+ - 'spec/views/projects/settings/integrations/edit.html.haml_spec.rb'
- 'spec/views/projects/settings/operations/show.html.haml_spec.rb'
- 'spec/views/projects/tags/index.html.haml_spec.rb'
- - 'spec/views/projects/tree/show.html.haml_spec.rb'
- 'spec/views/search/_results.html.haml_spec.rb'
- 'spec/views/search/show.html.haml_spec.rb'
- - 'spec/views/shared/access_tokens/_table.html.haml_spec.rb'
- 'spec/views/shared/issuable/_sidebar.html.haml_spec.rb'
- 'spec/views/shared/milestones/_issuable.html.haml_spec.rb'
- - 'spec/views/shared/projects/_list.html.haml_spec.rb'
- 'spec/views/shared/snippets/_snippet.html.haml_spec.rb'
- 'spec/views/shared/wikis/_sidebar.html.haml_spec.rb'
- 'spec/workers/admin_email_worker_spec.rb'
@@ -3834,12 +3558,12 @@ RSpec/ContextWording:
- 'spec/workers/authorized_project_update/project_recalculate_per_user_worker_spec.rb'
- 'spec/workers/authorized_project_update/project_recalculate_worker_spec.rb'
- 'spec/workers/authorized_project_update/user_refresh_over_user_range_worker_spec.rb'
- - 'spec/workers/bulk_imports/entity_worker_spec.rb'
- 'spec/workers/ci/build_prepare_worker_spec.rb'
- 'spec/workers/cleanup_container_repository_worker_spec.rb'
- 'spec/workers/cluster_update_app_worker_spec.rb'
- 'spec/workers/clusters/agents/delete_expired_events_worker_spec.rb'
- 'spec/workers/concerns/application_worker_spec.rb'
+ - 'spec/workers/concerns/waitable_worker_spec.rb'
- 'spec/workers/container_expiration_policies/cleanup_container_repository_worker_spec.rb'
- 'spec/workers/container_expiration_policy_worker_spec.rb'
- 'spec/workers/container_registry/migration/enqueuer_worker_spec.rb'
@@ -3852,6 +3576,7 @@ RSpec/ContextWording:
- 'spec/workers/deployments/update_environment_worker_spec.rb'
- 'spec/workers/design_management/new_version_worker_spec.rb'
- 'spec/workers/every_sidekiq_worker_spec.rb'
+ - 'spec/workers/gitlab_service_ping_worker_spec.rb'
- 'spec/workers/group_import_worker_spec.rb'
- 'spec/workers/incident_management/process_alert_worker_v2_spec.rb'
- 'spec/workers/integrations/create_external_cross_reference_worker_spec.rb'
@@ -3868,11 +3593,11 @@ RSpec/ContextWording:
- 'spec/workers/project_export_worker_spec.rb'
- 'spec/workers/projects/git_garbage_collect_worker_spec.rb'
- 'spec/workers/projects/post_creation_worker_spec.rb'
- - 'spec/workers/projects/refresh_build_artifacts_size_statistics_worker_spec.rb'
- 'spec/workers/purge_dependency_proxy_cache_worker_spec.rb'
- 'spec/workers/remove_expired_group_links_worker_spec.rb'
- 'spec/workers/remove_expired_members_worker_spec.rb'
- 'spec/workers/remove_unaccepted_member_invites_worker_spec.rb'
- 'spec/workers/repository_fork_worker_spec.rb'
- 'spec/workers/stuck_merge_jobs_worker_spec.rb'
+ - 'spec/workers/terraform/states/destroy_worker_spec.rb'
- 'spec/workers/x509_issuer_crl_check_worker_spec.rb'
diff --git a/app/assets/javascripts/repository/constants.js b/app/assets/javascripts/repository/constants.js
index 0e80f306638..77d3a517d28 100644
--- a/app/assets/javascripts/repository/constants.js
+++ b/app/assets/javascripts/repository/constants.js
@@ -94,7 +94,6 @@ export const LFS_STORAGE = 'lfs';
*/
export const LEGACY_FILE_TYPES = [
'gemfile',
- 'gemspec',
'composer_json',
'podfile',
'podspec',
diff --git a/app/assets/javascripts/vue_shared/components/source_viewer/constants.js b/app/assets/javascripts/vue_shared/components/source_viewer/constants.js
index 3ac35abcf3a..cc930d67fa4 100644
--- a/app/assets/javascripts/vue_shared/components/source_viewer/constants.js
+++ b/app/assets/javascripts/vue_shared/components/source_viewer/constants.js
@@ -147,3 +147,4 @@ export const HLJS_COMMENT_SELECTOR = 'hljs-comment';
export const HLJS_ON_AFTER_HIGHLIGHT = 'after:highlight';
export const NPM_URL = 'https://npmjs.com/package';
+export const GEM_URL = 'https://rubygems.org/gems';
diff --git a/app/assets/javascripts/vue_shared/components/source_viewer/plugins/link_dependencies.js b/app/assets/javascripts/vue_shared/components/source_viewer/plugins/link_dependencies.js
index 5b7650c56ae..d957990fe7f 100644
--- a/app/assets/javascripts/vue_shared/components/source_viewer/plugins/link_dependencies.js
+++ b/app/assets/javascripts/vue_shared/components/source_viewer/plugins/link_dependencies.js
@@ -1,7 +1,9 @@
import packageJsonLinker from './utils/package_json_linker';
+import gemspecLinker from './utils/gemspec_linker';
const DEPENDENCY_LINKERS = {
package_json: packageJsonLinker,
+ gemspec: gemspecLinker,
};
/**
diff --git a/app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/dependency_linker_util.js b/app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/dependency_linker_util.js
index 56ad55ef553..0faf63db8a6 100644
--- a/app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/dependency_linker_util.js
+++ b/app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/dependency_linker_util.js
@@ -12,4 +12,5 @@ export const createLink = (href, innerText) => {
return link.outerHTML;
};
-export const generateHLJSOpenTag = (type) => `<span class="hljs-${escape(type)}">&quot;`;
+export const generateHLJSOpenTag = (type, delimiter = '&quot;') =>
+ `<span class="hljs-${escape(type)}">${delimiter}`;
diff --git a/app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/gemspec_linker.js b/app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/gemspec_linker.js
new file mode 100644
index 00000000000..35de8fd13d6
--- /dev/null
+++ b/app/assets/javascripts/vue_shared/components/source_viewer/plugins/utils/gemspec_linker.js
@@ -0,0 +1,39 @@
+import { joinPaths } from '~/lib/utils/url_utility';
+import { GEM_URL } from '../../constants';
+import { createLink, generateHLJSOpenTag } from './dependency_linker_util';
+
+const methodRegex = '.*add_dependency.*|.*add_runtime_dependency.*|.*add_development_dependency.*';
+const openTagRegex = generateHLJSOpenTag('string', '(&.*;)');
+const closeTagRegex = '&.*</span>';
+
+const DEPENDENCY_REGEX = new RegExp(
+ /*
+ * Detects gemspec dependencies inside of content that is highlighted by Highlight.js
+ * Example: s.add_dependency(<span class="hljs-string">&#x27;rugged&#x27;</span>, <span class="hljs-string">&#x27;~&gt; 0.24.0&#x27;</span>)
+ *
+ * Group 1 (method) : s.add_dependency(
+ * Group 2 (delimiter) : &#x27;
+ * Group 3 (packageName): rugged
+ * Group 4 (closeTag) : &#x27;</span>
+ * Group 5 (rest) : , <span class="hljs-string">&#x27;~&gt; 0.24.0&#x27;</span>)
+ */
+ `(${methodRegex})${openTagRegex}(.*)(${closeTagRegex})(.*${closeTagRegex})`,
+ 'gm',
+);
+
+const handleReplace = (method, delimiter, packageName, closeTag, rest) => {
+ // eslint-disable-next-line @gitlab/require-i18n-strings
+ const openTag = generateHLJSOpenTag('string linked', delimiter);
+ const href = joinPaths(GEM_URL, packageName);
+ const packageLink = createLink(href, packageName);
+
+ return `${method}${openTag}${packageLink}${closeTag}${rest}`;
+};
+
+export default (result) => {
+ return result.value.replace(
+ DEPENDENCY_REGEX,
+ (_, method, delimiter, packageName, closeTag, rest) =>
+ handleReplace(method, delimiter, packageName, closeTag, rest),
+ );
+};
diff --git a/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql b/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql
index 7f9aaf43068..0a406187a09 100644
--- a/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql
@@ -1,4 +1,4 @@
-#import "./work_item.fragment.graphql"
+#import "ee_else_ce/work_items/graphql/work_item.fragment.graphql"
mutation createWorkItem($input: WorkItemCreateInput!) {
workItemCreate(input: $input) {
diff --git a/app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql b/app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql
index ccfe62cc585..1f98cd4fa2b 100644
--- a/app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql
@@ -1,4 +1,4 @@
-#import "./work_item.fragment.graphql"
+#import "ee_else_ce/work_items/graphql/work_item.fragment.graphql"
mutation workItemCreateFromTask($input: WorkItemCreateFromTaskInput!) {
workItemCreateFromTask(input: $input) {
diff --git a/app/assets/javascripts/work_items/graphql/local_update_work_item.mutation.graphql b/app/assets/javascripts/work_items/graphql/local_update_work_item.mutation.graphql
index 43c92cf89ec..790b8e60b6a 100644
--- a/app/assets/javascripts/work_items/graphql/local_update_work_item.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/local_update_work_item.mutation.graphql
@@ -1,4 +1,4 @@
-#import "./work_item.fragment.graphql"
+#import "ee_else_ce/work_items/graphql/work_item.fragment.graphql"
mutation localUpdateWorkItem($input: LocalUpdateWorkItemInput) {
localUpdateWorkItem(input: $input) @client {
diff --git a/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql b/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql
index 25eb8099251..0a887fcfc00 100644
--- a/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql
@@ -1,4 +1,4 @@
-#import "./work_item.fragment.graphql"
+#import "ee_else_ce/work_items/graphql/work_item.fragment.graphql"
mutation workItemUpdate($input: WorkItemUpdateInput!) {
workItemUpdate(input: $input) {
diff --git a/app/assets/javascripts/work_items/graphql/update_work_item_task.mutation.graphql b/app/assets/javascripts/work_items/graphql/update_work_item_task.mutation.graphql
index ad861a60d15..fad5a9fa5bc 100644
--- a/app/assets/javascripts/work_items/graphql/update_work_item_task.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/update_work_item_task.mutation.graphql
@@ -1,4 +1,4 @@
-#import "./work_item.fragment.graphql"
+#import "ee_else_ce/work_items/graphql/work_item.fragment.graphql"
mutation workItemUpdateTask($input: WorkItemUpdateTaskInput!) {
workItemUpdate: workItemUpdateTask(input: $input) {
diff --git a/app/assets/javascripts/work_items/graphql/update_work_item_widgets.mutation.graphql b/app/assets/javascripts/work_items/graphql/update_work_item_widgets.mutation.graphql
index 148b340b439..6a94c96b347 100644
--- a/app/assets/javascripts/work_items/graphql/update_work_item_widgets.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/update_work_item_widgets.mutation.graphql
@@ -1,4 +1,4 @@
-#import "./work_item.fragment.graphql"
+#import "ee_else_ce/work_items/graphql/work_item.fragment.graphql"
mutation workItemUpdateWidgets($input: WorkItemUpdateWidgetsInput!) {
workItemUpdateWidgets(input: $input) {
diff --git a/app/assets/javascripts/work_items/graphql/work_item.fragment.graphql b/app/assets/javascripts/work_items/graphql/work_item.fragment.graphql
index abed1cb134e..7d08cbaca48 100644
--- a/app/assets/javascripts/work_items/graphql/work_item.fragment.graphql
+++ b/app/assets/javascripts/work_items/graphql/work_item.fragment.graphql
@@ -28,10 +28,6 @@ fragment WorkItem on WorkItem {
}
}
}
- ... on WorkItemWidgetWeight {
- type
- weight
- }
... on WorkItemWidgetHierarchy {
type
parent {
@@ -40,10 +36,8 @@ fragment WorkItem on WorkItem {
title
}
children {
- edges {
- node {
- id
- }
+ nodes {
+ id
}
}
}
diff --git a/app/assets/javascripts/work_items/graphql/work_item.query.graphql b/app/assets/javascripts/work_items/graphql/work_item.query.graphql
index 276061af193..a9f7b714551 100644
--- a/app/assets/javascripts/work_items/graphql/work_item.query.graphql
+++ b/app/assets/javascripts/work_items/graphql/work_item.query.graphql
@@ -1,5 +1,5 @@
#import "~/graphql_shared/fragments/label.fragment.graphql"
-#import "./work_item.fragment.graphql"
+#import "ee_else_ce/work_items/graphql/work_item.fragment.graphql"
query workItem($id: WorkItemID!) {
workItem(id: $id) {
diff --git a/app/controllers/import/bulk_imports_controller.rb b/app/controllers/import/bulk_imports_controller.rb
index 2d607fb7ff7..893c0b6ac54 100644
--- a/app/controllers/import/bulk_imports_controller.rb
+++ b/app/controllers/import/bulk_imports_controller.rb
@@ -47,7 +47,14 @@ class Import::BulkImportsController < ApplicationController
end
def create
- responses = create_params.map { |entry| ::BulkImports::CreateService.new(current_user, entry, credentials).execute }
+ responses = create_params.map do |entry|
+ if entry[:destination_name]
+ entry[:destination_slug] ||= entry[:destination_name]
+ entry.delete(:destination_name)
+ end
+
+ ::BulkImports::CreateService.new(current_user, entry, credentials).execute
+ end
render json: responses.map { |response| { success: response.success?, id: response.payload[:id], message: response.message } }
end
@@ -100,6 +107,7 @@ class Import::BulkImportsController < ApplicationController
source_type
source_full_path
destination_name
+ destination_slug
destination_namespace
]
end
diff --git a/app/graphql/types/ci/pipeline_type.rb b/app/graphql/types/ci/pipeline_type.rb
index 60418fec6c5..1a41ec13766 100644
--- a/app/graphql/types/ci/pipeline_type.rb
+++ b/app/graphql/types/ci/pipeline_type.rb
@@ -200,7 +200,7 @@ module Types
if id
pipeline.statuses.id_in(id.model_id)
else
- pipeline.statuses.by_name(name)
+ pipeline.latest_statuses.by_name(name)
end.take # rubocop: disable CodeReuse/ActiveRecord
end
diff --git a/app/models/bulk_imports/entity.rb b/app/models/bulk_imports/entity.rb
index cad2fafe640..69777f3a0bf 100644
--- a/app/models/bulk_imports/entity.rb
+++ b/app/models/bulk_imports/entity.rb
@@ -55,6 +55,8 @@ class BulkImports::Entity < ApplicationRecord
scope :by_bulk_import_id, ->(bulk_import_id) { where(bulk_import_id: bulk_import_id)}
scope :order_by_created_at, -> (direction) { order(created_at: direction) }
+ alias_attribute :destination_slug, :destination_name
+
state_machine :status, initial: :created do
state :created, value: 0
state :started, value: 1
diff --git a/app/models/environment.rb b/app/models/environment.rb
index 68540ce0f5c..f7becf1f700 100644
--- a/app/models/environment.rb
+++ b/app/models/environment.rb
@@ -56,8 +56,10 @@ class Environment < ApplicationRecord
validates :external_url,
length: { maximum: 255 },
- allow_nil: true,
- addressable_url: true
+ allow_nil: true
+
+ validates :external_url, addressable_url: true, allow_nil: true, unless: :soft_validation_on_external_url_enabled?
+ validate :safe_external_url, if: :soft_validation_on_external_url_enabled?
delegate :manual_actions, :other_manual_actions, to: :last_deployment, allow_nil: true
delegate :auto_rollback_enabled?, to: :project
@@ -493,6 +495,26 @@ class Environment < ApplicationRecord
private
+ def soft_validation_on_external_url_enabled?
+ ::Feature.enabled?(:soft_validation_on_external_url, project)
+ end
+
+ # We deliberately avoid using AddressableUrlValidator to allow users to update their environments even if they have
+ # misconfigured `environment:url` keyword. The external URL is presented as a clickable link on UI and not consumed
+ # in GitLab internally, thus we sanitize the URL before the persistence to make sure the rendered link is XSS safe.
+ # See https://gitlab.com/gitlab-org/gitlab/-/issues/337417
+ def safe_external_url
+ return unless self.external_url.present?
+
+ new_external_url = Addressable::URI.parse(self.external_url)
+
+ if Gitlab::Utils::SanitizeNodeLink::UNSAFE_PROTOCOLS.include?(new_external_url.normalized_scheme)
+ errors.add(:external_url, "#{new_external_url.normalized_scheme} scheme is not allowed")
+ end
+ rescue Addressable::URI::InvalidURIError
+ errors.add(:external_url, 'URI is invalid')
+ end
+
def rollout_status_available?
has_terminals?
end
diff --git a/app/models/members/group_member.rb b/app/models/members/group_member.rb
index 87af6a9a7f7..2b35f7da7b4 100644
--- a/app/models/members/group_member.rb
+++ b/app/models/members/group_member.rb
@@ -7,7 +7,6 @@ class GroupMember < Member
SOURCE_TYPE = 'Namespace'
SOURCE_TYPE_FORMAT = /\ANamespace\z/.freeze
- THRESHOLD_FOR_REFRESHING_AUTHORIZATIONS_VIA_PROJECTS = 1000
belongs_to :group, foreign_key: 'source_id'
alias_attribute :namespace_id, :source_id
@@ -67,28 +66,8 @@ class GroupMember < Member
# its projects are also destroyed, so the removal of project_authorizations
# will happen behind the scenes via DB foreign keys anyway.
return if destroyed_by_association.present?
- return unless user_id
- return super if Feature.disabled?(:refresh_authorizations_via_affected_projects_on_group_membership, group)
- # rubocop:disable CodeReuse/ServiceClass
- projects_to_refresh = Groups::ProjectsRequiringAuthorizationsRefresh::OnDirectMembershipFinder.new(group).execute
- threshold_exceeded = (projects_to_refresh.size > THRESHOLD_FOR_REFRESHING_AUTHORIZATIONS_VIA_PROJECTS)
-
- # We want to try the new approach only if the number of affected projects are greater than the set threshold.
- return super unless threshold_exceeded
-
- AuthorizedProjectUpdate::ProjectAccessChangedService
- .new(projects_to_refresh)
- .execute(blocking: false)
-
- # Until we compare the inconsistency rates of the new approach
- # the old approach, we still run AuthorizedProjectsWorker
- # but with some delay and lower urgency as a safety net.
- UserProjectAccessChangedService
- .new(user_id)
- .execute(blocking: false, priority: UserProjectAccessChangedService::LOW_PRIORITY)
-
- # rubocop:enable CodeReuse/ServiceClass
+ super
end
def send_invite
diff --git a/app/services/boards/destroy_service.rb b/app/services/boards/destroy_service.rb
index 0b1cd61b119..ceda005044e 100644
--- a/app/services/boards/destroy_service.rb
+++ b/app/services/boards/destroy_service.rb
@@ -3,10 +3,6 @@
module Boards
class DestroyService < Boards::BaseService
def execute(board)
- if boards.size == 1
- return ServiceResponse.error(message: "The board could not be deleted, because the parent doesn't have any other boards.")
- end
-
board.destroy!
ServiceResponse.success
diff --git a/app/services/bulk_imports/create_service.rb b/app/services/bulk_imports/create_service.rb
index cbf2b34b33c..31e1a822e78 100644
--- a/app/services/bulk_imports/create_service.rb
+++ b/app/services/bulk_imports/create_service.rb
@@ -64,7 +64,7 @@ module BulkImports
bulk_import: bulk_import,
source_type: entity[:source_type],
source_full_path: entity[:source_full_path],
- destination_name: entity[:destination_name],
+ destination_slug: entity[:destination_slug],
destination_namespace: entity[:destination_namespace]
)
end
diff --git a/config/feature_flags/development/refresh_authorizations_via_affected_projects_on_group_membership.yml b/config/feature_flags/development/soft_validation_on_external_url.yml
index 77b6b5a8a40..3df63a7bb96 100644
--- a/config/feature_flags/development/refresh_authorizations_via_affected_projects_on_group_membership.yml
+++ b/config/feature_flags/development/soft_validation_on_external_url.yml
@@ -1,8 +1,8 @@
---
-name: refresh_authorizations_via_affected_projects_on_group_membership
-introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/87071
-rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/362204
-milestone: '15.0'
+name: soft_validation_on_external_url
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/91970
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/367206
+milestone: '15.2'
type: development
-group: group::workspace
+group: group::release
default_enabled: false
diff --git a/doc/administration/incoming_email.md b/doc/administration/incoming_email.md
index 95301ec026a..9351a101ee4 100644
--- a/doc/administration/incoming_email.md
+++ b/doc/administration/incoming_email.md
@@ -75,11 +75,12 @@ Email is processed correctly when a configured email address is present in one o
(sorted in the order they are checked):
- `To`
-- `References`
- `Delivered-To`
- `Envelope-To` or `X-Envelope-To`
- `Received`
+The `References` header is also accepted, however it is used specifically to relate email responses to existing discussion threads. It is not used for creating issues by email.
+
In GitLab 14.6 and later, [Service Desk](../user/project/service_desk.md)
also checks accepted headers.
diff --git a/doc/api/bulk_imports.md b/doc/api/bulk_imports.md
index 8c5c4574206..913dc6ce4f1 100644
--- a/doc/api/bulk_imports.md
+++ b/doc/api/bulk_imports.md
@@ -27,7 +27,8 @@ POST /bulk_imports
| `entities` | Array | yes | List of entities to import. |
| `entities[source_type]` | String | yes | Source entity type (only `group_entity` is supported). |
| `entities[source_full_path]` | String | yes | Source full path of the entity to import. |
-| `entities[destination_name]` | String | yes | Destination slug for the entity. |
+| `entities[destination_name]` | String | yes | Deprecated: Use :destination_slug instead. Destination slug for the entity. |
+| `entities[destination_slug]` | String | yes | Destination slug for the entity. |
| `entities[destination_namespace]` | String | no | Destination namespace for the entity. |
```shell
@@ -41,7 +42,7 @@ curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitla
{
"source_full_path": "source/full/path",
"source_type": "group_entity",
- "destination_name": "destination_slug",
+ "destination_slug": "destination_slug",
"destination_namespace": "destination/namespace/path"
}
]
@@ -126,7 +127,7 @@ curl --request GET --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab
"bulk_import_id": 1,
"status": "finished",
"source_full_path": "source_group",
- "destination_name": "destination_slug",
+ "destination_slug": "destination_slug",
"destination_namespace": "destination_path",
"parent_id": null,
"namespace_id": 1,
@@ -140,7 +141,7 @@ curl --request GET --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab
"bulk_import_id": 2,
"status": "failed",
"source_full_path": "another_group",
- "destination_name": "another_slug",
+ "destination_slug": "another_slug",
"destination_namespace": "another_namespace",
"parent_id": null,
"namespace_id": null,
diff --git a/doc/api/graphql/reference/index.md b/doc/api/graphql/reference/index.md
index fbf6bc116f4..8451834da84 100644
--- a/doc/api/graphql/reference/index.md
+++ b/doc/api/graphql/reference/index.md
@@ -12662,9 +12662,11 @@ Represents the Geo sync and verification state of a group wiki repository.
| <a id="groupwikirepositoryregistryid"></a>`id` | [`ID!`](#id) | ID of the GroupWikiRepositoryRegistry. |
| <a id="groupwikirepositoryregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the GroupWikiRepositoryRegistry. |
| <a id="groupwikirepositoryregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the GroupWikiRepositoryRegistry. |
-| <a id="groupwikirepositoryregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the GroupWikiRepositoryRegistry should be resynced. |
+| <a id="groupwikirepositoryregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the GroupWikiRepositoryRegistry is resynced. |
| <a id="groupwikirepositoryregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the GroupWikiRepositoryRegistry. |
| <a id="groupwikirepositoryregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the GroupWikiRepositoryRegistry. |
+| <a id="groupwikirepositoryregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the GroupWikiRepositoryRegistry is reverified. |
+| <a id="groupwikirepositoryregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the GroupWikiRepositoryRegistry. |
### `HelmFileMetadata`
@@ -13111,9 +13113,11 @@ Represents the Geo replication and verification state of a job_artifact.
| <a id="jobartifactregistryid"></a>`id` | [`ID!`](#id) | ID of the JobArtifactRegistry. |
| <a id="jobartifactregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the JobArtifactRegistry. |
| <a id="jobartifactregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the JobArtifactRegistry. |
-| <a id="jobartifactregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the JobArtifactRegistry should be resynced. |
+| <a id="jobartifactregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the JobArtifactRegistry is resynced. |
| <a id="jobartifactregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the JobArtifactRegistry. |
| <a id="jobartifactregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the JobArtifactRegistry. |
+| <a id="jobartifactregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the JobArtifactRegistry is reverified. |
+| <a id="jobartifactregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the JobArtifactRegistry. |
### `JobPermissions`
@@ -13163,9 +13167,11 @@ Represents the Geo sync and verification state of an LFS object.
| <a id="lfsobjectregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the LfsObjectRegistry. |
| <a id="lfsobjectregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the LfsObjectRegistry. |
| <a id="lfsobjectregistrylfsobjectid"></a>`lfsObjectId` | [`ID!`](#id) | ID of the LFS object. |
-| <a id="lfsobjectregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the LfsObjectRegistry should be resynced. |
+| <a id="lfsobjectregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the LfsObjectRegistry is resynced. |
| <a id="lfsobjectregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the LfsObjectRegistry. |
| <a id="lfsobjectregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the LfsObjectRegistry. |
+| <a id="lfsobjectregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the LfsObjectRegistry is reverified. |
+| <a id="lfsobjectregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the LfsObjectRegistry. |
### `LicenseHistoryEntry`
@@ -13847,9 +13853,11 @@ Represents the Geo sync and verification state of a Merge Request diff.
| <a id="mergerequestdiffregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the MergeRequestDiffRegistry. |
| <a id="mergerequestdiffregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the MergeRequestDiffRegistry. |
| <a id="mergerequestdiffregistrymergerequestdiffid"></a>`mergeRequestDiffId` | [`ID!`](#id) | ID of the Merge Request diff. |
-| <a id="mergerequestdiffregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the MergeRequestDiffRegistry should be resynced. |
+| <a id="mergerequestdiffregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the MergeRequestDiffRegistry is resynced. |
| <a id="mergerequestdiffregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the MergeRequestDiffRegistry. |
| <a id="mergerequestdiffregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the MergeRequestDiffRegistry. |
+| <a id="mergerequestdiffregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the MergeRequestDiffRegistry is reverified. |
+| <a id="mergerequestdiffregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the MergeRequestDiffRegistry. |
### `MergeRequestParticipant`
@@ -14794,9 +14802,11 @@ Represents the Geo sync and verification state of a package file.
| <a id="packagefileregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the PackageFileRegistry. |
| <a id="packagefileregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the PackageFileRegistry. |
| <a id="packagefileregistrypackagefileid"></a>`packageFileId` | [`ID!`](#id) | ID of the PackageFile. |
-| <a id="packagefileregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the PackageFileRegistry should be resynced. |
+| <a id="packagefileregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the PackageFileRegistry is resynced. |
| <a id="packagefileregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the PackageFileRegistry. |
| <a id="packagefileregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the PackageFileRegistry. |
+| <a id="packagefileregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the PackageFileRegistry is reverified. |
+| <a id="packagefileregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the PackageFileRegistry. |
### `PackageHelmDependencyType`
@@ -14916,9 +14926,11 @@ Represents the Geo replication and verification state of a pages_deployment.
| <a id="pagesdeploymentregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the PagesDeploymentRegistry. |
| <a id="pagesdeploymentregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the PagesDeploymentRegistry. |
| <a id="pagesdeploymentregistrypagesdeploymentid"></a>`pagesDeploymentId` | [`ID!`](#id) | ID of the Pages Deployment. |
-| <a id="pagesdeploymentregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the PagesDeploymentRegistry should be resynced. |
+| <a id="pagesdeploymentregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the PagesDeploymentRegistry is resynced. |
| <a id="pagesdeploymentregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the PagesDeploymentRegistry. |
| <a id="pagesdeploymentregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the PagesDeploymentRegistry. |
+| <a id="pagesdeploymentregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the PagesDeploymentRegistry is reverified. |
+| <a id="pagesdeploymentregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the PagesDeploymentRegistry. |
### `PathLock`
@@ -15085,9 +15097,11 @@ Represents the Geo sync and verification state of a pipeline artifact.
| <a id="pipelineartifactregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the PipelineArtifactRegistry. |
| <a id="pipelineartifactregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the PipelineArtifactRegistry. |
| <a id="pipelineartifactregistrypipelineartifactid"></a>`pipelineArtifactId` | [`ID!`](#id) | ID of the pipeline artifact. |
-| <a id="pipelineartifactregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the PipelineArtifactRegistry should be resynced. |
+| <a id="pipelineartifactregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the PipelineArtifactRegistry is resynced. |
| <a id="pipelineartifactregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the PipelineArtifactRegistry. |
| <a id="pipelineartifactregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the PipelineArtifactRegistry. |
+| <a id="pipelineartifactregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the PipelineArtifactRegistry is reverified. |
+| <a id="pipelineartifactregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the PipelineArtifactRegistry. |
### `PipelineCounts`
@@ -17252,10 +17266,12 @@ Represents the Geo sync and verification state of a snippet repository.
| <a id="snippetrepositoryregistryid"></a>`id` | [`ID!`](#id) | ID of the SnippetRepositoryRegistry. |
| <a id="snippetrepositoryregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the SnippetRepositoryRegistry. |
| <a id="snippetrepositoryregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the SnippetRepositoryRegistry. |
-| <a id="snippetrepositoryregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the SnippetRepositoryRegistry should be resynced. |
+| <a id="snippetrepositoryregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the SnippetRepositoryRegistry is resynced. |
| <a id="snippetrepositoryregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the SnippetRepositoryRegistry. |
| <a id="snippetrepositoryregistrysnippetrepositoryid"></a>`snippetRepositoryId` | [`ID!`](#id) | ID of the Snippet Repository. |
| <a id="snippetrepositoryregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the SnippetRepositoryRegistry. |
+| <a id="snippetrepositoryregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the SnippetRepositoryRegistry is reverified. |
+| <a id="snippetrepositoryregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the SnippetRepositoryRegistry. |
### `StatusAction`
@@ -17354,10 +17370,12 @@ Represents the Geo sync and verification state of a terraform state version.
| <a id="terraformstateversionregistryid"></a>`id` | [`ID!`](#id) | ID of the TerraformStateVersionRegistry. |
| <a id="terraformstateversionregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the TerraformStateVersionRegistry. |
| <a id="terraformstateversionregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the TerraformStateVersionRegistry. |
-| <a id="terraformstateversionregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the TerraformStateVersionRegistry should be resynced. |
+| <a id="terraformstateversionregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the TerraformStateVersionRegistry is resynced. |
| <a id="terraformstateversionregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the TerraformStateVersionRegistry. |
| <a id="terraformstateversionregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the TerraformStateVersionRegistry. |
| <a id="terraformstateversionregistryterraformstateversionid"></a>`terraformStateVersionId` | [`ID!`](#id) | ID of the terraform state version. |
+| <a id="terraformstateversionregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the TerraformStateVersionRegistry is reverified. |
+| <a id="terraformstateversionregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the TerraformStateVersionRegistry. |
### `TestCase`
@@ -17618,9 +17636,11 @@ Represents the Geo replication and verification state of an upload.
| <a id="uploadregistryid"></a>`id` | [`ID!`](#id) | ID of the UploadRegistry. |
| <a id="uploadregistrylastsyncfailure"></a>`lastSyncFailure` | [`String`](#string) | Error message during sync of the UploadRegistry. |
| <a id="uploadregistrylastsyncedat"></a>`lastSyncedAt` | [`Time`](#time) | Timestamp of the most recent successful sync of the UploadRegistry. |
-| <a id="uploadregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the UploadRegistry should be resynced. |
+| <a id="uploadregistryretryat"></a>`retryAt` | [`Time`](#time) | Timestamp after which the UploadRegistry is resynced. |
| <a id="uploadregistryretrycount"></a>`retryCount` | [`Int`](#int) | Number of consecutive failed sync attempts of the UploadRegistry. |
| <a id="uploadregistrystate"></a>`state` | [`RegistryState`](#registrystate) | Sync state of the UploadRegistry. |
+| <a id="uploadregistryverificationretryat"></a>`verificationRetryAt` | [`Time`](#time) | Timestamp after which the UploadRegistry is reverified. |
+| <a id="uploadregistryverifiedat"></a>`verifiedAt` | [`Time`](#time) | Timestamp of the most recent successful verification of the UploadRegistry. |
### `UsageTrendsMeasurement`
diff --git a/doc/ci/environments/index.md b/doc/ci/environments/index.md
index 6ffa68e4873..6d8f655724d 100644
--- a/doc/ci/environments/index.md
+++ b/doc/ci/environments/index.md
@@ -374,6 +374,8 @@ To retry or rollback a deployment:
### Environment URL
+> [Fixed](https://gitlab.com/gitlab-org/gitlab/-/issues/337417) to persist arbitrary URLs in GitLab 15.2 [with a flag](../../administration/feature_flags.md) named `soft_validation_on_external_url`. Disabled by default.
+
The [environment URL](../yaml/index.md#environmenturl) is displayed in a few
places in GitLab:
diff --git a/lib/api/bulk_imports.rb b/lib/api/bulk_imports.rb
index b1cb84c97cb..bbc720150b9 100644
--- a/lib/api/bulk_imports.rb
+++ b/lib/api/bulk_imports.rb
@@ -47,11 +47,23 @@ module API
requires :source_type, type: String, desc: 'Source entity type (only `group_entity` is supported)',
values: %w[group_entity]
requires :source_full_path, type: String, desc: 'Source full path of the entity to import'
- requires :destination_name, type: String, desc: 'Destination slug for the entity'
requires :destination_namespace, type: String, desc: 'Destination namespace for the entity'
+ optional :destination_slug, type: String, desc: 'Destination slug for the entity'
+ optional :destination_name, type: String,
+ desc: 'Deprecated: Use :destination_slug instead. Destination slug for the entity'
+
+ mutually_exclusive :destination_slug, :destination_name
+ at_least_one_of :destination_slug, :destination_name
end
end
post do
+ params[:entities].each do |entity|
+ if entity[:destination_name]
+ entity[:destination_slug] ||= entity[:destination_name]
+ entity.delete(:destination_name)
+ end
+ end
+
response = ::BulkImports::CreateService.new(
current_user,
params[:entities],
diff --git a/lib/api/entities/bulk_imports/entity.rb b/lib/api/entities/bulk_imports/entity.rb
index e8c31256b17..142bfaf2149 100644
--- a/lib/api/entities/bulk_imports/entity.rb
+++ b/lib/api/entities/bulk_imports/entity.rb
@@ -8,7 +8,8 @@ module API
expose :bulk_import_id
expose :status_name, as: :status
expose :source_full_path
- expose :destination_name
+ expose :destination_name # deprecated
+ expose :destination_slug
expose :destination_namespace
expose :parent_id
expose :namespace_id
diff --git a/lib/bulk_imports/groups/transformers/group_attributes_transformer.rb b/lib/bulk_imports/groups/transformers/group_attributes_transformer.rb
index 3067e0997c2..d9efcdb1ba5 100644
--- a/lib/bulk_imports/groups/transformers/group_attributes_transformer.rb
+++ b/lib/bulk_imports/groups/transformers/group_attributes_transformer.rb
@@ -38,7 +38,7 @@ module BulkImports
end
def transform_path(import_entity, data)
- data['path'] = import_entity.destination_name.parameterize
+ data['path'] = import_entity.destination_slug.parameterize
data
end
diff --git a/lib/bulk_imports/projects/transformers/project_attributes_transformer.rb b/lib/bulk_imports/projects/transformers/project_attributes_transformer.rb
index 38730a7723b..205c3185f72 100644
--- a/lib/bulk_imports/projects/transformers/project_attributes_transformer.rb
+++ b/lib/bulk_imports/projects/transformers/project_attributes_transformer.rb
@@ -11,8 +11,8 @@ module BulkImports
entity = context.entity
visibility = data.delete('visibility')
- project[:name] = entity.destination_name
- project[:path] = entity.destination_name.parameterize
+ project[:name] = entity.destination_slug
+ project[:path] = entity.destination_slug.parameterize
project[:created_at] = data['created_at']
project[:import_type] = PROJECT_IMPORT_TYPE
project[:visibility_level] = Gitlab::VisibilityLevel.string_options[visibility] if visibility.present?
diff --git a/spec/controllers/admin/users_controller_spec.rb b/spec/controllers/admin/users_controller_spec.rb
index c46a12680a2..e9f0f0c2879 100644
--- a/spec/controllers/admin/users_controller_spec.rb
+++ b/spec/controllers/admin/users_controller_spec.rb
@@ -612,8 +612,8 @@ RSpec.describe Admin::UsersController do
end
context 'when the new password does not match the password confirmation' do
- let(:password) { 'some_password' }
- let(:password_confirmation) { 'not_same_as_password' }
+ let(:password) { User.random_password }
+ let(:password_confirmation) { User.random_password }
it 'shows the edit page again' do
update_password(user, password, password_confirmation)
diff --git a/spec/controllers/import/bulk_imports_controller_spec.rb b/spec/controllers/import/bulk_imports_controller_spec.rb
index 7177c8c10a6..3be12717664 100644
--- a/spec/controllers/import/bulk_imports_controller_spec.rb
+++ b/spec/controllers/import/bulk_imports_controller_spec.rb
@@ -245,11 +245,11 @@ RSpec.describe Import::BulkImportsController do
let(:bulk_import_params) do
[{ "source_type" => "group_entity",
"source_full_path" => "full_path",
- "destination_name" => "destination_name",
+ "destination_slug" => "destination_name",
"destination_namespace" => "root" },
{ "source_type" => "group_entity2",
"source_full_path" => "full_path2",
- "destination_name" => "destination_name2",
+ "destination_slug" => "destination_name2",
"destination_namespace" => "root" }]
end
@@ -258,7 +258,7 @@ RSpec.describe Import::BulkImportsController do
session[:bulk_import_gitlab_url] = instance_url
end
- it 'executes BulkImpors::CreateService' do
+ it 'executes BulkImports::CreateService' do
error_response = ServiceResponse.error(message: 'Record invalid', http_status: :unprocessable_entity)
expect_next_instance_of(
@@ -276,6 +276,38 @@ RSpec.describe Import::BulkImportsController do
expect(json_response).to eq([{ "success" => true, "id" => bulk_import.id, "message" => nil },
{ "success" => false, "id" => nil, "message" => "Record invalid" }])
end
+
+ context 'when entity destination_name is specified' do
+ let(:bulk_import_params) do
+ [
+ {
+ "source_type" => "group_entity",
+ "source_full_path" => "full_path",
+ "destination_name" => "destination_name",
+ "destination_namespace" => "root"
+ }
+ ]
+ end
+
+ it 'replaces destination_name with destination_slug and executes BulkImports::CreateService' do
+ entity = {
+ "source_type" => "group_entity",
+ "source_full_path" => "full_path",
+ "destination_slug" => "destination_name",
+ "destination_namespace" => "root"
+ }
+
+ expect_next_instance_of(
+ ::BulkImports::CreateService, user, entity, { url: instance_url, access_token: pat }) do |service|
+ allow(service).to receive(:execute).and_return(ServiceResponse.success(payload: bulk_import))
+ end
+
+ post :create, params: { bulk_import: bulk_import_params }
+
+ expect(response).to have_gitlab_http_status(:ok)
+ expect(json_response).to match_array([{ "success" => true, "id" => bulk_import.id, "message" => nil }])
+ end
+ end
end
end
diff --git a/spec/controllers/profiles_controller_spec.rb b/spec/controllers/profiles_controller_spec.rb
index 6e7cc058fbc..89185a8f856 100644
--- a/spec/controllers/profiles_controller_spec.rb
+++ b/spec/controllers/profiles_controller_spec.rb
@@ -3,16 +3,16 @@
require('spec_helper')
RSpec.describe ProfilesController, :request_store do
- let(:password) { 'longsecret987!' }
+ let(:password) { User.random_password }
let(:user) { create(:user, password: password) }
describe 'POST update' do
it 'does not update password' do
sign_in(user)
-
+ new_password = User.random_password
expect do
post :update,
- params: { user: { password: 'hello12345', password_confirmation: 'hello12345' } }
+ params: { user: { password: new_password, password_confirmation: new_password } }
end.not_to change { user.reload.encrypted_password }
expect(response).to have_gitlab_http_status(:found)
diff --git a/spec/controllers/projects/environments_controller_spec.rb b/spec/controllers/projects/environments_controller_spec.rb
index f4cad5790a3..1a6edab795d 100644
--- a/spec/controllers/projects/environments_controller_spec.rb
+++ b/spec/controllers/projects/environments_controller_spec.rb
@@ -233,7 +233,7 @@ RSpec.describe Projects::EnvironmentsController do
end
context "when environment params are invalid" do
- let(:params) { environment_params.merge(environment: { name: '/foo/', external_url: '/git.gitlab.com' }) }
+ let(:params) { environment_params.merge(environment: { external_url: 'javascript:alert("hello")' }) }
it 'returns bad request' do
subject
diff --git a/spec/controllers/registrations_controller_spec.rb b/spec/controllers/registrations_controller_spec.rb
index c5a97812d1f..70d4559edc1 100644
--- a/spec/controllers/registrations_controller_spec.rb
+++ b/spec/controllers/registrations_controller_spec.rb
@@ -25,7 +25,7 @@ RSpec.describe RegistrationsController do
end
let_it_be(:base_user_params) do
- { first_name: 'first', last_name: 'last', username: 'new_username', email: 'new@user.com', password: 'Any_password' }
+ { first_name: 'first', last_name: 'last', username: 'new_username', email: 'new@user.com', password: User.random_password }
end
let_it_be(:user_params) { { user: base_user_params } }
@@ -222,7 +222,7 @@ RSpec.describe RegistrationsController do
context 'when the registration fails' do
let_it_be(:member) { create(:project_member, :invited) }
let_it_be(:missing_user_params) do
- { username: '', email: member.invite_email, password: 'Any_password' }
+ { username: '', email: member.invite_email, password: User.random_password }
end
let_it_be(:user_params) { { user: missing_user_params } }
@@ -535,7 +535,7 @@ RSpec.describe RegistrationsController do
end
it 'succeeds if password is confirmed' do
- post :destroy, params: { password: '12345678' }
+ post :destroy, params: { password: user.password }
expect_success
end
@@ -576,7 +576,7 @@ RSpec.describe RegistrationsController do
end
it 'fails' do
- delete :destroy, params: { password: '12345678' }
+ delete :destroy, params: { password: user.password }
expect_failure(s_('Profiles|You must transfer ownership or delete groups you are an owner of before you can delete your account'))
end
diff --git a/spec/features/merge_request/user_posts_diff_notes_spec.rb b/spec/features/merge_request/user_posts_diff_notes_spec.rb
index d461170c990..1eebb6c2e28 100644
--- a/spec/features/merge_request/user_posts_diff_notes_spec.rb
+++ b/spec/features/merge_request/user_posts_diff_notes_spec.rb
@@ -19,7 +19,6 @@ RSpec.describe 'Merge request > User posts diff notes', :js do
project.add_developer(user)
sign_in(user)
- stub_const('Gitlab::QueryLimiting::Transaction::THRESHOLD', 104)
end
context 'when hovering over a parallel view diff file' do
diff --git a/spec/features/users/login_spec.rb b/spec/features/users/login_spec.rb
index 3ba3650b608..08d0a8d556a 100644
--- a/spec/features/users/login_spec.rb
+++ b/spec/features/users/login_spec.rb
@@ -477,14 +477,14 @@ RSpec.describe 'Login', :clean_gitlab_redis_sessions do
end
context 'with invalid username and password' do
- let(:user) { create(:user, password: 'not-the-default') }
+ let(:user) { create(:user) }
it 'blocks invalid login' do
expect(authentication_metrics)
.to increment(:user_unauthenticated_counter)
.and increment(:user_password_invalid_counter)
- gitlab_sign_in(user)
+ gitlab_sign_in(user, password: 'incorrect-password')
expect_single_session_with_short_ttl
expect(page).to have_content('Invalid login or password.')
diff --git a/spec/frontend/vue_shared/components/source_viewer/plugins/link_dependencies_spec.js b/spec/frontend/vue_shared/components/source_viewer/plugins/link_dependencies_spec.js
index 3036ce43888..375b1307616 100644
--- a/spec/frontend/vue_shared/components/source_viewer/plugins/link_dependencies_spec.js
+++ b/spec/frontend/vue_shared/components/source_viewer/plugins/link_dependencies_spec.js
@@ -1,8 +1,10 @@
import packageJsonLinker from '~/vue_shared/components/source_viewer/plugins/utils/package_json_linker';
+import gemspecLinker from '~/vue_shared/components/source_viewer/plugins/utils/gemspec_linker';
import linkDependencies from '~/vue_shared/components/source_viewer/plugins/link_dependencies';
-import { PACKAGE_JSON_FILE_TYPE, PACKAGE_JSON_CONTENT } from './mock_data';
+import { PACKAGE_JSON_FILE_TYPE, PACKAGE_JSON_CONTENT, GEMSPEC_FILE_TYPE } from './mock_data';
jest.mock('~/vue_shared/components/source_viewer/plugins/utils/package_json_linker');
+jest.mock('~/vue_shared/components/source_viewer/plugins/utils/gemspec_linker');
describe('Highlight.js plugin for linking dependencies', () => {
const hljsResultMock = { value: 'test' };
@@ -11,4 +13,9 @@ describe('Highlight.js plugin for linking dependencies', () => {
linkDependencies(hljsResultMock, PACKAGE_JSON_FILE_TYPE, PACKAGE_JSON_CONTENT);
expect(packageJsonLinker).toHaveBeenCalled();
});
+
+ it('calls gemspecLinker for gemspec file types', () => {
+ linkDependencies(hljsResultMock, GEMSPEC_FILE_TYPE);
+ expect(gemspecLinker).toHaveBeenCalled();
+ });
});
diff --git a/spec/frontend/vue_shared/components/source_viewer/plugins/mock_data.js b/spec/frontend/vue_shared/components/source_viewer/plugins/mock_data.js
index 75659770e2c..aa874c9c081 100644
--- a/spec/frontend/vue_shared/components/source_viewer/plugins/mock_data.js
+++ b/spec/frontend/vue_shared/components/source_viewer/plugins/mock_data.js
@@ -1,2 +1,4 @@
export const PACKAGE_JSON_FILE_TYPE = 'package_json';
export const PACKAGE_JSON_CONTENT = '{ "dependencies": { "@babel/core": "^7.18.5" } }';
+
+export const GEMSPEC_FILE_TYPE = 'gemspec';
diff --git a/spec/frontend/vue_shared/components/source_viewer/plugins/utils/gemspec_linker_spec.js b/spec/frontend/vue_shared/components/source_viewer/plugins/utils/gemspec_linker_spec.js
new file mode 100644
index 00000000000..3f74bfa117f
--- /dev/null
+++ b/spec/frontend/vue_shared/components/source_viewer/plugins/utils/gemspec_linker_spec.js
@@ -0,0 +1,14 @@
+import gemspecLinker from '~/vue_shared/components/source_viewer/plugins/utils/gemspec_linker';
+
+describe('Highlight.js plugin for linking gemspec dependencies', () => {
+ it('mutates the input value by wrapping dependency names in anchors', () => {
+ const inputValue =
+ 's.add_dependency(<span class="hljs-string">&#x27;rugged&#x27;</span>, <span class="hljs-string">&#x27;~&gt; 0.24.0&#x27;</span>)';
+ const outputValue =
+ 's.add_dependency(<span class="hljs-string linked">&#x27;<a href="https://rubygems.org/gems/rugged" rel="nofollow noreferrer noopener">rugged</a>&#x27;</span>, <span class="hljs-string">&#x27;~&gt; 0.24.0&#x27;</span>)';
+ const hljsResultMock = { value: inputValue };
+
+ const output = gemspecLinker(hljsResultMock);
+ expect(output).toBe(outputValue);
+ });
+});
diff --git a/spec/frontend/work_items/mock_data.js b/spec/frontend/work_items/mock_data.js
index df666b95ad1..a76407931d4 100644
--- a/spec/frontend/work_items/mock_data.js
+++ b/spec/frontend/work_items/mock_data.js
@@ -59,11 +59,9 @@ export const workItemQueryResponse = {
title: 'Parent title',
},
children: {
- edges: [
+ nodes: [
{
- node: {
- id: 'gid://gitlab/WorkItem/444',
- },
+ id: 'gid://gitlab/WorkItem/444',
},
],
},
@@ -96,9 +94,9 @@ export const updateWorkItemMutationResponse = {
widgets: [
{
children: {
- edges: [
+ nodes: [
{
- node: 'gid://gitlab/WorkItem/444',
+ id: 'gid://gitlab/WorkItem/444',
},
],
},
@@ -161,11 +159,9 @@ export const workItemResponseFactory = ({
__typename: 'WorkItemWidgetHierarchy',
type: 'HIERARCHY',
children: {
- edges: [
+ nodes: [
{
- node: {
- id: 'gid://gitlab/WorkItem/444',
- },
+ id: 'gid://gitlab/WorkItem/444',
},
],
},
diff --git a/spec/lib/api/entities/bulk_imports/entity_spec.rb b/spec/lib/api/entities/bulk_imports/entity_spec.rb
index f91ae1fc5a1..4de85862ab9 100644
--- a/spec/lib/api/entities/bulk_imports/entity_spec.rb
+++ b/spec/lib/api/entities/bulk_imports/entity_spec.rb
@@ -14,6 +14,7 @@ RSpec.describe API::Entities::BulkImports::Entity do
:status,
:source_full_path,
:destination_name,
+ :destination_slug,
:destination_namespace,
:parent_id,
:namespace_id,
diff --git a/spec/lib/bulk_imports/groups/transformers/group_attributes_transformer_spec.rb b/spec/lib/bulk_imports/groups/transformers/group_attributes_transformer_spec.rb
index d775cf6b026..896af865c56 100644
--- a/spec/lib/bulk_imports/groups/transformers/group_attributes_transformer_spec.rb
+++ b/spec/lib/bulk_imports/groups/transformers/group_attributes_transformer_spec.rb
@@ -13,7 +13,7 @@ RSpec.describe BulkImports::Groups::Transformers::GroupAttributesTransformer do
:bulk_import_entity,
bulk_import: bulk_import,
source_full_path: 'source/full/path',
- destination_name: 'destination-name-path',
+ destination_slug: 'destination-slug-path',
destination_namespace: parent.full_path
)
end
@@ -41,14 +41,14 @@ RSpec.describe BulkImports::Groups::Transformers::GroupAttributesTransformer do
'name' => 'Name',
'description' => 'Description',
'parent_id' => parent.id,
- 'path' => 'destination-name-path'
+ 'path' => 'destination-slug-path'
})
end
- it 'transforms path from destination_name' do
+ it 'transforms path from destination_slug' do
transformed_data = subject.transform(context, data)
- expect(transformed_data['path']).to eq(entity.destination_name)
+ expect(transformed_data['path']).to eq(entity.destination_slug)
end
it 'removes full path' do
diff --git a/spec/lib/bulk_imports/projects/transformers/project_attributes_transformer_spec.rb b/spec/lib/bulk_imports/projects/transformers/project_attributes_transformer_spec.rb
index a1d77b9732d..c1c4d0bf0db 100644
--- a/spec/lib/bulk_imports/projects/transformers/project_attributes_transformer_spec.rb
+++ b/spec/lib/bulk_imports/projects/transformers/project_attributes_transformer_spec.rb
@@ -15,7 +15,7 @@ RSpec.describe BulkImports::Projects::Transformers::ProjectAttributesTransformer
source_type: :project_entity,
bulk_import: bulk_import,
source_full_path: 'source/full/path',
- destination_name: 'Destination Project Name',
+ destination_slug: 'Destination Project Name',
destination_namespace: destination_group.full_path
)
end
@@ -32,12 +32,12 @@ RSpec.describe BulkImports::Projects::Transformers::ProjectAttributesTransformer
subject(:transformed_data) { described_class.new.transform(context, data) }
- it 'transforms name to destination name' do
- expect(transformed_data[:name]).to eq(entity.destination_name)
+ it 'transforms name to destination slug' do
+ expect(transformed_data[:name]).to eq(entity.destination_slug)
end
it 'adds path as parameterized name' do
- expect(transformed_data[:path]).to eq(entity.destination_name.parameterize)
+ expect(transformed_data[:path]).to eq(entity.destination_slug.parameterize)
end
it 'transforms visibility level' do
@@ -65,7 +65,7 @@ RSpec.describe BulkImports::Projects::Transformers::ProjectAttributesTransformer
source_type: :project_entity,
bulk_import: bulk_import,
source_full_path: 'source/full/path',
- destination_name: 'Destination Project Name',
+ destination_slug: 'Destination Project Name',
destination_namespace: ''
)
diff --git a/spec/models/environment_spec.rb b/spec/models/environment_spec.rb
index e3207636bdc..fa03c6920c6 100644
--- a/spec/models/environment_spec.rb
+++ b/spec/models/environment_spec.rb
@@ -42,6 +42,92 @@ RSpec.describe Environment, :use_clean_rails_memory_store_caching do
end
end
+ describe 'validate and sanitize external url' do
+ let_it_be_with_refind(:environment) { create(:environment) }
+
+ where(:source_external_url, :expected_error_message) do
+ nil | nil
+ 'http://example.com' | nil
+ 'example.com' | nil
+ 'www.example.io' | nil
+ 'http://$URL' | nil
+ 'http://$(URL)' | nil
+ 'custom://example.com' | nil
+ '1.1.1.1' | nil
+ '$BASE_URL/${CI_COMMIT_REF_NAME}' | nil
+ '$ENVIRONMENT_URL' | nil
+ 'https://$SUB.$MAIN' | nil
+ 'https://$SUB-$REGION.$MAIN' | nil
+ 'https://example.com?param={()}' | nil
+ 'http://XSS?x=<script>alert(1)</script>' | nil
+ 'https://user:${VARIABLE}@example.io' | nil
+ 'https://example.com/test?param={data}' | nil
+ 'http://${URL}' | 'URI is invalid'
+ 'https://${URL}.example/test' | 'URI is invalid'
+ 'http://test${CI_MERGE_REQUEST_IID}.example.com' | 'URI is invalid'
+ 'javascript:alert("hello")' | 'javascript scheme is not allowed'
+ end
+ with_them do
+ it 'sets an external URL or an error' do
+ environment.external_url = source_external_url
+
+ environment.valid?
+
+ if expected_error_message
+ expect(environment.errors[:external_url].first).to eq(expected_error_message)
+ else
+ expect(environment.errors[:external_url]).to be_empty,
+ "There were unexpected errors: #{environment.errors.full_messages}"
+ expect(environment.external_url).to eq(source_external_url)
+ end
+ end
+ end
+
+ context 'when soft_validation_on_external_url feature flag is disabled' do
+ before do
+ stub_feature_flags(soft_validation_on_external_url: false)
+ end
+
+ where(:source_external_url, :expected_error_message) do
+ nil | nil
+ 'http://example.com' | nil
+ 'example.com' | 'is blocked: Only allowed schemes are http, https'
+ 'www.example.io' | 'is blocked: Only allowed schemes are http, https'
+ 'http://$URL' | 'is blocked: Hostname or IP address invalid'
+ 'http://$(URL)' | 'is blocked: Hostname or IP address invalid'
+ 'custom://example.com' | 'is blocked: Only allowed schemes are http, https'
+ '1.1.1.1' | 'is blocked: Only allowed schemes are http, https'
+ '$BASE_URL/${CI_COMMIT_REF_NAME}' | 'is blocked: Only allowed schemes are http, https'
+ '$ENVIRONMENT_URL' | 'is blocked: Only allowed schemes are http, https'
+ 'https://$SUB.$MAIN' | 'is blocked: Hostname or IP address invalid'
+ 'https://$SUB-$REGION.$MAIN' | 'is blocked: Hostname or IP address invalid'
+ 'https://example.com?param={()}' | nil
+ 'http://XSS?x=<script>alert(1)</script>' | nil
+ 'https://user:${VARIABLE}@example.io' | nil
+ 'https://example.com/test?param={data}' | nil
+ 'http://${URL}' | 'is blocked: URI is invalid'
+ 'https://${URL}.example/test' | 'is blocked: URI is invalid'
+ 'http://test${CI_MERGE_REQUEST_IID}.example.com' | 'is blocked: URI is invalid'
+ 'javascript:alert("hello")' | 'is blocked: Only allowed schemes are http, https'
+ end
+ with_them do
+ it 'sets an external URL or an error' do
+ environment.external_url = source_external_url
+
+ environment.valid?
+
+ if expected_error_message
+ expect(environment.errors[:external_url].first).to eq(expected_error_message)
+ else
+ expect(environment.errors[:external_url]).to be_empty,
+ "There were unexpected errors: #{environment.errors.full_messages}"
+ expect(environment.external_url).to eq(source_external_url)
+ end
+ end
+ end
+ end
+ end
+
describe '.before_save' do
it 'ensures environment tier when a new object is created' do
environment = build(:environment, name: 'gprd', tier: nil)
diff --git a/spec/models/members/group_member_spec.rb b/spec/models/members/group_member_spec.rb
index 94032146f51..c076346c619 100644
--- a/spec/models/members/group_member_spec.rb
+++ b/spec/models/members/group_member_spec.rb
@@ -165,13 +165,6 @@ RSpec.describe GroupMember do
let_it_be(:project_b) { create(:project, group: group) }
let_it_be(:project_c) { create(:project, group: group) }
let_it_be(:user) { create(:user) }
- let_it_be(:affected_project_ids) { Project.id_in([project_a, project_b, project_c]).ids }
-
- before do
- stub_const(
- "#{described_class.name}::THRESHOLD_FOR_REFRESHING_AUTHORIZATIONS_VIA_PROJECTS",
- affected_project_ids.size - 1)
- end
shared_examples_for 'calls UserProjectAccessChangedService to recalculate authorizations' do
it 'calls UserProjectAccessChangedService to recalculate authorizations' do
@@ -183,41 +176,6 @@ RSpec.describe GroupMember do
end
end
- shared_examples_for 'tries to update permissions via refreshing authorizations for the affected projects' do
- context 'when the number of affected projects exceeds the set threshold' do
- it 'updates permissions via refreshing authorizations for the affected projects asynchronously' do
- expect_next_instance_of(
- AuthorizedProjectUpdate::ProjectAccessChangedService, affected_project_ids
- ) do |service|
- expect(service).to receive(:execute).with(blocking: false)
- end
-
- action
- end
-
- it 'calls AuthorizedProjectUpdate::UserRefreshFromReplicaWorker with a delay as a safety net' do
- expect(AuthorizedProjectUpdate::UserRefreshFromReplicaWorker).to(
- receive(:bulk_perform_in)
- .with(1.hour,
- [[user.id]],
- batch_delay: 30.seconds, batch_size: 100)
- )
-
- action
- end
- end
-
- context 'when the number of affected projects does not exceed the set threshold' do
- before do
- stub_const(
- "#{described_class.name}::THRESHOLD_FOR_REFRESHING_AUTHORIZATIONS_VIA_PROJECTS",
- affected_project_ids.size + 1)
- end
-
- it_behaves_like 'calls UserProjectAccessChangedService to recalculate authorizations'
- end
- end
-
context 'on create' do
let(:action) { group.add_member(user, Gitlab::Access::GUEST) }
let(:blocking) { true }
@@ -228,15 +186,7 @@ RSpec.describe GroupMember do
.and change { user.can?(:guest_access, project_c) }.from(false).to(true)
end
- it_behaves_like 'tries to update permissions via refreshing authorizations for the affected projects'
-
- context 'when the feature flag `refresh_authorizations_via_affected_projects_on_group_membership` is disabled' do
- before do
- stub_feature_flags(refresh_authorizations_via_affected_projects_on_group_membership: false)
- end
-
- it_behaves_like 'calls UserProjectAccessChangedService to recalculate authorizations'
- end
+ it_behaves_like 'calls UserProjectAccessChangedService to recalculate authorizations'
end
context 'on update' do
@@ -253,15 +203,7 @@ RSpec.describe GroupMember do
.and change { user.can?(:developer_access, project_c) }.from(false).to(true)
end
- it_behaves_like 'tries to update permissions via refreshing authorizations for the affected projects'
-
- context 'when the feature flag `refresh_authorizations_via_affected_projects_on_group_membership` is disabled' do
- before do
- stub_feature_flags(refresh_authorizations_via_affected_projects_on_group_membership: false)
- end
-
- it_behaves_like 'calls UserProjectAccessChangedService to recalculate authorizations'
- end
+ it_behaves_like 'calls UserProjectAccessChangedService to recalculate authorizations'
end
context 'on destroy' do
@@ -278,15 +220,7 @@ RSpec.describe GroupMember do
.and change { user.can?(:guest_access, project_c) }.from(true).to(false)
end
- it_behaves_like 'tries to update permissions via refreshing authorizations for the affected projects'
-
- context 'when the feature flag `refresh_authorizations_via_affected_projects_on_group_membership` is disabled' do
- before do
- stub_feature_flags(refresh_authorizations_via_affected_projects_on_group_membership: false)
- end
-
- it_behaves_like 'calls UserProjectAccessChangedService to recalculate authorizations'
- end
+ it_behaves_like 'calls UserProjectAccessChangedService to recalculate authorizations'
end
end
end
diff --git a/spec/requests/api/boards_spec.rb b/spec/requests/api/boards_spec.rb
index ca6492396cd..feb11f2ffef 100644
--- a/spec/requests/api/boards_spec.rb
+++ b/spec/requests/api/boards_spec.rb
@@ -57,9 +57,11 @@ RSpec.describe API::Boards do
let(:url) { "/projects/#{board_parent.id}/boards/#{board.id}" }
it 'delete the issue board' do
- delete api(url, user)
+ expect do
+ delete api(url, user)
- expect(response).to have_gitlab_http_status(:no_content)
+ expect(response).to have_gitlab_http_status(:no_content)
+ end.to change {board_parent.boards.count}.by(-1)
end
end
diff --git a/spec/requests/api/bulk_imports_spec.rb b/spec/requests/api/bulk_imports_spec.rb
index 9f9907f4f00..6a3d13567bd 100644
--- a/spec/requests/api/bulk_imports_spec.rb
+++ b/spec/requests/api/bulk_imports_spec.rb
@@ -53,23 +53,80 @@ RSpec.describe API::BulkImports do
end
end
- it 'starts a new migration' do
- post api('/bulk_imports', user), params: {
- configuration: {
- url: 'http://gitlab.example',
- access_token: 'access_token'
- },
- entities: [
- source_type: 'group_entity',
- source_full_path: 'full_path',
- destination_name: 'destination_slug',
- destination_namespace: 'destination_namespace'
- ]
- }
-
- expect(response).to have_gitlab_http_status(:created)
-
- expect(json_response['status']).to eq('created')
+ shared_examples 'starting a new migration' do
+ it 'starts a new migration' do
+ post api('/bulk_imports', user), params: {
+ configuration: {
+ url: 'http://gitlab.example',
+ access_token: 'access_token'
+ },
+ entities: [
+ {
+ source_type: 'group_entity',
+ source_full_path: 'full_path',
+ destination_namespace: 'destination_namespace'
+ }.merge(destination_param)
+ ]
+ }
+
+ expect(response).to have_gitlab_http_status(:created)
+
+ expect(json_response['status']).to eq('created')
+ end
+ end
+
+ include_examples 'starting a new migration' do
+ let(:destination_param) { { destination_slug: 'destination_slug' } }
+ end
+
+ include_examples 'starting a new migration' do
+ let(:destination_param) { { destination_name: 'destination_name' } }
+ end
+
+ context 'when both destination_name & destination_slug are provided' do
+ it 'returns a mutually exclusive error' do
+ post api('/bulk_imports', user), params: {
+ configuration: {
+ url: 'http://gitlab.example',
+ access_token: 'access_token'
+ },
+ entities: [
+ {
+ source_type: 'group_entity',
+ source_full_path: 'full_path',
+ destination_name: 'destination_name',
+ destination_slug: 'destination_slug',
+ destination_namespace: 'destination_namespace'
+ }
+ ]
+ }
+
+ expect(response).to have_gitlab_http_status(:bad_request)
+
+ expect(json_response['error']).to eq('entities[0][destination_slug], entities[0][destination_name] are mutually exclusive')
+ end
+ end
+
+ context 'when neither destination_name nor destination_slug is provided' do
+ it 'returns at_least_one_of error' do
+ post api('/bulk_imports', user), params: {
+ configuration: {
+ url: 'http://gitlab.example',
+ access_token: 'access_token'
+ },
+ entities: [
+ {
+ source_type: 'group_entity',
+ source_full_path: 'full_path',
+ destination_namespace: 'destination_namespace'
+ }
+ ]
+ }
+
+ expect(response).to have_gitlab_http_status(:bad_request)
+
+ expect(json_response['error']).to eq('entities[0][destination_slug], entities[0][destination_name] are missing, at least one parameter must be provided')
+ end
end
context 'when provided url is blocked' do
@@ -82,7 +139,7 @@ RSpec.describe API::BulkImports do
entities: [
source_type: 'group_entity',
source_full_path: 'full_path',
- destination_name: 'destination_slug',
+ destination_slug: 'destination_slug',
destination_namespace: 'destination_namespace'
]
}
diff --git a/spec/requests/api/graphql/ci/pipelines_spec.rb b/spec/requests/api/graphql/ci/pipelines_spec.rb
index a968e5508cb..f471a152603 100644
--- a/spec/requests/api/graphql/ci/pipelines_spec.rb
+++ b/spec/requests/api/graphql/ci/pipelines_spec.rb
@@ -166,6 +166,35 @@ RSpec.describe 'Query.project(fullPath).pipelines' do
end
end
+ describe '.job' do
+ let(:first_n) { var('Int') }
+ let(:query_path) do
+ [
+ [:project, { full_path: project.full_path }],
+ [:pipelines],
+ [:nodes],
+ [:job, { name: 'Job 1' }]
+ ]
+ end
+
+ let(:query) do
+ wrap_fields(query_graphql_path(query_path, :status))
+ end
+
+ before_all do
+ pipeline = create(:ci_pipeline, project: project)
+ create(:ci_build, pipeline: pipeline, name: 'Job 1', status: :failed, retried: true)
+ create(:ci_build, pipeline: pipeline, name: 'Job 1', status: :success)
+ end
+
+ it 'fetches the latest job with the given name' do
+ post_graphql(query, current_user: user)
+ expect(graphql_data_at(*query_path.map(&:first))).to contain_exactly a_hash_including(
+ 'status' => 'SUCCESS'
+ )
+ end
+ end
+
describe '.jobs' do
let(:first_n) { var('Int') }
let(:query_path) do
diff --git a/spec/requests/api/graphql/mutations/boards/destroy_spec.rb b/spec/requests/api/graphql/mutations/boards/destroy_spec.rb
index 23e099e94b6..7620da3e7e0 100644
--- a/spec/requests/api/graphql/mutations/boards/destroy_spec.rb
+++ b/spec/requests/api/graphql/mutations/boards/destroy_spec.rb
@@ -65,15 +65,8 @@ RSpec.describe Mutations::Boards::Destroy do
other_board.destroy!
end
- it 'does not destroy the board' do
- expect { subject }.not_to change { Board.count }.from(1)
- end
-
- it 'returns an error and not nil board' do
- subject
-
- expect(mutation_response['errors']).not_to be_empty
- expect(mutation_response['board']).not_to be_nil
+ it 'does destroy the board' do
+ expect { subject }.to change { Board.count }.by(-1)
end
end
end
diff --git a/spec/services/bulk_imports/create_service_spec.rb b/spec/services/bulk_imports/create_service_spec.rb
index 67ec6fee1ae..4b655dd5d6d 100644
--- a/spec/services/bulk_imports/create_service_spec.rb
+++ b/spec/services/bulk_imports/create_service_spec.rb
@@ -10,19 +10,19 @@ RSpec.describe BulkImports::CreateService do
{
source_type: 'group_entity',
source_full_path: 'full/path/to/group1',
- destination_name: 'destination group 1',
+ destination_slug: 'destination group 1',
destination_namespace: 'full/path/to/destination1'
},
{
source_type: 'group_entity',
source_full_path: 'full/path/to/group2',
- destination_name: 'destination group 2',
+ destination_slug: 'destination group 2',
destination_namespace: 'full/path/to/destination2'
},
{
source_type: 'project_entity',
source_full_path: 'full/path/to/project1',
- destination_name: 'destination project 1',
+ destination_slug: 'destination project 1',
destination_namespace: 'full/path/to/destination1'
}
]
diff --git a/spec/services/deployments/update_environment_service_spec.rb b/spec/services/deployments/update_environment_service_spec.rb
index 8ab53a37a33..d3e5920baaf 100644
--- a/spec/services/deployments/update_environment_service_spec.rb
+++ b/spec/services/deployments/update_environment_service_spec.rb
@@ -112,7 +112,7 @@ RSpec.describe Deployments::UpdateEnvironmentService do
end
context 'when external URL is invalid' do
- let(:external_url) { 'google.com' }
+ let(:external_url) { 'javascript:alert("hello")' }
it 'fails to update the tier due to validation error' do
expect { subject.execute }.not_to change { environment.tier }
@@ -123,7 +123,7 @@ RSpec.describe Deployments::UpdateEnvironmentService do
.with(an_instance_of(described_class::EnvironmentUpdateFailure),
project_id: project.id,
environment_id: environment.id,
- reason: %q{External url is blocked: Only allowed schemes are http, https})
+ reason: %q{External url javascript scheme is not allowed})
.once
subject.execute
diff --git a/spec/support/helpers/login_helpers.rb b/spec/support/helpers/login_helpers.rb
index c93ef8b0ead..f83f5c7bfde 100644
--- a/spec/support/helpers/login_helpers.rb
+++ b/spec/support/helpers/login_helpers.rb
@@ -91,12 +91,12 @@ module LoginHelpers
# user - User instance to login with
# remember - Whether or not to check "Remember me" (default: false)
# two_factor_auth - If two-factor authentication is enabled (default: false)
- # password - password to attempt to login with
+ # password - password to attempt to login with (default: user.password)
def gitlab_sign_in_with(user, remember: false, two_factor_auth: false, password: nil)
visit new_user_session_path
fill_in "user_login", with: user.email
- fill_in "user_password", with: (password || "12345678")
+ fill_in "user_password", with: (password || user.password)
check 'user_remember_me' if remember
find('[data-testid="sign-in-button"]:enabled').click
diff --git a/spec/support/shared_examples/boards/destroy_service_shared_examples.rb b/spec/support/shared_examples/boards/destroy_service_shared_examples.rb
index 33bae3da44b..b1cb58a736f 100644
--- a/spec/support/shared_examples/boards/destroy_service_shared_examples.rb
+++ b/spec/support/shared_examples/boards/destroy_service_shared_examples.rb
@@ -20,10 +20,10 @@ RSpec.shared_examples 'board destroy service' do
end
context 'when there is only one board' do
- it 'does not remove board' do
+ it 'does remove board' do
expect do
- expect(service.execute(board)).to be_error
- end.not_to change(boards, :count)
+ service.execute(board)
+ end.to change(boards, :count).by(-1)
end
end
end