rspec-ee unit pg14 8/18
Passed Started
by
@gitlab-bot

🤖 GitLab Bot 🤖
1Running with gitlab-runner 16.1.0~beta.59.g83c66823 (83c66823)2 on green-3.shared-gitlab-org.runners-manager.gitlab.com/default EuhiQzPR, system ID: s_360bc95445273 feature flags: FF_NETWORK_PER_BUILD:true, FF_USE_FASTZIP:true, FF_USE_IMPROVED_URL_MASKING:true6Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.20-rust-1.65-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-113-yarn-1.22-graphicsmagick-1.3.36 ...7Starting service registry.gitlab.com/gitlab-org/gitlab-build-images:postgres-14-pgvector-0.4.1 ...8Authenticating with credentials from job payload (GitLab Registry)9Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:postgres-14-pgvector-0.4.1 ...10Using docker image sha256:2e09e9db92541ed81b1c00f1d5186f8c262d8b84e8d1755676ea4b25614f30c4 for registry.gitlab.com/gitlab-org/gitlab-build-images:postgres-14-pgvector-0.4.1 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:afc7bd7a60824044709543a6a700385e412d750d9ab4fc72b427e335e1d0f3ec ...11WARNING: Service registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 is already created. Ignoring.12WARNING: Service registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 is already created. Ignoring.13Starting service registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 ...14Authenticating with credentials from job payload (GitLab Registry)15Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 ...16Using docker image sha256:a9a90ece30d9630d694ab1997cd103ea8ec729789451b983a75c7b58b0062d45 for registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:7ef36177d5d0bc554fbb63d8210ae751bcc538bea7905b51d078d9ab90a755fa ...17Starting service redis:6.2-alpine ...18Pulling docker image redis:6.2-alpine ...19Using docker image sha256:d0675d033b87382205d08b598a004a99a1f6c4bd377cc86bb6df8957ce7dbb1c for redis:6.2-alpine with digest redis@sha256:740b5c973d1c9eea6e124a3905ba73d32354d0549f98ccc9e67af1af2a9ba478 ...20WARNING: Service registry.gitlab.com/gitlab-org/gitlab-build-images:zoekt-ci-image-1.2 is already created. Ignoring.21WARNING: Service registry.gitlab.com/gitlab-org/gitlab-build-images:zoekt-ci-image-1.2 is already created. Ignoring.22Starting service registry.gitlab.com/gitlab-org/gitlab-build-images:zoekt-ci-image-1.2 ...23Authenticating with credentials from job payload (GitLab Registry)24Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:zoekt-ci-image-1.2 ...25Using docker image sha256:c635f6eed733b5c5a06d4a28aff99748c4cbefca04af192e08f10d87387c6485 for registry.gitlab.com/gitlab-org/gitlab-build-images:zoekt-ci-image-1.2 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:b3cc177faa2dc274a32b66866536932c39be8578316b364363735fc0b8e1f9cb ...26Starting service elasticsearch:7.17.6 ...27Pulling docker image elasticsearch:7.17.6 ...28Using docker image sha256:5fad10241ffd65d817ed0ddfaf6e87eee1f7dc2a7db33db1047835560ea71fda for elasticsearch:7.17.6 with digest elasticsearch@sha256:6c128de5d01c0c130a806022d6bd99b3e4c27a9af5bfc33b6b81861ae117d028 ...29Waiting for services to be up and running (timeout 30 seconds)...30Authenticating with credentials from job payload (GitLab Registry)31Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.20-rust-1.65-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-113-yarn-1.22-graphicsmagick-1.3.36 ...32Using docker image sha256:24a9e92645b17c878623efd51b7564f81e480bd281e94d7f33971082e0ca80e0 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.20-rust-1.65-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-113-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.20-rust-1.65-node-18.17-postgresql-14@sha256:ca349d228348f199cb57f574476584f42aca338747393ed93a9032a0261afc4d ...34Running on runner-euhiqzpr-project-278964-concurrent-0 via runner-euhiqzpr-shared-gitlab-org-1691669442-b8f55641...36Fetching changes with git depth set to 20...37Initialized empty Git repository in /builds/gitlab-org/gitlab/.git/38Created fresh repository.39remote: Enumerating objects: 145438, done. 40remote: Counting objects: 100% (145438/145438), done. 41remote: Compressing objects: 100% (96447/96447), done. 42remote: Total 145438 (delta 63547), reused 98646 (delta 43407), pack-reused 0 43Receiving objects: 100% (145438/145438), 119.87 MiB | 19.43 MiB/s, done.44Resolving deltas: 100% (63547/63547), done.46 * [new ref] refs/pipelines/962009091 -> refs/pipelines/96200909147Checking out 2a9b6857 as detached HEAD (ref is refs/merge-requests/128972/merge)...48Skipping Git submodules setup49$ git remote set-url origin "${CI_REPOSITORY_URL}"51Checking cache for ruby-gems-debian-bullseye-ruby-3.0-16...52Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/ruby-gems-debian-bullseye-ruby-3.0-16 53Successfully extracted cache55Downloading artifacts for compile-test-assets (4841630955)...56Downloading artifacts from coordinator... ok host=storage.googleapis.com id=4841630955 responseStatus=200 OK token=64_DKxmW57Downloading artifacts for detect-tests (4841630974)...58Downloading artifacts from coordinator... ok host=storage.googleapis.com id=4841630974 responseStatus=200 OK token=64_DKxmW59Downloading artifacts for retrieve-tests-metadata (4841630985)...60Downloading artifacts from coordinator... ok host=storage.googleapis.com id=4841630985 responseStatus=200 OK token=64_DKxmW61Downloading artifacts for setup-test-env (4841630964)...62Downloading artifacts from coordinator... ok host=storage.googleapis.com id=4841630964 responseStatus=200 OK token=64_DKxmW64Using docker image sha256:24a9e92645b17c878623efd51b7564f81e480bd281e94d7f33971082e0ca80e0 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.20-rust-1.65-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-113-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.20-rust-1.65-node-18.17-postgresql-14@sha256:ca349d228348f199cb57f574476584f42aca338747393ed93a9032a0261afc4d ...65$ echo $FOSS_ONLY66$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb67$ export GOPATH=$CI_PROJECT_DIR/.go68$ mkdir -p $GOPATH69$ source scripts/utils.sh70$ source scripts/prepare_build.sh102Using decomposed database config (config/database.yml.decomposed-postgresql)103Geo DB will be set up.104Embedding DB will be set up.120$ source ./scripts/rspec_helpers.sh121$ run_timed_command "gem install knapsack --no-document"122$ gem install knapsack --no-document123Successfully installed knapsack-4.0.01241 gem installed125==> 'gem install knapsack --no-document' succeeded in 1 seconds.126$ section_start "gitaly-test-spawn" "Spawning Gitaly"; scripts/gitaly-test-spawn; section_end "gitaly-test-spawn"131$ export RSPEC_SKIPPED_TESTS_REPORT_PATH="rspec/skipped_tests-${CI_JOB_ID}.txt"132$ export RSPEC_RETRIED_TESTS_REPORT_PATH="rspec/retried_tests-${CI_JOB_ID}.txt"133$ rspec_paralellized_job "--fail-fast=${RSPEC_FAIL_FAST_THRESHOLD} --tag ~quarantine --tag ~level:background_migration --tag ~click_house"134SKIP_FLAKY_TESTS_AUTOMATICALLY: 135RETRY_FAILED_TESTS_IN_NEW_PROCESS: true136KNAPSACK_GENERATE_REPORT: true137FLAKY_RSPEC_GENERATE_REPORT: true138KNAPSACK_TEST_FILE_PATTERN: {ee/}spec/{bin,channels,components,config,contracts,db,dependencies,elastic,elastic_integration,experiments,factories,finders,frontend,graphql,haml_lint,helpers,initializers,lib,metrics_server,models,policies,presenters,rack_servers,replicators,routing,rubocop,scripts,serializers,services,sidekiq,sidekiq_cluster,spam,support_specs,tasks,uploaders,validators,views,workers,tooling}{,/**/}*_spec.rb139KNAPSACK_LOG_LEVEL: debug140KNAPSACK_REPORT_PATH: knapsack/rspec-ee_unit_pg14_8_18_report.json141FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json142FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec-ee_unit_pg14_8_18_report.json143NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec-ee_unit_pg14_8_18_report.json144RSPEC_SKIPPED_TESTS_REPORT_PATH: rspec/skipped_tests-4841631393.txt145CRYSTALBALL: 146RSPEC_TESTS_MAPPING_ENABLED: 147RSPEC_TESTS_FILTER_FILE: 148Shell set options (set -o) enabled:149braceexpand on150hashall on151interactive-comments on152pipefail on153Running command: bundle exec rspec -Ispec -rspec_helper --color --failure-exit-code 1 --error-exit-code 2 --format documentation --format Support::Formatters::JsonFormatter --out rspec/rspec-4841631393.json --format RspecJunitFormatter --out rspec/rspec-4841631393.xml --fail-fast=20 --tag ~quarantine --tag ~level:background_migration --tag ~click_house -- ee/spec/services/security/scan_result_policies/update_approvals_service_spec.rb ee/spec/models/ee/namespace_spec.rb ee/spec/elastic_integration/global_search_spec.rb ee/spec/replicators/geo/project_wiki_repository_replicator_spec.rb ee/spec/replicators/geo/snippet_repository_replicator_spec.rb ee/spec/models/ci/pipeline_spec.rb ee/spec/config/metrics/every_metric_definition_spec.rb ee/spec/lib/gitlab/custom_file_templates_spec.rb ee/spec/models/repository_spec.rb ee/spec/replicators/geo/group_wiki_repository_replicator_spec.rb ee/spec/lib/ee/gitlab/background_migration/backfill_iteration_cadence_id_for_boards_spec.rb ee/spec/elastic_integration/epic_index_spec.rb ee/spec/models/concerns/elastic/project_spec.rb ee/spec/lib/gitlab/usage_data_counters/epic_activity_unique_counter_spec.rb ee/spec/elastic/migrate/20230720000000_reindex_wikis_to_fix_routing_spec.rb ee/spec/lib/audit/group_push_rules_changes_auditor_spec.rb ee/spec/models/namespaces/storage/root_size_spec.rb ee/spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb ee/spec/lib/gitlab/package_metadata/connector/offline_spec.rb ee/spec/lib/ee/gitlab/import_export/group/tree_restorer_spec.rb ee/spec/lib/banzai/filter/references/vulnerability_reference_filters_spec.rb ee/spec/services/groups/memberships/export_service_spec.rb ee/spec/elastic/migrate/20230321091100_backfill_hashed_root_namespace_id_on_issues_spec.rb ee/spec/services/ci/audit_variable_change_service_spec.rb ee/spec/finders/security/pure_findings_finder_spec.rb ee/spec/presenters/merge_request_approver_presenter_spec.rb ee/spec/models/ee/project_statistics_spec.rb ee/spec/serializers/licenses_list_entity_spec.rb ee/spec/lib/ee/gitlab/background_migration/delete_orphaned_transferred_project_approval_rules_spec.rb ee/spec/lib/gitlab/licenses/submit_license_usage_data_banner_spec.rb ee/spec/graphql/resolvers/geo/project_repository_registries_resolver_spec.rb ee/spec/graphql/resolvers/geo/design_management_repository_registries_resolver_spec.rb ee/spec/elastic/migrate/20230316150000_add_hashed_root_namespace_id_to_merge_requests_spec.rb ee/spec/elastic/migrate/20230628094243_add_archived_to_issues_spec.rb ee/spec/services/incident_management/pending_escalations/process_service_spec.rb ee/spec/lib/gitlab/subscription_portal/clients/rest_spec.rb ee/spec/workers/geo/repository_sync_worker_spec.rb ee/spec/models/dast_scanner_profile_spec.rb ee/spec/graphql/resolvers/iterations_resolver_spec.rb ee/spec/elastic/migrate/20230320011400_add_hashed_root_namespace_id_to_commits_spec.rb ee/spec/components/namespaces/storage/pre_enforcement_alert_component_spec.rb ee/spec/services/vulnerabilities/starboard_vulnerability_create_service_spec.rb ee/spec/models/ci/minutes/quota_spec.rb ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/mark_resolved_as_detected_spec.rb ee/spec/lib/banzai/reference_parser/iteration_parser_spec.rb ee/spec/services/system_notes/merge_train_service_spec.rb ee/spec/workers/system_access/group_saml_microsoft_group_sync_worker_spec.rb ee/spec/graphql/resolvers/geo/group_wiki_repository_registries_resolver_spec.rb ee/spec/services/app_sec/dast/scanner_profiles/update_service_spec.rb ee/spec/lib/ee/sidebars/groups/menus/settings_menu_spec.rb ee/spec/workers/concerns/elastic/indexing_control_spec.rb ee/spec/lib/gitlab/geo/oauth/logout_token_spec.rb ee/spec/graphql/resolvers/epics/default_project_for_issue_creation_resolver_spec.rb ee/spec/services/ee/issuable/destroy_service_spec.rb ee/spec/policies/packages/policies/group_policy_spec.rb ee/spec/workers/vulnerabilities/orphaned_remediations_cleanup_worker_spec.rb ee/spec/helpers/trials_helper_spec.rb ee/spec/lib/gitlab/vulnerability_scanning/dependency_scanning/finding_builder_spec.rb ee/spec/workers/ee/repository_check/batch_worker_spec.rb ee/spec/workers/gitlab_subscriptions/refresh_seats_worker_spec.rb ee/spec/lib/gitlab/insights/project_insights_config_spec.rb ee/spec/services/incident_management/pending_escalations/create_service_spec.rb ee/spec/services/app_sec/dast/scanner_profiles/destroy_service_spec.rb ee/spec/graphql/resolvers/ci/code_coverage_activities_resolver_spec.rb ee/spec/graphql/resolvers/epic_ancestors_resolver_spec.rb ee/spec/services/ee/users/build_service_spec.rb ee/spec/services/security/token_revocation_service_spec.rb ee/spec/services/ai/service_access_tokens_storage_service_spec.rb ee/spec/workers/elastic_index_bulk_cron_worker_spec.rb ee/spec/services/resource_events/change_weight_service_spec.rb ee/spec/workers/iterations/roll_over_issues_worker_spec.rb ee/spec/components/namespaces/storage/repository_limit_alert_component_spec.rb ee/spec/lib/gitlab/status_page/storage/s3_client_spec.rb ee/spec/services/ee/projects/unlink_fork_service_spec.rb ee/spec/policies/dast/profile_policy_spec.rb ee/spec/services/incident_management/escalation_policies/update_service_spec.rb ee/spec/services/issues/build_service_spec.rb ee/spec/services/incident_management/incidents/upload_metric_service_spec.rb ee/spec/serializers/dashboard_environments_serializer_spec.rb ee/spec/policies/vulnerabilities/state_transition_policy_spec.rb ee/spec/lib/ee/gitlab/gon_helper_spec.rb ee/spec/models/product_analytics/funnel_spec.rb ee/spec/helpers/projects/security/dast_profiles_helper_spec.rb ee/spec/workers/vulnerabilities/mark_dropped_as_resolved_worker_spec.rb ee/spec/services/projects/protect_default_branch_service_spec.rb ee/spec/lib/ee/backup/repositories_spec.rb ee/spec/services/issue_feature_flags/list_service_spec.rb ee/spec/graphql/ee/resolvers/work_items_resolver_spec.rb ee/spec/services/compliance_management/merge_requests/create_compliance_violations_service_spec.rb ee/spec/services/ee/commits/create_service_spec.rb ee/spec/services/ee/merge_request_metrics_service_spec.rb ee/spec/finders/billed_users_finder_spec.rb ee/spec/models/dast/profiles_pipeline_spec.rb ee/spec/graphql/resolvers/incident_management/issuable_resource_links_resolver_spec.rb ee/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb ee/spec/models/concerns/ee/clusters/agents/authorizations/ci_access/config_scopes_spec.rb ee/spec/services/quality_management/test_cases/create_service_spec.rb ee/spec/services/geo/blob_upload_service_spec.rb ee/spec/services/security/security_orchestration_policies/fetch_policy_service_spec.rb ee/spec/services/ee/projects/deploy_tokens/create_service_spec.rb ee/spec/finders/security/vulnerability_feedbacks_finder_spec.rb ee/spec/helpers/projects/learn_gitlab_helper_spec.rb ee/spec/services/security/scan_result_policies/sync_findings_to_approval_rules_service_spec.rb ee/spec/services/app_sec/dast/pre_scan_verification_steps/create_or_update_service_spec.rb ee/spec/lib/elastic/latest/note_instance_proxy_spec.rb ee/spec/lib/gitlab/insights/loader_spec.rb ee/spec/graphql/mutations/incident_management/oncall_schedule/create_spec.rb ee/spec/helpers/trial_registrations_helper_spec.rb ee/spec/lib/gitlab/analytics/cycle_analytics/summary/time_to_restore_service_spec.rb ee/spec/services/geo/hashed_storage_attachments_event_store_spec.rb ee/spec/services/incident_management/oncall_shifts/read_service_spec.rb ee/spec/lib/gitlab/graphql/aggregations/issues/lazy_links_aggregate_spec.rb ee/spec/lib/gitlab/license_scanning/pipeline_components_spec.rb ee/spec/workers/compliance_management/standards/gitlab/prevent_approval_by_author_worker_spec.rb ee/spec/graphql/resolvers/incident_management/escalation_policies_resolver_spec.rb ee/spec/lib/gitlab/llm/chain/tools/gitlab_documentation/executor_spec.rb ee/spec/lib/gitlab/import_export/project/relation_factory_spec.rb ee/spec/views/shared/_namespace_user_cap_reached_alert.html.haml_spec.rb ee/spec/serializers/epic_entity_spec.rb ee/spec/graphql/types/work_items/type_spec.rb ee/spec/services/ci/pipeline_bridge_status_service_spec.rb ee/spec/views/admin/groups/_form.html.haml_spec.rb ee/spec/finders/dast_site_validations_finder_spec.rb ee/spec/lib/gitlab/auth/group_saml/xml_response_spec.rb ee/spec/workers/product_analytics/post_push_worker_spec.rb ee/spec/graphql/types/dast/profile_cadence_type_spec.rb ee/spec/lib/remote_development/workspaces/create/creator_spec.rb ee/spec/services/work_items/export_csv_service_spec.rb ee/spec/services/package_metadata/ingestion/tasks/ingest_packages_spec.rb ee/spec/graphql/resolvers/analytics/contribution_analytics/contributions_resolver_spec.rb ee/spec/workers/elastic_cluster_reindexing_cron_worker_spec.rb ee/spec/lib/elastic/latest/commit_config_spec.rb ee/spec/graphql/types/ci/job_type_spec.rb ee/spec/helpers/users/identity_verification_helper_spec.rb ee/spec/services/security/security_orchestration_policies/process_rule_service_spec.rb ee/spec/views/shared/labels/_create_label_help_text.html.haml_spec.rb ee/spec/models/vulnerabilities/finding_link_spec.rb ee/spec/lib/gitlab/usage/metrics/instrumentations/protected_environment_approval_rules_required_approvals_average_metric_spec.rb ee/spec/lib/gitlab/favicon_spec.rb ee/spec/services/package_metadata/ingestion/ingestion_service_spec.rb ee/spec/services/users/abuse/namespace_bans/destroy_service_spec.rb ee/spec/validators/user_id_existence_validator_spec.rb ee/spec/models/concerns/geo/has_replicator_spec.rb ee/spec/services/ee/gpg_keys/destroy_service_spec.rb ee/spec/finders/work_items/widgets/filters/requirement_legacy_spec.rb ee/spec/models/ee/work_items/resource_link_event_spec.rb ee/spec/lib/sidebars/groups/menus/wiki_menu_spec.rb ee/spec/policies/approval_project_rule_policy_spec.rb ee/spec/graphql/resolvers/geo/geo_node_resolver_spec.rb ee/spec/services/ee/users/unblock_service_spec.rb ee/spec/workers/ci/sync_reports_to_report_approval_rules_worker_spec.rb ee/spec/services/merge_requests/mergeability/check_blocked_by_other_mrs_service_spec.rb ee/spec/lib/gitlab/vulnerability_scanning/security_report_builder_spec.rb ee/spec/services/concerns/epics/related_epic_links/usage_data_helper_spec.rb ee/spec/lib/gitlab/status_page/storage/s3_multipart_upload_spec.rb ee/spec/workers/iterations/cadences/schedule_create_iterations_worker_spec.rb ee/spec/services/external_status_checks/dispatch_service_spec.rb ee/spec/presenters/subscriptions/new_plan_presenter_spec.rb ee/spec/views/layouts/header/_read_only_banner.html.haml_spec.rb ee/spec/workers/incident_management/pending_escalations/issue_check_worker_spec.rb ee/spec/services/security/auto_fix_label_service_spec.rb ee/spec/serializers/linked_feature_flag_issue_entity_spec.rb ee/spec/graphql/types/dast/profile_branch_type_spec.rb ee/spec/presenters/ee/instance_clusterable_presenter_spec.rb ee/spec/workers/namespaces/sync_namespace_name_worker_spec.rb ee/spec/graphql/types/audit_events/exterrnal_audit_event_destination_type_spec.rb ee/spec/lib/sidebars/admin/panel_spec.rb ee/spec/graphql/types/geo/upload_registry_type_spec.rb ee/spec/models/ee/system/broadcast_message_spec.rb ee/spec/workers/create_github_webhook_worker_spec.rb ee/spec/helpers/admin/application_settings_helper_spec.rb ee/spec/models/gitlab_subscription_history_spec.rb ee/spec/views/admin/application_settings/_ai_access.html.haml_spec.rb ee/spec/elastic/migrate/20220825102900_backfill_label_ids_for_issues_spec.rb ee/spec/lib/ee/api/entities/scim/emails_spec.rb ee/spec/elastic/migrate/20220824133000_add_hidden_to_issues_spec.rb ee/spec/graphql/types/geo/ci_secure_file_registry_type_spec.rb ee/spec/graphql/types/merge_requests/approval_state_type_spec.rb ee/spec/lib/remote_development/unmatched_result_error_spec.rb ee/spec/lib/remote_development/workspaces/reconcile/input/agent_info_spec.rb ee/spec/graphql/types/epic_sort_enum_spec.rb ee/spec/lib/ee/api/entities/groups/repository_storage_move_spec.rb ee/spec/lib/gitlab/subscription_portal/client_spec.rb ee/spec/graphql/types/audit_events/streaming/instance_header_type_spec.rb ee/spec/graphql/types/dast/profile_schedule_input_type_spec.rb ee/spec/lib/gitlab/search_context/builder_spec.rb ee/spec/views/search/results/_issuable.html.haml_spec.rb ee/spec/views/admin/push_rules/_merge_request_approvals.html.haml_spec.rb ee/spec/lib/api/entities/epic_boards/list_spec.rb ee/spec/graphql/types/vulnerability_state_enum_spec.rb ee/spec/lib/remote_development/workspaces/create/volume_definer_spec.rb ee/spec/graphql/types/vulnerability_details/int_type_spec.rb ee/spec/graphql/types/vulnerability_location/dast_type_spec.rb ee/spec/lib/gitlab/email/feature_flag_wrapper_spec.rb ee/spec/lib/gitlab/insights/serializers/chartjs/bar_time_series_serializer_spec.rb ee/spec/graphql/types/gitlab_subscriptions/user_role_enum_spec.rb ee/spec/graphql/types/vulnerability_report_type_enum_spec.rb ee/spec/lib/ee/api/entities/gitlab_subscriptions/add_on_purchase_spec.rbKnapsack report generator started!154/builds/gitlab-org/gitlab/ee/app/services/remote_development/service_response_factory.rb:41: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!155/builds/gitlab-org/gitlab/ee/app/services/remote_development/workspaces/create_service.rb:28: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!156/builds/gitlab-org/gitlab/ee/app/services/remote_development/workspaces/reconcile_service.rb:38: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!157/builds/gitlab-org/gitlab/ee/app/services/remote_development/workspaces/update_service.rb:28: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!158/builds/gitlab-org/gitlab/ee/lib/remote_development/agent_config/main.rb:32: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!159/builds/gitlab-org/gitlab/ee/lib/remote_development/agent_config/updater.rb:11: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!160/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/authorizer.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!161/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/authorizer.rb:13: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!162/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:17: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!163/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:24: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!164/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:25: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!165/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:28: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!166/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/devfile_fetcher.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!167/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/devfile_fetcher.rb:16: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!168/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/devfile_flattener.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!169/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/editor_component_injector.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!170/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/editor_component_injector.rb:17: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!171/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/editor_component_injector.rb:18: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!172/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:43: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!173/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:54: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!174/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:102: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!175/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:126: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!176/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:159: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!177/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:202: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!178/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:235: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!179/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/pre_flatten_devfile_validator.rb:24: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!180/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/pre_flatten_devfile_validator.rb:52: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!181/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!182/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:17: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!183/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:18: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!184/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:23: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!185/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/volume_component_injector.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!186/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/volume_component_injector.rb:13: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!187/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/volume_component_injector.rb:14: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!188/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/main.rb:43: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!189/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/update/authorizer.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!190/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/update/updater.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!191/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/agent_infos_observer.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!192/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_extractor.rb:14: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!193/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_extractor.rb:16: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!194/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_to_infos_converter.rb:14: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!195/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_validator.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!196/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/output/rails_infos_observer.rb:11: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!197/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/output/workspaces_to_rails_infos_converter.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!198/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/orphaned_workspaces_observer.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!199/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/workspaces_from_agent_infos_updater.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!200/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/workspaces_to_be_returned_finder.rb:16: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!201/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/workspaces_to_be_returned_updater.rb:11: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!202/builds/gitlab-org/gitlab/ee/spec/lib/remote_development/workspaces/create/creator_spec.rb:64: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!203/builds/gitlab-org/gitlab/ee/spec/lib/remote_development/workspaces/create/creator_spec.rb:78: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!204Run options: exclude {:quarantine=>true, :level=>"background_migration", :click_house=>true}205Test environment set up in 0.670686336 seconds206Security::ScanResultPolicies::UpdateApprovalsService207 # order random208 #execute209 when approval rules are empty210 does not enqueue Security::GeneratePolicyViolationCommentWorker211 when security scan is removed in current pipeline212 when multi_pipeline_scan_result_policies is disabled213 behaves like does not update approvals_required214 is expected not to change `report_approver_rule.reload.approvals_required`215 behaves like triggers policy bot comment216 when feature flag "security_policy_approval_notification" is enabled217 enqueues Security::GeneratePolicyViolationCommentWorker218 when feature flag "security_policy_approval_notification" is disabled219 does not enqueue Security::GeneratePolicyViolationCommentWorker220 when approval rule scanners is empty221 behaves like does not update approvals_required222 is expected not to change `report_approver_rule.reload.approvals_required`223 behaves like triggers policy bot comment224 when feature flag "security_policy_approval_notification" is enabled225 enqueues Security::GeneratePolicyViolationCommentWorker226 when feature flag "security_policy_approval_notification" is disabled227 does not enqueue Security::GeneratePolicyViolationCommentWorker228 when scan type matches the approval rule scanners229 logs update230 behaves like does not update approvals_required231 is expected not to change `report_approver_rule.reload.approvals_required`232 behaves like triggers policy bot comment233 when feature flag "security_policy_approval_notification" is enabled234 enqueues Security::GeneratePolicyViolationCommentWorker235 when feature flag "security_policy_approval_notification" is disabled236 does not enqueue Security::GeneratePolicyViolationCommentWorker237 when scan type does not match the approval rule scanners238 behaves like sets approvals_required to 0239 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0240 behaves like triggers policy bot comment241 when feature flag "security_policy_approval_notification" is enabled242 enqueues Security::GeneratePolicyViolationCommentWorker243 when feature flag "security_policy_approval_notification" is disabled244 does not enqueue Security::GeneratePolicyViolationCommentWorker245 when there are no violated approval rules246 behaves like sets approvals_required to 0247 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0248 behaves like triggers policy bot comment249 when feature flag "security_policy_approval_notification" is enabled250 enqueues Security::GeneratePolicyViolationCommentWorker251 when feature flag "security_policy_approval_notification" is disabled252 does not enqueue Security::GeneratePolicyViolationCommentWorker253 when target pipeline is nil254 behaves like does not update approvals_required255 is expected not to change `report_approver_rule.reload.approvals_required`256 behaves like triggers policy bot comment257 when feature flag "security_policy_approval_notification" is enabled258 enqueues Security::GeneratePolicyViolationCommentWorker259 when feature flag "security_policy_approval_notification" is disabled260 does not enqueue Security::GeneratePolicyViolationCommentWorker261 when the number of findings in current pipeline exceed the allowed limit262 when vulnerability_states has only newly_detected263 behaves like new vulnerability_states264 does not call VulnerabilitiesCountService265 when vulnerability_states has only new_needs_triage266 behaves like new vulnerability_states267 does not call VulnerabilitiesCountService268 when vulnerability_states has only new_dismissed269 behaves like new vulnerability_states270 does not call VulnerabilitiesCountService271 when vulnerability_states are new_dismissed and new_needs_triage272 behaves like new vulnerability_states273 does not call VulnerabilitiesCountService274 when vulnerabilities count exceeds the allowed limit275 behaves like does not update approvals_required276 is expected not to change `report_approver_rule.reload.approvals_required`277 behaves like triggers policy bot comment278 when feature flag "security_policy_approval_notification" is enabled279 enqueues Security::GeneratePolicyViolationCommentWorker280 when feature flag "security_policy_approval_notification" is disabled281 does not enqueue Security::GeneratePolicyViolationCommentWorker282 when new findings are introduced and it exceeds the allowed limit283 logs update284 behaves like does not update approvals_required285 is expected not to change `report_approver_rule.reload.approvals_required`286 behaves like triggers policy bot comment287 when feature flag "security_policy_approval_notification" is enabled288 enqueues Security::GeneratePolicyViolationCommentWorker289 when feature flag "security_policy_approval_notification" is disabled290 does not enqueue Security::GeneratePolicyViolationCommentWorker291 when there are no new dismissed vulnerabilities292 when vulnerability_states is new_dismissed293 behaves like new vulnerability_states294 does not call VulnerabilitiesCountService295 behaves like sets approvals_required to 0296 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0297 when vulnerability_states is new_needs_triage298 behaves like new vulnerability_states299 does not call VulnerabilitiesCountService300 behaves like does not update approvals_required301 is expected not to change `report_approver_rule.reload.approvals_required`302 when vulnerability_states are new_dismissed and new_needs_triage303 behaves like new vulnerability_states304 does not call VulnerabilitiesCountService305 behaves like does not update approvals_required306 is expected not to change `report_approver_rule.reload.approvals_required`307 when there are new dismissed vulnerabilities308 when vulnerability_states is new_dismissed309 behaves like new vulnerability_states310 does not call VulnerabilitiesCountService311 behaves like does not update approvals_required312 is expected not to change `report_approver_rule.reload.approvals_required`313 when vulnerability_states is new_needs_triage314 behaves like new vulnerability_states315 does not call VulnerabilitiesCountService316 behaves like sets approvals_required to 0317 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0318 when vulnerability_states are new_dismissed and new_needs_triage319 behaves like new vulnerability_states320 does not call VulnerabilitiesCountService321 behaves like does not update approvals_required322 is expected not to change `report_approver_rule.reload.approvals_required`323 when there are preexisting findings that exceed the allowed limit324 when target pipeline is not empty325 when vulnerability_states has newly_detected326 behaves like sets approvals_required to 0327 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0328 behaves like triggers policy bot comment329 when feature flag "security_policy_approval_notification" is enabled330 enqueues Security::GeneratePolicyViolationCommentWorker331 when feature flag "security_policy_approval_notification" is disabled332 does not enqueue Security::GeneratePolicyViolationCommentWorker333 when vulnerability_states has new_needs_triage334 behaves like sets approvals_required to 0335 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0336 behaves like triggers policy bot comment337 when feature flag "security_policy_approval_notification" is enabled338 enqueues Security::GeneratePolicyViolationCommentWorker339 when feature flag "security_policy_approval_notification" is disabled340 does not enqueue Security::GeneratePolicyViolationCommentWorker341 when vulnerability_states has new_dismissed342 behaves like sets approvals_required to 0343 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0344 behaves like triggers policy bot comment345 when feature flag "security_policy_approval_notification" is enabled346 enqueues Security::GeneratePolicyViolationCommentWorker347 when feature flag "security_policy_approval_notification" is disabled348 does not enqueue Security::GeneratePolicyViolationCommentWorker349 when vulnerability_states has new_needs_triage and new_dismissed350 behaves like sets approvals_required to 0351 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0352 behaves like triggers policy bot comment353 when feature flag "security_policy_approval_notification" is enabled354 enqueues Security::GeneratePolicyViolationCommentWorker355 when feature flag "security_policy_approval_notification" is disabled356 does not enqueue Security::GeneratePolicyViolationCommentWorker357 when vulnerabilities count exceeds the allowed limit358 behaves like does not update approvals_required359 is expected not to change `report_approver_rule.reload.approvals_required`360 behaves like triggers policy bot comment361 when feature flag "security_policy_approval_notification" is enabled362 enqueues Security::GeneratePolicyViolationCommentWorker363 when feature flag "security_policy_approval_notification" is disabled364 does not enqueue Security::GeneratePolicyViolationCommentWorker365 when vulnerabilities count does not exceed the allowed limit366 behaves like sets approvals_required to 0367 is expected to change `report_approver_rule.reload.approvals_required` from 2 to 0368 behaves like triggers policy bot comment369 when feature flag "security_policy_approval_notification" is enabled370 enqueues Security::GeneratePolicyViolationCommentWorker371 when feature flag "security_policy_approval_notification" is disabled372 does not enqueue Security::GeneratePolicyViolationCommentWorker373 when target pipeline is nil374 behaves like does not update approvals_required375 is expected not to change `report_approver_rule.reload.approvals_required`376 behaves like triggers policy bot comment377 when feature flag "security_policy_approval_notification" is enabled378 enqueues Security::GeneratePolicyViolationCommentWorker379 when feature flag "security_policy_approval_notification" is disabled380 does not enqueue Security::GeneratePolicyViolationCommentWorker381 with multiple pipeline382 when security scan is removed in related pipeline383 behaves like does not update approvals_required384 is expected not to change `report_approver_rule.reload.approvals_required`385 behaves like triggers policy bot comment386 when feature flag "security_policy_approval_notification" is enabled387 enqueues Security::GeneratePolicyViolationCommentWorker388 when feature flag "security_policy_approval_notification" is disabled389 does not enqueue Security::GeneratePolicyViolationCommentWorker390 when the approval rule has vulnerability attributes391 is expected to receive new(anything, anything, hash_including(:fix_available=>true, :false_positive=>nil)) 1 time392 when vulnerability_attributes are nil393 is expected to receive new(anything, anything, hash_including(:fix_available=>nil, :false_positive=>nil)) 1 time394Namespace395 is expected to have one namespace_limit396 is expected to have one elasticsearch_indexed_namespace397 is expected to have one security_orchestration_policy_configuration class_name => Security::OrchestrationPolicyConfiguration398 is expected to have one upcoming_reconciliation399 is expected to have one storage_limit_exclusion400 is expected to have one system_access_microsoft_application401 is expected to have many ci_minutes_additional_packs402 is expected to have many member_roles403 is expected to have many subscription_add_on_purchases class_name => GitlabSubscriptions::AddOnPurchase404 is expected to delegate #trial? to the #gitlab_subscription object405 is expected to delegate #trial_ends_on to the #gitlab_subscription object406 is expected to delegate #trial_starts_on to the #gitlab_subscription object407 is expected to delegate #upgradable? to the #gitlab_subscription object408 is expected to delegate #trial_extended_or_reactivated? to the #gitlab_subscription object409 is expected to delegate #owner_email to the #owner object as #email, allowing #owner to return nil410 is expected to delegate #additional_purchased_storage_size= to the #namespace_limit object passing arguments [:args]411 is expected to delegate #additional_purchased_storage_ends_on to the #namespace_limit object412 is expected to delegate #additional_purchased_storage_ends_on= to the #namespace_limit object passing arguments [:args]413 is expected to delegate #temporary_storage_increase_ends_on to the #namespace_limit object414 is expected to delegate #temporary_storage_increase_ends_on= to the #namespace_limit object passing arguments [:args]415 is expected to delegate #temporary_storage_increase_enabled? to the #namespace_limit object416 is expected to delegate #eligible_for_temporary_storage_increase? to the #namespace_limit object417 is expected to delegate #third_party_ai_features_enabled to the #namespace_settings object, allowing #namespace_settings to return nil418 is expected to delegate #third_party_ai_features_enabled= to the #namespace_settings object passing arguments [:args], allowing #namespace_settings to return nil419 is expected to delegate #experiment_features_enabled to the #namespace_settings object, allowing #namespace_settings to return nil420 is expected to delegate #experiment_features_enabled= to the #namespace_settings object passing arguments [:args], allowing #namespace_settings to return nil421 default_plan?422 behaves like plan helper423 for a default plan424 is expected to eq true425 for a plan that isn't default426 plan_name: "free"427 is expected to eq false428 plan_name: "bronze"429 is expected to eq false430 plan_name: "silver"431 is expected to eq false432 plan_name: "premium"433 is expected to eq false434 plan_name: "gold"435 is expected to eq false436 plan_name: "ultimate"437 is expected to eq false438 plan_name: "ultimate_trial"439 is expected to eq false440 plan_name: "premium_trial"441 is expected to eq false442 plan_name: "opensource"443 is expected to eq false444 free_plan?445 behaves like plan helper446 for a free plan447 is expected to eq true448 for a plan that isn't free449 plan_name: "default"450 is expected to eq false451 plan_name: "bronze"452 is expected to eq false453 plan_name: "silver"454 is expected to eq false455 plan_name: "premium"456 is expected to eq false457 plan_name: "gold"458 is expected to eq false459 plan_name: "ultimate"460 is expected to eq false461 plan_name: "ultimate_trial"462 is expected to eq false463 plan_name: "premium_trial"464 is expected to eq false465 plan_name: "opensource"466 is expected to eq false467 bronze_plan?468 behaves like plan helper469 for a bronze plan470 is expected to eq true471 for a plan that isn't bronze472 plan_name: "default"473 is expected to eq false474 plan_name: "free"475 is expected to eq false476 plan_name: "silver"477 is expected to eq false478 plan_name: "premium"479 is expected to eq false480 plan_name: "gold"481 is expected to eq false482 plan_name: "ultimate"483 is expected to eq false484 plan_name: "ultimate_trial"485 is expected to eq false486 plan_name: "premium_trial"487 is expected to eq false488 plan_name: "opensource"489 is expected to eq false490 silver_plan?491 behaves like plan helper492 for a silver plan493 is expected to eq true494 for a plan that isn't silver495 plan_name: "default"496 is expected to eq false497 plan_name: "free"498 is expected to eq false499 plan_name: "bronze"500 is expected to eq false501 plan_name: "premium"502 is expected to eq false503 plan_name: "gold"504 is expected to eq false505 plan_name: "ultimate"506 is expected to eq false507 plan_name: "ultimate_trial"508 is expected to eq false509 plan_name: "premium_trial"510 is expected to eq false511 plan_name: "opensource"512 is expected to eq false513 premium_plan?514 behaves like plan helper515 for a premium plan516 is expected to eq true517 for a plan that isn't premium518 plan_name: "default"519 is expected to eq false520 plan_name: "free"521 is expected to eq false522 plan_name: "bronze"523 is expected to eq false524 plan_name: "silver"525 is expected to eq false526 plan_name: "gold"527 is expected to eq false528 plan_name: "ultimate"529 is expected to eq false530 plan_name: "ultimate_trial"531 is expected to eq false532 plan_name: "premium_trial"533 is expected to eq false534 plan_name: "opensource"535 is expected to eq false536 gold_plan?537 behaves like plan helper538 for a gold plan539 is expected to eq true540 for a plan that isn't gold541 plan_name: "default"542 is expected to eq false543 plan_name: "free"544 is expected to eq false545 plan_name: "bronze"546 is expected to eq false547 plan_name: "silver"548 is expected to eq false549 plan_name: "premium"550 is expected to eq false551 plan_name: "ultimate"552 is expected to eq false553 plan_name: "ultimate_trial"554 is expected to eq false555 plan_name: "premium_trial"556 is expected to eq false557 plan_name: "opensource"558 is expected to eq false559 ultimate_plan?560 behaves like plan helper561 for a ultimate plan562 is expected to eq true563 for a plan that isn't ultimate564 plan_name: "default"565 is expected to eq false566 plan_name: "free"567 is expected to eq false568 plan_name: "bronze"569 is expected to eq false570 plan_name: "silver"571 is expected to eq false572 plan_name: "premium"573 is expected to eq false574 plan_name: "gold"575 is expected to eq false576 plan_name: "ultimate_trial"577 is expected to eq false578 plan_name: "premium_trial"579 is expected to eq false580 plan_name: "opensource"581 is expected to eq false582 ultimate_trial_plan?583 behaves like plan helper584 for a ultimate_trial plan585 is expected to eq true586 for a plan that isn't ultimate_trial587 plan_name: "default"588 is expected to eq false589 plan_name: "free"590 is expected to eq false591 plan_name: "bronze"592 is expected to eq false593 plan_name: "silver"594 is expected to eq false595 plan_name: "premium"596 is expected to eq false597 plan_name: "gold"598 is expected to eq false599 plan_name: "ultimate"600 is expected to eq false601 plan_name: "premium_trial"602 is expected to eq false603 plan_name: "opensource"604 is expected to eq false605 premium_trial_plan?606 behaves like plan helper607 for a premium_trial plan608 is expected to eq true609 for a plan that isn't premium_trial610 plan_name: "default"611 is expected to eq false612 plan_name: "free"613 is expected to eq false614 plan_name: "bronze"615 is expected to eq false616 plan_name: "silver"617 is expected to eq false618 plan_name: "premium"619 is expected to eq false620 plan_name: "gold"621 is expected to eq false622 plan_name: "ultimate"623 is expected to eq false624 plan_name: "ultimate_trial"625 is expected to eq false626 plan_name: "opensource"627 is expected to eq false628 opensource_plan?629 behaves like plan helper630 for a opensource plan631 is expected to eq true632 for a plan that isn't opensource633 plan_name: "default"634 is expected to eq false635 plan_name: "free"636 is expected to eq false637 plan_name: "bronze"638 is expected to eq false639 plan_name: "silver"640 is expected to eq false641 plan_name: "premium"642 is expected to eq false643 plan_name: "gold"644 is expected to eq false645 plan_name: "ultimate"646 is expected to eq false647 plan_name: "ultimate_trial"648 is expected to eq false649 plan_name: "premium_trial"650 is expected to eq false651 #free_personal?652 user: true, paid: false, expected: true653 returns expected boolean value654 user: false, paid: false, expected: false655 returns expected boolean value656 user: false, paid: true, expected: false657 returns expected boolean value658 #prevent_delete?659 paid: true, trial: false, expected: true660 returns expected boolean value661 paid: false, trial: false, expected: false662 returns expected boolean value663 paid: false, trial: true, expected: false664 returns expected boolean value665 paid: true, trial: true, expected: false666 returns expected boolean value667 #use_elasticsearch?668 returns false if elasticsearch indexing is disabled669 returns true if elasticsearch indexing enabled but limited indexing disabled670 returns true if it is enabled specifically671 #use_zoekt?672 delegates to ::Zoekt::IndexedNamespace673 #has_index_assignment?674 delegates to ::Search::NamespaceIndexAssignment675 #hashed_root_namespace_id676 delegates to Search.hash_namespace_id677 #invalidate_elasticsearch_indexes_cache!678 clears the cache for the namespace679 #actual_plan_name680 when namespace does not have a subscription associated681 returns default plan682 when running on Gitlab.com683 when namespace has a subscription associated684 returns the associated plan name685 when namespace does not have subscription associated686 returns a free plan name687 when the database is read-only688 returns free plan689 does not create a gitlab_subscription690 when namespace is not persisted691 returns free plan692 does not create a gitlab_subscription693 when the database is not read-only694 returns free plan695 creates a gitlab_subscription696 scopes697 .with_feature_available_in_plan698 Bronze plan has Starter features699 returns namespaces with plan700 includes namespace from higher plans701 Silver, Premium and Premium_trial plans have Premium license features702 returns namespaces with matching plans703 includes namespace from higher plans704 Gold, Ultimate, Ultimate_trial and OpenSource plans have Ultimate license features705 returns namespaces with matching plans706 when no namespace matches the feature707 returns an empty list708 .join_gitlab_subscription709 when there is no subscription710 returns namespace with nil subscription711 when there is a subscription712 returns namespace with subscription set713 .not_in_active_trial714 is consistent with !trial_active? method715 .in_default_plan716 includes namespace with no subscription717 plan_name: "free", expect_in_default_plan: true718 returns expected result719 plan_name: "default", expect_in_default_plan: true720 returns expected result721 plan_name: "bronze", expect_in_default_plan: false722 returns expected result723 plan_name: "silver", expect_in_default_plan: false724 returns expected result725 plan_name: "premium", expect_in_default_plan: false726 returns expected result727 plan_name: "gold", expect_in_default_plan: false728 returns expected result729 plan_name: "ultimate", expect_in_default_plan: false730 returns expected result731 .eligible_for_trial732 when there is no subscription733 is expected to eq #<Namespaces::UserNamespace id:2742 @namespace1264>734 when there is a subscription735 with a plan that is eligible for a trial736 plan: "default"737 and has not yet been trialed738 is expected to eq #<Namespaces::UserNamespace id:2742 @namespace1264>739 but has already had a trial740 is expected to be nil741 but is currently being trialed742 is expected to be nil743 plan: "free"744 and has not yet been trialed745 is expected to eq #<Namespaces::UserNamespace id:2742 @namespace1264>746 but has already had a trial747 is expected to be nil748 but is currently being trialed749 is expected to be nil750 with a plan that is ineligible for a trial751 plan: "bronze"752 is expected to be nil753 plan: "silver"754 is expected to be nil755 plan: "premium"756 is expected to be nil757 plan: "gold"758 is expected to be nil759 plan: "ultimate"760 is expected to be nil761 plan: "ultimate_trial"762 is expected to be nil763 plan: "premium_trial"764 is expected to be nil765 plan: "opensource"766 is expected to be nil767 .namespace_settings_with_ai_enabled768 when all settings are enabled769 is expected to contain exactly #<Namespaces::UserNamespace id:2743 @namespace1265>770 when third party features are disabled771 is expected to be empty772 when experimental features are disabled773 is expected to be empty774 .with_ai_supported_plan775 is expected to contain exactly #<Namespaces::UserNamespace id:2745 @namespace1267>, #<Namespaces::UserNamespace id:2746 @namespace1268>, and #<Namespaces::UserNamespace id:2747 @namespace1269>776 validation777 ensures max_pages_size is an integer greater than 0 (or equal to 0 to indicate unlimited/maximum)778 custom validations779 #validate_shared_runner_minutes_support780 when changing :shared_runners_minutes_limit781 when group is a subgroup782 is invalid783 when group is root784 is valid785 keeping elasticsearch up to date786 includes Elastic::NamespaceUpdate concern787 after_commit :sync_name_with_customers_dot788 when the name is not updated789 does not trigger a sync with CustomersDot790 when the name is updated791 when not on Gitlab.com?792 does not trigger a sync with CustomersDot793 when project namespace794 when the owner is privatized by abuse automation795 does not trigger a sync with CustomersDot796 when the owner is not privatized by abuse automation797 does not trigger a sync with CustomersDot798 when group namespace799 when the owner is privatized by abuse automation800 triggers a name sync with CustomersDot801 when the owner is not privatized by abuse automation802 triggers a name sync with CustomersDot803 when user namespace804 when the owner is privatized by abuse automation805 does not trigger a sync with CustomersDot806 when the owner is not privatized by abuse automation807 triggers a name sync with CustomersDot808 #move_dir809 when running on a primary node810 logs the Geo::RepositoryRenamedEvent for each project inside namespace811 properly builds old_path_with_namespace812 #feature_available?813 behaves like feature available814 when on SaaS instance815 combines the global setting with the group setting816 when feature available on the plan817 when feature available for current group818 returns true819 when license is applied to parent group820 child group has feature available821 when feature not available in the plan822 returns false823 with service ping features824 when service ping features are disabled825 is disabled826 when service ping features are enabled827 is disabled828 when on self managed instance829 uses the global setting when running on premise830 with service ping features831 when service ping features are disabled832 is disabled833 when service ping features are enabled834 is enabled835 #feature_available_non_trial?836 behaves like feature available837 when on SaaS instance838 combines the global setting with the group setting839 when feature available on the plan840 when feature available for current group841 returns true842 when license is applied to parent group843 child group has feature available844 when feature not available in the plan845 returns false846 with service ping features847 when service ping features are disabled848 is disabled849 when service ping features are enabled850 is disabled851 when on self managed instance852 uses the global setting when running on premise853 with service ping features854 when service ping features are disabled855 is disabled856 when service ping features are enabled857 is enabled858 when the group has an active trial859 is expected to be falsey860 with a subgroup861 feature is not available for the subgroup862 #actual_limits863 when no limits are defined in the system864 behaves like uses an implied configuration865 is a non persisted PlanLimits866 has all limits defined867 when "default" plan is defined in the system868 when no limits are set869 behaves like uses an implied configuration870 is a non persisted PlanLimits871 has all limits defined872 when limits are set for the default plan873 is expected to eq #<PlanLimits id: 1, plan_id: 381, ci_pipeline_size: 2, ci_active_jobs: 3, project_hooks: 100, group_h...l_max_file_size: 10737418240, limits_history: {}, updated_at: "2023-08-10 12:30:41.140153910 +0000">874 when "free" plan is defined in the system875 when no limits are set876 behaves like uses an implied configuration877 is a non persisted PlanLimits878 has all limits defined879 when limits are set for the free plan880 is expected to eq #<PlanLimits id: 2, plan_id: 390, ci_pipeline_size: 4, ci_active_jobs: 5, project_hooks: 100, group_h...l_max_file_size: 10737418240, limits_history: {}, updated_at: "2023-08-10 12:30:41.758569876 +0000">881 when subscription plan is defined in the system882 when limits are not set for the plan883 behaves like uses an implied configuration884 is a non persisted PlanLimits885 has all limits defined886 when limits are set for the plan887 is expected to eq #<PlanLimits id: 3, plan_id: 397, ci_pipeline_size: 6, ci_active_jobs: 7, project_hooks: 100, group_h...l_max_file_size: 10737418240, limits_history: {}, updated_at: "2023-08-10 12:30:42.516493955 +0000">888 #any_project_with_shared_runners_enabled?889 without projects890 is expected to be falsey891 group with shared runners enabled project892 is expected to be truthy893 subgroup with shared runners enabled project894 is expected to be truthy895 with project and disabled shared runners896 is expected to be falsey897 #shared_runners_minutes_limit_enabled?898 with project899 when no limit defined900 is expected to be falsey901 when limit is defined902 is expected to be truthy903 when is subgroup904 is expected to be falsey905 without project906 is expected to be falsey907 #paid?908 returns true for a root namespace with a paid plan909 returns false for a subgroup of a group with a paid plan910 #actual_plan911 when namespace does not have a subscription associated912 generates a subscription and returns default plan913 when running on Gitlab.com914 for personal namespaces915 when namespace has a subscription associated916 when this subscription was purchased before EoA rollout (legacy)917 returns the legacy plan from the subscription918 when this subscription was purchase after EoA rollout (new plan)919 returns the new plan from the subscription920 when namespace does not have a subscription associated921 generates a subscription and returns free plan922 when free plan does exist923 generates a subscription924 for groups925 when the group is a subgroup with a parent926 when free plan does exist927 does not generates a subscription928 when parent group has a subscription associated929 returns the plan from the subscription930 #billed_user_ids931 returns 1932 #billable_members_count933 returns 1934 #eligible_for_trial?935 on_dot_com: true, has_parent: true, never_had_trial: true, plan_eligible_for_trial: true936 when on .com937 and the namespace has a parent namespace938 and the namespace has not yet been trialed939 and the namespace is eligible for a trial940 is expected to eq false941 on_dot_com: true, has_parent: true, never_had_trial: true, plan_eligible_for_trial: false942 when on .com943 and the namespace has a parent namespace944 and the namespace has not yet been trialed945 and the namespace is not eligible for a trial946 is expected to eq false947 on_dot_com: true, has_parent: true, never_had_trial: false, plan_eligible_for_trial: true948 when on .com949 and the namespace has a parent namespace950 and the namespace has been trialed951 and the namespace is eligible for a trial952 is expected to eq false953 on_dot_com: true, has_parent: true, never_had_trial: false, plan_eligible_for_trial: false954 when on .com955 and the namespace has a parent namespace956 and the namespace has been trialed957 and the namespace is not eligible for a trial958 is expected to eq false959 on_dot_com: true, has_parent: false, never_had_trial: true, plan_eligible_for_trial: true960 when on .com961 and the namespace is a parent namespace962 and the namespace has not yet been trialed963 and the namespace is eligible for a trial964 is expected to eq true965 on_dot_com: true, has_parent: false, never_had_trial: true, plan_eligible_for_trial: false966 when on .com967 and the namespace is a parent namespace968 and the namespace has not yet been trialed969 and the namespace is not eligible for a trial970 is expected to eq false971 on_dot_com: true, has_parent: false, never_had_trial: false, plan_eligible_for_trial: true972 when on .com973 and the namespace is a parent namespace974 and the namespace has been trialed975 and the namespace is eligible for a trial976 is expected to eq false977 on_dot_com: true, has_parent: false, never_had_trial: false, plan_eligible_for_trial: false978 when on .com979 and the namespace is a parent namespace980 and the namespace has been trialed981 and the namespace is not eligible for a trial982 is expected to eq false983 on_dot_com: false, has_parent: true, never_had_trial: true, plan_eligible_for_trial: true984 when not on .com985 and the namespace has a parent namespace986 and the namespace has not yet been trialed987 and the namespace is eligible for a trial988 is expected to eq false989 on_dot_com: false, has_parent: true, never_had_trial: true, plan_eligible_for_trial: false990 when not on .com991 and the namespace has a parent namespace992 and the namespace has not yet been trialed993 and the namespace is not eligible for a trial994 is expected to eq false995 on_dot_com: false, has_parent: true, never_had_trial: false, plan_eligible_for_trial: true996 when not on .com997 and the namespace has a parent namespace998 and the namespace has been trialed999 and the namespace is eligible for a trial1000 is expected to eq false1001 on_dot_com: false, has_parent: true, never_had_trial: false, plan_eligible_for_trial: false1002 when not on .com1003 and the namespace has a parent namespace1004 and the namespace has been trialed1005 and the namespace is not eligible for a trial1006 is expected to eq false1007 on_dot_com: false, has_parent: false, never_had_trial: true, plan_eligible_for_trial: true1008 when not on .com1009 and the namespace is a parent namespace1010 and the namespace has not yet been trialed1011 and the namespace is eligible for a trial1012 is expected to eq false1013 on_dot_com: false, has_parent: false, never_had_trial: true, plan_eligible_for_trial: false1014 when not on .com1015 and the namespace is a parent namespace1016 and the namespace has not yet been trialed1017 and the namespace is not eligible for a trial1018 is expected to eq false1019 on_dot_com: false, has_parent: false, never_had_trial: false, plan_eligible_for_trial: true1020 when not on .com1021 and the namespace is a parent namespace1022 and the namespace has been trialed1023 and the namespace is eligible for a trial1024 is expected to eq false1025 on_dot_com: false, has_parent: false, never_had_trial: false, plan_eligible_for_trial: false1026 when not on .com1027 and the namespace is a parent namespace1028 and the namespace has been trialed1029 and the namespace is not eligible for a trial1030 is expected to eq false1031 #file_template_project_id1032 is cleared before validation1033 #checked_file_template_project1034 is always nil1035 #checked_file_template_project_id1036 is always nil1037 #store_security_reports_available?1038 when at least one security report feature is enabled1039 report_type: :sast1040 is expected to equal true1041 report_type: :secret_detection1042 is expected to equal true1043 report_type: :dast1044 is expected to equal true1045 report_type: :dependency_scanning1046 is expected to equal true1047 report_type: :container_scanning1048 is expected to equal true1049 report_type: :cluster_image_scanning1050 is expected to equal true1051 when no security report feature is available1052 is expected to equal false1053 #ingest_sbom_reports_available?1054 when at least one sbom-related feature is available1055 feature: :container_scanning1056 is expected to equal true1057 feature: :dependency_scanning1058 is expected to equal true1059 feature: :license_scanning1060 is expected to equal true1061 when sbom-related features are not available1062 is expected to equal false1063 #over_storage_limit?1064 returns true if the namespace is over the storage limit1065 returns false if the namespace storage equals the limit1066 returns false if the namespace is under the storage limit1067 #read_only?1068 over_storage_limit: false, over_free_user_limit: false, result: false1069 is expected to eq false1070 over_storage_limit: false, over_free_user_limit: true, result: true1071 is expected to eq true1072 over_storage_limit: true, over_free_user_limit: false, result: true1073 is expected to eq true1074 over_storage_limit: true, over_free_user_limit: true, result: true1075 is expected to eq true1076 #total_repository_size_excess1077 projects with a variety of repository sizes and limits1078 when namespace-level repository_size_limit is not set1079 returns the total excess size of projects with repositories that exceed the size limit1080 when namespace-level repository_size_limit is 0 (unlimited)1081 returns the total excess size of projects with repositories that exceed the size limit1082 when namespace-level repository_size_limit is a positive number1083 returns the total excess size of projects with repositories that exceed the size limit1084 when all projects have repository_size_limit of 0 (unlimited)1085 returns zero regardless of the namespace or instance-level repository_size_limit1086 #repository_size_excess_project_count1087 projects with a variety of repository sizes and limits1088 when namespace-level repository_size_limit is not set1089 returns the count of projects with repositories that exceed the size limit1090 when namespace-level repository_size_limit is 0 (unlimited)1091 returns the count of projects with repositories that exceed the size limit1092 when namespace-level repository_size_limit is a positive number1093 returns the count of projects with repositories that exceed the size limit1094 when all projects have repository_size_limit of 0 (unlimited)1095 returns zero regardless of the namespace or instance-level repository_size_limit1096 #total_repository_size1097 returns the total size of all project repositories1098 #additional_purchased_storage_size1099 calls namespace_limit#eligible_additional_purchased_storage_size1100 #contains_locked_projects?1101 total_excess: 5242880, result: false1102 returns a boolean indicating whether the root namespace contains locked projects1103 total_excess: 10485760, result: false1104 returns a boolean indicating whether the root namespace contains locked projects1105 total_excess: 15728640, result: true1106 returns a boolean indicating whether the root namespace contains locked projects1107 #actual_repository_size_limit1108 when repository_size_limit is set on the namespace1109 returns the local repository_size_limit1110 when repository_size_limit is not set on the namespace1111 returns the global repository_size_limit1112 #actual_size_limit1113 when in repository enforcement1114 returns the value set globally1115 returns the value set locally1116 when in namespace enforcement1117 returns the plan limit1118 #membership_lock with subgroups1119 when creating a subgroup1120 under a parent with "Membership lock" enabled1121 enables "Membership lock" on the subgroup1122 under a parent with "Membership lock" disabled1123 does not enable "Membership lock" on the subgroup1124 when enabling the parent group "Membership lock"1125 the subgroup "Membership lock" not changed1126 when disabling the parent group "Membership lock" (which was already enabled)1127 and the subgroup "Membership lock" is enabled1128 the subgroup "Membership lock" does not change1129 but the subgroup "Membership lock" is disabled1130 the subgroup "Membership lock" does not change1131 when a group is transferred into a root group1132 when the root group "Membership lock" is enabled1133 when the subgroup "Membership lock" is enabled1134 the subgroup "Membership lock" does not change1135 when the subgroup "Membership lock" is disabled1136 the subgroup "Membership lock" not changed1137 when the root group "Membership lock" is disabled1138 when the subgroup "Membership lock" is enabled1139 the subgroup "Membership lock" does not change1140 when the subgroup "Membership lock" is disabled1141 the subgroup "Membership lock" does not change1142 #namespace_limit1143 when there is a parent namespace1144 with a namespace limit1145 returns the parent namespace limit1146 with no namespace limit1147 builds namespace limit1148 when there is no parent ancestor1149 for personal namespaces1150 with a namespace limit1151 returns the namespace limit1152 with no namespace limit1153 builds namespace limit1154 for groups1155 with a namespace limit1156 returns the namespace limit1157 with no namespace limit1158 builds namespace limit1159 #enable_temporary_storage_increase!1160 sets a date1161 is invalid when set twice1162 #root_storage_size1163 when namespace storage limits are enabled1164 returns an instance of RootSize1165 when namespace storage limits are disabled1166 returns an instance of RootExcessSize1167 when namespace storage limits are disabled and automatic_purchased_storage_allocation is enabled1168 returns an instance of RootExcessSize1169 when namespace storage limits are enabled for free namespaces and disabled for paid1170 returns an instance of RootSize for a free namespace1171 returns an instance of RootExcessSize for a paid namespace1172 #user_cap_available?1173 when not on Gitlab.com1174 is expected to equal false1175 when :saas_user_caps is disabled1176 is expected to equal false1177 when :saas_user_caps is enabled1178 is expected to equal true1179 when the namespace is not a group1180 is expected to equal false1181 #capacity_left_for_user?1182 is expected to eq true1183 #exclude_guests?1184 returns false1185 #all_security_orchestration_policy_configurations1186 when configuration is invalid1187 returns empty list1188 when configuration is valid1189 returns security policy configurations for all valid parent groups1190 #all_inherited_security_orchestration_policy_configurations1191 when there is no configuration for group ancestors1192 returns empty list1193 when configuration is invalid1194 returns empty list1195 when configuration is valid1196 returns security policy configurations for all valid parent groups1197 #all_projects_pages_domains1198 finds all pages domains by default1199 finds only verified domains when param is true1200 when projects are outside the top-level group hierarchy1201 does not include the outside domain1202 #domain_verification_available?1203 when the feature is not licensed1204 is not available1205 on GitLab.com1206 is not available1207 when the feature is licensed1208 is not available1209 on GitLab.com1210 is available1211 with a subgroup1212 is not available1213 #custom_roles_enabled?1214 is expected to eq true1215 when licensed feature is not available1216 is expected to eq false1217 when sub-group1218 is expected to eq true1219 #allow_stale_runner_pruning?1220 is expected to eq false1221 with ci_cd_setting.allow_stale_runner_pruning set to false1222 is expected to eq false1223 with ci_cd_setting.allow_stale_runner_pruning set to true1224 is expected to eq true1225 #allow_stale_runner_pruning=1226 with no existing ci_cd_setting association1227 when value is set to false1228 does not build new association1229 when value is set to true1230 builds association1231 with existing ci_cd_setting association1232 when value is set to true1233 updates association1234 #code_suggestions_enabled?1235 feature_ai_assist_flag: true, code_suggestions: true, result: true1236 is expected to eq true1237 feature_ai_assist_flag: true, code_suggestions: false, result: false1238 is expected to eq false1239 feature_ai_assist_flag: false, code_suggestions: true, result: false1240 is expected to eq false1241 feature_ai_assist_flag: false, code_suggestions: false, result: false1242 is expected to eq false1243 #reached_project_access_token_limit?1244 returns false1245GlobalSearch1246 Respect feature visibility levels1247 Private projects1248 does not find items if features are disabled1249 shows items to member only if features are enabled1250 Internal projects1251 does not find items if features are disabled1252 shows items to member only if features are enabled1253 shows items to member only if features are private1254 Public projects1255 does not find items if features are disabled1256 finds items if features are enabled1257 shows items to member only if features are private1258Geo::ProjectWikiRepositoryReplicator1259 # order random1260 invokes replicator.handle_after_create_commit on create1261 #housekeeping_model_record1262 is implemented1263 #mutable?1264 is true1265 #model1266 is implemented1267 is a Class1268 #geo_handle_after_destroy1269 creates a Geo::Event1270 when replication feature flag is disabled1271 does not publish1272 #geo_handle_after_update1273 creates a Geo::Event1274 when replication feature flag is disabled1275 does not publish1276 deleted event consumption1277 runs Geo::RepositoryRegistryRemovalService service1278 #snapshot_url1279 returns snapshot URL based on the primary node URI1280 behaves like a verifiable replicator1281 events1282 has checksum_succeeded event1283 .verification_enabled?1284 when replication is enabled1285 when verification_feature_flag_enabled? returns true1286 returns true1287 when verification_feature_flag_enabled? returns false1288 returns false1289 when replication is disabled1290 returns false1291 .checksummed_count1292 when verification is enabled1293 when batch count feature flag is enabled1294 behaves like a counter of succeeded available verifiables1295 is expected to eq 11296 excludes other verification states1297 when batch count feature flag is disabled1298 behaves like a counter of succeeded available verifiables1299 is expected to eq 11300 excludes other verification states1301 when verification is disabled1302 returns nil1303 .verified_count1304 when verification is enabled1305 when batch count feature flag is enabled1306 behaves like a counter of succeeded available verifiables1307 is expected to eq 11308 excludes other verification states1309 when batch count feature flag is disabled1310 behaves like a counter of succeeded available verifiables1311 is expected to eq 11312 excludes other verification states1313 when verification is disabled1314 returns nil1315 .checksum_failed_count1316 when verification is enabled1317 when batch count feature flag is enabled1318 behaves like a counter of failed available verifiables1319 is expected to eq 11320 excludes other verification states1321 when batch count feature flag is disabled1322 behaves like a counter of failed available verifiables1323 is expected to eq 11324 excludes other verification states1325 when verification is disabled1326 returns nil1327 .verification_failed_count1328 when verification is enabled1329 when batch count feature flag is enabled1330 behaves like a counter of failed available verifiables1331 is expected to eq 11332 excludes other verification states1333 when batch count feature flag is disabled1334 behaves like a counter of failed available verifiables1335 is expected to eq 11336 excludes other verification states1337 when verification is disabled1338 returns nil1339 .verification_total_count1340 when verification is enabled1341 when batch count feature flag is enabled1342 when the verification_state is disabled1343 is expected to eq 01344 when the verification_state is not disabled1345 is expected to eq 11346 when batch count feature flag is disabled1347 when the verification_state is disabled1348 is expected to eq 01349 when the verification_state is not disabled1350 is expected to eq 11351 when verification is disabled1352 returns nil1353 .trigger_background_verification1354 when verification is enabled1355 for a Geo secondary1356 does not enqueue ReverificationBatchWorker1357 enqueues VerificationBatchWorker1358 enqueues VerificationTimeoutWorker1359 for a Geo primary1360 enqueues ReverificationBatchWorker1361 enqueues VerificationStateBackfillWorker1362 enqueues VerificationBatchWorker1363 enqueues VerificationTimeoutWorker1364 when verification is disabled1365 does not enqueue VerificationBatchWorker1366 does not enqueue VerificationTimeoutWorker1367 .backfill_verification_state_table1368 calls VerificationStateBackfillService1369 when on secondary1370 returns false1371 .verify_batch1372 when there are records needing verification1373 calls #verify on each replicator1374 .remaining_verification_batch_count1375 converts needs_verification_count to number of batches1376 .remaining_reverification_batch_count1377 converts needs_reverification_count to number of batches1378 .reverify_batch!1379 calls #reverify_batch1380 .replicator_batch_to_verify1381 returns usable Replicator instances1382 .model_record_id_batch_to_verify1383 when the batch is filled by pending rows1384 returns IDs of pending rows1385 does not call .verification_failed_batch1386 when that batch is not filled by pending rows1387 includes IDs of failed rows1388 .verification_pending_batch1389 when current node is a primary1390 delegates to the model class of the replicator1391 when current node is a secondary1392 delegates to the registry class of the replicator1393 .verification_failed_batch1394 when current node is a primary1395 delegates to the model class of the replicator1396 when current node is a secondary1397 delegates to the registry class of the replicator1398 .fail_verification_timeouts1399 when current node is a primary1400 delegates to the model class of the replicator1401 when current node is a secondary1402 delegates to the registry class of the replicator1403 #after_verifiable_update1404 verification_enabled: true, immutable: true, checksum: nil, checksummable: true, expect_verify_async: true1405 calls verify_async only if needed1406 verification_enabled: true, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false1407 calls verify_async only if needed1408 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false1409 calls verify_async only if needed1410 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false1411 calls verify_async only if needed1412 verification_enabled: true, immutable: false, checksum: nil, checksummable: true, expect_verify_async: true1413 calls verify_async only if needed1414 verification_enabled: true, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false1415 calls verify_async only if needed1416 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: true1417 calls verify_async only if needed1418 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false1419 calls verify_async only if needed1420 verification_enabled: false, immutable: true, checksum: nil, checksummable: true, expect_verify_async: false1421 calls verify_async only if needed1422 verification_enabled: false, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false1423 calls verify_async only if needed1424 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false1425 calls verify_async only if needed1426 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false1427 calls verify_async only if needed1428 verification_enabled: false, immutable: false, checksum: nil, checksummable: true, expect_verify_async: false1429 calls verify_async only if needed1430 verification_enabled: false, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false1431 calls verify_async only if needed1432 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: false1433 calls verify_async only if needed1434 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false1435 calls verify_async only if needed1436 #verify_async1437 on a Geo primary1438 calls verification_started! and enqueues VerificationWorker1439 #verify1440 wraps the checksum calculation in track_checksum_attempt!1441 #verification_state_tracker1442 on a Geo primary1443 returns model_record1444 on a Geo secondary1445 returns registry1446 #handle_after_checksum_succeeded1447 on a Geo primary1448 creates checksum_succeeded event1449 is called on verification success1450 on a Geo secondary1451 does not create an event1452 #consume_event_checksum_succeeded1453 with a persisted model_record1454 on a Geo primary1455 does nothing1456 on a Geo secondary1457 with a persisted registry1458 with a registry which is verified1459 sets state to verification_pending1460 with a registry which is pending verification1461 does not change state from verification_pending1462 with an unpersisted registry1463 does not persist the registry1464 #primary_verification_succeeded?1465 when the model record is verification_succeeded1466 returns true1467 when the model record is verification_succeeded1468 returns false1469 integration tests1470 on a primary1471 background backfill1472 verifies model records1473 triggered by events1474 verifies model records1475 on a secondary1476 background backfill1477 verifies registries1478 triggered by events1479 verifies registries1480 .git_access_class1481 is implemented1482 #verify1483 when wiki git repository does not exist1484 creates an empty git repository1485 .replicables_for_current_secondary1486 when syncing object storage is enabled1487 behaves like is implemented and returns a valid relation1488 is implemented1489 when syncing object storage is disabled1490 behaves like is implemented and returns a valid relation1491 is implemented1492 with selective sync disabled1493 behaves like is implemented and returns a valid relation1494 is implemented1495 with selective sync enabled for namespaces1496 behaves like is implemented and returns a valid relation1497 is implemented1498 with selective sync enabled for shards1499 behaves like is implemented and returns a valid relation1500 is implemented1501 #snapshot_enabled?1502 returns true1503 #replicator1504 is defined and does not raise error1505 updated event consumption1506 in replicables_for_current_secondary list1507 runs Geo::FrameworkRepositorySyncService service1508 not in replicables_for_current_secondary list1509 does not run Geo::FrameworkRepositorySyncService service1510 when a sync is currently running1511 moves registry state to pending1512 .no_repo_message1513 is implemented1514 .housekeeping_enabled?1515 is implemented1516 behaves like a replicator1517 Geo node status1518 on a primary site1519 .primary_total_count1520 when batch count feature flag is enabled1521 returns the number of available replicables on primary1522 when batch count feature flag is disabled1523 returns the number of available replicables on primary1524 on a secondary site1525 .registry_count1526 when batch count feature flag is enabled1527 returns the number of registries on secondary1528 when batch count feature flag is disabled1529 returns the number of registries on secondary1530 .synced_count1531 when batch count feature flag is enabled1532 returns the number of synced items on secondary1533 when batch count feature flag is disabled1534 returns the number of synced items on secondary1535 .failed_count1536 when batch count feature flag is enabled1537 returns the number of failed items on secondary1538 when batch count feature flag is disabled1539 returns the number of failed items on secondary1540 when replicator is Geo::RegistrySyncWorker compatible1541 has "created" and "deleted" events1542 when replicator enqueues a sync event1543 is expected to receive perform_async("project_wiki_repository", "updated", {"model_record_id"=>109}) 1 time1544Geo::SnippetRepositoryReplicator1545 invokes replicator.handle_after_create_commit on create1546 behaves like a replicator1547 Geo node status1548 on a primary site1549 .primary_total_count1550 when batch count feature flag is enabled1551 returns the number of available replicables on primary1552 when batch count feature flag is disabled1553 returns the number of available replicables on primary1554 on a secondary site1555 .registry_count1556 when batch count feature flag is enabled1557 returns the number of registries on secondary1558 when batch count feature flag is disabled1559 returns the number of registries on secondary1560 .synced_count1561 when batch count feature flag is enabled1562 returns the number of synced items on secondary1563 when batch count feature flag is disabled1564 returns the number of synced items on secondary1565 .failed_count1566 when batch count feature flag is enabled1567 returns the number of failed items on secondary1568 when batch count feature flag is disabled1569 returns the number of failed items on secondary1570 when replicator is Geo::RegistrySyncWorker compatible1571 has "created" and "deleted" events1572 when replicator enqueues a sync event1573 is expected to receive perform_async("snippet_repository", "updated", {"model_record_id"=>22}) 1 time1574 behaves like a verifiable replicator1575 events1576 has checksum_succeeded event1577 .verification_enabled?1578 when replication is enabled1579 when verification_feature_flag_enabled? returns true1580 returns true1581 when verification_feature_flag_enabled? returns false1582 returns false1583 when replication is disabled1584 returns false1585 .checksummed_count1586 when verification is enabled1587 when batch count feature flag is enabled1588 behaves like a counter of succeeded available verifiables1589 is expected to eq 11590 excludes other verification states1591 when batch count feature flag is disabled1592 behaves like a counter of succeeded available verifiables1593 is expected to eq 11594 excludes other verification states1595 when verification is disabled1596 returns nil1597 .verified_count1598 when verification is enabled1599 when batch count feature flag is enabled1600 behaves like a counter of succeeded available verifiables1601 is expected to eq 11602 excludes other verification states1603 when batch count feature flag is disabled1604 behaves like a counter of succeeded available verifiables1605 is expected to eq 11606 excludes other verification states1607 when verification is disabled1608 returns nil1609 .checksum_failed_count1610 when verification is enabled1611 when batch count feature flag is enabled1612 behaves like a counter of failed available verifiables1613 is expected to eq 11614 excludes other verification states1615 when batch count feature flag is disabled1616 behaves like a counter of failed available verifiables1617 is expected to eq 11618 excludes other verification states1619 when verification is disabled1620 returns nil1621 .verification_failed_count1622 when verification is enabled1623 when batch count feature flag is enabled1624 behaves like a counter of failed available verifiables1625 is expected to eq 11626 excludes other verification states1627 when batch count feature flag is disabled1628 behaves like a counter of failed available verifiables1629 is expected to eq 11630 excludes other verification states1631 when verification is disabled1632 returns nil1633 .verification_total_count1634 when verification is enabled1635 when batch count feature flag is enabled1636 when the verification_state is disabled1637 is expected to eq 01638 when the verification_state is not disabled1639 is expected to eq 11640 when batch count feature flag is disabled1641 when the verification_state is disabled1642 is expected to eq 01643 when the verification_state is not disabled1644 is expected to eq 11645 when verification is disabled1646 returns nil1647 .trigger_background_verification1648 when verification is enabled1649 for a Geo secondary1650 does not enqueue ReverificationBatchWorker1651 enqueues VerificationBatchWorker1652 enqueues VerificationTimeoutWorker1653 for a Geo primary1654 enqueues ReverificationBatchWorker1655 enqueues VerificationStateBackfillWorker1656 enqueues VerificationBatchWorker1657 enqueues VerificationTimeoutWorker1658 when verification is disabled1659 does not enqueue VerificationBatchWorker1660 does not enqueue VerificationTimeoutWorker1661 .backfill_verification_state_table1662 calls VerificationStateBackfillService1663 when on secondary1664 returns false1665 .verify_batch1666 when there are records needing verification1667 calls #verify on each replicator1668 .remaining_verification_batch_count1669 converts needs_verification_count to number of batches1670 .remaining_reverification_batch_count1671 converts needs_reverification_count to number of batches1672 .reverify_batch!1673 calls #reverify_batch1674 .replicator_batch_to_verify1675 returns usable Replicator instances1676 .model_record_id_batch_to_verify1677 when the batch is filled by pending rows1678 returns IDs of pending rows1679 does not call .verification_failed_batch1680 when that batch is not filled by pending rows1681 includes IDs of failed rows1682 .verification_pending_batch1683 when current node is a primary1684 delegates to the model class of the replicator1685 when current node is a secondary1686 delegates to the registry class of the replicator1687 .verification_failed_batch1688 when current node is a primary1689 delegates to the model class of the replicator1690 when current node is a secondary1691 delegates to the registry class of the replicator1692 .fail_verification_timeouts1693 when current node is a primary1694 delegates to the model class of the replicator1695 when current node is a secondary1696 delegates to the registry class of the replicator1697 #after_verifiable_update1698 verification_enabled: true, immutable: true, checksum: nil, checksummable: true, expect_verify_async: true1699 calls verify_async only if needed1700 verification_enabled: true, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false1701 calls verify_async only if needed1702 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false1703 calls verify_async only if needed1704 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false1705 calls verify_async only if needed1706 verification_enabled: true, immutable: false, checksum: nil, checksummable: true, expect_verify_async: true1707 calls verify_async only if needed1708 verification_enabled: true, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false1709 calls verify_async only if needed1710 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: true1711 calls verify_async only if needed1712 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false1713 calls verify_async only if needed1714 verification_enabled: false, immutable: true, checksum: nil, checksummable: true, expect_verify_async: false1715 calls verify_async only if needed1716 verification_enabled: false, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false1717 calls verify_async only if needed1718 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false1719 calls verify_async only if needed1720 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false1721 calls verify_async only if needed1722 verification_enabled: false, immutable: false, checksum: nil, checksummable: true, expect_verify_async: false1723 calls verify_async only if needed1724 verification_enabled: false, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false1725 calls verify_async only if needed1726 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: false1727 calls verify_async only if needed1728 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false1729 calls verify_async only if needed1730 #verify_async1731 on a Geo primary1732 calls verification_started! and enqueues VerificationWorker1733 #verify1734 wraps the checksum calculation in track_checksum_attempt!1735 #verification_state_tracker1736 on a Geo primary1737 returns model_record1738 on a Geo secondary1739 returns registry1740 #handle_after_checksum_succeeded1741 on a Geo primary1742 creates checksum_succeeded event1743 is called on verification success1744 on a Geo secondary1745 does not create an event1746 #consume_event_checksum_succeeded1747 with a persisted model_record1748 on a Geo primary1749 does nothing1750 on a Geo secondary1751 with a persisted registry1752 with a registry which is verified1753 sets state to verification_pending1754 with a registry which is pending verification1755 does not change state from verification_pending1756 with an unpersisted registry1757 does not persist the registry1758 #primary_verification_succeeded?1759 when the model record is verification_succeeded1760 returns true1761 when the model record is verification_succeeded1762 returns false1763 integration tests1764 on a primary1765 background backfill1766 verifies model records1767 triggered by events1768 verifies model records1769 on a secondary1770 background backfill1771 verifies registries1772 triggered by events1773 verifies registries1774 #replicator1775 is defined and does not raise error1776 .replicables_for_current_secondary1777 when syncing object storage is enabled1778 behaves like is implemented and returns a valid relation1779 is implemented1780 when syncing object storage is disabled1781 behaves like is implemented and returns a valid relation1782 is implemented1783 with selective sync disabled1784 behaves like is implemented and returns a valid relation1785 is implemented1786 with selective sync enabled for namespaces1787 behaves like is implemented and returns a valid relation1788 is implemented1789 with selective sync enabled for shards1790 behaves like is implemented and returns a valid relation1791 is implemented1792 #geo_handle_after_update1793 creates a Geo::Event1794 when replication feature flag is disabled1795 does not publish1796 #geo_handle_after_destroy1797 creates a Geo::Event1798 when replication feature flag is disabled1799 does not publish1800 updated event consumption1801 in replicables_for_current_secondary list1802 runs Geo::FrameworkRepositorySyncService service1803 not in replicables_for_current_secondary list1804 does not run Geo::FrameworkRepositorySyncService service1805 when a sync is currently running1806 moves registry state to pending1807 deleted event consumption1808 runs Geo::RepositoryRegistryRemovalService service1809 .git_access_class1810 is implemented1811 .no_repo_message1812 is implemented1813 .housekeeping_enabled?1814 is implemented1815 #housekeeping_model_record1816 is implemented1817 #model1818 is implemented1819 is a Class1820 #mutable?1821 is true1822 .no_repo_message1823 returns the proper error message for snippet repositories1824Ci::Pipeline1825 associations1826 is expected to have many security_scans class_name => Security::Scan1827 is expected to have many security_findings class_name => Security::Finding through security_scans source => findings1828 is expected to have many downstream_bridges1829 is expected to have many vulnerability_findings class_name => Vulnerabilities::Finding through vulnerabilities_finding_pipelines1830 is expected to have many vulnerabilities_finding_pipelines class_name => Vulnerabilities::FindingPipeline1831 is expected to have one dast_profiles_pipeline class_name => Dast::ProfilesPipeline1832 is expected to have one dast_profile class_name => Dast::Profile through dast_profiles_pipeline1833 .failure_reasons1834 contains failure reasons about exceeded limits1835 .latest_completed_pipeline_ids_per_source1836 returns expected pipeline ids1837 #batch_lookup_report_artifact_for_file_type1838 with security report artifact1839 when feature is available1840 returns the dependency_scanning artifact1841 when feature is not available1842 doesn't return the dependency_scanning artifact1843 with license scanning artifact1844 when feature is available1845 returns the license_scanning artifact1846 when feature is not available1847 doesn't return the license_scanning artifact1848 with browser performance artifact1849 when feature is available1850 returns the browser_performance artifact1851 when feature is not available1852 doesn't return the browser_performance artifact1853 with load performance artifact1854 when feature is available1855 returns the load_performance artifact1856 when feature is not available1857 doesn't return the load_performance artifact1858 #security_reports1859 when pipeline has multiple builds with security reports1860 assigns pipeline to the reports1861 returns security reports with collected data grouped as expected1862 when builds are retried1863 does not take retried builds into account1864 when the `report_types` parameter is provided1865 returns only the reports which are requested1866 when pipeline is a child pipeline1867 the reports should be accessible from the parent pipeline1868 when pipeline does not have any builds with security reports1869 returns empty security reports1870 ::Security::StoreScansWorker1871 when pipeline is succeeded1872 behaves like storing the security scans1873 when the security scans can be stored for the pipeline1874 schedules store security scans job1875 when the security scans can not be stored for the pipeline1876 does not schedule store security scans job1877 when pipeline is dropped1878 behaves like storing the security scans1879 when the security scans can be stored for the pipeline1880 schedules store security scans job1881 when the security scans can not be stored for the pipeline1882 does not schedule store security scans job1883 when pipeline is skipped1884 behaves like storing the security scans1885 when the security scans can be stored for the pipeline1886 schedules store security scans job1887 when the security scans can not be stored for the pipeline1888 does not schedule store security scans job1889 when pipeline is canceled1890 behaves like storing the security scans1891 when the security scans can be stored for the pipeline1892 schedules store security scans job1893 when the security scans can not be stored for the pipeline1894 does not schedule store security scans job1895 ::Sbom::IngestReportsWorker1896 when transitioning to a completed status1897 transition: :succeed1898 behaves like ingesting sbom reports1899 when sbom reports can be ingested for the pipeline1900 on the default branch1901 schedules ingest sbom reports job1902 if pipeline is a child1903 does not schedule ingest sbom reports job1904 on a non-default branch1905 does not schedule ingest sbom reports job1906 when sbom reports can not be ingested for the pipeline1907 on the default branch1908 does not schedule ingest sbom reports job1909 on a non-default branch1910 does not schedule ingest sbom reports job1911 transition: :drop1912 behaves like ingesting sbom reports1913 when sbom reports can be ingested for the pipeline1914 on the default branch1915 schedules ingest sbom reports job1916 if pipeline is a child1917 does not schedule ingest sbom reports job1918 on a non-default branch1919 does not schedule ingest sbom reports job1920 when sbom reports can not be ingested for the pipeline1921 on the default branch1922 does not schedule ingest sbom reports job1923 on a non-default branch1924 does not schedule ingest sbom reports job1925 transition: :skip1926 behaves like ingesting sbom reports1927 when sbom reports can be ingested for the pipeline1928 on the default branch1929 schedules ingest sbom reports job1930 if pipeline is a child1931 does not schedule ingest sbom reports job1932 on a non-default branch1933 does not schedule ingest sbom reports job1934 when sbom reports can not be ingested for the pipeline1935 on the default branch1936 does not schedule ingest sbom reports job1937 on a non-default branch1938 does not schedule ingest sbom reports job1939 transition: :cancel1940 behaves like ingesting sbom reports1941 when sbom reports can be ingested for the pipeline1942 on the default branch1943 schedules ingest sbom reports job1944 if pipeline is a child1945 does not schedule ingest sbom reports job1946 on a non-default branch1947 does not schedule ingest sbom reports job1948 when sbom reports can not be ingested for the pipeline1949 on the default branch1950 does not schedule ingest sbom reports job1951 on a non-default branch1952 does not schedule ingest sbom reports job1953 when transitioning to a non-completed status1954 transition: :enqueue1955 does not ingest sbom reports1956 transition: :request_resource1957 does not ingest sbom reports1958 transition: :prepare1959 does not ingest sbom reports1960 transition: :run1961 does not ingest sbom reports1962 transition: :block1963 does not ingest sbom reports1964 transition: :delay1965 does not ingest sbom reports1966 #license_scanning_report1967 when pipeline has multiple builds with license scanning reports1968 returns a license scanning report with collected data1969 when builds are retried1970 does not take retried builds into account1971 when pipeline does not have any builds with license scanning reports1972 returns an empty license scanning report1973 #dependency_list_reports1974 when pipeline has a build with dependency list reports1975 when the license_scanning_sbom_scanner feature flag is false1976 returns a dependency list report with collected data1977 when builds are retried1978 does not take retried builds into account1979 with failed builds1980 does not runs queries on failed builds1981 when pipeline does not have any builds with dependency_list reports1982 returns an empty dependency_list report1983 #metrics_report1984 when pipeline has multiple builds with metrics reports1985 returns a metrics report with collected data1986 when pipeline has multiple builds with metrics reports that are retried1987 does not take retried builds into account1988 when pipeline does not have any builds with metrics reports1989 returns an empty metrics report1990 #sbom_reports1991 when pipeline has a build with sbom reports1992 returns a list of sbom reports belonging to the artifact1993 when pipeline has multiple builds with sbom reports1994 returns a list of sbom reports belonging to the artifact1995 when pipeline does not have any builds with sbom reports1996 returns an empty reports list1997 state machine transitions1998 on pipeline complete1999 from waiting_for_resource2000 schedules Ci::SyncReportsToReportApprovalRulesWorker2001 from preparing2002 schedules Ci::SyncReportsToReportApprovalRulesWorker2003 from pending2004 schedules Ci::SyncReportsToReportApprovalRulesWorker2005 from running2006 schedules Ci::SyncReportsToReportApprovalRulesWorker2007 when pipeline has downstream bridges2008 when transitioning to success2009 schedules the pipeline bridge worker2010 when transitioning to blocked2011 schedules the pipeline bridge worker2012 when pipeline project has downstream subscriptions2013 when pipeline runs on a tag2014 when feature is not available2015 does not schedule the trigger downstream subscriptions worker2016 when feature is available2017 schedules the trigger downstream subscriptions worker2018 #latest_merged_result_pipeline?2019 is expected to be truthy2020 when pipeline is not merge request pipeline2021 is expected to be falsy2022 when source sha is outdated2023 is expected to be falsy2024 when target sha is outdated2025 is expected to be falsy2026 #retryable?2027 with pipeline for merged results2028 is expected to equal true2029 #merge_train_pipeline?2030 is expected to be truthy2031 when ref is merge ref2032 is expected to be falsy2033 #ensure_persistent_ref2034 when the persistent ref does not exist2035 logs a pipeline ref created event2036 when the persistent ref exists2037 does not log a pipeline ref created event2038 #merge_request_event_type2039 when pipeline is merge train pipeline2040 is expected to eq :merge_train2041 when pipeline is merge request pipeline2042 is expected to eq :merged_result2043 when pipeline is detached merge request pipeline2044 is expected to eq :detached2045 #latest_failed_security_builds2046 is expected to contain exactly #<Ci::Build status: "failed", finished_at: "2023-08-10 08:53:29.000000000 +0000", created_at: "2023-0... processed: false, scheduling_type: "stage", id: 69, stage_id: 22, partition_id: 100, tag_list: nil>2047 #license_scan_completed?2048 pipeline_status: :blocked, build_types: [:container_scanning], expected_status: false2049 is expected to eq false2050 pipeline_status: :blocked, build_types: [:cluster_image_scanning], expected_status: false2051 is expected to eq false2052 pipeline_status: :blocked, build_types: [:license_scan_v2_1, :container_scanning], expected_status: true2053 is expected to eq true2054 pipeline_status: :blocked, build_types: [:license_scan_v2_1], expected_status: true2055 is expected to eq true2056 pipeline_status: :blocked, build_types: [], expected_status: false2057 is expected to eq false2058 pipeline_status: :failed, build_types: [:container_scanning], expected_status: false2059 is expected to eq false2060 pipeline_status: :failed, build_types: [:cluster_image_scanning], expected_status: false2061 is expected to eq false2062 pipeline_status: :failed, build_types: [:license_scan_v2_1, :container_scanning], expected_status: true2063 is expected to eq true2064 pipeline_status: :failed, build_types: [:license_scan_v2_1], expected_status: true2065 is expected to eq true2066 pipeline_status: :failed, build_types: [], expected_status: false2067 is expected to eq false2068 pipeline_status: :running, build_types: [:container_scanning], expected_status: false2069 is expected to eq false2070 pipeline_status: :running, build_types: [:cluster_image_scanning], expected_status: false2071 is expected to eq false2072 pipeline_status: :running, build_types: [:license_scan_v2_1, :container_scanning], expected_status: true2073 is expected to eq true2074 pipeline_status: :running, build_types: [:license_scan_v2_1], expected_status: true2075 is expected to eq true2076 pipeline_status: :running, build_types: [], expected_status: false2077 is expected to eq false2078 pipeline_status: :success, build_types: [:container_scanning], expected_status: false2079 is expected to eq false2080 pipeline_status: :success, build_types: [:cluster_image_scanning], expected_status: false2081 is expected to eq false2082 pipeline_status: :success, build_types: [:license_scan_v2_1, :container_scanning], expected_status: true2083 is expected to eq true2084 pipeline_status: :success, build_types: [:license_scan_v2_1], expected_status: true2085 is expected to eq true2086 pipeline_status: :success, build_types: [], expected_status: false2087 is expected to eq false2088 #can_store_security_reports?2089 when the security reports can not be stored for the project2090 when the pipeline does not have security reports2091 is expected to be falsy2092 when the pipeline has security reports2093 is expected to be falsy2094 when the security reports can be stored for the project2095 when the pipeline does not have security reports2096 is expected to be falsy2097 when the pipeline has security reports2098 is expected to be truthy2099 #can_ingest_sbom_reports?2100 when pipeline has sbom_reports2101 when sbom report ingestion is available2102 is expected to equal true2103 when sbom report ingestion is not available2104 is expected to equal false2105 when pipeline does not have sbom_reports2106 when sbom report ingestion is available2107 is expected to equal false2108 when sbom report ingestion is not available2109 is expected to equal false2110 #security_findings_partition_number2111 when the pipeline already has associated `security_scans`2112 is expected to eq 202113 when the pipeline does not have associated `security_scans`2114 is expected to eq 5552115 #has_security_findings?2116 when the pipeline has security_findings2117 is expected to be truthy2118 when the pipeline does not have security_findings2119 is expected to be falsey2120 #triggered_for_ondemand_dast_scan?2121 when the feature flag is enabled2122 is expected to be truthy2123 when the pipeline only has the correct source2124 is expected to be falsey2125 when the pipeline only has the correct config_source2126 is expected to be falsey2127 #needs_touch?2128 when pipeline was updated less than 5 minutes ago2129 is expected to eq false2130 when pipeline was updated more than 5 minutes ago2131 is expected to eq true2132 #has_security_report_ingestion_warnings?2133 when there are no associated security scans with warnings2134 is expected to be falsey2135 when there is an associated security scan with warnings2136 is expected to be truthy2137 #has_security_report_ingestion_errors?2138 when there are no associated security scans with errors2139 is expected to be falsey2140 when there is an associated security scan with errors2141 is expected to be truthy2142 #total_ci_minutes_consumed2143 returns calculated ci_minutes2144 #security_scan_types2145 returns security_scan_types2146 .self_and_descendant_security_scans2147 returns the security scan from the parent and each child pipeline2148Every metric definition2149 is included in the Usage Ping hash structure2150 only uses .yml and .json formats from metric related files in (ee/)config/metrics directory2151 metrics classes2152 uses all metrics classes2153 with value json schema2154/builds/gitlab-org/gitlab/vendor/ruby/3.0.0/gems/ohai-17.9.0/lib/ohai/plugins/rpm.rb:25: warning: already initialized constant MACROS_MARKER2155/builds/gitlab-org/gitlab/vendor/ruby/3.0.0/gems/ohai-17.9.0/lib/ohai/plugins/rpm.rb:25: warning: previous definition of MACROS_MARKER was here2156/builds/gitlab-org/gitlab/vendor/ruby/3.0.0/gems/ohai-17.9.0/lib/ohai/plugins/rpm.rb:27: warning: already initialized constant DO_NOT_SPLIT2157/builds/gitlab-org/gitlab/vendor/ruby/3.0.0/gems/ohai-17.9.0/lib/ohai/plugins/rpm.rb:27: warning: previous definition of DO_NOT_SPLIT was here2158 has a valid structure2159Gitlab::CustomFileTemplates2160 #enabled?2161 instance_licensed: false, namespace_licensed: false, instance_enabled: false, namespace_enabled: false2162 is expected to eq false2163 instance_licensed: false, namespace_licensed: false, instance_enabled: false, namespace_enabled: true2164 is expected to eq false2165 instance_licensed: false, namespace_licensed: false, instance_enabled: true, namespace_enabled: false2166 is expected to eq false2167 instance_licensed: false, namespace_licensed: false, instance_enabled: true, namespace_enabled: true2168 is expected to eq false2169 instance_licensed: false, namespace_licensed: true, instance_enabled: false, namespace_enabled: false2170 is expected to eq false2171 instance_licensed: false, namespace_licensed: true, instance_enabled: false, namespace_enabled: true2172 is expected to eq true2173 instance_licensed: false, namespace_licensed: true, instance_enabled: true, namespace_enabled: false2174 is expected to eq false2175 instance_licensed: false, namespace_licensed: true, instance_enabled: true, namespace_enabled: true2176 is expected to eq true2177 instance_licensed: true, namespace_licensed: false, instance_enabled: false, namespace_enabled: false2178 is expected to eq false2179 instance_licensed: true, namespace_licensed: false, instance_enabled: false, namespace_enabled: true2180 is expected to eq false2181 instance_licensed: true, namespace_licensed: false, instance_enabled: true, namespace_enabled: false2182 is expected to eq true2183 instance_licensed: true, namespace_licensed: false, instance_enabled: true, namespace_enabled: true2184 is expected to eq true2185 instance_licensed: true, namespace_licensed: true, instance_enabled: false, namespace_enabled: false2186 is expected to eq false2187 instance_licensed: true, namespace_licensed: true, instance_enabled: false, namespace_enabled: true2188 is expected to eq true2189 instance_licensed: true, namespace_licensed: true, instance_enabled: true, namespace_enabled: false2190 is expected to eq true2191 instance_licensed: true, namespace_licensed: true, instance_enabled: true, namespace_enabled: true2192 is expected to eq true2193 #all2194 template_finder: Gitlab::Template::CustomDockerfileTemplate, type: :dockerfile2195 unlicensed2196 is expected to be empty2197 licensed2198 in a toplevel group2199 orders results from most specific to least specific2200 in a subgroup2201 orders results from most specific to least specific2202 template_finder: Gitlab::Template::CustomGitignoreTemplate, type: :gitignore2203 unlicensed2204 is expected to be empty2205 licensed2206 in a toplevel group2207 orders results from most specific to least specific2208 in a subgroup2209 orders results from most specific to least specific2210 template_finder: Gitlab::Template::CustomGitlabCiYmlTemplate, type: :gitlab_ci_yml2211 unlicensed2212 is expected to be empty2213 licensed2214 in a toplevel group2215 orders results from most specific to least specific2216 in a subgroup2217 orders results from most specific to least specific2218 template_finder: Gitlab::Template::CustomLicenseTemplate, type: :license2219 unlicensed2220 is expected to be empty2221 licensed2222 in a toplevel group2223 orders results from most specific to least specific2224 in a subgroup2225 orders results from most specific to least specific2226 #find2227 template_finder: Gitlab::Template::CustomDockerfileTemplate, type: :dockerfile2228 unlicensed2229 is expected to be nil2230 is expected to be nil2231 licensed2232 in a toplevel group2233 finds a group template2234 finds an instance template2235 returns nil for an unknown key2236 in a subgroup2237 finds a template from the subgroup2238 finds a template from the parent group2239 finds an instance template2240 returns nil for an unknown key2241 when subgroup template names overlap with ancestor2242 returns a template from the subgroup2243 finds a template from the parent group with specified project2244 when looking for template for a specific project2245 finds a valid template when looking into group template project2246 finds a valid template when looking into instance template project2247 does not find a template when given project does not have the template2248 template_finder: Gitlab::Template::CustomGitignoreTemplate, type: :gitignore2249 unlicensed2250 is expected to be nil2251 is expected to be nil2252 licensed2253 in a toplevel group2254 finds a group template2255 finds an instance template2256 returns nil for an unknown key2257 in a subgroup2258 finds a template from the subgroup2259 finds a template from the parent group2260 finds an instance template2261 returns nil for an unknown key2262 when subgroup template names overlap with ancestor2263 returns a template from the subgroup2264 finds a template from the parent group with specified project2265 when looking for template for a specific project2266 finds a valid template when looking into group template project2267 finds a valid template when looking into instance template project2268 does not find a template when given project does not have the template2269 template_finder: Gitlab::Template::CustomGitlabCiYmlTemplate, type: :gitlab_ci_yml2270 unlicensed2271 is expected to be nil2272 is expected to be nil2273 licensed2274 in a toplevel group2275 finds a group template2276 finds an instance template2277 returns nil for an unknown key2278 in a subgroup2279 finds a template from the subgroup2280 finds a template from the parent group2281 finds an instance template2282 returns nil for an unknown key2283 when subgroup template names overlap with ancestor2284 returns a template from the subgroup2285 finds a template from the parent group with specified project2286 when looking for template for a specific project2287 finds a valid template when looking into group template project2288 finds a valid template when looking into instance template project2289 does not find a template when given project does not have the template2290 template_finder: Gitlab::Template::CustomLicenseTemplate, type: :license2291 unlicensed2292 is expected to be nil2293 is expected to be nil2294 licensed2295 in a toplevel group2296 finds a group template2297 finds an instance template2298 returns nil for an unknown key2299 in a subgroup2300 finds a template from the subgroup2301 finds a template from the parent group2302 finds an instance template2303 returns nil for an unknown key2304 when subgroup template names overlap with ancestor2305 returns a template from the subgroup2306 finds a template from the parent group with specified project2307 when looking for template for a specific project2308 finds a valid template when looking into group template project2309 finds a valid template when looking into instance template project2310 does not find a template when given project does not have the template2311 #all_template_names2312 template_finder: Gitlab::Template::CustomDockerfileTemplate, type: :dockerfile2313 unlicensed2314 is expected to be empty2315 licensed2316 in a toplevel group2317 has the group names and instance as category2318 orders results from most specific to least specific2319 in a subgroup2320 with nested group templates2321 has the group names and instance as category2322 orders results from most specific to least specific2323 with templates missing for a nested group2324 when subgroup template config points to a project that has no templates2325 behaves like does not list an empty category2326 misses subgroup category2327 misses subgroup templates2328 when subgroup template config is not setup2329 behaves like does not list an empty category2330 misses subgroup category2331 misses subgroup templates2332 template_finder: Gitlab::Template::CustomGitignoreTemplate, type: :gitignore2333 unlicensed2334 is expected to be empty2335 licensed2336 in a toplevel group2337 has the group names and instance as category2338 orders results from most specific to least specific2339 in a subgroup2340 with nested group templates2341 has the group names and instance as category2342 orders results from most specific to least specific2343 with templates missing for a nested group2344 when subgroup template config points to a project that has no templates2345 behaves like does not list an empty category2346 misses subgroup category2347 misses subgroup templates2348 when subgroup template config is not setup2349 behaves like does not list an empty category2350 misses subgroup category2351 misses subgroup templates2352 template_finder: Gitlab::Template::CustomGitlabCiYmlTemplate, type: :gitlab_ci_yml2353 unlicensed2354 is expected to be empty2355 licensed2356 in a toplevel group2357 has the group names and instance as category2358 orders results from most specific to least specific2359 in a subgroup2360 with nested group templates2361 has the group names and instance as category2362 orders results from most specific to least specific2363 with templates missing for a nested group2364 when subgroup template config points to a project that has no templates2365 behaves like does not list an empty category2366 misses subgroup category2367 misses subgroup templates2368 when subgroup template config is not setup2369 behaves like does not list an empty category2370 misses subgroup category2371 misses subgroup templates2372 template_finder: Gitlab::Template::CustomLicenseTemplate, type: :license2373 unlicensed2374 is expected to be empty2375 licensed2376 in a toplevel group2377 has the group names and instance as category2378 orders results from most specific to least specific2379 in a subgroup2380 with nested group templates2381 has the group names and instance as category2382 orders results from most specific to least specific2383 with templates missing for a nested group2384 when subgroup template config points to a project that has no templates2385 behaves like does not list an empty category2386 misses subgroup category2387 misses subgroup templates2388 when subgroup template config is not setup2389 behaves like does not list an empty category2390 misses subgroup category2391 misses subgroup templates2392Repository2393 delegated methods2394 is expected to delegate #checksum to the #raw_repository object2395 is expected to delegate #find_remote_root_ref to the #raw_repository object2396 #after_sync2397 expires repository cache2398 does not call expire_branch_cache if repository does not exist2399 #fetch_upstream2400 fetches the URL without creating a remote2401 Elastic search2402 class method find_commits_by_message_with_elastic2403 returns commits2404 find_commits_by_message_with_elastic2405 returns commits2406 #upstream_branches2407 returns branches from the upstream remote2408 #keep_around2409 on a Geo primary2410 when a single SHA is passed2411 publishes Repositories::KeepAroundRefsCreatedEvent2412 when geo_project_repository_replication is enabled2413 creates a Geo::Event2414 when geo_project_repository_replication is disabled2415 creates a Geo::RepositoryUpdatedEvent2416 when multiple SHAs are passed2417 publishes exactly one Repositories::KeepAroundRefsCreatedEvent2418 when geo_project_repository_replication is enabled2419 creates exactly one Geo::Event2420 when geo_project_repository_replication is disabled2421 creates exactly one Geo::RepositoryUpdatedEvent2422 on a Geo secondary2423 when multiple SHAs are passed2424 publishes a Repositories::KeepAroundRefsCreatedEvent2425 when geo_project_repository_replication is enabled2426 does not create a Geo::Event2427 when geo_project_repository_replication is disabled2428 does not create a Geo::RepositoryUpdatedEvent2429 when no SHA is passed2430 does not publish a Repositories::KeepAroundRefsCreatedEvent2431 when geo_project_repository_replication is enabled2432 does not create a Geo::Event2433 when geo_project_repository_replication is disabled2434 does not create a Geo::RepositoryUpdatedEvent2435 #code_owners_blob2436 returns nil if there is no codeowners file2437 returns the content of the codeowners file when it is found2438 requests the CODOWNER blobs in batch in the correct order2439 #after_change_head2440 when geo_project_repository_replication is disabled2441 creates a RepositoryUpdatedEvent on a Geo primary2442 does not create a RepositoryUpdatedEvent on a Geo secondary2443 when geo_project_repository_replication is enabled2444 creates a geo event on a Geo primary2445 does not create a geo event on a Geo secondary2446 #insights_config_for2447 returns nil for an empty repository2448 returns a valid Insights config file2449 when no config file exists2450 returns nil if does not exist2451 #lfs_enabled?2452 for a group wiki repository2453 returns false2454 #update_root_ref2455 updates the default branch when HEAD has changed2456 always updates the default branch even when HEAD does not change2457 does not update the default branch when HEAD does not exist2458 does not raise error when repository does not exist2459 .group2460 repository: repository_of_group_wiki, expected_value: group2461 is expected to eq #<Group id:3803 @group120>2462 repository: repository_of_project_wiki, expected_value: nil2463 is expected to eq nil2464 repository: repository_of_project_within_group, expected_value: group2465 is expected to eq #<Group id:3803 @group120>2466 repository: repository_of_project_not_within_group, expected_value: nil2467 is expected to eq nil2468 #log_geo_updated_event2469 on a primary node2470 creates a RepositoryUpdatedEvent2471 creates a GeoEvent on a Geo primary2472Geo::GroupWikiRepositoryReplicator2473 invokes replicator.handle_after_create_commit on create2474 behaves like a replicator2475 Geo node status2476 on a primary site2477 .primary_total_count2478 when batch count feature flag is enabled2479 returns the number of available replicables on primary2480 when batch count feature flag is disabled2481 returns the number of available replicables on primary2482 on a secondary site2483 .registry_count2484 when batch count feature flag is enabled2485 returns the number of registries on secondary2486 when batch count feature flag is disabled2487 returns the number of registries on secondary2488 .synced_count2489 when batch count feature flag is enabled2490 returns the number of synced items on secondary2491 when batch count feature flag is disabled2492 returns the number of synced items on secondary2493 .failed_count2494 when batch count feature flag is enabled2495 returns the number of failed items on secondary2496 when batch count feature flag is disabled2497 returns the number of failed items on secondary2498 when replicator is Geo::RegistrySyncWorker compatible2499 has "created" and "deleted" events2500 when replicator enqueues a sync event2501 is expected to receive perform_async("group_wiki_repository", "updated", {"model_record_id"=>3834}) 1 time2502 behaves like a verifiable replicator2503 events2504 has checksum_succeeded event2505 .verification_enabled?2506 when replication is enabled2507 when verification_feature_flag_enabled? returns true2508 returns true2509 when verification_feature_flag_enabled? returns false2510 returns false2511 when replication is disabled2512 returns false2513 .checksummed_count2514 when verification is enabled2515 when batch count feature flag is enabled2516 behaves like a counter of succeeded available verifiables2517 is expected to eq 12518 excludes other verification states2519 when batch count feature flag is disabled2520 behaves like a counter of succeeded available verifiables2521 is expected to eq 12522 excludes other verification states2523 when verification is disabled2524 returns nil2525 .verified_count2526 when verification is enabled2527 when batch count feature flag is enabled2528 behaves like a counter of succeeded available verifiables2529 is expected to eq 12530 excludes other verification states2531 when batch count feature flag is disabled2532 behaves like a counter of succeeded available verifiables2533 is expected to eq 12534 excludes other verification states2535 when verification is disabled2536 returns nil2537 .checksum_failed_count2538 when verification is enabled2539 when batch count feature flag is enabled2540 behaves like a counter of failed available verifiables2541 is expected to eq 12542 excludes other verification states2543 when batch count feature flag is disabled2544 behaves like a counter of failed available verifiables2545 is expected to eq 12546 excludes other verification states2547 when verification is disabled2548 returns nil2549 .verification_failed_count2550 when verification is enabled2551 when batch count feature flag is enabled2552 behaves like a counter of failed available verifiables2553 is expected to eq 12554 excludes other verification states2555 when batch count feature flag is disabled2556 behaves like a counter of failed available verifiables2557 is expected to eq 12558 excludes other verification states2559 when verification is disabled2560 returns nil2561 .verification_total_count2562 when verification is enabled2563 when batch count feature flag is enabled2564 when the verification_state is disabled2565 is expected to eq 02566 when the verification_state is not disabled2567 is expected to eq 12568 when batch count feature flag is disabled2569 when the verification_state is disabled2570 is expected to eq 02571 when the verification_state is not disabled2572 is expected to eq 12573 when verification is disabled2574 returns nil2575 .trigger_background_verification2576 when verification is enabled2577 for a Geo secondary2578 does not enqueue ReverificationBatchWorker2579 enqueues VerificationBatchWorker2580 enqueues VerificationTimeoutWorker2581 for a Geo primary2582 enqueues ReverificationBatchWorker2583 enqueues VerificationStateBackfillWorker2584 enqueues VerificationBatchWorker2585 enqueues VerificationTimeoutWorker2586 when verification is disabled2587 does not enqueue VerificationBatchWorker2588 does not enqueue VerificationTimeoutWorker2589 .backfill_verification_state_table2590 calls VerificationStateBackfillService2591 when on secondary2592 returns false2593 .verify_batch2594 when there are records needing verification2595 calls #verify on each replicator2596 .remaining_verification_batch_count2597 converts needs_verification_count to number of batches2598 .remaining_reverification_batch_count2599 converts needs_reverification_count to number of batches2600 .reverify_batch!2601 calls #reverify_batch2602 .replicator_batch_to_verify2603 returns usable Replicator instances2604 .model_record_id_batch_to_verify2605 when the batch is filled by pending rows2606 returns IDs of pending rows2607 does not call .verification_failed_batch2608 when that batch is not filled by pending rows2609 includes IDs of failed rows2610 .verification_pending_batch2611 when current node is a primary2612 delegates to the model class of the replicator2613 when current node is a secondary2614 delegates to the registry class of the replicator2615 .verification_failed_batch2616 when current node is a primary2617 delegates to the model class of the replicator2618 when current node is a secondary2619 delegates to the registry class of the replicator2620 .fail_verification_timeouts2621 when current node is a primary2622 delegates to the model class of the replicator2623 when current node is a secondary2624 delegates to the registry class of the replicator2625 #after_verifiable_update2626 verification_enabled: true, immutable: true, checksum: nil, checksummable: true, expect_verify_async: true2627 calls verify_async only if needed2628 verification_enabled: true, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false2629 calls verify_async only if needed2630 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false2631 calls verify_async only if needed2632 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false2633 calls verify_async only if needed2634 verification_enabled: true, immutable: false, checksum: nil, checksummable: true, expect_verify_async: true2635 calls verify_async only if needed2636 verification_enabled: true, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false2637 calls verify_async only if needed2638 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: true2639 calls verify_async only if needed2640 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false2641 calls verify_async only if needed2642 verification_enabled: false, immutable: true, checksum: nil, checksummable: true, expect_verify_async: false2643 calls verify_async only if needed2644 verification_enabled: false, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false2645 calls verify_async only if needed2646 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false2647 calls verify_async only if needed2648 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false2649 calls verify_async only if needed2650 verification_enabled: false, immutable: false, checksum: nil, checksummable: true, expect_verify_async: false2651 calls verify_async only if needed2652 verification_enabled: false, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false2653 calls verify_async only if needed2654 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: false2655 calls verify_async only if needed2656 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false2657 calls verify_async only if needed2658 #verify_async2659 on a Geo primary2660 calls verification_started! and enqueues VerificationWorker2661 #verify2662 wraps the checksum calculation in track_checksum_attempt!2663 #verification_state_tracker2664 on a Geo primary2665 returns model_record2666 on a Geo secondary2667 returns registry2668 #handle_after_checksum_succeeded2669 on a Geo primary2670 creates checksum_succeeded event2671 is called on verification success2672 on a Geo secondary2673 does not create an event2674 #consume_event_checksum_succeeded2675 with a persisted model_record2676 on a Geo primary2677 does nothing2678 on a Geo secondary2679 with a persisted registry2680 with a registry which is verified2681 sets state to verification_pending2682 with a registry which is pending verification2683 does not change state from verification_pending2684 with an unpersisted registry2685 does not persist the registry2686 #primary_verification_succeeded?2687 when the model record is verification_succeeded2688 returns true2689 when the model record is verification_succeeded2690 returns false2691 integration tests2692 on a primary2693 background backfill2694 verifies model records2695 triggered by events2696 verifies model records2697 on a secondary2698 background backfill2699 verifies registries2700 triggered by events2701 verifies registries2702 #replicator2703 is defined and does not raise error2704 .replicables_for_current_secondary2705 when syncing object storage is enabled2706 behaves like is implemented and returns a valid relation2707 is implemented2708 when syncing object storage is disabled2709 behaves like is implemented and returns a valid relation2710 is implemented2711 with selective sync disabled2712 behaves like is implemented and returns a valid relation2713 is implemented2714 with selective sync enabled for namespaces2715 behaves like is implemented and returns a valid relation2716 is implemented2717 with selective sync enabled for shards2718 behaves like is implemented and returns a valid relation2719 is implemented2720 #geo_handle_after_update2721 creates a Geo::Event2722 when replication feature flag is disabled2723 does not publish2724 #geo_handle_after_destroy2725 creates a Geo::Event2726 when replication feature flag is disabled2727 does not publish2728 updated event consumption2729 in replicables_for_current_secondary list2730 runs Geo::FrameworkRepositorySyncService service2731 not in replicables_for_current_secondary list2732 does not run Geo::FrameworkRepositorySyncService service2733 when a sync is currently running2734 moves registry state to pending2735 deleted event consumption2736 runs Geo::RepositoryRegistryRemovalService service2737 .git_access_class2738 is implemented2739 .no_repo_message2740 is implemented2741 .housekeeping_enabled?2742 is implemented2743 #housekeeping_model_record2744 is implemented2745 #model2746 is implemented2747 is a Class2748 #mutable?2749 is true2750 .no_repo_message2751 returns the proper error message for group-level wikis2752Epic index2753 # order random2754 behaves like epics get tracked in Elasticsearch2755 use_elasticsearch? is true2756 when an epic is created2757 tracks the epic2758 when an epic is updated2759 tracks the epic2760 when an epic is deleted2761 tracks the epic2762 deletes the epic from elasticsearch2763 when epic uses parent epic start and due dates2764 when the start date of start_date_sourcing_epic is updated2765 tracks the epic2766 when the due date of due_date_sourcing_epic is updated2767 tracks the epic2768 when epic uses milestone start and due dates2769 when start date of start_date_sourcing_milestone is updated2770 tracks the epic2771 when due date of due_date_sourcing_milestone is updated2772 tracks the epic2773 when an epic is moved to another group2774 tracks the epic2775 when visibility_level changes for the group2776 tracks the epic via ElasticAssociationIndexerWorker2777 when the group is deleted2778 deletes the epic from elasticsearch via Search::ElasticGroupAssociationDeletionWorker2779 when the parent of the group is changed2780 tracks the epic via Elastic::NamespaceUpdateWorker if the new parent has indexing enabled2781 when the group is transferred2782 tracks the epic via Elastic::NamespaceUpdateWorker2783 when elasticsearch_limit_indexing? is true2784 if the parent group is in the limited indexes list2785 behaves like epics get tracked in Elasticsearch2786 use_elasticsearch? is true2787 when an epic is created2788 tracks the epic2789 when an epic is updated2790 tracks the epic2791 when an epic is deleted2792 tracks the epic2793 deletes the epic from elasticsearch2794 when epic uses parent epic start and due dates2795 when the start date of start_date_sourcing_epic is updated2796 tracks the epic2797 when the due date of due_date_sourcing_epic is updated2798 tracks the epic2799 when epic uses milestone start and due dates2800 when start date of start_date_sourcing_milestone is updated2801 tracks the epic2802 when due date of due_date_sourcing_milestone is updated2803 tracks the epic2804 when an epic is moved to another group2805 tracks the epic2806 when visibility_level changes for the group2807 tracks the epic via ElasticAssociationIndexerWorker2808 when the group is deleted2809 deletes the epic from elasticsearch via Search::ElasticGroupAssociationDeletionWorker2810 when the parent of the group is changed2811 tracks the epic via Elastic::NamespaceUpdateWorker if the new parent has indexing enabled2812 when the group is transferred2813 tracks the epic via Elastic::NamespaceUpdateWorker2814 if the parent group is removed from the list2815 deletes the epic from elasticsearch2816 if the parent group is not in the limited indexes list2817 behaves like epics do not get tracked in Elasticsearch2818 use_elasticsearch? is false2819 when an epic is created2820 does not track the epic2821 when an epic is updated2822 does not track the epic2823 when an epic is deleted2824 does not track the epic2825 when visibility_level changes for the group2826 does not track the epic via ElasticAssociationIndexerWorker2827 when an epic is moved to another group2828 does not track the epic2829 when the parent of the group is changed2830 does not track the epic2831 when the group is transferred2832 does not track the epic2833 if the group is added to limited index list2834 tracks the epic via ElasticNamespaceIndexerWorker2835Project2836 finds projects2837 finds partial matches in project names2838 names elasticsearch queries2839 when limited indexing is on2840 when the project is not enabled specifically2841 #searchable?2842 returns false2843 #use_elasticsearch?2844 returns false2845 when a project is enabled specifically2846 only indexes enabled projects2847 #searchable?2848 returns true2849 #use_elasticsearch?2850 returns true2851 when a group is enabled2852 indexes only projects under the group2853 #searchable?2854 returns true2855 default_operator2856 feature flag is enabled2857 uses correct operator2858 feature flag is disabled2859 uses correct operator2860 when projects and snippets co-exist2861 when searching with a wildcard2862 only returns projects2863 .as_indexed_json2864 when the migrate_projects_to_separate_index migration has not finished2865 returns json with all needed elements2866 when the migrate_projects_to_separate_index migration has finished2867 returns json with all needed elements2868 when the add_ci_catalog_to_project migration has not finished2869 does not include the ci_catalog field2870Gitlab::UsageDataCounters::EpicActivityUniqueCounter2871 for epic created event2872 behaves like tracked issuable snowplow and service ping events with namespace2873 behaves like tracked issuable snowplow and service ping events for given event params2874 emits snowplow event2875 behaves like tracked issuable events2876 is expected to eq 22877 does not track edit actions if author is not present2878 behaves like does not track with namespace when feature flag is disabled2879 when feature flag track_epics_activity is disabled2880 does not track action2881 for epic title changed event2882 behaves like tracked issuable snowplow and service ping events with namespace2883 behaves like tracked issuable snowplow and service ping events for given event params2884 emits snowplow event2885 behaves like tracked issuable events2886 is expected to eq 22887 does not track edit actions if author is not present2888 behaves like does not track with namespace when feature flag is disabled2889 when feature flag track_epics_activity is disabled2890 does not track action2891 for epic description changed event2892 behaves like tracked issuable snowplow and service ping events with namespace2893 behaves like tracked issuable snowplow and service ping events for given event params2894 emits snowplow event2895 behaves like tracked issuable events2896 is expected to eq 22897 does not track edit actions if author is not present2898 behaves like does not track with namespace when feature flag is disabled2899 when feature flag track_epics_activity is disabled2900 does not track action2901 for epic note created event2902 behaves like tracked issuable snowplow and service ping events with namespace2903 behaves like tracked issuable snowplow and service ping events for given event params2904 emits snowplow event2905 behaves like tracked issuable events2906 is expected to eq 22907 does not track edit actions if author is not present2908 behaves like does not track with namespace when feature flag is disabled2909 when feature flag track_epics_activity is disabled2910 does not track action2911 for epic note updated event2912 behaves like tracked issuable snowplow and service ping events with namespace2913 behaves like tracked issuable snowplow and service ping events for given event params2914 emits snowplow event2915 behaves like tracked issuable events2916 is expected to eq 22917 does not track edit actions if author is not present2918 behaves like does not track with namespace when feature flag is disabled2919 when feature flag track_epics_activity is disabled2920 does not track action2921 for epic note destroyed event2922 behaves like tracked issuable snowplow and service ping events with namespace2923 behaves like tracked issuable snowplow and service ping events for given event params2924 emits snowplow event2925 behaves like tracked issuable events2926 is expected to eq 22927 does not track edit actions if author is not present2928 behaves like does not track with namespace when feature flag is disabled2929 when feature flag track_epics_activity is disabled2930 does not track action2931 for epic emoji award event2932 behaves like tracked issuable snowplow and service ping events with namespace2933 behaves like tracked issuable snowplow and service ping events for given event params2934 emits snowplow event2935 behaves like tracked issuable events2936 is expected to eq 22937 does not track edit actions if author is not present2938 behaves like does not track with namespace when feature flag is disabled2939 when feature flag track_epics_activity is disabled2940 does not track action2941 for epic emoji remove event2942 behaves like tracked issuable snowplow and service ping events with namespace2943 behaves like tracked issuable snowplow and service ping events for given event params2944 emits snowplow event2945 behaves like tracked issuable events2946 is expected to eq 22947 does not track edit actions if author is not present2948 behaves like does not track with namespace when feature flag is disabled2949 when feature flag track_epics_activity is disabled2950 does not track action2951 for epic closing event2952 behaves like tracked issuable snowplow and service ping events with namespace2953 behaves like tracked issuable snowplow and service ping events for given event params2954 emits snowplow event2955 behaves like tracked issuable events2956 is expected to eq 22957 does not track edit actions if author is not present2958 behaves like does not track with namespace when feature flag is disabled2959 when feature flag track_epics_activity is disabled2960 does not track action2961 for epic reopening event2962 behaves like tracked issuable snowplow and service ping events with namespace2963 behaves like tracked issuable snowplow and service ping events for given event params2964 emits snowplow event2965 behaves like tracked issuable events2966 is expected to eq 22967 does not track edit actions if author is not present2968 behaves like does not track with namespace when feature flag is disabled2969 when feature flag track_epics_activity is disabled2970 does not track action2971 for making epic visible2972 behaves like tracked issuable snowplow and service ping events with namespace2973 behaves like tracked issuable snowplow and service ping events for given event params2974 emits snowplow event2975 behaves like tracked issuable events2976 is expected to eq 22977 does not track edit actions if author is not present2978 behaves like does not track with namespace when feature flag is disabled2979 when feature flag track_epics_activity is disabled2980 does not track action2981 for making epic confidential2982 behaves like tracked issuable snowplow and service ping events with namespace2983 behaves like tracked issuable snowplow and service ping events for given event params2984 emits snowplow event2985 behaves like tracked issuable events2986 is expected to eq 22987 does not track edit actions if author is not present2988 behaves like does not track with namespace when feature flag is disabled2989 when feature flag track_epics_activity is disabled2990 does not track action2991 for epic date modification events2992 start date2993 setting as fixed event2994 behaves like tracked issuable snowplow and service ping events with namespace2995 behaves like tracked issuable snowplow and service ping events for given event params2996 emits snowplow event2997 behaves like tracked issuable events2998 is expected to eq 22999 does not track edit actions if author is not present3000 behaves like does not track with namespace when feature flag is disabled3001 when feature flag track_epics_activity is disabled3002 does not track action3003 setting as fixed start date event3004 behaves like tracked issuable snowplow and service ping events with namespace3005 behaves like tracked issuable snowplow and service ping events for given event params3006 emits snowplow event3007 behaves like tracked issuable events3008 is expected to eq 23009 does not track edit actions if author is not present3010 behaves like does not track with namespace when feature flag is disabled3011 when feature flag track_epics_activity is disabled3012 does not track action3013 setting as inherited event3014 behaves like tracked issuable snowplow and service ping events with namespace3015 behaves like tracked issuable snowplow and service ping events for given event params3016 emits snowplow event3017 behaves like tracked issuable events3018 is expected to eq 23019 does not track edit actions if author is not present3020 behaves like does not track with namespace when feature flag is disabled3021 when feature flag track_epics_activity is disabled3022 does not track action3023 due date3024 setting as fixed event3025 behaves like tracked issuable snowplow and service ping events with namespace3026 behaves like tracked issuable snowplow and service ping events for given event params3027 emits snowplow event3028 behaves like tracked issuable events3029 is expected to eq 23030 does not track edit actions if author is not present3031 behaves like does not track with namespace when feature flag is disabled3032 when feature flag track_epics_activity is disabled3033 does not track action3034 setting as fixed due date event3035 behaves like tracked issuable snowplow and service ping events with namespace3036 behaves like tracked issuable snowplow and service ping events for given event params3037 emits snowplow event3038 behaves like tracked issuable events3039 is expected to eq 23040 does not track edit actions if author is not present3041 behaves like does not track with namespace when feature flag is disabled3042 when feature flag track_epics_activity is disabled3043 does not track action3044 setting as inherited event3045 behaves like tracked issuable snowplow and service ping events with namespace3046 behaves like tracked issuable snowplow and service ping events for given event params3047 emits snowplow event3048 behaves like tracked issuable events3049 is expected to eq 23050 does not track edit actions if author is not present3051 behaves like does not track with namespace when feature flag is disabled3052 when feature flag track_epics_activity is disabled3053 does not track action3054 for adding issue to epic event3055 behaves like tracked issuable snowplow and service ping events with namespace3056 behaves like tracked issuable snowplow and service ping events for given event params3057 emits snowplow event3058 behaves like tracked issuable events3059 is expected to eq 23060 does not track edit actions if author is not present3061 behaves like does not track with namespace when feature flag is disabled3062 when feature flag track_epics_activity is disabled3063 does not track action3064 for changing labels epic event3065 behaves like tracked issuable snowplow and service ping events with namespace3066 behaves like tracked issuable snowplow and service ping events for given event params3067 emits snowplow event3068 behaves like tracked issuable events3069 is expected to eq 23070 does not track edit actions if author is not present3071 behaves like does not track with namespace when feature flag is disabled3072 when feature flag track_epics_activity is disabled3073 does not track action3074 for removing issue from epic event3075 behaves like tracked issuable snowplow and service ping events with namespace3076 behaves like tracked issuable snowplow and service ping events for given event params3077 emits snowplow event3078 behaves like tracked issuable events3079 is expected to eq 23080 does not track edit actions if author is not present3081 behaves like does not track with namespace when feature flag is disabled3082 when feature flag track_epics_activity is disabled3083 does not track action3084 for moving an issue that belongs to epic3085 behaves like tracked issuable snowplow and service ping events with namespace3086 behaves like tracked issuable snowplow and service ping events for given event params3087 emits snowplow event3088 behaves like tracked issuable events3089 is expected to eq 23090 does not track edit actions if author is not present3091 behaves like does not track with namespace when feature flag is disabled3092 when feature flag track_epics_activity is disabled3093 does not track action3094 updating epic parent3095 behaves like tracked issuable snowplow and service ping events with namespace3096 behaves like tracked issuable snowplow and service ping events for given event params3097 emits snowplow event3098 behaves like tracked issuable events3099 is expected to eq 23100 does not track edit actions if author is not present3101 behaves like does not track with namespace when feature flag is disabled3102 when feature flag track_epics_activity is disabled3103 does not track action3104 for promoting issue to epic3105 behaves like tracked issuable snowplow and service ping events with namespace3106 behaves like tracked issuable snowplow and service ping events for given event params3107 emits snowplow event3108 behaves like tracked issuable events3109 is expected to eq 23110 does not track edit actions if author is not present3111 behaves like does not track with namespace when feature flag is disabled3112 when feature flag track_epics_activity is disabled3113 does not track action3114 for destroying epic3115 behaves like tracked issuable snowplow and service ping events with namespace3116 behaves like tracked issuable snowplow and service ping events for given event params3117 emits snowplow event3118 behaves like tracked issuable events3119 is expected to eq 23120 does not track edit actions if author is not present3121 behaves like does not track with namespace when feature flag is disabled3122 when feature flag track_epics_activity is disabled3123 does not track action3124 for margin epic task as checked3125 behaves like tracked issuable snowplow and service ping events with namespace3126 behaves like tracked issuable snowplow and service ping events for given event params3127 emits snowplow event3128 behaves like tracked issuable events3129 is expected to eq 23130 does not track edit actions if author is not present3131 behaves like does not track with namespace when feature flag is disabled3132 when feature flag track_epics_activity is disabled3133 does not track action3134 for margin epic task as unchecked3135 behaves like tracked issuable snowplow and service ping events with namespace3136 behaves like tracked issuable snowplow and service ping events for given event params3137 emits snowplow event3138 behaves like tracked issuable events3139 is expected to eq 23140 does not track edit actions if author is not present3141 behaves like does not track with namespace when feature flag is disabled3142 when feature flag track_epics_activity is disabled3143 does not track action3144 for epic cross reference3145 behaves like tracked issuable snowplow and service ping events with namespace3146 behaves like tracked issuable snowplow and service ping events for given event params3147 emits snowplow event3148 behaves like tracked issuable events3149 is expected to eq 23150 does not track edit actions if author is not present3151 behaves like does not track with namespace when feature flag is disabled3152 when feature flag track_epics_activity is disabled3153 does not track action3154 for related epic added3155 behaves like tracked issuable snowplow and service ping events with namespace3156 behaves like tracked issuable snowplow and service ping events for given event params3157 emits snowplow event3158 behaves like tracked issuable events3159 is expected to eq 23160 does not track edit actions if author is not present3161 behaves like does not track with namespace when feature flag is disabled3162 when feature flag track_epics_activity is disabled3163 does not track action3164 for related epic removed3165 behaves like tracked issuable snowplow and service ping events with namespace3166 behaves like tracked issuable snowplow and service ping events for given event params3167 emits snowplow event3168 behaves like tracked issuable events3169 is expected to eq 23170 does not track edit actions if author is not present3171 behaves like does not track with namespace when feature flag is disabled3172 when feature flag track_epics_activity is disabled3173 does not track action3174 for blocking epic added3175 behaves like tracked issuable snowplow and service ping events with namespace3176 behaves like tracked issuable snowplow and service ping events for given event params3177 emits snowplow event3178 behaves like tracked issuable events3179 is expected to eq 23180 does not track edit actions if author is not present3181 behaves like does not track with namespace when feature flag is disabled3182 when feature flag track_epics_activity is disabled3183 does not track action3184 for blocking epic removed3185 behaves like tracked issuable snowplow and service ping events with namespace3186 behaves like tracked issuable snowplow and service ping events for given event params3187 emits snowplow event3188 behaves like tracked issuable events3189 is expected to eq 23190 does not track edit actions if author is not present3191 behaves like does not track with namespace when feature flag is disabled3192 when feature flag track_epics_activity is disabled3193 does not track action3194 for blocked epic added3195 behaves like tracked issuable snowplow and service ping events with namespace3196 behaves like tracked issuable snowplow and service ping events for given event params3197 emits snowplow event3198 behaves like tracked issuable events3199 is expected to eq 23200 does not track edit actions if author is not present3201 behaves like does not track with namespace when feature flag is disabled3202 when feature flag track_epics_activity is disabled3203 does not track action3204 for blocked epic removed3205 behaves like tracked issuable snowplow and service ping events with namespace3206 behaves like tracked issuable snowplow and service ping events for given event params3207 emits snowplow event3208 behaves like tracked issuable events3209 is expected to eq 23210 does not track edit actions if author is not present3211 behaves like does not track with namespace when feature flag is disabled3212 when feature flag track_epics_activity is disabled3213 does not track action3214ReindexWikisToFixRouting3215 # order random3216 migration_options3217 has migration options set3218 .completed?3219 when all the documents have the new schema_version(2307)3220 returns true3221 when some items are missing new schema_version3222 returns false3223 .migrate3224 if migration is completed3225 performs logging and does not call ElasticWikiIndexerWorker3226 if migration is not completed3227 performs logging and calls ElasticWikiIndexerWorker3228Audit::GroupPushRulesChangesAuditor3229 when auditing group-level changes in push rules3230 key: :commit_committer_check, old_value: false, new_value: true, event_name: "group_push_rules_commit_committer_check_updated"3231 audits the change in push rule correctly3232 streams correct audit event3233 key: :commit_committer_check, old_value: true, new_value: false, event_name: "group_push_rules_commit_committer_check_updated"3234 audits the change in push rule correctly3235 streams correct audit event3236 key: :reject_unsigned_commits, old_value: false, new_value: true, event_name: "group_push_rules_reject_unsigned_commits_updated"3237 audits the change in push rule correctly3238 streams correct audit event3239 key: :reject_unsigned_commits, old_value: true, new_value: false, event_name: "group_push_rules_reject_unsigned_commits_updated"3240 audits the change in push rule correctly3241 streams correct audit event3242 key: :deny_delete_tag, old_value: false, new_value: true, event_name: "group_push_rules_reject_deny_delete_tag_updated"3243 audits the change in push rule correctly3244 streams correct audit event3245 key: :deny_delete_tag, old_value: true, new_value: false, event_name: "group_push_rules_reject_deny_delete_tag_updated"3246 audits the change in push rule correctly3247 streams correct audit event3248 key: :member_check, old_value: false, new_value: true, event_name: "group_push_rules_reject_member_check_updated"3249 audits the change in push rule correctly3250 streams correct audit event3251 key: :member_check, old_value: true, new_value: false, event_name: "group_push_rules_reject_member_check_updated"3252 audits the change in push rule correctly3253 streams correct audit event3254 key: :prevent_secrets, old_value: false, new_value: true, event_name: "group_push_rules_prevent_secrets_updated"3255 audits the change in push rule correctly3256 streams correct audit event3257 key: :prevent_secrets, old_value: true, new_value: false, event_name: "group_push_rules_prevent_secrets_updated"3258 audits the change in push rule correctly3259 streams correct audit event3260 key: :branch_name_regex, old_value: nil, new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_branch_name_regex_updated"3261 audits the change in push rule correctly3262 streams correct audit event3263 key: :branch_name_regex, old_value: ".*\\w{2}", new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_branch_name_regex_updated"3264 audits the change in push rule correctly3265 streams correct audit event3266 key: :commit_message_regex, old_value: nil, new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_commit_message_regex_updated"3267 audits the change in push rule correctly3268 streams correct audit event3269 key: :commit_message_regex, old_value: ".*\\w{2}", new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_commit_message_regex_updated"3270 audits the change in push rule correctly3271 streams correct audit event3272 key: :commit_message_negative_regex, old_value: nil, new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_commit_message_negative_regex_updated"3273 audits the change in push rule correctly3274 streams correct audit event3275 key: :commit_message_negative_regex, old_value: ".*\\w{2}", new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_commit_message_negative_regex_updated"3276 audits the change in push rule correctly3277 streams correct audit event3278 key: :author_email_regex, old_value: nil, new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_author_email_regex_updated"3279 audits the change in push rule correctly3280 streams correct audit event3281 key: :author_email_regex, old_value: ".*\\w{2}", new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_author_email_regex_updated"3282 audits the change in push rule correctly3283 streams correct audit event3284 key: :file_name_regex, old_value: nil, new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_file_name_regex_updated"3285 audits the change in push rule correctly3286 streams correct audit event3287 key: :file_name_regex, old_value: ".*\\w{2}", new_value: "\\Asecurity-.*\\z", event_name: "group_push_rules_file_name_regex_updated"3288 audits the change in push rule correctly3289 streams correct audit event3290 key: :max_file_size, old_value: 0, new_value: 132, event_name: "group_push_rules_max_file_size_updated"3291 audits the change in push rule correctly3292 streams correct audit event3293 key: :max_file_size, old_value: 12, new_value: 42, event_name: "group_push_rules_max_file_size_updated"3294 audits the change in push rule correctly3295 streams correct audit event3296 for EVENT_TYPE_PER_ATTR3297 defines audit event types for all the audit log allowlist attributes for group push rule changes3298Namespaces::Storage::RootSize3299 #above_size_limit?3300 when limit enforcement is off3301 is expected to eq false3302 when limit enforcement is on3303 when limit is 03304 is expected to eq false3305 when below limit3306 is expected to eq false3307 when above limit3308 when temporary storage increase is disabled3309 is expected to eq true3310 when tracking the first enforcement for a namespace3311 when the namespace has never been above the limit before3312 updates the first_enforced_at timestamp3313 when cache exists3314 does not update the database3315 when the namespace has been above the limit before3316 with no cache3317 does not update the timestamp3318 when cache exists3319 does not update the database3320 when tracking the last enforcement for a namespace3321 with no cache3322 updates the last_enforced_at timestamp3323 when cache exists3324 does not update the database3325 when temporary storage increase is enabled3326 is expected to eq false3327 #usage_ratio3328 is expected to eq 0.53329 when limit is 03330 is expected to eq 03331 when there are no root_storage_statistics3332 is expected to eq 03333 #current_size3334 is expected to eq 524288003335 with cached values3336 caches the value3337 without root_storage_statistics3338 caches the value3339 when it is a subgroup of the namespace3340 is expected to eq 524288003341 when there are no root_storage_statistics3342 returns zero3343 with fork storage sizes3344 returns the cost factored storage size3345 #limit3346 when there is additional purchased storage and a plan3347 is expected to eq 262144000003348 when there is no additionl purchased storage3349 is expected to eq 157286400003350 when there is no additional purchased storage or plan limit set3351 is expected to eq 03352 with cached values3353 caches the value3354 #used_storage_percentage3355 limit: 0, used: 0, expected_percentage: 03356 returns the percentage of remaining storage rounding down to the nearest integer3357 limit: 0, used: 100, expected_percentage: 03358 returns the percentage of remaining storage rounding down to the nearest integer3359 limit: 100, used: 0, expected_percentage: 03360 returns the percentage of remaining storage rounding down to the nearest integer3361 limit: 100, used: 200, expected_percentage: 2003362 returns the percentage of remaining storage rounding down to the nearest integer3363 limit: 1, used: 0, expected_percentage: 03364 returns the percentage of remaining storage rounding down to the nearest integer3365 limit: 100, used: 10, expected_percentage: 103366 returns the percentage of remaining storage rounding down to the nearest integer3367 limit: 100, used: 77, expected_percentage: 773368 returns the percentage of remaining storage rounding down to the nearest integer3369 limit: 100, used: 95, expected_percentage: 953370 returns the percentage of remaining storage rounding down to the nearest integer3371 limit: 100, used: 99, expected_percentage: 993372 returns the percentage of remaining storage rounding down to the nearest integer3373 limit: 100, used: 100, expected_percentage: 1003374 returns the percentage of remaining storage rounding down to the nearest integer3375 limit: 1000, used: 971, expected_percentage: 973376 returns the percentage of remaining storage rounding down to the nearest integer3377 limit: 8192, used: 6144, expected_percentage: 753378 returns the percentage of remaining storage rounding down to the nearest integer3379 limit: 5120, used: 3840, expected_percentage: 753380 returns the percentage of remaining storage rounding down to the nearest integer3381 limit: 5120, used: 5118, expected_percentage: 993382 returns the percentage of remaining storage rounding down to the nearest integer3383 #remaining_storage_percentage3384 limit: 0, used: 0, expected_percentage: 1003385 returns the percentage of remaining storage rounding down to the nearest integer3386 limit: 0, used: 100, expected_percentage: 1003387 returns the percentage of remaining storage rounding down to the nearest integer3388 limit: 100, used: 0, expected_percentage: 1003389 returns the percentage of remaining storage rounding down to the nearest integer3390 limit: 100, used: 200, expected_percentage: 03391 returns the percentage of remaining storage rounding down to the nearest integer3392 limit: 1, used: 0, expected_percentage: 1003393 returns the percentage of remaining storage rounding down to the nearest integer3394 limit: 100, used: 10, expected_percentage: 903395 returns the percentage of remaining storage rounding down to the nearest integer3396 limit: 100, used: 77, expected_percentage: 233397 returns the percentage of remaining storage rounding down to the nearest integer3398 limit: 100, used: 95, expected_percentage: 53399 returns the percentage of remaining storage rounding down to the nearest integer3400 limit: 100, used: 99, expected_percentage: 13401 returns the percentage of remaining storage rounding down to the nearest integer3402 limit: 100, used: 100, expected_percentage: 03403 returns the percentage of remaining storage rounding down to the nearest integer3404 limit: 1000, used: 971, expected_percentage: 23405 returns the percentage of remaining storage rounding down to the nearest integer3406 limit: 8192, used: 6144, expected_percentage: 253407 returns the percentage of remaining storage rounding down to the nearest integer3408 limit: 5120, used: 3840, expected_percentage: 253409 returns the percentage of remaining storage rounding down to the nearest integer3410 limit: 5120, used: 5118, expected_percentage: 03411 returns the percentage of remaining storage rounding down to the nearest integer3412 #remaining_storage_size3413 limit: 0, used: 0, expected_size: 03414 returns the remaining storage size in bytes3415 limit: 0, used: 100, expected_size: 03416 returns the remaining storage size in bytes3417 limit: 100, used: 0, expected_size: 1048576003418 returns the remaining storage size in bytes3419 limit: 100, used: 200, expected_size: 03420 returns the remaining storage size in bytes3421 limit: 100, used: 70, expected_size: 314572803422 returns the remaining storage size in bytes3423 limit: 100, used: 85, expected_size: 157286403424 returns the remaining storage size in bytes3425 limit: 100, used: 99, expected_size: 10485763426 returns the remaining storage size in bytes3427 limit: 100, used: 100, expected_size: 03428 returns the remaining storage size in bytes3429 limit: 1000, used: 971, expected_size: 304087043430 returns the remaining storage size in bytes3431 limit: 8192, used: 6144, expected_size: 21474836483432 returns the remaining storage size in bytes3433 limit: 5120, used: 3840, expected_size: 13421772803434 returns the remaining storage size in bytes3435 limit: 5120, used: 5118, expected_size: 20971523436 returns the remaining storage size in bytes3437 #enforce_limit?3438 delegates to Namespaces::Storage::Enforcement3439 #exceeded_size3440 when given a parameter3441 change_size: 157286400, expected_excess_size: 1048576003442 returns the size in bytes that the change exceeds the limit3443 change_size: 62914560, expected_excess_size: 104857603444 returns the size in bytes that the change exceeds the limit3445 change_size: 53477376, expected_excess_size: 10485763446 returns the size in bytes that the change exceeds the limit3447 change_size: 52428800, expected_excess_size: 03448 returns the size in bytes that the change exceeds the limit3449 change_size: 10485760, expected_excess_size: 03450 returns the size in bytes that the change exceeds the limit3451 change_size: 0, expected_excess_size: 03452 returns the size in bytes that the change exceeds the limit3453 without a parameter3454 current_size: 0, expected_excess_size: 03455 returns the size in bytes that the current storage size exceeds the limit3456 current_size: 52428800, expected_excess_size: 03457 returns the size in bytes that the current storage size exceeds the limit3458 current_size: 104857600, expected_excess_size: 03459 returns the size in bytes that the current storage size exceeds the limit3460 current_size: 105906176, expected_excess_size: 10485763461 returns the size in bytes that the current storage size exceeds the limit3462 current_size: 178257920, expected_excess_size: 734003203463 returns the size in bytes that the current storage size exceeds the limit3464 #changes_will_exceed_size_limit?3465 when the changes will exceed the size limit3466 change_size: 534773763467 returns true3468 change_size: 629145603469 returns true3470 change_size: 1048576003471 returns true3472 when the changes will not exceed the size limit3473 change_size: 03474 returns false3475 change_size: 10485763476 returns false3477 change_size: 419430403478 returns false3479 change_size: 524288003480 returns false3481 when the current size exceeds the limit3482 change_size: 03483 returns true regardless of change_size3484 change_size: 10485763485 returns true regardless of change_size3486 change_size: 629145603487 returns true regardless of change_size3488 change_size: 1048576003489 returns true regardless of change_size3490 when storage size limit is 03491 returns false3492 with a project fork3493 in a paid namespace3494 visibility_level: :public3495 applies a cost factor for forks to the changes size3496 visibility_level: :internal3497 applies a cost factor for forks to the changes size3498 visibility_level: :private3499 applies a cost factor for forks to the changes size3500 in a free namespace3501 does not apply a cost factor for forks to the changes size for a private fork3502 visibility_level: :public3503 applies a cost factor for forks to the changes size3504 visibility_level: :internal3505 applies a cost factor for forks to the changes size3506 #enforcement_type3507 returns :namespace_storage_limit3508layouts/nav/sidebar/_project3509 Learn GitLab3510 has a link to the learn GitLab3511 Repository3512 Files3513 has a link to the project file locks path3514 Issues3515 Iterations3516 has a link to the iteration cadences path3517 Jira3518 when Jira service integration is not set3519 does not have a link to the Jira issues menu3520 when Jira service integration is set3521 has a link to Jira issues list3522 has an external link to open Jira3523 Requirements3524 has a link to the requirements page3525 CI/CD3526 Test cases3527 has a link to the test cases page3528 when license feature :quality_management is not enabled3529 does not have a link to the test cases page3530 Security and Compliance3531 when user does not have permissions3532 top level navigation link is not visible3533 when user has permissions3534 top level navigation link is visible3535 security dashboard link is visible3536 security vulnerability report link is visible3537 security on demand scans link is visible3538 dependency list link is visible3539 license compliance link is visible3540 policies link is visible3541 security configuration link is visible3542 audit events link is visible3543 Operations3544 On-call schedules3545 has a link to the on-call schedules page3546 when the user does not have access3547 does not have a link to the on-call schedules page3548 Escalation Policies3549 has a link to the escalation policies page3550 when the user does not have access3551 does not have a link to the escalation policies page3552 Analytics3553 Code Review3554 has a link to the Code Review analytics page3555 when user does not have access3556 does not have a link to the Code Review analytics page3557 Insights3558 has a link to the Insights analytics page3559 when user does not have access3560 does not have a link to the Insights analytics page3561 Issue3562 has a link to the issue analytics page3563 when user does not have access3564 does not have a link to the issue analytics page3565 Merge request3566 has a link to the merge request analytics page3567 when user does not have access3568 does not have a link to the merge request analytics page3569 Settings3570 Analytics3571 has a link to the Analytics settings3572 Monitor3573 links to settings page3574 when user is not authorized3575 does not display the link3576Gitlab::PackageMetadata::Connector::Offline3577 # order random3578 purl_type: :nuget, registry_id: "nuget"3579 when version_format v13580 behaves like it provides correct data3581 when no checkpoint is given3582 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3583 when a checkpoint is given3584 when sequence exists and chunk do not3585 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3586 when sequence and chunk do not exist3587 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3588 when sequence and chunk both exist3589 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3590 when version_format v23591 behaves like it provides correct data3592 when no checkpoint is given3593 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3594 when a checkpoint is given3595 when sequence exists and chunk do not3596 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3597 when sequence and chunk do not exist3598 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3599 when sequence and chunk both exist3600 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3601 purl_type: :apk, registry_id: "apk"3602 when version_format v13603 behaves like it provides correct data3604 when no checkpoint is given3605 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3606 when a checkpoint is given3607 when sequence exists and chunk do not3608 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3609 when sequence and chunk do not exist3610 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3611 when sequence and chunk both exist3612 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3613 when version_format v23614 behaves like it provides correct data3615 when no checkpoint is given3616 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3617 when a checkpoint is given3618 when sequence exists and chunk do not3619 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3620 when sequence and chunk do not exist3621 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3622 when sequence and chunk both exist3623 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3624 purl_type: :conan, registry_id: "conan"3625 when version_format v13626 behaves like it provides correct data3627 when no checkpoint is given3628 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3629 when a checkpoint is given3630 when sequence exists and chunk do not3631 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3632 when sequence and chunk do not exist3633 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3634 when sequence and chunk both exist3635 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3636 when version_format v23637 behaves like it provides correct data3638 when no checkpoint is given3639 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3640 when a checkpoint is given3641 when sequence exists and chunk do not3642 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3643 when sequence and chunk do not exist3644 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3645 when sequence and chunk both exist3646 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3647 purl_type: :cbl_mariner, registry_id: "cbl-mariner"3648 when version_format v13649 behaves like it provides correct data3650 when no checkpoint is given3651 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3652 when a checkpoint is given3653 when sequence exists and chunk do not3654 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3655 when sequence and chunk do not exist3656 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3657 when sequence and chunk both exist3658 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3659 when version_format v23660 behaves like it provides correct data3661 when no checkpoint is given3662 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3663 when a checkpoint is given3664 when sequence exists and chunk do not3665 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3666 when sequence and chunk do not exist3667 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3668 when sequence and chunk both exist3669 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3670 purl_type: :golang, registry_id: "go"3671 when version_format v13672 behaves like it provides correct data3673 when no checkpoint is given3674 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3675 when a checkpoint is given3676 when sequence exists and chunk do not3677 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3678 when sequence and chunk do not exist3679 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3680 when sequence and chunk both exist3681 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3682 when version_format v23683 behaves like it provides correct data3684 when no checkpoint is given3685 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3686 when a checkpoint is given3687 when sequence exists and chunk do not3688 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3689 when sequence and chunk do not exist3690 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3691 when sequence and chunk both exist3692 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3693 purl_type: :npm, registry_id: "npm"3694 when version_format v13695 behaves like it provides correct data3696 when no checkpoint is given3697 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3698 when a checkpoint is given3699 when sequence exists and chunk do not3700 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3701 when sequence and chunk do not exist3702 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3703 when sequence and chunk both exist3704 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3705 when version_format v23706 behaves like it provides correct data3707 when no checkpoint is given3708 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3709 when a checkpoint is given3710 when sequence exists and chunk do not3711 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3712 when sequence and chunk do not exist3713 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3714 when sequence and chunk both exist3715 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3716 purl_type: :pypi, registry_id: "pypi"3717 when version_format v13718 behaves like it provides correct data3719 when no checkpoint is given3720 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3721 when a checkpoint is given3722 when sequence exists and chunk do not3723 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3724 when sequence and chunk do not exist3725 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3726 when sequence and chunk both exist3727 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3728 when version_format v23729 behaves like it provides correct data3730 when no checkpoint is given3731 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3732 when a checkpoint is given3733 when sequence exists and chunk do not3734 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3735 when sequence and chunk do not exist3736 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3737 when sequence and chunk both exist3738 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3739 purl_type: :gem, registry_id: "rubygem"3740 when version_format v13741 behaves like it provides correct data3742 when no checkpoint is given3743 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3744 when a checkpoint is given3745 when sequence exists and chunk do not3746 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3747 when sequence and chunk do not exist3748 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3749 when sequence and chunk both exist3750 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3751 when version_format v23752 behaves like it provides correct data3753 when no checkpoint is given3754 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3755 when a checkpoint is given3756 when sequence exists and chunk do not3757 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3758 when sequence and chunk do not exist3759 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3760 when sequence and chunk both exist3761 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3762 purl_type: :deb, registry_id: "deb"3763 when version_format v13764 behaves like it provides correct data3765 when no checkpoint is given3766 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3767 when a checkpoint is given3768 when sequence exists and chunk do not3769 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3770 when sequence and chunk do not exist3771 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3772 when sequence and chunk both exist3773 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3774 when version_format v23775 behaves like it provides correct data3776 when no checkpoint is given3777 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3778 when a checkpoint is given3779 when sequence exists and chunk do not3780 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3781 when sequence and chunk do not exist3782 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3783 when sequence and chunk both exist3784 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3785 purl_type: :maven, registry_id: "maven"3786 when version_format v13787 behaves like it provides correct data3788 when no checkpoint is given3789 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3790 when a checkpoint is given3791 when sequence exists and chunk do not3792 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3793 when sequence and chunk do not exist3794 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3795 when sequence and chunk both exist3796 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3797 when version_format v23798 behaves like it provides correct data3799 when no checkpoint is given3800 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3801 when a checkpoint is given3802 when sequence exists and chunk do not3803 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3804 when sequence and chunk do not exist3805 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3806 when sequence and chunk both exist3807 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3808 purl_type: :rpm, registry_id: "rpm"3809 when version_format v13810 behaves like it provides correct data3811 when no checkpoint is given3812 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3813 when a checkpoint is given3814 when sequence exists and chunk do not3815 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3816 when sequence and chunk do not exist3817 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3818 when sequence and chunk both exist3819 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3820 when version_format v23821 behaves like it provides correct data3822 when no checkpoint is given3823 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3824 when a checkpoint is given3825 when sequence exists and chunk do not3826 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3827 when sequence and chunk do not exist3828 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3829 when sequence and chunk both exist3830 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3831 purl_type: :composer, registry_id: "packagist"3832 when version_format v13833 behaves like it provides correct data3834 when no checkpoint is given3835 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3836 when a checkpoint is given3837 when sequence exists and chunk do not3838 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3839 when sequence and chunk do not exist3840 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3841 when sequence and chunk both exist3842 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3843 when version_format v23844 behaves like it provides correct data3845 when no checkpoint is given3846 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3847 when a checkpoint is given3848 when sequence exists and chunk do not3849 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3850 when sequence and chunk do not exist3851 is expected to match [(have attributes {:chunk => 0, :sequence => 0}), (have attributes {:chunk => 0, :sequence => 1}), (have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3852 when sequence and chunk both exist3853 is expected to match [(have attributes {:chunk => 0, :sequence => 2}), (have attributes {:chunk => 0, :sequence => 3})]3854Gitlab::ImportExport::Group::TreeRestorer3855 restore group tree3856 epics3857 has group epics3858 has award emoji3859 preserves epic state3860 epic notes3861 has epic notes3862 has award emoji on epic notes3863 has system note metadata3864 epic labels3865 has epic labels3866 epic resource state events3867 has resource state events3868 board lists3869 has milestone & assignee lists3870 boards3871 has user generated milestones3872 does not have predefined milestones3873 iteration candences3874 has cadence information3875 has iterations within cadences3876Banzai::Filter::References::VulnerabilityReferenceFilter3877 internal reference3878 links to a valid reference3879 links with adjacent text3880 includes a title attribute3881 escapes the title attribute3882 includes default classes3883 includes a data-project attribute3884 includes a data-vulnerability attribute3885 includes a data-original attribute3886 ignores invalid vulnerability IDs3887 ignores out of range vulnerability IDs3888 does not process links containing vulnerability numbers followed by text3889 cross-reference3890 ignores a shorthand reference from another group3891 links to a valid reference for full reference3892 link has valid text3893 includes default classes3894 escaped cross-reference3895 ignores a shorthand reference from another group3896 links to a valid reference for full reference3897 link has valid text3898 includes default classes3899 url reference3900 links to a valid reference3901 link has valid text3902 includes default classes3903 matches link reference with trailing slash3904 url in a link href3905 links to a valid reference for link href3906 link has valid text3907 includes default classes3908Groups::Memberships::ExportService3909 #execute3910 when unlicensed3911 behaves like not available3912 returns a failed response3913 when licensed3914 is successful3915 current_user is not an owner of this group3916 behaves like not available3917 returns a failed response3918 current_user is a group developer3919 behaves like not available3920 returns a failed response3921 current_user is a group maintainer3922 behaves like not available3923 returns a failed response3924 current_user is a guest3925 behaves like not available3926 returns a failed response3927 data verification3928 has the correct headers3929 has the correct number of rows3930 checking member source3931 has correct source for direct member3932 has correct source for inherited member3933 has correct source for descendant member3934BackfillHashedRootNamespaceIdOnIssues3935 # order random3936 migration_options3937 has migration options set3938 .migrate3939 when migration is already completed3940 does not modify data3941 migration process3942 updates all documents3943 only updates documents missing a field3944 processes in batches3945 .completed?3946 when documents are missing field3947 is expected not to be completed3948 when no documents are missing field3949 is expected to be completed3950Ci::AuditVariableChangeService3951 when audits are available3952 when creating group variable3953 behaves like audit creation3954 logs audit event3955 logs variable group creation3956 behaves like sends correct event type in audit event stream3957 sends correct event type in audit event stream3958 when updating group variable protection3959 behaves like audit when updating variable protection3960 logs audit event3961 logs variable protection update3962 behaves like sends correct event type in audit event stream3963 sends correct event type in audit event stream3964 when deleting group variable3965 behaves like audit when updating variable protection3966 logs audit event3967 logs variable protection update3968 behaves like sends correct event type in audit event stream3969 sends correct event type in audit event stream3970 when creating project variable3971 behaves like audit creation3972 logs audit event3973 logs variable group creation3974 behaves like sends correct event type in audit event stream3975 sends correct event type in audit event stream3976 when updating project variable protection3977 behaves like audit when updating variable protection3978 logs audit event3979 logs variable protection update3980 behaves like sends correct event type in audit event stream3981 sends correct event type in audit event stream3982 when deleting project variable3983 behaves like audit when updating variable protection3984 logs audit event3985 logs variable protection update3986 behaves like sends correct event type in audit event stream3987 sends correct event type in audit event stream3988 when audits are not available3989 for group variable3990 behaves like no audit events are created3991 when creating variable3992 does not log an audit event3993 when updating variable protection3994 does not log an audit event3995 when destroying variable3996 does not log an audit event3997 for project variable3998 behaves like no audit events are created3999 when creating variable4000 does not log an audit event4001 when updating variable protection4002 does not log an audit event4003 when destroying variable4004 does not log an audit event4005Security::PureFindingsFinder4006 # order random4007 behaves like security findings finder4008 #execute4009 when the pipeline does not have security findings4010 is expected to be empty4011 when the pipeline has security findings4012 N+1 queries4013 does not cause N+1 queries4014 #current_page4015 when the page is not provided4016 is expected to equal 14017 when the page is provided4018 is expected to equal 24019 #limit_value4020 when the per_page is not provided4021 is expected to equal 204022 when the per_page is provided4023 is expected to equal 1004024 #total_pages4025 when the per_page is not provided4026 is expected to equal 14027 when the per_page is provided4028 is expected to equal 34029 #total_count4030 when the scope is not provided4031 is expected to equal 74032 when the scope is provided as `all`4033 is expected to equal 84034 #next_page4035 when the page is not provided4036 is expected to equal 24037 when the page is provided4038 is expected to be nil4039 #prev_page4040 when the page is not provided4041 is expected to be nil4042 when the page is provided4043 is expected to equal 14044 #findings4045 with the default parameters4046 is expected to contain exactly "c0f2f16b-27dc-56c7-89c9-e81a27ab1d16", "4261808f-309b-5df0-8e0c-cc0678bec670", "0276c0d1-1150-5218-8da3-573e9dc4822f", "61729dd4-a3ea-55af-b6d3-b7c56e4fcaf3", "b576724b-f06c-5a92-9878-943db2ca8cbc", "d4464c7a-d10f-5483-86b6-0587d42c6e15", "54a7c93e-6a43-5cf6-93bb-9bc669826e43", and "43ffb259-bec9-581a-bfe3-c3fe7422139d"4047 when the uuid is provided4048 is expected to contain exactly "c0f2f16b-27dc-56c7-89c9-e81a27ab1d16"4049 when the page is provided4050 is expected to contain exactly "b576724b-f06c-5a92-9878-943db2ca8cbc" and "d4464c7a-d10f-5483-86b6-0587d42c6e15"4051 when the per_page is provided4052 is expected to contain exactly "c0f2f16b-27dc-56c7-89c9-e81a27ab1d16"4053 when the `severity_levels` is provided4054 is expected to contain exactly "61729dd4-a3ea-55af-b6d3-b7c56e4fcaf3", "b576724b-f06c-5a92-9878-943db2ca8cbc", "d4464c7a-d10f-5483-86b6-0587d42c6e15", and "54a7c93e-6a43-5cf6-93bb-9bc669826e43"4055 when the `confidence_levels` is provided4056 is expected to contain exactly "43ffb259-bec9-581a-bfe3-c3fe7422139d"4057 when the `report_types` is provided4058 is expected to contain exactly "c0f2f16b-27dc-56c7-89c9-e81a27ab1d16", "4261808f-309b-5df0-8e0c-cc0678bec670", and "0276c0d1-1150-5218-8da3-573e9dc4822f"4059 when the `scope` is provided as `all`4060 is expected to contain exactly "c0f2f16b-27dc-56c7-89c9-e81a27ab1d16", "4261808f-309b-5df0-8e0c-cc0678bec670", "0276c0d1-1150-5218-8da3-573e9dc4822f", "61729dd4-a3ea-55af-b6d3-b7c56e4fcaf3", "b576724b-f06c-5a92-9878-943db2ca8cbc", "d4464c7a-d10f-5483-86b6-0587d42c6e15", "54a7c93e-6a43-5cf6-93bb-9bc669826e43", and "43ffb259-bec9-581a-bfe3-c3fe7422139d"4061 when the `scanner` is provided4062 is expected to contain exactly "61729dd4-a3ea-55af-b6d3-b7c56e4fcaf3", "b576724b-f06c-5a92-9878-943db2ca8cbc", "d4464c7a-d10f-5483-86b6-0587d42c6e15", "54a7c93e-6a43-5cf6-93bb-9bc669826e43", and "43ffb259-bec9-581a-bfe3-c3fe7422139d"4063 when the `state` is provided4064 is expected to eq ["c0f2f16b-27dc-56c7-89c9-e81a27ab1d16"]4065 when there is a retried build4066 is expected to contain exactly "c0f2f16b-27dc-56c7-89c9-e81a27ab1d16", "4261808f-309b-5df0-8e0c-cc0678bec670", and "0276c0d1-1150-5218-8da3-573e9dc4822f"4067 when a build has more than one security report artifacts4068 is expected to contain exactly "725d7371-438a-58f0-aee5-a990c7cb0981"4069 when a vulnerability already exist for a security finding4070 the vulnerability is included in results4071 is expected to eq #<Vulnerability id:394 [vulnerability:namespace1705/project-1572/394]>4072 parsing artifacts4073 does not parse artifacts4074 #available?4075 when there are zero security findings4076 is expected not to be available4077 when there is a security finding without finding data4078 is expected not to be available4079 when there is a security finding with finding data4080 is expected to be available4081MergeRequestApproverPresenter4082 #render4083 displays committers4084 approvals_required is low4085 returns the top n committers4086 #any?4087 returns true if any user exists4088 returns false if no user exists4089 caches loaded users4090 #render_user4091 renders link4092 #show_code_owner_tips?4093 when code_owner feature enabled and code owner is empty4094 returns true4095 when code_owner feature enabled and code owner is not empty4096 returns false4097 when code_owner feature is disabled4098 returns false4099ProjectStatistics4100 # order random4101 #update_storage_size4102 when should_check_namespace_plan? returns true4103 sums the relevant storage counters without uploads_size4104 when should_check_namespace_plan? returns false4105 sums the relevant storage counters along with uploads_size4106 #cost_factored_storage_size4107 when there is no cost factor for forks4108 plan: :free_plan, fork_visibility: :public4109 equals the storage size4110 plan: :free_plan, fork_visibility: :internal4111 equals the storage size4112 plan: :free_plan, fork_visibility: :private4113 equals the storage size4114 plan: :premium_plan, fork_visibility: :public4115 equals the storage size4116 plan: :premium_plan, fork_visibility: :internal4117 equals the storage size4118 plan: :premium_plan, fork_visibility: :private4119 equals the storage size4120 plan: :ultimate_plan, fork_visibility: :public4121 equals the storage size4122 plan: :ultimate_plan, fork_visibility: :internal4123 equals the storage size4124 plan: :ultimate_plan, fork_visibility: :private4125 equals the storage size4126 when there is a cost factor for forks4127 returns the storage size if the fork namespace is free and the fork is private4128 returns the storage size with the cost factor applied for a fork in a subgroup4129 returns the storage size if the project is not a fork4130 rounds to the nearest integer4131 plan: :free_plan, fork_visibility: :public4132 returns the storage size with the cost factor applied4133 plan: :free_plan, fork_visibility: :internal4134 returns the storage size with the cost factor applied4135 plan: :premium_plan, fork_visibility: :public4136 returns the storage size with the cost factor applied4137 plan: :premium_plan, fork_visibility: :internal4138 returns the storage size with the cost factor applied4139 plan: :premium_plan, fork_visibility: :private4140 returns the storage size with the cost factor applied4141 plan: :ultimate_plan, fork_visibility: :public4142 returns the storage size with the cost factor applied4143 plan: :ultimate_plan, fork_visibility: :internal4144 returns the storage size with the cost factor applied4145 plan: :ultimate_plan, fork_visibility: :private4146 returns the storage size with the cost factor applied4147LicensesListEntity4148 when the license_scanning_sbom_scanner feature flag is false4149 behaves like report list4150 #as_json4151 with success build4152 with provided items4153 has array of items with status ok4154 with no items4155 has empty array of items with status no_items4156 with failed build4157 with authorized user4158 has job_path with status failed_job4159 without authorized user4160 has only status failed_job4161 with no build4162 has status job_not_set_up and no job_path4163 without an associated project4164 returns a no_items status4165 with items are present4166 returns a ok status4167 when the license_scanning_sbom_scanner feature flag is true4168 when querying uncompressed package metadata4169 behaves like report list4170 #as_json4171 with success build4172 with provided items4173 has array of items with status ok4174 with no items4175 has empty array of items with status no_items4176 with failed build4177 with authorized user4178 has job_path with status failed_job4179 without authorized user4180 has only status failed_job4181 with no build4182 has status job_not_set_up and no job_path4183 without an associated project4184 returns a no_items status4185 with items are present4186 returns a ok status4187 when querying compressed package metadata4188 behaves like report list4189 #as_json4190 with success build4191 with provided items4192 has array of items with status ok4193 with no items4194 has empty array of items with status no_items4195 with failed build4196 with authorized user4197 has job_path with status failed_job4198 without authorized user4199 has only status failed_job4200 with no build4201 has status job_not_set_up and no job_path4202 without an associated project4203 returns a no_items status4204 with items are present4205 returns a ok status4206Gitlab::Licenses::SubmitLicenseUsageDataBanner4207 #reset4208 when check namespace plan setting is enabled4209 does not reset the submit license usage data4210 when there is only a future dated license4211 does not reset the submit license usage data4212 when current license is an online cloud license4213 does not reset the submit license usage data4214 when current license is a legacy license4215 does not reset the submit license usage data4216 when current license is for a trial4217 does not reset the submit license usage data4218 when license start day matches today's day4219 resets the submit license usage data4220 when license start day does not match today's day4221 and today is the end of the month4222 and the start date's day is smaller than today's day4223 does not reset the submit license usage data4224 and the start date's day is bigger than today's day4225 current_date: Mon, 28 Feb 20224226 resets the submit license usage data4227 current_date: Thu, 29 Feb 20244228 resets the submit license usage data4229 current_date: Sat, 30 Apr 20224230 resets the submit license usage data4231 #display?4232 is expected to eq true4233 when user is empty4234 is expected to eq false4235 when user cannot admin all resources4236 is expected to eq false4237 when check namespace plan setting is enabled4238 is expected to eq false4239 when current license is an online cloud license4240 is expected to eq false4241 when current license is a legacy license4242 is expected to eq false4243 when current license is for a trial4244 is expected to eq false4245 when there is only a future dated license4246 is expected to eq false4247 when it's within the first month of the license4248 is expected to eq false4249 when user dismissed the callout4250 is expected to eq false4251 #title4252 returns the title4253 when banner should not be displayed4254 does not return a title4255 #body4256 returns the body4257 when banner should not be displayed4258 does not return a body4259 #dismissable?4260 is expected to eq true4261 when license usage data has not been exported yet4262 is expected to eq false4263Resolvers::Geo::ProjectRepositoryRegistriesResolver4264 # order random4265 behaves like a Geo registries resolver4266 #resolve4267 when the parent object is the current node4268 when the user has permission to view Geo data4269 when admin mode is enabled4270 when the ids argument is null4271 returns registries, in order4272 when the ids argument is present4273 returns the requested registries, in order4274 when the replication_state argument is present4275 returns registries with requested replication state, in order4276 with verification enabled4277 when the verification_state argument is present4278 returns registries with requested verification state, in order4279 with verification disabled4280 when the verification_state argument is present4281 raises ArgumentError (PENDING: Skipping because verification is enabled for Project)4282 when admin mode is disabled4283 returns nothing4284 when the user does not have permission to view Geo data4285 returns nothing4286 when the parent object is not the current node4287 when the user has permission to view Geo data4288 returns nothing, because we can't query other nodes' tracking databases4289Resolvers::Geo::DesignManagementRepositoryRegistriesResolver4290 # order random4291 behaves like a Geo registries resolver4292 #resolve4293 when the parent object is the current node4294 when the user has permission to view Geo data4295 when admin mode is enabled4296 when the ids argument is null4297 returns registries, in order4298 when the ids argument is present4299 returns the requested registries, in order4300 when the replication_state argument is present4301 returns registries with requested replication state, in order4302 with verification enabled4303 when the verification_state argument is present4304 returns registries with requested verification state, in order4305 with verification disabled4306 when the verification_state argument is present4307 raises ArgumentError (PENDING: Skipping because verification is enabled for DesignManagement::Repository)4308 when admin mode is disabled4309 returns nothing4310 when the user does not have permission to view Geo data4311 returns nothing4312 when the parent object is not the current node4313 when the user has permission to view Geo data4314 returns nothing, because we can't query other nodes' tracking databases4315AddHashedRootNamespaceIdToMergeRequests4316 # order random4317 .completed?4318 mapping has been updated4319 is expected to be completed4320 mapping has not been updated4321 is expected not to be completed4322 .migrate4323 when migration is already completed4324 does not modify data4325 migration process4326 updates the issues index mappings4327AddArchivedToIssues4328 # order random4329 .completed?4330 mapping has been updated4331 is expected to be completed4332 mapping has not been updated4333 is expected not to be completed4334 .migrate4335 when migration is already completed4336 does not modify data4337 migration process4338 updates the issues index mappings4339IncidentManagement::PendingEscalations::ProcessService4340 # order random4341 #execute4342 alert escalation4343 behaves like sends an on-call notification email4344 is expected to receive notify_oncall_users_of_alert([#<User id:2659 @user854>], #<AlertManagement::Alert id:1 namespace1842/project-1709^alert#1>) 1 time4345 behaves like deletes the escalation4346 is expected to raise ActiveRecord::RecordNotFound4347 behaves like creates a system note4348 is expected to change `Note.count` by 14349 when escalation rule is for a user4350 behaves like sends an on-call notification email4351 is expected to receive notify_oncall_users_of_alert([#<User id:2663 @user855>], #<AlertManagement::Alert id:4 namespace1842/project-1709^alert#1>) 1 time4352 behaves like deletes the escalation4353 is expected to raise ActiveRecord::RecordNotFound4354 when escalation is not scheduled to occur4355 behaves like does not send on-call notification4356 is expected not to receive new(*(any args)) 0 times4357 behaves like does not delete the escalation4358 is expected not to raise Exception4359 when escalation policies feature is unavailable4360 behaves like does not send on-call notification4361 is expected not to receive new(*(any args)) 0 times4362 behaves like deletes the escalation4363 is expected to raise ActiveRecord::RecordNotFound4364 target escalation status is resolved4365 behaves like does not send on-call notification4366 is expected not to receive new(*(any args)) 0 times4367 behaves like deletes the escalation4368 is expected to raise ActiveRecord::RecordNotFound4369 target status is not above threshold4370 behaves like does not send on-call notification4371 is expected not to receive new(*(any args)) 0 times4372 behaves like does not delete the escalation4373 is expected not to raise Exception4374 issue escalation4375 behaves like sends an on-call notification email4376 is expected to receive notify_oncall_users_of_incident([#<User id:2659 @user854>], #<Issue id:31 namespace1842/project-1709#1>) 1 time4377 behaves like deletes the escalation4378 is expected to raise ActiveRecord::RecordNotFound4379 behaves like creates a system note4380 is expected to change `Note.count` by 14381 when escalation rule is for a user4382 behaves like sends an on-call notification email4383 is expected to receive notify_oncall_users_of_incident([#<User id:2670 @user857>], #<Issue id:34 namespace1842/project-1709#1>) 1 time4384 behaves like deletes the escalation4385 is expected to raise ActiveRecord::RecordNotFound4386 when escalation is not scheduled to occur4387 behaves like does not send on-call notification4388 is expected not to receive new(*(any args)) 0 times4389 behaves like does not delete the escalation4390 is expected not to raise Exception4391 when escalation policies feature is unavailable4392 behaves like does not send on-call notification4393 is expected not to receive new(*(any args)) 0 times4394 behaves like deletes the escalation4395 is expected to raise ActiveRecord::RecordNotFound4396 target escalation status is resolved4397 behaves like does not send on-call notification4398 is expected not to receive new(*(any args)) 0 times4399 behaves like deletes the escalation4400 is expected to raise ActiveRecord::RecordNotFound4401 target status is not above threshold4402 behaves like does not send on-call notification4403 is expected not to receive new(*(any args)) 0 times4404 behaves like does not delete the escalation4405 is expected not to raise Exception4406Gitlab::SubscriptionPortal::Clients::Rest4407 #generate_trial4408 nests in the trial_user param if needed4409 behaves like when response is successful4410 has a successful status4411 behaves like when response code is 4224412 has a unprocessable entity status4413 returns the error message along with the error_attribute_map4414 behaves like when response code is 5004415 has a server error status4416 behaves like when http call raises an exception4417 overrides the error message4418 #generate_lead4419 behaves like when response is successful4420 has a successful status4421 behaves like when response code is 4224422 has a unprocessable entity status4423 returns the error message along with the error_attribute_map4424 behaves like when response code is 5004425 has a server error status4426 behaves like when http call raises an exception4427 overrides the error message4428 #generate_iterable4429 behaves like when response is successful4430 has a successful status4431 behaves like when response code is 4224432 has a unprocessable entity status4433 returns the error message along with the error_attribute_map4434 behaves like when response code is 5004435 has a server error status4436 behaves like when http call raises an exception4437 overrides the error message4438 #create_subscription4439 behaves like when response is successful4440 has a successful status4441 behaves like when response code is 4224442 has a unprocessable entity status4443 returns the error message along with the error_attribute_map4444 behaves like when response code is 5004445 has a server error status4446 behaves like when http call raises an exception4447 overrides the error message4448 #create_customer4449 behaves like when response is successful4450 has a successful status4451 behaves like when response code is 4224452 has a unprocessable entity status4453 returns the error message along with the error_attribute_map4454 behaves like when response code is 5004455 has a server error status4456 behaves like when http call raises an exception4457 overrides the error message4458 #payment_form_params4459 behaves like when response is successful4460 has a successful status4461 behaves like when response code is 4224462 has a unprocessable entity status4463 returns the error message along with the error_attribute_map4464 behaves like when response code is 5004465 has a server error status4466 behaves like when http call raises an exception4467 overrides the error message4468 #payment_method4469 behaves like when response is successful4470 has a successful status4471 behaves like when response code is 4224472 has a unprocessable entity status4473 returns the error message along with the error_attribute_map4474 behaves like when response code is 5004475 has a server error status4476 behaves like when http call raises an exception4477 overrides the error message4478 #validate_payment_method4479 behaves like when response is successful4480 has a successful status4481 behaves like when response code is 4224482 has a unprocessable entity status4483 returns the error message along with the error_attribute_map4484 behaves like when response code is 5004485 has a server error status4486 behaves like when http call raises an exception4487 overrides the error message4488 #customers_oauth_app_uid4489 behaves like when response is successful4490 has a successful status4491 behaves like when response code is 4224492 has a unprocessable entity status4493 returns the error message along with the error_attribute_map4494 behaves like when response code is 5004495 has a server error status4496 behaves like when http call raises an exception4497 overrides the error message4498Geo::RepositorySyncWorker4499 additional shards4500 skips backfill for repositories on other shards4501 skips backfill for projects on shards excluded by selective sync4502 skips backfill for projects on missing shards4503 skips backfill for projects with downed Gitaly server4504DastScannerProfile4505 behaves like sanitizable4506 includes Sanitizable4507 #name4508 when input includes javascript tags4509 gets sanitized4510 #name validation4511 when input contains pre-escaped html entities4512 is not valid4513 when it contains a path component4514 is not valid4515 associations4516 is expected to belong to project required: false4517 validations4518 is expected to be valid4519 is expected to validate that the length of :name is at most 2554520 is expected to validate that :name is case-sensitively unique within the scope of :project_id4521 is expected to validate that :project_id cannot be empty/falsy4522 is expected to validate that :name cannot be empty/falsy4523 scopes4524 .project_id_in4525 returns the dast_scanner_profiles for given projects4526 .with_name4527 returns the dast_scanner_profiles with given name4528 .names4529 returns the names for the DAST scanner profiles with the given IDs4530 when a profile is not found4531 rescues the error and returns an empty array4532 #ci_variables4533 returns a collection of variables4534 when optional fields are set4535 returns a collection of variables including these4536 when the scan_type is active4537 returns a collection of variables with the passive profile4538 when the target_type is api4539 when the scan_type is active4540 returns a collection of variables with the passive profile4541 when the scan_type is passive4542 returns a collection of variables with the passive profile4543 #referenced_in_security_policies4544 there is no security_orchestration_policy_configuration assigned to project4545 returns the referenced policy name4546 there is security_orchestration_policy_configuration assigned to project4547 calls security_orchestration_policy_configuration.active_policy_names_with_dast_scanner_profile with profile name4548 returns empty array4549Resolvers::IterationsResolver4550 #resolve4551 for group iterations4552 calls IterationsFinder#execute4553 without parameters4554 calls IterationsFinder to retrieve all iterations4555 with parameters4556 calls IterationsFinder with correct parameters, using timeframe4557 accepts a raw model id for backward compatibility4558 search4559 with search and in parameters4560 returns correct items when `in` not specified4561 search: "", fields_to_search: [], expected_iterations: lazy { all_iterations }4562 returns correct items4563 search: "", fields_to_search: ["TITLE"], expected_iterations: lazy { all_iterations }4564 returns correct items4565 search: "", fields_to_search: ["TITLE", "CADENCE_TITLE"], expected_iterations: lazy { all_iterations }4566 returns correct items4567 search: "iteration", fields_to_search: [], expected_iterations: lazy { plan_cadence.iterations }4568 returns correct items4569 search: "iteration", fields_to_search: ["TITLE"], expected_iterations: lazy { plan_cadence.iterations }4570 returns correct items4571 search: "iteration", fields_to_search: ["TITLE", "CADENCE_TITLE"], expected_iterations: lazy { plan_cadence.iterations }4572 returns correct items4573 search: "plan", fields_to_search: [], expected_iterations: lazy { [] }4574 returns correct items4575 search: "plan", fields_to_search: ["CADENCE_TITLE"], expected_iterations: lazy { plan_cadence.iterations }4576 returns correct items4577 with the deprecated argument 'title' (to be deprecated in 15.4)4578 raises an error when 'title' is used with {:search=>"foo"}4579 raises an error when 'title' is used with {:in=>["TITLE"]}4580 raises an error when 'title' is used with {:in=>["CADENCE_TITLE"]}4581 uses 'search' and 'in' arguments to search title4582 with subgroup4583 defaults to include_ancestors4584 does not default to include_ancestors if IID is supplied4585 accepts include_ancestors false4586 by timeframe4587 when timeframe start and end are present4588 when start date is after end_date4589 generates an error4590 when user cannot read iterations4591 generates an error4592AddHashedRootNamespaceIdToCommits4593 # order random4594 .migrate4595 when migration is already completed4596 does not modify data4597 migration process4598 updates the issues index mappings4599 .completed?4600 mapping has been updated4601 is expected to be completed4602 mapping has not been updated4603 is expected not to be completed4604Namespaces::Storage::PreEnforcementAlertComponent4605 # order random4606 when user is not allowed to see the alert4607 does not render4608 when qalifies for combnined users and storage alert4609 does not render the alert4610 when user is allowed to see and dismiss4611 indicates the storage limit will be enforced soon in the alert text4612 includes the namespace name in the alert text4613 includes used_storage in the alert text4614 renders the correct callout data4615 when the user dismissed the alert under 14 days ago4616 does not render the alert4617 when the user dismissed the alert over 14 days ago4618 does render the alert4619 alert links4620 includes the rollout_docs_link in the alert text4621 includes the learn_more_link in the alert text4622 includes the faq_link in the alert text4623 when namespace is below the notification limit4624 does not render4625 when group does not meet the criteria to render the alert4626 does not render4627 enforcement phases4628 when namespace is in pre-enforcement phase and no enforcement is set4629 renders the alert4630 when namespace is in the phased rollout of enforcement4631 renders the alert if used_storage is less than enforcement_limit4632 does not render the alert if used_storage is higher than enforcement_limit4633 when namespace is NOT in phased rollout and uses dashboard limit for enforcement4634 renders the alert if used_storage is less than storage_size_limit4635 does not render the alert if used_storage is higher than storage_size_limit4636Vulnerabilities::StarboardVulnerabilityCreateService4637 with authorized user4638 with feature enabled4639 creates Vulnerability4640 has correct data4641 sets cluster_agent.has_vulnerability to true4642 when there is an identifier for a different project4643 does not reuse another project's identifier4644 creates a new identifier4645 when there is a scanner for a different project4646 does not reuse another project's scanner4647 creates a new scanner4648 with feature disabled4649 raises AccessDeniedError4650 with unauthorized user4651 raises AccessDeniedError4652Ci::Minutes::Quota4653 # order random4654 #total4655 namespace_monthly_quota: 20, application_monthly_quota: 100, purchased_minutes: 30, result: 504656 is expected to eq 504657 namespace_monthly_quota: nil, application_monthly_quota: 100, purchased_minutes: 30, result: 1304658 is expected to eq 1304659 namespace_monthly_quota: 20, application_monthly_quota: 100, purchased_minutes: 0, result: 204660 is expected to eq 204661 namespace_monthly_quota: 0, application_monthly_quota: 0, purchased_minutes: 30, result: 304662 is expected to eq 304663 namespace_monthly_quota: nil, application_monthly_quota: 0, purchased_minutes: 30, result: 304664 is expected to eq 304665 #purchased and #any_purchased?4666 purchased_minutes: nil, purchased: 0, any_purchased: false4667 is expected to eq false4668 purchased_minutes: 0, purchased: 0, any_purchased: false4669 is expected to eq false4670 purchased_minutes: 10, purchased: 10, any_purchased: true4671 is expected to eq true4672 #enabled?4673 namespace_monthly_quota: 0, application_monthly_quota: 100, purchased_minutes: 0, result: false4674 is expected to eq false4675 when namespace is not root4676 is expected to eq false4677 namespace_monthly_quota: 0, application_monthly_quota: 100, purchased_minutes: 10, result: true4678 is expected to eq true4679 when namespace is not root4680 is expected to eq false4681 namespace_monthly_quota: nil, application_monthly_quota: 100, purchased_minutes: 10, result: true4682 is expected to eq true4683 when namespace is not root4684 is expected to eq false4685 namespace_monthly_quota: nil, application_monthly_quota: 100, purchased_minutes: 0, result: true4686 is expected to eq true4687 when namespace is not root4688 is expected to eq false4689 namespace_monthly_quota: 20, application_monthly_quota: 100, purchased_minutes: 0, result: true4690 is expected to eq true4691 when namespace is not root4692 is expected to eq false4693 namespace_monthly_quota: nil, application_monthly_quota: nil, purchased_minutes: 0, result: false4694 is expected to eq false4695 when namespace is not root4696 is expected to eq false4697 namespace_monthly_quota: nil, application_monthly_quota: 0, purchased_minutes: 0, result: false4698 is expected to eq false4699 when namespace is not root4700 is expected to eq false4701 #monthly4702 namespace_monthly_quota: 20, application_monthly_quota: 100, result: 204703 is expected to eq 204704 namespace_monthly_quota: nil, application_monthly_quota: 100, result: 1004705 is expected to eq 1004706 namespace_monthly_quota: 100, application_monthly_quota: nil, result: 1004707 is expected to eq 1004708 namespace_monthly_quota: 0, application_monthly_quota: 100, result: 04709 is expected to eq 04710 namespace_monthly_quota: nil, application_monthly_quota: nil, result: 04711 is expected to eq 04712 #recalculate_remaining_purchased_minutes!4713 purchased_minutes: 200, namespace_monthly_quota: 400, previous_amount_used: 0, expected_purchased_limit: 2004714 has the expected purchased minutes4715 purchased_minutes: 200, namespace_monthly_quota: 0, previous_amount_used: 0, expected_purchased_limit: 2004716 has the expected purchased minutes4717 purchased_minutes: 0, namespace_monthly_quota: 0, previous_amount_used: 0, expected_purchased_limit: 04718 has the expected purchased minutes4719 purchased_minutes: 200, namespace_monthly_quota: 400, previous_amount_used: nil, expected_purchased_limit: 2004720 has the expected purchased minutes4721 purchased_minutes: 200, namespace_monthly_quota: 400, previous_amount_used: 300, expected_purchased_limit: 2004722 has the expected purchased minutes4723 purchased_minutes: 200, namespace_monthly_quota: 400, previous_amount_used: 500, expected_purchased_limit: 1004724 has the expected purchased minutes4725 purchased_minutes: 0, namespace_monthly_quota: 400, previous_amount_used: 500, expected_purchased_limit: 04726 has the expected purchased minutes4727 purchased_minutes: 200, namespace_monthly_quota: 400, previous_amount_used: 600, expected_purchased_limit: 04728 has the expected purchased minutes4729 purchased_minutes: 200, namespace_monthly_quota: 400, previous_amount_used: 800, expected_purchased_limit: 04730 has the expected purchased minutes4731Security::Ingestion::Tasks::IngestVulnerabilities::MarkResolvedAsDetected4732 changes state of resolved Vulnerabilities back to detected4733 creates state transition entry for each vulnerability4734Banzai::ReferenceParser::IterationParser4735 in project context4736 behaves like parses iteration references4737 #nodes_visible_to_user4738 when the link has a data-iteration attribute4739 behaves like referenced feature visibility4740 when feature is disabled4741 does not create reference4742 when feature is enabled only for team members4743 does not create reference for non member4744 creates reference for member4745 when feature is enabled4746 creates reference4747 when the link references an iteration in parent group4748 behaves like referenced feature visibility4749 when feature is disabled4750 does not create reference4751 when feature is enabled only for team members4752 does not create reference for non member4753 creates reference for member4754 when feature is enabled4755 creates reference4756 #referenced_by4757 when the link has a data-iteration attribute4758 using an existing iteration ID4759 returns an Array of iterations4760 using an iteration from parent group4761 returns an Array of iterations4762 using a non-existing iteration ID4763 returns an empty Array4764 in group context4765 behaves like parses iteration references4766 #nodes_visible_to_user4767 when the link has a data-iteration attribute4768 behaves like referenced feature visibility4769 when feature is disabled4770 does not create reference4771 when feature is enabled only for team members4772 does not create reference for non member4773 creates reference for member4774 when feature is enabled4775 creates reference4776 when the link references an iteration in parent group4777 behaves like referenced feature visibility4778 when feature is disabled4779 does not create reference4780 when feature is enabled only for team members4781 does not create reference for non member4782 creates reference for member4783 when feature is enabled4784 creates reference4785 #referenced_by4786 when the link has a data-iteration attribute4787 using an existing iteration ID4788 returns an Array of iterations4789 using an iteration from parent group4790 returns an Array of iterations4791 using a non-existing iteration ID4792 returns an empty Array4793SystemNotes::MergeTrainService4794 #enqueue4795 posts the 'merge train' system note4796 behaves like a system note4797 has the correct attributes4798 when index of the merge request is not zero4799 posts the 'merge train' system note4800 #cancel4801 posts the 'merge train' system note4802 behaves like a system note4803 has the correct attributes4804 #abort4805 posts the 'merge train' system note4806 behaves like a system note4807 has the correct attributes4808 behaves like creates a removed merge train TODO4809 creates Todo of MERGE_TRAIN_REMOVED4810 #add_when_pipeline_succeeds4811 posts the 'add to merge train when pipeline succeeds' system note4812 behaves like a system note4813 has the correct attributes4814 #cancel_add_when_pipeline_succeeds4815 posts the 'add to merge train when pipeline succeeds' system note4816 behaves like a system note4817 has the correct attributes4818 #abort_add_when_pipeline_succeeds4819 posts the 'add to merge train when pipeline succeeds' system note4820 behaves like a system note4821 has the correct attributes4822 behaves like creates a removed merge train TODO4823 creates Todo of MERGE_TRAIN_REMOVED4824SystemAccess::GroupSamlMicrosoftGroupSyncWorker4825 # order random4826 #perform4827 when group SAML is not enabled4828 behaves like sync unavailable4829 does not call the sync service4830 when group SAML is enabled4831 behaves like sync unavailable4832 does not call the sync service4833 when microsoft_group_sync feature is not licensed4834 behaves like sync unavailable4835 does not call the sync service4836 when microsoft_group_sync feature is licensed4837 behaves like sync unavailable4838 does not call the sync service4839 when the Microsoft application is not enabled4840 behaves like sync unavailable4841 does not call the sync service4842 when the Microsoft application is enabled4843 behaves like sync unavailable4844 does not call the sync service4845 when the user has a SAML identity4846 when the Microsoft API returns no groups4847 behaves like sync unavailable4848 does not call the sync service4849 when no group links match4850 behaves like sync unavailable4851 does not call the sync service4852 when group links match4853 adds the users as members4854 for SAML provider default_membership_role behavior4855 when matching group links do not include the top-level group4856 adds the member to the subgroup and retains the top-level group default membership role4857 does not touch the member record when the access level matches the default membership role4858 when the member is the last owner4859 does not change the access level to the default membership role4860 when the access level does not match the default membership role4861 reverts to the default membership role4862 does not update the access level when the top level group has no group links4863Resolvers::Geo::GroupWikiRepositoryRegistriesResolver4864 behaves like a Geo registries resolver4865 #resolve4866 when the parent object is the current node4867 when the user has permission to view Geo data4868 when admin mode is enabled4869 when the ids argument is null4870 returns registries, in order4871 when the ids argument is present4872 returns the requested registries, in order4873 when the replication_state argument is present4874 returns registries with requested replication state, in order4875 with verification enabled4876 when the verification_state argument is present4877 returns registries with requested verification state, in order4878 with verification disabled4879 when the verification_state argument is present4880 raises ArgumentError (PENDING: Skipping because verification is enabled for GroupWikiRepository)4881 when admin mode is disabled4882 returns nothing4883 when the user does not have permission to view Geo data4884 returns nothing4885 when the parent object is not the current node4886 when the user has permission to view Geo data4887 returns nothing, because we can't query other nodes' tracking databases4888AppSec::Dast::ScannerProfiles::UpdateService4889 #execute4890 when a user does not have access to the project4891 returns an error status4892 populates message4893 when the dast_scanner_profile exists on a different project4894 returns an error status4895 when the user can run a dast scan4896 returns a success status4897 updates the dast_scanner_profile4898 audits the update4899 returns a dast_scanner_profile payload4900 when the user omits unrequired elements4901 does not update those elements4902 omits those elements from the audit4903 when setting properties to false4904 updates the dast_scanner_profile4905 when the dast_scanner_profile doesn't exist4906 returns an error status4907 populates message4908 when on demand scan licensed feature is not available4909 returns an error status4910 populates message4911 when project has security policies enabled4912 when there is no policy that is referencing the profile4913 returns a success status4914 when there is a policy that is referencing the profile4915 returns an error status4916 populates message4917Sidebars::Groups::Menus::SettingsMenu4918 Menu Items4919 for owner user4920 LDAP sync menu4921 when group LDAP sync is not enabled4922 is expected not to be present4923 when group LDAP sync is enabled4924 when user can admin LDAP syncs4925 is expected to be present4926 when user cannot admin LDAP syncs4927 is expected not to be present4928 SAML SSO menu4929 when SAML is disabled4930 is expected not to be present4931 when SAML is enabled4932 is expected to be present4933 when user cannot admin group SAML4934 is expected not to be present4935 SAML group links menu4936 when SAML group links feature is disabled4937 is expected not to be present4938 when SAML group links feature is enabled4939 is expected to be present4940 when user cannot admin SAML group links4941 is expected not to be present4942 domain verification4943 when domain verification is licensed4944 is expected to be present4945 when user cannot admin group4946 is expected not to be present4947 when domain verification is not licensed4948 is expected not to be present4949 Webhooks menu4950 when licensed feature :group_webhooks is not enabled4951 is expected not to be present4952 when show_promotions is enabled4953 is expected to be present4954 when licensed feature :group_webhooks is enabled4955 is expected to be present4956 Usage quotas menu4957 is expected to be present4958 when usage_quotas licensed feature is not enabled4959 is expected not to be present4960 Billing menu4961 is expected to be present4962 when group billing does not apply4963 is expected not to be present4964 Reporting menu4965 is expected to be present4966 when feature is not enabled4967 is expected not to be present4968 for auditor user4969 Billing menu item4970 is expected to be present4971 does not show any other menu items4972Elastic::IndexingControl4973 ::WORKERS4974 only includes classes which inherit from this class4975 includes all workers with Elastic::IndexingControl enabled4976 with stub_const4977 .non_cached_pause_indexing?4978 calls current_without_cache4979 .resume_processing!4980 triggers job processing if there are jobs4981 does nothing if no jobs available4982 with elasticsearch indexing paused4983 adds jobs to the waiting queue4984 ignores changes from a different worker4985 with elasticsearch indexing unpaused4986 performs the job4987Gitlab::Geo::Oauth::LogoutToken4988 #valid?4989 returns false when current user is nil4990 returns false when state is nil4991 returns false when state is empty4992 returns false when token has an incorrect encoding4993 returns false when token could not be found4994 returns false when token has an invalid status4995 returns false when token does not belong to the user4996 returns true when token is valid4997 #return_to4998 returns nil when token is invalid4999 returns nil when there is no Geo node associated with the OAuth application5000 when state return_to param is nil5001 returns the Geo node URL associated with the OAuth application5002 when state return_to param is empty5003 returns the Geo node URL associated with the OAuth application5004 when state return_to param is set5005 returns the full path to the Geo node URL associated with the OAuth application5006 replaces the host with the Geo node associated with the OAuth application5007 handles leading and trailing slashes correctly5008Resolvers::Epics::DefaultProjectForIssueCreationResolver5009 # order random5010 is expected to have nullable GraphQL type Project5011 #resolve5012 without sufficient rights5013 is expected to be nil5014 when there has been no event created5015 is expected to be nil5016 when there is no signed in user5017 is expected to be nil5018 with sufficient rights5019 when last event was an issue creation5020 is expected to eq #<Project id:1765 group496/project-1816>>5021 when last event was not an issue creation5022 is expected to be nil5023 when there are multiple events on different projects5024 is expected to eq #<Project id:1765 group496/project-1816>>5025 when project is outside of the group hierarchy5026 is expected to be nil5027Issuable::DestroyService5028 #execute5029 when destroying an epic5030 records usage ping epic destroy event5031 behaves like service deleting todos5032 behaves like service scheduling async deletes5033 destroys associated todos asynchronously5034 works inside a transaction5035 behaves like service deleting label links5036 behaves like service scheduling async deletes5037 destroys associated todos asynchronously5038 works inside a transaction5039 when destroying other issuable type5040 does not track usage ping epic destroy event5041 when issuable is an issue5042 behaves like logs delete issuable audit event5043 logs audit event5044 when issuable is an epic5045 behaves like logs delete issuable audit event5046 logs audit event5047 when issuable is a task5048 behaves like logs delete issuable audit event5049 logs audit event5050 when issuable is a merge_request5051 calls MergeRequestDestroyAuditor with correct arguments5052 calls MergeRequestBeforeDestroyAuditor with correct arguments5053Packages::Policies::GroupPolicy5054 # order random5055 with ip restriction5056 without restriction5057 is expected to be allowed :read_package5058 is expected to be allowed :create_package5059 is expected to be allowed :destroy_package5060 is expected to be disallowed :admin_package5061 behaves like disabling admin_package feature flag5062 is expected to be allowed :admin_package5063 with restriction5064 with address is within the range5065 is expected to be allowed :read_package5066 is expected to be allowed :create_package5067 is expected to be allowed :destroy_package5068 is expected to be disallowed :admin_package5069 behaves like disabling admin_package feature flag5070 is expected to be allowed :admin_package5071 with address is outside the range5072 as maintainer5073 is expected to be disallowed :read_package5074 is expected to be disallowed :create_package5075 is expected to be disallowed :destroy_package5076 is expected to be disallowed :admin_package5077 is expected to be disallowed :update_package5078 as owner5079 is expected to be allowed :read_package5080 is expected to be allowed :create_package5081 is expected to be allowed :destroy_package5082 is expected to be allowed :admin_package5083Vulnerabilities::OrphanedRemediationsCleanupWorker5084 # order random5085 .perform5086 behaves like removes all orphaned remediations5087 deletes remediations that do not have any findings5088 when orphaned remediations span multiple batches5089 behaves like removes all orphaned remediations5090 deletes remediations that do not have any findings5091TrialsHelper5092 # order random5093 #create_lead_form_data5094 provides expected form data5095 allows overriding data with params5096 when namespace_id is in the params5097 provides the submit path with the namespace_id5098 when params are empty5099 uses the values from current user5100 #create_company_form_data5101 allows overriding data with params5102 #glm_source5103 return gitlab config host5104 #namespace_options_for_listbox5105 when there is no eligible group5106 returns just the "New" option group5107 when only group namespaces are eligible5108 returns the "New" and "Groups" option groups5109 when some group namespaces are eligible5110 returns the "New", "Groups" option groups5111 #trial_selection_intro_text5112 have_group_namespace: true, text: "You can apply your trial to a new group or an existing group."5113 is expected to eq "You can apply your trial to a new group or an existing group."5114 have_group_namespace: false, text: "Create a new group to start your GitLab Ultimate trial."5115 is expected to eq "Create a new group to start your GitLab Ultimate trial."5116 #show_trial_namespace_select?5117 is expected to eq false5118 with some trial group namespaces5119 is expected to eq true5120 #glm_params5121 is memoized5122 glm_source: nil, glm_content: nil, result: {}5123 is expected to eq {}5124 glm_source: "source", glm_content: nil, result: {:glm_source=>"source"}5125 is expected to eq {"glm_source"=>"source"}5126 glm_source: nil, glm_content: "content", result: {:glm_content=>"content"}5127 is expected to eq {"glm_content"=>"content"}5128 glm_source: "source", glm_content: "content", result: {:glm_source=>"source", :glm_content=>"content"}5129 is expected to eq {"glm_content"=>"content", "glm_source"=>"source"}5130 #should_ask_company_question?5131 glm_source: "about.gitlab.com", result: false5132 is expected to eq false5133 glm_source: "learn.gitlab.com", result: false5134 is expected to eq false5135 glm_source: "docs.gitlab.com", result: false5136 is expected to eq false5137 glm_source: "abouts.gitlab.com", result: true5138 is expected to eq true5139 glm_source: "about.gitlab.org", result: true5140 is expected to eq true5141 glm_source: "about.gitlob.com", result: true5142 is expected to eq true5143 glm_source: nil, result: true5144 is expected to eq true5145Gitlab::VulnerabilityScanning::DependencyScanning::FindingBuilder5146 # order random5147 #finding5148 when cyclonedx sbom contains required gitlab:dependency_scanning properties5149 does not add any errors to the report5150 creates the links5151 creates the name5152 creates the description5153 creates a valid location5154 creates the severity5155 creates the confidence5156 creates the metadata version5157 when cyclonedx does not contain required gitlab:dependency_scanning properties5158 adds an error to the generated report5159EE::RepositoryCheck::BatchWorker5160 Geo primary5161 loads project ids from main database5162 Geo secondary5163 loads project ids from tracking database5164 loads project ids that were checked more than a month ago from tracking database5165GitlabSubscriptions::RefreshSeatsWorker5166 # order random5167 #remaining_work_count5168 when there is remaining work5169 is expected to eq 75170 when there is no remaining work5171 is expected to eq 05172 #perform_work5173 with GitlabSubscriptions requiring refresh5174 when the DB is not read-only5175 with a paid plan5176 is labeled as idempotent5177 performs multiple times sequentially without raising an exception5178 updates seat count columns5179 updates last_seat_refresh_at without callbacks5180 with a free plan5181 does not update seat columns5182 with a trial plan5183 does not update seat columns5184 when the database is read_only5185 does not update seat columns5186 with no GitlabSubscriptions requiring refresh5187 does not update seat columns5188 #max_running_jobs5189 is expected to eq 65190Gitlab::Insights::ProjectInsightsConfig5191 filtering out invalid config entries5192 does not include invalid entry5193 does not show notice text5194 when no projects.only filter present5195 does not change the config5196 clones the original config5197 when not included in the projects.only filter5198 by project id5199 filters out the chart5200 does not have a notice text5201 by project full path5202 filters out the chart5203 when included in projects.only filter5204 by project id5205 includes the chart5206 does not have notice text5207 by project full path5208 filters out the chart5209 when all charts are excluded5210 returns an empty hash5211 when some project features are turned off5212 when the default configuration is given5213 contains issues and merge requests dashboards5214 when issues are disabled5215 filters out the issues dashboard5216 when merge requests are disabled5217 filters out the merge requests dashboard5218 when a custom config is given5219 when issues are disabled5220 filters out the issues chart5221 when merge requests are disabled5222 filters out the merge requests chart5223 when issues and merge requests are disabled5224 returns an empty config5225IncidentManagement::PendingEscalations::CreateService5226 # order random5227 for alerts5228 feature not available5229 does nothing5230 feature available5231 creates an escalation for each rule for the policy5232 creates the escalations and queues the escalation process check5233 target is resolved5234 does nothing5235 when there is no escalation policy for the project5236 does nothing5237 when the escalatable has pending escalations5238 does nothing5239 for incidents5240 feature not available5241 does nothing5242 feature available5243 creates an escalation for each rule for the policy5244 creates the escalations and queues the escalation process check5245 target is resolved5246 does nothing5247 when there is no escalation policy for the project5248 does nothing5249 when the escalatable has pending escalations5250 does nothing5251AppSec::Dast::ScannerProfiles::DestroyService5252 #execute5253 when a user does not have access to the project5254 returns an error status5255 populates message5256 when the user can run a DAST scan5257 returns a success status5258 deletes the dast_scanner_profile5259 returns a dast_scanner_profile payload5260 audits the deletion5261 when the dast_scanner_profile doesn't exist5262 returns an error status5263 populates message5264 when on demand scan licensed feature is not available5265 returns an error status5266 populates message5267 when project has security policies enabled5268 when there is no policy that is referencing the profile5269 returns a success status5270 when there is a policy that is referencing the profile5271 returns an error status5272 populates message5273Resolvers::Ci::CodeCoverageActivitiesResolver5274 is expected to eq Types::Ci::CodeCoverageActivityType5275 is expected to be truthy5276 #resolve5277 when group has projects with coverage5278 returns coverage activity for the group5279 when group has projects without coverage5280 returns an empty collection5281 when coverage is included within start date5282 returns coverage from the start_date5283 when coverage is not included within start date5284 returns an empty collection5285Resolvers::EpicAncestorsResolver5286 behaves like same hierarchy epic ancestors resolver5287 #resolve5288 returns nothing when feature disabled5289 does not return ancestor epics when user has no access to group epics5290 when user has access to the group epics5291 returns non confidential ancestor epics5292 returns confidential ancestors5293 with subgroups5294 returns all ancestors in the correct order5295 does not return parent group epics when include_ancestor_groups is false5296 when user is a guest5297 returns non confidential ancestor epics5298 does not return confidential epics5299 when there is a cross-hierarchy ancestor5300 returns only ancestors up to the last accessible ancestor5301 when user can access also cross-hierarchy ancestor5302 returns all ancestors5303Users::BuildService5304 #execute5305 with an admin user5306 with identity5307 sets all allowed attributes5308 with scim identity5309 passes allowed attributes to both scim and saml identity5310 marks the user as provisioned by group5311 with auditor as allowed params5312 sets auditor to true5313 with provisioned by group param5314 does not set provisioned by group5315 with service account user type5316 allows provisioned by group id to be set5317 smartcard authentication enabled5318 smartcard params5319 sets smartcard identity attributes5320 missing smartcard params5321 works as expected5322 user signup cap5323 when user signup cap is set5324 when user signup cap would be exceeded by new user signup5325 sets the user state to blocked_pending_approval5326 when user signup cap would not be exceeded by new user signup5327 does not set the user state to blocked_pending_approval5328 when user signup cap is not set5329 does not set the user state to blocked_pending_approval5330Security::TokenRevocationService#execute5331 when revoking a glpat token5332 returns success5333 when vulnerability is missing5334 does not call `SystemNoteService`5335 when revocation token API returns a response with failure5336 returns error5337 when revocation token types API returns empty list of types5338 is expected to eql {:status=>:success}5339 when external revocation service is disabled5340 is expected to eql {:status=>:success}5341 when external revocation service is enabled5342 with a list of valid token types5343 when there is a list of tokens to be revoked5344 is expected to equal :success5345 when token_revocation_url is missing5346 is expected to eql {:message=>"Missing revocation token data", :status=>:error}5347 when token_types_url is missing5348 is expected to eql {:message=>"Missing revocation token data", :status=>:error}5349 when revocation_api_token is missing5350 is expected to eql {:message=>"Missing revocation token data", :status=>:error}5351 when there is no token to be revoked5352 is expected to eql {:status=>:success}5353 when revocation token types API returns an unsuccessful response5354 is expected to eql {:message=>"Failed to get revocation token types", :status=>:error}5355Ai::ServiceAccessTokensStorageService5356 # order random5357 #execute5358 when category is not present5359 is expected to eq false5360 does not change Ai::ServiceAccessToken.count5361 when an invalid category is present5362 is expected to eq false5363 does not change Ai::ServiceAccessToken.count5364 with valid category5365 when token and expires_at are present5366 creates a new token5367 logs the actions it takes5368 behaves like cleans up all expired tokens5369 cleans up all expired tokens5370 when it fails to create a token5371 tracks the error5372 behaves like cleans up all expired tokens5373 cleans up all expired tokens5374 when token is not present5375 behaves like cleans up all tokens5376 removes all tokens5377 logs that it cleans up all tokens5378 when expires_at is not present5379 behaves like cleans up all tokens5380 removes all tokens5381 logs that it cleans up all tokens5382ElasticIndexBulkCronWorker5383 .perform5384 indexing is not paused5385 queues all shards for execution5386 executes the service under an exclusive lease5387 legacy lease is detected5388 skips scheduling5389 skips shard execution5390 when search cluster is unhealthy5391 does nothing if cluster is not healthy5392 indexing is paused5393 does nothing if indexing is paused5394 when indexing is disabled5395 does nothing if indexing is disabled5396 when service returns non-zero counter5397 adds logging_extras to the done log5398 requeues the worker5399 when requeue is disabled5400 does not requeues the worker5401 when there are no records in the queue5402 does not requeue the worker5403 when indexing failures occur in the queue5404 does not requeue the worker5405 behaves like worker with data consistency5406 .get_data_consistency_feature_flag_enabled?5407 returns true5408 .get_data_consistency5409 returns correct data consistency5410 behaves like an idempotent worker5411 is labeled as idempotent5412 performs multiple times sequentially without raising an exception5413 when executed without arguments5414 queues all shards for execution5415 when executed with a shard number argument5416 executes the service under an exclusive lease5417ResourceEvents::ChangeWeightService5418 creates the expected event record5419 when weight is nil5420 creates an event record5421 when there is no existing weight event record5422 creates the expected event records5423 triggers note created subscription5424 events tracking5425 when resource is an issuable5426 tracks issue usage data counters5427 when resource is a work item5428 tracks work item usage data counters5429 behaves like internal event tracking5430 logs to Snowplow5431Iterations::RollOverIssuesWorker5432 is labeled as idempotent5433 performs multiple times sequentially without raising an exception5434 #perform5435 when iteration cadence is not automatic5436 exits early5437 when roll-over option on iteration cadence is not enabled5438 exits early5439 when roll-over option on iteration cadence is enabled5440 avoids N+1 database queries5441 when service fails to create upcoming iteration5442 logs error5443 when cadence has upcoming iteration5444 filters out any iterations that are not closed5445 when cadence does not have upcoming iteration5446 creates a new iteration to roll-over issues5447 when service fails to create upcoming iteration5448 logs error and exits early5449 with batches5450 run in batches5451Namespaces::Storage::RepositoryLimitAlertComponent5452 # order random5453 repository enforcement5454 when namespace has no additional storage and is above size limit5455 renders the alert title5456 renders the alert message5457 renders the correct callout data5458 when namespace has additional storage5459 and under storage size limit5460 renders the alert title5461 renders the alert message5462 and above storage size limit5463 renders the alert title5464 renders the alert message5465 when user is not an owner5466 renders the non-owner copy5467Gitlab::StatusPage::Storage::S3Client5468 # order random5469 #list_object_keys5470 when successful5471 returns keys from bucket5472 when exceeds upload limits5473 returns result at max size5474 when list_object returns no objects5475 returns an empty set5476 when failed5477 raises an error5478 #delete_object5479 returns true5480 when failed5481 raises an error5482 #upload_object5483 when successful5484 returns true5485 when failed5486 raises an error5487 #recursive_delete5488 when successful5489 sends keys for batch delete5490 returns true5491 list_object exeeds upload limit5492 respects upload limit5493 when list_object returns no objects5494 does not attempt to delete5495 when failed5496 raises an error5497Projects::UnlinkForkService5498 # order random5499 when forked project is unlinked from parent5500 creates an audit event5501 when forked project does not exist5502 creates an audit event5503 when no unlinking is performed5504 does not create an audit event5505Dast::ProfilePolicy5506 behaves like a dast on-demand scan policy5507 dast on-demand policies5508 when a user does not have access to the project5509 is expected to be disallowed :create_on_demand_dast_scan, :edit_on_demand_dast_scan, and :read_on_demand_dast_scan5510 when the user is a guest5511 is expected to be disallowed :create_on_demand_dast_scan, :edit_on_demand_dast_scan, and :read_on_demand_dast_scan5512 when the user is a reporter5513 is expected to be disallowed :create_on_demand_dast_scan, :edit_on_demand_dast_scan, and :read_on_demand_dast_scan5514 when the user is a developer5515 is expected to be allowed :create_on_demand_dast_scan, :edit_on_demand_dast_scan, and :read_on_demand_dast_scan5516 when the user is a maintainer5517 is expected to be allowed :create_on_demand_dast_scan, :edit_on_demand_dast_scan, and :read_on_demand_dast_scan5518 when the user is an owner5519 is expected to be allowed :create_on_demand_dast_scan, :edit_on_demand_dast_scan, and :read_on_demand_dast_scan5520 when the user is an auditor5521 is expected to be disallowed :create_on_demand_dast_scan and :edit_on_demand_dast_scan5522 is expected to be allowed :read_on_demand_dast_scan5523 when the user is allowed5524 when on demand scan licensed feature is not available5525 is expected to be disallowed :create_on_demand_dast_scan, :edit_on_demand_dast_scan, and :read_on_demand_dast_scan5526IncidentManagement::EscalationPolicies::UpdateService5527 # order random5528 #execute5529 when the current_user is anonymous5530 behaves like error response5531 has an informative message5532 when the current_user does not have permissions to update escalation policies5533 behaves like error response5534 has an informative message5535 when license is not enabled5536 behaves like error response5537 has an informative message5538 when only new rules are added5539 behaves like successful update with no errors5540 returns the updated escalation policy5541 with a user-based rule5542 behaves like successful update with no errors5543 returns the updated escalation policy5544 when all old rules are replaced5545 behaves like successful update with no errors5546 returns the updated escalation policy5547 when some rules are preserved, added, and deleted5548 behaves like successful update with no errors5549 returns the updated escalation policy5550 when rules are only deleted5551 behaves like successful update with no errors5552 returns the updated escalation policy5553 when rules are unchanged5554 behaves like successful update with no errors5555 returns the updated escalation policy5556 when rules are excluded5557 behaves like successful update with no errors5558 returns the updated escalation policy5559 when rules are explicitly nil5560 behaves like successful update with no errors5561 returns the updated escalation policy5562 when rules are explicitly empty5563 behaves like error response5564 has an informative message5565 when too many rules are given5566 behaves like error response5567 has an informative message5568 when the on-call schedule is not on the project5569 behaves like error response5570 has an informative message5571 when the rule's user does not have access to the project5572 behaves like error response5573 has an informative message5574 when an error occurs during update5575 behaves like error response5576 has an informative message5577Issues::BuildService5578 with an issue template5579 #execute5580 fills in the template in the description5581 fills in the template, followed by the query parameter, in the description5582 for a single thread5583 #execute5584 with an issue template5585 picks the thread description over the issue template5586 #execute5587 as guest5588 setting issue type5589 cannot set the issue type to test_case5590 cannot set the issue type to requirement5591IncidentManagement::Incidents::UploadMetricService5592 # order random5593 #execute5594 user does not have permissions5595 behaves like no metric saved, an error given5596 returns an error and does not upload5597 user has permissions5598 behaves like no metric saved, an error given5599 returns an error and does not upload5600 with license5601 behaves like uploads the metric5602 uploads the metric and returns a success5603 no url given5604 behaves like uploads the metric5605 uploads the metric and returns a success5606 record invalid5607 behaves like no metric saved, an error given5608 returns an error and does not upload5609 user is guest5610 behaves like no metric saved, an error given5611 returns an error and does not upload5612 guest is author of issuable5613 behaves like no metric saved, an error given5614 returns an error and does not upload5615DashboardEnvironmentsSerializer5616 .represent5617 returns an empty array when there are no projects5618 includes project attributes5619 preloads only relevant ci_builds and does not result in N+15620Vulnerabilities::StateTransitionPolicy5621 # order random5622 read_security_resource5623 when the security_dashboard feature is enabled5624 when the current user is not a project member5625 is expected to be disallowed :read_security_resource5626 when the current user has developer access to the vulnerability's project5627 is expected to be allowed :read_security_resource5628 when the security_dashboard feature is disabled5629 is expected to be disallowed :read_security_resource5630EE::Gitlab::GonHelper5631 #add_gon_variables5632 includes ee exclusive settings5633 adds AI gon attributes5634 when GitLab.com5635 includes CustomersDot variables5636 #push_licensed_feature5637 no obj given5638 behaves like sets the licensed features flag5639 pushes the licensed feature flag to the frontend5640 with feature from registration features5641 behaves like sets the licensed features flag5642 pushes the licensed feature flag to the frontend5643 obj given5644 behaves like sets the licensed features flag5645 pushes the licensed feature flag to the frontend5646ProductAnalytics::Funnel5647 # order random5648 is expected to validate that :seconds_to_convert looks like a number5649 #to_sql5650 is expected to eq " SELECT\n (SELECT max(derived_tstamp) FROM snowplow_events) as x,\n windowFunnel(...e1.html', page_urlpath = '/page2.html') as step\n FROM gitlab_project_1840.snowplow_events\n"5651 .for_project5652 returns a collection of funnels5653 has a collection of steps5654 when the funnel directory includes a file that is not a yaml file5655 does not include the file in the collection5656 when the project does not have a funnels directory5657 is expected to be empty5658Projects::Security::DastProfilesHelper5659 #dast_profiles_list_data5660 returns proper data5661 #dast_scanner_profile_form_data5662 returns proper data5663 behaves like passes on-demand scan edit path when from_on_demand_scan_id param is present5664 returns edit path as on_demand_scan_form_path5665 #edit_dast_scanner_profile_form_data5666 returns proper data5667 behaves like passes on-demand scan edit path when from_on_demand_scan_id param is present5668 returns edit path as on_demand_scan_form_path5669 #dast_site_profile_form_data5670 returns proper data5671 behaves like passes on-demand scan edit path when from_on_demand_scan_id param is present5672 returns edit path as on_demand_scan_form_path5673 #edit_dast_site_profile_form_data5674 returns proper data5675 behaves like passes on-demand scan edit path when from_on_demand_scan_id param is present5676 returns edit path as on_demand_scan_form_path5677Vulnerabilities::MarkDroppedAsResolvedWorker5678 # order random5679 #perform5680 is labeled as idempotent5681 performs multiple times sequentially without raising an exception5682 changes state of Vulnerabilities to resolved5683 creates state transition entry with note for each vulnerability5684Projects::ProtectDefaultBranchService5685 #protect_branch?5686 is expected to eq false5687 when project has security_policy_project5688 returns true5689 #push_access_level5690 when project has security_policy_project5691 returns NO_ACCESS access level5692 when project does not have security_policy_project5693 returns DEVELOPER access level5694 #merge_access_level5695 when project has security_policy_project5696 returns Maintainer access level5697 when project does not have security_policy_project5698 returns DEVELOPER access level5699Backup::Repositories5700 #dump5701 calls enqueue for each repository type5702 avoids N+1 database queries5703 command failure5704 enqueue_group raises an error5705 group query raises an error5706 storages5707 calls enqueue for all repositories on the specified storage5708 #restore5709 calls enqueue for each repository type5710 storages5711 calls enqueue for all repositories on the specified storage5712 paths5713 calls enqueue for all descendant repositories on the specified group5714IssueFeatureFlags::ListService5715 #execute5716 when user can see feature flags5717 ensures no N+1 queries are made5718 returns related feature flags5719 when user can not see feature flags5720 returns nothing5721Resolvers::WorkItemsResolver5722 # order random5723 #resolve5724 with status widget arguments5725 filters work items by status5726 when work_items_mvc_2 flag is disabled5727 ignores status_widget argument5728 with legacy requirement widget arguments5729 filters work items by legacy iid5730ComplianceManagement::MergeRequests::CreateComplianceViolationsService5731 when the compliance center feature is disabled5732 behaves like does not call process_merge_request5733 aggregate_failures5734 when the compliance center feature is enabled5735 and the merge request is not merged5736 does not call process_merge_request5737 and the merge request is merged5738 calls process_merge_request5739Commits::CreateService5740 #execute5741 when the repository size limit has been exceeded5742 raises an error5743 when the namespace storage limit has been exceeded5744 raises an error5745 with a subgroup project5746 raises an error (FAILED - 1)57481st Try error in ./ee/spec/services/ee/commits/create_service_spec.rb:67:5749NotImplementedError5751RSpec::Retry: 2nd try ./ee/spec/services/ee/commits/create_service_spec.rb:675752 when the namespace is over the free user cap limit5753 raises an error5754EE::MergeRequestMetricsService5755 #merge5756 saves metrics with productivity_data5757 storing line counts5758 updates `added_lines`5759 updates `removed_lines`5760BilledUsersFinder5761 #execute5762 without members5763 returns an empty object5764 with members5765 when a search parameter is provided5766 when a sorting parameter is provided (eg name descending)5767 sorts results accordingly5768 when a sorting parameter is not provided5769 sorts expected results in name_asc order5770 when a search parameter is not present5771 returns expected users in name asc order when a sorting is not provided either5772 and when a sorting parameter is provided (eg name descending)5773 sorts results accordingly5774 with billable group members including shared members5775 returns a hash of users and user ids5776 returns the correct user ids5777Dast::ProfilesPipeline5778 associations5779 is expected to belong to ci_pipeline class_name => Ci::Pipeline required: true5780 is expected to belong to dast_profile class_name => Dast::Profile required: true5781 loose foreign key on dast_profiles_pipelines.ci_pipeline_id5782 behaves like cleanup by a loose foreign key5783 cleans up (delete or nullify) the model5784Resolvers::IncidentManagement::IssuableResourceLinksResolver5785 # order random5786 is expected to have nullable GraphQL type IssuableResourceLinkConnection5787 returns issuable resource links5788 when user does not have permissions5789 returns no resource links5790Verify/Load-Performance-Testing.gitlab-ci.yml5791 the created pipeline5792 has no errors5793 on master5794 behaves like load_performance job on tag or branch5795 by default5796 on another branch5797 behaves like load_performance job on tag or branch5798 by default5799 on tag5800 behaves like load_performance job on tag or branch5801 by default5802 on merge request5803 has no jobs5804EE::Clusters::Agents::Authorizations::CiAccess::ConfigScopes5805 # order random5806 .with_available_ci_access_fields5807 is expected not to include #<Clusters::Agents::Authorizations::CiAccess::ProjectAuthorization id: 6, project_id: 1877, agent_id: 15, config: {"access_as" => {"ci_job" => {}}}>5808 is expected not to include #<Clusters::Agents::Authorizations::CiAccess::ProjectAuthorization id: 5, project_id: 1877, agent_id: 14, config: {"access_as" => {"ci_user" => {}}}>5809 is expected not to include #<Clusters::Agents::Authorizations::CiAccess::ProjectAuthorization id: 4, project_id: 1877, agent_id: 13, config: {"access_as" => {"impersonate" => {}}}>5810 with :cluster_agents_ci_impersonation5811 is expected to include #<Clusters::Agents::Authorizations::CiAccess::ProjectAuthorization id: 6, project_id: 1877, agent_id: 15, config: {"access_as" => {"ci_job" => {}}}>, #<Clusters::Agents::Authorizations::CiAccess::ProjectAuthorization id: 5, project_id: 1877, agent_id: 14, config: {"access_as" => {"ci_user" => {}}}>, and #<Clusters::Agents::Authorizations::CiAccess::ProjectAuthorization id: 4, project_id: 1877, agent_id: 13, config: {"access_as" => {"impersonate" => {}}}>5812QualityManagement::TestCases::CreateService5813 #execute5814 when test has title and description5815 responds with success5816 creates an test case issue5817 created issue has correct attributes5818 when test case has no title5819 does not create an issue5820 responds with errors5821 result payload contains an Issue object5822Geo::BlobUploadService5823 #initialize5824 initializes with valid attributes5825 #execute5826 works with valid attributes5827 errors with an invalid attributes5828 returns a file with valid attributes5829Security::SecurityOrchestrationPolicies::FetchPolicyService5830 #execute5831 when retrieving an existing policy by name5832 returns policy5833 when retrieving an non-existing policy by name5834 returns nil5835Projects::DeployTokens::CreateService5836 #execute5837 when the deploy token is valid5838 creates an audit event5839 behaves like sends correct event type in audit event stream5840 sends correct event type in audit event stream5841 when the deploy token is invalid5842 creates an audit event5843 behaves like sends correct event type in audit event stream5844 sends correct event type in audit event stream5845Security::VulnerabilityFeedbacksFinder5846 returns vulnerability feedbacks of a project5847 when not given a parameter5848 does not filter the vulnerability feedbacks5849 when filtered by feedback type5850 only returns vulnerability feedbacks matching the given feedback types5851 when filtered by category5852 only returns vulnerability feedbacks matching the given categories5853 when filtered by more than one property5854 only returns vulnerabilities matching all of the given filters5855Projects::LearnGitlabHelper5856 # order random5857 #onboarding_track_label5858 params: lazy { { trial_onboarding_flow: 'true' } }, result: "trial_registration"5859 returns free_registration5860 params: lazy { { trial_onboarding_flow: 'false' } }, result: "free_registration"5861 returns free_registration5862 params: lazy { {} }, result: "free_registration"5863 returns free_registration5864 #learn_gitlab_data5865 sets correct completion statuses5866 sets correct paths5867 behaves like has all data5868 has all actions5869 has all section data5870 has all project data5871 for trial- and subscription-related actions5872 when namespace has free or no subscription5873 provides URLs to start a trial to namespace admins5874 provides URLs to Gitlab docs to namespace non-admins5875 when namespace has paid subscription5876 provides URLs to Gitlab docs to namespace admins5877 provides URLs to Gitlab docs to namespace non-admins5878Security::ScanResultPolicies::SyncFindingsToApprovalRulesService5879 # order random5880 #execute5881 when pipeline_findings is empty5882 behaves like does not call UpdateApprovalsService5883 is expected not to receive new(*(any args)) 0 times5884 when pipeline is not complete5885 behaves like does not call UpdateApprovalsService5886 is expected not to receive new(*(any args)) 0 times5887 when pipeline_findings is not empty5888 behaves like calls UpdateApprovalsService5889 is expected to receive new({:merge_request=>#<MergeRequest id:56 namespace2089/project-1946!1>, :pipeline=>#<Ci::Pipeline id: 16... nil, external_pull_request_id: nil, ci_ref_id: 137, locked: "artifacts_locked", partition_id: 100>}) 1 time5890 when multi_pipeline_scan_result_policies is disabled5891 behaves like calls UpdateApprovalsService5892 is expected to receive new({:merge_request=>#<MergeRequest id:56 namespace2089/project-1946!1>, :pipeline=>#<Ci::Pipeline id: 16... nil, external_pull_request_id: nil, ci_ref_id: 137, locked: "artifacts_locked", partition_id: 100>}) 1 time5893 when merge_request is closed5894 behaves like does not call UpdateApprovalsService5895 is expected not to receive new(*(any args)) 0 times5896 when pipeline is not latest5897 behaves like does not call UpdateApprovalsService5898 is expected not to receive new(*(any args)) 0 times5899AppSec::Dast::PreScanVerificationSteps::CreateOrUpdateService5900 # order random5901 #execute5902 behaves like feature security_on_demand_scans is not available5903 behaves like an error occurred in the execute method of dast service5904 communicates failure5905 behaves like when a user can not create_on_demand_dast_scan because they do not have access to a project5906 behaves like an error occurred in the execute method of dast service5907 communicates failure5908 when the licensed feature is available5909 communicates success5910 does update the pre scan verification step5911 when the verification.project and project does not match5912 behaves like an error occurred in the execute method of dast service5913 communicates failure5914 when an error occurs5915 behaves like an error occurred in the execute method of dast service5916 communicates failure5917Elastic::Latest::NoteInstanceProxy5918 # order random5919 #as_indexed_json5920 when note is on Issue5921 serializes the object as a hash with issue properties5922 when migration add_archived_to_notes is not finished5923 serializes the object as a hash without archived field5924 when note is on Snippet5925 serializes the object as a hash with snippet properties5926 when note is on Commit5927 serializes the object as a hash with commit properties5928 when note is on MergeRequest5929 serializes the object as a hash with merge request properties5930Gitlab::Insights::Loader5931 when issuable data source is requested5932 when loading data for an issuable chart5933 returns the serialized data5934 when the legacy format query params are given5935 returns the serialized data5936 when requesting a different data source5937 raises error5938 when dora data source is requested5939 returns the serialized data5940Mutations::IncidentManagement::OncallSchedule::Create5941 # order random5942 is expected to require graphql authorizations :admin_incident_management_oncall_schedule5943 #resolve5944 user has access to project5945 when OncallSchedules::CreateService responds with success5946 returns the on-call schedule with no errors5947 when OncallSchedules::CreateService responds with an error5948 returns errors5949 when resource is not accessible to the user5950 raises an error5951TrialRegistrationsHelper5952 # order random5953 #social_signin_enabled?5954 com: true, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: true5955 is expected to eq true5956 com: true, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: false5957 is expected to eq false5958 com: true, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: true5959 is expected to eq false5960 com: true, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: false5961 is expected to eq false5962 com: true, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: true5963 is expected to eq false5964 com: true, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: false5965 is expected to eq false5966 com: true, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: true5967 is expected to eq false5968 com: true, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: false5969 is expected to eq false5970 com: false, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: true5971 is expected to eq false5972 com: false, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: false5973 is expected to eq false5974 com: false, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: true5975 is expected to eq false5976 com: false, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: false5977 is expected to eq false5978 com: false, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: true5979 is expected to eq false5980 com: false, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: false5981 is expected to eq false5982 com: false, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: true5983 is expected to eq false5984 com: false, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: false5985 is expected to eq false5986Gitlab::Analytics::CycleAnalytics::Summary::TimeToRestoreService5987 when the DORA service returns non-successful status5988 returns nil5989 when the DORA service returns 0 as value5990 returns "none" value5991 when the DORA service returns the value5992 returns the value in days5993 #links5994 displays documentation link and group dashboard link5995 for a stage with project5996 displays documentation link and project dashboard link5997Geo::HashedStorageAttachmentsEventStore5998 #create!5999 behaves like a Geo event store6000 when running on a secondary node6001 does not create an event6002 when running on a primary node6003 does not create an event if there are no secondary nodes6004 creates an event6005 when file subject is not on local store6006 creates an event (PENDING: No file subject defined, skipping)6007 when running on a primary node6008 tracks project attributes6009IncidentManagement::OncallShifts::ReadService6010 # order random6011 #execute6012 when the current_user is anonymous6013 behaves like error response6014 has an informative message6015 when the current_user does not have permissions to create on-call schedules6016 behaves like error response6017 has an informative message6018 when feature is not available6019 behaves like error response6020 has an informative message6021 when the start time is after the end time6022 behaves like error response6023 has an informative message6024 when timeframe exceeds one month6025 behaves like error response6026 has an informative message6027 when timeframe is exactly 1 month6028 is expected to be success6029 with time frozen6030 when timeframe spans the current time6031 successfully returns a sorted collection of IncidentManagement::OncallShifts6032 when timeframe is entirely in the past6033 successfully returns a sorted collection of IncidentManagement::OncallShifts6034 when timeframe is entirely in the future6035 successfully returns a sorted collection of IncidentManagement::OncallShifts6036Gitlab::Graphql::Aggregations::Issues::LazyLinksAggregate6037 behaves like issuable lazy links aggregate6038 #initialize6039 adds the issuable_id to the `blocked` lazy state by default6040 #links_aggregate6041 when link_type is `blocked`6042 behaves like block provided6043WARNING: An expectation of `:do_thing` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/support/shared_examples/lib/gitlab/graphql/issuables_lazy_links_aggregate_shared_examples.rb:39:in `block (4 levels) in <top (required)>'.6044 calls the block6045 behaves like the record has already been loaded6046 does not make the query again6047 behaves like the record has not been loaded6048 clears the pending IDs6049 when link_type is `blocking`6050 behaves like block provided6051WARNING: An expectation of `:do_thing` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/support/shared_examples/lib/gitlab/graphql/issuables_lazy_links_aggregate_shared_examples.rb:39:in `block (4 levels) in <top (required)>'.6052 calls the block6053 behaves like the record has already been loaded6054 does not make the query again6055 behaves like the record has not been loaded6056 clears the pending IDs6057Gitlab::LicenseScanning::PipelineComponents6058 # order random6059 #fetch6060 when the pipeline has an sbom report6061 and some of the sbom components do not have purl values6062 returns a list with the expected size6063 returns a list containing the expected elements6064 when the pipeline does not have an sbom report6065 returns an empty list6066 when the pipeline does not have any reports6067 returns an empty list6068ComplianceManagement::Standards::Gitlab::PreventApprovalByAuthorWorker6069 # order random6070 #perform6071 for non existent project6072 does not invoke PreventApprovalByAuthorService6073 for non existent user6074 invokes PreventApprovalByAuthorService6075 behaves like an idempotent worker6076 is labeled as idempotent6077 performs multiple times sequentially without raising an exception6078Resolvers::IncidentManagement::EscalationPoliciesResolver6079 # order random6080 returns escalation policies6081 is expected to have nullable GraphQL type EscalationPolicyTypeConnection6082 with name param provided6083 returns escalation policies matching the name search6084 when resolving a single item6085 when id given6086 returns the policy6087 when user does not have permissions6088 returns no policies6089Gitlab::Llm::Chain::Tools::GitlabDocumentation::Executor6090 # order random6091 #execute6092 when context is authorized6093 responds with the message from TanukiBot6094 when context is not authorized6095 responds with the message from TanukiBot6096Gitlab::ImportExport::Project::RelationFactory6097 # order random6098 resource iteration events6099 when iteration object has no iteration associated6100 does not create resource iteration event6101 when project has no group6102 does not create resource iteration event6103 iteration6104 when project has no group6105 does not create iteration6106 when parsing approval_rules_protected_branches object6107 belongs to the new protected branch6108 when branch name is not found6109 protected_branch_id is nil6110shared/namespace_user_cap_reached_alert6111 renders a link to pending user approvals6112 renders a link to the root namespace pending user approvals6113 renders a link to the project namespace pending user approvals6114EpicEntity6115 has Issuable attributes6116 has epic specific attributes6117 behaves like issuable entity current_user properties6118 can_create_confidential_note6119 when user can create confidential notes6120 is expected to equal true6121 when user cannot create confidential notes6122 is expected to eq false6123Types::WorkItems::TypeType6124 is expected to eq "WorkItemType"6125 is expected to have graphql fields :id, :icon_name, and :name6126 is expected to require graphql authorizations :read_work_item_type6127Ci::PipelineBridgeStatusService6128 #execute6129 when pipeline has downstream bridges6130 calls inherit_status_from_upstream on downstream bridges6131 when pipeline has both downstream and upstream bridge6132 only calls inherit_status_from_downstream on upstream bridge6133 only calls inherit_status_from_upstream on downstream bridge6134admin/groups/_form6135 when sub group is used6136 does not render shared_runners_minutes_setting6137 when root group is used6138 does not render shared_runners_minutes_setting6139DastSiteValidationsFinder6140 #execute6141 returns all dast_site_validation_validations most recent first6142 filtering by most_recent6143 returns the matching dast_site_validations6144 allows the results to be easily re-ordered6145 filtering by project_id6146 returns the matching dast_site_validations6147 when url_base is for a different project6148 returns an empty relation6149 filtering by url_base6150 returns the matching dast_site_validations6151 filtering by *6152 returns the matching dast_site_validations6153Gitlab::Auth::GroupSaml::XmlResponse6154 configures ruby-saml using configured settings6155 validates xml according to SAML spec6156 correctly detects fingerprint mismatch6157 attributes from encoded XML6158 retrieves NameID from XML6159 retrieves NameID Format from XML6160 provides decoded XML6161ProductAnalytics::PostPushWorker6162 # order random6163 when the commit includes a new dashboard6164 behaves like tracks a usage event6165 tracks a project usage event6166 when the commit includes a new file that is not a dashboard6167 behaves like does not track a usage event6168 does not track a usage event6169Types::Dast::ProfileCadenceType6170 is expected to eq "DastProfileCadence"6171 is expected to have graphql fields :unit and :duration6172RemoteDevelopment::Workspaces::Create::Creator6173 # order random6174 when workspace create is successful6175 creates the workspace and returns ok result containing successful message with created workspace6176 when workspace create fails6177 does not create the workspace and returns an error result containing a failed message with model errors6178WorkItems::ExportCsvService6179 # order random6180 when importing an exported file6181 for work item of type requirement6182 behaves like a exported file that can be imported6183 imports work item with correct attributes6184PackageMetadata::Ingestion::Tasks::IngestPackages6185 # order random6186 #execute6187 when import data is new6188 adds the new records6189 updates the data map6190 when import data exists6191 does not add records6192 updates the data map6193 when normalizing names6194 with pypi packages6195 treats case variations as non unique6196 normalizes the original package name6197 with non-pypi packages6198 treats case variations as unique6199 keeps the original package names6200Resolvers::Analytics::ContributionAnalytics::ContributionsResolver6201 # order random6202 #resolve6203 without data6204 is expected to be empty6205 with data6206 returns the aggregated event counts6207 when the date range is too wide6208 raises error6209 when `to` is earlier than `from`6210 raises error6211ElasticClusterReindexingCronWorker6212 #perform6213 calls execute method6214 removes old indices if no task is found6215Elastic::Latest::CommitConfig6216 .settings6217 behaves like config settings return correct values6218 returns config6219 sets correct shard/replica settings6220 .mappings6221 returns config6222Types::Ci::JobType6223 # order random6224 includes the ee specific fields6225 is expected to eq "CiJob"6226Users::IdentityVerificationHelper6227 # order random6228 #identity_verification_data6229 when no phone number for user exists6230 returns the expected data6231 when phone number for user exists6232 returns the expected data with saved phone number6233 has_medium_or_high_risk_band?6234 risk: "High", expectation: true6235 is expected to equal true6236 risk: "Medium", expectation: true6237 is expected to equal true6238 risk: "Low", expectation: false6239 is expected to equal false6240 #rate_limited_error_message6241 returns a generic error message6242 when the limit is for email_verification_code_send6243 returns a specific message6244 #user_banned_error_message6245 dot_com: true, error_message: "Your account has been blocked. Contact https://support.gitlab.com for assistance."6246 returns the correct account banned error message6247 dot_com: false, error_message: "Your account has been blocked. Contact your GitLab administrator for assistance."6248 returns the correct account banned error message6249Security::SecurityOrchestrationPolicies::ProcessRuleService6250 #execute6251 when security_orchestration_policies_configuration policy is scheduled6252 creates new schedule6253 when limits are exceeded6254 creates schedules only to a configured limit6255 when cadence is not valid6256 does not create a new schedule6257 when cadence is empty6258 does not create a new schedule6259 when cadence is missing6260 does not create a new schedule6261 when policy is not of type scheduled6262 does not create a new schedule6263app/views/shared/labels/_create_label_help_text.html.haml6264 for project label6265 when license has scoped labels feature6266 displays scoped labels hint6267 when license does not have scoped labels feature6268 does not display scoped labels hint6269 for group label6270 when license has scoped labels feature6271 displays scoped labels hint6272 when license does not have scoped labels feature6273 does not display scoped labels hint6274Vulnerabilities::FindingLink6275 associations6276 is expected to belong to finding class_name => Vulnerabilities::Finding required: false inverse_of => finding_links6277 validations6278 is expected to validate that :url cannot be empty/falsy6279 is expected to validate that the length of :url is at most 20486280 is expected to validate that the length of :name is at most 2556281 is expected to validate that :finding cannot be empty/falsy6282Gitlab::Usage::Metrics::Instrumentations::ProtectedEnvironmentApprovalRulesRequiredApprovalsAverageMetric6283 behaves like a correct instrumented metric value and query6284 behaves like a correct instrumented metric value6285 has correct value6286 behaves like a correct instrumented metric query6287 has correct generate query6288Gitlab::Favicon6289 .main6290 has green favicon for development6291PackageMetadata::Ingestion::IngestionService6292 # order random6293 .execute6294 calls each task in order6295 transaction6296 and when every task executes without error6297 all updates are committed6298 but when PackageMetadata::Ingestion::Tasks::IngestPackages has an error6299 all updates are rolled back6300 but when PackageMetadata::Ingestion::Tasks::IngestPackageVersions has an error6301 all updates are rolled back6302 but when PackageMetadata::Ingestion::Tasks::IngestLicenses has an error6303 all updates are rolled back6304 but when PackageMetadata::Ingestion::Tasks::IngestPackageVersionLicenses has an error6305 all updates are rolled back6306 created data6307 has the expected relationships6308Users::Abuse::NamespaceBans::DestroyService6309 #execute6310 #execute6311 successfully deletes and returns the namespace_ban6312 when the current_user is anonymous6313 behaves like error response6314 has an informative message6315 when current_user does not have permission to create integrations6316 behaves like error response6317 has an informative message6318 when an error occurs during removal6319 behaves like error response6320 has an informative message6321UserIdExistenceValidator6322 # order random6323 with nil value6324 behaves like does not add an error6325 does not add an error6326 behaves like does not trigger SQL queries6327 does not trigger SQL queries6328 with array containing invalid user ids6329 adds an error6330 with non-array value6331 behaves like does not add an error6332 does not add an error6333 behaves like does not trigger SQL queries6334 does not trigger SQL queries6335 with array containing valid user ids6336 behaves like does not add an error6337 does not add an error6338 with empty array value6339 behaves like does not add an error6340 does not add an error6341 behaves like does not trigger SQL queries6342 does not trigger SQL queries6343Geo::HasReplicator6344-- create_table(:_test_dummy_models, {:force=>true})6345 -> 0.0055s6346 #replicator6347 adds replicator method to the model6348 instantiates a replicator into the model6349 when replicator is not defined in inheriting class6350 raises NotImplementedError6351-- drop_table(:_test_dummy_models, {:force=>true})6352 -> 0.0020s6353GpgKeys::DestroyService6354 returns the correct value6355 .audit6356 when licensed6357 creates an audit event6358 when unlicensed6359 creates an audit event6360 when destroy operation fails6361 does not create an audit event6362 returns the correct value6363WorkItems::Widgets::Filters::RequirementLegacy6364 # order random6365 .filter6366 when legacy_iids parameter contains a single item6367 is expected to contain exactly #<WorkItem id:79 namespace2140/project-1993#35>6368 when legacy_iids parameter contains multiple items6369 is expected to contain exactly #<WorkItem id:79 namespace2140/project-1993#35>, #<WorkItem id:80 namespace2140/project-1993#74>, and #<WorkItem id:81 namespace2140/project-1993#356>6370 when legacy_iids parameter is nil6371 is expected to contain exactly #<WorkItem id:79 namespace2140/project-1993#35>, #<WorkItem id:80 namespace2140/project-1993#74>, and #<WorkItem id:81 namespace2140/project-1993#356>6372WorkItems::ResourceLinkEvent6373 # order random6374 scopes6375 .aliased_for_timebox_report6376 returns correct values with aliased names6377 associations6378 is expected to belong to user required: false6379Sidebars::Groups::Menus::WikiMenu6380 #render?6381 when user can access group wiki6382 is expected to equal true6383 when feature is not enabled6384 is expected to equal false6385 when user cannot access group wiki6386 is expected to equal false6387 behaves like serializable as super_sidebar_menu_args6388 returns hash with provided attributes6389 returns hash with an item_id6390ApprovalProjectRulePolicy6391 when user can admin project6392 allows updating approval rule6393 when user cannot admin project6394 disallow updating approval rule6395Resolvers::Geo::GeoNodeResolver6396 #resolve6397 when the user has permission to view Geo data6398 with a name6399 when the given name matches a node6400 returns the GeoNode6401 when the given name does not match any node6402 returns nil6403 without a name6404 when the GitLab instance has a current Geo node6405 returns the GeoNode6406 when the GitLab instance does not have a current Geo node6407 returns nil6408 when the user does not have permission to view Geo data6409 returns nil6410Users::UnblockService6411 # order random6412 #execute6413 audit events6414 when licensed6415 when user unblock operation succeeds6416 logs an audit event6417 logs the audit event info6418 when user unblock operation fails6419 does not log any audit event6420 when not licensed6421 does not log any audit event6422Ci::SyncReportsToReportApprovalRulesWorker6423 #perform6424 when pipeline exists6425 executes SyncReportsToApprovalRulesService for given pipeline6426 when pipeline is missing6427 does not execute SyncReportsToApprovalRulesService6428MergeRequests::Mergeability::CheckBlockedByOtherMrsService6429 #execute6430 when blocking_merge_requests feature is unavailable6431 returns a check result with status success6432 when blocking_merge_requests feature is available6433 when there are no blocking MRs6434 returns a check result with status success6435 when there are blocking MRs6436 returns a check result with status success6437 #skip?6438 returns false6439 #cacheable?6440 returns false6441Gitlab::VulnerabilityScanning::SecurityReportBuilder6442 # order random6443 #report6444 when components are vulnerable6445 builds a valid report6446 adds correct findings6447 adds correct identifiers6448 does not produce or remove findings when compared against analyzer report6449Epics::RelatedEpicLinks::UsageDataHelper6450 #track_related_epics_event_for6451 link_type: "relates_to", event_type: :added, tracking_method: :track_linked_epic_with_type_relates_to_added6452 calls correct tracking method on EpicActivityUniqueCounter6453 link_type: "relates_to", event_type: :removed, tracking_method: :track_linked_epic_with_type_relates_to_removed6454 calls correct tracking method on EpicActivityUniqueCounter6455 link_type: "blocks", event_type: :added, tracking_method: :track_linked_epic_with_type_blocks_added6456 calls correct tracking method on EpicActivityUniqueCounter6457 link_type: "blocks", event_type: :removed, tracking_method: :track_linked_epic_with_type_blocks_removed6458 calls correct tracking method on EpicActivityUniqueCounter6459 link_type: "is_blocked_by", event_type: :added, tracking_method: :track_linked_epic_with_type_is_blocked_by_added6460 calls correct tracking method on EpicActivityUniqueCounter6461 link_type: "is_blocked_by", event_type: :removed, tracking_method: :track_linked_epic_with_type_is_blocked_by_removed6462 calls correct tracking method on EpicActivityUniqueCounter6463Gitlab::StatusPage::Storage::S3MultipartUpload6464 # order random6465 #call6466 when sucessful6467 completes6468 with more than one part6469 completes6470 when fails6471 on upload part6472 aborts the upload and raises an error6473 on complete_multipart_upload6474 aborts the upload and raises an error6475Iterations::Cadences::ScheduleCreateIterationsWorker6476 is labeled as idempotent6477 performs multiple times sequentially without raising an exception6478 #perform6479 in batches6480 run in batches6481 when cadences need to be scheduled6482 when cadence with NULL next_run_date exists6483 behaves like CreateIterationsWorker is scheduled on the correct cadence6484 schedules CreateIterationsWorker on the correct cadence6485 when cadence with next_run_date < CURRENT_DATE exists6486 behaves like CreateIterationsWorker is scheduled on the correct cadence6487 schedules CreateIterationsWorker on the correct cadence6488ExternalStatusChecks::DispatchService6489 #execute6490 service responds with success6491 is successful6492 passes back the http status code6493 service responds with error6494 is unsuccessful6495 passes back the http status code6496Subscriptions::NewPlanPresenter6497 #title6498 legacy_name: "bronze", new_title: "Bronze"6499 returns the correct title for new plans6500 legacy_name: "silver", new_title: "Premium (Formerly Silver)"6501 returns the correct title for new plans6502 legacy_name: "gold", new_title: "Ultimate (Formerly Gold)"6503 returns the correct title for new plans6504 legacy_name: "premium", new_title: "Premium"6505 returns the correct title for new plans6506 legacy_name: "ultimate", new_title: "Ultimate"6507 returns the correct title for new plans6508layouts/header/_read_only_banner6509 On a Geo primary node6510 do not includes button to visit primary node6511 On a Geo secondary node6512 includes button to visit primary node6513IncidentManagement::PendingEscalations::IssueCheckWorker6514 # order random6515 #perform6516 with valid escalation6517 processes the escalation6518 without valid escalation6519 does nothing6520Security::AutoFixLabelService6521 #execute6522 when label exists6523 finds existing label6524 when label does not exists6525 creates a new label6526LinkedFeatureFlagIssueEntity6527 #as_json6528 returns json6529Types::Dast::ProfileBranchType6530 is expected to eq "DastProfileBranch"6531 is expected to require graphql authorizations :read_on_demand_dast_scan6532 is expected to have graphql field :name and {:calls_gitaly?=>true}6533 is expected to have graphql field :exists and {:calls_gitaly?=>true}6534InstanceClusterablePresenter6535 #metrics_cluster_path6536 is expected to eq "/admin/clusters/3/metrics"6537Namespaces::SyncNamespaceNameWorker6538 #perform6539 triggers a sync for the namespace name to CustomersDot6540 when the namespace is not found6541 does not trigger a sync for the namespace name to CustomersDot6542 does not raise an error6543 when the sync fails6544 raises a RequestError6545Types::AuditEvents::ExternalAuditEventDestinationType6546 is expected to eq "ExternalAuditEventDestination"6547 is expected to have graphql fields :id, :destination_url, :group, :verification_token, :headers, :event_type_filters, and :name6548 is expected to require graphql authorizations :admin_external_audit_events6549Sidebars::Admin::Panel6550 # order random6551 behaves like a panel without placeholders6552 has no Sidebars::NilMenuItem6553 behaves like a panel with uniquely identifiable menu items6554 all menu_items have unique item_id6555 all menu_items have an item_id6556Types::Geo::UploadRegistryType6557 has the expected fields (other than those included in RegistryType)6558 behaves like a Geo registry type6559 is expected to require graphql authorizations :read_geo_registry6560 has the expected fields6561System::BroadcastMessage6562 # order random6563 .current6564 without Geo6565 caches the output of the query for two weeks6566 with Geo6567 on the primary6568 caches the output of the query for two weeks6569 on a secondary6570 caches the output for a short time6571CreateGithubWebhookWorker6572 #perform6573 creates the webhook6574Admin::ApplicationSettingsHelper6575 # order random6576 Code Suggestions for Self-Managed instances6577 #code_suggestions_description6578 is expected to include "https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html"6579 #code_suggestions_token_explanation6580 is expected to include "https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#create-a-personal-access-token"6581 #code_suggestions_agreement6582 is expected to include "https://about.gitlab.com/handbook/legal/testing-agreement/"6583GitlabSubscriptionHistory6584 .create_from_change6585 when supplied an invalid change type6586 raises an error6587 when the required attributes are not present6588 returns an error6589 when supplied extra attributes than exist on the history table6590 saves the tracked attributes without error6591admin/application_settings/_ai_access.html.haml6592 # order random6593 when ai_access_token is not set6594 renders an empty password field6595 when ai_access_token is set6596 renders masked password field6597BackfillLabelIdsForIssues6598 # order random6599 behaves like a deprecated Advanced Search migration6600 #migrate6601 logs a message and halts the migration6602 #completed?6603 returns false6604 #obsolete?6605 returns true6606EE::API::Entities::Scim::Emails6607 contains the email6608 contains the type6609 contains the email6610AddHiddenToIssues6611 # order random6612 behaves like a deprecated Advanced Search migration6613 #migrate6614 logs a message and halts the migration6615 #completed?6616 returns false6617 #obsolete?6618 returns true6619Types::Geo::CiSecureFileRegistryType6620 has the expected fields (other than those included in RegistryType)6621 behaves like a Geo registry type6622 is expected to require graphql authorizations :read_geo_registry6623 has the expected fields6624Types::MergeRequests::ApprovalStateType6625 is expected to have graphql fields :approval_rules_overwritten, :rules, :invalid_approvers_rules, and :suggested_approvers6626 is expected to require graphql authorizations :read_merge_request6627RemoteDevelopment::UnmatchedResultError6628 # order random6629 for an 'ok' Result6630 has a correct message6631 for an 'err' Result6632 has a correct message6633RemoteDevelopment::Workspaces::Reconcile::Input::AgentInfo6634 # order random6635 #==6636 when objects are equal6637 returns true6638 when objects are not equal6639 returns false6640Types::EpicSortEnum6641 is expected to eq "EpicSort"6642 exposes all the existing epic sort orders6643API::Entities::Groups::RepositoryStorageMove6644 #as_json6645 includes basic fields6646Gitlab::SubscriptionPortal::Client6647 is expected to includes the Gitlab::SubscriptionPortal::Clients::Graphql module6648 is expected to includes the Gitlab::SubscriptionPortal::Clients::Rest module6649Types::AuditEvents::Streaming::InstanceHeaderType6650 # order random6651 is expected to eq "AuditEventsStreamingInstanceHeader"6652 is expected to have graphql fields :id, :key, and :value6653Types::Dast::ProfileScheduleInputType6654 is expected to eq "DastProfileScheduleInput"6655 has the correct arguments6656Gitlab::SearchContext::Builder6657 #with_group6658 #build!6659 with epics scope6660 search context returns epics scope6661search/results/_issuable6662 # order random6663 when issuable has labels6664 displays the label6665admin/push_rules/_merge_request_approvals6666 shows settings form6667API::Entities::EpicBoards::List6668 # order random6669 exposes correct attributes6670Types::VulnerabilityStateEnum6671 exposes all vulnerability states6672RemoteDevelopment::Workspaces::Create::VolumeDefiner6673 # order random6674 merges volume mount info to passed value6675Types::VulnerabilityDetails::IntType6676 is expected to have graphql fields :name, :description, :fieldName, and :value6677Types::VulnerabilityLocation::DastType6678 is expected to have graphql fields :hostname, :param, :path, and :request_method6679Gitlab::Email::FeatureFlagWrapper6680 # order random6681 #flipper_id6682 returns a string containing the email6683Gitlab::Insights::Serializers::Chartjs::BarTimeSeriesSerializer6684 returns the correct format6685Types::GitlabSubscriptions::UserRoleEnum6686 # order random6687 exposes all user roles6688Types::VulnerabilityReportTypeEnum6689 exposes all vulnerability report types6690EE::API::Entities::GitlabSubscriptions::AddOnPurchase6691 # order random6692 contains the correct attributes6693Knapsack report was generated. Preview:6694{6695 "ee/spec/services/security/scan_result_policies/update_approvals_service_spec.rb": 417.5428889589999,6696 "ee/spec/models/ee/namespace_spec.rb": 80.56887197299989,6697 "ee/spec/elastic_integration/global_search_spec.rb": 110.72530208300009,6698 "ee/spec/replicators/geo/project_wiki_repository_replicator_spec.rb": 46.8157258870001,6699 "ee/spec/replicators/geo/snippet_repository_replicator_spec.rb": 53.784852752000006,6700 "ee/spec/models/ci/pipeline_spec.rb": 51.23619025000016,6701 "ee/spec/config/metrics/every_metric_definition_spec.rb": 52.3613419159999,6702 "ee/spec/lib/gitlab/custom_file_templates_spec.rb": 47.26701717099991,6703 "ee/spec/models/repository_spec.rb": 45.67712635399994,6704 "ee/spec/replicators/geo/group_wiki_repository_replicator_spec.rb": 20.007956268000044,6705 "ee/spec/elastic_integration/epic_index_spec.rb": 35.17630210199991,6706 "ee/spec/models/concerns/elastic/project_spec.rb": 29.443739281000035,6707 "ee/spec/lib/gitlab/usage_data_counters/epic_activity_unique_counter_spec.rb": 6.536062336999976,6708 "ee/spec/elastic/migrate/20230720000000_reindex_wikis_to_fix_routing_spec.rb": 29.502873731000136,6709 "ee/spec/lib/audit/group_push_rules_changes_auditor_spec.rb": 16.63450085799991,6710 "ee/spec/models/namespaces/storage/root_size_spec.rb": 17.943840416000057,6711 "ee/spec/views/layouts/nav/sidebar/_project.html.haml_spec.rb": 20.45732413099995,6712 "ee/spec/lib/gitlab/package_metadata/connector/offline_spec.rb": 4.592843797000114,6713 "ee/spec/lib/ee/gitlab/import_export/group/tree_restorer_spec.rb": 16.39855182999986,6714 "ee/spec/lib/banzai/filter/references/vulnerability_reference_filters_spec.rb": 17.274892679000004,6715 "ee/spec/services/groups/memberships/export_service_spec.rb": 19.00156981200007,6716 "ee/spec/elastic/migrate/20230321091100_backfill_hashed_root_namespace_id_on_issues_spec.rb": 14.30660435599998,6717 "ee/spec/services/ci/audit_variable_change_service_spec.rb": 9.68550289299992,6718 "ee/spec/finders/security/pure_findings_finder_spec.rb": 11.166122207999933,6719 "ee/spec/presenters/merge_request_approver_presenter_spec.rb": 14.268683944000031,6720 "ee/spec/models/ee/project_statistics_spec.rb": 12.761120461000019,6721 "ee/spec/serializers/licenses_list_entity_spec.rb": 14.194502591000173,6722 "ee/spec/lib/gitlab/licenses/submit_license_usage_data_banner_spec.rb": 10.957629558000008,6723 "ee/spec/graphql/resolvers/geo/project_repository_registries_resolver_spec.rb": 11.055957898000088,6724 "ee/spec/graphql/resolvers/geo/design_management_repository_registries_resolver_spec.rb": 11.213222323000082,6725 "ee/spec/elastic/migrate/20230316150000_add_hashed_root_namespace_id_to_merge_requests_spec.rb": 9.156005173999802,6726 "ee/spec/elastic/migrate/20230628094243_add_archived_to_issues_spec.rb": 8.928919106999956,6727 "ee/spec/services/incident_management/pending_escalations/process_service_spec.rb": 6.344108329000164,6728 "ee/spec/lib/gitlab/subscription_portal/clients/rest_spec.rb": 1.8211363719999554,6729 "ee/spec/workers/geo/repository_sync_worker_spec.rb": 7.277553407000141,6730 "ee/spec/models/dast_scanner_profile_spec.rb": 5.748992246999933,6731 "ee/spec/graphql/resolvers/iterations_resolver_spec.rb": 6.209208332000117,6732 "ee/spec/elastic/migrate/20230320011400_add_hashed_root_namespace_id_to_commits_spec.rb": 9.478823163000015,6733 "ee/spec/components/namespaces/storage/pre_enforcement_alert_component_spec.rb": 5.413266590000148,6734 "ee/spec/services/vulnerabilities/starboard_vulnerability_create_service_spec.rb": 6.509322122999947,6735 "ee/spec/models/ci/minutes/quota_spec.rb": 1.8721184870000798,6736 "ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/mark_resolved_as_detected_spec.rb": 6.8239336119997915,6737 "ee/spec/lib/banzai/reference_parser/iteration_parser_spec.rb": 2.9522768310002903,6738 "ee/spec/services/system_notes/merge_train_service_spec.rb": 5.8425496489999205,6739 "ee/spec/workers/system_access/group_saml_microsoft_group_sync_worker_spec.rb": 5.468273504000081,6740 "ee/spec/graphql/resolvers/geo/group_wiki_repository_registries_resolver_spec.rb": 4.383071460999872,6741 "ee/spec/services/app_sec/dast/scanner_profiles/update_service_spec.rb": 5.326282068999717,6742 "ee/spec/lib/ee/sidebars/groups/menus/settings_menu_spec.rb": 2.592878937000023,6743 "ee/spec/workers/concerns/elastic/indexing_control_spec.rb": 6.66071040900033,6744 "ee/spec/lib/gitlab/geo/oauth/logout_token_spec.rb": 4.013196737999806,6745 "ee/spec/graphql/resolvers/epics/default_project_for_issue_creation_resolver_spec.rb": 3.946842113999992,6746 "ee/spec/services/ee/issuable/destroy_service_spec.rb": 5.7468317080001725,6747 "ee/spec/policies/packages/policies/group_policy_spec.rb": 3.3155981649997557,6748 "ee/spec/workers/vulnerabilities/orphaned_remediations_cleanup_worker_spec.rb": 3.9227280270001756,6749 "ee/spec/helpers/trials_helper_spec.rb": 3.6694689999999355,6750 "ee/spec/lib/gitlab/vulnerability_scanning/dependency_scanning/finding_builder_spec.rb": 2.5263124530001733,6751 "ee/spec/workers/ee/repository_check/batch_worker_spec.rb": 3.7809007600003497,6752 "ee/spec/workers/gitlab_subscriptions/refresh_seats_worker_spec.rb": 1.7939101849997314,6753 "ee/spec/lib/gitlab/insights/project_insights_config_spec.rb": 1.2496367879998616,6754 "ee/spec/services/incident_management/pending_escalations/create_service_spec.rb": 1.564327435999985,6755 "ee/spec/services/app_sec/dast/scanner_profiles/destroy_service_spec.rb": 2.412957823999932,6756 "ee/spec/graphql/resolvers/ci/code_coverage_activities_resolver_spec.rb": 3.212592525999753,6757 "ee/spec/graphql/resolvers/epic_ancestors_resolver_spec.rb": 3.827436134999971,6758 "ee/spec/services/ee/users/build_service_spec.rb": 1.2876352240000415,6759 "ee/spec/services/security/token_revocation_service_spec.rb": 1.4758411359998718,6760 "ee/spec/services/ai/service_access_tokens_storage_service_spec.rb": 0.9324821380000685,6761 "ee/spec/workers/elastic_index_bulk_cron_worker_spec.rb": 0.9221632300000238,6762 "ee/spec/services/resource_events/change_weight_service_spec.rb": 3.7131348369998705,6763 "ee/spec/workers/iterations/roll_over_issues_worker_spec.rb": 1.5287172799999098,6764 "ee/spec/components/namespaces/storage/repository_limit_alert_component_spec.rb": 0.7289696990001175,6765 "ee/spec/lib/gitlab/status_page/storage/s3_client_spec.rb": 0.9666998560001048,6766 "ee/spec/services/ee/projects/unlink_fork_service_spec.rb": 1.7329425699999774,6767 "ee/spec/policies/dast/profile_policy_spec.rb": 2.26178476899986,6768 "ee/spec/services/incident_management/escalation_policies/update_service_spec.rb": 2.4123030840000865,6769 "ee/spec/services/issues/build_service_spec.rb": 3.7935670930000924,6770 "ee/spec/services/incident_management/incidents/upload_metric_service_spec.rb": 1.385181694000039,6771 "ee/spec/serializers/dashboard_environments_serializer_spec.rb": 2.2439255079998475,6772 "ee/spec/policies/vulnerabilities/state_transition_policy_spec.rb": 1.8772129700000733,6773 "ee/spec/lib/ee/gitlab/gon_helper_spec.rb": 1.0042971560001206,6774 "ee/spec/models/product_analytics/funnel_spec.rb": 2.0779830100000254,6775 "ee/spec/helpers/projects/security/dast_profiles_helper_spec.rb": 0.9849049800000103,6776 "ee/spec/workers/vulnerabilities/mark_dropped_as_resolved_worker_spec.rb": 2.056762866000099,6777 "ee/spec/services/projects/protect_default_branch_service_spec.rb": 2.1232415059998857,6778 "ee/spec/lib/ee/backup/repositories_spec.rb": 3.144402119999995,6779 "ee/spec/services/issue_feature_flags/list_service_spec.rb": 2.2847309969997696,6780 "ee/spec/graphql/ee/resolvers/work_items_resolver_spec.rb": 2.216424337999797,6781 "ee/spec/services/compliance_management/merge_requests/create_compliance_violations_service_spec.rb": 2.028779446000044,6782 "ee/spec/services/ee/commits/create_service_spec.rb": 2.919648546999724,6783 "ee/spec/services/ee/merge_request_metrics_service_spec.rb": 3.602368060999652,6784 "ee/spec/finders/billed_users_finder_spec.rb": 2.574163473000226,6785 "ee/spec/models/dast/profiles_pipeline_spec.rb": 2.6615478080002504,6786 "ee/spec/graphql/resolvers/incident_management/issuable_resource_links_resolver_spec.rb": 1.245588527000109,6787 "ee/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb": 2.86436140800015,6788 "ee/spec/models/concerns/ee/clusters/agents/authorizations/ci_access/config_scopes_spec.rb": 2.3436930840002788,6789 "ee/spec/services/quality_management/test_cases/create_service_spec.rb": 2.219503715999963,6790 "ee/spec/services/geo/blob_upload_service_spec.rb": 1.3315807629996925,6791 "ee/spec/services/security/security_orchestration_policies/fetch_policy_service_spec.rb": 1.4906037249998008,6792 "ee/spec/services/ee/projects/deploy_tokens/create_service_spec.rb": 1.1849298320003072,6793 "ee/spec/finders/security/vulnerability_feedbacks_finder_spec.rb": 1.2164017690001856,6794 "ee/spec/helpers/projects/learn_gitlab_helper_spec.rb": 1.5259897900000396,6795 "ee/spec/services/security/scan_result_policies/sync_findings_to_approval_rules_service_spec.rb": 2.162344497000049,6796 "ee/spec/services/app_sec/dast/pre_scan_verification_steps/create_or_update_service_spec.rb": 2.0540223880002486,6797 "ee/spec/lib/elastic/latest/note_instance_proxy_spec.rb": 2.438028822999968,6798 "ee/spec/lib/gitlab/insights/loader_spec.rb": 1.0547789890001695,6799 "ee/spec/graphql/mutations/incident_management/oncall_schedule/create_spec.rb": 0.8503892300000189,6800 "ee/spec/helpers/trial_registrations_helper_spec.rb": 0.8184771539999929,6801 "ee/spec/lib/gitlab/analytics/cycle_analytics/summary/time_to_restore_service_spec.rb": 0.7648522139998022,6802 "ee/spec/services/geo/hashed_storage_attachments_event_store_spec.rb": 1.7866574459999356,6803 "ee/spec/services/incident_management/oncall_shifts/read_service_spec.rb": 1.2270185509996736,6804 "ee/spec/lib/gitlab/graphql/aggregations/issues/lazy_links_aggregate_spec.rb": 0.37610751099964546,6805 "ee/spec/lib/gitlab/license_scanning/pipeline_components_spec.rb": 1.8021272649998537,6806 "ee/spec/workers/compliance_management/standards/gitlab/prevent_approval_by_author_worker_spec.rb": 0.618308922000324,6807 "ee/spec/graphql/resolvers/incident_management/escalation_policies_resolver_spec.rb": 1.5118161899999905,6808 "ee/spec/lib/gitlab/llm/chain/tools/gitlab_documentation/executor_spec.rb": 0.6863745420000669,6809 "ee/spec/lib/gitlab/import_export/project/relation_factory_spec.rb": 1.510968461000175,6810 "ee/spec/views/shared/_namespace_user_cap_reached_alert.html.haml_spec.rb": 1.651140395999846,6811 "ee/spec/serializers/epic_entity_spec.rb": 1.5358131919997504,6812 "ee/spec/graphql/types/work_items/type_spec.rb": 0.23537518500006627,6813 "ee/spec/services/ci/pipeline_bridge_status_service_spec.rb": 1.6642796749997615,6814 "ee/spec/views/admin/groups/_form.html.haml_spec.rb": 0.6734799529999691,6815 "ee/spec/finders/dast_site_validations_finder_spec.rb": 1.1864641860001939,6816 "ee/spec/lib/gitlab/auth/group_saml/xml_response_spec.rb": 1.2991344900001423,6817 "ee/spec/workers/product_analytics/post_push_worker_spec.rb": 1.1117822649998743,6818 "ee/spec/graphql/types/dast/profile_cadence_type_spec.rb": 0.19661700400001791,6819 "ee/spec/lib/remote_development/workspaces/create/creator_spec.rb": 1.629496797000229,6820 "ee/spec/services/work_items/export_csv_service_spec.rb": 1.862252247000015,6821 "ee/spec/services/package_metadata/ingestion/tasks/ingest_packages_spec.rb": 0.7271099550002873,6822 "ee/spec/graphql/resolvers/analytics/contribution_analytics/contributions_resolver_spec.rb": 1.1407935409997663,6823 "ee/spec/workers/elastic_cluster_reindexing_cron_worker_spec.rb": 0.22694005999983347,6824 "ee/spec/lib/elastic/latest/commit_config_spec.rb": 0.23814116899984583,6825 "ee/spec/graphql/types/ci/job_type_spec.rb": 0.19464328499998373,6826 "ee/spec/helpers/users/identity_verification_helper_spec.rb": 0.8115655840001637,6827 "ee/spec/services/security/security_orchestration_policies/process_rule_service_spec.rb": 1.0170668969999497,6828 "ee/spec/views/shared/labels/_create_label_help_text.html.haml_spec.rb": 1.1914225639998222,6829 "ee/spec/models/vulnerabilities/finding_link_spec.rb": 1.0669102109995947,6830 "ee/spec/lib/gitlab/usage/metrics/instrumentations/protected_environment_approval_rules_required_approvals_average_metric_spec.rb": 1.1610548980002022,6831 "ee/spec/lib/gitlab/favicon_spec.rb": 0.18080619700003808,6832 "ee/spec/services/package_metadata/ingestion/ingestion_service_spec.rb": 0.5383718390003196,6833 "ee/spec/services/users/abuse/namespace_bans/destroy_service_spec.rb": 1.0936756070000229,6834 "ee/spec/validators/user_id_existence_validator_spec.rb": 0.5337456699999166,6835 "ee/spec/models/concerns/geo/has_replicator_spec.rb": 0.5552144270000099,6836 "ee/spec/services/ee/gpg_keys/destroy_service_spec.rb": 0.7264735349999683,6837 "ee/spec/finders/work_items/widgets/filters/requirement_legacy_spec.rb": 0.9722468329996445,6838 "ee/spec/models/ee/work_items/resource_link_event_spec.rb": 1.0061163290001787,6839 "ee/spec/lib/sidebars/groups/menus/wiki_menu_spec.rb": 0.6265072279998094,6840 "ee/spec/policies/approval_project_rule_policy_spec.rb": 0.9813153519999105,6841 "ee/spec/graphql/resolvers/geo/geo_node_resolver_spec.rb": 0.6303888870002083,6842 "ee/spec/services/ee/users/unblock_service_spec.rb": 0.8066762049998033,6843 "ee/spec/workers/ci/sync_reports_to_report_approval_rules_worker_spec.rb": 0.1987193439999828,6844 "ee/spec/services/merge_requests/mergeability/check_blocked_by_other_mrs_service_spec.rb": 0.46033609000005526,6845 "ee/spec/lib/gitlab/vulnerability_scanning/security_report_builder_spec.rb": 0.6982658090000768,6846 "ee/spec/services/concerns/epics/related_epic_links/usage_data_helper_spec.rb": 0.4731550579999748,6847 "ee/spec/lib/gitlab/status_page/storage/s3_multipart_upload_spec.rb": 0.3163507889998982,6848 "ee/spec/workers/iterations/cadences/schedule_create_iterations_worker_spec.rb": 0.5315596710001955,6849 "ee/spec/services/external_status_checks/dispatch_service_spec.rb": 0.4064362569997684,6850 "ee/spec/presenters/subscriptions/new_plan_presenter_spec.rb": 0.3440680250000696,6851 "ee/spec/views/layouts/header/_read_only_banner.html.haml_spec.rb": 0.6021646709996276,6852 "ee/spec/workers/incident_management/pending_escalations/issue_check_worker_spec.rb": 0.5385176599997976,6853 "ee/spec/services/security/auto_fix_label_service_spec.rb": 0.6003049620003367,6854 "ee/spec/serializers/linked_feature_flag_issue_entity_spec.rb": 0.6255908590001127,6855 "ee/spec/graphql/types/dast/profile_branch_type_spec.rb": 0.32588340700021945,6856 "ee/spec/presenters/ee/instance_clusterable_presenter_spec.rb": 0.6119831800001521,6857 "ee/spec/workers/namespaces/sync_namespace_name_worker_spec.rb": 0.34496883499969044,6858 "ee/spec/graphql/types/audit_events/exterrnal_audit_event_destination_type_spec.rb": 0.23695588900000075,6859 "ee/spec/lib/sidebars/admin/panel_spec.rb": 0.2772878839996338,6860 "ee/spec/graphql/types/geo/upload_registry_type_spec.rb": 0.2401485089999369,6861 "ee/spec/models/ee/system/broadcast_message_spec.rb": 0.3068558310001208,6862 "ee/spec/workers/create_github_webhook_worker_spec.rb": 0.4893197659998805,6863 "ee/spec/helpers/admin/application_settings_helper_spec.rb": 0.25500668599988785,6864 "ee/spec/models/gitlab_subscription_history_spec.rb": 0.24388000800036025,6865 "ee/spec/views/admin/application_settings/_ai_access.html.haml_spec.rb": 0.29853794100017694,6866 "ee/spec/elastic/migrate/20220825102900_backfill_label_ids_for_issues_spec.rb": 0.282186763000027,6867 "ee/spec/lib/ee/api/entities/scim/emails_spec.rb": 0.2568716169998879,6868 "ee/spec/elastic/migrate/20220824133000_add_hidden_to_issues_spec.rb": 0.23332735900021362,6869 "ee/spec/graphql/types/geo/ci_secure_file_registry_type_spec.rb": 0.2330649700002141,6870 "ee/spec/graphql/types/merge_requests/approval_state_type_spec.rb": 0.19868336499985162,6871 "ee/spec/lib/remote_development/unmatched_result_error_spec.rb": 0.20490982299997995,6872 "ee/spec/lib/remote_development/workspaces/reconcile/input/agent_info_spec.rb": 0.20996881200017015,6873 "ee/spec/graphql/types/epic_sort_enum_spec.rb": 0.19830682500014518,6874 "ee/spec/lib/ee/api/entities/groups/repository_storage_move_spec.rb": 0.26010603600025206,6875 "ee/spec/lib/gitlab/subscription_portal/client_spec.rb": 0.19557204400007322,6876 "ee/spec/graphql/types/audit_events/streaming/instance_header_type_spec.rb": 0.19308142499994574,6877 "ee/spec/graphql/types/dast/profile_schedule_input_type_spec.rb": 0.19652048400030253,6878 "ee/spec/lib/gitlab/search_context/builder_spec.rb": 0.23822835900000428,6879 "ee/spec/views/search/results/_issuable.html.haml_spec.rb": 0.2924327410000842,6880 "ee/spec/views/admin/push_rules/_merge_request_approvals.html.haml_spec.rb": 0.20674213299980693,6881 "ee/spec/lib/api/entities/epic_boards/list_spec.rb": 0.2029973539997627,6882 "ee/spec/graphql/types/vulnerability_state_enum_spec.rb": 0.15599574999987453,6883 "ee/spec/lib/remote_development/workspaces/create/volume_definer_spec.rb": 0.15572733899989544,6884 "ee/spec/graphql/types/vulnerability_details/int_type_spec.rb": 0.15135568100004093,6885 "ee/spec/graphql/types/vulnerability_location/dast_type_spec.rb": 0.15300952999996298,6886 "ee/spec/lib/gitlab/email/feature_flag_wrapper_spec.rb": 0.16385315900015485,6887 "ee/spec/lib/gitlab/insights/serializers/chartjs/bar_time_series_serializer_spec.rb": 0.15361843999971825,6888 "ee/spec/graphql/types/gitlab_subscriptions/user_role_enum_spec.rb": 0.15281925999988744,6889 "ee/spec/graphql/types/vulnerability_report_type_enum_spec.rb": 0.15188523999995596,6890 "ee/spec/lib/ee/api/entities/gitlab_subscriptions/add_on_purchase_spec.rb": 0.187820454999837246891}6892Knapsack global time execution for tests: 25m 38s6893Pending: (Failures listed here are expected and do not affect your suite's status)6894 1) Resolvers::Geo::ProjectRepositoryRegistriesResolver behaves like a Geo registries resolver #resolve when the parent object is the current node when the user has permission to view Geo data when admin mode is enabled with verification disabled when the verification_state argument is present raises ArgumentError6895 # Skipping because verification is enabled for Project6896 # ./ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb:776897 2) Resolvers::Geo::DesignManagementRepositoryRegistriesResolver behaves like a Geo registries resolver #resolve when the parent object is the current node when the user has permission to view Geo data when admin mode is enabled with verification disabled when the verification_state argument is present raises ArgumentError6898 # Skipping because verification is enabled for DesignManagement::Repository6899 # ./ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb:776900 3) Resolvers::Geo::GroupWikiRepositoryRegistriesResolver behaves like a Geo registries resolver #resolve when the parent object is the current node when the user has permission to view Geo data when admin mode is enabled with verification disabled when the verification_state argument is present raises ArgumentError6901 # Skipping because verification is enabled for GroupWikiRepository6902 # ./ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb:776903 4) Geo::HashedStorageAttachmentsEventStore#create! behaves like a Geo event store when running on a primary node when file subject is not on local store creates an event6904 # No file subject defined, skipping6905 # ./ee/spec/support/shared_examples/services/geo_event_store_shared_examples.rb:366906Failures:6907 1) Commits::CreateService#execute when the namespace storage limit has been exceeded with a subgroup project raises an error6908 Failure/Error: raise NotImplementedError6909 NotImplementedError:6910 NotImplementedError6911 # ./app/services/commits/create_service.rb:48:in `create_commit!'6912 # ./app/services/commits/create_service.rb:30:in `execute'6913 # ./ee/spec/services/ee/commits/create_service_spec.rb:71:in `block (5 levels) in <top (required)>'6914 # ./spec/spec_helper.rb:448:in `block (3 levels) in <top (required)>'6915 # ./spec/support/sidekiq_middleware.rb:18:in `with_sidekiq_server_middleware'6916 # ./spec/spec_helper.rb:439:in `block (2 levels) in <top (required)>'6917 # ./spec/spec_helper.rb:435:in `block (3 levels) in <top (required)>'6918 # ./lib/gitlab/application_context.rb:66:in `with_raw_context'6919 # ./spec/spec_helper.rb:435:in `block (2 levels) in <top (required)>'6920 # ./spec/spec_helper.rb:266:in `block (2 levels) in <top (required)>'6921 # ./spec/support/system_exit_detected.rb:7:in `block (2 levels) in <top (required)>'6922 # ./spec/support/fast_quarantine.rb:22:in `block (2 levels) in <top (required)>'6923 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (3 levels) in <top (required)>'6924 # ./spec/support/database/prevent_cross_joins.rb:60:in `with_cross_joins_prevented'6925 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (2 levels) in <top (required)>'6926Finished in 25 minutes 41 seconds (files took 1 minute 41.84 seconds to load)69272810 examples, 1 failure, 4 pending6928Failed examples:6929rspec ./ee/spec/services/ee/commits/create_service_spec.rb:67 # Commits::CreateService#execute when the namespace storage limit has been exceeded with a subgroup project raises an error6930Randomized with seed 465006931[TEST PROF INFO] Time spent in factories: 15:30.443 (58.81% of total time)6932Stopped processing SimpleCov as a previous error not related to SimpleCov has been detected6933RSpec exited with 1.6934RSPEC_RETRIED_TESTS_REPORT_PATH: rspec/retried_tests-4841631393.txt6935Retrying the failing examples in a new RSpec process...6936$ gem install junit_merge --no-document --version 0.1.26937Successfully installed nokogiri-1.15.3-x86_64-linux6938Successfully installed junit_merge-0.1.269392 gems installed6940==> 'gem install junit_merge --no-document --version 0.1.2' succeeded in 1 seconds.6941Running RSpec command: bin/rspec -Ispec -rspec_helper --color --failure-exit-code 1 --error-exit-code 2 --format documentation --format Support::Formatters::JsonFormatter --out rspec/rspec-retry-4841631393.json --format RspecJunitFormatter --out rspec/rspec-retry-4841631393.xml --only-failures --pattern "{ee/}spec/{bin,channels,components,config,contracts,db,dependencies,elastic,elastic_integration,experiments,factories,finders,frontend,graphql,haml_lint,helpers,initializers,lib,metrics_server,models,policies,presenters,rack_servers,replicators,routing,rubocop,scripts,serializers,services,sidekiq,sidekiq_cluster,spam,support_specs,tasks,uploaders,validators,views,workers,tooling}{,/**/}*_spec.rb"6942/builds/gitlab-org/gitlab/ee/app/services/remote_development/service_response_factory.rb:41: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6943/builds/gitlab-org/gitlab/ee/app/services/remote_development/workspaces/create_service.rb:28: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6944/builds/gitlab-org/gitlab/ee/app/services/remote_development/workspaces/reconcile_service.rb:38: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6945/builds/gitlab-org/gitlab/ee/app/services/remote_development/workspaces/update_service.rb:28: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6946/builds/gitlab-org/gitlab/ee/lib/remote_development/agent_config/main.rb:32: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6947/builds/gitlab-org/gitlab/ee/lib/remote_development/agent_config/updater.rb:11: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6948/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/authorizer.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6949/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/authorizer.rb:13: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6950/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:17: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6951/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:24: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6952/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:25: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6953/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/creator.rb:28: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6954/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/devfile_fetcher.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6955/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/devfile_fetcher.rb:16: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6956/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/devfile_flattener.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6957/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/editor_component_injector.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6958/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/editor_component_injector.rb:17: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6959/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/editor_component_injector.rb:18: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6960/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:43: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6961/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:54: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6962/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:102: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6963/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:126: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6964/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:159: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6965/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:202: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6966/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/post_flatten_devfile_validator.rb:235: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6967/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/pre_flatten_devfile_validator.rb:24: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6968/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/pre_flatten_devfile_validator.rb:52: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6969/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6970/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:17: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6971/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:18: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6972/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/project_cloner_component_injector.rb:23: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6973/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/volume_component_injector.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6974/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/volume_component_injector.rb:13: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6975/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/create/volume_component_injector.rb:14: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6976/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/main.rb:43: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6977/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/update/authorizer.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6978/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/update/updater.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6979/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/agent_infos_observer.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6980/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_extractor.rb:14: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6981/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_extractor.rb:16: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6982/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_to_infos_converter.rb:14: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6983/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/input/params_validator.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6984/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/output/rails_infos_observer.rb:11: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6985/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/output/workspaces_to_rails_infos_converter.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6986/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/orphaned_workspaces_observer.rb:12: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6987/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/workspaces_from_agent_infos_updater.rb:15: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6988/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/workspaces_to_be_returned_finder.rb:16: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6989/builds/gitlab-org/gitlab/ee/lib/remote_development/workspaces/reconcile/persistence/workspaces_to_be_returned_updater.rb:11: warning: One-line pattern matching is experimental, and the behavior may change in future versions of Ruby!6990Run options: include {:last_run_status=>"failed"}6991Test environment set up in 0.504515344 seconds6992Commits::CreateService6993 #execute6994 when the namespace storage limit has been exceeded6995 with a subgroup project6996 raises an error6997Finished in 4.73 seconds (files took 38.65 seconds to load)69981 example, 0 failures6999[TEST PROF INFO] Time spent in factories: 00:01.500 (23.88% of total time)7000Loading rspec/rspec-4841631393.json...7001Merged rspec/rspec-retry-4841631393.json adding 4 results.7002Saved rspec/rspec-4841631393.json.7003A test was flaky and succeeded after being retried. Checking to see if flaky test is part of this MR...7004Flaky test was not part of this MR.7006Running after script...7007$ echo -e "\e[0Ksection_start:`date +%s`:report_results_section[collapsed=true]\r\e[0KReport results"7012Not uploading cache ruby-gems-debian-bullseye-ruby-3.0-16 due to policy7014Uploading artifacts...7015WARNING: auto_explain/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 7016coverage/: found 4 matching artifact files and directories 7017crystalball/: found 2 matching artifact files and directories 7018WARNING: deprecations/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 7019knapsack/: found 4 matching artifact files and directories 7020rspec/: found 19 matching artifact files and directories 7021WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 7022log/*.log: found 17 matching artifact files and directories 7023WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/4841631393/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com7024WARNING: Retrying... context=artifacts-uploader error=request redirected7025Uploading artifacts as "archive" to coordinator... 201 Created id=4841631393 responseStatus=201 Created token=64_DKxmW7026Uploading artifacts...7027rspec/rspec-*.xml: found 2 matching artifact files and directories 7028WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/4841631393/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com7029WARNING: Retrying... context=artifacts-uploader error=request redirected7030Uploading artifacts as "junit" to coordinator... 201 Created id=4841631393 responseStatus=201 Created token=64_DKxmW7032Job succeeded