rspec-ee unit pg12 minimal 14/18
Passed Started
by
@thomasrandolph
Thomas Randolph
1Running with gitlab-runner 15.6.0~beta.186.ga889181a (a889181a)2 on green-2.shared-gitlab-org.runners-manager.gitlab.com/default 8zCxmpPt3 feature flags: FF_USE_FASTZIP:true6Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-106-yarn-1.22-graphicsmagick-1.3.36 ...7Starting service postgres:12 ...8Pulling docker image postgres:12 ...9Using docker image sha256:31c3beb3b8968af162019219a074f3d4c1a5b1ab319ec86668229ad0a7ed0e4f for postgres:12 with digest postgres@sha256:63a045745aec8457cb208e929118b557e95e1b1327e2ad29f14174054be5d56e ...10Starting service redis:6.0-alpine ...11Pulling docker image redis:6.0-alpine ...12Using docker image sha256:f30aed8202b4ddc9ed0c833f7bd2b90470dc3a438a51b6567e9955adfe224051 for redis:6.0-alpine with digest redis@sha256:fcf49f0ab799e3b7217aab710606e888b190bbf3c3a81b5c912dd8ef351d1f69 ...13Starting service elasticsearch:7.17.6 ...14Pulling docker image elasticsearch:7.17.6 ...15Using docker image sha256:5fad10241ffd65d817ed0ddfaf6e87eee1f7dc2a7db33db1047835560ea71fda for elasticsearch:7.17.6 with digest elasticsearch@sha256:6c128de5d01c0c130a806022d6bd99b3e4c27a9af5bfc33b6b81861ae117d028 ...16Waiting for services to be up and running (timeout 30 seconds)...17Authenticating with credentials from job payload (GitLab Registry)18Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-106-yarn-1.22-graphicsmagick-1.3.36 ...19Using docker image sha256:9f9846a4ac0697e6010265e736ea0ed08cd0506c4323c4e2a29d17e1b28665ce for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-106-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12@sha256:9229dfe0f4ee76cecfd8411f6668b0b2a5fd730d1d3688013b3a721189fcccb5 ...21Running on runner-8zcxmppt-project-278964-concurrent-0 via runner-8zcxmppt-shared-gitlab-org-1670453900-f3a509c5...23$ eval "$CI_PRE_CLONE_SCRIPT"24Fetching changes with git depth set to 20...25Initialized empty Git repository in /builds/gitlab-org/gitlab/.git/26Created fresh repository.27remote: Enumerating objects: 141131, done. 28remote: Counting objects: 100% (141131/141131), done. 29remote: Compressing objects: 100% (89744/89744), done. 30remote: Total 141131 (delta 65036), reused 99095 (delta 46172), pack-reused 0 31Receiving objects: 100% (141131/141131), 119.18 MiB | 20.38 MiB/s, done.32Resolving deltas: 100% (65036/65036), done.34 * [new ref] refs/pipelines/716546384 -> refs/pipelines/71654638435Checking out 7c747a9f as refs/merge-requests/106378/merge...36Skipping Git submodules setup37$ git remote set-url origin "${CI_REPOSITORY_URL}"39Checking cache for ruby-gems-debian-bullseye-ruby-2.7-16...40Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/ruby-gems-debian-bullseye-ruby-2.7-16 41Successfully extracted cache42Checking cache for gitaly-ruby-gems-debian-bullseye-ruby-2.7-16...43Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 44Successfully extracted cache46Downloading artifacts for compile-test-assets (3441843123)...47Downloading artifacts from coordinator... ok id=3441843123 responseStatus=200 OK token=gCW1Ex7F48Downloading artifacts for detect-tests (3441843133)...49Downloading artifacts from coordinator... ok id=3441843133 responseStatus=200 OK token=gCW1Ex7F50Downloading artifacts for retrieve-tests-metadata (3441843138)...51Downloading artifacts from coordinator... ok id=3441843138 responseStatus=200 OK token=gCW1Ex7F52Downloading artifacts for setup-test-env (3441843127)...53Downloading artifacts from coordinator... ok id=3441843127 responseStatus=200 OK token=gCW1Ex7F55Using docker image sha256:9f9846a4ac0697e6010265e736ea0ed08cd0506c4323c4e2a29d17e1b28665ce for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-106-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12@sha256:9229dfe0f4ee76cecfd8411f6668b0b2a5fd730d1d3688013b3a721189fcccb5 ...56$ echo $FOSS_ONLY57$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb58$ export GOPATH=$CI_PROJECT_DIR/.go59$ mkdir -p $GOPATH60$ source scripts/utils.sh61$ source scripts/prepare_build.sh690Using decomposed database config (config/database.yml.decomposed-postgresql)691$ setup_db_user_only692CREATE ROLE693GRANT694==> 'setup_db_user_only' succeeded in 0 seconds.695$ bundle exec rake db:drop db:create db:schema:load db:migrate696Dropped database 'gitlabhq_test'697Dropped database 'gitlabhq_test_ci'698Dropped database 'gitlabhq_geo_test'699Created database 'gitlabhq_test'700Created database 'gitlabhq_test_ci'701Created database 'gitlabhq_geo_test'702==> 'bundle exec rake db:drop db:create db:schema:load db:migrate' succeeded in 42 seconds.703$ setup_db_praefect704SELECT pg_catalog.set_config('search_path', '', false);705CREATE DATABASE praefect_test ENCODING 'UTF8';706==> 'setup_db_praefect' succeeded in 0 seconds.707$ source ./scripts/rspec_helpers.sh708$ run_timed_command "gem install knapsack --no-document"709$ gem install knapsack --no-document710Successfully installed knapsack-4.0.07111 gem installed712==> 'gem install knapsack --no-document' succeeded in 1 seconds.713$ echo -e "\e[0Ksection_start:`date +%s`:gitaly-test-spawn[collapsed=true]\r\e[0KStarting Gitaly"823$ rspec_paralellized_job "--tag ~quarantine --tag ~level:migration"824SKIP_FLAKY_TESTS_AUTOMATICALLY: true825RETRY_FAILED_TESTS_IN_NEW_PROCESS: true826KNAPSACK_GENERATE_REPORT: true827FLAKY_RSPEC_GENERATE_REPORT: true828KNAPSACK_TEST_FILE_PATTERN: {ee/}spec/{bin,channels,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,components}{,/**/}*_spec.rb829KNAPSACK_LOG_LEVEL: debug830KNAPSACK_REPORT_PATH: knapsack/rspec-ee_unit_pg12_minimal_14_18_report.json831FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json832FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec-ee_unit_pg12_minimal_14_18_report.json833NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec-ee_unit_pg12_minimal_14_18_report.json834SKIPPED_FLAKY_TESTS_REPORT_PATH: rspec/flaky/skipped_flaky_tests_rspec-ee_unit_pg12_minimal_14_18_report.txt835RETRIED_TESTS_REPORT_PATH: rspec/flaky/retried_tests_rspec-ee_unit_pg12_minimal_14_18_report.txt836CRYSTALBALL: 837Knapsack node specs:838ee/spec/services/ee/notification_service_spec.rb839ee/spec/lib/gitlab/elastic/project_search_results_spec.rb840ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb841ee/spec/lib/gitlab/ci/templates/sast_latest_gitlab_ci_yaml_spec.rb842ee/spec/services/ee/notes/quick_actions_service_spec.rb843ee/spec/models/geo_node_spec.rb844ee/spec/finders/epics_finder_spec.rb845ee/spec/models/geo/job_artifact_registry_spec.rb846ee/spec/models/dast/profile_schedule_spec.rb847ee/spec/services/ee/merge_requests/create_pipeline_service_spec.rb848ee/spec/services/approval_rules/create_service_spec.rb849ee/spec/models/merge_request_block_spec.rb850ee/spec/services/geo/repository_sync_service_spec.rb851ee/spec/services/ci/create_pipeline_service/cross_needs_artifacts_spec.rb852ee/spec/services/ci/minutes/update_project_and_namespace_usage_service_spec.rb853ee/spec/services/geo/design_repository_sync_service_spec.rb854ee/spec/services/projects/transfer_service_spec.rb855ee/spec/lib/ee/gitlab/background_migration/fix_incorrect_max_seats_used_spec.rb856ee/spec/finders/merge_requests_finder_spec.rb857ee/spec/finders/issues_finder_spec.rb858ee/spec/presenters/vulnerability_presenter_spec.rb859ee/spec/helpers/subscriptions_helper_spec.rb860ee/spec/models/concerns/geo/verification_state_spec.rb861ee/spec/models/snippet_repository_spec.rb862ee/spec/services/ci/audit_variable_change_service_spec.rb863ee/spec/services/gitlab_subscriptions/preview_billable_user_change_service_spec.rb864ee/spec/serializers/blocking_merge_request_entity_spec.rb865ee/spec/services/ee/merge_requests/post_merge_service_spec.rb866ee/spec/services/system_notes/epics_service_spec.rb867ee/spec/helpers/boards_helper_spec.rb868ee/spec/services/protected_environments/create_service_spec.rb869ee/spec/services/issuable/discussions_list_service_spec.rb870ee/spec/lib/gitlab/ci/templates/secure_binaries_ci_yaml_spec.rb871ee/spec/services/ee/todos/destroy/entity_leave_service_spec.rb872ee/spec/finders/custom_project_templates_finder_spec.rb873ee/spec/services/ee/system_notes/issuables_service_spec.rb874ee/spec/workers/sync_seat_link_request_worker_spec.rb875ee/spec/lib/gitlab/email/handler/create_note_handler_spec.rb876ee/spec/lib/ee/sidebars/groups/menus/settings_menu_spec.rb877ee/spec/services/app_sec/dast/scans/run_service_spec.rb878ee/spec/lib/gitlab/ci/templates/dast_gitlab_ci_yaml_spec.rb879ee/spec/services/security/ingestion/tasks/ingest_vulnerability_statistics_spec.rb880ee/spec/elastic/migrate/20221026082700_backfill_users_spec.rb881ee/spec/workers/group_saml_group_sync_worker_spec.rb882ee/spec/lib/gitlab/ci/parsers/security/dependency_scanning_spec.rb883ee/spec/graphql/resolvers/geo/dependency_proxy_manifest_registries_resolver_spec.rb884ee/spec/graphql/resolvers/geo/group_wiki_repository_registries_resolver_spec.rb885ee/spec/graphql/mutations/incident_management/escalation_policy/update_spec.rb886ee/spec/lib/ee/api/entities/geo_node_status_spec.rb887ee/spec/services/software_license_policies/update_service_spec.rb888ee/spec/lib/banzai/reference_parser/iteration_parser_spec.rb889ee/spec/services/incident_management/oncall_schedules/update_service_spec.rb890ee/spec/lib/gitlab/auth/ldap/person_spec.rb891ee/spec/services/ee/groups/import_export/import_service_spec.rb892ee/spec/graphql/api/vulnerabilities_spec.rb893ee/spec/services/groups/mark_for_deletion_service_spec.rb894ee/spec/finders/security/training_providers/secure_code_warrior_url_finder_spec.rb895ee/spec/lib/gitlab/auth/group_saml/session_enforcer_spec.rb896ee/spec/models/deployments/approval_spec.rb897ee/spec/services/ide/schemas_config_service_spec.rb898ee/spec/lib/ee/gitlab/cleanup/orphan_job_artifact_files_spec.rb899ee/spec/models/ee/lfs_object_spec.rb900ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb901ee/spec/helpers/license_helper_spec.rb902ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb903ee/spec/finders/notes_finder_spec.rb904ee/spec/services/ee/merge_requests/update_reviewers_service_spec.rb905ee/spec/services/ci/runners/register_runner_service_spec.rb906ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_edited_spec.rb907ee/spec/helpers/ee/trial_registration_helper_spec.rb908ee/spec/finders/gpg_keys_finder_spec.rb909ee/spec/lib/gitlab/ci/templates/coverage_fuzzing_gitlab_ci_yaml_spec.rb910ee/spec/workers/geo/scheduler/per_shard_scheduler_worker_spec.rb911ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb912ee/spec/services/wikis/create_attachment_service_spec.rb913ee/spec/views/projects/security/dast_profiles/show.html.haml_spec.rb914ee/spec/graphql/types/incident_management/oncall_rotation_date_input_type_spec.rb915ee/spec/graphql/resolvers/vulnerabilities/issue_links_resolver_spec.rb916ee/spec/lib/elastic/latest/custom_language_analyzers_spec.rb917ee/spec/views/shared/credentials_inventory/personal_access_tokens/_personal_access_token.html.haml_spec.rb918ee/spec/tasks/geo/git_rake_spec.rb919ee/spec/lib/ee/api/helpers/notes_helpers_spec.rb920ee/spec/finders/auth/provisioned_users_finder_spec.rb921ee/spec/finders/incident_management/escalation_policies_finder_spec.rb922ee/spec/graphql/mutations/incident_management/issuable_resource_link/create_spec.rb923ee/spec/lib/gitlab/geo/log_cursor/events/reset_checksum_event_spec.rb924ee/spec/lib/gitlab/status_page/storage/s3_client_spec.rb925ee/spec/services/projects/hashed_storage/migrate_attachments_service_spec.rb926ee/spec/models/users_security_dashboard_project_spec.rb927ee/spec/workers/requirements_management/import_requirements_csv_worker_spec.rb928ee/spec/lib/ee/api/entities/scim/users_spec.rb929ee/spec/serializers/issuable_sidebar_extras_entity_spec.rb930ee/spec/models/ee/members_preloader_spec.rb931ee/spec/workers/geo/repository_cleanup_worker_spec.rb932ee/spec/validators/password/complexity_validator_spec.rb933ee/spec/workers/ci/batch_reset_minutes_worker_spec.rb934ee/spec/models/ee/preloaders/group_policy_preloader_spec.rb935ee/spec/services/integrations/slack_events/app_home_opened_service_spec.rb936ee/spec/lib/gitlab/insights/project_insights_config_spec.rb937ee/spec/views/admin/identities/index.html.haml_spec.rb938ee/spec/lib/gitlab/object_hierarchy_spec.rb939ee/spec/lib/gitlab/usage/metrics/instrumentations/count_users_associating_group_milestones_to_releases_metric_spec.rb940ee/spec/services/vulnerabilities/user_notes_count_service_spec.rb941ee/spec/services/ee/alert_management/http_integrations/create_service_spec.rb942ee/spec/graphql/resolvers/app_sec/dast/profile_resolver_spec.rb943ee/spec/lib/gitlab/ci/templates/license_scanning_gitlab_ci_yaml_spec.rb944ee/spec/lib/audit/protected_branches_changes_auditor_spec.rb945ee/spec/helpers/roadmaps_helper_spec.rb946ee/spec/services/boards/epic_user_preferences/update_service_spec.rb947ee/spec/finders/ee/user_recent_events_finder_spec.rb948ee/spec/lib/system_check/geo/http_clone_enabled_check_spec.rb949ee/spec/elastic/migrate/20210510113500_delete_merge_requests_from_original_index_spec.rb950ee/spec/services/geo/node_status_request_service_spec.rb951ee/spec/lib/gitlab/compliance_management/violations/approved_by_merge_request_author_spec.rb952ee/spec/models/concerns/health_status_spec.rb953ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb954ee/spec/lib/gitlab/auth/group_saml/auth_hash_spec.rb955ee/spec/lib/ee/sidebars/projects/menus/ci_cd_menu_spec.rb956ee/spec/views/trials/_skip_trial.html.haml_spec.rb957ee/spec/models/elasticsearch_indexed_project_spec.rb958ee/spec/workers/compliance_management/chain_of_custody_report_worker_spec.rb959ee/spec/workers/geo/verification_state_backfill_service_spec.rb960ee/spec/elastic/migrate/20210127154600_remove_permissions_data_from_notes_documents_spec.rb961ee/spec/lib/gitlab/tracking/standard_context_spec.rb962ee/spec/elastic/migrate/20210510143200_delete_notes_from_original_index_spec.rb963ee/spec/workers/project_cache_worker_spec.rb964ee/spec/services/app_sec/dast/profile_schedules/audit/update_service_spec.rb965ee/spec/services/ee/alert_management/http_integrations/update_service_spec.rb966ee/spec/lib/world_spec.rb967ee/spec/views/layouts/project.html.haml_spec.rb968ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_links_aggregate_spec.rb969ee/spec/routing/groups/cadences_routing_spec.rb970ee/spec/models/user_detail_spec.rb971ee/spec/policies/geo_node_policy_spec.rb972ee/spec/lib/ee/gitlab/import_export/repo_restorer_spec.rb973ee/spec/lib/ee/sidebars/projects/menus/monitor_menu_spec.rb974ee/spec/lib/gitlab/usage/metrics/instrumentations/epics_deepest_relationship_level_metric_spec.rb975ee/spec/models/concerns/timebox_spec.rb976ee/spec/graphql/mutations/gitlab_subscriptions/activate_spec.rb977ee/spec/graphql/types/geo/pipeline_artifact_registry_type_spec.rb978ee/spec/graphql/types/geo/merge_request_diff_registry_type_spec.rb979ee/spec/services/ee/incident_management/issuable_escalation_statuses/create_service_spec.rb980ee/spec/lib/gitlab/usage/metrics/instrumentations/advanced_search/lucene_version_metric_spec.rb981ee/spec/workers/elastic_cluster_reindexing_cron_worker_spec.rb982ee/spec/services/geo/repository_registry_removal_service_spec.rb983ee/spec/services/sbom/ingestion/occurrence_map_collection_spec.rb984ee/spec/services/sbom/ingestion/ingest_reports_service_spec.rb985ee/spec/graphql/types/vulnerability/issue_link_type_spec.rb986ee/spec/graphql/types/incident_management/oncall_rotation_type_spec.rb987ee/spec/services/ee/admin/set_feature_flag_service_spec.rb988ee/spec/lib/gitlab/gl_repository_spec.rb989ee/spec/views/compliance_management/compliance_framework/_compliance_framework_badge.html.haml_spec.rb990ee/spec/models/geo/project_wiki_repository_registry_spec.rb991ee/spec/graphql/types/geo/dependency_proxy_manifest_registry_type_spec.rb992ee/spec/graphql/types/permission_types/project_spec.rb993ee/spec/graphql/types/vulnerability_sort_enum_spec.rb994ee/spec/graphql/types/incident_management/oncall_shift_type_spec.rb995ee/spec/services/boards/epic_boards/destroy_service_spec.rb996ee/spec/services/base_count_service_spec.rb997ee/spec/graphql/types/work_items/widgets/health_status_input_type_spec.rb998ee/spec/graphql/types/app_sec/fuzzing/api/scan_profile_type_spec.rb999ee/spec/graphql/types/vulnerability_location/container_scanning_type_spec.rb1000ee/spec/graphql/types/security_orchestration/project_security_policy_source_type_spec.rb1001ee/spec/graphql/types/vulnerability_details/table_type_spec.rb1002Filter specs:1003Running specs:1004Running all node tests without filter1005ee/spec/services/ee/notification_service_spec.rb1006ee/spec/lib/gitlab/elastic/project_search_results_spec.rb1007ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb1008ee/spec/lib/gitlab/ci/templates/sast_latest_gitlab_ci_yaml_spec.rb1009ee/spec/services/ee/notes/quick_actions_service_spec.rb1010ee/spec/models/geo_node_spec.rb1011ee/spec/finders/epics_finder_spec.rb1012ee/spec/models/geo/job_artifact_registry_spec.rb1013ee/spec/models/dast/profile_schedule_spec.rb1014ee/spec/services/ee/merge_requests/create_pipeline_service_spec.rb1015ee/spec/services/approval_rules/create_service_spec.rb1016ee/spec/models/merge_request_block_spec.rb1017ee/spec/services/geo/repository_sync_service_spec.rb1018ee/spec/services/ci/create_pipeline_service/cross_needs_artifacts_spec.rb1019ee/spec/services/ci/minutes/update_project_and_namespace_usage_service_spec.rb1020ee/spec/services/geo/design_repository_sync_service_spec.rb1021ee/spec/services/projects/transfer_service_spec.rb1022ee/spec/lib/ee/gitlab/background_migration/fix_incorrect_max_seats_used_spec.rb1023ee/spec/finders/merge_requests_finder_spec.rb1024ee/spec/finders/issues_finder_spec.rb1025ee/spec/presenters/vulnerability_presenter_spec.rb1026ee/spec/helpers/subscriptions_helper_spec.rb1027ee/spec/models/concerns/geo/verification_state_spec.rb1028ee/spec/models/snippet_repository_spec.rb1029ee/spec/services/ci/audit_variable_change_service_spec.rb1030ee/spec/services/gitlab_subscriptions/preview_billable_user_change_service_spec.rb1031ee/spec/serializers/blocking_merge_request_entity_spec.rb1032ee/spec/services/ee/merge_requests/post_merge_service_spec.rb1033ee/spec/services/system_notes/epics_service_spec.rb1034ee/spec/helpers/boards_helper_spec.rb1035ee/spec/services/protected_environments/create_service_spec.rb1036ee/spec/services/issuable/discussions_list_service_spec.rb1037ee/spec/lib/gitlab/ci/templates/secure_binaries_ci_yaml_spec.rb1038ee/spec/services/ee/todos/destroy/entity_leave_service_spec.rb1039ee/spec/finders/custom_project_templates_finder_spec.rb1040ee/spec/services/ee/system_notes/issuables_service_spec.rb1041ee/spec/workers/sync_seat_link_request_worker_spec.rb1042ee/spec/lib/gitlab/email/handler/create_note_handler_spec.rb1043ee/spec/lib/ee/sidebars/groups/menus/settings_menu_spec.rb1044ee/spec/services/app_sec/dast/scans/run_service_spec.rb1045ee/spec/lib/gitlab/ci/templates/dast_gitlab_ci_yaml_spec.rb1046ee/spec/services/security/ingestion/tasks/ingest_vulnerability_statistics_spec.rb1047ee/spec/elastic/migrate/20221026082700_backfill_users_spec.rb1048ee/spec/workers/group_saml_group_sync_worker_spec.rb1049ee/spec/lib/gitlab/ci/parsers/security/dependency_scanning_spec.rb1050ee/spec/graphql/resolvers/geo/dependency_proxy_manifest_registries_resolver_spec.rb1051ee/spec/graphql/resolvers/geo/group_wiki_repository_registries_resolver_spec.rb1052ee/spec/graphql/mutations/incident_management/escalation_policy/update_spec.rb1053ee/spec/lib/ee/api/entities/geo_node_status_spec.rb1054ee/spec/services/software_license_policies/update_service_spec.rb1055ee/spec/lib/banzai/reference_parser/iteration_parser_spec.rb1056ee/spec/services/incident_management/oncall_schedules/update_service_spec.rb1057ee/spec/lib/gitlab/auth/ldap/person_spec.rb1058ee/spec/services/ee/groups/import_export/import_service_spec.rb1059ee/spec/graphql/api/vulnerabilities_spec.rb1060ee/spec/services/groups/mark_for_deletion_service_spec.rb1061ee/spec/finders/security/training_providers/secure_code_warrior_url_finder_spec.rb1062ee/spec/lib/gitlab/auth/group_saml/session_enforcer_spec.rb1063ee/spec/models/deployments/approval_spec.rb1064ee/spec/services/ide/schemas_config_service_spec.rb1065ee/spec/lib/ee/gitlab/cleanup/orphan_job_artifact_files_spec.rb1066ee/spec/models/ee/lfs_object_spec.rb1067ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb1068ee/spec/helpers/license_helper_spec.rb1069ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb1070ee/spec/finders/notes_finder_spec.rb1071ee/spec/services/ee/merge_requests/update_reviewers_service_spec.rb1072ee/spec/services/ci/runners/register_runner_service_spec.rb1073ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_edited_spec.rb1074ee/spec/helpers/ee/trial_registration_helper_spec.rb1075ee/spec/finders/gpg_keys_finder_spec.rb1076ee/spec/lib/gitlab/ci/templates/coverage_fuzzing_gitlab_ci_yaml_spec.rb1077ee/spec/workers/geo/scheduler/per_shard_scheduler_worker_spec.rb1078ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb1079ee/spec/services/wikis/create_attachment_service_spec.rb1080ee/spec/views/projects/security/dast_profiles/show.html.haml_spec.rb1081ee/spec/graphql/types/incident_management/oncall_rotation_date_input_type_spec.rb1082ee/spec/graphql/resolvers/vulnerabilities/issue_links_resolver_spec.rb1083ee/spec/lib/elastic/latest/custom_language_analyzers_spec.rb1084ee/spec/views/shared/credentials_inventory/personal_access_tokens/_personal_access_token.html.haml_spec.rb1085ee/spec/tasks/geo/git_rake_spec.rb1086ee/spec/lib/ee/api/helpers/notes_helpers_spec.rb1087ee/spec/finders/auth/provisioned_users_finder_spec.rb1088ee/spec/finders/incident_management/escalation_policies_finder_spec.rb1089ee/spec/graphql/mutations/incident_management/issuable_resource_link/create_spec.rb1090ee/spec/lib/gitlab/geo/log_cursor/events/reset_checksum_event_spec.rb1091ee/spec/lib/gitlab/status_page/storage/s3_client_spec.rb1092ee/spec/services/projects/hashed_storage/migrate_attachments_service_spec.rb1093ee/spec/models/users_security_dashboard_project_spec.rb1094ee/spec/workers/requirements_management/import_requirements_csv_worker_spec.rb1095ee/spec/lib/ee/api/entities/scim/users_spec.rb1096ee/spec/serializers/issuable_sidebar_extras_entity_spec.rb1097ee/spec/models/ee/members_preloader_spec.rb1098ee/spec/workers/geo/repository_cleanup_worker_spec.rb1099ee/spec/validators/password/complexity_validator_spec.rb1100ee/spec/workers/ci/batch_reset_minutes_worker_spec.rb1101ee/spec/models/ee/preloaders/group_policy_preloader_spec.rb1102ee/spec/services/integrations/slack_events/app_home_opened_service_spec.rb1103ee/spec/lib/gitlab/insights/project_insights_config_spec.rb1104ee/spec/views/admin/identities/index.html.haml_spec.rb1105ee/spec/lib/gitlab/object_hierarchy_spec.rb1106ee/spec/lib/gitlab/usage/metrics/instrumentations/count_users_associating_group_milestones_to_releases_metric_spec.rb1107ee/spec/services/vulnerabilities/user_notes_count_service_spec.rbKnapsack report generator started!1108Run options: exclude {:quarantine=>true, :level=>"migration"}1109==> Starting Gitaly set up...1110==> Starting GitLab Elasticsearch Indexer set up...1111Test environment set up in 0.755570325 seconds1112EE::NotificationService1113 .permitted_actions1114 includes public methods1115 excludes protected and private methods1116 new review1117 sends emails1118 behaves like project emails are disabled1119 sends no emails with project emails disabled1120 sends emails to someone1121 mirror hard failed1122 when the project has invited members1123 sends email1124 behaves like project emails are disabled1125 sends no emails with project emails disabled1126 sends emails to someone1127 when user is owner1128 sends email1129 behaves like project emails are disabled1130 sends no emails with project emails disabled1131 sends emails to someone1132 when owner is blocked1133 does not send email1134 when project belongs to group1135 does not send email to the blocked owner1136 when user is maintainer1137 sends email1138 when user is not owner nor maintainer1139 does not send email1140 when user is group owner1141 sends email1142 when user is group maintainer1143 sends email1144 mirror was disabled1145 when the project has invited members1146 sends email1147 behaves like project emails are disabled1148 sends no emails with project emails disabled1149 sends emails to someone1150 when user is owner1151 sends email1152 behaves like project emails are disabled1153 sends no emails with project emails disabled1154 sends emails to someone1155 when owner is blocked1156 does not send email1157 when project belongs to group1158 does not send email to the blocked owner1159 when user is maintainer1160 sends email1161 when user is not owner nor maintainer1162 does not send email1163 when user is group owner1164 sends email1165 when user is group maintainer1166 sends email1167 mirror user changed1168 sends email1169 behaves like project emails are disabled1170 sends no emails with project emails disabled1171 sends emails to someone1172 issues1173 #removed_iteration_issue1175 behaves like altered iteration notification on issue1176 sends the email to the correct people1177 behaves like project emails are disabled1178 sends no emails with project emails disabled1179 sends emails to someone1180 confidential issues1181 emails subscribers of the issue's iteration that can read the issue1182 #changed_iteration_issue1184 behaves like altered iteration notification on issue1185 sends the email to the correct people1186 behaves like project emails are disabled1187 sends no emails with project emails disabled1188 sends emails to someone1189 confidential issues1190 emails subscribers of the issue's iteration that can read the issue1191 epics1192 epic notes1193 #new_note1194 is expected to have header X-GitLab-NotificationReason:1195 behaves like group emails are disabled1196 sends no emails with group emails disabled1197 sends emails to someone1198 close epic1199 sends notification to watcher when no user participates1200 sends notification to watcher and a participator1201 behaves like group emails are disabled1202 sends no emails with group emails disabled1203 sends emails to someone1204 reopen epic1205 sends notification to watcher when no user participates1206 sends notification to watcher and a participator1207 behaves like group emails are disabled1208 sends no emails with group emails disabled1209 sends emails to someone1210 new epic1211 sends notification to watcher when no user participates1212 sends notification to watcher and a participator1213 behaves like group emails are disabled1214 sends no emails with group emails disabled1215 sends emails to someone1216 when author is not confirmed1217 does not send any notification1218 when author is blocked1219 does not send any notification1220 when author is a ghost1221 does not send any notification1222 Merge Requests1223 #new_merge_request1224 emails all assignees1225 behaves like project emails are disabled1226 sends no emails with project emails disabled1227 sends emails to someone1228 when the target project has approvers set1229 does not email the approvers1230 does not email the approvers when approval is not necessary1231 behaves like project emails are disabled1232 sends no emails with project emails disabled1233 sends emails to someone1234 when the merge request has approvers set1235 does not email the MR approvers1236 does not email approvers set on the project who are not approvers of this MR1237 behaves like project emails are disabled1238 sends no emails with project emails disabled1239 sends emails to someone1240 Members1241 #new_group_member_with_confirmation1242 sends a notification1243 IncidentManagement1244 #notify_oncall_users_of_alert1245 sends an email to the specified users1246 tracks a count of unique recipients1247 #oncall_user_removed1248 sends an email to the owner and participants1249 sends the email inline when async = false1250 #user_escalation_rule_deleted1251 immediately sends an email to the project owner1252 when project owner is the removed user1253 does not send an email1254 with a group1255 immediately sends an email to the eligable project owners1256 #pipeline_finished1257 with a failed pipeline1258 sends account activation email1259 when feature flag is disabled1260 does not send account activation email1261 when not in dev env or gitlab.com1262 does not send account activation email1263 when user is not opted in to marketing emails1264 does not send account activation email1265 when failure reason is not user_not_verified1266 does not send account activation email1267 when user account is validated1268 does not send account activation email1269 when user cannot receive notifications1270 does not send account activation email1271Gitlab::Elastic::ProjectSearchResults1272 initialize with empty ref1273 is expected to eq #<Project id:60 namespace35/project60>>1274 is expected to eq "master"1275 is expected to eq "hello world"1276 initialize with ref1277 is expected to eq #<Project id:60 namespace35/project60>>1278 is expected to eq "refs/heads/test"1279 is expected to eq "hello world"1280 search1281 returns correct amounts1282 visibility checks1283 shows wiki for guests1284 filtering1285 issues1286 state not provided1287 returns opened and closed results1288 all state1289 returns opened and closed results1290 closed state1291 returns only closed results1292 opened state1293 returns only opened results1294 unsupported state1295 returns only opened results1296 filter not provided (all behavior)1297 returns confidential and not confidential results1298 confidential filter1299 returns only confidential results1300 not confidential filter1301 returns not confidential results1302 merge_requests1303 state not provided1304 returns opened and closed results1305 all state1306 returns opened and closed results1307 closed state1308 returns only closed results1309 opened state1310 returns only opened results1311 unsupported state1312 returns only opened results1313 blobs1314 behaves like search results filtered by language1315 filters by language1316 when the search_blobs_language_aggregation feature flag is disabled1317 does not filter by language1318 confidential issues1319 when the user is non-member1320 does not list project confidential issues for non project members1321 when the member is guest1322 does not list project confidential issues for project members with guest role1323 when the user is the author1324 lists project confidential issues1325 when the user is the assignee1326 lists project confidential issues for assignee1327 when the user is a developer1328 lists project confidential issues1329 when the user is admin1330 when admin mode is enabled1331 lists all project issues1332 when admin mode is disabled1333 does not list project confidential issues1334 users1335 returns an empty list1336 with project members1337 returns users who are members of the project1338 query performance1339 for scope notes1340 makes 1 Elasticsearch query1341 for scope blobs1342 makes 1 Elasticsearch query1343 for scope wiki_blobs1344 makes 1 Elasticsearch query1345 for scope commits1346 makes 1 Elasticsearch query1347 for scope issues1348 makes 1 Elasticsearch query1349 for scope merge_requests1350 makes 1 Elasticsearch query1351 for scope milestones1352 makes 1 Elasticsearch query1353 for scope users1354 makes 1 Elasticsearch query1355 for scope notes1356 makes count query1357 for scope blobs1358 makes count query1359 for scope wiki_blobs1360 makes count query1361 for scope commits1362 makes count query1363 for scope issues1364 makes count query1365 for scope merge_requests1366 makes count query1367 for scope milestones1368 makes count query1369 for scope users1370 makes count query1371 #aggregations1372 scope: "milestones", expected_aggregation_name: nil, feature_flag: false1373 when feature flag is enabled for user1374 behaves like loads aggregations1375 returns the expected aggregations1376 when feature flag is disabled for user1377 behaves like does not load aggregations1378 returns an empty array1379 scope: "notes", expected_aggregation_name: nil, feature_flag: false1380 when feature flag is enabled for user1381 behaves like loads aggregations1382 returns the expected aggregations1383 when feature flag is disabled for user1384 behaves like does not load aggregations1385 returns an empty array1386 scope: "issues", expected_aggregation_name: "labels", feature_flag: :search_issue_label_aggregation1387 when feature flag is enabled for user1388 behaves like loads aggregations1389 returns the expected aggregations1390 when feature flag is disabled for user1391 behaves like does not load aggregations1392 returns an empty array1393 scope: "merge_requests", expected_aggregation_name: nil, feature_flag: false1394 when feature flag is enabled for user1395 behaves like loads aggregations1396 returns the expected aggregations1397 when feature flag is disabled for user1398 behaves like does not load aggregations1399 returns an empty array1400 scope: "wiki_blobs", expected_aggregation_name: nil, feature_flag: false1401 when feature flag is enabled for user1402 behaves like loads aggregations1403 returns the expected aggregations1404 when feature flag is disabled for user1405 behaves like does not load aggregations1406 returns an empty array1407 scope: "commits", expected_aggregation_name: nil, feature_flag: false1408 when feature flag is enabled for user1409 behaves like loads aggregations1410 returns the expected aggregations1411 when feature flag is disabled for user1412 behaves like does not load aggregations1413 returns an empty array1414 scope: "users", expected_aggregation_name: nil, feature_flag: false1415 when feature flag is enabled for user1416 behaves like loads aggregations1417 returns the expected aggregations1418 when feature flag is disabled for user1419 behaves like does not load aggregations1420 returns an empty array1421 scope: "unknown", expected_aggregation_name: nil, feature_flag: false1422 when feature flag is enabled for user1423 behaves like loads aggregations1424 returns the expected aggregations1425 when feature flag is disabled for user1426 behaves like does not load aggregations1427 returns an empty array1428 scope: "blobs", expected_aggregation_name: "language", feature_flag: :search_blobs_language_aggregation1429 when feature flag is enabled for user1430 behaves like loads aggregations1431 returns the expected aggregations1432 when feature flag is disabled for user1433 behaves like does not load aggregations1434 returns an empty array1435 project search specific gates for blob scope1436 when query is blank1437 returns the an empty array1438 when project has an empty repository1439 returns an empty array1440 when user does not have download_code permission on project1441 returns an empty array1442Gitlab::Geo::LogCursor::Daemon1443 #run!1444 traps signals1445 delegates to #run_once! in a loop1446 #run_once!1447Cannot obtain an exclusive lease. There must be another process already in execution.1448 skips execution if cannot achieve a lease1449 skips execution if not a Geo node1450 skips execution if the current node is a primary1451 when the lease block rescues an error1452 when this error is the final straw1453 calls `#exit!`1454 when this error is not the final straw1455 does not call `#exit!`1456 #find_and_handle_events!1457 with some event logs1458 handles events1459 calls #handle_gap_event for each gap the gap tracking finds1460 exits when told to stop1461 when node has namespace restrictions1462 replays events for projects that belong to selected namespaces to replicate1463 does not replay events for projects that do not belong to selected namespaces to replicate1464 detects when an event was skipped1465 detects when an event was skipped between batches1466 logs a message if an associated event can't be found1467 logs a message for skipped events1468 does not replay events for projects that do not belong to selected shards to replicate1469 #handle_events1470 passes the previous batch id on to gap tracking1471 checks for gaps for each id in batch1472 handles every single event1473 #handle_single_event1474 skips execution when no event data is found1475 checks if it can replay the event1476 processes event when it is replayable1477SAST.latest.gitlab-ci.yml1478 the created pipeline1479 when project has no license1480 when SAST_DISABLED=11481 includes no jobs1482 when SAST_EXPERIMENTAL_FEATURES is disabled for iOS projects1483 includes no jobs1484 by default1485 language detection1486 #<RSpec::Parameterized::RefArg:0x00007f16e5ac17c0>1487 when branch pipeline1488 creates a pipeline with the expected jobs1489 when MR pipeline1490 creates a pipeline with the expected jobs1491 #<RSpec::Parameterized::RefArg:0x00007f16e5ac0b18>1492 when branch pipeline1493 creates a pipeline with the expected jobs1494 when MR pipeline1495 creates a pipeline with the expected jobs1496 #<RSpec::Parameterized::RefArg:0x00007f16e5b8ff08>1497 when branch pipeline1498 creates a pipeline with the expected jobs1499 when MR pipeline1500 creates a pipeline with the expected jobs1501 #<RSpec::Parameterized::RefArg:0x00007f16e5b8fd78>1502 when branch pipeline1503 creates a pipeline with the expected jobs1504 when MR pipeline1505 creates a pipeline with the expected jobs1506 #<RSpec::Parameterized::RefArg:0x00007f16e5b8fbe8>1507 when branch pipeline1508 creates a pipeline with the expected jobs1509 when MR pipeline1510 creates a pipeline with the expected jobs1511 Apex1512 when branch pipeline1513 creates a pipeline with the expected jobs1514 when MR pipeline1515 creates a pipeline with the expected jobs1516 C1517 when branch pipeline1518 creates a pipeline with the expected jobs1519 when MR pipeline1520 creates a pipeline with the expected jobs1521 C++1522 when branch pipeline1523 creates a pipeline with the expected jobs1524 when MR pipeline1525 creates a pipeline with the expected jobs1526 C#1527 when branch pipeline1528 creates a pipeline with the expected jobs1529 when MR pipeline1530 creates a pipeline with the expected jobs1531 C#1532 when branch pipeline1533 creates a pipeline with the expected jobs1534 when MR pipeline1535 creates a pipeline with the expected jobs1536 Elixir1537 when branch pipeline1538 creates a pipeline with the expected jobs1539 when MR pipeline1540 creates a pipeline with the expected jobs1541 Golang1542 when branch pipeline1543 creates a pipeline with the expected jobs1544 when MR pipeline1545 creates a pipeline with the expected jobs1546 Groovy1547 when branch pipeline1548 creates a pipeline with the expected jobs1549 when MR pipeline1550 creates a pipeline with the expected jobs1551 #<RSpec::Parameterized::RefArg:0x00007f16e5b8ef18>1552 when branch pipeline1553 creates a pipeline with the expected jobs1554 when MR pipeline1555 creates a pipeline with the expected jobs1556 #<RSpec::Parameterized::RefArg:0x00007f16e5b8ed60>1557 when branch pipeline1558 creates a pipeline with the expected jobs1559 when MR pipeline1560 creates a pipeline with the expected jobs1561 Java1562 when branch pipeline1563 creates a pipeline with the expected jobs1564 when MR pipeline1565 creates a pipeline with the expected jobs1566 Java with MobSF1567 when branch pipeline1568 creates a pipeline with the expected jobs1569 when MR pipeline1570 creates a pipeline with the expected jobs1571 Java without MobSF1572 when branch pipeline1573 creates a pipeline with the expected jobs1574 when MR pipeline1575 creates a pipeline with the expected jobs1576 Javascript1577 when branch pipeline1578 creates a pipeline with the expected jobs1579 when MR pipeline1580 creates a pipeline with the expected jobs1581 JSX1582 when branch pipeline1583 creates a pipeline with the expected jobs1584 when MR pipeline1585 creates a pipeline with the expected jobs1586 Javascript Node1587 when branch pipeline1588 creates a pipeline with the expected jobs1589 when MR pipeline1590 creates a pipeline with the expected jobs1591 HTML1592 when branch pipeline1593 creates a pipeline with the expected jobs1594 when MR pipeline1595 creates a pipeline with the expected jobs1596 Kubernetes Manifests1597 when branch pipeline1598 creates a pipeline with the expected jobs1599 when MR pipeline1600 creates a pipeline with the expected jobs1601 Multiple languages1602 when branch pipeline1603 creates a pipeline with the expected jobs1604 when MR pipeline1605 creates a pipeline with the expected jobs1606 PHP1607 when branch pipeline1608 creates a pipeline with the expected jobs1609 when MR pipeline1610 creates a pipeline with the expected jobs1611 Python1612 when branch pipeline1613 creates a pipeline with the expected jobs1614 when MR pipeline1615 creates a pipeline with the expected jobs1616 Ruby1617 when branch pipeline1618 creates a pipeline with the expected jobs1619 when MR pipeline1620 creates a pipeline with the expected jobs1621 Scala1622 when branch pipeline1623 creates a pipeline with the expected jobs1624 when MR pipeline1625 creates a pipeline with the expected jobs1626 Typescript1627 when branch pipeline1628 creates a pipeline with the expected jobs1629 when MR pipeline1630 creates a pipeline with the expected jobs1631 Typescript JSX1632 when branch pipeline1633 creates a pipeline with the expected jobs1634 when MR pipeline1635 creates a pipeline with the expected jobs1636 Visual Basic1637 when branch pipeline1638 creates a pipeline with the expected jobs1639 when MR pipeline1640 creates a pipeline with the expected jobs1641Notes::QuickActionsService1642 /epic1643 when epics are not enabled1644 does not assign the epic1645 when epics are enabled1646 on an issue1647 assigns the issue to the epic1648 leaves the note empty1649 creates a system note1650 on an incident1651 leaves the note empty1652 does not assigns the issue to the epic1653 on a merge request1654 leaves the note empty1655 /remove_epic1656 when epics are not enabled1657 does not remove the epic1658 when epics are enabled1659 on an issue1660 removes the epic1661 leaves the note empty1662 creates a system note1663 on an incident1664 leaves the note empty1665 on a test case1666 leaves the note empty1667 on a merge request1668 leaves the note empty1669 Epics1670 /close1671 when epics are not enabled1672 does not close the epic1673 when epics are enabled1674 closes the epic1675 leaves the note empty1676 /reopen1677 when epics are not enabled1678 does not reopen the epic1679 when epics are enabled1680 reopens the epic1681 leaves the note empty1682 /label1683 when epics are not enabled1684 does not add a label to the epic1685 when epics are enabled1686 adds a group label to the epic1687 leaves the note empty1688 /unlabel1689 when epics are not enabled1690 does not remove any label1691 when epics are enabled1692 removes a requested label from the epic1693 leaves the note empty1694 /assign_reviewer1695 with a merge request1696 behaves like assigns one or more reviewers to the merge request1697 adds multiple reviewers from the list1698 behaves like assigns one or more reviewers to the merge request1699 adds multiple reviewers from the list1700 /assign1701 Issue assignees1702 adds multiple assignees from the list1703 behaves like assigning an already assigned user1704 adds multiple assignees from the list1705 behaves like assigning an already assigned user1706 adds multiple assignees from the list1707 MergeRequest1708 behaves like assigning an already assigned user1709 adds multiple assignees from the list1710 behaves like assigning an already assigned user1711 adds multiple assignees from the list1712 /unassign1713 Issue assignees1714 behaves like unassigning a not assigned user1715 adds multiple assignees from the list1716 behaves like unassigning a not assigned user1717 adds multiple assignees from the list1718 MergeRequest1719 behaves like unassigning a not assigned user1720 adds multiple assignees from the list1721 behaves like unassigning a not assigned user1722 adds multiple assignees from the list1723 /unassign_reviewer1724 with a merge request1725 behaves like unassigning one or more reviewers1726 removes multiple reviewers from the list1727 behaves like unassigning one or more reviewers1728 removes multiple reviewers from the list1729 /promote1730 when epics are enabled1731 when a user does not have permissions to promote an issue1732 does not promote an issue to an epic1733 when a user has permissions to promote an issue1734 promotes an issue to an epic1735 with a double promote1736 only creates one epic1737 when issue was already promoted1738 does not promote issue1739 when an issue belongs to a project without group1740 does not promote an issue to an epic1741 on an incident1742 does not promote to an epic1743 when epics are disabled1744 does not promote an issue to an epic1745 with issue types1746 when issue does not support quick actions1747 for requirement1748 behaves like note on issue type that does not support time tracking1749 /spend1750 does not change time spent1751 /estimate1752 does not execute time estimate1753 for test case1754 behaves like note on issue type that does not support time tracking1755 /spend1756 does not change time spent1757 /estimate1758 does not execute time estimate1759GeoNode1760 associations1761 is expected to belong to oauth_application class_name => Doorkeeper::Application required: false dependent => destroy1762 is expected to have many geo_node_namespace_links1763 is expected to have many namespaces through geo_node_namespace_links1764 validations1765 is expected to validate that :selective_sync_type is either ‹nil›, ‹"namespaces"›, or ‹"shards"›1766 is expected to validate that :repos_max_capacity looks like a number greater than or equal to 01767 is expected to validate that :files_max_capacity looks like a number greater than or equal to 01768 is expected to validate that :verification_max_capacity looks like a number greater than or equal to 01769 is expected to validate that :container_repositories_max_capacity looks like a number greater than or equal to 01770 is expected to validate that :minimum_reverification_interval looks like a number greater than or equal to 11771 is expected to validate that :name cannot be empty/falsy1772 is expected to validate that :url cannot be empty/falsy1773 is expected to validate that :name is case-insensitively unique1774 is expected to validate that the length of :name is at most 2551775 when validating primary node1776 cannot be disabled1777 when validating url1778 when url is http1779 is expected to be valid1780 when url is https1781 is expected to be valid1782 when url is not http or https1783 is expected not to be valid1784 when an existing GeoNode has the same url but different name1785 is expected to be valid1786 when validating internal_url1787 when internal_url is http1788 is expected to be valid1789 when internal_url is https1790 is expected to be valid1791 when internal_url is not http or https1792 is expected not to be valid1793 when validating requirement for hashed storage1794 when hashed storage is enabled1795 is expected to be valid1796 when hashed_storage is disabled1797 is expected to be invalid1798 default values1799 attribute: :repos_max_capacity, value: 251800 is expected to eq 251801 attribute: :files_max_capacity, value: 101802 is expected to eq 101803 attribute: :container_repositories_max_capacity, value: 101804 is expected to eq 101805 attribute: :sync_object_storage, value: false1806 is expected to eq false1807 prevent locking yourself out1808 does not accept adding a non primary node with same details as current_node1809 dependent models and attributes for GeoNode1810 when validating1811 when it is a secondary node1812 overwrites name, and redirect_uri attributes1813 when the oauth_application is missing1814 builds an oauth_application1815 when it is a primary node1816 when it does not have an oauth_application1817 does not create an oauth_application1818 when it has an oauth_application1819 destroys the oauth_application1820 when clone_url_prefix is nil1821 sets current clone_url_prefix1822 when clone_url_prefix has changed1823 sets current clone_url_prefix1824 when saving1825 when url is changed1826 updates the associated OAuth application's redirect_uri1827 cache expiration1828 expires cache when saved1829 expires cache when removed1830 .primary_node1831 returns the primary1832 returns nil if there is no primary1833 .secondary_nodes1834 returns all secondary nodes1835 returns empty array if there are not any secondary nodes1836 .unhealthy_nodes1837 returns a node without status1838 returns a node not having a cursor last event id1839 returns a node with missing status check timestamp1840 returns a node with an old status check timestamp1841 .min_cursor_last_event_id1842 returns the minimum of cursor_last_event_id across all nodes1843 .find_by_oauth_application_id1844 when the Geo node exists1845 returns the Geo node1846 when the Geo node does not exist1847 returns nil1848 #repair1849 creates an oauth application for a Geo secondary node1850 .current?1851 returns true when node is the current node1852 returns false when node is not the current node1853 #uri1854 when url is set1855 returns an URI object1856 includes schema, host, port and relative_url_root with a terminating /1857 when url is not yet set1858 returns nil1859 #name1860 adds a trailing forward slash when name looks like url field missing slash1861 does not add a trailing forward slash when name does not looks like url field1862 does not add a trailing forward slash when name is nil1863 does not add a trailing forward slash when name is an empty string1864 #name=1865 adds a trailing forward slash when name looks like url field missing slash1866 does not add a trailing forward slash when name does not looks like url field1867 #url1868 returns a string1869 includes schema home port and relative_url with a terminating /1870 #url=1871 sets schema field based on url1872 sets host field based on url1873 sets port field based on specified by url1874 when using unspecified ports1875 when schema is http1876 sets port 801877 when schema is https1878 sets port 4431879 #internal_url1880 returns a string1881 includes schema home port and relative_url with a terminating /1882 falls back to url1883 resets internal_url if it matches #url1884 #internal_url=1885 sets schema field based on url1886 sets host field based on url1887 sets port field based on specified by url1888 when using unspecified ports1889 when schema is http1890 sets port 801891 when schema is https1892 sets port 4431893 #omniauth_host_url1894 returns a string1895 is the URL without the trailing slash1896 includes schema home port and relative_url without a terminating /1897 #geo_retrieve_url1898 returns api url based on node uri1899 #geo_status_url1900 returns api url based on node uri1901 #node_api_url1902 returns an api url based on the node uri and provided node id1903 #graphql_url1904 returns an api url to the graphql endpoint1905 #snapshot_url1906 returns snapshot URL based on node URI1907 adds ?wiki=1 to the snapshot URL when the repository is a wiki1908 #find_or_build_status1909 returns a new status1910 #oauth_callback_url1911 returns oauth callback url based on node uri1912 returns url that matches rails url_helpers generated one1913 #oauth_logout_url1914 returns oauth logout url based on node uri1915 returns url that matches rails url_helpers generated one1916 #geo_projects_url1917 returns the Geo Projects url for the specific node1918 returns nil when node is a primary one1919 #geo_replication_details_url1920 returns the Geo Replicables url for the specific node1921 returns nil when node is a primary one1922 #missing_oauth_application?1923 returns false when present1924 returns true when it is not present1925 on a primary node1926 returns false1927 #projects_include?1928 returns true without selective sync1929 selective sync by namespaces1930 returns true when project belongs to one of the namespaces1931 returns false when project does not belong to one of the namespaces1932 selective sync by shards1933 returns true when project belongs to one of the namespaces1934 returns false when project does not belong to one of the namespaces1935 #projects1936 returns all projects without selective sync1937 returns projects that belong to the namespaces with selective sync by namespace1938 returns projects that belong to the shards with selective sync by shard1939 returns nothing if an unrecognised selective sync type is used1940 #selective_sync?1941 returns true when selective sync is by namespaces1942 returns true when selective sync is by shards1943 returns false when selective sync is disabled1944 #name=1945 before validation1946 strips leading and trailing whitespace1947 #container_repositories1948 with registry replication disabled1949 returns an empty relation1950 without selective sync1951 returns all container repositories1952 with selective sync by namespace1953 excludes container repositories that are not in selectively synced projects1954 with selective sync by shard1955 excludes container repositories that are not in selectively synced shards1956 #lfs_objects1957 without selective sync1958 returns all projects without selective sync1959 with selective sync by namespace1960 excludes LFS objects that are not in selectively synced projects1961 excludes LFS objects from fork networks1962 with selective sync by shard1963 excludes LFS objects that are not in selectively synced shards1964 excludes LFS objects from fork networks1965EpicsFinder1966 #execute1967 when epics feature is disabled1968 raises an exception1969 when epics feature is enabled1970 without param1971 raises an error when group_id param is missing1972 when user can not read epics of a group1973 returns empty collection1974 with correct params1975 returns all epics that belong to the given group1976 does not execute more than 5 SQL queries1977 sorting1978 sorts correctly when supported sorting param provided1979 sorts by id when not supported sorting param provided1980 by created_at1981 returns all epics created before the given date1982 returns all epics created after the given date1983 returns all epics created within the given interval1984 by search1985 returns all epics that match the search1986 with anonymous user1987 with disable_anonymous_search feature flag enabled1988 does not perform search1989 with disable_anonymous_search feature flag disabled1990 returns matching epics1991 by user reaction emoji1992 returns epics reacted to by user1993 by author1994 returns all epics authored by the given user1995 using OR1996 returns all epics authored by any of the given users1997 when feature flag is disabled1998 does not add any filter1999 by label2000 returns all epics with given label2001 with scoped label wildcard2002 returns all epics that match the wildcard2003 by state2004 returns all epics with given state2005 when subgroups are supported2006 returns all epics that belong to the given group and its subgroups2007 does not return confidential epic if user has no permissions to read them2008 does not execute more than 5 SQL queries2009 does not execute more than 6 SQL queries when checking namespace plans2010 hierarchy params2011 excludes ancestor groups and includes descendant groups by default2012 when user is a member of a subgroup project2013 gets only epics from the project ancestor groups2014 when user is a member of an ancestor group that is not the root ancestor2015 when include_ancestor_groups is false2016 includes subgroups confidential epics and no epics from ancestors2017 when include_ancestor_groups is true2018 includes subgroups confidential epics and epics from ancestors2019 when include_descendant_groups is false2020 and include_ancestor_groups is false2021 is expected to contain exactly #<Epic id:41 group268/group271&1>2022 and include_ancestor_groups is true2023 is expected to contain exactly #<Epic id:41 group268/group271&1>, #<Epic id:31 group268&1>, #<Epic id:33 group268&3>, #<Epic id:32 group268&2>, and #<Epic id:34 group268&4>2024 when user does not have permission to view ancestor groups2025 is expected to contain exactly #<Epic id:41 group268/group271&1>2026 when include_descendant_groups is true (by default)2027 and include_ancestor_groups is false2028 is expected to contain exactly #<Epic id:41 group268/group271&1>, #<Epic id:42 group268/group271/group272&1>, and #<Epic id:43 group268/group271/group272&2>2029 and include_ancestor_groups is true2030 is expected to contain exactly #<Epic id:41 group268/group271&1>, #<Epic id:42 group268/group271/group272&1>, #<Epic id:31 group268&1>, #<Epic id:33 group268&3>, #<Epic id:32 group268&2>, #<Epic id:34 group268&4>, and #<Epic id:43 group268/group271/group272&2>2031 when user does not have permission to view ancestor groups2032 is expected to contain exactly #<Epic id:41 group268/group271&1> and #<Epic id:42 group268/group271/group272&1>2033 when user is a guest of top level group2034 does not have N+1 queries for subgroups2035 by timeframe2036 returns epics which start in the timeframe2037 returns epics which end in the timeframe2038 returns epics which start before and end after the timeframe2039 when one of the timeframe params are missing2040 does not filter by timeframe if start_date is missing2041 does not filter by timeframe if end_date is missing2042 by parent2043 returns direct children of the parent2044 when `top_level_hierarchy_only` param is true2045 returns only top level epics2046 when `parent_id` param is present2047 ignores top_level_hierarchy_only param and returns direct children of the parent2048 by child2049 returns ancestors of the child epic ordered from the bottom2050 returns ancestors of the child epic ordered from the top if requested2051 by confidential2052 returns only confidential epics when confidential is true2053 does not include confidential epics when confidential is false2054 by iids2055 returns the specified epics2056 does not return epics from the sub-group with the same iid2057 by milestone2058 with no hierarchy2059 returns empty result if the milestone is not present2060 behaves like filtered by milestone2061 returns expected epics2062 behaves like filtered by milestone2063 returns expected epics2064 with hierarchy2065 when include_descendant_groups is true2066 returns results with all milestones matching given title2067 behaves like filtered by milestone2068 returns expected epics2069 behaves like filtered by milestone2070 returns expected epics2071 when include_ancestor_groups is true2072 behaves like filtered by milestone2073 returns expected epics2074 behaves like filtered by milestone2075 returns expected epics2076 when include_descendant_groups is true2077 returns expected epics when filtering by group milestone2078 behaves like filtered by milestone2079 returns expected epics2080 when a project is restricted2081 does not return epic if user can not access project2082 does not return epics if user can not access project issues2083 when using iid starts with query2084 returns the expected epics if just the first two numbers are given2085 returns the expected epics if the exact id is given2086 is empty if the last number is given2087 fails if iid_starts_with contains a non-numeric string2088 fails if iid_starts_with contains a non-numeric string with line breaks2089 fails if iid_starts_with contains a string which contains a negative number2090 when using group cte for search2091 and two labels more search string are present2092 returns correct epics2093 filters correctly by short expressions when sorting by due date2094 with confidential epics2095 when user is not set2096 returns only public epics in public groups2097 behaves like avoids N+1 queries2098 avoids N+1 queries on searched groups2099 when user is not member of any groups being searched2100 returns only public epics in public and internal groups2101 behaves like avoids N+1 queries2102 avoids N+1 queries on searched groups2103 when skip_visibility_check is true2104 returns all epics2105 when user is member of ancestor group2106 returns all nested epics2107 does not check permission for subgroups because user inherits permission2108 behaves like avoids N+1 queries2109 avoids N+1 queries on searched groups2110 when user is member of private subgroup2111 returns also confidential epics from this subgroup2112 does not execute more than 17 SQL queries2113 checks permission for each subgroup2114 when user is a guest in the base group2115 does not return any confidential epics in the base or subgroups2116 when user is member of public subgroup2117 returns also confidential epics from this subgroup2118 with negated labels2119 returns all epics if no negated labels are present2120 returns all epics without negated label2121 with negated author2122 returns all epics if no negated author is present2123 returns all epics without given author2124 with negated reaction emoji2125 returns all epics without given emoji name2126 .valid_iid_query?2127 query: "foo", expected_result: false2128 is expected to eq false2129 query: "-1", expected_result: false2130 is expected to eq false2131 query: "1\nfoo", expected_result: false2132 is expected to eq false2133 query: "foo\n1", expected_result: false2134 is expected to eq false2135 query: "1", expected_result: true2136 is expected to eq true2137 #row_count2138 returns number of rows when epics are grouped2139 #count_by_state2140 returns correct counts2141 returns -1 if the query times out2142 when using group cte for search2143 returns correct counts when search string is used2144Geo::JobArtifactRegistry2145 factory is valid2146 scopes2147 sync_timed_out2148 return correct records2149 finders2150 .find_registries_never_attempted_sync2151 returns unsynced items2152 returns items that never have an attempt to sync except some specific item ID2153 .find_registries_needs_sync_again2154 returns failed items2155 returns failed items except some specific item ID2156 orders records according to retry_at2157 .fail_sync_timeouts2158 marks started records as failed if they are expired2159 #failed!2160 sets last_sync_failure with message2161 truncates a long last_sync_failure2162 increments retry_count2163 sets retry_at to a time in the future2164 when an error is given2165 includes error.message in last_sync_failure2166 when missing_on_primary is not given2167 caps retry_at to default 1 hour2168 when missing_on_primary is falsey2169 caps retry_at to default 1 hour2170 when missing_on_primary is truthy2171 caps retry_at to 4 hours2172 state machine2173 when transitioning to synced2174 marks verification as pending2175 when the model_record cannot be verified2176 when the registry is already verification_disabled2177 changes verification to disabled2178 when the registry is verification_pending2179 changes verification to disabled2180 verification_state machine2181 when transitioning to verification_failed2182 changes state from synced to failed2183 .verification_pending_batch2184 returns IDs of rows which are synced and pending verification2185 excludes rows which are not synced or are not pending verification2186 marks verification as started2187 .verification_failed_batch2188 with a failed record with retry due2189 returns IDs of rows which are synced and have failed verification2190 excludes rows which are not synced or have not failed verification2191 marks verification as started2192 when verification_retry_at is in the future2193 does not return the row which failed verification2194 .needs_verification_count2195 returns the number of rows which are synced and pending verification2196 includes rows which are synced and failed verification and are due for retry2197 excludes rows which are synced and failed verification and have a future retry time2198 excludes rows which are not synced or are not (pending or failed) verification2199 #verification_succeeded!2200 clears checksum mismatch fields2201 #track_checksum_attempt!2202 yields to the checksum calculation2203 when verification was not yet started2204 starts verification2205 when the model record cannot be verified2206 when the registry is already verification_disabled2207 leaves verification as disabled2208 when the registry is verification_pending2209 changes verification to disabled2210 when the primary site is expected to checksum the model record2211 comparison with primary checksum2212 when the calculated checksum matches the primary checksum2213 transitions to verification_succeeded and updates the checksum2214 when the calculated checksum does not match the primary checksum2215 transitions to verification_failed and updates mismatch fields2216 when verification was started2217 does not update verification_started_at2218 when an error occurs while yielding2219 sets verification_failed2220Dast::ProfileSchedule2221 associations2222 is expected to belong to project required: false2223 is expected to belong to dast_profile class_name => Dast::Profile required: true inverse_of => dast_profile_schedule2224 is expected to belong to owner class_name => User required: false2225 validations2226 is expected to be valid2227 is expected to validate that :timezone cannot be empty/falsy2228 is expected to validate that :timezone is either ‹"Etc/GMT+12"›, ‹"Pacific/Pago_Pago"›, ‹"Pacific/Midway"›, ‹"Pacific/Honolulu"›, ‹"America/Juneau"›, ‹"America/Los_Angeles"›, ‹"America/Tijuana"›, ‹"America/Phoenix"›, ‹"America/Mazatlan"›, ‹"America/Denver"›, ‹"America/Guatemala"›, ‹"America/Chicago"›, ‹"America/Chihuahua"›, ‹"America/Mexico_City"›, ‹"America/Mexico_City"›, ‹"America/Monterrey"›, ‹"America/Regina"›, ‹"America/Bogota"›, ‹"America/New_York"›, ‹"America/Indiana/Indianapolis"›, ‹"America/Lima"›, ‹"America/Lima"›, ‹"America/Halifax"›, ‹"America/Caracas"›, ‹"America/Guyana"›, ‹"America/La_Paz"›, ‹"America/Puerto_Rico"›, ‹"America/Santiago"›, ‹"America/St_Johns"›, ‹"America/Sao_Paulo"›, ‹"America/Argentina/Buenos_Aires"›, ‹"America/Godthab"›, ‹"America/Montevideo"›, ‹"Atlantic/South_Georgia"›, ‹"Atlantic/Azores"›, ‹"Atlantic/Cape_Verde"›, ‹"Europe/London"›, ‹"Europe/Lisbon"›, ‹"Europe/London"›, ‹"Africa/Monrovia"›, ‹"Etc/UTC"›, ‹"Europe/Amsterdam"›, ‹"Europe/Belgrade"›, ‹"Europe/Berlin"›, ‹"Europe/Zurich"›, ‹"Europe/Bratislava"›, ‹"Europe/Brussels"›, ‹"Europe/Budapest"›, ‹"Africa/Casablanca"›, ‹"Europe/Copenhagen"›, ‹"Europe/Dublin"›, ‹"Europe/Ljubljana"›, ‹"Europe/Madrid"›, ‹"Europe/Paris"›, ‹"Europe/Prague"›, ‹"Europe/Rome"›, ‹"Europe/Sarajevo"›, ‹"Europe/Skopje"›, ‹"Europe/Stockholm"›, ‹"Europe/Vienna"›, ‹"Europe/Warsaw"›, ‹"Africa/Algiers"›, ‹"Europe/Zagreb"›, ‹"Europe/Zurich"›, ‹"Europe/Athens"›, ‹"Europe/Bucharest"›, ‹"Africa/Cairo"›, ‹"Africa/Harare"›, ‹"Europe/Helsinki"›, ‹"Asia/Jerusalem"›, ‹"Europe/Kaliningrad"›, ‹"Europe/Kiev"›, ‹"Africa/Johannesburg"›, ‹"Europe/Riga"›, ‹"Europe/Sofia"›, ‹"Europe/Tallinn"›, ‹"Europe/Vilnius"›, ‹"Asia/Baghdad"›, ‹"Europe/Istanbul"›, ‹"Asia/Kuwait"›, ‹"Europe/Minsk"›, ‹"Europe/Moscow"›, ‹"Africa/Nairobi"›, ‹"Asia/Riyadh"›, ‹"Europe/Moscow"›, ‹"Europe/Volgograd"›, ‹"Asia/Tehran"›, ‹"Asia/Muscat"›, ‹"Asia/Baku"›, ‹"Asia/Muscat"›, ‹"Europe/Samara"›, ‹"Asia/Tbilisi"›, ‹"Asia/Yerevan"›, ‹"Asia/Kabul"›, ‹"Asia/Yekaterinburg"›, ‹"Asia/Karachi"›, ‹"Asia/Karachi"›, ‹"Asia/Tashkent"›, ‹"Asia/Kolkata"›, ‹"Asia/Kolkata"›, ‹"Asia/Kolkata"›, ‹"Asia/Kolkata"›, ‹"Asia/Colombo"›, ‹"Asia/Kathmandu"›, ‹"Asia/Almaty"›, ‹"Asia/Dhaka"›, ‹"Asia/Dhaka"›, ‹"Asia/Urumqi"›, ‹"Asia/Rangoon"›, ‹"Asia/Bangkok"›, ‹"Asia/Bangkok"›, ‹"Asia/Jakarta"›, ‹"Asia/Krasnoyarsk"›, ‹"Asia/Novosibirsk"›, ‹"Asia/Shanghai"›, ‹"Asia/Chongqing"›, ‹"Asia/Hong_Kong"›, ‹"Asia/Irkutsk"›, ‹"Asia/Kuala_Lumpur"›, ‹"Australia/Perth"›, ‹"Asia/Singapore"›, ‹"Asia/Taipei"›, ‹"Asia/Ulaanbaatar"›, ‹"Asia/Tokyo"›, ‹"Asia/Tokyo"›, ‹"Asia/Seoul"›, ‹"Asia/Tokyo"›, ‹"Asia/Yakutsk"›, ‹"Australia/Adelaide"›, ‹"Australia/Darwin"›, ‹"Australia/Brisbane"›, ‹"Australia/Melbourne"›, ‹"Pacific/Guam"›, ‹"Australia/Hobart"›, ‹"Australia/Melbourne"›, ‹"Pacific/Port_Moresby"›, ‹"Australia/Sydney"›, ‹"Asia/Vladivostok"›, ‹"Asia/Magadan"›, ‹"Pacific/Noumea"›, ‹"Pacific/Guadalcanal"›, ‹"Asia/Srednekolymsk"›, ‹"Pacific/Auckland"›, ‹"Pacific/Fiji"›, ‹"Asia/Kamchatka"›, ‹"Pacific/Majuro"›, ‹"Pacific/Auckland"›, ‹"Pacific/Chatham"›, ‹"Pacific/Tongatapu"›, ‹"Pacific/Apia"›, or ‹"Pacific/Fakaofo"›2229 is expected to validate that :starts_at cannot be empty/falsy2230 is expected to validate that :dast_profile_id is case-sensitively unique2231 cadence2232 when valid values2233 allows day values2234 allows week values2235 allows month values2236 allows month values2237 allows month values2238 allows year values2239 allows values2240 when invalid values2241 disallow day values2242 disallow month_foo values2243 validate2244 validate_plan_limit_not_exceeded_while_activating2245 when the plan limit has not been exceeded2246 can activate the schedule2247 when the plan limit has been exceeded2248 prevents the schedule from being activated2249 allows the schedule to be deactivated2250 scopes2251 active2252 includes the correct records2253 .runnable_schedules2254 when there are runnable schedules2255 returns the runnable schedule2256 when there are inactive schedules2257 returns an empty array2258 when there are no runnable schedules2259 returns an empty array2260 when there are runnable schedules in future2261 returns an empty array2262 before_save2263 #set_cron2264 when repeat? is true2265 sets the cron value2266 when repeat? is false2267 sets the cron value to default when non repeating2268 #set_next_run_at2269 when schedule runs every minute2270 updates next_run_at to the worker's execution time2271 when there are two different schedules in the same time zones2272 sets the sames next_run_at2273 when starts_at is updated for existing schedules2274 updates next_run_at automatically2275 #schedule_next_run!2276 when repeat? is true2277 sets active to true2278 when repeat? is false2279 sets active to false2280 limitable2281 behaves like includes Limitable concern2282 #exceeds_limits?2283 without plan limits configured2284 is expected to eq false2285 without plan limits configured2286 is expected to eq false2287 with an existing model2288 is expected to eq true2289 validations2290 is expected to be a kind of Limitable2291 without plan limits configured2292 can create new models2293 with plan limits configured2294 can create new models2295 with an existing model2296 cannot create new models exceeding the plan limits2297 #with_active_schedules2298 returns only active schedules2299 #owner_valid?2300 when the feature is enabled2301 when the scheduler owner is not null and has the ability to create_on_demand_dast_scan2302 is expected to be owner valid2303 when the user_id is nil2304 is expected not to be owner valid2305MergeRequests::CreatePipelineService2306 #execute2307 responds with success2308 when push options contain ci.skip2309 creates a skipped pipeline2310 when merge request is a draft2311 behaves like merged result pipeline2312 creates a merge result pipeline2313 when legacy_merge_request_state_check_for_merged_result_pipelines feature flag is enabled2314 behaves like detached merge request pipeline2315 creates a detached merge request pipeline2316 responds with success2317 when merge request requires an approval2318 behaves like merged result pipeline2319 creates a merge result pipeline2320 when project setting for merge request pipelines is disabled2321 behaves like detached merge request pipeline2322 creates a detached merge request pipeline2323 responds with success2324 when merge request is submitted from fork2325 behaves like detached merge request pipeline2326 creates a detached merge request pipeline2327 responds with success2328 when the CreateService is retried2329 does not create a merge request pipeline twice2330 when merge request has no commit2331 behaves like detached merge request pipeline2332 creates a detached merge request pipeline2333 responds with success2334 when merge request has a conflict2335 behaves like detached merge request pipeline2336 creates a detached merge request pipeline2337 responds with success2338 when workflow:rules are specified2339 when bridge job is used2340 behaves like detached merge request pipeline2341 creates a detached merge request pipeline2342 responds with success2343 when .gitlab-ci.yml is invalid2344 persists a pipeline with a config error2345 responds with error2346ApprovalRules::CreateService2347 when target is project2348 behaves like creatable2349 basic creation action2350 creates approval, excluding non-eligible users and groups2351 tracks creation event via a usage counter2352 when some users and groups are eligible2353 creates and includes eligible users and groups2354 when group is a subgroup with indirect permissions2355 creates and includes eligible groups and subgroups2356 when validation fails2357 returns error message2358 behaves like does not record an onboarding progress action2359 is expected not to receive new(*(any args)) 0 times2360 when user does not have right to admin project2361 returns error message2362 but skip_authorization is true2363 does not return error message2364 when approval rule with empty users and groups is being created2365 sets default attributes for any-approver rule2366 when any-approver rule exists2367 multiple approval rules are not enabled2368 removes the rule if a regular one is created2369 multiple approval rules are enabled2370 does not remove any approval rule2371 behaves like records an onboarding progress action2372 is expected to receive execute({:action=>:required_mr_approvals_enabled}) 1 time2373 when protected_branch_ids param is present2374 and multiple approval rules is enabled2375 associates the approval rule to the protected branch2376 but user cannot administer project2377 does not associate the approval rule to the protected branch2378 but skip_authorization param is true2379 associates the approval rule to the protected branch2380 but protected branch is for another project2381 does not associate the approval rule to the protected branch2382 and multiple approval rules is disabled2383 does not associate the approval rule to the protected branch2384 with rule_type set to :report_approver2385 without report_type2386 is expected to eq :error2387 with report_type set to any of valid value2388 rule_name: "License-Check", report_type: :license_scanning2389 is expected to eq :success2390 is expected to eq 12391 is expected to eq "report_approver"2392 rule_name: "Coverage-Check", report_type: :code_coverage2393 is expected to eq :success2394 is expected to eq 12395 is expected to eq "report_approver"2396 when target is merge request2397 behaves like creatable2398 basic creation action2399 creates approval, excluding non-eligible users and groups2400 tracks creation event via a usage counter2401 when some users and groups are eligible2402 creates and includes eligible users and groups2403 when group is a subgroup with indirect permissions2404 creates and includes eligible groups and subgroups2405 when validation fails2406 returns error message2407 behaves like does not record an onboarding progress action2408 is expected not to receive new(*(any args)) 0 times2409 when user does not have right to admin project2410 returns error message2411 but skip_authorization is true2412 does not return error message2413 when approval rule with empty users and groups is being created2414 sets default attributes for any-approver rule2415 when any-approver rule exists2416 multiple approval rules are not enabled2417 removes the rule if a regular one is created2418 multiple approval rules are enabled2419 does not remove any approval rule2420 behaves like records an onboarding progress action2421 is expected to receive execute({:action=>:required_mr_approvals_enabled}) 1 time2422 when project rule id is present2423 associates with project rule and copies its properites2424 when project rule includes no specific approvers2425 associates with project rule and copies its properties2426 when merge request includes empty approvers2427 sets any approver2428 when merge request overrides approvers2429 sets single user as the approver2430 when project rule is under the same project as MR2431 ignores assignment2432 does not copy properties from project rule2433 audit event is streamed with correct event type2434 behaves like sends correct event type in audit event stream2435 sends correct event type in audit event stream2436MergeRequestBlock2437 associations2438 is expected to belong to blocking_merge_request class_name => MergeRequest required: false2439 is expected to belong to blocked_merge_request class_name => MergeRequest required: false2440 validations2441 is expected to validate that :blocking_merge_request cannot be empty/falsy2442 is expected to validate that :blocked_merge_request cannot be empty/falsy2443 forbids the blocking MR from being the blocked MR2444 allows an MR to block multiple MRs2445 allows an MR to be blocked by multiple MRs2446 allows blocks to be intra-project2447 forbids duplicate blocks2448 forbids blocking MR from becoming blocked2449 forbids blocked MR from becoming a blocker2450 .with_blocking_mr_ids2451 returns blocks with a matching blocking_merge_request_id2452 eager-loads the blocking MRs2453Geo::RepositorySyncService2454 behaves like geo base sync execution2455 #execute2456 when can acquire exclusive lease2457 executes the synchronization2458 when exclusive lease is not acquired2459 is does not execute synchronization2460 behaves like geo base sync fetch2461 #sync_repository2462 tells registry that sync will start now2463 #fetch_repository2464 cleans up temporary repository2465 syncs the HEAD ref2466 with existing repository2467 fetches repository from geo node2468 with a never synced repository2469 clones repository from geo node2470 behaves like reschedules sync due to race condition instead of waiting for backfill2471 #mark_sync_as_successful2472 when RepositoryUpdatedEvent was processed during a sync2473 reschedules the sync2474 #execute2475 returns the lease when succeed2476 returns the lease when sync fail2477 does not fetch project repository if cannot obtain a lease2478 fetches project repository with JWT credentials2479 expires repository caches2480 voids the failure message when it succeeds after an error2481 rescues when Gitlab::Shell::Error is raised2482 rescues exception and fires after_create hook when Gitlab::Git::Repository::NoRepository is raised2483 increases retry count when Gitlab::Git::Repository::NoRepository is raised2484 marks sync as successful if no repository found2485 marks resync as true after a failure2486 marks primary_repository_checksummed as true when repository has been verified on primary2487 marks primary_repository_checksummed as false when repository has not been verified on primary2488 repository presumably exists on primary2489 increases retry count if no repository found2490 tracking database2491 creates a new registry if does not exists2492 does not create a new registry if one exist2493 temporary repositories2494 there is a leftover repository2495 removes leftover repository2496 when repository sync succeed2497 sets last_repository_synced_at2498 sets last_repository_successful_sync_at2499 resets the repository_verification_checksum_sha2500 resets the last_repository_verification_failure2501 resets the repository_checksum_mismatch2502 logs success with timings2503 sets repository_retry_count and repository_retry_at to nil2504 with non empty repositories2505 when HEAD change2506 syncs gitattributes to info/attributes2507 updates the default branch2508 when HEAD does not change2509 syncs gitattributes to info/attributes2510 updates the default branch2511 when repository sync fail2512 sets correct values for registry record2513 retries2514 with repository previously synced2515 tries to fetch repo2516 sets the redownload flag to false after success2517 tries to redownload repo2518 tries to redownload repo when force_redownload flag is set2519 cleans temporary repo after redownload2520 successfully redownloads the repository even if the retry time exceeds max value2521 no repository2522 does not raise an error2523 behaves like sync retries use the snapshot RPC2524 snapshot synchronization method2525 does not attempt to snapshot for initial sync2526 does not attempt to snapshot for ordinary retries2527 registry is ready to be snapshotted2528 attempts to snapshot2529 attempts to clone if snapshotting raises an exception2530 repository housekeeping2531 increases sync count after execution2532 initiate housekeeping at end of execution2533 when the repository is redownloaded2534 with geo_use_clone_on_first_sync flag disabled2535 creates a new repository and fetches with JWT credentials2536 cleans temporary repo after redownload2537 indicates the repository is not new even with errors2538 with geo_use_clone_on_first_sync flag enabled2539 clones a new repository with JWT credentials2540 cleans temporary repo after redownload2541 when repository did not exist2542 with geo_use_clone_on_first_sync flag enabled2543 dont indicates the repository is new when there were errors2544 indicates the repository is new if successful2545 with geo_use_clone_on_first_sync flag disabled2546 indicates the repository is new when there were errors2547 indicates the repository is new if successful2548 when repository already existed2549 indicates the repository is not new2550 indicates the repository is not new even with errors2551Ci::CreatePipelineService2552 with license2553 behaves like supported cross project artifacts definitions2554 persists pipeline2555 persists job2556 persists cross_dependencies2557 returns empty dependencies with non existing projects2558 behaves like broken artifacts definitions2559 persists pipeline2560 has errors2561 behaves like mixed artifacts definitions2562 persists pipeline2563 persists jobs2564 persists needs2565 persists cross_dependencies2566 returns dependencies2567 without license2568 behaves like supported cross project artifacts definitions2569 persists pipeline2570 persists job2571 persists cross_dependencies2572 returns empty dependencies with non existing projects2573 behaves like broken artifacts definitions2574 persists pipeline2575 has errors2576 behaves like mixed artifacts definitions2577 persists pipeline2578 persists jobs2579 persists needs2580 persists cross_dependencies2581 returns dependencies2582Ci::Minutes::UpdateProjectAndNamespaceUsageService2583 #execute2584 when statistics and usage do not have existing values2585 behaves like updates legacy consumption2586 updates legacy statistics with consumption seconds2587 behaves like updates monthly consumption2588 updates monthly usage for namespace2589 updates monthly usage for project2590 when project deleted2591 will complete successfully and increment namespace statistics2592 when namespace deleted2593 will complete successfully2594 when project and namespace deleted2595 will complete successfully2596 when on .com2597 sends a minute notification email2598 when an error is raised by the email notification2599 rescues and tracks the exception2600 when not on .com2601 does not send a minute notification email2602 when statistics and usage have existing values2603 does not create nested transactions2604 behaves idempotently2605 when update has not been performed yet2606 tracks that the update is done2607 behaves like updates legacy consumption2608 updates legacy statistics with consumption seconds2609 behaves like updates monthly consumption2610 updates monthly usage for namespace2611 updates monthly usage for project2612 when update has previously been performed2613 logs the event2614 behaves like does not update monthly consumption2615 does not update the usage on a monthly basis2616 behaves like updates legacy consumption2617 updates legacy statistics with consumption seconds2618Geo::DesignRepositorySyncService2619 behaves like geo base sync execution2620 #execute2621 when can acquire exclusive lease2622 executes the synchronization2623 when exclusive lease is not acquired2624 is does not execute synchronization2625 behaves like geo base sync fetch2626 #sync_repository2627 tells registry that sync will start now2628 #fetch_repository2629 cleans up temporary repository2630 syncs the HEAD ref2631 with existing repository2632 fetches repository from geo node2633 with a never synced repository2634 clones repository from geo node2635 #execute2636 returns the lease when succeed2637 returns the lease when sync fail2638 does not fetch project repository if cannot obtain a lease2639 voids the failure message when it succeeds after an error2640 execute repository cache expiration2641 with existing repository2642 fetches project repository with JWT credentials2643 rescues when Gitlab::Shell::Error is raised2644 rescues exception when Gitlab::Git::Repository::NoRepository is raised2645 increases retry count when Gitlab::Git::Repository::NoRepository is raised2646 marks sync as successful if no repository found2647 marks resync as true after a failure2648 with a never synced repository2649 clones project repository with JWT credentials2650 behaves like sync retries use the snapshot RPC2651 snapshot synchronization method2652 does not attempt to snapshot for initial sync2653 does not attempt to snapshot for ordinary retries2654 registry is ready to be snapshotted2655 attempts to snapshot2656 attempts to clone if snapshotting raises an exception2657 #expire_repository_caches2658 expires repository caches2659 race condition when RepositoryUpdatedEvent was processed during a sync2660 reschedules the sync2661 when the repository is redownloaded2662 with geo_use_clone_on_first_sync flag disabled2663 creates a new repository and fetches with JWT credentials2664 cleans temporary repo after redownload2665 with geo_use_clone_on_first_sync flag enabled2666 clones a new repository with JWT credentials2667 cleans temporary repo after redownload2668Projects::TransferService2669 when running on a primary node2670 logs an event to the Geo event log2671 audit events2672 when licensed2673 does not log audit event if operation fails2674 does not log audit event if operation results in no change2675 when operation succeeds2676 logs an audit event2677 logs the audit event info2678 when not licensed2679 does not log audit event2680 missing epics applied to issues2681 delegates transfer to Epics::TransferService2682 elasticsearch indexing2683 delegates transfer to Elastic::ProjectTransferWorker2684 updating paid features2685 project access tokens2686 with a self managed instance2687 does not revoke PATs2688 with GL.com2689 when target namespace has a premium plan2690 does not revoke PATs2691 when target namespace has a free plan2692 revoke PATs2693 pipeline subscriptions2694 when target namespace has a premium plan2695 does not schedule cleanup for upstream project subscription2696 when target namespace has a free plan2697 schedules cleanup for upstream project subscription2698 test cases2699 when target namespace has a premium plan2700 does not delete the test cases2701 when target namespace has a free plan2702 deletes the test cases2703MergeRequestsFinder2704 #execute2705 ignores filtering by weight2706 merge commit sha2707 filters by merge commit sha2708 filtering by approver usernames2709 returns merge requests that have user as an approver2710 with nil values2711 returns same set of merge requests without approvers2712 filtering by approver user IDs2713 returns merge requests that have user as an approver2714 with nil values2715 returns same set of merge requests without approvers2716 filtering by scoped label wildcard2717 returns all merge requests that match the wildcard2718IssuesFinder2719 #execute2720 scope: all2721 filter by scoped label wildcard2722 when scoped labels are unavailable2723 does not return any results2724 when project scope is not given2725 does not return any results2726 with a single wildcard filter2727 returns issues that have labels that match the wildcard2728 with multiple wildcard filters2729 returns issues that have labels that match both wildcards2730 combined with a regular label filter2731 returns issues that have labels that match the wildcard and the regular label2732 with nested prefix2733 returns issues that have labels that match the prefix2734 with overlapping prefixes2735 returns issues that have labels that match both prefixes2736 using NOT2737 returns issues that do not have labels that match the wildcard2738 filter by weight2739 filter issues with no weight2740 returns all issues2741 filter issues with any weight2742 returns all issues2743 filter issues with a specific weight2744 returns all issues2745 filer issues by negated weight2746 filters out issues with the specified weight2747 filtering by assignee IDs2748 returns issues assigned to those users2749 filter by username2750 behaves like assignee username filter2751 returns issuables assigned to those users2752 behaves like assignee NOT username filter2753 returns issuables not assigned to those users2754 filter by epic2755 filter issues with no epic2756 returns filtered issues2757 filter issues by epic2758 when include_subepics param is not included2759 returns all issues in the epic, subepic issues excluded2760 when include_subepics param is set to true2761 returns all issues in the epic including subepic issues2762 filter issues with any epic2763 returns filtered issues2764 filter issues not in the epic2765 returns issues not assigned to the epic2766 filter by iteration2767 filter issues with no iteration2768 returns all issues without iterations2769 filter issues with any iteration2770 returns filtered issues2771 filter issues by current iteration2772 when no current iteration is found2773 returns no issues2774 when current iteration exists2775 returns filtered issues2776 filter by negated current iteration2777 returns filtered issues2778 filter issues by iteration2779 returns all issues with the iteration2780 filter issues by multiple iterations2781 returns all issues with the iteration2782 filter issue by iteration title2783 returns all issues with the iteration title2784 filter issue by negated iteration title2785 returns all issues that do not match the iteration title2786 without iteration_id param2787 returns unfiltered issues2788 when filtering by health status2789 filter issues by health status2790 returns filtered issues2791 when searching within a specific project2792 returns filtered issues2793 filter issues with no health status2794 returns filtered issues2795 filter issues with any health status2796 returns filtered issues2797 filter issues without a sepcific health status2798 returns filtered issues2799 #with_confidentiality_access_check2800 when no project filter is given2801 for an auditor2802 returns all issues2803 when searching within a specific project2804 for an auditor2805 returns all issues2806VulnerabilityPresenter2807 #scanner2808 returns the scanner for a finding2809 returns empty hash if scanner is missing for a vulnerabilities_finding2810 #scan2811 returns the scan for a finding2812 returns empty hash if scan is missing for a vulnerabilities_finding2813 #remediations2814 returns remediations2815 #location_link_with_raw_path2816 when the end_line is the same as the start_line2817 returns the location link in raw format2818 when the end_line is nil2819 returns the location link in raw format2820 when the end_line is different from the start_line2821 returns the location link in raw format2822 #location_link2823 returns the location link in blob format2824 #blob_path2825 returns the path in blob format2826 returns nil if file is missing in the finding2827 #raw_path2828 returns the path in raw format2829 returns nil if file is missing in the finding2830 #jira_issue_description2831 returns the jira description in string format2832 #description2833 when the vulnerability description field is populated2834 returns the description for the vulnerability2835 when the vulnerability description field is empty2836 returns the description for the vulnerability finding2837SubscriptionsHelper2838 #subscription_data2839 is expected to include {:setup_for_company => ""}2840 is expected to include {:full_name => "First Last"}2841 is expected to include {:available_plans => "[{\"id\":\"bronze_id\",\"code\":\"bronze\",\"price_per_year\":48.0,\"name\":\"Bronze Plan\"}]"}2842 is expected to include {:plan_id => "bronze_id"}2843 is expected to include {:namespace_id => "2619"}2844 is expected to include {:source => "some_source"}2845 is expected to include {:group_data => "[{\"id\":2619,\"account_id\":null,\"name\":\"My Namespace\",\"full_path\":\"my_namespace\"}]"}2846 is expected to include {:trial => "false"}2847 is expected to include {:new_trial_registration_path => "/-/trial_registrations/new"}2848 when user is on trial2849 is expected to include {:trial => "true"}2850 new_user2851 referer: "http://example.com/users/sign_up/welcome?foo=bar", expected_result: "true"2852 is expected to include {:new_user => "true"}2853 referer: "http://example.com", expected_result: "false"2854 is expected to include {:new_user => "false"}2855 referer: nil, expected_result: "false"2856 is expected to include {:new_user => "false"}2857 when bronze_plan is deprecated2858 is expected to include {:available_plans => "[{\"id\":\"bronze_id\",\"code\":\"bronze\",\"price_per_year\":48.0,\"deprecated\":true,\"name\":\"Bronze Plan\"}]"}2859 when bronze_plan has hide_card attribute set to true2860 and is set to hide_deprecated_billing_plans true2861 is expected not to include {:available_plans => "[{\"id\":\"bronze_id\",\"code\":\"bronze\",\"price_per_year\":48.0,\"deprecated\":false,\"name\":\"Bronze Plan\",\"hide_card\":true}]"}2862 and is set to false2863 is expected to include {:available_plans => "[{\"id\":\"bronze_id\",\"code\":\"bronze\",\"price_per_year\":48.0,\"deprecated\":false,\"name\":\"Bronze Plan\",\"hide_card\":true}]"}2864 #plan_title2865 is expected to eq "Bronze"2866 no plan_id URL parameter present2867 is expected to eq nil2868 a non-existing plan_id URL parameter present2869 is expected to eq nil2870 #buy_addon_data2871 is expected to include {:namespace_id => "2620"}2872 is expected to include {:active_subscription => {:name => "S-000000000"}}2873 is expected to include {:source => "some_source"}2874 is expected to include {:group_data => "[{\"id\":2620,\"account_id\":\"111111111111\",\"name\":\"My Namespace\",\"full_path\":\"my_namespace\"}]"}2875 is expected to include {:redirect_after_success => "/groups/my_namespace/-/usage_quotas?purchased_product=CI+Minutes#pipelines-quota-tab"}2876Geo::VerificationState2877 for Model classes2878 when verification state is stored in the model table2879-- create_table(:_test_dummy_models, {:force=>true})2880 -> 0.0044s2881 state machine2882 when failed2883 and transitioning to pending2884 marks verification as pending2885 does not clear retry attributes2886 .verification_pending_batch2887 returns IDs of rows pending verification2888 marks verification as started2889 limits with batch_size and orders records by verified_at with NULLs first2890 other verification states2891 does not include them2892 .verification_failed_batch2893 with a failed record with retry due2894 returns IDs of rows pending verification2895 marks verification as started2896 limits with batch_size and orders records by verification_retry_at with NULLs first2897 other verification states2898 does not include them2899 when verification_retry_at is in the future2900 does not return the row2901 .needs_verification2902 includes verification_pending2903 includes verification_failed and verification_retry_due2904 excludes verification_failed with future verification_retry_at2905 .needs_reverification2906 includes verification_succeeded with expired checksum2907 excludes non-success verification states and fresh checksums2908 .reverify_batch2909 sets pending status to records with outdated verification2910 limits the update with batch_size2911 .fail_verification_timeouts2912 when verification has not timed out for a record2913 does not update verification state2914 when verification has timed out for a record2915 sets verification state to failed2916 #track_checksum_attempt!2917 yields to the checksum calculation2918 when verification was not yet started2919 starts verification2920 sets verification_succeeded2921 when verification was started2922 does not update verification_started_at2923 when an error occurs while yielding2924 when the record was failed2925 sets verification_failed and increments verification_retry_count2926 when the yielded block returns nil2927 when the record was pending2928 sets verification_failed and sets verification_retry_count to 12929 when the record was failed2930 sets verification_failed and increments verification_retry_count2931 #verification_succeeded_with_checksum!2932 when the resource was updated during checksum calculation2933 sets state to pending2934 when the resource was not updated during checksum calculation2935 saves the checksum2936 primary node2937 calls replicator.handle_after_checksum_succeeded2938 secondary node2939 does not call replicator.handle_after_checksum_succeeded2940 #verification_failed_with_message!2941 saves the error message and increments retry counter2942 #verification_started!2943 flips the state to started state2944-- drop_table(:_test_dummy_models, {:force=>true})2945 -> 0.0021s2946 when verification state is stored in a separate table2947-- create_table(:_test_dummy_model_with_separate_states, {:force=>true})2948 -> 0.0029s2949-- create_table(:_test_dummy_model_states, {:id=>false, :force=>true})2950 -> 0.0023s2951 .fail_verification_timeouts2952 sets verification state to failed2953 #verification_started!2954 flips the state to started state without reseting/reloading the original object (only state record)2955-- drop_table(:_test_dummy_model_with_separate_states, {:force=>true})2956 -> 0.0018s2957-- drop_table(:_test_dummy_model_states, {:force=>true})2958 -> 0.0012s2959 for registry classes2960 .fail_verification_timeouts2961 sets verification state to failed2962 .verification_not_disabled2963 returns available verifiables, excluding verification_disabled2964 #verification_started!2965 flips the state to started state2966SnippetRepository2967 with 3 groups, 2 projects, and 5 snippets2968 #in_replicables_for_current_secondary?2969 all returns true if all are replicated2970 with selective sync by namespace2971 returns true for snippets in the namespace2972 returns true for personal snippets2973 returns false for project snippets not in an included namespace2974 with selective sync by shard2975 returns true for snippets in the shard2976 returns false for project snippets not in an included shard2977 #replicables_for_current_secondary2978 returns all snippet_repositories without selective sync2979 returns nothing if an unrecognised selective sync type is used2980 with selective sync by namespace2981 returns snippet_repositories that belong to the namespaces + personal snippets2982 with selective sync by shard2983 returns snippet_repositories that belong to the shards2984Ci::AuditVariableChangeService2985 when audits are available2986 when creating group variable2987 behaves like audit creation2988 logs audit event2989 logs variable group creation2990 behaves like sends correct event type in audit event stream2991 sends correct event type in audit event stream2992 when updating group variable protection2993 behaves like audit when updating variable protection2994 logs audit event2995 logs variable protection update2996 behaves like sends correct event type in audit event stream2997 sends correct event type in audit event stream2998 when deleting group variable2999 behaves like audit when updating variable protection3000 logs audit event3001 logs variable protection update3002 behaves like sends correct event type in audit event stream3003 sends correct event type in audit event stream3004 when creating project variable3005 behaves like audit creation3006 logs audit event3007 logs variable group creation3008 behaves like sends correct event type in audit event stream3009 sends correct event type in audit event stream3010 when updating project variable protection3011 behaves like audit when updating variable protection3012 logs audit event3013 logs variable protection update3014 behaves like sends correct event type in audit event stream3015 sends correct event type in audit event stream3016 when deleting project variable3017 behaves like audit when updating variable protection3018 logs audit event3019 logs variable protection update3020 behaves like sends correct event type in audit event stream3021 sends correct event type in audit event stream3022 when audits are not available3023 for group variable3024 behaves like no audit events are created3025 when creating variable3026 does not log an audit event3027 when updating variable protection3028 does not log an audit event3029 when destroying variable3030 does not log an audit event3031 for project variable3032 behaves like no audit events are created3033 when creating variable3034 does not log an audit event3035 when updating variable protection3036 does not log an audit event3037 when destroying variable3038 does not log an audit event3039GitlabSubscriptions::PreviewBillableUserChangeService3040 #execute3041 when target namespace is a group3042 behaves like preview billable user change service3043 when target namespace exists3044 when adding users3045 by group id3046 when group exists3047 when current_user has access to view group3048 counts group members3049 when group contains an existing user from target group3050 does not count existing user3051 when current_user does not have access to view group3052 does not count group members3053 when group does not exist3054 returns successfully3055 by email3056 counts user emails and unassociated emails3057 when email is associated with user already in target group3058 does not count existing user3059 by user id3060 returns successfully3061 when id is associated with user already in target group3062 does not count existing user3063 with guest role3064 when target group does not charge for guests3065 does not count added users3066 when target group charges for guests3067 counts added users3068 when added users results in an increased overage3069 sets will_increase_overage: true3070 when target namespace is a user namespace3071 behaves like preview billable user change service3072 when target namespace exists3073 when adding users3074 by group id3075 when group exists3076 when current_user has access to view group3077 counts group members3078 when group contains an existing user from target group3079 does not count existing user3080 when current_user does not have access to view group3081 does not count group members3082 when group does not exist3083 returns successfully3084 by email3085 counts user emails and unassociated emails3086 when email is associated with user already in target group3087 does not count existing user3088 by user id3089 returns successfully3090 when id is associated with user already in target group3091 does not count existing user3092 with guest role3093 when target group does not charge for guests3094 does not count added users3095 when target group charges for guests3096 counts added users3097 when added users results in an increased overage3098 sets will_increase_overage: true3099BlockingMergeRequestEntity3100 exposes simple attributes3101 serializes a blocking MR that lacks metrics3102 #head_pipeline3103 visible pipeline3104 is expected to include {:id => 231}3105 hidden pipeline3106 is expected to be nil3107 #reference3108 is expected to eq "!1"3109 from another project3110 includes the fully-qualified reference when needed3111MergeRequests::PostMergeService3112 #execute3113 finalize approvals3114 executes ApprovalRules::FinalizeService3115 compliance violations3116 when the compliance report feature is unlicensed3117 behaves like does not call the compliance violations worker3118 is expected not to receive perform_async(*(any args)) 0 times3119 when the compliance report feature is licensed3120 calls the compliance violations worker asynchronously3121 auditing and tracking invalid logs3122 when the rule is code owner3123 when the rule is valid3124 does not audit or track the event3125 when invalid3126 audits and tracks logs the event3127 when the rule is any_approver3128 when the rule is valid3129 does not audit or track the event3130 when invalid3131 does not audit or track the event3132 when the rule is approval_merge_request_rule3133 when the rule is valid3134 does not audit or track the event3135 when invalid3136 audits and tracks logs the event3137 when the rule is report_approver3138 when the rule is valid3139 does not audit or track the event3140 when invalid3141 audits and tracks logs the event3142 security orchestration policy configuration3143 executes Security::SyncScanResultPolicyWorker for each configuration project3144 without licensed feature3145 does not execute Security::SyncScanResultPolicyWorker for each configuration project3146 with unrelated policy configurations3147 does not execute Security::SyncScanResultPolicyWorker for each configuration project3148SystemNotes::EpicsService3149 #epic_issue3150 issue added to an epic3151 creates the note text correctly3152 behaves like a system note3153 has the correct attributes3154 issue removed from an epic3155 creates the note text correctly3156 behaves like a system note3157 has the correct attributes3158 #issue_on_epic3159 issue added to an epic3160 creates the note text correctly3161 behaves like a system note3162 has the correct attributes3163 issue removed from an epic3164 creates the note text correctly3165 behaves like a system note3166 has the correct attributes3167 invalid type3168 raises an error3169 #change_epic_date_note3170 when start date was changed3171 sets the note text3172 behaves like a system note3173 has the correct attributes3174 when start date was removed3175 sets the note text3176 behaves like a system note3177 has the correct attributes3178 #issue_promoted3179 note on the epic3180 sets the note text3181 behaves like a system note3182 has the correct attributes3183 note on the issue3184 sets the note text3185 behaves like a system note3186 has the correct attributes3187 #change_epics_relation3188 relate epic3189 behaves like a system note3190 has the correct attributes3191 when epic is added as child to a parent epic3192 sets the note text3193 when added epic is from a subgroup3194 sets the note text3195 unrelate epic3196 behaves like a system note3197 has the correct attributes3198 when child epic is removed from a parent epic3199 sets the note text3200 when removed epic is from a subgroup3201 sets the note text3202 #move_child_epic_to_new_parent3203 sets the note text3204 behaves like a system note3205 has the correct attributes3206 when child epic's new parent is in a subgroup3207 sets the note text3208BoardsHelper3209 #build_issue_link_base3210 when epic board3211 generates the correct url3212 #board_base_url3213 when epic board3214 generates the correct url3215 #board_data3216 issue board3217 when no iteration3218 serializes board without iteration3219 when board is scoped to an iteration3220 serializes board with iteration3221 group and project-level licensed features3222 when 'multiple_issue_assignees' is available3223 indicates that the feature is available in a boolean string3224 when 'multiple_issue_assignees' is unavailable3225 indicates that the feature is unavailable in a boolean string3226 when 'issue_weights' is available3227 indicates that the feature is available in a boolean string3228 when 'issue_weights' is unavailable3229 indicates that the feature is unavailable in a boolean string3230 when 'board_milestone_lists' is available3231 indicates that the feature is available in a boolean string3232 when 'board_milestone_lists' is unavailable3233 indicates that the feature is unavailable in a boolean string3234 when 'board_assignee_lists' is available3235 indicates that the feature is available in a boolean string3236 when 'board_assignee_lists' is unavailable3237 indicates that the feature is unavailable in a boolean string3238 when 'issuable_health_status' is available3239 indicates that the feature is available in a boolean string3240 when 'issuable_health_status' is unavailable3241 indicates that the feature is unavailable in a boolean string3242 when 'scoped_labels' is available3243 indicates that the feature is available in a boolean string3244 when 'scoped_labels' is unavailable3245 indicates that the feature is unavailable in a boolean string3246 when 'scoped_issue_board' is available3247 indicates that the feature is available in a boolean string3248 when 'scoped_issue_board' is unavailable3249 indicates that the feature is unavailable in a boolean string3250 group-level licensed features3251 when 'board_iteration_lists' is available3252 indicates that the feature is available in a boolean string3253 when 'board_iteration_lists' is unavailable3254 indicates that the feature is unavailable in a boolean string3255 when 'epics' is available3256 indicates that the feature is available in a boolean string3257 when 'epics' is unavailable3258 indicates that the feature is unavailable in a boolean string3259 when 'iterations' is available3260 indicates that the feature is available in a boolean string3261 when 'iterations' is unavailable3262 indicates that the feature is unavailable in a boolean string3263 when 'issuable_health_status' is available3264 indicates that the feature is available in a boolean string3265 when 'issuable_health_status' is unavailable3266 indicates that the feature is unavailable in a boolean string3267 when 'subepics' is available3268 indicates that the feature is available in a boolean string3269 when 'subepics' is unavailable3270 indicates that the feature is unavailable in a boolean string3271 epic board3272 returns the correct permission for creating an epic from board3273 returns the correct permission for updating the board3274 returns the correct permission for administering the boards lists3275 returns the correct permission for administering the boards3276ProtectedEnvironments::CreateService#execute3277 with valid params3278 is expected to be truthy3279 creates a record on ProtectedEnvironment3280 creates a record on ProtectedEnvironment record3281 with invalid params3282 returns a non-persisted Protected Environment record3283 multiple deploy access levels3284 behaves like invalid multiple deployment access levels3285 does not create deploy access level3286 does not create protected environment3287 deploy access level by group3288 behaves like invalid protected environment group3289 does not create deploy access level3290 does not create protected environment3291 behaves like valid protected environment group3292 creates deploy access level3293 creates protected environment3294 deploy access level by user3295 behaves like invalid protected environment user3296 does not create deploy access level3297 does not create protected environment3298 behaves like valid protected environment user3299 creates deploy access level3300 creates protected environment3301Issuable::DiscussionsListService3302 # order random3303 fetching notes for vulnerabilities3304 returns all notes3305 with paginated results3306 returns next page notes3307 and system notes only3308 returns system notes3309 and user comments only3310 returns user comments3311 fetching notes for incidents3312 behaves like listing issuable discussions3313 when user cannot read issue3314 returns no notes3315 when user can read issuable3316 with paginated results3317 returns next page notes3318 and cannot read confidential notes3319 returns non confidential notes3320 and can read confidential notes3321 returns all notes3322 and system notes only3323 returns system notes3324 and user comments only3325 returns user comments3326 fetching notes for epics3327 behaves like listing issuable discussions3328 when user cannot read issue3329 returns no notes3330 when user can read issuable3331 with paginated results3332 returns next page notes3333 and cannot read confidential notes3334 returns non confidential notes3335 and can read confidential notes3336 returns all notes3337 and system notes only3338 returns system notes3339 and user comments only3340 returns user comments3341Secure-Binaries.gitlab-ci.yml3342 is expected not to be nil3343 template content3344 when compared to DAST-API template3345 includes the same DAST API image prefix3346 includes the DAST API image name in secure binary analyzers3347 includes a job named after the DAST API image name3348 includes the same DAST API image version3349 filters the secure binary analyzers by the DAST API image name3350 when compared to DAST-API.latest template3351 includes the same DAST API image prefix3352 includes the DAST API image name in secure binary analyzers3353 includes a job named after the DAST API image name3354 includes the same DAST API image version3355 filters the secure binary analyzers by the DAST API image name3356 when compared to API-Fuzzing template3357 includes the same API Fuzzing image prefix3358 includes the API Fuzzing image name in secure binary analyzers3359 includes a job named after the API Fuzzing image name3360 includes the same API Fuzzing image version3361 filters the secure binary analyzers by the API Fuzzing image name3362 when compared to API-Fuzzing.latest template3363 includes the same API Fuzzing image prefix3364 includes the API Fuzzing image name in secure binary analyzers3365 includes a job named after the API Fuzzing image name3366 includes the same API Fuzzing image version3367 filters the secure binary analyzers by the API Fuzzing image name3368 the created pipeline3369 dast3370 behaves like an offline image download job3371 creates the job3372 sets SECURE_BINARIES_ANALYZER_VERSION to the correct version3373 dast-runner-validation3374 behaves like an offline image download job3375 creates the job3376 sets SECURE_BINARIES_ANALYZER_VERSION to the correct version3377 sets SECURE_BINARIES_IMAGE explicitly3378 api-security3379 behaves like an offline image download job3380 creates the job3381 sets SECURE_BINARIES_ANALYZER_VERSION to the correct version3382 sets SECURE_BINARIES_ANALYZER_VERSION explicitly3383Todos::Destroy::EntityLeaveService3384 #execute3385 behaves like removes confidential epics and internal notes todos3386 removes todos targeting confidential epics and internal notes in the group3387 when user is still member of ancestor group3388 does not remove todos targeting confidential epics in the group3389 when user was a member of public group with private subgroup3390 removes epic todos from private subgroup3391 when user role is downgraded to guest3392 behaves like removes confidential epics and internal notes todos3393 removes todos targeting confidential epics and internal notes in the group3394CustomProjectTemplatesFinder3395 returns an empty relation if group is not set3396 when group with custom project templates is set3397 returns an empty relation if group has no available project templates3398 ignores pages permissions as they are not exported3399 when the group has projects3400 issues_access_level: :disabled, minimal_user_access: :no_access, available_templates: ["public", "internal"]3401 when templates have the issues feature disabled3402 returns public, internal projects to users with no_access to the project3403 returns public, internal projects to users with no_access to the group3404 issues_access_level: :disabled, minimal_user_access: :guest, available_templates: ["public", "internal", "private"]3405 when templates have the issues feature disabled3406 returns public, internal, private projects to users with guest to the project3407 returns public, internal, private projects to users with guest to the group3408 issues_access_level: :private, minimal_user_access: :guest, available_templates: ["public", "internal", "private"]3409 when templates have the issues feature private3410 returns public, internal, private projects to users with guest to the project3411 returns public, internal, private projects to users with guest to the group3412 issues_access_level: :private, minimal_user_access: :no_access, available_templates: []3413 when templates have the issues feature private3414 returns projects to users with no_access to the project3415 returns projects to users with no_access to the group3416 issues_access_level: :enabled, minimal_user_access: :guest, available_templates: ["public", "internal", "private"]3417 when templates have the issues feature enabled3418 returns public, internal, private projects to users with guest to the project3419 returns public, internal, private projects to users with guest to the group3420 issues_access_level: :enabled, minimal_user_access: :no_access, available_templates: ["public", "internal"]3421 when templates have the issues feature enabled3422 returns public, internal projects to users with no_access to the project3423 returns public, internal projects to users with no_access to the group3424 filtering the results3425 allows to search available project templates by name3426 filters by single project ID3427 filters by list of project IDs3428 does not return inaccessible projects3429SystemNotes::IssuablesService3430 #change_health_status_note3431 when health_status changed3432 sets the note text3433 behaves like a system note3434 has the correct attributes3435 when health_status removed3436 sets the note text3437 behaves like a system note3438 has the correct attributes3439 events tracking3440 tracks the issue event in usage ping3441 behaves like issue_edit snowplow tracking3442 behaves like Snowplow event tracking with RedisHLL context3443 behaves like Snowplow event tracking3444 is emitted3445 #publish_issue_to_status_page3446 sets the note text3447 behaves like a system note3448 has the correct attributes3449 #cross_reference3450 when noteable is an epic3451 tracks epic cross reference event in usage ping3452 behaves like a system note3453 has the correct attributes3454 when notable is not an epic3455 does not tracks epic cross reference event in usage ping3456 #relate_issuable3457 creates system notes when relating epics3458 #unrelate_issuable3459 creates system notes when epic gets unrelated3460 #block_issuable3461 creates system note when issues gets marked as blocking3462 behaves like a system note3463 has the correct attributes3464 #blocked_by_issuable3465 creates system note when issues gets marked as blocked by noteable3466 behaves like a system note3467 has the correct attributes3468SyncSeatLinkRequestWorker3469 #perform3470 makes an HTTP POST request with passed params3471 when response contains a license3472 when there is no previous license3473 behaves like successful license creation3474 persists the new license3475 when there is a previous license3476 when it is a cloud license3477 when the current license key does not match the one returned from sync3478 creates a new license3479 when the current license key matches the one returned from sync3480 reuses the current license and updates the last_synced_at3481 when persisting fails3482 does not delete the current license and logs error3483 when it is not a cloud license3484 behaves like successful license creation3485 persists the new license3486 when response contains reconciliation dates3487 saves the reconciliation dates3488 when an upcoming_reconciliation already exists3489 updates the upcoming_reconciliation3490 when response contains future subscription information3491 when future subscription information is present in the response3492 and no future subscriptions are saved in the current settings3493 persists future subscription information3494 and future subscriptions are saved in the current settings3495 replaces future subscription information3496 when future subscription information is not present in the response3497 and no future subscriptions are saved in the current settings3498 does not change the settings3499 and future subscription are saved in the current settings3500 clears future subscription information3501 when saving fails3502 logs error3503 when the response does not contain reconciliation dates3504 destroys the existing upcoming reconciliation record for the instance3505 does not change anything when there is no existing record3506 behaves like unsuccessful request3507 when the request is not successful3508 raises an error with the expected message3509 sidekiq_retry_in_block3510 is at least 30 minutes in the first retry3511Gitlab::Email::Handler::CreateNoteHandler3512 when the note could not be saved3513 raises an InvalidNoteError3514 when the note contains quick actions3515 and current user cannot update the noteable3516 only executes the commands that the user can perform3517 and current user can update noteable3518 posts a note and updates the noteable3519 when the reply is blank3520 raises an EmptyEmailError3521 when everything is fine3522 creates a comment3523 adds all attachments3524 when sub-addressing is not supported3525 mail key is in the References header3526 behaves like an email that contains a mail key3527 fetches the mail key from the References header and creates a comment3528 mail key is in the References header with a comma3529 behaves like an email that contains a mail key3530 fetches the mail key from the References header and creates a comment3531Sidebars::Groups::Menus::SettingsMenu3532 Menu Items3533 for owner user3534 LDAP sync menu3535 when group LDAP sync is not enabled3536 is expected not to be present3537 when group LDAP sync is enabled3538 when user can admin LDAP syncs3539 is expected to be present3540 when user cannot admin LDAP syncs3541 is expected not to be present3542 SAML SSO menu3543 when SAML is disabled3544 is expected not to be present3545 when SAML is enabled3546 when :group_administration_nav_item feature is disabled3547 is expected to be present3548 when user cannot admin group SAML3549 is expected not to be present3550 when :group_administration_nav_item feature is enabled3551 is expected not to be present3552 SAML group links menu3553 when SAML group links feature is disabled3554 is expected not to be present3555 when SAML group links feature is enabled3556 is expected to be present3557 when user cannot admin SAML group links3558 is expected not to be present3559 domain verification3560 when domain verification is licensed3561 is expected to be present3562 when user cannot admin group3563 is expected not to be present3564 when domain verification is not licensed3565 is expected not to be present3566 Webhooks menu3567 when licensed feature :group_webhooks is not enabled3568 is expected not to be present3569 when show_promotions is enabled3570 is expected to be present3571 when licensed feature :group_webhooks is enabled3572 is expected to be present3573 Usage quotas menu3574 is expected to be present3575 when feature flag :group_administration_nav_item is enabled3576 is expected not to be present3577 when usage_quotas licensed feature is not enabled3578 is expected not to be present3579 Billing menu3580 is expected to be present3581 when feature flag :group_administration_nav_item is enabled3582 is expected not to be present3583 when group billing does not apply3584 is expected not to be present3585 Reporting menu3586 is expected to be present3587 when feature is not enabled3588 is expected not to be present3589 for auditor user3590 Billing menu item3591 is expected to be present3592 does not show any other menu items3593 when auditor_billing_page_access FF is disabled3594 is expected not to be present3595AppSec::Dast::Scans::RunService3596 #execute3597 when a user does not have access to the project3598 returns an error status3599 populates message3600 when the user can run a dast scan3601 returns a success status3602 returns a pipeline3603 creates a pipeline3604 associates the dast profile3605 sets the pipeline ref to the branch3606 sets the source to indicate an ondemand scan3607 creates a stage3608 creates a build3609 sets the build name to indicate a DAST scan3610 creates a build with appropriate options3611 creates a build with appropriate variables3612 when the pipeline fails to save3613 returns an error status3614 populates message3615 when on demand scan licensed feature is not available3616 returns an error status3617 populates message3618DAST.gitlab-ci.yml3619 the created pipeline3620 is expected not to be nil3621 when ci yaml is just template3622 when project has no license3623 includes no jobs3624 when stages includes dast3625 when project has no license3626 includes no jobs3627 when project has Ultimate license3628 includes job3629 when DAST_DISABLED=13630 includes no jobs3631 when DAST_DISABLED_FOR_DEFAULT_BRANCH=13632 when on default branch3633 includes no jobs3634 when on feature branch3635 includes dast job3636 when REVIEW_DISABLED=true3637 when on default branch3638 includes dast job3639 when on feature branch3640 includes no jobs3641Security::Ingestion::Tasks::IngestVulnerabilityStatistics3642 #execute3643 when there is no statistics record for the project3644 when there are no new vulnerabilities3645 does not create a new Vulnerabilities::Statistic record3646 when there are new vulnerabilities3647 creates a new Vulnerabilities::Statistic record3648 sets the correct attributes for the recently created record3649 when there is already a statistics record for the project3650 when there are no new vulnerabilities3651 does not create a new record and does not change the existing record3652 when there are new vulnerabilities3653 does not create a new record and updates the existing one3654BackfillUsers3655 # order random3656 integration test3657 tracks all user documents3658 with more than one iterations in a batch3659 tracks all user documents in two iterations in one batch3660 with more than one batches3661 tracks all user documents in 4 iterations over two batches3662 #completed?3663 returns true3664 when the values don't match3665 returns false3666 #document_type3667 is :user3668GroupSamlGroupSyncWorker3669 #perform3670 when the group does not have group_saml_group_sync feature licensed3671 does not call the sync service3672 when the group has group_saml_group_sync feature licensed3673 when SAML is not enabled3674 does not call the sync service3675 when SAML is enabled3676 calls the sync service with the group links3677 does not call the sync service when the user does not exist3678 includes groups with links in manage_group_ids3679 default membership3680 when group link ids do not include the top level group3681 does not pass the top level group to the sync service as group to manage3682 retains user default membership role3683 does not update the membership role when it does not deviate from the default3684 when the member is the last owner3685 does not update the member when the member is the last owner3686 when the membership role deviates from the default3687 reverts to the default membership role3688 does not update the default membership when the top level group has no group links3689 when group link ids include the top level group3690 does not revert to the default membership role3691 when a group link falls outside the top-level group3692 drops group links outside the top level group3693 with a group in the hierarchy that has no group links3694 is not included in manage_group_ids3695 when the worker receives no group link ids3696 calls the sync service, updates default membership and removes existing users3697Gitlab::Ci::Parsers::Security::DependencyScanning3698 #parse!3699 report_format: :dependency_scanning, occurrence_count: 4, identifier_count: 7, scanner_count: 1, file_path: "app/pom.xml", package_name: "io.netty/netty", package_version: "3.9.1.Final", version: "14.1.2"3700 parses all identifiers and findings3701 generates expected location3702 generates expected metadata_version3703 report_format: :dependency_scanning_remediation, occurrence_count: 2, identifier_count: 3, scanner_count: 1, file_path: "yarn.lock", package_name: "debug", package_version: "1.0.5", version: "14.1.2"3704 parses all identifiers and findings3705 generates expected location3706 generates expected metadata_version3707 when parsing a vulnerability with a missing location3708 is expected not to raise Exception3709 when parsing a vulnerability with a missing cve3710 is expected not to raise Exception3711 when vulnerabilities have remediations3712 generates occurrence with expected remediation3713Resolvers::Geo::DependencyProxyManifestRegistriesResolver3714 # order random3715 behaves like a Geo registries resolver3716 #resolve3717 when the parent object is the current node3718 when the user has permission to view Geo data3719 when admin mode is enabled3720 when the ids argument is null3721 returns registries, in order3722 when the ids argument is present3723 returns the requested registries, in order3724 when the replication_state argument is present3725 returns registries with requested replication state, in order3726 with verification enabled3727 when the verification_state argument is present3728 returns registries with requested verification state, in order3729 with verification disabled3730 when the verification_state argument is present3731 raises ArgumentError (PENDING: Skipping because verification is enabled for DependencyProxy::Manifest)3732 when admin mode is disabled3733 returns nothing3734 when the user does not have permission to view Geo data3735 returns nothing3736 when the parent object is not the current node3737 when the user has permission to view Geo data3738 returns nothing, because we can't query other nodes' tracking databases3739Resolvers::Geo::GroupWikiRepositoryRegistriesResolver3740 behaves like a Geo registries resolver3741 #resolve3742 when the parent object is the current node3743 when the user has permission to view Geo data3744 when admin mode is enabled3745 when the ids argument is null3746 returns registries, in order3747 when the ids argument is present3748 returns the requested registries, in order3749 when the replication_state argument is present3750 returns registries with requested replication state, in order3751 with verification enabled3752 when the verification_state argument is present3753 returns registries with requested verification state, in order (PENDING: Skipping because verification is not enabled for GroupWikiRepository)3754 with verification disabled3755 when the verification_state argument is present3756 raises ArgumentError3757 when admin mode is disabled3758 returns nothing3759 when the user does not have permission to view Geo data3760 returns nothing3761 when the parent object is not the current node3762 when the user has permission to view Geo data3763 returns nothing, because we can't query other nodes' tracking databases3764Mutations::IncidentManagement::EscalationPolicy::Update3765 # order random3766 #resolve3767 when the policy cannot be found3768 behaves like failed update with a top-level access error3769 is expected to raise Gitlab::Graphql::Errors::ResourceNotAvailable with "The resource that you are attempting to access does not exist or you don't have permission to perform this action"3770 when project does not have feature3771 behaves like failed update with a top-level access error3772 is expected to raise Gitlab::Graphql::Errors::ResourceNotAvailable with "Escalation policies are not supported for this project"3773 when user does not have permissions to update the policy3774 behaves like failed update with a top-level access error3775 is expected to raise Gitlab::Graphql::Errors::ResourceNotAvailable with "The resource that you are attempting to access does not exist or you don't have permission to perform this action"3776 when there is an error in updating3777 returns errors in the body of the response3778 when rules are excluded3779 behaves like successful update with no errors3780 returns the updated escalation policy3781 when rules are included but empty3782 returns errors in the body of the response3783 with rule updates3784 behaves like successful update with no errors3785 returns the updated escalation policy3786 when schedule does not exist3787 behaves like failed update with a top-level access error3788 is expected to raise Gitlab::Graphql::Errors::ResourceNotAvailable with "The resource that you are attempting to access does not exist or you don't have permission to perform this action"3789 the user does not have permission to update policies regardless3790 behaves like failed update with a top-level access error3791 is expected to raise Gitlab::Graphql::Errors::ResourceNotAvailable with "The resource that you are attempting to access does not exist or you don't have permission to perform this action"3792 when rule's user does not exist3793 behaves like failed update with a top-level access error3794 is expected to raise Gitlab::Graphql::Errors::ResourceNotAvailable with "The resource that you are attempting to access does not exist or you don't have permission to perform this action"3795EE::API::Entities::GeoNodeStatus3796 #healthy3797 when node is healthy3798 returns true3799 when node is unhealthy3800 returns false3801 #health3802 when node is healthy3803 exposes the health message3804 when node is unhealthy3805 exposes the error message3806 #job_artifacts_synced_in_percentage3807 formats as percentage3808 #container_repositories_synced_in_percentage3809 formats as percentage3810 #design_repositories_synced_in_percentage3811 formats as percentage3812 #repositories_synced_in_percentage3813 formats as percentage3814 #replication_slots_used_in_percentage3815 formats as percentage3816 #namespaces3817 returns empty array when full sync is active3818 returns array of namespace ids and paths for selective sync3819 #storage_shards3820 returns the config3821 secondary Geo node3822 is expected to have key :storage_shards3823 is expected to have key :storage_shards_match3824SoftwareLicensePolicies::UpdateService3825 #execute3826 approval status update3827 with license management unavailable3828 does not update the software license policy3829 with a user allowed to admin3830 updates the software license policy correctly3831 with a user not allowed to admin3832 does not updates the software license policy3833 name update3834 does not updates the software license policy3835Banzai::ReferenceParser::IterationParser3836 in project context3837 behaves like parses iteration references3838 #nodes_visible_to_user3839 when the link has a data-iteration attribute3840 behaves like referenced feature visibility3841 when feature is disabled3842 does not create reference3843 when feature is enabled only for team members3844 does not create reference for non member3845 creates reference for member3846 when feature is enabled3847 creates reference3848 when the link references an iteration in parent group3849 behaves like referenced feature visibility3850 when feature is disabled3851 does not create reference3852 when feature is enabled only for team members3853 does not create reference for non member3854 creates reference for member3855 when feature is enabled3856 creates reference3857 #referenced_by3858 when the link has a data-iteration attribute3859 using an existing iteration ID3860 returns an Array of iterations3861 using an iteration from parent group3862 returns an Array of iterations3863 using a non-existing iteration ID3864 returns an empty Array3865 in group context3866 behaves like parses iteration references3867 #nodes_visible_to_user3868 when the link has a data-iteration attribute3869 behaves like referenced feature visibility3870 when feature is disabled3871 does not create reference3872 when feature is enabled only for team members3873 does not create reference for non member3874 creates reference for member3875 when feature is enabled3876 creates reference3877 when the link references an iteration in parent group3878 behaves like referenced feature visibility3879 when feature is disabled3880 does not create reference3881 when feature is enabled only for team members3882 does not create reference for non member3883 creates reference for member3884 when feature is enabled3885 creates reference3886 #referenced_by3887 when the link has a data-iteration attribute3888 using an existing iteration ID3889 returns an Array of iterations3890 using an iteration from parent group3891 returns an Array of iterations3892 using a non-existing iteration ID3893 returns an empty Array3894IncidentManagement::OncallSchedules::UpdateService3895 # order random3896 #execute3897 when the current_user is anonymous3898 behaves like error response3899 has an informative message3900 when the current_user does not have permissions to update on-call schedules3901 behaves like error response3902 has an informative message3903 when feature is not available3904 behaves like error response3905 has an informative message3906 when an on-call schedule witht the same name already exists3907 behaves like error response3908 has an informative message3909 with valid params3910 successfully creates an on-call schedule3911 schedule has a rotation3912 behaves like updates the rotation active periods3913 updates the rotation active periods with new timezone3914 from non-overnight shifts to overnight3915 behaves like updates the rotation active periods3916 updates the rotation active periods with new timezone3917 from overnight shifts to non-overnight3918 behaves like updates the rotation active periods3919 updates the rotation active periods with new timezone3920 new timezone has non-whole-hour change3921 behaves like updates the rotation active periods3922 updates the rotation active periods with new timezone3923 new timezone but same offset3924 updates the timezone3925 does not update the active period times3926 timezone is not changed3927 does not update rotations3928 error updating3929 behaves like error response3930 has an informative message3931Gitlab::Auth::Ldap::Person3932 includes the EE module3933 .ldap_attributes3934 appends EE-specific attributes3935 appends first and last name attributes3936 .find_by_email3937 tries finding for each configured email attribute3938 returns nil when no user was found3939 .find_by_certificate_issuer_and_serial3940 searches by certificate assertion3941 .find_by_kerberos_principal3942 when simple LDAP linking is not configured3943 LDAP server is not for kerberos realm3944 returns nil without searching3945 LDAP server is for kerberos realm3946 searches by configured uid attribute3947 when simple LDAP linking is enabled3948 principal domain matches an allowed realm3949 searches by configured uid attribute3950 principal domain does not match an allowed realm3951 returns nil without searching3952 .ldap_attributes3953 includes a real attribute name3954 excludes integers3955 excludes false values3956 excludes true values3957 #kerberos_principal3958 returns the principal combining the configured UID and DC components of the distinguishedName3959 #ssh_keys3960 when the SSH key is literal3961 includes the SSH key3962 when the SSH key is prefixed3963 includes the SSH key3964 when the SSH key is suffixed3965 includes the SSH key3966 when the SSH key is followed by a newline3967 includes the SSH key3968 when the key is not an SSH key3969 is empty3970 when there are multiple keys3971 includes both SSH keys3972 #memberof3973 returns an empty array if the field was not present3974 returns the values of `memberof` if the field was present3975 #cn_from_memberof3976 gets the group cn from the memberof value3977 doesn't break when there is no CN property3978 supports dashes in the group cn3979 #group_cns3980 returns only CNs from the memberof values3981Groups::ImportExport::ImportService3982 when group_wikis feature is enabled3983/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/carrierwave-1.3.2/lib/carrierwave/mounter.rb:113: warning: deprecated Object#=~ is called on TrueClass; it always returns nil3984 imports group and descendant wiki repositories3985 when export file not in ndjson format3986/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/carrierwave-1.3.2/lib/carrierwave/mounter.rb:113: warning: deprecated Object#=~ is called on TrueClass; it always returns nil3987 does not export group wiki repositories3988 when group_wikis feature is not enabled3989/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/carrierwave-1.3.2/lib/carrierwave/mounter.rb:113: warning: deprecated Object#=~ is called on TrueClass; it always returns nil3990 does not call the group wiki restorer3991vulnerabilities3992 nodes3993 ordering3994 returns the records in correct order3995 pagination3996 returns the correct record3997 pageInfo3998 endCursor3999 encodes last `vulnerability_id` into the `endCursor`4000Groups::MarkForDeletionService4001 marking the group for deletion4002 with user that can admin the group4003 for a group that has not been marked for deletion4004 marks the group for deletion4005 returns success4006 marking for deletion fails4007 returns error4008 for a group that has been marked for deletion4009 does not change the attributes associated with delayed deletion4010 returns error4011 audit events4012 logs audit event4013 with a user that cannot admin the group4014 does not mark the group for deletion4015 returns error4016 audit events4017 does not log audit event4018Security::TrainingProviders::SecureCodeWarriorUrlFinder4019 #execute4020 when external_type is present in allowed list4021 when response is nil4022 returns nil4023 when response is not nil4024 returns content url hash4025 when external_type is not present in allowed list4026 returns nil4027 #full_url4028 returns full url path4029 when identifier contains CWE-{number} format4030 returns full url path with proper mapping key4031 when identifier contains owasp identifier4032 returns full url path with proper mapping key4033 when a language is provided4034 returns full url path with the language parameter mapped4035 #determine_mapping_key4036 when owasp4037 returns external_id4038 when cwe4039 returns parsed identifier name4040 #determine_mapping_list4041 when owasp4042 when owasp-web-20174043 returns proper owasp category4044 when owasp-api-20194045 returns proper owasp category4046 when cwe4047 returns parsed identifier name4048 #allowed_identifier_list4049 returns allowed identifiers4050Gitlab::Auth::GroupSaml::SessionEnforcer4051 #access_restricted4052 when git check is enforced4053 with an active session4054 behaves like not enforced4055 is not enforced4056 with sub-group4057 behaves like not enforced4058 is not enforced4059 with expired session4060 returns true4061 with two active sessions4062 behaves like not enforced4063 is not enforced4064 with two active sessions for the same provider and one pre-sso4065 behaves like not enforced4066 is not enforced4067 without enforced_sso_expiry feature flag4068 behaves like not enforced4069 is not enforced4070 without group4071 behaves like not enforced4072 is not enforced4073 without saml_provider4074 behaves like not enforced4075 is not enforced4076 with admin4077 behaves like not enforced4078 is not enforced4079 with auditor4080 behaves like not enforced4081 is not enforced4082 with group owner4083 behaves like not enforced4084 is not enforced4085 without any session4086 returns true4087 with admin4088 behaves like not enforced4089 is not enforced4090 with auditor4091 behaves like not enforced4092 is not enforced4093 with group owner4094 behaves like not enforced4095 is not enforced4096 when group is a subgroup4097 returns true4098 with project bot4099 behaves like not enforced4100 is not enforced4101 when git check is not enforced4102 with an active session4103 behaves like not enforced4104 is not enforced4105 without any session4106 behaves like not enforced4107 is not enforced4108Deployments::Approval4109 associations4110 is expected to belong to user required: false4111 is expected to belong to deployment required: false4112 is expected to belong to approval_rule class_name => ProtectedEnvironments::ApprovalRule required: false inverse_of => deployment_approvals4113 validations4114 is expected to validate that :user cannot be empty/falsy4115 is expected to validate that :user is case-sensitively unique within the scope of :deployment_id4116 is expected to validate that :deployment cannot be empty/falsy4117 is expected to validate that :status cannot be empty/falsy4118 is expected to validate that the length of :comment is at most 2554119Ide::SchemasConfigService4120 #execute4121 content is not valid4122 returns an error4123 when a predefined schema exists for the given filename4124 with valid config content4125 uses predefined schema matches4126 with invalid config content4127 uses predefined schema matches4128 no schemas are defined4129 returns success with an empty object4130 feature :ide_schema_config is not available4131 returns empty object, despite config being defined4132 feature :ide_schema_config is available4133 schemas are defined and a matching schema is found and valid4134 returns schema successfully4135 schemas are defined and a matching schema is found and but the schema is not a valid JSON4136 returns schema successfully4137 schemas are defined and but no matching schema found4138 returns empty schema object4139 nested schema filename with "**" in match uri4140 returns schema successfully4141Gitlab::Cleanup::OrphanJobArtifactFiles4142 not a Geo secondary4143 does not print cleaning Geo registries message4144 Geo secondary4145 prints cleaning Geo registries message4146 accumulates the number of cleaned Geo registries4147LfsObject4148 is expected to respond to #log_geo_deleted_event4149 when model_record is part of available_verifiables scope4150 creates verification details4151 .with_files_stored_locally4152 includes states with local storage4153 .replicables_for_current_secondary4154 selective_sync_enabled: true, object_storage_sync_enabled: true, lfs_object_object_storage_enabled: false, synced_lfs_objects: 14155 returns the proper number of LFS objects4156 selective_sync_enabled: true, object_storage_sync_enabled: false, lfs_object_object_storage_enabled: false, synced_lfs_objects: 14157 returns the proper number of LFS objects4158 selective_sync_enabled: false, object_storage_sync_enabled: true, lfs_object_object_storage_enabled: false, synced_lfs_objects: 24159 returns the proper number of LFS objects4160 selective_sync_enabled: false, object_storage_sync_enabled: false, lfs_object_object_storage_enabled: false, synced_lfs_objects: 24161 returns the proper number of LFS objects4162 selective_sync_enabled: true, object_storage_sync_enabled: true, lfs_object_object_storage_enabled: true, synced_lfs_objects: 14163 returns the proper number of LFS objects4164 selective_sync_enabled: true, object_storage_sync_enabled: false, lfs_object_object_storage_enabled: true, synced_lfs_objects: 14165 returns the proper number of LFS objects4166 selective_sync_enabled: false, object_storage_sync_enabled: true, lfs_object_object_storage_enabled: true, synced_lfs_objects: 24167 returns the proper number of LFS objects4168 selective_sync_enabled: false, object_storage_sync_enabled: false, lfs_object_object_storage_enabled: true, synced_lfs_objects: 24169 returns the proper number of LFS objects4170Preloaders::Environments::ProtectedEnvironmentPreloader4171 #initialize4172 raises an error if environments belong to more than one project4173 #execute4174 with project-level protected environments4175 preloads protected environments4176 preloads deploy access levels4177 associates protected environments to the correct environment4178 with group-level protected environments4179 preloads protected environments4180 preloads deploy access levels4181 associates protected environments to the correct environment4182LicenseHelper4183 #current_license_title4184 when there is a current license4185 returns the plan titleized if it has a plan associated to it4186 returns the default title if it does not have a plan associated to it4187 when there is NOT a current license4188 returns the default title4189 #seats_calculation_message4190 and guest are excluded from the active count4191 returns the message4192 and guest are NOT excluded from the active count4193 returns nil4194 #licensed_users4195 with a restricted license count4196 returns a number as string4197 without a restricted license count4198 returns Unlimited4199 #cloud_license_view_data4200 when there is a current license4201 returns the data for the view4202 when there is no current license4203 returns the data for the view4204 #show_promotions?4205 without a user4206 is expected to eq false4207 with a user4208 on saas4209 is expected to eq true4210 when gitlabdotcom returns false4211 is expected to eq false4212 on EE4213 with hide on self managed true4214 is expected to eq false4215 without a valid license4216 is expected to eq true4217 with a valid license4218 expired license4219 is expected to eq true4220 non expired license4221 is expected to eq false4222Gitlab::ComplianceManagement::Violations::ApprovedByInsufficientUsers4223 #execute4224 when merge request is approved by sufficient number of users4225 does not create a ComplianceViolation4226 when merge request is approved by insufficient number of users4227 creates a ComplianceViolation4228 when the merge requests merge user is within metrics4229 creates a ComplianceViolation4230 when the merge request does not have a merge user4231 does not create a ComplianceViolation4232NotesFinder4233 #target4234 returns an epic4235 fails if group id is missing4236 #execute4237 when using target id and type of epics4238 returns the expected notes4239 fails if group id is missing4240 when using an explicit epic target4241 returns the expected notes4242MergeRequests::UpdateReviewersService4243 execute4244 when the parameters are valid4245 when using sentinel values4246 removes all reviewers4247 when the reviewer_ids parameter is the empty list4248 removes all reviewers4249 when the reviewer_ids parameter contains both zeros and valid IDs4250 ignores 0 IDs4251Ci::Runners::RegisterRunnerService#execute4252 with a registration token4253 behaves like a service logging a runner registration audit event4254 returns newly-created Runner4255 when project token is used4256 behaves like a service logging a runner registration audit event4257 returns newly-created Runner4258 when it exceeds the application limits4259 behaves like a service logging a failed runner registration audit event4260 returns a Runner4261 returns a non-persisted Runner4262 when group token is used4263 behaves like a service logging a runner registration audit event4264 returns newly-created Runner4265 when it exceeds the application limits4266 behaves like a service logging a failed runner registration audit event4267 returns a Runner4268 returns a non-persisted Runner4269Gitlab::Analytics::CycleAnalytics::StageEvents::MergeRequestLastEdited4270 behaves like value stream analytics event4271 is expected to be a kind of String4272 is expected to be a kind of Symbol4273 is expected to include ApplicationRecord(abstract)4274 is expected to respond to #timestamp_projection4275 is expected to respond to #html_description4276 is expected to be a kind of Array4277 #apply_query_customization4278 expects an ActiveRecord::Relation object as argument and returns a modified version of it4279 #hash_code4280 returns a hash that uniquely identifies an event4281 does not differ when the same object is built with the same params4282 behaves like LEFT JOIN-able value stream analytics event4283 can use the event as LEFT JOIN4284 when looking at the record with data4285 contains the timestamp expression4286 when looking at the record without data4287 returns nil for the timestamp expression4288EE::TrialRegistrationHelper4289 #social_signin_enabled?4290 com: true, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: true4291 is expected to eq true4292 com: true, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: false4293 is expected to eq false4294 com: true, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: true4295 is expected to eq false4296 com: true, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: false4297 is expected to eq false4298 com: true, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: true4299 is expected to eq false4300 com: true, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: false4301 is expected to eq false4302 com: true, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: true4303 is expected to eq false4304 com: true, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: false4305 is expected to eq false4306 com: false, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: true4307 is expected to eq false4308 com: false, omniauth_enabled: true, omniauthable: true, button_based_providers_enabled: false4309 is expected to eq false4310 com: false, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: true4311 is expected to eq false4312 com: false, omniauth_enabled: true, omniauthable: false, button_based_providers_enabled: false4313 is expected to eq false4314 com: false, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: true4315 is expected to eq false4316 com: false, omniauth_enabled: false, omniauthable: true, button_based_providers_enabled: false4317 is expected to eq false4318 com: false, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: true4319 is expected to eq false4320 com: false, omniauth_enabled: false, omniauthable: false, button_based_providers_enabled: false4321 is expected to eq false4322GpgKeysFinder4323 #execute4324 with no parameters4325 returns all GPG keys4326 with defined user parameters4327 returns gpg keys belonging to those users4328Coverage-Fuzzing.gitlab-ci.yml4329 the created pipeline4330 when project has Ultimate license4331 without extending job default4332 includes no job4333 behaves like acts as branch pipeline4334 when branch pipeline4335 includes a job4336 when COVFUZZ_DISABLED=14337 includes no jobs4338Geo::Scheduler::PerShardSchedulerWorker4339 includes ApplicationWorker4340 includes CronjobQueue4341 includes Gitlab::Utils::StrongMemoize4342 includes Gitlab::Geo::LogHelpers4343 instance methods4344 #schedule_job4345 raises a NotImplementedError exception4346 #ready_shards4347 returns an array of ready shards4348 #healthy_ready_shards4349 returns an array of healthy shard names4350 logs unhealthy shards4351 #healthy_shard_names4352 returns an array of healthy shard names4353Mutations::Vulnerabilities::Confirm4354 #resolve4355 when the user can confirm the vulnerability4356 when user doe not have access to the project4357 raises an error4358 when user has access to the project4359 returns the Confirmed vulnerability4360Wikis::CreateAttachmentService4361 behaves like Wikis::CreateAttachmentService#execute4362 adds file to the repository4363 creates wiki repository if it does not exist4364 creates wiki repository4365 if an error is raised creating the repository4366 catches error and return gracefully4367 creates branch if it does not exists4368 is expected to eq "new_branch"4369 returns4370 returns related information4371projects/security/dast_profiles/show4372 renders Vue app root4373 passes new dast site profile path4374 passes new dast scanner profile path4375 passes project's full path4376Types::IncidentManagement::OncallRotationDateInputType4377 # order random4378 accepts date and time4379 behaves like invalid parsed datetime4380 like 1923-39-024381 raises an argument error4382 behaves like invalid time format4383 like 24:594384 raises an argument error4385 behaves like invalid date format4386 like 1923-02-24387 raises an argument error4388 behaves like invalid time format4389 like 23:604390 raises an argument error4391 behaves like invalid date format4392 like 192312024393 raises an argument error4394 behaves like invalid time format4395 like 00:994396 raises an argument error4397 behaves like invalid date format4398 like 1923-2-024399 raises an argument error4400 behaves like invalid date format4401 like 20000-12-034402 raises an argument error4403 behaves like invalid time format4404 like 99:994405 raises an argument error4406 behaves like invalid date format4407 like YYYY-MM-DD4408 raises an argument error4409 behaves like invalid time format4410 like 00:0004411 raises an argument error4412 behaves like invalid time format4413 like 07254414 raises an argument error4415 behaves like invalid parsed datetime4416 like 2021-02-304417 raises an argument error4418 behaves like invalid time format4419 like 123:004420 raises an argument error4421Resolvers::Vulnerabilities::IssueLinksResolver4422 #ready?4423 when the link_type filter is given but is not `CREATED` or `RELATED`4424 when the filter is a string4425 generates an error4426 when the filter is a number4427 generates an error4428 when the filter is a symbol4429 generates an error4430 #resolve4431 when there is no filter given4432 is expected to contain exactly #<Vulnerabilities::IssueLink id: 1, vulnerability_id: 21, issue_id: 239, link_type: "related", created_at: "2022-12-08 01:28:28.050863141 +0000", updated_at: "2022-12-08 01:28:28.050863141 +0000"> and #<Vulnerabilities::IssueLink id: 2, vulnerability_id: 21, issue_id: 240, link_type: "created", created_at: "2022-12-08 01:28:28.411139537 +0000", updated_at: "2022-12-08 01:28:28.411139537 +0000">4433 is expected not to raise Exception4434 when the link_type filter is given4435 when the filter is `CREATED`4436 is expected to contain exactly #<Vulnerabilities::IssueLink id: 2, vulnerability_id: 21, issue_id: 240, link_type: "created", created_at: "2022-12-08 01:28:28.411139537 +0000", updated_at: "2022-12-08 01:28:28.411139537 +0000">4437 is expected not to raise Exception4438 when the filter is `RELATED`4439 is expected to contain exactly #<Vulnerabilities::IssueLink id: 1, vulnerability_id: 21, issue_id: 239, link_type: "related", created_at: "2022-12-08 01:28:28.050863141 +0000", updated_at: "2022-12-08 01:28:28.050863141 +0000">4440 is expected not to raise Exception4441Elastic::Latest::CustomLanguageAnalyzers4442 .custom_analyzers_mappings4443 returns correct structure4444 .custom_analyzers_fields4445 smartcn_enabled: false, kuromoji_enabled: false, expected_result: {}4446 returns correct config4447 smartcn_enabled: true, kuromoji_enabled: false, expected_result: {:smartcn=>{:analyzer=>"smartcn", :type=>:text}}4448 returns correct config4449 smartcn_enabled: false, kuromoji_enabled: true, expected_result: {:kuromoji=>{:analyzer=>"kuromoji", :type=>:text}}4450 returns correct config4451 smartcn_enabled: true, kuromoji_enabled: true, expected_result: {:smartcn=>{:analyzer=>"smartcn", :type=>:text}, :kuromoji=>{:analyzer=>"kuromoji", :type=>:text}}4452 returns correct config4453 .add_custom_analyzers_fields4454 smartcn_enabled: false, kuromoji_enabled: false, smartcn_search: false, kuromoji_search: false, expected_additional_fields: []4455 returns correct fields4456 smartcn_enabled: false, kuromoji_enabled: false, smartcn_search: true, kuromoji_search: true, expected_additional_fields: []4457 returns correct fields4458 smartcn_enabled: true, kuromoji_enabled: true, smartcn_search: false, kuromoji_search: false, expected_additional_fields: []4459 returns correct fields4460 smartcn_enabled: true, kuromoji_enabled: true, smartcn_search: true, kuromoji_search: false, expected_additional_fields: ["title.smartcn"]4461 returns correct fields4462 smartcn_enabled: true, kuromoji_enabled: true, smartcn_search: false, kuromoji_search: true, expected_additional_fields: ["title.kuromoji"]4463 returns correct fields4464 smartcn_enabled: true, kuromoji_enabled: true, smartcn_search: true, kuromoji_search: true, expected_additional_fields: ["title.smartcn", "title.kuromoji"]4465 returns correct fields4466shared/credentials_inventory/personal_access_tokens/_personal_access_token.html.haml4467 shows the users name4468 shows the created on date4469 shows the expiry date4470 revoked date4471 when revoked is set4472 shows the revoked on date4473 does not show the revoke button4474 when revoked is not set4475 does not show the revoked on date4476 shows the revoke button4477 scopes4478 when set4479 shows the scopes4480 when not set4481 shows "No Scopes"4482geo:git:housekeeping4483 geo:git:housekeeping:gc4484 behaves like housekeeping task4485 sets existing projects syncs_gc count to housekeeping_gc_period-14486 geo:git:housekeeping:full_repack4487 behaves like housekeeping task4488 sets existing projects syncs_gc count to housekeeping_full_repack_period-14489 geo:git:housekeeping:incremental_repack4490 behaves like housekeeping task4491 sets existing projects syncs_gc count to housekeeping_incremental_repack_period-14492NotesHelpers4493 #find_noteable4494 #find_noteable4495 returns the expected epic4496 raises not found exception when epic does not belong to group4497Auth::ProvisionedUsersFinder4498 #execute4499 #base_scope4500 when provisioning_group param is not passed4501 raises provisioning group error4502 when provisioning_group param is passed4503 returns provisioned_user4504 #by_search4505 filters by search4506IncidentManagement::EscalationPoliciesFinder4507 # order random4508 #execute4509 when feature is available4510 when user has permissions4511 returns project escalation policies4512 when id given4513 is expected to contain exactly #<IncidentManagement::EscalationPolicy id: 8, project_id: 859, name: "unique identifier", description: [FILTERED]>4514 when exact_name is given4515 is expected to contain exactly #<IncidentManagement::EscalationPolicy id: 8, project_id: 859, name: "unique identifier", description: [FILTERED]>4516 when the name does not match4517 is expected to eq #<ActiveRecord::Relation []>4518 when search_name is given4519 is expected to contain exactly #<IncidentManagement::EscalationPolicy id: 8, project_id: 859, name: "unique identifier", description: [FILTERED]>4520 when the name does not match4521 is expected to eq #<ActiveRecord::Relation []>4522 when no params are given4523 is expected to contain exactly #<IncidentManagement::EscalationPolicy id: 8, project_id: 859, name: "unique identifier", description: [FILTERED]>4524 when user has no permissions4525 is expected to eq #<ActiveRecord::Relation []>4526 when feature is not avaiable4527 is expected to eq #<ActiveRecord::Relation []>4528Mutations::IncidentManagement::IssuableResourceLink::Create4529 # order random4530 is expected to require graphql authorizations :admin_issuable_resource_link4531 #resolve4532 when a user has permissions to create a resource link4533 when IssuableResourceLink::CreateService responds with success4534 adds issuable resource link to database4535 adds associated resource link with incident4536 when IssuableResourceLink::CreateService responds with an error4537 returns error4538 when incorrect link is passed4539 returns error4540 when incorrect link type is passed4541 raises an error4542 when issue type is not incident4543 raises an error4544 when a user has no permissions to create issuable resource link4545 raises an error4546 when issuable resource link feature is not avaiable4547 raises an error4548Gitlab::Geo::LogCursor::Events::ResetChecksumEvent4549 #process4550 when a tracking entry does not exist4551 does not create a tracking entry4552 logs an info event4553 when a tracking entry exists4554 resets repository/wiki verification state4555 logs an info event4556Gitlab::StatusPage::Storage::S3Client4557 # order random4558 #list_object_keys4559 when successful4560 returns keys from bucket4561 when exceeds upload limits4562 returns result at max size4563 when list_object returns no objects4564 returns an empty set4565 when failed4566 raises an error4567 #delete_object4568 returns true4569 when failed4570 raises an error4571 #recursive_delete4572 when successful4573 sends keys for batch delete4574 returns true4575 list_object exeeds upload limit4576 respects upload limit4577 when list_object returns no objects4578 does not attempt to delete4579 when failed4580 raises an error4581 #upload_object4582 when successful4583 returns true4584 when failed4585 raises an error4586Projects::HashedStorage::MigrateAttachmentsService4587 #execute4588 on success4589 returns true4590 creates a Geo::HashedStorageAttachmentsEvent4591 on failure4592 does not create a Geo event when skipped4593 does not create a Geo event on failure4594UsersSecurityDashboardProject4595 associations4596 is expected to belong to project required: false4597 is expected to belong to user required: false4598 validations4599 is expected to validate that :user cannot be empty/falsy4600 is expected to validate that :project cannot be empty/falsy4601 is expected to validate that :project_id is case-sensitively unique within the scope of :user_id4602 when validating the number of projects a user can add to their dashboard4603 limits the number of projects per user4604 allows a user to add a project if they are under the limit4605 .delete_by_project_id4606 deletes all entries for the given project ID4607 when there is no record with the given project ID4608 fails silently4609RequirementsManagement::ImportRequirementsCsvWorker4610 #perform4611 calls #execute on Requirements::ImportCsvService and destroys upload4612 behaves like an idempotent worker4613 is labeled as idempotent4614 performs multiple times sequentially without raising an exception4615EE::API::Entities::Scim::Users4616 contains the schemas4617 calculates the totalResults4618 contains the default itemsPerPage4619 contains the default startIndex4620 contains the user4621 contains the user ID4622 with configured values4623 contains the configured totalResults4624 contains the configured itemsPerPage4625 contains the configured startIndex4626IssuableSidebarExtrasEntity4627 when the gitlab_employee_badge flag is off4628 does not expose the is_gitlab_employee field for assignees4629 when the gitlab_employee_badge flag is on but we are not on gitlab.com4630 does not expose the is_gitlab_employee field for assignees4631 when gitlab_employee_badge flag is on and we are on gitlab.com4632 exposes is_gitlab_employee field for assignees4633EE::MembersPreloader4634 #preload_all4635 preloads associations to avoid N+1 queries4636Geo::RepositoryCleanupWorker4637 #perform4638 skips repository clean up if the current node is a primary4639 when node does not have selective sync restriction4640 does not delegate project removal4641 when node has selective sync restriction4642 does not delegate project removal for projects that belong to selected namespaces to replicate4643 delegates project removal for projects that do not belong to selected namespaces to replicate4644Password::ComplexityValidator4645 #validates_each4646 without any validation rule4647 is valid4648 with a validation rule4649 when lowcase required rule is not matched4650 is invalid4651 when lowcase required rule is matched4652 is valid4653 .required_complexity_rules4654 when no rules are enabled4655 returns an empty array4656 when lowcase required rule is enabled4657 returns a lowcase required rule4658 when all rules are required4659 returns 4 rules4660Ci::BatchResetMinutesWorker4661 #perform4662 delegates to Ci::Minutes::BatchResetService4663 behaves like an idempotent worker4664 is labeled as idempotent4665 performs multiple times sequentially without raising an exception4666 does not recalculate purchased minutes for the namespace exceeding the monthly minutes4667 behaves like resets CI minutes and notification4668 resets CI minutes used and notification data4669 behaves like resets CI minutes and notification4670 resets CI minutes used and notification data4671Preloaders::GroupPolicyPreloader4672 when ip_restrictions feature is enabled4673 avoids N+1 queries when authorizing a list of groups4674 when check_namespace_plan setting is disabled4675 does not preload group plans4676 when check_namespace_plan setting is enabled4677 preloads group plans4678Integrations::SlackEvents::AppHomeOpenedService4679 # order random4680 #execute4681 calls the Slack API correctly and returns a success response4682 when the slack installation is a legacy record4683 behaves like there is no bot token4684 does not call the Slack API, logs info, and returns a success response4685 when the slack installation cannot be found4686 behaves like there is no bot token4687 does not call the Slack API, logs info, and returns a success response4688 when the Slack API call raises an HTTP exception4689 tracks the exception and returns an error response4690 when the Slack API returns an error4691 tracks the exception and returns an error response4692Gitlab::Insights::ProjectInsightsConfig4693 filtering out invalid config entries4694 does not include invalid entry4695 does not show notice text4696 when no projects.only filter present4697 does not change the config4698 clones the original config4699 when not included in the projects.only filter4700 by project id4701 filters out the chart4702 does not have a notice text4703 by project full path4704 filters out the chart4705 when included in projects.only filter4706 by project id4707 includes the chart4708 does not have notice text4709 by project full path4710 filters out the chart4711 when all charts are excluded4712 returns an empty hash4713admin/identities/index.html.haml4714 without SCIM or other identities4715 shows information text4716 with SCIM identities4717 shows exactly 5 columns4718 shows identity without provider ID4719 shows no edit or delete identity buttons4720 with SAML identities4721 shows exactly 5 columns4722 shows identity with provider ID or group4723 shows edit and delete identity buttons4724Gitlab::ObjectHierarchy4725 #root4726 includes only the roots4727 when quering parent it includes parent4728Gitlab::Usage::Metrics::Instrumentations::CountUsersAssociatingGroupMilestonesToReleasesMetric4729 behaves like a correct instrumented metric value4730 has correct value4731Vulnerabilities::UserNotesCountService4732 behaves like a counter caching service4733 #count4734 caches the count4735 #refresh_cache4736 refreshes the cache4737 #delete_cache4738 removes the cache4739 #uncached_count4740 does not cache the count4741AlertManagement::HttpIntegrations::CreateService4742 #execute4743 with multiple HTTP integrations feature available4744 successfully creates a new integration with the custom mappings4745 when an integration already exists4746 successfully creates a new integration4747Resolvers::AppSec::Dast::ProfileResolver4748 is expected to have nullable GraphQL type DastProfileConnection4749 when resolving a single DAST profile4750 when the DAST profile exists4751 is expected to eq #<Dast::Profile id: 40, project_id: 891, dast_site_profile_id: 40, dast_scanner_profile_id: 40, creat...059103989 +0000", name: "Portable Adapter c603df72 - 49", description: [FILTERED], branch_name: nil>4752 when the DAST profile does not exist4753 is expected to be nil4754 when resolving multiple DAST profiles4755 is expected to contain exactly #<Dast::Profile id: 40, project_id: 891, dast_site_profile_id: 40, dast_scanner_profile_id: 40, creat...059103989 +0000", name: "Portable Adapter c603df72 - 49", description: [FILTERED], branch_name: nil> and #<Dast::Profile id: 41, project_id: 891, dast_site_profile_id: 41, dast_scanner_profile_id: 41, creat...9:24.255413380 +0000", name: "Gel Bracket 443a3202 - 50", description: [FILTERED], branch_name: nil>4756 when the feature is disabled4757 is expected to be empty4758 when the user does not have access4759 is expected to be empty4760License-Scanning.gitlab-ci.yml4761 the created pipeline4762 when project has no license4763 includes no jobs4764 when project has Ultimate license4765 by default4766 includes job4767 when LICENSE_MANAGEMENT_DISABLED=14768 includes no jobs4769Audit::ProtectedBranchesChangesAuditor4770 # order random4771 #execute4772 when allow_force_push changed4773 creates an event4774 streams correct audit event stream4775 when code_owner_approval_required changed4776 creates an event4777 streams correct audit event stream4778 type: :push, old_access_levels: old_push_access_levels, new_access_levels: new_push_access_levels, change_text: "allowed to push"4779 when access levels changed4780 creates an event4781 streams correct audit event stream4782 type: :merge, old_access_levels: old_merge_access_levels, new_access_levels: new_merge_access_levels, change_text: "allowed to merge"4783 when access levels changed4784 creates an event4785 streams correct audit event stream4786RoadmapsHelper4787 #roadmap_layout4788 guest4789 is sourced from params if exists4790 returns default if params do not exist4791 logged in4792 is sourced from User#roadmap_layout4793 #roadmap_sort_order4794 guest4795WARNING: An expectation of `:user_preference` 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/helpers/roadmaps_helper_spec.rb:42:in `block (3 levels) in <top (required)>'.4796 returns default sort order4797 user without preferences set4798 returns default sort order4799 user with preference set4800 returns saved user preference4801Boards::EpicUserPreferences::UpdateService4802 #execute4803 creates new preference4804 when user preference already exists4805 updates existing preference4806 when user is not set4807 returns an error4808UserRecentEventsFinder4809 #execute4810 epic related activities4811 when profile is public4812 is expected to contain exactly #<Event project_id: nil, author_id: 2200, target_id: 221, created_at: "2022-12-08 01:29:33.141278034 ...41278034 +0000", action: "commented", target_type: "Note", group_id: nil, fingerprint: nil, id: 487> and #<Event project_id: nil, author_id: 2200, target_id: 139, created_at: "2022-12-08 01:29:33.146734283 ...3.146734283 +0000", action: "closed", target_type: "Epic", group_id: nil, fingerprint: nil, id: 488>4813 when profile is private4814 is expected to be empty4815 wehen fetching events from multiple users4816 when filtering for epic events4817 is expected to eq [#<Event project_id: nil, author_id: 2201, target_id: 139, created_at: "2022-12-08 01:29:33.270113905....146734283 +0000", action: "closed", target_type: "Epic", group_id: nil, fingerprint: nil, id: 488>]4818SystemCheck::Geo::HTTPCloneEnabledCheck4819 #check?4820 enabled_protocol: "unknown", result: false4821 is expected to eq false4822 enabled_protocol: "ssh", result: false4823 is expected to eq false4824 enabled_protocol: "http", result: true4825 is expected to eq true4826 enabled_protocol: "", result: true4827 is expected to eq true4828 enabled_protocol: nil, result: true4829 is expected to eq true4830DeleteMergeRequestsFromOriginalIndex4831 behaves like a deprecated Advanced Search migration4832 #migrate4833 logs a message and halts the migration4834 #completed?4835 returns false4836 #obsolete?4837 returns true4838Geo::NodeStatusRequestService4839 behaves like a geo RequestService4840 #execute4841 parses a 401 response4842 alerts on bad SSL certficate4843 handles connection refused4844 returns meaningful error message when primary uses incorrect db key4845 gracefully handles case when primary is deleted4846 #execute4847 does not include id in the payload4848 sends geo_node_id in the request4849 sends all of the data in the status JSONB field in the request4850Gitlab::ComplianceManagement::Violations::ApprovedByMergeRequestAuthor4851 #execute4852 when merge request is approved by someone other than the author4853 does not create a ComplianceViolation4854 when merge request is also approved by the author4855 behaves like violation4856 creates a ComplianceViolation4857 when merge request is approved by its author4858 behaves like violation4859 creates a ComplianceViolation4860HealthStatus4861 #supports_health_status?4862 issuable_type: :issue, issuable_health_status: true, supports_health_status: true4863 is expected to eq true4864 issuable_type: :issue, issuable_health_status: false, supports_health_status: false4865 is expected to eq false4866 issuable_type: :incident, issuable_health_status: true, supports_health_status: false4867 is expected to eq false4868 issuable_type: :incident, issuable_health_status: false, supports_health_status: false4869 is expected to eq false4870 issuable_type: :merge_request, issuable_health_status: true, supports_health_status: false4871 is expected to eq false4872 issuable_type: :merge_request, issuable_health_status: false, supports_health_status: false4873 is expected to eq false4874EE::Gitlab::Auth::Ldap::Group4875 #member_dns4876 resolves the correct member_dns when member has a range4877 removes extraneous spaces from DNs4878 when there are nested groups4879 resolves the correct member_dns when there are nested groups4880 skips duplicate nested groups4881 does not include group dns or users outside of the base4882 logs an error when the LDAP base is invalid4883 logs a warning when an invalid member DN is found in an LDAP group4884 resolves the correct member_dns when the LDAP base is not normalized4885Gitlab::Auth::GroupSaml::AuthHash4886 #groups4887 with a lowercase groups attribute4888 returns array of groups4889 with a capitalized Groups attribute4890 returns array of groups4891 when no groups are present in the auth hash4892 returns an empty array4893 allowed user attributes methods4894 when the attributes are presented as an array4895 returns the proper can_create_groups value4896 returns the proper projects_limit value4897 when the attributes are presented as a string4898 returns the proper can_create_groups value4899 returns the proper projects_limit value4900 when the attributes are not present in the SAML response4901 returns nil for can_create_group4902 returns nil for can_create_groups4903Sidebars::Projects::Menus::CiCdMenu4904 Test Cases4905 when licensed feature quality_management is not enabled4906 does not include test cases menu item4907 when licensed feature quality_management is enabled4908 when user can read issues4909 includes test cases menu item4910 when user cannot read issues4911 does not include test cases menu item4912trials/_skip_trial.html.haml4913 without glm_source4914 is expected to have text "Skip Trial"4915 with glm_source of about.gitlab.com4916 is expected to have text "Skip Trial"4917 with glm_source of gitlab.com4918 is expected to have text "Go back to GitLab"4919ElasticsearchIndexedProject4920 behaves like an elasticsearch indexed container4921 validations4922 validates uniqueness of main attribute4923 callbacks4924 on save4925 triggers index_project4926 performs the expected action4927 on destroy4928 triggers delete_from_index4929 performs the expected action4930ComplianceManagement::ChainOfCustodyReportWorker4931 #perform4932 has the `until_executed` deduplicate strategy4933 when the params are valid4934 calls the service4935 creates a notification4936 when an error is raised4937 when the csv fails to generate4938 raises an error4939 when no user id is passed4940 logs the error4941 when no group id is passed4942 logs the error4943Geo::VerificationStateBackfillService4944 #execute4945 when a replicable is missing a corresponding verifiable4946 adds a new verifiable4947 when some replicables were removed from scope4948 deletes the verifiable4949RemovePermissionsDataFromNotesDocuments4950 behaves like a deprecated Advanced Search migration4951 #migrate4952 logs a message and halts the migration4953 #completed?4954 returns false4955 #obsolete?4956 returns true4957Gitlab::Tracking::StandardContext4958 #to_context4959 plan4960 when namespace is not available4961 is nil4962 when namespace is available4963 contains plan name4964DeleteNotesFromOriginalIndex4965 behaves like a deprecated Advanced Search migration4966 #migrate4967 logs a message and halts the migration4968 #completed?4969 returns false4970 #obsolete?4971 returns true4972ProjectCacheWorker4973 #perform4974 with an existing project4975 when in Geo secondary node4976 updates only non database cache4977 is idempotent4978AppSec::Dast::ProfileSchedules::Audit::UpdateService4979 #execute4980 creates audit events for the changed properties4981AlertManagement::HttpIntegrations::UpdateService4982 #execute4983 with multiple HTTP integrations feature available4984 successfully creates a new integration with the custom mappings4985World4986 .all_countries4987 does not return countries that are in the denied list4988 .countries_for_select4989 returns list of country name and iso_code in alphabetical format4990 .states_for_country4991 returns a list of state names for a country in alphabetical order4992 returns nil when given country cannot be found4993 excludes blocked states from the list4994 .alpha3_from_alpha24995 returns the three letter abbreviated country name4996 returns nil when given country cannot be found4997layouts/project4998 # order random4999 when free plan limit alert is present5000 renders the alert partial5001Gitlab::Graphql::Aggregations::Epics::LazyLinksAggregate5002 behaves like issuable lazy links aggregate5003 #initialize5004 adds the issuable_id to the `blocked` lazy state by default5005 #links_aggregate5006 when link_type is `blocked`5007 behaves like block provided5008WARNING: 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)>'.5009 calls the block5010 behaves like the record has already been loaded5011 does not make the query again5012 behaves like the record has not been loaded5013 clears the pending IDs5014 when link_type is `blocking`5015 behaves like block provided5016WARNING: 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)>'.5017 calls the block5018 behaves like the record has already been loaded5019 does not make the query again5020 behaves like the record has not been loaded5021 clears the pending IDs5022cadences routing5023 routes to show cadences list5024 routes to new cadence5025 routes to edit cadence5026 routes to list iterations within cadence5027 routes to show iteration within cadence5028 routes to edit iteration within cadence5029 routes to new iteration within cadence5030UserDetail5031 is expected to belong to provisioned_by_group required: false5032 #provisioned_by_group?5033 returns true when user is provisioned by group5034 returns true when user is provisioned by group5035GeoNodePolicy5036 when the user is an admin5037 when admin mode is enabled5038 allows read_geo_node for any GeoNode5039 when admin mode is disabled5040 disallows read_geo_node for any GeoNode5041 when the user is not an admin5042 disallows read_geo_node for any GeoNode5043Gitlab::ImportExport::RepoRestorer5044 restores group wiki bundles5045 when group wiki in bundle5046 restores the repo successfully5047 when no group wiki in the bundle5048 does not creates an empty wiki5049Sidebars::Projects::Menus::MonitorMenu5050 Menu items5051 On-call Schedules5052 is expected not to be nil5053 when the user does not have access5054 is expected to be nil5055 Escalation Policies5056 is expected not to be nil5057 when the user does not have access5058 is expected to be nil5059Gitlab::Usage::Metrics::Instrumentations::EpicsDeepestRelationshipLevelMetric5060 # order random5061 behaves like a correct instrumented metric value5062 has correct value5063Timebox5064 # order random5065 #merge_requests_enabled?5066 raises NotImplementedError5067 #to_reference5068 raises NotImplementedError5069 #resource_parent5070 raises NotImplementedError5071Mutations::GitlabSubscriptions::Activate5072 #resolve5073 when successful5074 returns no errors, a license and no future subscriptions5075 when there are future subscriptions5076 returns the no errors, a license and the future subscriptions5077 when failure5078 returns errors5079 when non-admin5080 raises errors5081Types::Geo::PipelineArtifactRegistryType5082 has the expected fields (other than those included in RegistryType)5083 behaves like a Geo registry type5084 is expected to require graphql authorizations :read_geo_registry5085 has the expected fields5086Types::Geo::MergeRequestDiffRegistryType5087 has the expected fields (other than those included in RegistryType)5088 behaves like a Geo registry type5089 is expected to require graphql authorizations :read_geo_registry5090 has the expected fields5091IncidentManagement::IssuableEscalationStatuses::CreateService5092 # order random5093 creates an escalation status for the incident with no policy set5094Gitlab::Usage::Metrics::Instrumentations::AdvancedSearch::LuceneVersionMetric5095 behaves like a correct instrumented metric value5096 has correct value5097 elasticsearch_indexing is enabled5098 behaves like a correct instrumented metric value5099 has correct value5100ElasticClusterReindexingCronWorker5101 #perform5102 calls execute method5103 removes old indices if no task is found5104Geo::RepositoryRegistryRemovalService5105 #execute5106 removes registry record5107 removes repository5108Sbom::Ingestion::OccurrenceMapCollection5109 # order random5110 #each5111 behaves like #each5112 yields for every component when given a block5113 when not given a block5114 creates an occurrence map for each occurrence5115 when report source is nil5116 behaves like #each5117 yields for every component when given a block5118 when not given a block5119 creates an occurrence map for each occurrence5120Sbom::Ingestion::IngestReportsService5121 # order random5122 #execute5123 executes IngestReportService for each report5124 when a report is invalid5125 does not process the invalid report5126Types::Vulnerability::IssueLinkType5127 is expected to have graphql fields :id, :link_type, and :issue5128 is expected to require graphql authorizations :read_issue_link5129Types::IncidentManagement::OncallRotationType5130 # order random5131 returns enough records to cover 2 weeks of hour-long shifts5132 is expected to eq "IncidentManagementOncallRotation"5133 is expected to require graphql authorizations :read_incident_management_oncall_schedule5134 exposes the expected fields5135Admin::SetFeatureFlagService5136 # order random5137 #execute5138 when enabling the feature flag that is a licensed feature5139 returns an error5140 when force: true5141 enables the feature flag5142Gitlab::GlRepository5143 .parse5144 parses a group wiki gl_repository5145compliance_management/compliance_framework/_compliance_framework_badge.html.haml5146 when show5147 renders a badge5148 when not show5149 does not render any badge5150Geo::ProjectWikiRepositoryRegistry5151 # order random5152 factory is valid5153Types::Geo::DependencyProxyManifestRegistryType5154 # order random5155 has the expected fields (other than those included in RegistryType)5156 behaves like a Geo registry type5157 is expected to require graphql authorizations :read_geo_registry5158 has the expected fields5159Types::PermissionTypes::Project5160 is expected to have graphql field :admin_path_locks5161Types::VulnerabilitySortEnum5162 is expected to eq "VulnerabilitySort"5163 exposes all the existing Vulnerability sort orders5164Types::IncidentManagement::OncallShiftType5165 # order random5166 exposes the expected fields5167 is expected to eq "IncidentManagementOncallShift"5168Boards::EpicBoards::DestroyService5169 behaves like board destroy service5170 #execute5171 when there is more than one board5172 destroys the board5173 when there is only one board5174 does remove board5175BaseCountService5176 #update_cache_for_key5177 calls Gitlab::Cache.delete_on_geo_secondaries5178Types::WorkItems::Widgets::HealthStatusInputType5179 # order random5180 is expected to eq "WorkItemWidgetHealthStatusInput"5181 is expected to contain exactly "healthStatus"5182Types::AppSec::Fuzzing::API::ScanProfileType5183 is expected to have graphql fields :name, :description, and :yaml5184Types::VulnerabilityLocation::ContainerScanningType5185 is expected to have graphql fields :dependency, :image, and :operating_system5186Types::SecurityOrchestration::ProjectSecurityPolicySourceType5187 is expected to have graphql fields :project5188Types::VulnerabilityDetails::TableType5189 is expected to have graphql fields :name, :description, :fieldName, :headers, and :rows5190Knapsack report was generated. Preview:5191{5192 "ee/spec/services/ee/notification_service_spec.rb": 288.7981280489994,5193 "ee/spec/lib/gitlab/elastic/project_search_results_spec.rb": 147.63155350099987,5194 "ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb": 136.44257385399942,5195 "ee/spec/lib/gitlab/ci/templates/sast_latest_gitlab_ci_yaml_spec.rb": 87.67821306500082,5196 "ee/spec/services/ee/notes/quick_actions_service_spec.rb": 74.09177841099972,5197 "ee/spec/models/geo_node_spec.rb": 44.59426345000065,5198 "ee/spec/finders/epics_finder_spec.rb": 40.97464444999969,5199 "ee/spec/models/geo/job_artifact_registry_spec.rb": 42.51037440000073,5200 "ee/spec/models/dast/profile_schedule_spec.rb": 33.55568313599906,5201 "ee/spec/services/ee/merge_requests/create_pipeline_service_spec.rb": 48.70556303699959,5202 "ee/spec/services/approval_rules/create_service_spec.rb": 30.51932935900004,5203 "ee/spec/models/merge_request_block_spec.rb": 30.095598351999797,5204 "ee/spec/services/geo/repository_sync_service_spec.rb": 13.384032373998707,5205 "ee/spec/services/ci/create_pipeline_service/cross_needs_artifacts_spec.rb": 18.232201950999297,5206 "ee/spec/services/ci/minutes/update_project_and_namespace_usage_service_spec.rb": 17.691935360999196,5207 "ee/spec/services/geo/design_repository_sync_service_spec.rb": 17.08558352200089,5208 "ee/spec/services/projects/transfer_service_spec.rb": 23.681058119000227,5209 "ee/spec/finders/merge_requests_finder_spec.rb": 17.67658866400052,5210 "ee/spec/finders/issues_finder_spec.rb": 13.600616332001664,5211 "ee/spec/presenters/vulnerability_presenter_spec.rb": 15.586189514999205,5212 "ee/spec/helpers/subscriptions_helper_spec.rb": 10.534799948998625,5213 "ee/spec/models/concerns/geo/verification_state_spec.rb": 7.461780696999995,5214 "ee/spec/models/snippet_repository_spec.rb": 20.4282764139989,5215 "ee/spec/services/ci/audit_variable_change_service_spec.rb": 12.719267263000802,5216 "ee/spec/services/gitlab_subscriptions/preview_billable_user_change_service_spec.rb": 12.189656762000595,5217 "ee/spec/serializers/blocking_merge_request_entity_spec.rb": 8.396992277999743,5218 "ee/spec/services/ee/merge_requests/post_merge_service_spec.rb": 8.902333141999407,5219 "ee/spec/services/system_notes/epics_service_spec.rb": 10.036938022998584,5220 "ee/spec/helpers/boards_helper_spec.rb": 4.117350095999427,5221 "ee/spec/services/protected_environments/create_service_spec.rb": 10.22507727500124,5222 "ee/spec/services/issuable/discussions_list_service_spec.rb": 9.741432408000037,5223 "ee/spec/lib/gitlab/ci/templates/secure_binaries_ci_yaml_spec.rb": 9.414834387000155,5224 "ee/spec/services/ee/todos/destroy/entity_leave_service_spec.rb": 8.265417247999721,5225 "ee/spec/finders/custom_project_templates_finder_spec.rb": 6.233414379999886,5226 "ee/spec/services/ee/system_notes/issuables_service_spec.rb": 6.837868449998496,5227 "ee/spec/workers/sync_seat_link_request_worker_spec.rb": 5.763001290999455,5228 "ee/spec/lib/gitlab/email/handler/create_note_handler_spec.rb": 11.554643666999254,5229 "ee/spec/lib/ee/sidebars/groups/menus/settings_menu_spec.rb": 4.117972655998528,5230 "ee/spec/services/app_sec/dast/scans/run_service_spec.rb": 7.696636361999481,5231 "ee/spec/lib/gitlab/ci/templates/dast_gitlab_ci_yaml_spec.rb": 7.459750776999499,5232 "ee/spec/services/security/ingestion/tasks/ingest_vulnerability_statistics_spec.rb": 6.83891851000044,5233 "ee/spec/elastic/migrate/20221026082700_backfill_users_spec.rb": 8.28311748499982,5234 "ee/spec/workers/group_saml_group_sync_worker_spec.rb": 6.301469609999913,5235 "ee/spec/lib/gitlab/ci/parsers/security/dependency_scanning_spec.rb": 5.363026850000097,5236 "ee/spec/graphql/resolvers/geo/dependency_proxy_manifest_registries_resolver_spec.rb": 5.758607031999418,5237 "ee/spec/graphql/resolvers/geo/group_wiki_repository_registries_resolver_spec.rb": 5.770063359999767,5238 "ee/spec/graphql/mutations/incident_management/escalation_policy/update_spec.rb": 4.083795061000274,5239 "ee/spec/lib/ee/api/entities/geo_node_status_spec.rb": 1.2368123849992116,5240 "ee/spec/services/software_license_policies/update_service_spec.rb": 4.815460551999422,5241 "ee/spec/lib/banzai/reference_parser/iteration_parser_spec.rb": 4.190115295001306,5242 "ee/spec/services/incident_management/oncall_schedules/update_service_spec.rb": 4.391207355000006,5243 "ee/spec/lib/gitlab/auth/ldap/person_spec.rb": 2.0468851549994724,5244 "ee/spec/services/ee/groups/import_export/import_service_spec.rb": 5.917957337000189,5245 "ee/spec/graphql/api/vulnerabilities_spec.rb": 6.733075115998872,5246 "ee/spec/services/groups/mark_for_deletion_service_spec.rb": 4.062019754001085,5247 "ee/spec/finders/security/training_providers/secure_code_warrior_url_finder_spec.rb": 3.8940616300005786,5248 "ee/spec/lib/gitlab/auth/group_saml/session_enforcer_spec.rb": 3.398331643000347,5249 "ee/spec/models/deployments/approval_spec.rb": 6.468634905000727,5250 "ee/spec/services/ide/schemas_config_service_spec.rb": 3.0355217779997474,5251 "ee/spec/lib/ee/gitlab/cleanup/orphan_job_artifact_files_spec.rb": 2.985303114000999,5252 "ee/spec/models/ee/lfs_object_spec.rb": 4.347013872000389,5253 "ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb": 3.906075606999366,5254 "ee/spec/helpers/license_helper_spec.rb": 1.5698059259993897,5255 "ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb": 5.177311448000182,5256 "ee/spec/finders/notes_finder_spec.rb": 4.318892885999958,5257 "ee/spec/services/ee/merge_requests/update_reviewers_service_spec.rb": 4.158652570000413,5258 "ee/spec/services/ci/runners/register_runner_service_spec.rb": 3.2007988630011823,5259 "ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_edited_spec.rb": 2.8760454210005264,5260 "ee/spec/helpers/ee/trial_registration_helper_spec.rb": 1.2911295570011134,5261 "ee/spec/finders/gpg_keys_finder_spec.rb": 3.047002135001094,5262 "ee/spec/lib/gitlab/ci/templates/coverage_fuzzing_gitlab_ci_yaml_spec.rb": 1.9237069829996472,5263 "ee/spec/workers/geo/scheduler/per_shard_scheduler_worker_spec.rb": 0.8307780359991739,5264 "ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb": 3.5360335530003795,5265 "ee/spec/services/wikis/create_attachment_service_spec.rb": 3.484570379998331,5266 "ee/spec/views/projects/security/dast_profiles/show.html.haml_spec.rb": 2.3485475899997255,5267 "ee/spec/graphql/types/incident_management/oncall_rotation_date_input_type_spec.rb": 1.0435373740001523,5268 "ee/spec/graphql/resolvers/vulnerabilities/issue_links_resolver_spec.rb": 2.2758682710009452,5269 "ee/spec/lib/elastic/latest/custom_language_analyzers_spec.rb": 0.7892456419995142,5270 "ee/spec/views/shared/credentials_inventory/personal_access_tokens/_personal_access_token.html.haml_spec.rb": 1.1536252980004065,5271 "ee/spec/tasks/geo/git_rake_spec.rb": 3.354959570000574,5272 "ee/spec/lib/ee/api/helpers/notes_helpers_spec.rb": 2.915110604999427,5273 "ee/spec/finders/auth/provisioned_users_finder_spec.rb": 2.701035956999476,5274 "ee/spec/finders/incident_management/escalation_policies_finder_spec.rb": 2.69415700799982,5275 "ee/spec/graphql/mutations/incident_management/issuable_resource_link/create_spec.rb": 3.140896912000244,5276 "ee/spec/lib/gitlab/geo/log_cursor/events/reset_checksum_event_spec.rb": 2.38297488399985,5277 "ee/spec/lib/gitlab/status_page/storage/s3_client_spec.rb": 1.4101604200004658,5278 "ee/spec/services/projects/hashed_storage/migrate_attachments_service_spec.rb": 2.5736998459997267,5279 "ee/spec/models/users_security_dashboard_project_spec.rb": 2.4937470280001435,5280 "ee/spec/workers/requirements_management/import_requirements_csv_worker_spec.rb": 2.0907591380000667,5281 "ee/spec/lib/ee/api/entities/scim/users_spec.rb": 0.7819535540002107,5282 "ee/spec/serializers/issuable_sidebar_extras_entity_spec.rb": 3.8331831590003276,5283 "ee/spec/models/ee/members_preloader_spec.rb": 2.7957251429997996,5284 "ee/spec/workers/geo/repository_cleanup_worker_spec.rb": 2.5944126329995925,5285 "ee/spec/validators/password/complexity_validator_spec.rb": 0.5837942030011618,5286 "ee/spec/workers/ci/batch_reset_minutes_worker_spec.rb": 2.6371377169998595,5287 "ee/spec/models/ee/preloaders/group_policy_preloader_spec.rb": 2.661192903000483,5288 "ee/spec/services/integrations/slack_events/app_home_opened_service_spec.rb": 1.4579391120005312,5289 "ee/spec/lib/gitlab/insights/project_insights_config_spec.rb": 1.1839503130013327,5290 "ee/spec/views/admin/identities/index.html.haml_spec.rb": 1.5318420020012127,5291 "ee/spec/lib/gitlab/object_hierarchy_spec.rb": 1.3829347239989147,5292 "ee/spec/lib/gitlab/usage/metrics/instrumentations/count_users_associating_group_milestones_to_releases_metric_spec.rb": 2.5255191029991693,5293 "ee/spec/services/vulnerabilities/user_notes_count_service_spec.rb": 0.9895537630000035,5294 "ee/spec/services/ee/alert_management/http_integrations/create_service_spec.rb": 1.442534894000346,5295 "ee/spec/graphql/resolvers/app_sec/dast/profile_resolver_spec.rb": 1.937779252000837,5296 "ee/spec/lib/gitlab/ci/templates/license_scanning_gitlab_ci_yaml_spec.rb": 2.032349017001252,5297 "ee/spec/lib/audit/protected_branches_changes_auditor_spec.rb": 2.03378803600026,5298 "ee/spec/helpers/roadmaps_helper_spec.rb": 1.0941780670000298,5299 "ee/spec/services/boards/epic_user_preferences/update_service_spec.rb": 1.5899977929984743,5300 "ee/spec/finders/ee/user_recent_events_finder_spec.rb": 1.86880445099996,5301 "ee/spec/lib/system_check/geo/http_clone_enabled_check_spec.rb": 0.5764377340001374,5302 "ee/spec/elastic/migrate/20210510113500_delete_merge_requests_from_original_index_spec.rb": 0.8636129909991723,5303 "ee/spec/services/geo/node_status_request_service_spec.rb": 1.4628090719998,5304 "ee/spec/lib/gitlab/compliance_management/violations/approved_by_merge_request_author_spec.rb": 2.043242255998848,5305 "ee/spec/models/concerns/health_status_spec.rb": 0.8279937070001324,5306 "ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb": 0.7669476949995442,5307 "ee/spec/lib/gitlab/auth/group_saml/auth_hash_spec.rb": 1.176025574999585,5308 "ee/spec/lib/ee/sidebars/projects/menus/ci_cd_menu_spec.rb": 0.6317525960002968,5309 "ee/spec/views/trials/_skip_trial.html.haml_spec.rb": 0.5369258890004858,5310 "ee/spec/models/elasticsearch_indexed_project_spec.rb": 1.6898967680008354,5311 "ee/spec/workers/compliance_management/chain_of_custody_report_worker_spec.rb": 0.8413537449996511,5312 "ee/spec/workers/geo/verification_state_backfill_service_spec.rb": 1.3960562219999701,5313 "ee/spec/elastic/migrate/20210127154600_remove_permissions_data_from_notes_documents_spec.rb": 0.6411502439987089,5314 "ee/spec/lib/gitlab/tracking/standard_context_spec.rb": 0.9967072710005596,5315 "ee/spec/elastic/migrate/20210510143200_delete_notes_from_original_index_spec.rb": 0.5098401430004742,5316 "ee/spec/workers/project_cache_worker_spec.rb": 1.4210041180012922,5317 "ee/spec/services/app_sec/dast/profile_schedules/audit/update_service_spec.rb": 1.6216997079991415,5318 "ee/spec/services/ee/alert_management/http_integrations/update_service_spec.rb": 1.2630772020002041,5319 "ee/spec/lib/world_spec.rb": 0.621828227000151,5320 "ee/spec/views/layouts/project.html.haml_spec.rb": 1.866121712999302,5321 "ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_links_aggregate_spec.rb": 0.7031984950008336,5322 "ee/spec/routing/groups/cadences_routing_spec.rb": 0.8578894610000134,5323 "ee/spec/models/user_detail_spec.rb": 1.059022093000749,5324 "ee/spec/policies/geo_node_policy_spec.rb": 0.9892861419994006,5325 "ee/spec/lib/ee/gitlab/import_export/repo_restorer_spec.rb": 1.719879303000198,5326 "ee/spec/lib/ee/sidebars/projects/menus/monitor_menu_spec.rb": 0.7734610150000663,5327 "ee/spec/lib/gitlab/usage/metrics/instrumentations/epics_deepest_relationship_level_metric_spec.rb": 0.8079251199997088,5328 "ee/spec/models/concerns/timebox_spec.rb": 0.6571584230005101,5329 "ee/spec/graphql/mutations/gitlab_subscriptions/activate_spec.rb": 0.6419447739990574,5330 "ee/spec/graphql/types/geo/pipeline_artifact_registry_type_spec.rb": 0.5709656260005431,5331 "ee/spec/graphql/types/geo/merge_request_diff_registry_type_spec.rb": 0.606361520000064,5332 "ee/spec/services/ee/incident_management/issuable_escalation_statuses/create_service_spec.rb": 0.9754566640003759,5333 "ee/spec/lib/gitlab/usage/metrics/instrumentations/advanced_search/lucene_version_metric_spec.rb": 0.76401686600002,5334 "ee/spec/workers/elastic_cluster_reindexing_cron_worker_spec.rb": 0.7331267399986245,5335 "ee/spec/services/geo/repository_registry_removal_service_spec.rb": 1.0824448589992244,5336 "ee/spec/services/sbom/ingestion/occurrence_map_collection_spec.rb": 0.8910982569996122,5337 "ee/spec/services/sbom/ingestion/ingest_reports_service_spec.rb": 0.9440534000004845,5338 "ee/spec/graphql/types/vulnerability/issue_link_type_spec.rb": 0.9162275830003637,5339 "ee/spec/graphql/types/incident_management/oncall_rotation_type_spec.rb": 0.7365752400000929,5340 "ee/spec/services/ee/admin/set_feature_flag_service_spec.rb": 0.5264216220002709,5341 "ee/spec/lib/gitlab/gl_repository_spec.rb": 0.5452910980002343,5342 "ee/spec/views/compliance_management/compliance_framework/_compliance_framework_badge.html.haml_spec.rb": 0.592387961998611,5343 "ee/spec/models/geo/project_wiki_repository_registry_spec.rb": 0.6660102799996821,5344 "ee/spec/graphql/types/geo/dependency_proxy_manifest_registry_type_spec.rb": 1.0246105879996321,5345 "ee/spec/graphql/types/permission_types/project_spec.rb": 0.8189907380001387,5346 "ee/spec/graphql/types/vulnerability_sort_enum_spec.rb": 0.5554701479995856,5347 "ee/spec/graphql/types/incident_management/oncall_shift_type_spec.rb": 0.4968719749995216,5348 "ee/spec/services/boards/epic_boards/destroy_service_spec.rb": 0.8748812499998166,5349 "ee/spec/services/base_count_service_spec.rb": 0.44918123299976287,5350 "ee/spec/graphql/types/work_items/widgets/health_status_input_type_spec.rb": 0.8333417649992043,5351 "ee/spec/graphql/types/app_sec/fuzzing/api/scan_profile_type_spec.rb": 0.6167573879993142,5352 "ee/spec/graphql/types/vulnerability_location/container_scanning_type_spec.rb": 0.7258487119997881,5353 "ee/spec/graphql/types/security_orchestration/project_security_policy_source_type_spec.rb": 0.4891392169993196,5354 "ee/spec/graphql/types/vulnerability_details/table_type_spec.rb": 0.55224773800000555355}5356Knapsack global time execution for tests: 26m 22s5357Pending: (Failures listed here are expected and do not affect your suite's status)5358 1) Resolvers::Geo::DependencyProxyManifestRegistriesResolver 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 ArgumentError5359 # Skipping because verification is enabled for DependencyProxy::Manifest5360 # ./ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb:775361 2) 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 enabled when the verification_state argument is present returns registries with requested verification state, in order5362 # Skipping because verification is not enabled for GroupWikiRepository5363 # ./ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb:625364Finished in 26 minutes 26 seconds (files took 1 minute 20.44 seconds to load)53651912 examples, 0 failures, 2 pending5366Randomized with seed 634585367[TEST PROF INFO] Time spent in factories: 13:24.680 (49.61% of total time)5368RSpec exited with 0.5369No examples to retry, congrats!5371Not uploading cache ruby-gems-debian-bullseye-ruby-2.7-16 due to policy5372Not uploading cache gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 due to policy5374Uploading artifacts...5375coverage/: found 5 matching files and directories 5376crystalball/: found 2 matching files and directories 5377WARNING: deprecations/: no matching files. Ensure that the artifact path is relative to the working directory 5378knapsack/: found 3 matching files and directories 5379WARNING: query_recorder/: no matching files. Ensure that the artifact path is relative to the working directory 5380rspec/: found 11 matching files and directories 5381WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory 5382log/*.log: found 19 matching files and directories 5383WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3441843345/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com5384WARNING: Retrying... context=artifacts-uploader error=request redirected5385Uploading artifacts as "archive" to coordinator... 201 Created id=3441843345 responseStatus=201 Created token=gCW1Ex7F5386Uploading artifacts...5387rspec/junit_rspec.xml: found 1 matching files and directories 5388WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3441843345/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com5389WARNING: Retrying... context=artifacts-uploader error=request redirected5390Uploading artifacts as "junit" to coordinator... 201 Created id=3441843345 responseStatus=201 Created token=gCW1Ex7F5392Job succeeded