rspec-ee unit pg12 12/18
Passed Started
by
@stanhu

Stan Hu
1Running with gitlab-runner 15.6.0~beta.186.ga889181a (a889181a)2 on green-1.shared-gitlab-org.runners-manager.gitlab.com/default Mf8beF5G3 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-103-yarn-1.22-graphicsmagick-1.3.36 ...7Starting service postgres:12 ...8Pulling docker image postgres:12 ...9Using docker image sha256:c5abf812eff57d99cd4ae9b4d688261207b59905c5d0ca50c5e57f75669dbf10 for postgres:12 with digest postgres@sha256:a66060c3beab11e6f8eac5581c28df727539653a3c11e860847b14149e678d3e ...10Starting service redis:6.0-alpine ...11Pulling docker image redis:6.0-alpine ...12Using docker image sha256:83c577984741ab5b2e78640e0524852998d539ea3961e6d56680f336371f5c83 for redis:6.0-alpine with digest redis@sha256:459e91c5fe54134da1601ef85a4d9bc40c953862737fdfbe8f3c2b2a3eb6b20b ...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-103-yarn-1.22-graphicsmagick-1.3.36 ...19Using docker image sha256:5c5404ecc69273636c3ef49645be715ef30ea99e51ad146a2efbeac2a1875f9c 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-103-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:b032fe79dc0bf3ebfaeb610c82eacc500fbd0ec6e01889444011cf5a72b4135d ...21Running on runner-mf8bef5g-project-278964-concurrent-0 via runner-mf8bef5g-shared-gitlab-org-1668126496-92b66d02...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: 134695, done. 28remote: Counting objects: 100% (134695/134695), done. 29remote: Compressing objects: 100% (87197/87197), done. 30remote: Total 134695 (delta 60835), reused 93449 (delta 42513), pack-reused 0 31Receiving objects: 100% (134695/134695), 116.52 MiB | 20.07 MiB/s, done.32Resolving deltas: 100% (60835/60835), done.34 * [new ref] refs/pipelines/691761438 -> refs/pipelines/69176143835 * [new branch] master -> origin/master36Checking out 0a62f4a6 as master...37Skipping Git submodules setup38$ git remote set-url origin "${CI_REPOSITORY_URL}"40Checking cache for ruby-gems-debian-bullseye-ruby-2.7-16...41cache.zip is up to date 42Successfully extracted cache43Checking cache for gitaly-ruby-gems-debian-bullseye-ruby-2.7-16...44Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 45Successfully extracted cache47Downloading artifacts for compile-test-assets (3307837569)...48Downloading artifacts from coordinator... ok id=3307837569 responseStatus=200 OK token=JRZjyKVs49Downloading artifacts for detect-tests (3307837577)...50Downloading artifacts from coordinator... ok id=3307837577 responseStatus=200 OK token=JRZjyKVs51Downloading artifacts for retrieve-tests-metadata (3307837579)...52Downloading artifacts from coordinator... ok id=3307837579 responseStatus=200 OK token=JRZjyKVs53Downloading artifacts for setup-test-env (3307837573)...54Downloading artifacts from coordinator... ok id=3307837573 responseStatus=200 OK token=JRZjyKVs56Using docker image sha256:5c5404ecc69273636c3ef49645be715ef30ea99e51ad146a2efbeac2a1875f9c 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-103-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:b032fe79dc0bf3ebfaeb610c82eacc500fbd0ec6e01889444011cf5a72b4135d ...57$ echo $FOSS_ONLY58$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb59$ export GOPATH=$CI_PROJECT_DIR/.go60$ mkdir -p $GOPATH61$ source scripts/utils.sh62$ source scripts/prepare_build.sh691Using decomposed database config (config/database.yml.decomposed-postgresql)692$ setup_db_user_only693CREATE ROLE694GRANT695==> 'setup_db_user_only' succeeded in 0 seconds.696$ bundle exec rake db:drop db:create db:schema:load db:migrate697Dropped database 'gitlabhq_test'698Dropped database 'gitlabhq_test_ci'699Dropped database 'gitlabhq_geo_test'700Created database 'gitlabhq_test'701Created database 'gitlabhq_test_ci'702Created database 'gitlabhq_geo_test'703==> 'bundle exec rake db:drop db:create db:schema:load db:migrate' succeeded in 41 seconds.704$ setup_db_praefect705SELECT pg_catalog.set_config('search_path', '', false);706CREATE DATABASE praefect_test ENCODING 'UTF8';707==> 'setup_db_praefect' succeeded in 0 seconds.708$ source ./scripts/rspec_helpers.sh709$ run_timed_command "gem install knapsack --no-document"710$ gem install knapsack --no-document711Successfully installed knapsack-4.0.07121 gem installed713==> 'gem install knapsack --no-document' succeeded in 1 seconds.714$ echo -e "\e[0Ksection_start:`date +%s`:gitaly-test-spawn[collapsed=true]\r\e[0KStarting Gitaly"828$ rspec_paralellized_job "--tag ~quarantine --tag ~level:migration"829SKIP_FLAKY_TESTS_AUTOMATICALLY: true830RETRY_FAILED_TESTS_IN_NEW_PROCESS: true831KNAPSACK_GENERATE_REPORT: true832FLAKY_RSPEC_GENERATE_REPORT: true833KNAPSACK_TEST_FILE_PATTERN: {ee/}spec/{bin,channels,config,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.rb834KNAPSACK_LOG_LEVEL: debug835KNAPSACK_REPORT_PATH: knapsack/rspec-ee_unit_pg12_12_18_report.json836FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json837FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec-ee_unit_pg12_12_18_report.json838NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec-ee_unit_pg12_12_18_report.json839SKIPPED_FLAKY_TESTS_REPORT_PATH: rspec/flaky/skipped_flaky_tests_rspec-ee_unit_pg12_12_18_report.txt840RETRIED_TESTS_REPORT_PATH: rspec/flaky/retried_tests_rspec-ee_unit_pg12_12_18_report.txt841CRYSTALBALL: 842Knapsack node specs:843ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb844ee/spec/services/quick_actions/interpret_service_spec.rb845ee/spec/models/security/orchestration_policy_configuration_spec.rb846ee/spec/models/geo/merge_request_diff_registry_spec.rb847ee/spec/models/vulnerabilities/read_spec.rb848ee/spec/policies/merge_request_policy_spec.rb849ee/spec/models/merge_request/blocking_spec.rb850ee/spec/replicators/geo/pipeline_artifact_replicator_spec.rb851ee/spec/services/projects/create_from_template_service_spec.rb852ee/spec/lib/gitlab/analytics/cycle_analytics/summary/group/stage_summary_spec.rb853ee/spec/models/repository_spec.rb854ee/spec/services/security/security_orchestration_policies/fetch_policy_approvers_service_spec.rb855ee/spec/models/project_member_spec.rb856ee/spec/graphql/resolvers/epics_resolver_spec.rb857ee/spec/lib/banzai/filter/references/epic_reference_filter_spec.rb858ee/spec/lib/audit/project_changes_auditor_spec.rb859ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb860ee/spec/services/groups/sync_service_spec.rb861ee/spec/services/security/security_orchestration_policies/process_scan_result_policy_service_spec.rb862ee/spec/workers/geo/registry_sync_worker_spec.rb863ee/spec/presenters/merge_request_presenter_spec.rb864ee/spec/services/projects/destroy_service_spec.rb865ee/spec/helpers/ee/namespaces_helper_spec.rb866ee/spec/lib/gitlab/ci/templates/Jobs/dast_default_branch_gitlab_ci_yaml_spec.rb867ee/spec/models/dast/profile_spec.rb868ee/spec/lib/gitlab/background_migration/migrate_requirements_to_work_items_spec.rb869ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb870ee/spec/presenters/ci/pipeline_presenter_spec.rb871ee/spec/workers/post_receive_spec.rb872ee/spec/models/concerns/elastic/milestone_spec.rb873ee/spec/helpers/vulnerabilities_helper_spec.rb874ee/spec/lib/gitlab/ci/config/security_orchestration_policies/processor_spec.rb875ee/spec/workers/sync_seat_link_request_worker_spec.rb876ee/spec/lib/gitlab/elastic/document_reference_spec.rb877ee/spec/services/app_sec/dast/scans/run_service_spec.rb878ee/spec/finders/security/scan_execution_policies_finder_spec.rb879ee/spec/services/merge_requests/build_service_spec.rb880ee/spec/lib/gitlab/auth/smartcard/certificate_spec.rb881ee/spec/lib/gitlab/audit/auditor_spec.rb882ee/spec/services/ee/issuable/common_system_notes_service_spec.rb883ee/spec/services/groups/destroy_service_spec.rb884ee/spec/services/compliance_management/frameworks/update_service_spec.rb885ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb886ee/spec/lib/gitlab/ci/parsers/security/container_scanning_spec.rb887ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/create_spec.rb888ee/spec/lib/ee/api/helpers/scim_pagination_spec.rb889ee/spec/graphql/mutations/issues/set_assignees_spec.rb890ee/spec/lib/ee/gitlab/pages/deployment_update_spec.rb891ee/spec/lib/gitlab/geo/event_gap_tracking_spec.rb892ee/spec/models/issuable_metric_image_spec.rb893ee/spec/services/ee/merge_requests/update_assignees_service_spec.rb894ee/spec/services/geo/blob_download_service_spec.rb895ee/spec/models/preloaders/user_member_roles_in_projects_preloader_spec.rb896ee/spec/models/ci/sources/project_spec.rb897ee/spec/services/ee/incident_management/issuable_escalation_statuses/prepare_update_service_spec.rb898ee/spec/lib/ee/gitlab/ci/config_spec.rb899ee/spec/helpers/ee/subscribable_banner_helper_spec.rb900ee/spec/services/security/security_orchestration_policies/policy_configuration_validation_service_spec.rb901ee/spec/services/app_sec/dast/profiles/destroy_service_spec.rb902ee/spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_assigned_security_policy_project_metric_spec.rb903ee/spec/lib/gitlab/ci/templates/container_scanning_latest_gitlab_ci_yaml_spec.rb904ee/spec/lib/gitlab/geo/oauth/login_state_spec.rb905ee/spec/services/ci/create_pipeline_service/runnable_builds_spec.rb906ee/spec/services/upcoming_reconciliations/update_service_spec.rb907ee/spec/lib/quality/seeders/vulnerabilities_spec.rb908ee/spec/graphql/ee/types/user_merge_request_interaction_type_spec.rb909ee/spec/models/concerns/geo/eventable_spec.rb910ee/spec/services/gitlab_subscriptions/trials/apply_trial_service_spec.rb911ee/spec/lib/ee/gitlab/auth/auth_finders_spec.rb912ee/spec/services/vulnerabilities/statistics/adjustment_service_spec.rb913ee/spec/routing/project_routing_spec.rb914ee/spec/workers/epics/new_epic_issue_worker_spec.rb915ee/spec/lib/gitlab/insights/reducers/count_per_label_reducer_spec.rb916ee/spec/lib/gitlab/instrumentation_helper_spec.rb917ee/spec/policies/identity_provider_policy_spec.rb918ee/spec/services/security/token_revocation_service_spec.rb919ee/spec/services/security/ingestion/tasks/hooks_execution_spec.rb920ee/spec/components/namespaces/free_user_cap/usage_quota_trial_alert_component_spec.rb921ee/spec/lib/bulk_imports/groups/pipelines/iterations_pipeline_spec.rb922ee/spec/graphql/resolvers/vulnerabilities/issue_links_resolver_spec.rb923ee/spec/graphql/resolvers/admin/cloud_licenses/subscription_future_entries_resolver_spec.rb924ee/spec/graphql/resolvers/geo/lfs_object_registries_resolver_spec.rb925ee/spec/graphql/types/vulnerability_response_type_spec.rb926ee/spec/services/security/report_fetch_service_spec.rb927ee/spec/policies/approval_state_policy_spec.rb928ee/spec/graphql/resolvers/path_locks_resolver_spec.rb929ee/spec/lib/ee/gitlab/search_results_spec.rb930ee/spec/services/groups/epics_count_service_spec.rb931ee/spec/graphql/types/app_sec/fuzzing/coverage/corpus_type_spec.rb932ee/spec/services/ci/minutes/reset_usage_service_spec.rb933ee/spec/workers/active_user_count_threshold_worker_spec.rb934ee/spec/serializers/epic_entity_spec.rb935ee/spec/workers/geo/create_repository_updated_event_worker_spec.rb936ee/spec/graphql/mutations/compliance_management/frameworks/destroy_spec.rb937ee/spec/services/projects/group_links/update_service_spec.rb938ee/spec/graphql/resolvers/boards/epic_lists_resolvers_spec.rb939ee/spec/graphql/mutations/dast_site_validations/revoke_spec.rb940ee/spec/lib/gitlab/insights/validators/params_validator_spec.rb941ee/spec/workers/ci/minutes/update_project_and_namespace_usage_worker_spec.rb942ee/spec/workers/iterations/cadences/schedule_create_iterations_worker_spec.rb943ee/spec/lib/gitlab/usage/metrics/instrumentations/license_management_jobs_metric_spec.rb944ee/spec/lib/ee/sidebars/projects/panel_spec.rb945ee/spec/graphql/mutations/instance_security_dashboard/remove_project_spec.rb946ee/spec/workers/projects/register_suggested_reviewers_project_worker_spec.rb947ee/spec/graphql/types/dast/profile_schedule_type_spec.rb948ee/spec/policies/vulnerabilities/issue_link_policy_spec.rb949ee/spec/presenters/ee/projects/security/configuration_presenter_spec.rb950ee/spec/models/ee/namespace/root_storage_statistics_spec.rb951ee/spec/models/broadcast_message_spec.rb952ee/spec/lib/ee/api/entities/project_spec.rb953ee/spec/views/projects/security/dast_scanner_profiles/new.html.haml_spec.rb954ee/spec/lib/elastic/latest/routing_spec.rb955ee/spec/lib/ee/gitlab/etag_caching/router/rails_spec.rb956ee/spec/services/sbom/ingestion/tasks/ingest_sources_spec.rb957ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/issue_last_edited_spec.rb958ee/spec/serializers/ee/issue_board_entity_spec.rb959ee/spec/lib/gitlab/tree_summary_spec.rb960ee/spec/lib/gitlab/incident_management_spec.rb961ee/spec/graphql/types/geo/ci_secure_file_registry_type_spec.rb962ee/spec/finders/autocomplete/project_invited_groups_finder_spec.rb963ee/spec/lib/gitlab/import_export/group/group_and_descendants_repo_restorer_spec.rb964ee/spec/services/personal_access_tokens/create_service_audit_log_spec.rb965ee/spec/lib/ee/gitlab/rack_attack/request_spec.rb966ee/spec/finders/analytics/devops_adoption/snapshots_finder_spec.rb967ee/spec/models/integrations/chat_message/vulnerability_message_spec.rb968ee/spec/services/ee/members/import_project_team_service_spec.rb969ee/spec/services/groups/schedule_bulk_repository_shard_moves_service_spec.rb970ee/spec/graphql/resolvers/boards/epic_boards_resolvers_spec.rb971ee/spec/helpers/ee/sorting_helper_spec.rb972ee/spec/finders/boards/epic_boards_finder_spec.rb973ee/spec/services/status_page/publish_list_service_spec.rb974ee/spec/lib/bulk_imports/common/pipelines/boards_pipeline_spec.rb975ee/spec/models/integrations/github/status_notifier_spec.rb976ee/spec/graphql/types/incident_management/escalation_rule_input_type_spec.rb977ee/spec/graphql/types/dast/profile_cadence_input_type_spec.rb978ee/spec/lib/gitlab/insights/serializers/chartjs/multi_series_serializer_spec.rb979ee/spec/lib/ee/api/entities/identity_detail_spec.rb980ee/spec/lib/omni_auth/strategies/kerberos_spec.rb981ee/spec/services/geo/event_service_spec.rb982ee/spec/lib/slack/api_spec.rb983ee/spec/elastic/migrate/20210201104800_migrate_notes_to_separate_index_spec.rb984ee/spec/lib/gitlab/items_collection_spec.rb985ee/spec/components/namespaces/storage/subgroup_pre_enforcement_alert_component_spec.rb986ee/spec/views/compliance_management/compliance_framework/_compliance_framework_badge.html.haml_spec.rb987ee/spec/helpers/ee/projects/security/sast_configuration_helper_spec.rb988ee/spec/lib/ee/gitlab/verify/lfs_objects_spec.rb989ee/spec/graphql/types/vulnerability_state_enum_spec.rb990ee/spec/views/admin/dev_ops_report/show.html.haml_spec.rb991ee/spec/lib/gitlab/usage/metrics/instrumentations/advanced_search/distribution_metric_spec.rb992ee/spec/graphql/types/vulnerability_location/dast_type_spec.rb993ee/spec/elastic/migrate/20210127154600_remove_permissions_data_from_notes_documents_spec.rb994ee/spec/lib/ee/api/entities/groups/repository_storage_move_spec.rb995ee/spec/graphql/types/ci/runner_type_spec.rb996ee/spec/lib/gitlab/subscription_portal/client_spec.rb997ee/spec/lib/ee/gitlab/template/gitlab_ci_yml_template_spec.rb998ee/spec/graphql/types/vulnerability/external_issue_link_external_tracker_enum_spec.rb999ee/spec/lib/gitlab/insights/serializers/chartjs/bar_time_series_serializer_spec.rb1000ee/spec/graphql/types/security/training_type_spec.rb1001ee/spec/graphql/types/vulnerability/external_issue_link_type_enum_spec.rb1002Filter specs:1003Running specs:1004Running all node tests without filter1005ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb1006ee/spec/services/quick_actions/interpret_service_spec.rb1007ee/spec/models/security/orchestration_policy_configuration_spec.rb1008ee/spec/models/geo/merge_request_diff_registry_spec.rb1009ee/spec/models/vulnerabilities/read_spec.rb1010ee/spec/policies/merge_request_policy_spec.rb1011ee/spec/models/merge_request/blocking_spec.rb1012ee/spec/replicators/geo/pipeline_artifact_replicator_spec.rb1013ee/spec/services/projects/create_from_template_service_spec.rb1014ee/spec/lib/gitlab/analytics/cycle_analytics/summary/group/stage_summary_spec.rb1015ee/spec/models/repository_spec.rb1016ee/spec/services/security/security_orchestration_policies/fetch_policy_approvers_service_spec.rb1017ee/spec/models/project_member_spec.rb1018ee/spec/graphql/resolvers/epics_resolver_spec.rb1019ee/spec/lib/banzai/filter/references/epic_reference_filter_spec.rb1020ee/spec/lib/audit/project_changes_auditor_spec.rb1021ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb1022ee/spec/services/groups/sync_service_spec.rb1023ee/spec/services/security/security_orchestration_policies/process_scan_result_policy_service_spec.rb1024ee/spec/workers/geo/registry_sync_worker_spec.rb1025ee/spec/presenters/merge_request_presenter_spec.rb1026ee/spec/services/projects/destroy_service_spec.rb1027ee/spec/helpers/ee/namespaces_helper_spec.rb1028ee/spec/lib/gitlab/ci/templates/Jobs/dast_default_branch_gitlab_ci_yaml_spec.rb1029ee/spec/models/dast/profile_spec.rb1030ee/spec/lib/gitlab/background_migration/migrate_requirements_to_work_items_spec.rb1031ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb1032ee/spec/presenters/ci/pipeline_presenter_spec.rb1033ee/spec/workers/post_receive_spec.rb1034ee/spec/models/concerns/elastic/milestone_spec.rb1035ee/spec/helpers/vulnerabilities_helper_spec.rb1036ee/spec/lib/gitlab/ci/config/security_orchestration_policies/processor_spec.rb1037ee/spec/workers/sync_seat_link_request_worker_spec.rb1038ee/spec/lib/gitlab/elastic/document_reference_spec.rb1039ee/spec/services/app_sec/dast/scans/run_service_spec.rb1040ee/spec/finders/security/scan_execution_policies_finder_spec.rb1041ee/spec/services/merge_requests/build_service_spec.rb1042ee/spec/lib/gitlab/auth/smartcard/certificate_spec.rb1043ee/spec/lib/gitlab/audit/auditor_spec.rb1044ee/spec/services/ee/issuable/common_system_notes_service_spec.rb1045ee/spec/services/groups/destroy_service_spec.rb1046ee/spec/services/compliance_management/frameworks/update_service_spec.rb1047ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb1048ee/spec/lib/gitlab/ci/parsers/security/container_scanning_spec.rb1049ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/create_spec.rb1050ee/spec/lib/ee/api/helpers/scim_pagination_spec.rb1051ee/spec/graphql/mutations/issues/set_assignees_spec.rb1052ee/spec/lib/ee/gitlab/pages/deployment_update_spec.rb1053ee/spec/lib/gitlab/geo/event_gap_tracking_spec.rb1054ee/spec/models/issuable_metric_image_spec.rb1055ee/spec/services/ee/merge_requests/update_assignees_service_spec.rb1056ee/spec/services/geo/blob_download_service_spec.rb1057ee/spec/models/preloaders/user_member_roles_in_projects_preloader_spec.rb1058ee/spec/models/ci/sources/project_spec.rb1059ee/spec/services/ee/incident_management/issuable_escalation_statuses/prepare_update_service_spec.rb1060ee/spec/lib/ee/gitlab/ci/config_spec.rb1061ee/spec/helpers/ee/subscribable_banner_helper_spec.rb1062ee/spec/services/security/security_orchestration_policies/policy_configuration_validation_service_spec.rb1063ee/spec/services/app_sec/dast/profiles/destroy_service_spec.rb1064ee/spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_assigned_security_policy_project_metric_spec.rb1065ee/spec/lib/gitlab/ci/templates/container_scanning_latest_gitlab_ci_yaml_spec.rb1066ee/spec/lib/gitlab/geo/oauth/login_state_spec.rb1067ee/spec/services/ci/create_pipeline_service/runnable_builds_spec.rb1068ee/spec/services/upcoming_reconciliations/update_service_spec.rb1069ee/spec/lib/quality/seeders/vulnerabilities_spec.rb1070ee/spec/graphql/ee/types/user_merge_request_interaction_type_spec.rb1071ee/spec/models/concerns/geo/eventable_spec.rb1072ee/spec/services/gitlab_subscriptions/trials/apply_trial_service_spec.rb1073ee/spec/lib/ee/gitlab/auth/auth_finders_spec.rb1074ee/spec/services/vulnerabilities/statistics/adjustment_service_spec.rb1075ee/spec/routing/project_routing_spec.rb1076ee/spec/workers/epics/new_epic_issue_worker_spec.rb1077ee/spec/lib/gitlab/insights/reducers/count_per_label_reducer_spec.rb1078ee/spec/lib/gitlab/instrumentation_helper_spec.rb1079ee/spec/policies/identity_provider_policy_spec.rb1080ee/spec/services/security/token_revocation_service_spec.rb1081ee/spec/services/security/ingestion/tasks/hooks_execution_spec.rb1082ee/spec/components/namespaces/free_user_cap/usage_quota_trial_alert_component_spec.rb1083ee/spec/lib/bulk_imports/groups/pipelines/iterations_pipeline_spec.rb1084ee/spec/graphql/resolvers/vulnerabilities/issue_links_resolver_spec.rb1085ee/spec/graphql/resolvers/admin/cloud_licenses/subscription_future_entries_resolver_spec.rb1086ee/spec/graphql/resolvers/geo/lfs_object_registries_resolver_spec.rb1087ee/spec/graphql/types/vulnerability_response_type_spec.rb1088ee/spec/services/security/report_fetch_service_spec.rb1089ee/spec/policies/approval_state_policy_spec.rb1090ee/spec/graphql/resolvers/path_locks_resolver_spec.rb1091ee/spec/lib/ee/gitlab/search_results_spec.rb1092ee/spec/services/groups/epics_count_service_spec.rb1093ee/spec/graphql/types/app_sec/fuzzing/coverage/corpus_type_spec.rb1094ee/spec/services/ci/minutes/reset_usage_service_spec.rb1095ee/spec/workers/active_user_count_threshold_worker_spec.rb1096ee/spec/serializers/epic_entity_spec.rb1097ee/spec/workers/geo/create_repository_updated_event_worker_spec.rb1098ee/spec/graphql/mutations/compliance_management/frameworks/destroy_spec.rb1099ee/spec/services/projects/group_links/update_service_spec.rb1100ee/spec/graphql/resolvers/boards/epic_lists_resolvers_spec.rb1101ee/spec/graphql/mutations/dast_site_validations/revoke_spec.rb1102ee/spec/lib/gitlab/insights/validators/params_validator_spec.rb1103ee/spec/workers/ci/minutes/update_project_and_namespace_usage_worker_spec.rb1104ee/spec/workers/iterations/cadences/schedule_create_iterations_worker_spec.rb1105ee/spec/lib/gitlab/usage/metrics/instrumentations/license_management_jobs_metric_spec.rb1106ee/spec/lib/ee/sidebars/projects/panel_spec.rb1107ee/spec/graphql/mutations/instance_security_dashboard/remove_project_spec.rb1108ee/spec/workers/projects/register_suggested_reviewers_project_worker_spec.rbKnapsack report generator started!1109Run options: exclude {:quarantine=>true, :level=>"migration"}1110Test environment set up in 1.30952737 seconds1111Dependency-Scanning.gitlab-ci.yml1112 the created pipeline1113 when project has no license1114 includes no jobs1115 when project has Ultimate license1116 when DEPENDENCY_SCANNING_DISABLED=11117 includes no jobs1118 when DS_EXCLUDED_ANALYZERS set to1119 exclude1120 nothing1121 creates pipeline with excluded analyzers skipped1122 gemnasium1123 creates pipeline with excluded analyzers skipped1124 gemnasium-maven1125 creates pipeline with excluded analyzers skipped1126 gemnasium-python1127 creates pipeline with excluded analyzers skipped1128 two1129 creates pipeline with excluded analyzers skipped1130 three1131 creates pipeline with excluded analyzers skipped1132 four1133 creates pipeline with excluded analyzers skipped1134 all analyzers excluded1135 creates a pipeline excluding jobs from specified analyzers1136 by default1137 Go1138 with file at root1139 creates a pipeline with the expected jobs1140 sets the image suffix as expected1141 with file at depth 11142 creates a pipeline with the expected jobs1143 sets the image suffix as expected1144 with file at depth 21145 creates a pipeline with the expected jobs1146 sets the image suffix as expected1147 with file at depth > 21148 includes no job1149 Java1150 with file at root1151 creates a pipeline with the expected jobs1152 sets the image suffix as expected1153 with file at depth 11154 creates a pipeline with the expected jobs1155 sets the image suffix as expected1156 with file at depth 21157 creates a pipeline with the expected jobs1158 sets the image suffix as expected1159 with file at depth > 21160 includes no job1161 Java Gradle1162 with file at root1163 creates a pipeline with the expected jobs1164 sets the image suffix as expected1165 with file at depth 11166 creates a pipeline with the expected jobs1167 sets the image suffix as expected1168 with file at depth 21169 creates a pipeline with the expected jobs1170 sets the image suffix as expected1171 with file at depth > 21172 includes no job1173 Java Gradle Kotlin DSL1174 with file at root1175 creates a pipeline with the expected jobs1176 sets the image suffix as expected1177 with file at depth 11178 creates a pipeline with the expected jobs1179 sets the image suffix as expected1180 with file at depth 21181 creates a pipeline with the expected jobs1182 sets the image suffix as expected1183 with file at depth > 21184 includes no job1185 Javascript package-lock.json1186 with file at root1187 creates a pipeline with the expected jobs1188 sets the image suffix as expected1189 with file at depth 11190 creates a pipeline with the expected jobs1191 sets the image suffix as expected1192 with file at depth 21193 creates a pipeline with the expected jobs1194 sets the image suffix as expected1195 with file at depth > 21196 includes no job1197 Javascript yarn.lock1198 with file at root1199 creates a pipeline with the expected jobs1200 sets the image suffix as expected1201 with file at depth 11202 creates a pipeline with the expected jobs1203 sets the image suffix as expected1204 with file at depth 21205 creates a pipeline with the expected jobs1206 sets the image suffix as expected1207 with file at depth > 21208 includes no job1209 Javascript npm-shrinkwrap.json1210 with file at root1211 creates a pipeline with the expected jobs1212 sets the image suffix as expected1213 with file at depth 11214 creates a pipeline with the expected jobs1215 sets the image suffix as expected1216 with file at depth 21217 creates a pipeline with the expected jobs1218 sets the image suffix as expected1219 with file at depth > 21220 includes no job1221 Multiple languages1222 with file at root1223 creates a pipeline with the expected jobs1224 sets the image suffix as expected1225 with file at depth 11226 creates a pipeline with the expected jobs1227 sets the image suffix as expected1228 with file at depth 21229 creates a pipeline with the expected jobs1230 sets the image suffix as expected1231 with file at depth > 21232 includes no job1233 NuGet1234 with file at root1235 creates a pipeline with the expected jobs1236 sets the image suffix as expected1237 with file at depth 11238 creates a pipeline with the expected jobs1239 sets the image suffix as expected1240 with file at depth 21241 creates a pipeline with the expected jobs1242 sets the image suffix as expected1243 with file at depth > 21244 includes no job1245 Conan1246 with file at root1247 creates a pipeline with the expected jobs1248 sets the image suffix as expected1249 with file at depth 11250 creates a pipeline with the expected jobs1251 sets the image suffix as expected1252 with file at depth 21253 creates a pipeline with the expected jobs1254 sets the image suffix as expected1255 with file at depth > 21256 includes no job1257 PHP1258 with file at root1259 creates a pipeline with the expected jobs1260 sets the image suffix as expected1261 with file at depth 11262 creates a pipeline with the expected jobs1263 sets the image suffix as expected1264 with file at depth 21265 creates a pipeline with the expected jobs1266 sets the image suffix as expected1267 with file at depth > 21268 includes no job1269 Python requirements.txt1270 with file at root1271 creates a pipeline with the expected jobs1272 sets the image suffix as expected1273 with file at depth 11274 creates a pipeline with the expected jobs1275 sets the image suffix as expected1276 with file at depth 21277 creates a pipeline with the expected jobs1278 sets the image suffix as expected1279 with file at depth > 21280 includes no job1281 Python requirements.pip1282 with file at root1283 creates a pipeline with the expected jobs1284 sets the image suffix as expected1285 with file at depth 11286 creates a pipeline with the expected jobs1287 sets the image suffix as expected1288 with file at depth 21289 creates a pipeline with the expected jobs1290 sets the image suffix as expected1291 with file at depth > 21292 includes no job1293 Python Pipfile1294 with file at root1295 creates a pipeline with the expected jobs1296 sets the image suffix as expected1297 with file at depth 11298 creates a pipeline with the expected jobs1299 sets the image suffix as expected1300 with file at depth 21301 creates a pipeline with the expected jobs1302 sets the image suffix as expected1303 with file at depth > 21304 includes no job1305 Python requires.txt1306 with file at root1307 creates a pipeline with the expected jobs1308 sets the image suffix as expected1309 with file at depth 11310 creates a pipeline with the expected jobs1311 sets the image suffix as expected1312 with file at depth 21313 creates a pipeline with the expected jobs1314 sets the image suffix as expected1315 with file at depth > 21316 includes no job1317 Python with setup.py1318 with file at root1319 creates a pipeline with the expected jobs1320 sets the image suffix as expected1321 with file at depth 11322 creates a pipeline with the expected jobs1323 sets the image suffix as expected1324 with file at depth 21325 creates a pipeline with the expected jobs1326 sets the image suffix as expected1327 with file at depth > 21328 includes no job1329 Python with poetry.lock1330 with file at root1331 creates a pipeline with the expected jobs1332 sets the image suffix as expected1333 with file at depth 11334 creates a pipeline with the expected jobs1335 sets the image suffix as expected1336 with file at depth 21337 creates a pipeline with the expected jobs1338 sets the image suffix as expected1339 with file at depth > 21340 includes no job1341 Ruby Gemfile.lock1342 with file at root1343 creates a pipeline with the expected jobs1344 sets the image suffix as expected1345 with file at depth 11346 creates a pipeline with the expected jobs1347 sets the image suffix as expected1348 with file at depth 21349 creates a pipeline with the expected jobs1350 sets the image suffix as expected1351 with file at depth > 21352 includes no job1353 Ruby gems.locked1354 with file at root1355 creates a pipeline with the expected jobs1356 sets the image suffix as expected1357 with file at depth 11358 creates a pipeline with the expected jobs1359 sets the image suffix as expected1360 with file at depth 21361 creates a pipeline with the expected jobs1362 sets the image suffix as expected1363 with file at depth > 21364 includes no job1365 Scala1366 with file at root1367 creates a pipeline with the expected jobs1368 sets the image suffix as expected1369 with file at depth 11370 creates a pipeline with the expected jobs1371 sets the image suffix as expected1372 with file at depth 21373 creates a pipeline with the expected jobs1374 sets the image suffix as expected1375 with file at depth > 21376 includes no job1377 when PIP_REQUIREMENTS_FILE is defined1378 creates a pipeline with the expected jobs1379 sets the image suffix as expected1380 project supported by gemnasium analyzer1381 sets default value for DS_REMEDIATE1382 when FIPS mode is enabled1383 Go1384 with file at root1385 creates a pipeline with the expected jobs1386 sets the image suffix as expected1387 with file at depth 11388 creates a pipeline with the expected jobs1389 sets the image suffix as expected1390 with file at depth 21391 creates a pipeline with the expected jobs1392 sets the image suffix as expected1393 with file at depth > 21394 includes no job1395 Java1396 with file at root1397 creates a pipeline with the expected jobs1398 sets the image suffix as expected1399 with file at depth 11400 creates a pipeline with the expected jobs1401 sets the image suffix as expected1402 with file at depth 21403 creates a pipeline with the expected jobs1404 sets the image suffix as expected1405 with file at depth > 21406 includes no job1407 Java Gradle1408 with file at root1409 creates a pipeline with the expected jobs1410 sets the image suffix as expected1411 with file at depth 11412 creates a pipeline with the expected jobs1413 sets the image suffix as expected1414 with file at depth 21415 creates a pipeline with the expected jobs1416 sets the image suffix as expected1417 with file at depth > 21418 includes no job1419 Java Gradle Kotlin DSL1420 with file at root1421 creates a pipeline with the expected jobs1422 sets the image suffix as expected1423 with file at depth 11424 creates a pipeline with the expected jobs1425 sets the image suffix as expected1426 with file at depth 21427 creates a pipeline with the expected jobs1428 sets the image suffix as expected1429 with file at depth > 21430 includes no job1431 Javascript package-lock.json1432 with file at root1433 creates a pipeline with the expected jobs1434 sets the image suffix as expected1435 with file at depth 11436 creates a pipeline with the expected jobs1437 sets the image suffix as expected1438 with file at depth 21439 creates a pipeline with the expected jobs1440 sets the image suffix as expected1441 with file at depth > 21442 includes no job1443 Javascript yarn.lock1444 with file at root1445 creates a pipeline with the expected jobs1446 sets the image suffix as expected1447 with file at depth 11448 creates a pipeline with the expected jobs1449 sets the image suffix as expected1450 with file at depth 21451 creates a pipeline with the expected jobs1452 sets the image suffix as expected1453 with file at depth > 21454 includes no job1455 Javascript npm-shrinkwrap.json1456 with file at root1457 creates a pipeline with the expected jobs1458 sets the image suffix as expected1459 with file at depth 11460 creates a pipeline with the expected jobs1461 sets the image suffix as expected1462 with file at depth 21463 creates a pipeline with the expected jobs1464 sets the image suffix as expected1465 with file at depth > 21466 includes no job1467 Multiple languages1468 with file at root1469 creates a pipeline with the expected jobs1470 sets the image suffix as expected1471 with file at depth 11472 creates a pipeline with the expected jobs1473 sets the image suffix as expected1474 with file at depth 21475 creates a pipeline with the expected jobs1476 sets the image suffix as expected1477 with file at depth > 21478 includes no job1479 NuGet1480 with file at root1481 creates a pipeline with the expected jobs1482 sets the image suffix as expected1483 with file at depth 11484 creates a pipeline with the expected jobs1485 sets the image suffix as expected1486 with file at depth 21487 creates a pipeline with the expected jobs1488 sets the image suffix as expected1489 with file at depth > 21490 includes no job1491 Conan1492 with file at root1493 creates a pipeline with the expected jobs1494 sets the image suffix as expected1495 with file at depth 11496 creates a pipeline with the expected jobs1497 sets the image suffix as expected1498 with file at depth 21499 creates a pipeline with the expected jobs1500 sets the image suffix as expected1501 with file at depth > 21502 includes no job1503 PHP1504 with file at root1505 creates a pipeline with the expected jobs1506 sets the image suffix as expected1507 with file at depth 11508 creates a pipeline with the expected jobs1509 sets the image suffix as expected1510 with file at depth 21511 creates a pipeline with the expected jobs1512 sets the image suffix as expected1513 with file at depth > 21514 includes no job1515 Python requirements.txt1516 with file at root1517 creates a pipeline with the expected jobs1518 sets the image suffix as expected1519 with file at depth 11520 creates a pipeline with the expected jobs1521 sets the image suffix as expected1522 with file at depth 21523 creates a pipeline with the expected jobs1524 sets the image suffix as expected1525 with file at depth > 21526 includes no job1527 Python requirements.pip1528 with file at root1529 creates a pipeline with the expected jobs1530 sets the image suffix as expected1531 with file at depth 11532 creates a pipeline with the expected jobs1533 sets the image suffix as expected1534 with file at depth 21535 creates a pipeline with the expected jobs1536 sets the image suffix as expected1537 with file at depth > 21538 includes no job1539 Python Pipfile1540 with file at root1541 creates a pipeline with the expected jobs1542 sets the image suffix as expected1543 with file at depth 11544 creates a pipeline with the expected jobs1545 sets the image suffix as expected1546 with file at depth 21547 creates a pipeline with the expected jobs1548 sets the image suffix as expected1549 with file at depth > 21550 includes no job1551 Python requires.txt1552 with file at root1553 creates a pipeline with the expected jobs1554 sets the image suffix as expected1555 with file at depth 11556 creates a pipeline with the expected jobs1557 sets the image suffix as expected1558 with file at depth 21559 creates a pipeline with the expected jobs1560 sets the image suffix as expected1561 with file at depth > 21562 includes no job1563 Python with setup.py1564 with file at root1565 creates a pipeline with the expected jobs1566 sets the image suffix as expected1567 with file at depth 11568 creates a pipeline with the expected jobs1569 sets the image suffix as expected1570 with file at depth 21571 creates a pipeline with the expected jobs1572 sets the image suffix as expected1573 with file at depth > 21574 includes no job1575 Python with poetry.lock1576 with file at root1577 creates a pipeline with the expected jobs1578 sets the image suffix as expected1579 with file at depth 11580 creates a pipeline with the expected jobs1581 sets the image suffix as expected1582 with file at depth 21583 creates a pipeline with the expected jobs1584 sets the image suffix as expected1585 with file at depth > 21586 includes no job1587 Ruby Gemfile.lock1588 with file at root1589 creates a pipeline with the expected jobs1590 sets the image suffix as expected1591 with file at depth 11592 creates a pipeline with the expected jobs1593 sets the image suffix as expected1594 with file at depth 21595 creates a pipeline with the expected jobs1596 sets the image suffix as expected1597 with file at depth > 21598 includes no job1599 Ruby gems.locked1600 with file at root1601 creates a pipeline with the expected jobs1602 sets the image suffix as expected1603 with file at depth 11604 creates a pipeline with the expected jobs1605 sets the image suffix as expected1606 with file at depth 21607 creates a pipeline with the expected jobs1608 sets the image suffix as expected1609 with file at depth > 21610 includes no job1611 Scala1612 with file at root1613 creates a pipeline with the expected jobs1614 sets the image suffix as expected1615 with file at depth 11616 creates a pipeline with the expected jobs1617 sets the image suffix as expected1618 with file at depth 21619 creates a pipeline with the expected jobs1620 sets the image suffix as expected1621 with file at depth > 21622 includes no job1623 when PIP_REQUIREMENTS_FILE is defined1624 creates a pipeline with the expected jobs1625 sets the image suffix as expected1626 project supported by gemnasium analyzer1627 sets default value for DS_REMEDIATE1628QuickActions::InterpretService1629 #execute1630 assign command1631 there is a group1632 assigns to group members1633 does not assign to more than QuickActions::UsersFinder::MAX_QUICK_ACTION_USERS1634 Issue1635 fetches assignees and populates them if content contains /assign1636 with test_case issue type1637 does not mark to update assignee1638 assign command with multiple assignees1639 fetches assignee and populates assignee_ids if content contains /assign1640 Merge Request1641 fetches assignees and populates them if content contains /assign1642 assign command with a group of users1643 adds group members1644 assign command with multiple assignees1645 fetches assignee and populates assignee_ids if content contains /assign1646 unlicensed1647 does not recognize /assign with multiple user references1648 assign_reviewer command1649 with a merge request1650 fetches reviewers and populates them if content contains /assign_reviewer1651 assign command with multiple reviewers1652 assigns multiple reviewers while respecting previous assignments1653 unassign_reviewer command1654 unassign_reviewer command with multiple assignees1655 unassigns both reviewers if content contains /unassign_reviewer @user @user11656 does not unassign reviewers if the content cannot be parsed1657 unassign command1658 Issue1659 unassigns user if content contains /unassign @user1660 unassigns both users if content contains /unassign @user @user11661 unassigns all the users if content contains /unassign1662 does not apply command if the argument cannot be parsed1663 with a Merge Request1664 unassigns user if content contains /unassign @user1665 applying unassign command with multiple assignees1666 unassigns both users if content contains /unassign @user @user11667 when unlicensed1668 does not recognize /unassign @user1669 reassign command1670 Merge Request1671 reassigns user if content contains /reassign @user1672 unlicensed1673 does not recognize /reassign @user1674 it reassigns multiple users1675 reassigns user if content contains /reassign @user1676 Issue1677 reassigns user if content contains /reassign @user1678 unlicensed1679 does not recognize /reassign @user1680 with test_case issue type1681 does not mark to update assignee1682 it reassigns multiple users1683 reassigns user if content contains /reassign @user1684 reassign_reviewer command1685 reassigns reviewer if content contains /reassign_reviewer @user1686 unlicensed1687 does not recognize /reassign_reviewer @user1688 iteration command1689 when iterations are enabled1690 when iteration exists1691 with permissions1692 assigns an iteration to an issue1693 when iteration is started1694 assigns an iteration to an issue1695 when the user does not have enough permissions1696 returns an error message1697 when iteration does not exist1698 returns empty message1699 when iterations are disabled1700 does not recognize /iteration1701 when issuable does not support iterations1702 does not assign an iteration to an incident1703 remove_iteration command1704 when iterations are enabled1705 removes an assigned iteration from an issue1706 when the user does not have enough permissions1707 returns an error message1708 when iterations are disabled1709 does not recognize /remove_iteration1710 when issuable does not support iterations1711 does not assign an iteration to an incident1712 epic command1713 when epics are enabled1714 when epic exists1715 assigns an issue to an epic1716 when an issue belongs to a project without group1717 does not assign an issue to an epic1718 when issue is already added to epic1719 returns error message1720 when issuable does not support epics1721 does not assign an incident to an epic1722 when epic does not exist1723 does not assign an issue to an epic1724 when user has no permissions to read epic1725 does not assign an issue to an epic1726 when epics are disabled1727 does not recognize /epic1728 parent_epic command1729 behaves like adds quick action parameter1730 adds parameter to updates array1731 when target epic is not persisted yet1732 behaves like adds quick action parameter1733 adds parameter to updates array1734 child_epic command1735 when subepics are enabled1736 when a user does not have permissions to add epic relations1737 behaves like does not add quick action parameter1738 does not add parameter to updates array1739 behaves like quick action is unavailable1740 does not recognize action1741 when a user has permissions to add epic relations1742 behaves like adds quick action parameter1743 adds parameter to updates array1744 behaves like quick action is available1745 does recognize action1746 behaves like quick action is unavailable1747 does not recognize action1748 behaves like quick action is unavailable1749 does not recognize action1750 when target epic is not persisted yet1751 behaves like adds quick action parameter1752 adds parameter to updates array1753 when passed child epic is nil1754 does not raise error1755 behaves like does not add quick action parameter1756 does not add parameter to updates array1757 when child_epic is already linked to an epic1758 behaves like quick action is available1759 does recognize action1760 when child epic is in a subgroup of parent epic1761 behaves like quick action is available1762 does recognize action1763 when child epic is in a parent group of the parent epic1764 behaves like quick action is available1765 does recognize action1766 when child epic is in a different group than parent epic1767 behaves like quick action is available1768 does recognize action1769 when epics are disabled1770 behaves like does not add quick action parameter1771 does not add parameter to updates array1772 behaves like quick action is unavailable1773 does not recognize action1774 remove_child_epic command1775 when subepics are enabled1776 when a user does not have permissions to remove epic relations1777 does not remove child_epic from epic1778 behaves like epic relation is not removed1779 does not remove child_epic from epic1780 behaves like quick action is unavailable1781 does not recognize action1782 when a user has permissions to remove epic relations1783 behaves like quick action is available1784 does recognize action1785 behaves like quick action is unavailable1786 does not recognize action1787 behaves like quick action is unavailable1788 does not recognize action1789 when target epic is not persisted yet1790 behaves like quick action is unavailable1791 does not recognize action1792 behaves like epic relation is removed1793 does not remove child_epic from epic1794 when trying to remove child epic from a different epic1795 behaves like epic relation is not removed1796 does not remove child_epic from epic1797 when child epic is in a subgroup of parent epic1798 behaves like epic relation is removed1799 does not remove child_epic from epic1800 behaves like quick action is available1801 does recognize action1802 when child and parent epics are in different groups1803 when child epic is in a parent group of the parent epic1804 behaves like epic relation is removed1805 does not remove child_epic from epic1806 behaves like quick action is available1807 does recognize action1808 when child epic is in a different group than parent epic1809 behaves like epic relation is removed1810 does not remove child_epic from epic1811 behaves like quick action is available1812 does recognize action1813 when subepics are disabled1814 behaves like epic relation is not removed1815 does not remove child_epic from epic1816 behaves like quick action is unavailable1817 does not recognize action1818 label command for epics1819 when epics are enabled1820 when a user has permissions to label an epic1821 populates valid label ids1822 when a user does not have permissions to label an epic1823 does not populate any labels1824 when epics are disabled1825 does not populate any labels1826 remove_epic command1827 when epics are disabled1828 does not recognize /remove_epic1829 when subepics are enabled1830 unassigns an issue from an epic1831 when issuable does not support epics1832 does not recognize /remove_epic1833 issuable weights licensed1834 weight1835 behaves like weight command1836 populates weight specified by the /weight command1837 behaves like weight command1838 populates weight specified by the /weight command1839 when weight is negative1840 does not populate weight1841 clear_weight1842 behaves like clear weight command1843 populates weight: nil if content contains /clear_weight1844 issuable weights unlicensed1845 does not recognise /weight X1846 does not recognise /clear_weight1847 issuable weights not supported by type1848 does not recognise /weight X1849 does not recognise /clear_weight1850 issuable health statuses licensed1851 health_status1852 behaves like health_status command1853 populates health_status specified by the /health_status command1854 behaves like health_status command1855 populates health_status specified by the /health_status command1856 when health_status is invalid1857 does not populate health_status1858 when the user does not have enough permissions1859 returns an error message1860 clear_health_status1861 behaves like clear_health_status command1862 populates health_status: nil if content contains /clear_health_status1863 when the user does not have enough permissions1864 returns an error message1865 issuable health_status unlicensed1866 does not recognise /health_status X1867 does not recognise /clear_health_status1868 issuable health_status not supported by type1869 does not recognise /health_status X1870 does not recognise /clear_health_status1871 not persisted merge request can not be merged1872 behaves like empty command1873 populates {} if content contains an unsupported command1874 not approved merge request can not be merged1875 behaves like empty command1876 populates {} if content contains an unsupported command1877 when the merge request is not approved1878 behaves like failed command1879 populates {} if content contains an unsupported command1880 returns Could not apply merge command. message1881 when the merge request is blocked1882 behaves like failed command1883 populates {} if content contains an unsupported command1884 returns Could not apply merge command. message1885 when merge request has denied policies1886 behaves like failed command1887 populates {} if content contains an unsupported command1888 returns Could not apply merge command. message1889 approved merge request can be merged1890 behaves like empty command1891 populates {} if content contains an unsupported command1892 confidential command1893 for test cases1894 does mark to update confidential attribute1895 for requirements1896 fails supports confidentiality condition1897 for epics1898 returns correct explain message1899 returns successful execution message1900 when epic has non-confidential issues1901 behaves like command not applied1902 returns unsuccessful execution message1903 when epic has non-confidential epics1904 behaves like command not applied1905 returns unsuccessful execution message1906 when a user has no permissions to set confidentiality1907 does not update epic confidentiality1908 #explain1909 health_status command1910 issuable health statuses licensed1911 includes the value1912 unassign command1913 includes all assignees' references1914 unassign command with assignee references1915 includes only selected assignee references1916 weight command1917 includes the number1918 epic commands1919 child_epic command1920 behaves like returns execution messages1921 when correct epic reference1922 returns explain message with epic reference1923 returns successful execution message1924 when epic reference is wrong1925 returns empty explain message1926 when epic is already a child epic1927 behaves like epics are already related1928 returns unsuccessful execution message1929 when epic is the parent epic1930 behaves like epics are already related1931 returns unsuccessful execution message1932 when epic does not exist1933 behaves like target epic does not exist1934 returns unsuccessful execution message1935 when user has no permission to read epic1936 behaves like without permissions for action1937 returns unsuccessful execution message1938 remove_child_epic command1939 when correct epic reference1940 returns explain message with epic reference1941 returns successful execution message1942 when epic reference is wrong1943 returns empty explain message1944 when child epic does not exist1945 returns unsuccessful execution message1946 parent_epic command1947 behaves like returns execution messages1948 when correct epic reference1949 returns explain message with epic reference1950 returns successful execution message1951 when epic reference is wrong1952 returns empty explain message1953 when epic is already a parent epic1954 behaves like epics are already related1955 returns unsuccessful execution message1956 when epic is a an existing child epic1957 behaves like epics are already related1958 returns unsuccessful execution message1959 when epic does not exist1960 behaves like target epic does not exist1961 returns unsuccessful execution message1962 when user has no permission to read epic1963 behaves like without permissions for action1964 returns unsuccessful execution message1965 remove_parent_epic command1966 when parent is present1967 returns explain message with epic reference1968 returns successful execution message1969 when target epic is not persisted yet1970 behaves like quick action is unavailable1971 does not recognize action1972 when parent is not present1973 returns empty explain message1974 returns unsuccessful execution message1975Security::OrchestrationPolicyConfiguration1976 associations1977 is expected to belong to project required: false inverse_of => security_orchestration_policy_configuration1978 is expected to belong to namespace required: false inverse_of => security_orchestration_policy_configuration1979 is expected to belong to security_policy_management_project class_name => Project required: false1980 is expected to have many rule_schedules class_name => Security::OrchestrationPolicyRuleSchedule inverse_of => security_orchestration_policy_configuration1981 validations1982 is expected to validate that :security_policy_management_project cannot be empty/falsy1983 when created for project1984 is expected not to validate that :namespace cannot be empty/falsy1985 is expected to validate that :project cannot be empty/falsy1986 is expected to validate that :project is case-sensitively unique1987 when created for namespace1988 is expected not to validate that :project cannot be empty/falsy1989 is expected to validate that :namespace cannot be empty/falsy1990 is expected to validate that :namespace is case-sensitively unique1991 .for_project1992 returns configuration for given projects1993 .for_namespace1994 returns configuration for given namespaces1995 .for_management_project1996 returns configuration for given the policy management project1997 .with_outdated_configuration1998 returns configuration with outdated configurations1999 .policy_management_project?2000 returns true when security_policy_management_project with id exists2001 returns false when security_policy_management_project with id does not exist2002 .valid_scan_type?2003 returns true when scan type is valid2004 returns false when scan type is invalid2005 #policy_configuration_exists?2006 when file is missing2007 is expected to eq false2008 when policy is present2009 is expected to eq true2010 #policy_hash2011 when policy is present2012 is expected to eq "Run DAST in every pipeline"2013 when policy has invalid YAML format2014 is expected to be nil2015 when policy is nil2016 is expected to be nil2017 #policy_by_type2018 when policy is present2019 retrieves policy by type2020 when policy is nil2021 returns an empty array2022 #policy_configuration_valid?2023 when file is invalid2024 is expected to eq false2025 when file has invalid name2026 is expected to equal false2027 when file is valid2028 is expected to eq true2029 when policy is passed as argument2030 when scan type is secret_detection2031 returns false if extra fields are present2032 returns true if extra fields are not present2033 for schedule policy rule2034 cadence: "@weekly", is_valid: true2035 is expected to eq true2036 cadence: "@yearly", is_valid: true2037 is expected to eq true2038 cadence: "@annually", is_valid: true2039 is expected to eq true2040 cadence: "@monthly", is_valid: true2041 is expected to eq true2042 cadence: "@weekly", is_valid: true2043 is expected to eq true2044 cadence: "@daily", is_valid: true2045 is expected to eq true2046 cadence: "@midnight", is_valid: true2047 is expected to eq true2048 cadence: "@noon", is_valid: true2049 is expected to eq true2050 cadence: "@hourly", is_valid: true2051 is expected to eq true2052 cadence: "* * * * *", is_valid: true2053 is expected to eq true2054 cadence: "0 0 2 3 *", is_valid: true2055 is expected to eq true2056 cadence: "* * L * *", is_valid: true2057 is expected to eq true2058 cadence: "* * -6 * *", is_valid: true2059 is expected to eq true2060 cadence: "* * -3 * *", is_valid: true2061 is expected to eq true2062 cadence: "* * 12 * *", is_valid: true2063 is expected to eq true2064 cadence: "0 9 -4 * *", is_valid: true2065 is expected to eq true2066 cadence: "0 0 -8 * *", is_valid: true2067 is expected to eq true2068 cadence: "7 10 * * *", is_valid: true2069 is expected to eq true2070 cadence: "00 07 * * *", is_valid: true2071 is expected to eq true2072 cadence: "* * * * tue", is_valid: true2073 is expected to eq true2074 cadence: "* * * * TUE", is_valid: true2075 is expected to eq true2076 cadence: "12 10 0 * *", is_valid: true2077 is expected to eq true2078 cadence: "52 20 * * 2", is_valid: true2079 is expected to eq true2080 cadence: "* * last * *", is_valid: true2081 is expected to eq true2082 cadence: "0 2 last * *", is_valid: true2083 is expected to eq true2084 cadence: "52 9 2-5 * 2", is_valid: true2085 is expected to eq true2086 cadence: "0 0 27 3 1,5", is_valid: true2087 is expected to eq true2088 cadence: "0 0 11 * 3-6", is_valid: true2089 is expected to eq true2090 cadence: "0 0 -7-L * *", is_valid: true2091 is expected to eq true2092 cadence: "0 0 -1,-2 * *", is_valid: true2093 is expected to eq true2094 cadence: "10/30 * * * *", is_valid: true2095 is expected to eq true2096 cadence: "21 37 4,12 * 3", is_valid: true2097 is expected to eq true2098 cadence: "02 07 21 jan *", is_valid: true2099 is expected to eq true2100 cadence: "02 07 21 JAN *", is_valid: true2101 is expected to eq true2102 cadence: "0 1 L * wed-fri", is_valid: true2103 is expected to eq true2104 cadence: "0 1 L * wed-FRI", is_valid: true2105 is expected to eq true2106 cadence: "0 1 L * WED-fri", is_valid: true2107 is expected to eq true2108 cadence: "0 1 L * WED-FRI", is_valid: true2109 is expected to eq true2110 cadence: "0 0 21 4 sat,sun", is_valid: true2111 is expected to eq true2112 cadence: "0 0 21 4 SAT,SUN", is_valid: true2113 is expected to eq true2114 cadence: "10-30/30 * * * *", is_valid: true2115 is expected to eq true2116 cadence: "", is_valid: false2117 is expected to eq false2118 cadence: "1", is_valid: false2119 is expected to eq false2120 cadence: "2 3 4", is_valid: false2121 is expected to eq false2122 cadence: "invalid", is_valid: false2123 is expected to eq false2124 cadence: "@WEEKLY", is_valid: false2125 is expected to eq false2126 cadence: "@YEARLY", is_valid: false2127 is expected to eq false2128 cadence: "@ANNUALLY", is_valid: false2129 is expected to eq false2130 cadence: "@MONTHLY", is_valid: false2131 is expected to eq false2132 cadence: "@WEEKLY", is_valid: false2133 is expected to eq false2134 cadence: "@DAILY", is_valid: false2135 is expected to eq false2136 cadence: "@MIDNIGHT", is_valid: false2137 is expected to eq false2138 cadence: "@NOON", is_valid: false2139 is expected to eq false2140 cadence: "@HOURLY", is_valid: false2141 is expected to eq false2142 with scan result policies2143 is expected to eq true2144 with various approvers2145 user_approvers: [], user_approvers_ids: nil, group_approvers: nil, group_approvers_ids: nil, is_valid: false2146 is expected to eq false2147 user_approvers: ["username"], user_approvers_ids: nil, group_approvers: nil, group_approvers_ids: nil, is_valid: true2148 is expected to eq true2149 user_approvers: nil, user_approvers_ids: [], group_approvers: nil, group_approvers_ids: nil, is_valid: false2150 is expected to eq false2151 user_approvers: nil, user_approvers_ids: [1], group_approvers: nil, group_approvers_ids: nil, is_valid: true2152 is expected to eq true2153 user_approvers: nil, user_approvers_ids: nil, group_approvers: [], group_approvers_ids: nil, is_valid: false2154 is expected to eq false2155 user_approvers: nil, user_approvers_ids: nil, group_approvers: ["group_path"], group_approvers_ids: nil, is_valid: true2156 is expected to eq true2157 user_approvers: nil, user_approvers_ids: nil, group_approvers: nil, group_approvers_ids: [], is_valid: false2158 is expected to eq false2159 user_approvers: nil, user_approvers_ids: nil, group_approvers: nil, group_approvers_ids: [2], is_valid: true2160 is expected to eq true2161 with various policy names2162 policy_name: "License-Check", expected_to_be_valid: false2163 is expected to eq false2164 policy_name: "Coverage-Check", expected_to_be_valid: false2165 is expected to eq false2166 policy_name: "New License-Check", expected_to_be_valid: true2167 is expected to eq true2168 policy_name: "Coverage-Check through policies", expected_to_be_valid: true2169 is expected to eq true2170 #policy_configuration_validation_errors2171 when file is invalid2172 is expected to eq ["property '/scan_execution_policy/0/rules/0/branches' is not of type: array"]2173 when file is valid2174 is expected to eq []2175 when policy is passed as argument2176 when scan type is secret_detection2177 returns false if extra fields are present2178 returns true if extra fields are not present2179 #active_scan_execution_policies2180 returns only enabled policies2181 #active_policy_names_with_dast_site_profile2182 returns list of policy names where site profile is referenced2183 #active_policy_names_with_dast_scanner_profile2184 returns list of policy names where site profile is referenced2185 #policy_last_updated_by2186 when last commit to policy file exists2187 is expected to eq #<User id:736 @namespace305>2188 when last commit to policy file does not exist2189 is expected to be nil2190 #policy_last_updated_at2191 when last commit to policy file exists2192 returns commit's updated date2193 when last commit to policy file does not exist2194 is expected to be nil2195 #delete_all_schedules2196 deletes all schedules belonging to configuration2197 #active_scan_result_policies2198 returns only enabled policies2199 returns only 5 from all active policies2200 when policy configuration is configured for namespace2201 returns only enabled policies2202 returns only 5 from all active policies2203 #scan_result_policies2204 returns all scan result policies2205 #project?2206 when project is assigned to policy configuration2207 is expected to eq true2208 when namespace is assigned to policy configuration2209 is expected to eq false2210 #namespace?2211 when project is assigned to policy configuration2212 is expected to eq false2213 when namespace is assigned to policy configuration2214 is expected to eq true2215 #source2216 when project is assigned to policy configuration2217 is expected to eq #<Project id:438 namespace448/project438>>2218 when namespace is assigned to policy configuration2219 is expected to eq #<Namespaces::UserNamespace id: 1352, name: "Sidney Jones1183", path: "namespace449", owner_id: 880, ...runners_enabled: true, allow_descendants_override_disabled_shared_runners: false, traversal_ids: []>2220 #delete_scan_finding_rules2221 when associated to a project2222 behaves like approval rules deletion2223 deletes project approval rules2224 deletes merge request approval rules2225 with orphans rules2226 behaves like approval rules deletion2227 deletes project approval rules2228 deletes merge request approval rules2229 when associated to namespace2230 behaves like approval rules deletion2231 deletes project approval rules2232 deletes merge request approval rules2233 #delete_scan_finding_rules_for_project2234 deletes project approval rules2235 deletes merge request approval rules2236 with unrelated resources2237 does not delete unrelated project approval rules2238 does not delete unrelated merge request approval rules2239 #active_policies_scan_actions2240 returns active scan policies2241 with disabled scan policies2242 filters2243 with scan policies targeting other branch2244 filters2245Geo::MergeRequestDiffRegistry2246 factory is valid2247 scopes2248 sync_timed_out2249 return correct records2250 finders2251 .find_registries_never_attempted_sync2252 returns unsynced items2253 returns items that never have an attempt to sync except some specific item ID2254 .find_registries_needs_sync_again2255 returns failed items2256 returns failed items except some specific item ID2257 orders records according to retry_at2258 .fail_sync_timeouts2259 marks started records as failed if they are expired2260 #failed!2261 sets last_sync_failure with message2262 truncates a long last_sync_failure2263 increments retry_count2264 sets retry_at to a time in the future2265 when an error is given2266 includes error.message in last_sync_failure2267 when missing_on_primary is not given2268 caps retry_at to default 1 hour2269 when missing_on_primary is falsey2270 caps retry_at to default 1 hour2271 when missing_on_primary is truthy2272 caps retry_at to 4 hours2273 state machine2274 when transitioning to synced2275 marks verification as pending2276 when the model_record cannot be verified2277 when the registry is already verification_disabled2278 changes verification to disabled2279 when the registry is verification_pending2280 changes verification to disabled2281 verification_state machine2282 when transitioning to verification_failed2283 changes state from synced to failed2284 .verification_pending_batch2285 returns IDs of rows which are synced and pending verification2286 excludes rows which are not synced or are not pending verification2287 marks verification as started2288 .verification_failed_batch2289 with a failed record with retry due2290 returns IDs of rows which are synced and have failed verification2291 excludes rows which are not synced or have not failed verification2292 marks verification as started2293 when verification_retry_at is in the future2294 does not return the row which failed verification2295 .needs_verification_count2296 returns the number of rows which are synced and pending verification2297 includes rows which are synced and failed verification and are due for retry2298 excludes rows which are synced and failed verification and have a future retry time2299 excludes rows which are not synced or are not (pending or failed) verification2300 #verification_succeeded!2301 clears checksum mismatch fields2302 #track_checksum_attempt!2303 yields to the checksum calculation2304 when verification was not yet started2305 starts verification2306 when the model record cannot be verified2307 when the registry is already verification_disabled2308 leaves verification as disabled2309 when the registry is verification_pending2310 changes verification to disabled2311 when the primary site is expected to checksum the model record2312 comparison with primary checksum2313 when the calculated checksum matches the primary checksum2314 transitions to verification_succeeded and updates the checksum2315 when the calculated checksum does not match the primary checksum2316 transitions to verification_failed and updates mismatch fields2317 when verification was started2318 does not update verification_started_at2319 when an error occurs while yielding2320 sets verification_failed2321Vulnerabilities::Read2322 associations2323 is expected to belong to vulnerability required: false2324 is expected to belong to project required: false2325 is expected to belong to scanner class_name => Vulnerabilities::Scanner required: false2326 validations2327 is expected to validate that :vulnerability_id cannot be empty/falsy2328 is expected to validate that :project_id cannot be empty/falsy2329 is expected to validate that :scanner_id cannot be empty/falsy2330 is expected to validate that :report_type cannot be empty/falsy2331 is expected to validate that :severity cannot be empty/falsy2332 is expected to validate that :state cannot be empty/falsy2333 is expected to validate that :uuid cannot be empty/falsy2334 is expected to validate that the length of :location_image is at most 20482335 is expected to validate that :vulnerability_id is case-sensitively unique2336 is expected to validate that :uuid is case-insensitively unique2337 is expected to allow :has_issues to be ‹true›2338 is expected to allow :has_issues to be ‹false›2339 is expected not to allow :has_issues to be ‹nil›2340 is expected to allow :resolved_on_default_branch to be ‹true›2341 is expected to allow :resolved_on_default_branch to be ‹false›2342 is expected not to allow :resolved_on_default_branch to be ‹nil›2343 triggers2344 trigger on vulnerability_occurrences insert2345 when vulnerability_id is set2346 when the related vulnerability record is not marked as `present_on_default_branch`2347 does not create a new vulnerability_reads row2348 when the related vulnerability record is marked as `present_on_default_branch`2349 creates a new vulnerability_reads row2350 when vulnerability_id is not set2351 does not create a new vulnerability_reads row2352 trigger on vulnerability_occurrences update2353 when vulnerability_id is updated2354 creates a new vulnerability_reads row2355 when vulnerability_id is not updated2356 does not create a new vulnerability_reads row2357 trigger on vulnerability_occurrences location update2358 when image is updated2359 updates location_image in vulnerability_reads2360 when agent_id is updated2361 updates cluster_agent_id in vulnerability_reads2362 when image or agent_id is not updated2363 does not update location_image or cluster_agent_id in vulnerability_reads2364 trigger on vulnerabilities update2365 when the vulnerability is not marked as `present_on_default_branch`2366 does not update vulnerability attributes in vulnerability_reads2367 when the vulnerability is marked as `present_on_default_branch`2368 when vulnerability attributes are updated2369 updates vulnerability attributes in vulnerability_reads2370 when vulnerability attributes are not updated2371 does not update vulnerability attributes in vulnerability_reads2372 trigger_insert_vulnerability_reads_from_vulnerability2373 when the vulnerability does not get marked as `present_on_default_branch`2374 does not create a new `vulnerability_reads` record2375 when the vulnerability gets marked as `present_on_default_branch`2376 creates a new `vulnerability_reads` record2377 trigger on vulnerabilities_issue_link2378 on insert2379 updates has_issues in vulnerability_reads2380 on delete2381 does not change has_issues when there exists another issue2382 unsets has_issues when all issues are deleted2383 .by_scanner_ids2384 returns matching vulnerabilities2385 .for_projects2386 returns vulnerability_reads related to the given project IDs2387 .with_report_types2388 returns vulnerabilities matching the given report_types2389 .with_severities2390 returns vulnerabilities matching the given severities2391 .with_states2392 returns vulnerabilities matching the given states2393 .with_scanner_external_ids2394 returns vulnerabilities matching the given scanner external IDs2395 .with_container_image2396 returns vulnerabilities with given image2397 .with_resolution2398 when no argument is provided2399 is expected to contain exactly #<Vulnerabilities::Read id: 47, vulnerability_id: 49, project_id: 651, scanner_id: 51, report_type: "...cb56", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1830>2400 when the argument is provided2401 when the given argument is `true`2402 is expected to contain exactly #<Vulnerabilities::Read id: 47, vulnerability_id: 49, project_id: 651, scanner_id: 51, report_type: "...cb56", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1830>2403 when the given argument is `false`2404 is expected to contain exactly #<Vulnerabilities::Read id: 48, vulnerability_id: 50, project_id: 654, scanner_id: 52, report_type: "...e924", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1837>2405 .with_issues2406 when no argument is provided2407 is expected to contain exactly #<Vulnerabilities::Read id: 49, vulnerability_id: 51, project_id: 657, scanner_id: 53, report_type: "...0a5b", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1844>2408 when the argument is provided2409 when the given argument is `true`2410 is expected to contain exactly #<Vulnerabilities::Read id: 49, vulnerability_id: 51, project_id: 657, scanner_id: 53, report_type: "...0a5b", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1844>2411 when the given argument is `false`2412 is expected to contain exactly #<Vulnerabilities::Read id: 50, vulnerability_id: 52, project_id: 660, scanner_id: 54, report_type: "...05ee", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1851>2413 .as_vulnerabilities2414 returns vulnerabilities as list2415 .order_by2416 when method is nil2417 is expected to contain exactly #<Vulnerabilities::Read id: 55, vulnerability_id: 57, project_id: 675, scanner_id: 59, report_type: "...db91", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1886>, #<Vulnerabilities::Read id: 56, vulnerability_id: 58, project_id: 678, scanner_id: 60, report_type: "...c260", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1893>, and #<Vulnerabilities::Read id: 54, vulnerability_id: 56, project_id: 672, scanner_id: 58, report_type: "...1cf3", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1879>2418 when ordered by severity_desc2419 is expected to contain exactly #<Vulnerabilities::Read id: 55, vulnerability_id: 57, project_id: 675, scanner_id: 59, report_type: "...db91", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1886>, #<Vulnerabilities::Read id: 56, vulnerability_id: 58, project_id: 678, scanner_id: 60, report_type: "...c260", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1893>, and #<Vulnerabilities::Read id: 54, vulnerability_id: 56, project_id: 672, scanner_id: 58, report_type: "...1cf3", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1879>2420 when ordered by severity_asc2421 is expected to contain exactly #<Vulnerabilities::Read id: 54, vulnerability_id: 56, project_id: 672, scanner_id: 58, report_type: "...1cf3", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1879>, #<Vulnerabilities::Read id: 56, vulnerability_id: 58, project_id: 678, scanner_id: 60, report_type: "...c260", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1893>, and #<Vulnerabilities::Read id: 55, vulnerability_id: 57, project_id: 675, scanner_id: 59, report_type: "...db91", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1886>2422 when ordered by detected_desc2423 is expected to contain exactly #<Vulnerabilities::Read id: 56, vulnerability_id: 58, project_id: 678, scanner_id: 60, report_type: "...c260", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1893>, #<Vulnerabilities::Read id: 55, vulnerability_id: 57, project_id: 675, scanner_id: 59, report_type: "...db91", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1886>, and #<Vulnerabilities::Read id: 54, vulnerability_id: 56, project_id: 672, scanner_id: 58, report_type: "...1cf3", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1879>2424 when ordered by detected_asc2425 is expected to contain exactly #<Vulnerabilities::Read id: 54, vulnerability_id: 56, project_id: 672, scanner_id: 58, report_type: "...1cf3", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1879>, #<Vulnerabilities::Read id: 55, vulnerability_id: 57, project_id: 675, scanner_id: 59, report_type: "...db91", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1886>, and #<Vulnerabilities::Read id: 56, vulnerability_id: 58, project_id: 678, scanner_id: 60, report_type: "...c260", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1893>2426 .order_severity_2427 ascending2428 is expected to contain exactly #<Vulnerabilities::Read id: 57, vulnerability_id: 59, project_id: 681, scanner_id: 61, report_type: "...75fd", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1900>, #<Vulnerabilities::Read id: 59, vulnerability_id: 61, project_id: 687, scanner_id: 63, report_type: "...8bf7", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1914>, and #<Vulnerabilities::Read id: 58, vulnerability_id: 60, project_id: 684, scanner_id: 62, report_type: "...f587", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1907>2429 descending2430 is expected to contain exactly #<Vulnerabilities::Read id: 58, vulnerability_id: 60, project_id: 684, scanner_id: 62, report_type: "...f587", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1907>, #<Vulnerabilities::Read id: 59, vulnerability_id: 61, project_id: 687, scanner_id: 63, report_type: "...8bf7", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1914>, and #<Vulnerabilities::Read id: 57, vulnerability_id: 59, project_id: 681, scanner_id: 61, report_type: "...75fd", location_image: nil, cluster_agent_id: nil, casted_cluster_agent_id: nil, namespace_id: 1900>2431 .order_detected_at_2432 ascending2433 returns vulnerabilities ordered by created_at2434 descending2435 returns vulnerabilities ordered by created_at2436 .container_images2437 returns container images for vulnerabilities2438MergeRequestPolicy2439 for a merge request within the same project2440 when overwriting approvers is disabled on the project2441 does not allow anyone to update approvers2442 when overwriting approvers is enabled on the project2443 allows only project developers and above to update the approvers2444 allows project developers and above2445 to approve the merge request2446 for a merge request from a fork2447 when overwriting approvers is disabled on the target project2448 does not allow anyone to update approvers2449 when overwriting approvers is disabled on the source project2450 has no effect - project developers and above, as well as the author, can update the approvers2451 when overwriting approvers is enabled on the target project2452 allows project developers and above, as well as the author, to update the approvers2453 allows project developers and above2454 to approve the merge requests2455 for a merge request on a protected branch2456 when the reporter nor the group is added2457 is expected not to be allowed :approve_merge_request2458 when a group-level approval rule exists2459 when the merge request targets the protected branch2460 when the reporter is not a group member2461 is expected not to be allowed :approve_merge_request2462 when the reporter is a group member2463 is expected to be allowed :approve_merge_request2464 when the reporter has permission for a different protected branch2465 does not allow approval of the merge request2466 when the protected branch name is a wildcard2467 when the reporter has permission for the wildcarded branch2468 does allows approval of the merge request2469 when the reporter does not have permission for the wildcarded branch2470 does allows approval of the merge request2471 when checking for namespace in read only state2472 when namespace is in a read only state2473 does not allow few policies for all users including maintainer2474 when namespace is not in a read only state2475 does not lock basic policies for any user2476 provide_status_check_response2477 role: :guest, licensed: false, allowed: false2478 is expected to be disallowed :provide_status_check_response2479 role: :reporter, licensed: false, allowed: false2480 is expected to be disallowed :provide_status_check_response2481 role: :developer, licensed: false, allowed: false2482 is expected to be disallowed :provide_status_check_response2483 role: :maintainer, licensed: false, allowed: false2484 is expected to be disallowed :provide_status_check_response2485 role: :owner, licensed: false, allowed: false2486 is expected to be disallowed :provide_status_check_response2487 role: :admin, licensed: false, allowed: false2488 is expected to be disallowed :provide_status_check_response2489 role: :guest, licensed: true, allowed: false2490 is expected to be disallowed :provide_status_check_response2491 role: :reporter, licensed: true, allowed: false2492 is expected to be disallowed :provide_status_check_response2493 role: :developer, licensed: true, allowed: true2494 is expected to be allowed :provide_status_check_response2495 role: :maintainer, licensed: true, allowed: true2496 is expected to be allowed :provide_status_check_response2497 role: :owner, licensed: true, allowed: true2498 is expected to be allowed :provide_status_check_response2499 role: :admin, licensed: true, allowed: true2500 is expected to be allowed :provide_status_check_response2501 create_merge_request_approval_rules2502 coverage_license_enabled: false, report_approver_license_enabled: false, allowed: false2503 is expected to be disallowed :create_merge_request_approval_rules2504 coverage_license_enabled: true, report_approver_license_enabled: true, allowed: true2505 is expected to be allowed :create_merge_request_approval_rules2506 coverage_license_enabled: false, report_approver_license_enabled: true, allowed: true2507 is expected to be allowed :create_merge_request_approval_rules2508 coverage_license_enabled: true, report_approver_license_enabled: false, allowed: true2509 is expected to be allowed :create_merge_request_approval_rules2510MergeRequest2511 associations2512 is expected to contain exactly #<MergeRequestBlock id: 3, blocking_merge_request_id: 151, blocked_merge_request_id: 152, created_at: "2022-11-11 01:10:11.121383386 +0000", updated_at: "2022-11-11 01:10:11.121383386 +0000">2513 is expected to be empty2514 is expected to be empty2515 is expected to contain exactly #<MergeRequestBlock id: 6, blocking_merge_request_id: 157, blocked_merge_request_id: 158, created_at: "2022-11-11 01:10:17.960088733 +0000", updated_at: "2022-11-11 01:10:17.960088733 +0000">2516 is expected to be empty2517 is expected to contain exactly #<MergeRequest id:162 namespace755/project773!1>2518 is expected to contain exactly #<MergeRequest id:163 namespace756/project774!1>2519 is expected to be empty2520 #merge_blocked_by_other_mrs?2521 licensed2522 is false for the blocking MR2523 is true for the blocked MR when the blocking MR is open2524 is true for the blocked MR when the blocking MR is closed2525 is false for the blocked MR when the blocking MR is merged2526 unlicensed2527 is false for the blocked MR2528 #visible_blocking_merge_requests2529 shows blocking MR to developer2530 hides block from guest2531 hides block from anonymous user2532 #visible_blocking_merge_request_refs2533 returns the references for the result of #visible_blocking_merge_requests2534 #hidden_blocking_merge_requests_count2535 returns 0 when all MRs are visible2536 MR is hidden2537 returns 1 when MR is unmerged by default2538 MR is merged2539 returns 0 by default2540 returns 1 when include_merged: true2541Geo::PipelineArtifactReplicator2542 invokes replicator.handle_after_create_commit on create2543 behaves like a replicator2544 Geo node status2545 on a primary site2546 .primary_total_count2547 when batch count feature flag is enabled2548 returns the number of available replicables on primary2549 when batch count feature flag is disabled2550 returns the number of available replicables on primary2551 on a secondary site2552 .synced_count2553 returns the number of synced items on secondary2554 .failed_count2555 returns the number of failed items on secondary2556 when replicator is Geo::RegistrySyncWorker compatible2557 has "created" and "deleted" events2558 #replicator2559 is defined and does not raise error2560 .replicables_for_current_secondary2561 when syncing object storage is enabled2562 behaves like is implemented and returns a valid relation2563 is implemented2564 when syncing object storage is disabled2565 behaves like is implemented and returns a valid relation2566 is implemented2567 with selective sync disabled2568 behaves like is implemented and returns a valid relation2569 is implemented2570 with selective sync enabled for namespaces2571 behaves like is implemented and returns a valid relation2572 is implemented2573 with selective sync enabled for shards2574 behaves like is implemented and returns a valid relation2575 is implemented2576 #handle_after_create_commit2577 creates a Geo::Event2578 calls #after_verifiable_update2579 when replication feature flag is disabled2580 does not call #after_verifiable_update2581 does not publish2582 #handle_after_destroy2583 creates a Geo::Event2584 when replication feature flag is disabled2585 does not publish2586 created event consumption2587 when the blob's project is in replicables for this geo node2588 invokes Geo::BlobDownloadService2589 when the blob's project is not in replicables for this geo node2590 does not invoke Geo::BlobDownloadService2591 deleted event consumption2592 when model_record was deleted from the DB and the replicator only has its ID2593 invokes Geo::FileRegistryRemovalService2594 backward compatibility2595 invokes Geo::FileRegistryRemovalService when delete event is in deprecated format2596 when object storage is enabled2597 when GitLab managed replication is enabled2598 deletes the file from object storage2599 when GitLab managed replication is disabled2600 does not delete the file from object storage2601 #carrierwave_uploader2602 is implemented2603 #model2604 is implemented2605 is a Class2606 responds to primary_key2607 #blob_path2608 when the file is locally stored2609 returns a valid path to a file2610 #calculate_checksum2611 when the file is locally stored2612 when the file exists2613 returns hexdigest of the file2614 when the file does not exist2615 raises an error2616 when the file is remotely stored2617 raises an error2618 #file_exists?2619 is expected to be truthy2620 when the file does not exist2621 is expected to be falsey2622 when the file is nil2623 is expected to be falsey2624 .bulk_create_delete_events_async2625 creates events2626 raises error when model_record_id is nil2627 behaves like a verifiable replicator2628 events2629 has checksum_succeeded event2630 .verification_enabled?2631 when replication is enabled2632 when verification_feature_flag_enabled? returns true2633 returns true2634 when verification_feature_flag_enabled? returns false2635 returns false2636 when replication is disabled2637 returns false2638 .checksummed_count2639 when verification is enabled2640 returns the number of available verifiables where verification succeeded2641 excludes non-success verification states2642 when verification is disabled2643 returns nil2644 .checksum_failed_count2645 when verification is enabled2646 returns the number of available verifiables where verification failed2647 excludes other verification states2648 when verification is disabled2649 returns nil2650 .verification_total_count2651 when verification is enabled2652 returns the number of verification_not_disabled registry rows2653 when verification is disabled2654 returns nil2655 .trigger_background_verification2656 when verification is enabled2657 enqueues VerificationBatchWorker2658 enqueues VerificationTimeoutWorker2659 enqueues VerificationStateBackfillWorker2660 for a Geo secondary2661 does not enqueue ReverificationBatchWorker2662 for a Geo primary2663 enqueues ReverificationBatchWorker2664 when verification is disabled2665 does not enqueue VerificationBatchWorker2666 does not enqueue VerificationTimeoutWorker2667 .backfill_verification_state_table2668 calls VerificationStateBackfillService2669 when on secondary2670 returns false2671 .verify_batch2672 when there are records needing verification2673 calls #verify on each replicator2674 .remaining_verification_batch_count2675 converts needs_verification_count to number of batches2676 .remaining_reverification_batch_count2677 converts needs_reverification_count to number of batches2678 .reverify_batch!2679 calls #reverify_batch2680 .replicator_batch_to_verify2681 returns usable Replicator instances2682 .model_record_id_batch_to_verify2683 when the batch is filled by pending rows2684 returns IDs of pending rows2685 does not call .verification_failed_batch2686 when that batch is not filled by pending rows2687 includes IDs of failed rows2688 .verification_pending_batch2689 when current node is a primary2690 delegates to the model class of the replicator2691 when current node is a secondary2692 delegates to the registry class of the replicator2693 .verification_failed_batch2694 when current node is a primary2695 delegates to the model class of the replicator2696 when current node is a secondary2697 delegates to the registry class of the replicator2698 .fail_verification_timeouts2699 when current node is a primary2700 delegates to the model class of the replicator2701 when current node is a secondary2702 delegates to the registry class of the replicator2703 #after_verifiable_update2704 verification_enabled: true, immutable: true, checksum: nil, checksummable: true, expect_verify_async: true2705 calls verify_async only if needed2706 verification_enabled: true, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false2707 calls verify_async only if needed2708 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false2709 calls verify_async only if needed2710 verification_enabled: true, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false2711 calls verify_async only if needed2712 verification_enabled: true, immutable: false, checksum: nil, checksummable: true, expect_verify_async: true2713 calls verify_async only if needed2714 verification_enabled: true, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false2715 calls verify_async only if needed2716 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: true2717 calls verify_async only if needed2718 verification_enabled: true, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false2719 calls verify_async only if needed2720 verification_enabled: false, immutable: true, checksum: nil, checksummable: true, expect_verify_async: false2721 calls verify_async only if needed2722 verification_enabled: false, immutable: true, checksum: nil, checksummable: false, expect_verify_async: false2723 calls verify_async only if needed2724 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: true, expect_verify_async: false2725 calls verify_async only if needed2726 verification_enabled: false, immutable: true, checksum: "abc123", checksummable: false, expect_verify_async: false2727 calls verify_async only if needed2728 verification_enabled: false, immutable: false, checksum: nil, checksummable: true, expect_verify_async: false2729 calls verify_async only if needed2730 verification_enabled: false, immutable: false, checksum: nil, checksummable: false, expect_verify_async: false2731 calls verify_async only if needed2732 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: true, expect_verify_async: false2733 calls verify_async only if needed2734 verification_enabled: false, immutable: false, checksum: "abc123", checksummable: false, expect_verify_async: false2735 calls verify_async only if needed2736 #verify_async2737 on a Geo primary2738 calls verification_started! and enqueues VerificationWorker2739 #verify2740 wraps the checksum calculation in track_checksum_attempt!2741 #verification_state_tracker2742 on a Geo primary2743 returns model_record2744 on a Geo secondary2745 returns registry2746 #handle_after_checksum_succeeded2747 on a Geo primary2748 creates checksum_succeeded event2749 is called on verification success2750 on a Geo secondary2751 does not create an event2752 #consume_event_checksum_succeeded2753 with a persisted model_record2754 on a Geo primary2755 does nothing2756 on a Geo secondary2757 with a persisted registry2758 with a registry which is verified2759 sets state to verification_pending2760 with a registry which is pending verification2761 does not change state from verification_pending2762 with an unpersisted registry2763 does not persist the registry2764 #primary_verification_succeeded?2765 when the model record is verification_succeeded2766 returns true2767 when the model record is verification_succeeded2768 returns false2769 integration tests2770 on a primary2771 background backfill2772 verifies model records2773 triggered by events2774 verifies model records2775 on a secondary2776 background backfill2777 verifies registries2778 triggered by events2779 verifies registries2780Projects::CreateFromTemplateService2781 #execute2782 does not create project from custom template2783 when use_custom_template is not present or false2784 creates an empty project2785 when custom_project_templates feature is not enabled2786 creates an empty project2787 when custom_project_template does not exist2788 does not attempt to import a project2789 use_template_name: true2790 returns the created project2791 the result project2792 overrides template description2793 overrides template visibility_level2794 creating project from a Group project template2795 when the namespace is not a descendant of the Group owning the template2796 when project is created under a group that is outside the hierarchy its root ancestor group2797 behaves like a project that isn't persisted2798 isn't persisted2799 when project is created under a group that is a descendant of its root ancestor group2800 behaves like a project that isn't persisted2801 isn't persisted2802 when project is created under a subgroup that is a descendant of its root ancestor group2803 behaves like a project that isn't persisted2804 isn't persisted2805 when project is created outside of group hierarchy2806 behaves like a project that isn't persisted2807 isn't persisted2808 when the namespace is inside the hierarchy of the Group owning the template2809 when project is created under its parent group2810 behaves like a persisted project2811 is persisted2812 when project is created under the same group2813 behaves like a persisted project2814 is persisted2815 when project is created under its descendant group2816 behaves like a persisted project2817 is persisted2818 when project is created under a group that is a descendant of its parent group2819 behaves like a persisted project2820 is persisted2821 when project is created under a subgroup that is a descendant of its parent group2822 behaves like a persisted project2823 is persisted2824 use_template_name: false2825 returns the created project2826 the result project2827 overrides template description2828 overrides template visibility_level2829 creating project from a Group project template2830 when the namespace is not a descendant of the Group owning the template2831 when project is created under a group that is outside the hierarchy its root ancestor group2832 behaves like a project that isn't persisted2833 isn't persisted2834 when project is created under a group that is a descendant of its root ancestor group2835 behaves like a project that isn't persisted2836 isn't persisted2837 when project is created under a subgroup that is a descendant of its root ancestor group2838 behaves like a project that isn't persisted2839 isn't persisted2840 when project is created outside of group hierarchy2841 behaves like a project that isn't persisted2842 isn't persisted2843 when the namespace is inside the hierarchy of the Group owning the template2844 when project is created under its parent group2845 behaves like a persisted project2846 is persisted2847 when project is created under the same group2848 behaves like a persisted project2849 is persisted2850 when project is created under its descendant group2851 behaves like a persisted project2852 is persisted2853 when project is created under a group that is a descendant of its parent group2854 behaves like a persisted project2855 is persisted2856 when project is created under a subgroup that is a descendant of its parent group2857 behaves like a persisted project2858 is persisted2859Gitlab::Analytics::CycleAnalytics::Summary::Group::StageSummary2860 #identifier2861 returns identifiers for each metric2862 #new_issues2863 with from date2864 finds the number of issues created after it2865 returns the localized title2866 with subgroups2867 finds issues from them2868 with projects specified in options2869 finds issues from those projects2870 with `assignee_username` filter2871 finds issues from those projects2872 with `author_username` filter2873 finds issues from those projects2874 with `label_name` filter2875 finds issue with two labels2876 when `from` and `to` parameters are provided2877 finds issues from 5 days ago2878 with other projects2879 doesn't find issues from them2880 #deploys2881 with from date2882 finds the number of deploys made created after it2883 returns the localized title2884 with subgroups2885 finds deploys from them2886 with projects specified in options2887 shows deploys from those projects2888 when `from` and `to` parameters are provided2889 finds deployments from 5 days ago2890 with other projects2891 doesn't find deploys from them2892 #deployment_frequency2893 includes the unit: `/day`2894 when `to` is nil2895 includes range until now2896 when `to` is given2897 returns deployment frequency within `from` and `to` range2898Repository2899 delegated methods2900 is expected to delegate #checksum to the #raw_repository object2901 is expected to delegate #find_remote_root_ref to the #raw_repository object2902 #after_sync2903 expires repository cache2904 does not call expire_branch_cache if repository does not exist2905 #fetch_upstream2906 fetches the URL without creating a remote2907 Elastic search2908 class method find_commits_by_message_with_elastic2909 returns commits2910 find_commits_by_message_with_elastic2911 returns commits2912 #upstream_branches2913 returns branches from the upstream remote2914 #keep_around2915 on a Geo primary2916 when a single SHA is passed2917 publishes Repositories::KeepAroundRefsCreatedEvent2918 creates a Geo::RepositoryUpdatedEvent2919 when multiple SHAs are passed2920 publishes exactly one Repositories::KeepAroundRefsCreatedEvent2921 creates exactly one Geo::RepositoryUpdatedEvent2922 on a Geo secondary2923 when multiple SHAs are passed2924 publishes a Repositories::KeepAroundRefsCreatedEvent2925 does not create a Geo::RepositoryUpdatedEvent2926 when no SHA is passed2927 does not publish a Repositories::KeepAroundRefsCreatedEvent2928 does not create a Geo::RepositoryUpdatedEvent2929 #code_owners_blob2930 returns nil if there is no codeowners file2931 returns the content of the codeowners file when it is found2932 requests the CODOWNER blobs in batch in the correct order2933 #after_change_head2934 creates a RepositoryUpdatedEvent on a Geo primary2935 does not create a RepositoryUpdatedEvent on a Geo secondary2936 #insights_config_for2937 returns nil for an empty repository2938 returns a valid Insights config file2939 when no config file exists2940 returns nil if does not exist2941 #lfs_enabled?2942 for a group wiki repository2943 returns false2944 #update_root_ref2945 updates the default branch when HEAD has changed2946 always updates the default branch even when HEAD does not change2947 does not update the default branch when HEAD does not exist2948 does not raise error when repository does not exist2949Security::SecurityOrchestrationPolicies::FetchPolicyApproversService2950 #execute2951 with group outside of the scope2952 does not return the unrelated group2953 with user approver2954 returns user approvers2955 with container of a group type2956 returns user approvers2957 with container of any other type2958 does returns any user approvers2959 with group approver2960 returns group approvers2961 with both user and group approvers2962 returns all approvers2963 with policy equals to nil2964 returns no approver2965 with action equals to nil2966 returns no approver2967 with action of an unknown type2968 returns no approver2969 with more users than the limit2970 ids_multiplier: 150, names_multiplier: 150, ids_expected: 150, names_expected: 1502971 considers only the first within the limit2972 ids_multiplier: 300, names_multiplier: 300, ids_expected: 0, names_expected: 3002973 considers only the first within the limit2974 ids_multiplier: 300, names_multiplier: 200, ids_expected: 100, names_expected: 2002975 considers only the first within the limit2976 ids_multiplier: 600, names_multiplier: 600, ids_expected: 0, names_expected: 3002977 considers only the first within the limit2978 with more groups than the limit2979 considers only the first within the limit2980ProjectMember2981 is expected to includes the EE::ProjectMember module2982 behaves like member validations2983 validations2984 validates SSO enforcement2985 enforced SSO enabled2986 allows adding a user linked to the SAML account as member2987 does not allow adding a user not linked to the SAML account as member2988 allows adding a project bot as member2989 subgroups2990 does not allow adding a group member with SSO enforced on subgroup2991 enforced SSO disabled2992 allows adding the group member2993 validates GMA enforcement2994 enforced group managed account enabled2995 allows adding a user linked to the GMA account as project member2996 does not allow adding a user not linked to the GMA account as project member2997 allows adding a project bot2998 enforced group managed account disabled2999 allows adding any user as project member3000 #group_domain_validations3001 does not validate personal projects3002 behaves like member group domain validations3003 validates group domain limitations3004 when project parent has email domain feature switched on3005 users email must match at least one of the allowed domain emails3006 shows proper error message when not invited by admin3007 shows proper error message when invited by admin3008 shows proper error message for single domain limitation3009 invited email must match at least one of the allowed domain emails3010 user emails matching allowed domain must be verified3011 with project bot users3012 bot user email does not match3013 allows the project bot user3014 with group SAML users3015 user emails does not have to be verified3016 with group SCIM users3017 user emails does not have to be verified3018 when group is subgroup3019 users email must match at least one of the allowed domain emails3020 invited email must match at least one of the allowed domain emails3021 user emails matching allowed domain must be verified3022 with group SCIM users3023 user emails does not have to be verified3024 with group SAML users3025 user emails does not have to be verified3026 when project parent group has email domain feature switched off3027 users email need not match allowed domain emails3028 invited email need not match allowed domain emails3029 user emails does not have to be verified3030 #provisioned_by_this_group?3031 is expected to eq false3032 #state3033 #activate!3034 refreshes the user's authorized projects3035 #wait!3036 refreshes the user's authorized projects3037 delete protected environment acceses cascadingly3038 deletes associated protected environment access cascadingly3039 when the user is assiged to multiple protected environments in the same project3040 deletes all associated protected environment accesses in the project3041 when the user is assiged to multiple protected environments across different projects3042 deletes all associated protected environment accesses in the project3043 post create hooks3044 when a new personal project is created3045 does not send notifications or create events for the creator of the project3046 when a different user is added to a personal project as OWNER3047 sends notifications and creates events for the newly added OWNER3048 #accept_invite!3049 does not accept invite if group locks memberships for projects3050Resolvers::EpicsResolver3051 with a group3052 #resolve3053 returns nothing when feature disabled3054 finds all epics3055 with iid3056 finds a specific epic with iid3057 does not inflate the complexity3058 with iids3059 finds a specific epic with iids3060 finds multiple epics with iids3061 increases the complexity based on child_complexity and number of iids3062 within timeframe3063 when start_date and end_date are present3064 returns epics within timeframe3065 when timeframe start and end are present3066 returns epics within timeframe3067 with milestone3068 filters epics by timeframe and issues milestone3069 with state3070 lists epics with opened state3071 lists epics with closed state3072 behaves like graphql query for searching issuables3073 uses search optimization3074 filters issuables by title3075 filters issuables by description3076 with in param3077 generates an error if param search is missing3078 filters issuables by title and description3079 filters issuables by description only3080 filters issuables by title only3081 with anonymous user3082 with disable_anonymous_search as `true`3083 returns an error3084 does not return error if search term is not present3085 with disable_anonymous_search as `false`3086 filters issuables by search term3087 with author_username3088 filters epics by author3089 with label_name3090 filters epics by labels3091 with my_reaction_emoji3092 filters epics by reaction emoji3093 with milestone_title3094 filters epics by issues milestone3095 returns empty result if milestone is not assigned to any epic issues3096 with sort3097 orders epics by start date in descending order3098 orders epics by start date in ascending order3099 orders epics by end date in descending order3100 orders epics by end date in ascending order3101 orders epics by title in descending order3102 orders epics by title in ascending order3103 with subgroups3104 finds only the epics within the group we are looking at3105 returns all epics3106 does not return subgroup epics when include_descendant_groups is false3107 filters by milestones in subgroups3108 when the resolved group is a subgroup3109 returns only the epics belonging to the subgroup by default3110 returns the epics belonging to the ancestor groups when include_ancestor_groups is true3111 with partial iids3112 returns the expected epics if just the first number of iid is requested3113 returns the expected epics if first two numbers of iid are requested3114 returns the expected epics if last two numbers of iid are given3115 returns the expected epics if exact number of iid is given3116 with `top_level_hierarchy_only` param set as `true`3117 is expected to contain exactly #<Epic id:103 group545&1> and #<Epic id:104 group545&2>3118 when a parent epic is present3119 ignores `top_level_hierarchy_only` param and return all children of the given epic3120 with negated filters3121 for label3122 is expected to contain exactly #<Epic id:161 group556&2> and #<Epic id:162 group556&3>3123 for author3124 is expected to contain exactly #<Epic id:160 group556&1> and #<Epic id:162 group556&3>3125 for emoji3126 is expected to contain exactly #<Epic id:160 group556&1> and #<Epic id:161 group556&2>3127 when passing a non existent, batch loaded group3128 returns nil without breaking3129Banzai::Filter::References::EpicReferenceFilter3130 internal reference3131 links to a valid reference3132 links with adjacent text3133 includes a title attribute3134 escapes the title attribute3135 includes default classes3136 includes a data-group attribute3137 includes a data-epic attribute3138 includes a data-original attribute3139 includes a data-reference-format attribute3140 includes a data-reference-format attribute for URL references3141 ignores invalid epic IIDs3142 ignores out of range epic IDs3143 does not process links containing epic numbers followed by text3144 internal escaped reference3145 links to a valid reference3146 includes a title attribute3147 includes default classes3148 ignores invalid epic IIDs3149 cross-reference3150 ignores a shorthand reference from another group3151 links to a valid reference for full reference3152 link has valid text3153 includes default classes3154 escaped cross-reference3155 ignores a shorthand reference from another group3156 links to a valid reference for full reference3157 link has valid text3158 includes default classes3159 subgroup cross-reference3160 ignores a shorthand reference from another group3161 ignores reference with incomplete group path3162 links to a valid reference for full reference3163 link has valid text3164 includes default classes3165 url reference3166 links to a valid reference3167 link has valid text3168 includes default classes3169 matches link reference with trailing slash3170 full cross-refererence in a link href3171 links to a valid reference for link href3172 link has valid text3173 includes default classes3174 url in a link href3175 links to a valid reference for link href3176 link has valid text3177 includes default classes3178 checking N+13179 does not have N+1 per multiple references per group3180Audit::ProjectChangesAuditor3181 # order random3182 .audit_changes3183 non audit changes3184 does not call the audit event service3185 audit changes3186 creates an event when the visibility change3187 creates an event when the namespace change3188 creates an event when the repository size limit changes3189 creates an event when the packages enabled setting changes3190 creates an event when the merge requests template changes3191 creates an event when the merge requests author approval changes3192 creates an event when the merge requests committers approval changes3193 creates an event when the reset approvals on push changes3194 creates an event when the require password to approve changes3195 creates an event when the disable overriding approvers per merge request changes3196 creates an event when suggestion_commit_message change3197 does not create an event when suggestion_commit_message change from nil to empty string3198 when project name is updated3199 logs project_name_updated event3200 when project path is updated3201 logs project_path_updated event3202 when auditable boolean column is changed3203 prev_value: true, new_value: false3204 creates an audit event3205 prev_value: false, new_value: true3206 creates an audit event3207 prev_value: true, new_value: false3208 creates an audit event3209 prev_value: false, new_value: true3210 creates an audit event3211 prev_value: true, new_value: false3212 creates an audit event3213 prev_value: false, new_value: true3214 creates an audit event3215 prev_value: true, new_value: false3216 creates an audit event3217 prev_value: false, new_value: true3218 creates an audit event3219 prev_value: true, new_value: false3220 creates an audit event3221 prev_value: false, new_value: true3222 creates an audit event3223 when merge method is changed from Merge3224 ff: true, rebase: true, method: "Fast-forward"3225 creates an audit event3226 ff: true, rebase: false, method: "Fast-forward"3227 creates an audit event3228 ff: false, rebase: true, method: "Rebase merge"3229 creates an audit event3230 when merge method is changed to Merge3231 ff: true, rebase: true3232 creates an Merge method audit event3233 ff: true, rebase: false3234 creates an Merge method audit event3235 ff: false, rebase: true3236 creates an Merge method audit event3237Security::SecurityOrchestrationPolicies::CreatePipelineService3238 #execute3239 #pipeline_scan_config3240 with pipeline scan types3241 is expected to eq [:"secret-detection-0", :"container-scanning-1"]3242 without pipeline scan types3243 is expected to be empty3244 #on_demand_scan_config3245 with pipeline scan types3246 is expected to be empty3247 without pipeline scan types3248 is expected to eq [:"dast-on-demand-0"]3249 #execute3250 without actions3251 errors3252 does not create pipelines3253 with scan pipeline actions3254 succeeds3255 creates a single pipeline3256 creates a stage3257 returns the pipeline3258 sets the pipeline ref to the branch3259 sets the pipeline source3260 with on-demand action3261 succeeds3262 creates a single pipeline3263 creates a stage3264 returns the pipeline3265 sets the pipeline ref to the branch3266 sets the pipeline source3267 with scan pipeline and on-demand actions3268 succeeds3269 creates two pipelines3270 creates two stages3271 returns the pipelines3272 sets the pipeline refs to the branch3273 separates scan pipeline actions3274 separates on-demand actions3275 when scan pipeline creation fails3276 errors3277 sets the pipeline error message3278 creates the on-demand pipeline3279 when on-demand pipeline creation fails3280 errors3281 sets the error message3282 creates the scan pipeline3283 when created on-demand pipeline is in error state3284 errors3285 sets the error message3286 creates the scan pipeline3287 secret_detection scan action3288 creates a build with appropriate variables3289 sast scan action3290 when action contains variables3291 parses variables from the action and applies them in configuration service3292 when project has a compliance framework3293 does not include the compliance definition3294Groups::SyncService3295 #execute3296 adds two new group member records3297 adds the user to top_level_group as Guest3298 adds the user to group1 as Developer3299 returns a success response3300 returns sync stats as payload3301 when the user is already a member3302 with the correct access level3303 does not change group member count3304 retains the correct access level3305 does not call Group find_by_id3306 with a different access level3307 when the user is not the last owner3308 does not change the group member count3309 updates the access_level3310 returns sync stats as payload3311 when the user is the last owner3312 does not change the group member count3313 does not update the access_level3314 returns sync stats as payload3315 but should no longer be a member3316 when manage_group_ids is present3317 reduces group member count by 13318 removes the matching user3319 returns sync stats as payload3320 when manage_group_ids is empty3321 reduces group member count by 13322 removes the matching user3323 returns sync stats as payload3324 when manage_groups_ids is nil3325 reduces group member count by 13326 removes the matching user3327 returns sync stats as payload3328 in a group that is not managed3329 does not change the group member count3330 retains the correct access level3331Security::SecurityOrchestrationPolicies::ProcessScanResultPolicyService3332 #execute3333 sets project approval rule based on policy3334 without any require_approval action3335 does not create approval project rules3336 without any rule of the scan_finding type3337 does not create approval project rules3338 with only user id3339 behaves like create approval rule with specific approver3340 succeeds creating approval rules with specific approver3341 with only username3342 behaves like create approval rule with specific approver3343 succeeds creating approval rules with specific approver3344 with only group id3345 behaves like create approval rule with specific approver3346 succeeds creating approval rules with specific approver3347 with public group outside of the scope3348 does not include any approvers3349 with private group outside of the scope3350 does not include any approvers3351 with an invited group3352 includes group related approvers3353 with only group path3354 behaves like create approval rule with specific approver3355 succeeds creating approval rules with specific approver3356 with a specific number of rules3357 rules_count: 4, expected_rules_count: 43358 creates approval rules up to limit3359 rules_count: 5, expected_rules_count: 53360 creates approval rules up to limit3361 rules_count: 6, expected_rules_count: 53362 creates approval rules up to limit3363Geo::RegistrySyncWorker3364 does not schedule anything when tracking database is not configured3365 does not schedule anything when node is disabled3366 does not schedule duplicated jobs3367 does not schedule duplicated jobs because of query cache3368 attempts to load a new batch without pending downloads3369 .max_capacity3370 when geo_container_repository_replication is enabled3371 returns the capacity based on files_max_capacity and container_repositories_max_capacity3372 when geo_container_repository_replication is disabled3373 returns only files_max_capacity based capacity3374MergeRequestPresenter3375 #api_approval_settings_path3376 is expected to eq "/gitlab/api/v4/projects/1139/merge_requests/1/approval_settings"3377 behaves like is nil when needed3378 approval_feature_available: false, with_iid: false3379 is expected to be nil3380 approval_feature_available: false, with_iid: true3381 is expected to be nil3382 approval_feature_available: true, with_iid: false3383 is expected to be nil3384 #api_project_approval_settings_path3385 is expected to eq "/gitlab/api/v4/projects/1139/approval_settings"3386 when approvals not available3387 is expected to be nil3388 #suggested_approvers3389 delegates to the approval state3390 create vulnerability feedback paths3391 create_feedback_path: :create_vulnerability_feedback_issue_path3392 is expected to eq "/namespace980/project1091/-/vulnerability_feedback"3393 when not allowed to create vulnerability feedback3394 does not contain3395 create_feedback_path: :create_vulnerability_feedback_merge_request_path3396 is expected to eq "/namespace980/project1091/-/vulnerability_feedback"3397 when not allowed to create vulnerability feedback3398 does not contain3399 create_feedback_path: :create_vulnerability_feedback_dismissal_path3400 is expected to eq "/namespace980/project1091/-/vulnerability_feedback"3401 when not allowed to create vulnerability feedback3402 does not contain3403 #approvals_widget_type3404 when approvals feature is available for a project3405 returns full3406 when approvals feature is not available for a project3407 returns base3408 #discover_project_security_path3409 when project security is discoverable3410 returns path3411 when project security is not discoverable3412 returns nil3413 #issue_keys3414 when Jira issue is provided in MR title / description3415 is expected to contain exactly "SIGNUP-1234"3416 when Jira issue is NOT provided in MR title / description3417 is expected to be empty3418 #api_status_checks_path3419 authenticated?: false, has_status_checks?: false, exposes_path?: false3420 is expected to eq nil3421 authenticated?: false, has_status_checks?: true, exposes_path?: false3422 is expected to eq nil3423 authenticated?: true, has_status_checks?: true, exposes_path?: true3424 is expected to eq "/gitlab/api/v4/projects/1139/merge_requests/1/status_checks"3425 authenticated?: true, has_status_checks?: false, exposes_path?: false3426 is expected to eq nil3427 authenticated?: true, has_status_checks?: true, exposes_path?: true3428 is expected to eq "/gitlab/api/v4/projects/1139/merge_requests/1/status_checks"3429 with the user authenticated3430 without applicable branches3431 is expected to eq nil3432 with no branches at all (any branch selected)3433 is expected to eq "/gitlab/api/v4/projects/1139/merge_requests/1/status_checks"3434 with applicable branches3435 is expected to eq "/gitlab/api/v4/projects/1139/merge_requests/1/status_checks"3436Projects::DestroyService3437 when project is a mirror3438 decrements capacity if mirror was scheduled3439 when running on a primary node3440 logs an event to the Geo event log3441 does not log event to the Geo log if project deletion fails3442 audit events3443 when licensed3444 does not log audit event if operation fails3445 does not log audit event if operation results in no change3446 when operation succeeds3447 logs an audit event3448 logs the audit event info3449 when not licensed3450 does not log audit event3451 streaming audit event3452 sends the audit streaming event with json format3453 system hooks exception3454 logs an audit event3455 when project has an associated ProjectNamespace3456 destroys the associated ProjectNamespace also3457 when project issues are associated with some epics3458 schedules cache update for associated epics in batches3459EE::NamespacesHelper3460 #ci_minutes_progress_bar3461 shows a green bar if percent is 03462 shows a green bar if percent is lower than 703463 shows a yellow bar if percent is 703464 shows a yellow bar if percent is higher than 70 and lower than 953465 shows a red bar if percent is 953466 shows a red bar if percent is higher than 100 and caps the value to 1003467 #ci_minutes_report3468 rendering monthly minutes report3469 when ci minutes usage is not enabled3470 and the namespace is eligible for unlimited3471 returns Unlimited for the limit section3472 and the namespace is not eligible for unlimited3473 returns Not supported for the limit section3474 when it's limited3475 returns the proper values for used and limit sections3476 rendering purchased minutes report3477 when extra minutes are assigned3478 when minutes used is higher than monthly minutes limit3479 returns the proper values for used and limit sections3480 when minutes used is lower than monthly minutes limit3481 returns the proper values for used and limit sections3482 when extra minutes are not assigned3483 returns the proper values for used and limit sections3484 #temporary_storage_increase_visible?3485 when enforce_namespace_storage_limit setting enabled3486 when current_user is admin of namespace3487 is expected to eq true3488 when feature flag is disabled3489 is expected to eq false3490 when current_user is not the admin of namespace3491 is expected to eq false3492 when enforce_namespace_storage_limit setting disabled3493 when current_user is admin of namespace3494 is expected to eq false3495 #buy_additional_minutes_path3496 is expected to eq "/-/subscriptions/buy_minutes?selected_group=1004"3497 when called for a personal namespace3498 returns the default purchase3499 when called from a subgroup3500 returns the selected group id as the parent group3501 #buy_storage_path3502 is expected to eq "/-/subscriptions/buy_storage?selected_group=1007"3503 when called from a subgroup3504 returns the buy URL with the parent group id3505 when called for a personal namespace3506 returns the default purchase3507 #buy_storage_url3508 is expected to eq "http://test.host/-/subscriptions/buy_storage?selected_group=1010"3509 when called from a subgroup3510 returns the buy URL with the parent group id3511 when called for a personal namespace3512 returns the default purchase3513 #buy_addon_target_attr3514 is expected to eq "_self"3515 when called for a personal namespace3516 returns _blank3517 #pipeline_usage_app_data3518 when gitlab sass3519 with reset_date present3520 behaves like returns a hash with proper SaaS data3521 matches the returned hash3522 with reset_date not present3523 behaves like returns a hash with proper SaaS data3524 matches the returned hash3525 when gitlab self managed3526 returns a hash without SaaS data3527 #purchase_storage_url3528 is expected to eq "https://customers.staging.gitlab.com/buy_storage"3529 #purchase_storage_link_enabled?3530 additional_repo_storage_by_namespace_enabled: false, result: false3531 is expected to eq false3532 additional_repo_storage_by_namespace_enabled: true, result: true3533 is expected to eq true3534 #storage_usage_app_data3535 when purchase_storage_link_enabled? is true3536 returns a hash with storage data3537 when purchase_storage_link_enabled? is false3538 returns a hash with storage data3539Jobs/DAST-Default-Branch-Deploy.gitlab-ci.yml3540 DAST_AUTO_DEPLOY_IMAGE_VERSION3541 corresponds to a published image in the registry3542 the created pipeline3543 when deploying to kubernetes3544 has no errors3545 when project has no license3546 does not include DAST environment jobs3547 when project has Ultimate license3548 default branch3549 includes the DAST environment jobs by default3550 when DAST_DISABLED is set3551 does not include DAST environment jobs3552 when DAST_DISABLED_FOR_DEFAULT_BRANCH is set3553 does not include DAST environment jobs3554 when DAST_WEBSITE is set3555 does not include DAST environment jobs3556 when KUBECONFIG and not CI_KUBERNETES_ACTIVE3557 includes the DAST environment jobs3558 on another branch3559 does not include DAST environment jobs3560 when deploying to ECS3561 has no errors3562 when project has no license3563 does not include DAST environment jobs3564 when project has Ultimate license3565 default branch3566 includes the DAST environment jobs by default3567 when DAST_DISABLED is set3568 does not include DAST environment jobs3569 when DAST_DISABLED_FOR_DEFAULT_BRANCH is set3570 does not include DAST environment jobs3571 when DAST_WEBSITE is set3572 does not include DAST environment jobs3573 on another branch3574 does not include DAST environment jobs3575 when deploying to other infrastructure3576 has no errors3577 when project has Ultimate license3578 default branch3579 does not include DAST environment jobs3580Dast::Profile3581 behaves like sanitizable3582 includes Sanitizable3583 #name3584 when input includes javascript tags3585 gets sanitized3586 #name validation3587 when input contains pre-escaped html entities3588 is not valid3589 #description3590 when input includes javascript tags3591 gets sanitized3592 #description validation3593 when input contains pre-escaped html entities3594 is not valid3595 associations3596 is expected to belong to project required: false3597 is expected to belong to dast_site_profile required: false3598 is expected to belong to dast_scanner_profile required: false3599 is expected to have many secret_variables class_name => Dast::SiteProfileSecretVariable through dast_site_profile3600 is expected to have one dast_profile_schedule class_name => Dast::ProfileSchedule inverse_of => dast_profile3601 validations3602 is expected to be valid3603 is expected to validate that the length of :name is at most 2553604 is expected to validate that the length of :description is at most 2553605 is expected to validate that the length of :branch_name is at most 2553606 is expected to validate that :name is case-sensitively unique within the scope of :project_id3607 is expected to validate that :project_id cannot be empty/falsy3608 is expected to validate that :dast_site_profile_id cannot be empty/falsy3609 is expected to validate that :dast_scanner_profile_id cannot be empty/falsy3610 is expected to validate that :name cannot be empty/falsy3611 when the project_id and dast_site_profile.project_id do not match3612 behaves like the project_id does not match3613 is not valid3614 when the project_id and dast_scanner_profile.project_id do not match3615 behaves like the project_id does not match3616 is not valid3617 when the description is nil3618 is not valid3619 when a branch_name is specified but the project does not have a respository3620 is not valid3621 when a branch_name is specified but the project does not have a respository3622 is not valid3623 scopes3624 by_project_id3625 includes the correct records3626 with_schedule3627 when has_dast_profile_schedule is true3628 includes the dast_profile with schedule3629 when has_dast_profile_schedule is false3630 includes the dast_profile without schedule3631 instance methods3632 #branch3633 when the associated project does not have a repository3634 returns nil3635 when the associated project has a repository3636 returns a Dast::Branch3637 #secret_ci_variables3638 is expected to delegate #secret_ci_variables to the #dast_site_profile object3639DeleteCommitsFromOriginalIndex3640 migration_options3641 has migration options set3642 commits are already deleted3643 does not execute delete_by_query3644 commits are still present in the index3645 removes commits from the index (FAILED - 1)36471st Try error in ./ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb:42:3648expected {"task_id"=>"HKtuxRjeQrSEHHP9jEeVCA:3521"} to match {:task_id=>nil}3649Diff:3650@@ -1 +1 @@3651-:task_id => nil,3652+"task_id" => "HKtuxRjeQrSEHHP9jEeVCA:3521",3654RSpec::Retry: 2nd try ./ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb:423655 task in progress3656 does nothing if task is not completed3657 migration fails3658 exception is raised3659 resets task_id3660 es responds with errors3661 when a task throws an error3662 resets task_id3663 when delete_by_query throws an error3664 resets task_id3665Ci::PipelinePresenter3666 #failure_reason3667 when pipeline has failure reason3668 represents a failure reason sentence3669 when pipeline does not have failure reason3670 returns nil3671 #expose_security_dashboard?3672 with developer3673 when features are available3674 calls latest_report_artifacts once3675 when there is an artifact of a right type3676 is expected to be truthy3677 when there is an artifact of a wrong type3678 is expected to be falsey3679 when there is no found artifact3680 is expected to be falsey3681 when all features are available3682 does not increase the number of queries3683 calls latest_report_artifacts once3684 when features are disabled3685 when there is an artifact of a right type3686 is expected to be falsey3687 with reporter3688 is expected to be falsey3689 #downloadable_path_for_report_type3690 with browser_performance artifact3691 when feature is available3692 returns the downloadable path3693 when feature is not available3694 doesn't return the downloadable path3695 when user is not authorized3696 doesn't return the downloadable path3697 with load_performance artifact3698 when feature is available3699 returns the downloadable path3700 when feature is not available3701 doesn't return the downloadable path3702 when user is not authorized3703 doesn't return the downloadable path3704 with license_scanning artifact3705 when feature is available3706 returns the downloadable path3707 when feature is not available3708 doesn't return the downloadable path3709 when user is not authorized3710 doesn't return the downloadable path3711 #degradation_threshold3712 when feature is available3713 returns the degradation threshold3714 when feature is not available3715 doesn't return the degradation threshold3716 when user is not authorized3717 doesn't return the degradation threshold3718 #retryable?3719 with pipeline for merge train3720 is expected to equal false3721 with branch pipeline3722 is expected to equal true3723PostReceive3724 #process_project_changes3725 after project changes hooks3726 calls Geo::RepositoryUpdatedService when running on a Geo primary node3727 does not call Geo::RepositoryUpdatedService when not running on a Geo primary node3728 #process_wiki_changes3729 calls Git::WikiPushService#execute3730 assuming calls to process_changes are successful3731 calls Geo::RepositoryUpdatedService when running on a Geo primary node3732 does not call Geo::RepositoryUpdatedService when not running on a Geo primary node3733 with a group wiki3734 calls Git::WikiPushService#execute3735 when on a Geo primary node3736 does not call Geo::RepositoryUpdatedService3737 when wiki is a project wiki3738 does not call replicator to update Geo3739 when group_wiki_repository does not exist3740 does not call replicator to update Geo3741 when group_wiki_repository exists3742 calls replicator to update Geo3743 when not on a Geo primary node3744 does not call replicator to update Geo3745Milestone3746 searches milestones3747 returns json with all needed elements3748 behaves like limited indexing is enabled3749 when the project is not enabled specifically3750 #searchable?3751 returns false3752 when a project is enabled specifically3753 #searchable?3754 returns true3755 when a group is enabled3756 #searchable?3757 returns true3758 behaves like no results when the user cannot read cross project3759 returns the record if a single project was passed3760 does not return anything when trying to search cross project3761VulnerabilitiesHelper3762 #vulnerability_details3763 [:can_modify_related_issues]3764 with security dashboard feature enabled3765 when user can manage related issues3766 is expected to include {:can_modify_related_issues => true}3767 when user cannot manage related issues3768 is expected to include {:can_modify_related_issues => false}3769 with security dashboard feature disabled3770 is expected to include {:can_modify_related_issues => false}3771 when pipeline exists3772 has expected vulnerability properties3773 returns expected pipeline data3774 when the issues are disabled for the project3775 has `new_issue_url` set as nil3776 when pipeline is nil3777 has expected vulnerability properties3778 returns no pipeline data3779 when the issues are disabled for the project3780 has `new_issue_url` set as nil3781 [:has_mr]3782 with existing merge request feedback3783 is expected to be truthy3784 without feedback3785 is expected to be falsey3786 dismissal descriptions3787 includes translated dismissal descriptions3788 #create_jira_issue_url_for3789 with jira vulnerabilities integration enabled3790 when the given object is a vulnerability3791 delegates rendering URL to Integrations::Jira3792 when scan property is empty3793 renders description using dedicated template without raising error3794 when the given object is an unpersisted finding3795 delegates rendering URL to Integrations::Jira3796 with jira vulnerabilities integration disabled3797 is expected to be nil3798 #vulnerability_finding_data3799 returns finding information3800 when there is no file3801 does not have a blob_path if there is no file3802 with existing dismissal feedback3803 returns dismissal feedback information3804 with markdown field for description3805 when vulnerability has no description and finding has description3806 returns finding information3807 when vulnerability has description and finding has description3808 returns finding information3809 #vulnerability_scan_data?3810 scanner present3811 is expected to be truthy3812 scan present3813 is expected to be truthy3814 neither scan nor scanner being present3815 is expected to be falsey3816Gitlab::Ci::Config::SecurityOrchestrationPolicies::Processor3817 when feature is not licensed3818 does not modify the config3819 when feature is licensed3820 when policy is not applicable on branch from the pipeline3821 does not modify the config3822 when ref is a tag3823 does not modify the config3824 when policy is applicable on branch from the pipeline3825 when DAST profiles are not found3826 does not modify the config3827 behaves like with pipeline source applicable for CI3828 does not modify the config3829 behaves like when policy is invalid3830 does not modify the config3831 when DAST profiles are found3832 behaves like with different scan type3833 when config already have jobs with names provided by policies3834 extends config with additional jobs without overriden values3835 when test stage is available3836 does not include scan-policies stage3837 extends config with additional jobs3838 when test stage is not available3839 when build stage is available3840 includes scan-policies stage after build stage3841 extends config with additional jobs3842 when build stage is not available3843 includes scan-policies stage as a first stage3844 extends config with additional jobs3845 behaves like with pipeline source applicable for CI3846 does not modify the config3847 behaves like when policy is invalid3848 does not modify the config3849 when scan type is secret_detection3850 behaves like with different scan type3851 when config already have jobs with names provided by policies3852 extends config with additional jobs without overriden values3853 when test stage is available3854 does not include scan-policies stage3855 extends config with additional jobs3856 when test stage is not available3857 when build stage is available3858 includes scan-policies stage after build stage3859 extends config with additional jobs3860 when build stage is not available3861 includes scan-policies stage as a first stage3862 extends config with additional jobs3863 when scan type is sast is configured for namespace policy project3864 behaves like with different scan type3865 when config already have jobs with names provided by policies3866 extends config with additional jobs without overriden values3867 when test stage is available3868 does not include scan-policies stage3869 extends config with additional jobs3870 when test stage is not available3871 when build stage is available3872 includes scan-policies stage after build stage3873 extends config with additional jobs3874 when build stage is not available3875 includes scan-policies stage as a first stage3876 extends config with additional jobs3877SyncSeatLinkRequestWorker3878 #perform3879 makes an HTTP POST request with passed params3880 when response contains a license3881 when there is no previous license3882 behaves like successful license creation3883 persists the new license3884 when there is a previous license3885 when it is a cloud license3886 when the current license key does not match the one returned from sync3887 creates a new license3888 when the current license key matches the one returned from sync3889 reuses the current license and updates the last_synced_at3890 when persisting fails3891 does not delete the current license and logs error3892 when it is not a cloud license3893 behaves like successful license creation3894 persists the new license3895 when response contains reconciliation dates3896 saves the reconciliation dates3897 when an upcoming_reconciliation already exists3898 updates the upcoming_reconciliation3899 when response contains future subscription information3900 when future subscription information is present in the response3901 and no future subscriptions are saved in the current settings3902 persists future subscription information3903 and future subscriptions are saved in the current settings3904 replaces future subscription information3905 when future subscription information is not present in the response3906 and no future subscriptions are saved in the current settings3907 does not change the settings3908 and future subscription are saved in the current settings3909 clears future subscription information3910 when saving fails3911 logs error3912 when the response does not contain reconciliation dates3913 destroys the existing upcoming reconciliation record for the instance3914 does not change anything when there is no existing record3915 behaves like unsuccessful request3916 when the request is not successful3917 raises an error with the expected message3918 sidekiq_retry_in_block3919 is at least 30 minutes in the first retry3920Gitlab::Elastic::DocumentReference3921 .build3922 builds a document for an issue3923 builds a document for a project3924 .serialize3925 does nothing to a string3926 serializes a DocumentReference3927 defers to serialize_record for ApplicationRecord instances3928 defers to serialize_array for Array instances3929 fails to serialize an unrecognised value3930 .serialize_record3931 serializes an issue3932 serializes a project3933 .serialize_array3934 serializes a project array3935 serializes an issue array3936 fails to serialize a too-small array3937 fails to serialize a too-large array3938 .deserialize3939 deserializes an issue string3940 deserializes a project string3941 #initialize3942 creates an issue reference3943 creates a project reference3944 #==3945 is equal to itself3946 is equal to another ref when all elements match3947 is not equal unless the other instance class matches3948 is not equal unless db_id matches3949 is not equal unless es_id matches3950 is not equal unless es_parent matches3951 #klass_name3952 is expected to eq "Issue"3953 #database_record3954 returns an issue3955 returns a project3956 returns nil if the record cannot be found3957 raises if the class is bad3958 #serialize3959 serializes an issue3960 serializes a project3961 ::Collection3962 contains a collection of DocumentReference3963 #preload_database_records3964 preloads database records to avoid N+1 queries3965 batches database records to avoid sql timeouts3966AppSec::Dast::Scans::RunService3967 #execute3968 when a user does not have access to the project3969 returns an error status3970 populates message3971 when the user can run a dast scan3972 returns a success status3973 returns a pipeline3974 creates a pipeline3975 associates the dast profile3976 sets the pipeline ref to the branch3977 sets the source to indicate an ondemand scan3978 creates a stage3979 creates a build3980 sets the build name to indicate a DAST scan3981 creates a build with appropriate options3982 creates a build with appropriate variables3983 when the pipeline fails to save3984 returns an error status3985 populates message3986 when on demand scan licensed feature is not available3987 returns an error status3988 populates message3989Security::ScanExecutionPoliciesFinder3990 when actor is Clusters::Agent3991 when agent project has security_orchestration_policy project3992 returns policy matching the given scan type3993 when action_scan_types is given3994 when there are multiple policies3995 returns policy matching the given scan type3996 when there are no matching policies3997 returns empty response3998 behaves like scan policies finder3999 #execute4000 when execute is not implemented in the subclass4001 raises NotImplementedError4002 when feature is not licensed4003 returns empty collection4004 when feature is licensed4005 when configuration is associated to project4006 returns policies with project4007 when configuration is associated to namespace4008 when relationship argument is not provided4009 returns no policies4010 when relationship argument is provided as INHERITED4011 returns scan policies for groups only4012 when configuration is associated to project and namespace4013 when relationship argument is not provided4014 returns scan policies for project only4015 when relationship argument is provided as INHERITED4016 returns policies defined for both project and namespace4017 when relationship argument is provided as INHERITED_ONLY4018 returns policies defined for namespace only4019 when user is unauthorized4020 returns empty collection4021MergeRequests::BuildService4022 project default template configured4023 issuable default templates feature not available4024 does not set the MR description from template4025 when description is provided4026 sets the user's description4027 issuable default templates feature available4028 sets the MR description from template4029 when description is provided4030 prefers user's description to the default template4031 a Default.md file exists in the repository4032 prefers the project default template4033 when MR is set to close an issue4034 appends closing reference once4035Gitlab::Auth::Smartcard::Certificate4036 #find_or_create_user4037 user and smartcard identity already exist4038 behaves like an existing user4039 finds existing user4040 does not create new user4041 user exists but smartcard identity does not4042 associates the new smartcard identity with the user4043 behaves like an existing user4044 finds existing user4045 does not create new user4046 behaves like a new smartcard identity4047 creates smartcard identity4048 user exists but it is using a new smartcard4049 keeps both identities for the user4050 behaves like an existing user4051 finds existing user4052 does not create new user4053 behaves like a new smartcard identity4054 creates smartcard identity4055 user and smartcard identity do not exist4056 calls Users::BuildService with correct params4057 behaves like creates user4058 is expected to eql "gitlab-user@random-corp.org"4059 when the current minimum password length is different from the default minimum password length4060 behaves like creates user4061 is expected to eql "gitlab-user@random-corp.org"4062 behaves like a new smartcard identity4063 creates smartcard identity4064 username generation4065 uses CN from certificate4066 creates user with correct username4067 avoids conflicting namespaces4068 creates user with correct usnername4069 san email defined4070 creates user4071 behaves like a valid certificate is required4072 invalid certificate4073 returns nil4074 incorrect certificate4075 returns nil4076 behaves like a certificate store4077 .store4078 loads CA bundle4079 uses correct method4080 without valid CA file4081 raises error4082Gitlab::Audit::Auditor4083 .audit4084 when licensed4085 when recording multiple events4086 interacts with the event queue in correct order4087 bulk-inserts audit events to database4088 records audit events in correct order4089 logs audit events to database4090 logs audit events to file4091 enqueues an event stream4092 when overriding the create datetime4093 logs audit events to database4094 logs audit events to file4095 when overriding the additional_details4096 logs audit events to database4097 logs audit events to file4098 when overriding the target_details4099 logs audit events to database4100 logs audit events to file4101 when overriding the ip address4102 when :admin_audit_log feature is available it logs ip address4103 logs audit events to database4104 logs audit events to file4105 when :admin_audit_log feature is not available it does not log ip address4106 does not log audit event to database4107 does not log audit events to file4108 when event is only streamed4109 behaves like only streamed4110 enqueues an event4111 does not log audit events to file4112 does not log audit events to database4113 when recording single event4114 logs audit event to database4115 logs audit events to file4116 when event is only streamed4117 behaves like only streamed4118 enqueues an event4119 does not log audit events to file4120 does not log audit events to database4121 when audit events are invalid4122 tracks error4123 does not throw exception4124 when unlicensed4125 does not logs audit event to database4126 does not logs audit events to file4127 #audit_enabled?4128 admin_audit_log: true, audit_events: false, extended_audit_events: false, result: true4129 returns the correct result when feature is available4130 admin_audit_log: false, audit_events: true, extended_audit_events: false, result: true4131 returns the correct result when feature is available4132 admin_audit_log: false, audit_events: false, extended_audit_events: true, result: true4133 returns the correct result when feature is available4134 admin_audit_log: false, audit_events: false, extended_audit_events: false, result: false4135 returns the correct result when feature is available4136Issuable::CommonSystemNotesService4137 on issuable update4138 when weight is changed4139 creates a resource weight event4140 when health status is updated4141 when setting a health_status4142 creates system note4143 when health status is removed4144 creates system note4145 when issuable is an epic4146 creates 2 system notes with the correct content4147 behaves like issuable iteration changed4148 when iteration is changed4149 creates a resource iteration event4150 on issuable create4151 creates a resource weight event4152 does not create a system note4153 behaves like issuable iteration changed4154 when iteration is changed4155 creates a resource iteration event4156Groups::DestroyService4157 audit events4158 when licensed4159 does not log audit event if operation fails4160 does not log audit event if operation results in no change4161 when operation succeeds4162 logs an audit event4163 logs the audit event info4164 when not licensed4165 does not log audit event4166 streaming audit event for sub group4167 sends the audit streaming event with json format4168 dependency_proxy_blobs4169 destroys the dependency proxy blobs4170 when on a Geo primary node4171 calls replicator to update Geo4172 when group_wiki_repository does not exist4173 does not call replicator to update Geo4174 when not on a Geo primary node4175 does not call replicator to update Geo4176 when group epics have parent epic outside of group4177 schedules cache update for associated epics in batches4178ComplianceManagement::Frameworks::UpdateService4179 feature is unlicensed4180 behaves like a failed update request4181 does not update the compliance framework4182 is unsuccessful4183 current_user is not the namespace owner4184 behaves like a failed update request4185 does not update the compliance framework4186 is unsuccessful4187 when feature is licensed4188 with an invalid param passed4189 is unsuccessful4190 has appropriate errors4191 with valid params passed4192 updates the compliance framework with valid params4193 is successful4194 audits the changes4195 when default param is used4196 when true4197 updates the default compliance framework for the namespace4198 when false4199 does not update the default framework for the namespace when default framework is not set4200 removes the default framework for the namespace4201Gitlab::ComplianceManagement::Violations::ApprovedByInsufficientUsers4202 #execute4203 when merge request is approved by sufficient number of users4204 does not create a ComplianceViolation4205 when merge request is approved by insufficient number of users4206 creates a ComplianceViolation4207 when the merge requests merge user is within metrics4208 creates a ComplianceViolation4209 when the merge request does not have a merge user4210 does not create a ComplianceViolation4211Gitlab::Ci::Parsers::Security::ContainerScanning4212 #parse!4213 behaves like report4214 parses all identifiers and findings for unapproved vulnerabilities4215 generates expected location4216 generates expected metadata_version4217 adds report image's name to raw_metadata4218 when on default branch4219 does not include default_branch_image in location4220 when not on default branch4221 includes default_branch_image in location4222Security::Ingestion::Tasks::IngestVulnerabilities::Create4223 vulnerability state4224 when finding has dismissal feedback4225 sets the state of the vulnerability to `dismissed`4226 when finding has no dismissal feedback4227 sets the state of the vulnerability to `detected`4228EE::API::Helpers::ScimPagination4229 #per_page4230 count: nil, per_page: 204231 is expected to eq 204232 count: "", per_page: 204233 is expected to eq 204234 count: "abc", per_page: 204235 is expected to eq 204236 count: 0, per_page: 204237 is expected to eq 204238 count: 999999, per_page: 1004239 is expected to eq 1004240 count: 4, per_page: 44241 is expected to eq 44242 count: "4", per_page: 44243 is expected to eq 44244 #scim_paginate4245 without pagination params4246 returns all results4247 with :count param4248 limits results to count4249 with :startIndex param4250 starts from an offset4251 uses a 1-based index4252 uses 1 when provided an index less than 14253Mutations::Issues::SetAssignees4254 behaves like a multi-assignable resource4255 #resolve4256 when the user can update the resource4257 sets the assignees4258 removes assignees not in the list4259 when passing "append" as true4260 does not remove assignees not in the list4261Gitlab::Pages::DeploymentUpdate4262 maximum pages artifacts size4263 when size is below the limit4264 is valid4265 when size is above the limit4266 is invalid4267 when pages_size_limit feature is not available4268 when size is below the limit4269 is valid4270 when size is above the limit4271 is invalid4272Gitlab::Geo::EventGapTracking4273 .min_gap_id4274 returns nil when there are no gaps4275 returns the lowest gap id4276 .gap_count4277 returns 0 when there are no gaps4278 returns the number of gaps4279 #check!4280 does nothing when previous id not valid4281 does nothing when there is no gap4282 tracks the gap if there is one4283 #fill_gaps4284 ignore gaps that are less than 10 minutes old4285 handles gaps that are more than 10 minutes old4286 drops gaps older than 1 hour4287 avoids N+1 queries to fetch event logs and their associated events4288 #track_gaps4289 logs a message4290 saves the gap id in redis4291 saves a range of gaps id in redis4292 saves the gaps in order4293 #gap?4294 returns false when current_id is the previous +14295 returns true when current_id is the previous +24296 returns false when current_id is equal to the previous4297 returns false when current_id less than the previous4298 returns false when previous id is 04299IssuableMetricImage4300 associations4301 is expected to belong to issue required: false4302 validation4303 is expected not to allow :file to be ‹#<Rack::Test::UploadedFile:0x00007fef33fcb370 @original_filename="doc_sample.txt", @tempfile=#<Tempfile:/tmp/doc_sample20221111-467-1ef6xpj.txt>, @content_type="text/plain">›4304 is expected to allow :file to be ‹#<Rack::Test::UploadedFile:0x00007fef3ff1dfe8 @original_filename="rails_sample.jpg", @tempfile=#<Tempfile:/tmp/rails_sample20221111-467-3s6lgt.jpg>, @content_type="image/jpg">›4305 is expected to validate that the length of :url_text is at most 1284306 url4307 is expected not to allow :url to be ‹"test"›4308 is expected not to allow :url to be ‹"www.gitlab.com"›4309 is expected to allow :url to be ‹""›4310 is expected to allow :url to be ‹"http://www.gitlab.com"›4311 is expected to allow :url to be ‹"https://www.gitlab.com"›4312 scopes4313 .order_created_at_asc4314 orders in ascending order4315 .available_for?4316 license enabled4317 is expected to eq true4318 license disabled4319 is expected to eq false4320 #file_path4321 with asset host configured4322 returns a full URL with the asset host and system path4323 no asset path configured4324 returns a full URL with the base url and system path4325MergeRequests::UpdateAssigneesService4326 execute4327 when the parameters are valid4328 when using sentinel values4329 removes all assignees4330 the assignee_ids parameter is the empty list4331 removes all assignees4332 the assignee_ids parameter contains both zeros and valid IDs4333 ignores 0 IDs4334 when the assignees are invalid4335 when limit_assignees_per_issuable is on4336 does not update and returns a merge request with an error4337 when limit_assignees_per_issuable is off4338 correctly updates the MR and enqueues the job4339Geo::BlobDownloadService4340 #execute4341 when it can obtain the exclusive lease4342 when the registry record does not exist4343 when the downloader returns success4344 creates the registry4345 sets sync state to synced4346 when the downloader returns failure4347 when the file is not missing on the primary4348 creates the registry4349 sets sync state to failed4350 caps retry wait time to 1 hour4351 when the file is missing on the primary4352 creates the registry4353 sets sync state to failed4354 caps retry wait time to 4 hours4355Preloaders::UserMemberRolesInProjectsPreloader4356 # order random4357 when customizable_roles feature is not enabled on project root ancestor4358 skips preload4359 when customizable_roles feature is enabled on project root ancestor4360 when project has custom role with download_code: true4361 when Array of project passed4362 returns the project_id with a value array that includes :download_code4363 when ActiveRecord::Relation of projects passed4364 returns the project_id with a value array that includes :download_code4365 when project namespace has a custom role with download_code: true4366 returns the project_id with a value array that includes :download_code4367 when user is a member of the project in multiple ways4368 project value array includes :download_code if any custom roles enable download_code4369 when project membership has no custom role4370 returns project id with empty value array4371 when project membership has custom role that does not enable download_code4372 returns project id with empty value array4373 when user has custom role that enables download code outside of project hierarchy4374 ignores custom role outside of project hierarchy4375Ci::Sources::Project4376 Relations4377 is expected to belong to pipeline required: true4378 is expected to belong to source_project class_name => ::Project required: true4379 Validations4380 is expected to validate that :pipeline_id is case-sensitively unique within the scope of :source_project_id4381 loose foreign key on ci_sources_projects.source_project_id4382 behaves like cleanup by a loose foreign key4383 cleans up (delete or nullify) the model4384IncidentManagement::IssuableEscalationStatuses::PrepareUpdateService4385 behaves like successful response4386 returns valid parameters which can be used to update the issue4387 when policy is unchanged4388 behaves like successful response4389 returns valid parameters which can be used to update the issue4390 when escalation policies feature is unavailable4391 behaves like successful response without policy params4392 returns valid parameters which can be used to update the issue4393 when issue is associated with an alert4394 behaves like successful response4395 returns valid parameters which can be used to update the issue4396 when provided policy is in a different project4397 returns an error response4398 when the escalation status is already associated with a policy4399 when policy is unchanged4400 behaves like successful response without policy params4401 returns valid parameters which can be used to update the issue4402 when policy is excluded4403 behaves like successful response without policy params4404 returns valid parameters which can be used to update the issue4405 when policy is nil4406 behaves like successful response4407 returns valid parameters which can be used to update the issue4408Gitlab::Ci::Config4409 with required instance template4410 processes the required includes4411 with security orchestration policy4412 when feature is not licensed4413 does not modify the config4414 when feature is licensed4415 when policy is not applicable on branch from the pipeline4416 does not modify the config4417 when policy is applicable on branch from the pipeline4418 when DAST profiles are not found4419 adds a job with error message4420 when DAST profiles are found4421 extends config with additional jobs4422 when source is ondemand_dast_scan4423 does not modify the config4424EE::SubscribableBannerHelper4425 #renew_subscription_path4426 does not raise error if available project is not persisted4427 does not raise error if entity is not available4428 #gitlab_subscription_or_license4429 when instance variable true4430 when should_check_namespace_plan is true4431 when a project exists4432 behaves like when a subscription exists4433 returns a decorator4434 when a group exists4435 behaves like when a subscription exists4436 returns a decorator4437 when should_check_namespace_plan is false4438 returns the current license4439 when instance variable false4440 returns the current license4441 with a future dated license4442 returns the current license4443 #gitlab_subscription_message_or_license_message4444 when instance variable true4445 when should_check_namespace_plan is true4446 when a project is present4447 behaves like subscription message4448 calls Gitlab::ExpiringSubscriptionMessage and SubscriptionPresenter if is Gitlab.com?4449 when a group is present4450 behaves like subscription message4451 calls Gitlab::ExpiringSubscriptionMessage and SubscriptionPresenter if is Gitlab.com?4452 when should_check_namespace_plan is false4453 calls Gitlab::ExpiringSubscriptionMessage to get expiring message4454 when instance variable false4455 returns the license message4456 #display_subscription_banner!4457 sets @display_subscription_banner to true4458 #link_to_button_style4459 return correct link with path and track property4460Security::SecurityOrchestrationPolicies::PolicyConfigurationValidationService4461 #execute4462 when all components are valid4463 returns success4464 when security_orchestration_policies_configuration is missing4465 returns an error4466 when security_orchestration_policies_configuration is invalid4467 returns an error4468 when type parameter is missing4469 returns an error4470 when retrieving an invalid policy type4471 returns an error4472 when policy.yml is empty4473 returns an error4474AppSec::Dast::Profiles::DestroyService4475 #execute4476 when on demand scan licensed feature is not available4477 communicates failure4478 when the feature is enabled4479 when the user cannot destroy a DAST profile4480 communicates failure4481 when the user can destroy a DAST profile4482 returns a success status4483 deletes the dast_profile4484 returns a dast_profile payload4485 audits the deletion4486 when the dast_profile fails to destroy4487 communicates failure4488 when the dast_profile parameter is missing4489 communicates failure4490Gitlab::Usage::Metrics::Instrumentations::CountProjectsWithAssignedSecurityPolicyProjectMetric4491 # order random4492 behaves like a correct instrumented metric value and query4493 behaves like a correct instrumented metric value4494 has correct value4495 behaves like a correct instrumented metric query4496 has correct generate query4497 behaves like a correct instrumented metric value and query4498 behaves like a correct instrumented metric value4499 has correct value4500 behaves like a correct instrumented metric query4501 has correct generate query4502Container-Scanning.latest.gitlab-ci.yml4503 # order random4504 the created pipeline4505 when project has no license4506 when branch pipeline4507 includes job4508 when MR pipeline4509 creates a pipeline with the expected jobs4510 with CS_MAJOR_VERSION greater than 34511 includes job4512 when CONTAINER_SCANNING_DISABLED=14513 includes no jobs4514Gitlab::Geo::Oauth::LoginState4515 .from_state4516 returns a invalid instance when state is nil4517 returns a invalid instance when state is empty4518 returns a valid instance when state is valid4519 #valid?4520 returns false when return_to is nil4521 returns false when return_to is empty4522 returns false when token is nil4523 returns false when token is empty4524 returns false when salt not match4525 returns false when token does not match4526 returns false when token's expired4527 returns true when token matches4528 #encode4529 does not raise an error when return_to is nil4530 returns a string with salt, token, and return_to colon separated4531 #return_to4532 returns nil when return_to is nil4533 returns an empty string when return_to is empty4534 returns the full path of the return_to URL4535Ci::CreatePipelineService4536 drops builds that match shared runners4537 with private runners4538 does not drop the builds4539UpcomingReconciliations::UpdateService4540 #execute4541 when upcoming_reconciliation does not exist for given namespace4542 behaves like creates new upcoming reconciliation4543 increases upcoming_reconciliations count4544 created upcoming reconciliation matches given hash4545 behaves like returns success4546 is expected to eq :success4547 when upcoming_reconciliation exists for given namespace4548 for gitlab.com4549 behaves like updates existing upcoming reconciliation4550 updated upcoming_reconciliation matches given hash4551 behaves like does not increase upcoming_reconciliations count4552 is expected not to change `GitlabSubscriptions::UpcomingReconciliation.count`4553 behaves like returns success4554 is expected to eq :success4555 for self managed4556 behaves like does not increase upcoming_reconciliations count4557 is expected not to change `GitlabSubscriptions::UpcomingReconciliation.count`4558 behaves like returns error4559 returns error with correct error message4560 when invalid attributes4561 behaves like returns error4562 returns error with correct error message4563 partial success4564 behaves like creates new upcoming reconciliation4565 increases upcoming_reconciliations count4566 created upcoming reconciliation matches given hash4567 behaves like updates existing upcoming reconciliation4568 updated upcoming_reconciliation matches given hash4569 behaves like returns error4570 returns error with correct error message4571 when bulk upsert failed4572 logs bulk upsert error4573 behaves like returns error4574 returns error with correct error message4575Quality::Seeders::Vulnerabilities4576 # order random4577 when project has no members4578Skipping this project because it has no users does not create vulnerabilities on project4579 when project has members4580.............................. creates expected number of vulnerabilities4581Types::UserMergeRequestInteractionType4582 has the expected fields4583 #applicable_approval_rules4584 when there are no approval rules4585 is expected to be empty4586 when there are approval rules4587 when the feature is not available4588 is expected to be empty4589 when the feature is available4590 is expected to be empty4591 when the user is associated with a rule4592 is expected to contain exactly (have attributes {:approval_rule => #<ApprovalMergeRequestRule id: 25, created_at: "2022-11-11 01:21:...[], vulnerability_states: ["newly_detected"], security_orchestration_policy_configuration_id: nil>})4593Geo::Eventable4594 .up_to_event4595 finds only events up to the given geo event log id4596 .delete_with_limit4597 deletes a limited amount of rows4598 #consumer_klass_name4599 returns the even class name without the module part4600GitlabSubscriptions::Trials::ApplyTrialService4601 # order random4602 .execute4603 when trial is applied successfully4604 returns success: true4605 behaves like records an onboarding progress action4606 is expected to receive execute({:action=>:trial_started}) 1 time4607 #execute4608 when valid to generate a trial4609 when trial is applied successfully4610 returns success: true4611 behaves like records an onboarding progress action4612 is expected to receive execute({:action=>:trial_started}) 1 time4613 with error while applying the trial4614 returns success: false with errors4615 behaves like does not record an onboarding progress action4616 is expected not to receive new(*(any args)) 0 times4617 when not valid to generate a trial4618 when namespace_id is not in the trial_user_information4619 returns success: false with errors4620 when namespace does not exist4621 returns success: false with errors4622 when namespace is already on a trial4623 returns success: false with errors4624 #valid_to_generate_trial?4625 when it is valid to generate a trial4626 is expected to equal true4627 when namespace_id is not in the trial_user_information4628 is expected to equal false4629 when namespace does not exist4630 is expected to equal false4631 when namespace is already on a trial4632 is expected to equal false4633Gitlab::Auth::AuthFinders4634 #find_user_from_geo_token4635 is expected to eq #<User id:2303 @user1220>4636 when the path is not Geo specific4637 is expected to eq nil4638 when the Authorization header is invalid4639 is expected to eq nil4640 when the Authorization header is nil4641 is expected to eq nil4642 when the Authorization header is a Geo header4643 does not authenticate when the token expired4644 does not authenticate when clocks are not in sync4645 does not authenticate with invalid decryption key error4646 when the scope is not API4647 does not authenticate4648 when it does not contain a user id4649 raises an unauthorize error4650 when the user does not exist4651 raises an unauthorized error4652 #find_user_from_bearer_token4653 with a personal access token4654 returns user4655 when FIPS mode is enabled4656 raises unauthorized error4657 #find_user_from_access_token4658 when validate_access_token! returns valid4659 returns user4660 when FIPS mode is enabled4661 raised unauthorized error4662 #find_user_from_feed_token4663 when the request format is atom4664 when feed_token param is provided4665 when the feed token is valid4666 when FIPS mode is enabled4667 returns user4668 when fips_disable_personal_access_tokens feature is licensed4669 returns nil4670Vulnerabilities::Statistics::AdjustmentService4671 .execute4672 instantiates the service object for given project ids and calls `execute` on them4673 #execute4674 when more than 1000 projects is provided4675 raises error4676 when there is no vulnerability_statistic record for project4677 creates a new record4678 sets the correct values for the record4679 when there is already a vulnerability_statistic record for project4680 does not create a new record in database4681 sets the correct values for the record4682EE-specific project routing4683 Projects::RequirementsManagement::RequirementsController routing4684 to #index4685 Projects::VulnerabilityFeedbackController routing4686 to #index4687 to #create4688 to #destroy4689 legacy routing4690 behaves like redirecting a legacy path4691 redirects /gitlab/gitlabhq/vulnerability_feedback to /gitlab/gitlabhq/-/vulnerability_feedback4692 Projects::PipelinesController routing4693 to #security4694 Projects::AutocompleteSourcesController routing4695 to #epics4696 Projects::ProtectedEnvironmentsController routing4697 legacy routing4698 behaves like redirecting a legacy path4699 redirects /gitlab/gitlabhq/protected_environments to /gitlab/gitlabhq/-/protected_environments4700 Projects::AuditEventsController routing4701 legacy routing4702 behaves like redirecting a legacy path4703 redirects /gitlab/gitlabhq/audit_events to /gitlab/gitlabhq/-/audit_events4704 Projects::Integrations::Jira::IssuesController routing4705 to #index4706 Projects::Security::PoliciesController routing4707 to #new4708 to #index4709 id: "test.1.2"4710 to #edit4711 id: "test-policy"4712 to #edit4713 id: "test:policy"4714 to #edit4715Epics::NewEpicIssueWorker4716 #perform4717 behaves like performs successfully4718 creates system notes4719 updates usage data4720 when reassinging an issue4721 behaves like performs successfully4722 creates system notes4723 updates usage data4724 when original epic does not exist4725 behaves like does nothing4726 does not create system notes4727 does not update usage data4728 when epic does not exist4729 behaves like does nothing4730 does not create system notes4731 does not update usage data4732 when issue does not exist4733 behaves like does nothing4734 does not create system notes4735 does not update usage data4736 when user does not exist4737 behaves like does nothing4738 does not create system notes4739 does not update usage data4740Gitlab::Insights::Reducers::CountPerLabelReducer4741 raises an error for an unknown :issuable_type option4742 returns issuables with only the needed fields4743 avoids N + 1 queries4744Gitlab::InstrumentationHelper4745 .add_instrumentation_data4746 when Elasticsearch calls are made4747 adds Elasticsearch data4748IdentityProviderPolicy4749 #rules4750 when user is group managed4751 is expected not to be allowed :link4752 is expected not to be allowed :unlink4753 owner is not yet group managed4754 no other owners exist4755 is expected not to be allowed :unlink4756 another group owner exists4757 without sso linked4758 is expected not to be allowed :unlink4759 with sso linked4760 is expected to be allowed :unlink4761 managed by the group4762 is expected to be allowed :unlink4763Security::TokenRevocationService#execute4764 when revocation token API returns a response with failure4765 returns error4766 when revocation token types API returns empty list of types4767 is expected to eql {:status=>:success}4768 when revocation service is disabled4769 is expected to eql {:message=>"Token revocation is disabled", :status=>:error}4770 when revocation service is enabled4771 with a list of valid token types4772 when there is a list of tokens to be revoked4773 is expected to equal :success4774 when token_revocation_url is missing4775 is expected to eql {:message=>"Missing revocation token data", :status=>:error}4776 when token_types_url is missing4777 is expected to eql {:message=>"Missing revocation token data", :status=>:error}4778 when revocation_api_token is missing4779 is expected to eql {:message=>"Missing revocation token data", :status=>:error}4780 when there is no token to be revoked4781 is expected to eql {:status=>:success}4782 when revocation token types API returns an unsuccessful response4783 is expected to eql {:message=>"Failed to get revocation token types", :status=>:error}4784Security::Ingestion::Tasks::HooksExecution4785 #execute4786 executes the hooks associated with all new vulnerabilities4787 does not execute the hooks associated with existing vulnerabilities4788Namespaces::FreeUserCap::UsageQuotaTrialAlertComponent4789 when on trial4790 renders the banner4791 when group is public4792 does not have banner content4793 when the free_user_cap feature flag is not enabled4794 does not have banner content4795 when not on trial4796 does not have banner content4797BulkImports::Groups::Pipelines::IterationsPipeline4798 #run4799 imports group iterations4800 #load4801 creates the iteration4802 when user is not authorized to create the milestone4803 raises NotAllowedError4804 pipeline parts4805 is expected to includes the BulkImports::Pipeline module4806 is expected to includes the BulkImports::Pipeline::Runner module4807 has extractors4808 has transformers4809Resolvers::Vulnerabilities::IssueLinksResolver4810 #ready?4811 when the link_type filter is given but is not `CREATED` or `RELATED`4812 when the filter is a string4813 generates an error4814 when the filter is a number4815 generates an error4816 when the filter is a symbol4817 generates an error4818 #resolve4819 when there is no filter given4820 is expected to contain exactly #<Vulnerabilities::IssueLink id: 18, vulnerability_id: 134, issue_id: 116, link_type: "related", created_at: "2022-11-11 01:21:58.304058154 +0000", updated_at: "2022-11-11 01:21:58.304058154 +0000"> and #<Vulnerabilities::IssueLink id: 19, vulnerability_id: 134, issue_id: 117, link_type: "created", created_at: "2022-11-11 01:21:58.666821473 +0000", updated_at: "2022-11-11 01:21:58.666821473 +0000">4821 is expected not to raise Exception4822 when the link_type filter is given4823 when the filter is `CREATED`4824 is expected to contain exactly #<Vulnerabilities::IssueLink id: 19, vulnerability_id: 134, issue_id: 117, link_type: "created", created_at: "2022-11-11 01:21:58.666821473 +0000", updated_at: "2022-11-11 01:21:58.666821473 +0000">4825 is expected not to raise Exception4826 when the filter is `RELATED`4827 is expected to contain exactly #<Vulnerabilities::IssueLink id: 18, vulnerability_id: 134, issue_id: 116, link_type: "related", created_at: "2022-11-11 01:21:58.304058154 +0000", updated_at: "2022-11-11 01:21:58.304058154 +0000">4828 is expected not to raise Exception4829Resolvers::Admin::CloudLicenses::SubscriptionFutureEntriesResolver4830 #resolve4831 when current user is unauthorized4832 raises error4833 when no subscriptions exist4834 returns an empty array4835 when future subscriptions exist4836 returns the subscription future entries4837 cloud_license_enabled is false4838 returns type as legacy_license4839 cloud_license_enabled is true and offline_cloud_licensing is true4840 returns type as offline_cloud4841Resolvers::Geo::LfsObjectRegistriesResolver4842 behaves like a Geo registries resolver4843 #resolve4844 when the parent object is the current node4845 when the user has permission to view Geo data4846 when admin mode is enabled4847 when the ids argument is null4848 returns registries, in order4849 when the ids argument is present4850 returns the requested registries, in order4851 when the replication_state argument is present4852 returns registries with requested replication state, in order4853 with verification enabled4854 when the verification_state argument is present4855 returns registries with requested verification state, in order4856 with verification disabled4857 when the verification_state argument is present4858 raises ArgumentError (PENDING: Skipping because verification is enabled for LfsObject)4859 when admin mode is disabled4860 returns nothing4861 when the user does not have permission to view Geo data4862 returns nothing4863 when the parent object is not the current node4864 when the user has permission to view Geo data4865 returns nothing, because we can't query other nodes' tracking databases4866Types::VulnerabilityResponseType4867 is expected to eq "VulnerabilityResponse"4868 is expected to have graphql fields :body, :status_code, :reason_phrase, and :headers4869 checking field contents4870 evidence.response fields4871 checks the contents of the fields4872 evidence.supportingMessages[].response fields4873 checks the contents of the fields4874Security::ReportFetchService4875 #pipeline4876 with found pipeline4877 is expected to eq #<Ci::Pipeline id: 449, ref: "master", sha: "b83d6e391c22777fca1ed3012fce84f633d7fed0", before_sha: n...: nil, external_pull_request_id: nil, ci_ref_id: 416, locked: "artifacts_locked", partition_id: 100>4878 without any pipelines4879 is expected to be nil4880 #build4881 with right artifacts4882 is expected to eq #<Ci::Build status: "success", finished_at: "2022-11-11 08:53:29.000000000 +0000", created_at: "2022-...rocessed: false, scheduling_type: "stage", id: 434, stage_id: 394, partition_id: 100, tag_list: nil>4883 without right kind of artifacts4884 is expected to be nil4885 without found pipeline4886 is expected to be nil4887 #able_to_fetch?4888 with successful build4889 is expected to be truthy4890 with failed build4891 is expected to be falsey4892 without build4893 is expected to be falsey4894ApprovalStatePolicy4895 when user does not have access to project4896 is expected to be disallowed :read_merge_request4897 when user does have access to project4898 is expected to be allowed :read_merge_request4899Resolvers::PathLocksResolver4900 #resolve4901 feature is not licensed4902 is expected to be empty4903 feature is licensed4904 is expected to contain exactly #<PathLock id: 1, path: "README.md", project_id: 1344, user_id: 2361, created_at: "2022-11-11 01:22:09.114656084 +0000", updated_at: "2022-11-11 01:22:09.114656084 +0000">4905 preloads users4906 user is unauthorized4907 generates an error4908Gitlab::SearchResults4909 #projects4910 avoid N+1 queries4911Groups::EpicsCountService4912 #relation_for_count4913 uses the EpicsFinder to scope epics4914 behaves like a counter caching service with threshold4915 when cache is empty4916 refreshes cache if value over threshold4917 does not refresh cache if value under threshold4918 when cached count is under the threshold value4919 does not refresh cache4920 when cached count is over the threshold value4921 does not refresh cache4922Types::AppSec::Fuzzing::Coverage::CorpusType4923 is expected to eq "CoverageFuzzingCorpus"4924 is expected to eq "Corpus for a coverage fuzzing job."4925 is expected to require graphql authorizations :read_coverage_fuzzing4926 is expected to have graphql fields :id and :package4927 id field4928 correctly resolves the field4929 package field4930 correctly resolves the field4931Ci::Minutes::ResetUsageService4932 #execute4933 when project has namespace_statistics4934 clears the amount used and notification levels4935 clears legacy counters4936 resets legacy timer4937 successfully clears minutes4938 expires the CachedQuota4939 when project does not have namespace_statistics4940 successfully clears minutes4941ActiveUserCountThresholdWorker4942 #perform4943 trial?: false, threshold_reached?: false, should_send_reminder?: false4944 is expected not to receive approaching_active_user_count_limit(*(any args)) 0 times4945 trial?: false, threshold_reached?: true, should_send_reminder?: true4946 is expected to receive approaching_active_user_count_limit(*(any args)) 1 time4947 trial?: true, threshold_reached?: false, should_send_reminder?: false4948 is expected not to receive approaching_active_user_count_limit(*(any args)) 0 times4949 trial?: true, threshold_reached?: true, should_send_reminder?: false4950 is expected not to receive approaching_active_user_count_limit(*(any args)) 0 times4951 recipients4952 sends reminder to admins only4953 adds a licensee email to the recipients list4954 sends reminder to unique emails4955 sends reminder to active admins only4956 when there is no license4957 does not send a reminder4958EpicEntity4959 has Issuable attributes4960 has epic specific attributes4961 behaves like issuable entity current_user properties4962 can_create_confidential_note4963 when user can create confidential notes4964 is expected to equal true4965 when user cannot create confidential notes4966 is expected to eq false4967Geo::CreateRepositoryUpdatedEventWorker4968 on a Geo primary site4969 behaves like subscribes to event4970 consumes the published event4971 behaves like an idempotent worker4972 is labeled as idempotent4973 performs multiple times sequentially without raising an exception4974 on a Geo secondary site4975 does not create a Geo::RepositoryUpdatedEvent4976Mutations::ComplianceManagement::Frameworks::Destroy4977 feature is unlicensed4978 behaves like a compliance framework that cannot be found4979 raises an error4980 feature is licensed4981 current_user is namespace owner4982 behaves like one compliance framework was destroyed4983 destroys a compliance framework4984 expects zero errors in the response4985 current_user is group owner4986 behaves like one compliance framework was destroyed4987 destroys a compliance framework4988 expects zero errors in the response4989Projects::GroupLinks::UpdateService4990 audit events4991 sends the audit streaming event4992 when only expires_at is updated4993 sends the audit streaming event4994 when expires_at is already same4995 does not send audit streaming event4996 when only access_level is updated4997 sends the audit streaming event4998 when access_level is already same4999 does not send audit streaming event5000Resolvers::Boards::EpicListsResolver5001 is expected to have nullable GraphQL type EpicListConnection5002 #resolve5003 generates an error if user cannot read epic lists5004 when user is member of the group5005 returns epic lists for the board5006 when resolving a single item5007 returns an array with single epic list5008 when the board has hidden lists5009 returns an array with single epic list5010Mutations::DastSiteValidations::Revoke5011 is expected to require graphql authorizations :create_on_demand_dast_scan5012 #resolve5013 when on demand scan feature is enabled5014 when the project does not exist5015 raises an exception5016 when the user can run a dast scan5017 deletes dast_site_validations where state=passed5018 correctly calls AppSec::Dast::SiteValidations::RevokeService5019Gitlab::Insights::Validators::ParamsValidator5020 :type5021 with type: 'bar'5022 does not raise an error5023 with type: 'line'5024 does not raise an error5025 with type: 'stacked-bar'5026 does not raise an error5027 with type: 'pie'5028 does not raise an error5029 with an invalid :type5030 raises an error5031 :projects5032 when projects is an array5033 raises an error5034 when projects is a hash, having `only` with an integer5035 raises an error5036 when projects is a hash, having `only` with an array5037 does not raise an error5038Ci::Minutes::UpdateProjectAndNamespaceUsageWorker5039 #perform5040 when duration param is not passed in5041 does not behave idempotently for legacy statistics update5042 behaves idempotently for monthly usage update5043 executes UpdateProjectAndNamespaceUsageService5044 updates monthly usage but not shared_runners_duration5045 when duration param is passed in5046 does not behave idempotently for legacy statistics update5047 behaves idempotently for monthly usage update5048 executes UpdateProjectAndNamespaceUsageService5049 updates monthly usage and shared_runners_duration5050Iterations::Cadences::ScheduleCreateIterationsWorker5051 is labeled as idempotent5052 performs multiple times sequentially without raising an exception5053 #perform5054 in batches5055 run in batches5056 when cadences need to be scheduled5057 when cadence with NULL next_run_date exists5058 behaves like CreateIterationsWorker is scheduled on the correct cadence5059 schedules CreateIterationsWorker on the correct cadence5060 when cadence with next_run_date < CURRENT_DATE exists5061 behaves like CreateIterationsWorker is scheduled on the correct cadence5062 schedules CreateIterationsWorker on the correct cadence5063Gitlab::Usage::Metrics::Instrumentations::LicenseManagementJobsMetric5064 behaves like a correct instrumented metric value5065 has correct value5066Sidebars::Projects::Panel5067 ExternalIssueTrackerMenu5068 when show_jira_menu_items? is false5069 contains ExternalIssueTracker menu5070 when show_jira_menu_items? is true5071 does not contain ExternalIssueTracker menu5072Mutations::InstanceSecurityDashboard::RemoveProject5073 #resolve5074 when user is not logged_in5075 raises Gitlab::Graphql::Errors::ResourceNotAvailable error5076 when user is logged_in5077 when security_dashboard is not enabled5078 raises Gitlab::Graphql::Errors::ResourceNotAvailable error5079 when security_dashboard is enabled5080 when project is not configured in security dashboard5081 is expected to eq {:errors=>["The project does not belong to your dashboard or you don't have permission to perform this action"]}5082 when project is configured in security dashboard5083 is expected to eq {:errors=>[]}5084Projects::RegisterSuggestedReviewersProjectWorker5085 # order random5086 #perform5087 when project is not found5088 returns without calling the fetch suggested reviewer service5089 when project is found5090 when user is not found5091 returns without calling the fetch suggested reviewer service5092 when user is found5093 when suggested reviews is not available for the project5094 returns without calling the fetch suggested reviewer service5095 when suggested reviews is available for the project5096 when suggested reviews is not enabled for the project5097 returns without calling the fetch suggested reviewer service5098 when suggested reviews is enabled for the project5099 when service returns success5100 calls project register service and logs an info with payload5101 when service returns error5102 when error is trackable5103 tracks the error5104 when error is swallowable5105 swallows the error5106 when error is trackable and raisable5107 tracks and raises the error5108Types::Dast::ProfileScheduleType5109 is expected to eq "DastProfileSchedule"5110 is expected to have graphql fields :id, :active, :startsAt, :timezone, :nextRunAt, :cadence, and :ownerValid5111 startsAt field5112 converts the startsAt to the timezone5113 nextRunAt field5114 converts the nextRunAt to the timezone5115 ownerValid5116 returns if the owner is valid5117Vulnerabilities::IssueLinkPolicy5118 :admin_vulnerability_issue_link5119 with missing vulnerability5120 is expected to be disallowed :admin_vulnerability_issue_link5121 when issue and link belong to the same project5122 is expected to be allowed :admin_vulnerability_issue_link5123 when issue and link don't belong to the same project5124 is expected to be allowed :admin_vulnerability_issue_link5125 :read_issue_link5126 when the associated issue can not be read by the user5127 is expected to be disallowed :read_issue_link5128 when the associated issue can be read by the user5129 is expected to be allowed :read_issue_link5130Projects::Security::ConfigurationPresenter5131 #to_h5132 includes settings for auto_fix feature5133 reports auto_fix permissions5134 reports security_training_enabled5135 #to_html_data_attribute5136 includes feature meta information for dast scanner5137 does not include feature meta information for other scanner5138EE::Namespace::RootStorageStatistics5139 #recalculate!5140 when namespace belongs to a group5141 aggregates namespace wiki statistics5142 works when there are no namespace statistics5143 when namespace belong to a user5144 does not aggregate namespace statistics5145BroadcastMessage5146 .current5147 without Geo5148 caches the output of the query for two weeks5149 with Geo5150 on the primary5151 caches the output of the query for two weeks5152 on a secondary5153 caches the output for a short time5154EE::API::Entities::Project5155 compliance_frameworks5156 when project has a compliance framework5157 is an array containing a single compliance framework5158 when project has no compliance framework5159 is empty array when project has no compliance framework5160projects/security/dast_scanner_profiles/new5161 renders Vue app root5162 passes project's full path5163 passes DAST profiles library URL5164Elastic::Latest::Routing5165 #search5166 calls routing_options with empty hash5167 calls routing_options with correct routing5168 #routing_options5169 returns correct options for project_id5170 returns correct options for repository_id5171 returns correct options for project_ids5172 returns empty hash when provided an empty array5173 returns empty hash when provided :any to project_ids5174 returns empty hash when public projects flag is passed5175 uses project_ids rather than repository_id when both are supplied5176 returns empty hash when there are too many project_ids5177Gitlab::EtagCaching::Router::Rails5178 matches epic notes endpoint5179 does not match invalid epic notes endpoint5180 has a valid feature category for every route5181 .cache_key5182 returns a cache key5183Sbom::Ingestion::Tasks::IngestSources5184 # order random5185 #execute5186 is idempotent5187 sets source_id for all maps5188 when source already exists5189 does not create a new record for the existing source5190 sets the source_id for all maps5191 when source is not present5192 performs no-op5193 when occurrence_maps is empty5194 is expected not to raise Exception5195Gitlab::Analytics::CycleAnalytics::StageEvents::IssueLastEdited5196 behaves like value stream analytics event5197 is expected to be a kind of String5198 is expected to be a kind of Symbol5199 is expected to include ApplicationRecord(abstract)5200 is expected to respond to #timestamp_projection5201 is expected to respond to #html_description5202 is expected to be a kind of Array5203 #apply_query_customization5204 expects an ActiveRecord::Relation object as argument and returns a modified version of it5205 #hash_code5206 returns a hash that uniquely identifies an event5207 does not differ when the same object is built with the same params5208IssueBoardEntity5209 #weight5210 has `weight` attribute5211 when project does not support issue weights5212 does not have `weight` attribute5213 #blocked5214 the issue is not blocked by default5215 when blocked_issue_ids contains the issue id5216 the issue is blocked5217 when blocked_issue_ids is not set5218 the issue is not blocked5219Gitlab::TreeSummary5220 #summarize (entries)5221 includes path locks in entries5222 when file_locks feature is unavailable5223 does not fill lock labels5224Gitlab::IncidentManagement5225 .oncall_schedules_available?5226 is expected to be truthy5227 when there is no license5228 is expected to be falsey5229 .escalation_policies_available?5230 is expected to be truthy5231 when escalation policies not avaialble5232 is expected to be falsey5233 when on-call schedules not available5234 is expected to be falsey5235 .issuable_resource_links_available?5236 is expected to be truthy5237 when feature is not avaiable5238 is expected to be falsey5239Types::Geo::CiSecureFileRegistryType5240 has the expected fields (other than those included in RegistryType)5241 behaves like a Geo registry type5242 is expected to require graphql authorizations :read_geo_registry5243 has the expected fields5244Autocomplete::ProjectInvitedGroupsFinder5245 #execute5246 raises ActiveRecord::RecordNotFound if the project does not exist5247 raises ActiveRecord::RecordNotFound if the user is not authorized to see the project5248 returns an empty relation without a project ID5249 with a project the user is authorized to see5250 returns groups invited to the project that the user can see5251Gitlab::ImportExport::Group::GroupAndDescendantsRepoRestorer5252 when group wiki license feature is enabled5253 imports the group and subgroups wiki repo and returns true5254 if any of the wiki imports fails5255 returns false and stops importing other groups5256 when group is not inside group mappings5257 avoids calling the restorer, continue importing, and returns true5258 when group mapping is empty5259 does not try to import wikis and returns true5260 when group wiki license feature is not enabled5261 does not try to import wikis and returns true5262PersonalAccessTokens::CreateService5263 #execute5264 when non-admin user5265 when user creates their own token5266 creates AuditEvent with success message5267 when user attempts to create a token for a different user5268 creates AuditEvent with failure message5269 when admin5270 with admin mode enabled5271 with admin mode disabled5272 creates audit logs with failure message5273Gitlab::RackAttack::Request5274 #should_be_skipped?5275 super_value: true, geo: true5276 returns true if any condition is true5277 super_value: true, geo: false5278 returns true if any condition is true5279 super_value: false, geo: true5280 returns true if any condition is true5281 super_value: false, geo: false5282 returns true if any condition is true5283 #geo?5284 env: {}, geo_auth_attempt: false, expected: false5285 is expected to equal false5286 env: {}, geo_auth_attempt: true, expected: false5287 is expected to equal false5288 env: {"HTTP_AUTHORIZATION"=>"secret"}, geo_auth_attempt: false, expected: false5289 is expected to equal false5290 env: {"HTTP_AUTHORIZATION"=>"secret"}, geo_auth_attempt: true, expected: true5291 is expected to equal true5292Analytics::DevopsAdoption::SnapshotsFinder5293 #execute5294 with timespan provided5295 returns snapshots in given timespan5296 without timespan provided5297 returns all snapshots ordered by end_time5298Integrations::ChatMessage::VulnerabilityMessage5299 behaves like Integrations::ChatMessage5300 when input contains link markup5301 strips all link markup characters5302 #message5303 returns the correct message5304 #attachments5305 returns an array of one5306 contains the correct attributes5307 returns the correct color5308 returns the correct attachment fields5309 returns list of identifiers in correct form5310Members::ImportProjectTeamService5311 #execute5312 when the project team import fails5313 when the target project has locked their membership5314 via the parent group5315 returns false5316 via LDAP5317 returns false5318Groups::ScheduleBulkRepositoryShardMovesService5319 behaves like moves repository shard in bulk5320 #execute5321 schedules container repository storage moves5322 read-only repository5323 does not get scheduled5324 .enqueue5325 defers to the worker5326Resolvers::Boards::EpicBoardsResolver5327 is expected to have nullable GraphQL type EpicBoardConnection5328 #resolve5329 when epics are not available5330 returns nil5331 when epics are available5332 generates an error if user cannot read epic boards5333 when user is member of the group5334 returns epic boards in the group ordered by name5335SortingHelper5336 #sort_direction_icon5337 returns lowest for weight5338 behaves like non-ee for other sort values5339 #runners_sort_options_hash5340 behaves like non-ee for other sort values5341 #can_sort_by_issue_weight?5342 when user is viewing issues5343 when issue_weights licensed feature is enabled5344 is expected to be truthy5345 when issue_weights licensed feature is disabled5346 is expected to be falsey5347 when user is not viewing issues5348 is expected to be falsey5349Boards::EpicBoardsFinder5350 #execute5351 finds all epic boards in the group ordered by case-insensitive name5352 when include_ancestor_groups parameter is set5353 finds all epic boards in the group or ancestor groups5354 when ID parameter is set5355 finds epic board by ID5356StatusPage::PublishListService5357 #execute5358 when json upload succeeds5359 publishes details as JSON5360 when upload fails due to exception5361 propagates the exception5362 when limits exceeded5363 returns limit exceeded error5364 when status page setting is not enabled5365 returns feature not available error5366BulkImports::Common::Pipelines::BoardsPipeline5367 #run5368 imports group boards into destination group and removes tmpdir5369Integrations::Github::StatusNotifier5370 #notify5371 uses GitHub API to update status and returns the result as a hash5372 passes optional params5373 uses access token5374 with blank api_endpoint5375 defaults to using GitHub.com API5376 with custom api_endpoint5377 uses provided API for requests5378Types::IncidentManagement::EscalationRuleInputType5379 has specific fields5380 mutually exclusive arguments5381 with neither username nor schedule provided5382 is expected to raise Gitlab::Graphql::Errors::ArgumentError with "One of oncall_schedule_iid or username must be provided"5383 with both username and schedule provided5384 is expected to raise Gitlab::Graphql::Errors::ArgumentError with "One of oncall_schedule_iid or username must be provided"5385 with only on-call schedule provided5386 is expected to eq {:elapsed_time_seconds=>0, :oncall_schedule_iid=>"3", :status=>"resolved", :username=>nil}5387 with only user schedule provided5388 is expected to eq {:elapsed_time_seconds=>0, :oncall_schedule_iid=>nil, :status=>"resolved", :username=>"username"}5389Types::Dast::ProfileCadenceInputType5390 is expected to eq "DastProfileCadenceInput"5391 has the correct arguments5392Gitlab::Insights::Serializers::Chartjs::MultiSeriesSerializer5393 returns the correct format5394 wrong input formats5395 input: []5396 raises an error if the input is not in the correct format5397 input: [1, 2, 3]5398 raises an error if the input is not in the correct format5399 input: {:a=>:b}5400 raises an error if the input is not in the correct format5401 input: {:a=>[:a, "b"]}5402 raises an error if the input is not in the correct format5403EE::API::Entities::IdentityDetail5404 # order random5405 exposes extern_uid and user_id fields5406 exposes the attributes5407OmniAuth::Strategies::Kerberos5408 uses the principal name as the "uid"5409 extracts the username5410 turns the principal name into an email address5411 clears its special session key5412Geo::EventService5413 #execute5414 executes the consume part of the replication5415Slack::API5416 # order random5417 #post5418 posts to the Slack API correctly5419 returns the response5420 when the slack installation has no bot token5421 raises an error5422MigrateNotesToSeparateIndex5423 behaves like a deprecated Advanced Search migration5424 #migrate5425 logs a message and halts the migration5426 #completed?5427 returns false5428 #obsolete?5429 returns true5430Gitlab::ItemsCollection5431 responds to each5432 #page5433 returns paginated collection5434 #to_ary5435 returns Array5436Namespaces::Storage::SubgroupPreEnforcementAlertComponent5437 # order random5438 when subgroup5439 includes the correct subgroup info in the banner text5440compliance_management/compliance_framework/_compliance_framework_badge.html.haml5441 when show5442 renders a badge5443 when not show5444 does not render any badge5445Projects::Security::SastConfigurationHelper5446 #sast_configuration_data5447 is expected to eq {:project_path=>"namespace1287/project1393", :sast_analyzers_documentation_path=>"/help/user/applicat...configuration", :security_configuration_path=>"/namespace1287/project1393/-/security/configuration"}5448Gitlab::Verify::LfsObjects5449 includes LFS objects in object storage5450Types::VulnerabilityStateEnum5451 exposes all vulnerability states5452admin/dev_ops_report/show.html.haml5453 when show_adoption? returns false5454DEPRECATION WARNING: The asset "page_bundles/dev_ops_report.css" is not present in the asset pipeline.5455Falling back to an asset that may be in the public folder.5456This behavior is deprecated and will be removed.5457To bypass the asset pipeline and preserve this behavior,5458use the `skip_pipeline: true` option.5459 (called from stylesheet_link_tag_defer at /builds/gitlab-org/gitlab/app/helpers/application_helper.rb:282)5460 disables the feature5461 when show_adoption? returns true5462DEPRECATION WARNING: The asset "page_bundles/dev_ops_report.css" is not present in the asset pipeline.5463Falling back to an asset that may be in the public folder.5464This behavior is deprecated and will be removed.5465To bypass the asset pipeline and preserve this behavior,5466use the `skip_pipeline: true` option.5467 (called from stylesheet_link_tag_defer at /builds/gitlab-org/gitlab/app/helpers/application_helper.rb:282)5468 enables the feature5469Gitlab::Usage::Metrics::Instrumentations::AdvancedSearch::DistributionMetric5470 behaves like a correct instrumented metric value5471 has correct value5472 elasticsearch_indexing is enabled5473 behaves like a correct instrumented metric value5474 has correct value5475Types::VulnerabilityLocation::DastType5476 is expected to have graphql fields :hostname, :param, :path, and :request_method5477RemovePermissionsDataFromNotesDocuments5478 behaves like a deprecated Advanced Search migration5479 #migrate5480 logs a message and halts the migration5481 #completed?5482 returns false5483 #obsolete?5484 returns true5485API::Entities::Groups::RepositoryStorageMove5486 #as_json5487 includes basic fields5488Types::Ci::RunnerType5489 is expected to eq "CiRunner"5490 includes the ee specific fields5491Gitlab::SubscriptionPortal::Client5492 is expected to includes the Gitlab::SubscriptionPortal::Clients::Graphql module5493 is expected to includes the Gitlab::SubscriptionPortal::Clients::Rest module5494Gitlab::Template::GitlabCiYmlTemplate5495 .all5496 finds the Security Products templates5497 finds all the Verify templates5498Types::Vulnerability::ExternalIssueLinkExternalTrackerEnum5499 is expected to contain exactly "JIRA"5500Gitlab::Insights::Serializers::Chartjs::BarTimeSeriesSerializer5501 returns the correct format5502Types::Security::TrainingType5503 is expected to have graphql fields :id, :name, :description, :url, :logo_url, :is_enabled, and :is_primary5504Types::Vulnerability::ExternalIssueLinkTypeEnum5505 is expected to contain exactly "CREATED"5506Knapsack report was generated. Preview:5507{5508 "ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb": 307.33182617600005,5509 "ee/spec/services/quick_actions/interpret_service_spec.rb": 178.37790114100017,5510 "ee/spec/models/security/orchestration_policy_configuration_spec.rb": 86.38415026500024,5511 "ee/spec/models/geo/merge_request_diff_registry_spec.rb": 81.9970287289998,5512 "ee/spec/models/vulnerabilities/read_spec.rb": 76.91132622099985,5513 "ee/spec/policies/merge_request_policy_spec.rb": 80.44166896200022,5514 "ee/spec/models/merge_request/blocking_spec.rb": 50.06812919599997,5515 "ee/spec/replicators/geo/pipeline_artifact_replicator_spec.rb": 47.61156460700022,5516 "ee/spec/services/projects/create_from_template_service_spec.rb": 51.785360068000045,5517 "ee/spec/lib/gitlab/analytics/cycle_analytics/summary/group/stage_summary_spec.rb": 44.21656426699974,5518 "ee/spec/models/repository_spec.rb": 34.23947844899976,5519 "ee/spec/services/security/security_orchestration_policies/fetch_policy_approvers_service_spec.rb": 22.107695287000297,5520 "ee/spec/models/project_member_spec.rb": 24.768649271999948,5521 "ee/spec/graphql/resolvers/epics_resolver_spec.rb": 18.31430464899995,5522 "ee/spec/lib/banzai/filter/references/epic_reference_filter_spec.rb": 18.135759714000415,5523 "ee/spec/lib/audit/project_changes_auditor_spec.rb": 19.551806813999974,5524 "ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb": 18.014014783999755,5525 "ee/spec/services/groups/sync_service_spec.rb": 17.34607320100031,5526 "ee/spec/services/security/security_orchestration_policies/process_scan_result_policy_service_spec.rb": 17.96154007899986,5527 "ee/spec/workers/geo/registry_sync_worker_spec.rb": 18.453157116000057,5528 "ee/spec/presenters/merge_request_presenter_spec.rb": 14.413302734999888,5529 "ee/spec/services/projects/destroy_service_spec.rb": 15.434951375999844,5530 "ee/spec/helpers/ee/namespaces_helper_spec.rb": 7.714992707999954,5531 "ee/spec/lib/gitlab/ci/templates/Jobs/dast_default_branch_gitlab_ci_yaml_spec.rb": 13.742252843999722,5532 "ee/spec/models/dast/profile_spec.rb": 9.444627327000035,5533 "ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb": 13.285695234000286,5534 "ee/spec/presenters/ci/pipeline_presenter_spec.rb": 8.750309689000005,5535 "ee/spec/workers/post_receive_spec.rb": 10.068370604000393,5536 "ee/spec/models/concerns/elastic/milestone_spec.rb": 9.61515091199999,5537 "ee/spec/helpers/vulnerabilities_helper_spec.rb": 8.388698090000162,5538 "ee/spec/lib/gitlab/ci/config/security_orchestration_policies/processor_spec.rb": 6.058514831000139,5539 "ee/spec/workers/sync_seat_link_request_worker_spec.rb": 6.588615656000002,5540 "ee/spec/lib/gitlab/elastic/document_reference_spec.rb": 4.073223804999998,5541 "ee/spec/services/app_sec/dast/scans/run_service_spec.rb": 6.999911056999736,5542 "ee/spec/finders/security/scan_execution_policies_finder_spec.rb": 7.252553677000378,5543 "ee/spec/services/merge_requests/build_service_spec.rb": 7.874428108000302,5544 "ee/spec/lib/gitlab/auth/smartcard/certificate_spec.rb": 3.2105016010000327,5545 "ee/spec/lib/gitlab/audit/auditor_spec.rb": 3.4743627580000975,5546 "ee/spec/services/ee/issuable/common_system_notes_service_spec.rb": 8.053061779000018,5547 "ee/spec/services/groups/destroy_service_spec.rb": 7.924969980000242,5548 "ee/spec/services/compliance_management/frameworks/update_service_spec.rb": 4.219006873000126,5549 "ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb": 4.571028461999958,5550 "ee/spec/lib/gitlab/ci/parsers/security/container_scanning_spec.rb": 6.158260914000039,5551 "ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/create_spec.rb": 5.899267076000342,5552 "ee/spec/lib/ee/api/helpers/scim_pagination_spec.rb": 5.549964357000135,5553 "ee/spec/graphql/mutations/issues/set_assignees_spec.rb": 7.433220362999691,5554 "ee/spec/lib/ee/gitlab/pages/deployment_update_spec.rb": 5.256092701999933,5555 "ee/spec/lib/gitlab/geo/event_gap_tracking_spec.rb": 2.3174100679998446,5556 "ee/spec/models/issuable_metric_image_spec.rb": 3.7306033750001006,5557 "ee/spec/services/ee/merge_requests/update_assignees_service_spec.rb": 5.702741124000113,5558 "ee/spec/services/geo/blob_download_service_spec.rb": 4.890969464000136,5559 "ee/spec/models/preloaders/user_member_roles_in_projects_preloader_spec.rb": 4.929871671000001,5560 "ee/spec/models/ci/sources/project_spec.rb": 3.7316227149999577,5561 "ee/spec/services/ee/incident_management/issuable_escalation_statuses/prepare_update_service_spec.rb": 2.900187027999891,5562 "ee/spec/lib/ee/gitlab/ci/config_spec.rb": 4.085463884000092,5563 "ee/spec/helpers/ee/subscribable_banner_helper_spec.rb": 2.1786005100002512,5564 "ee/spec/services/security/security_orchestration_policies/policy_configuration_validation_service_spec.rb": 5.872136598999987,5565 "ee/spec/services/app_sec/dast/profiles/destroy_service_spec.rb": 2.1522087029998147,5566 "ee/spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_assigned_security_policy_project_metric_spec.rb": 2.5498514179998892,5567 "ee/spec/lib/gitlab/ci/templates/container_scanning_latest_gitlab_ci_yaml_spec.rb": 2.978474641000048,5568 "ee/spec/lib/gitlab/geo/oauth/login_state_spec.rb": 1.5258035779997954,5569 "ee/spec/services/ci/create_pipeline_service/runnable_builds_spec.rb": 3.849850564999997,5570 "ee/spec/services/upcoming_reconciliations/update_service_spec.rb": 1.34394438299978,5571 "ee/spec/lib/quality/seeders/vulnerabilities_spec.rb": 4.821892490000209,5572 "ee/spec/graphql/ee/types/user_merge_request_interaction_type_spec.rb": 2.2779117719996975,5573 "ee/spec/models/concerns/geo/eventable_spec.rb": 3.5281333429998085,5574 "ee/spec/services/gitlab_subscriptions/trials/apply_trial_service_spec.rb": 1.6193195289997675,5575 "ee/spec/lib/ee/gitlab/auth/auth_finders_spec.rb": 1.7399130379999406,5576 "ee/spec/services/vulnerabilities/statistics/adjustment_service_spec.rb": 2.259764414000074,5577 "ee/spec/routing/project_routing_spec.rb": 2.1957743779998964,5578 "ee/spec/workers/epics/new_epic_issue_worker_spec.rb": 2.0981957279996095,5579 "ee/spec/lib/gitlab/insights/reducers/count_per_label_reducer_spec.rb": 3.046030494000206,5580 "ee/spec/lib/gitlab/instrumentation_helper_spec.rb": 3.4813390879999133,5581 "ee/spec/policies/identity_provider_policy_spec.rb": 2.0184534449999774,5582 "ee/spec/services/security/token_revocation_service_spec.rb": 1.5022412090002035,5583 "ee/spec/services/security/ingestion/tasks/hooks_execution_spec.rb": 4.8213990499998545,5584 "ee/spec/components/namespaces/free_user_cap/usage_quota_trial_alert_component_spec.rb": 1.9264966129999266,5585 "ee/spec/lib/bulk_imports/groups/pipelines/iterations_pipeline_spec.rb": 2.2267444160002015,5586 "ee/spec/graphql/resolvers/vulnerabilities/issue_links_resolver_spec.rb": 2.3413737659998333,5587 "ee/spec/graphql/resolvers/admin/cloud_licenses/subscription_future_entries_resolver_spec.rb": 1.0044319819999146,5588 "ee/spec/graphql/resolvers/geo/lfs_object_registries_resolver_spec.rb": 2.3213057580001077,5589 "ee/spec/graphql/types/vulnerability_response_type_spec.rb": 2.252993644000071,5590 "ee/spec/services/security/report_fetch_service_spec.rb": 2.25606946400012,5591 "ee/spec/policies/approval_state_policy_spec.rb": 1.6683430640000552,5592 "ee/spec/graphql/resolvers/path_locks_resolver_spec.rb": 1.043073589999949,5593 "ee/spec/lib/ee/gitlab/search_results_spec.rb": 3.631774014000257,5594 "ee/spec/services/groups/epics_count_service_spec.rb": 1.2987025570000696,5595 "ee/spec/graphql/types/app_sec/fuzzing/coverage/corpus_type_spec.rb": 1.4094885170002271,5596 "ee/spec/services/ci/minutes/reset_usage_service_spec.rb": 1.3133036549997996,5597 "ee/spec/workers/active_user_count_threshold_worker_spec.rb": 1.0314884600002188,5598 "ee/spec/serializers/epic_entity_spec.rb": 2.1534246930000336,5599 "ee/spec/workers/geo/create_repository_updated_event_worker_spec.rb": 2.033788043000186,5600 "ee/spec/graphql/mutations/compliance_management/frameworks/destroy_spec.rb": 2.448099536999962,5601 "ee/spec/services/projects/group_links/update_service_spec.rb": 2.4907532429997445,5602 "ee/spec/graphql/resolvers/boards/epic_lists_resolvers_spec.rb": 1.9089258730000438,5603 "ee/spec/graphql/mutations/dast_site_validations/revoke_spec.rb": 1.6550934659999257,5604 "ee/spec/lib/gitlab/insights/validators/params_validator_spec.rb": 0.7858724719999373,5605 "ee/spec/workers/ci/minutes/update_project_and_namespace_usage_worker_spec.rb": 1.5289575470001182,5606 "ee/spec/workers/iterations/cadences/schedule_create_iterations_worker_spec.rb": 0.5857834589996855,5607 "ee/spec/lib/gitlab/usage/metrics/instrumentations/license_management_jobs_metric_spec.rb": 0.8636301840001579,5608 "ee/spec/lib/ee/sidebars/projects/panel_spec.rb": 0.8712887039996531,5609 "ee/spec/graphql/mutations/instance_security_dashboard/remove_project_spec.rb": 1.218230353999843,5610 "ee/spec/workers/projects/register_suggested_reviewers_project_worker_spec.rb": 1.2934336069997698,5611 "ee/spec/graphql/types/dast/profile_schedule_type_spec.rb": 1.2417839820000154,5612 "ee/spec/policies/vulnerabilities/issue_link_policy_spec.rb": 1.7549651969998195,5613 "ee/spec/presenters/ee/projects/security/configuration_presenter_spec.rb": 1.2829311279997455,5614 "ee/spec/models/ee/namespace/root_storage_statistics_spec.rb": 1.7025574920003237,5615 "ee/spec/models/broadcast_message_spec.rb": 0.3810916569996152,5616 "ee/spec/lib/ee/api/entities/project_spec.rb": 1.6326214079999772,5617 "ee/spec/views/projects/security/dast_scanner_profiles/new.html.haml_spec.rb": 2.1520407620000697,5618 "ee/spec/lib/elastic/latest/routing_spec.rb": 1.0814483159997508,5619 "ee/spec/lib/ee/gitlab/etag_caching/router/rails_spec.rb": 0.4451867909997418,5620 "ee/spec/services/sbom/ingestion/tasks/ingest_sources_spec.rb": 1.0596342680000816,5621 "ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/issue_last_edited_spec.rb": 0.5195790750003653,5622 "ee/spec/serializers/ee/issue_board_entity_spec.rb": 1.553297853999993,5623 "ee/spec/lib/gitlab/tree_summary_spec.rb": 1.2376207919996887,5624 "ee/spec/lib/gitlab/incident_management_spec.rb": 0.8876689329999863,5625 "ee/spec/graphql/types/geo/ci_secure_file_registry_type_spec.rb": 0.47810849899997265,5626 "ee/spec/finders/autocomplete/project_invited_groups_finder_spec.rb": 1.4174361059999683,5627 "ee/spec/lib/gitlab/import_export/group/group_and_descendants_repo_restorer_spec.rb": 0.9081156009997358,5628 "ee/spec/services/personal_access_tokens/create_service_audit_log_spec.rb": 0.9120750399997632,5629 "ee/spec/lib/ee/gitlab/rack_attack/request_spec.rb": 0.5625573909997001,5630 "ee/spec/finders/analytics/devops_adoption/snapshots_finder_spec.rb": 0.8560063950003496,5631 "ee/spec/models/integrations/chat_message/vulnerability_message_spec.rb": 0.39122566600008213,5632 "ee/spec/services/ee/members/import_project_team_service_spec.rb": 1.2758141289996274,5633 "ee/spec/services/groups/schedule_bulk_repository_shard_moves_service_spec.rb": 0.6789875810000012,5634 "ee/spec/graphql/resolvers/boards/epic_boards_resolvers_spec.rb": 1.062959297999896,5635 "ee/spec/helpers/ee/sorting_helper_spec.rb": 0.8793219829999543,5636 "ee/spec/finders/boards/epic_boards_finder_spec.rb": 0.7688033829999767,5637 "ee/spec/services/status_page/publish_list_service_spec.rb": 0.716192348000277,5638 "ee/spec/lib/bulk_imports/common/pipelines/boards_pipeline_spec.rb": 1.4104144469997664,5639 "ee/spec/models/integrations/github/status_notifier_spec.rb": 0.5813798290000705,5640 "ee/spec/graphql/types/incident_management/escalation_rule_input_type_spec.rb": 0.4176875140001357,5641 "ee/spec/graphql/types/dast/profile_cadence_input_type_spec.rb": 0.37753587700035496,5642 "ee/spec/lib/gitlab/insights/serializers/chartjs/multi_series_serializer_spec.rb": 0.4539411509999809,5643 "ee/spec/lib/ee/api/entities/identity_detail_spec.rb": 0.7532885249997889,5644 "ee/spec/lib/omni_auth/strategies/kerberos_spec.rb": 0.3756982169998082,5645 "ee/spec/services/geo/event_service_spec.rb": 1.3973991890002253,5646 "ee/spec/lib/slack/api_spec.rb": 0.7620755630000531,5647 "ee/spec/elastic/migrate/20210201104800_migrate_notes_to_separate_index_spec.rb": 0.5211300749997463,5648 "ee/spec/lib/gitlab/items_collection_spec.rb": 0.6236655749999045,5649 "ee/spec/components/namespaces/storage/subgroup_pre_enforcement_alert_component_spec.rb": 1.6394432179999967,5650 "ee/spec/views/compliance_management/compliance_framework/_compliance_framework_badge.html.haml_spec.rb": 0.6041211570000087,5651 "ee/spec/helpers/ee/projects/security/sast_configuration_helper_spec.rb": 0.5376904929999,5652 "ee/spec/lib/ee/gitlab/verify/lfs_objects_spec.rb": 0.3675001980000161,5653 "ee/spec/graphql/types/vulnerability_state_enum_spec.rb": 0.2385644589999174,5654 "ee/spec/views/admin/dev_ops_report/show.html.haml_spec.rb": 0.31024369299984755,5655 "ee/spec/lib/gitlab/usage/metrics/instrumentations/advanced_search/distribution_metric_spec.rb": 0.419693794000068,5656 "ee/spec/graphql/types/vulnerability_location/dast_type_spec.rb": 1.4131893769999806,5657 "ee/spec/elastic/migrate/20210127154600_remove_permissions_data_from_notes_documents_spec.rb": 0.3747915870003453,5658 "ee/spec/lib/ee/api/entities/groups/repository_storage_move_spec.rb": 0.7040496590002476,5659 "ee/spec/graphql/types/ci/runner_type_spec.rb": 0.575340849999975,5660 "ee/spec/lib/gitlab/subscription_portal/client_spec.rb": 0.8134010990002025,5661 "ee/spec/lib/ee/gitlab/template/gitlab_ci_yml_template_spec.rb": 0.47757614800002557,5662 "ee/spec/graphql/types/vulnerability/external_issue_link_external_tracker_enum_spec.rb": 0.4890232279999509,5663 "ee/spec/lib/gitlab/insights/serializers/chartjs/bar_time_series_serializer_spec.rb": 0.4847392179999588,5664 "ee/spec/graphql/types/security/training_type_spec.rb": 0.37931237600014356,5665 "ee/spec/graphql/types/vulnerability/external_issue_link_type_enum_spec.rb": 0.22784536100016345666}5667Knapsack global time execution for tests: 26m 46s5668Pending: (Failures listed here are expected and do not affect your suite's status)5669 1) Resolvers::Geo::LfsObjectRegistriesResolver 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 ArgumentError5670 # Skipping because verification is enabled for LfsObject5671 # ./ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb:775672Failures:5673 1) DeleteCommitsFromOriginalIndex commits are still present in the index removes commits from the index5674 Failure/Error: expect(migration.migration_state).to match(task_id: nil)5675 expected {"task_id"=>"HKtuxRjeQrSEHHP9jEeVCA:4081"} to match {:task_id=>nil}5676 Diff:5677 @@ -1 +1 @@5678 -:task_id => nil,5679 +"task_id" => "HKtuxRjeQrSEHHP9jEeVCA:4081",5680 # ./ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb:57:in `block (3 levels) in <top (required)>'5681 # ./spec/spec_helper.rb:416:in `block (3 levels) in <top (required)>'5682 # ./spec/support/sidekiq_middleware.rb:18:in `with_sidekiq_server_middleware'5683 # ./spec/spec_helper.rb:408:in `block (2 levels) in <top (required)>'5684 # ./spec/spec_helper.rb:404:in `block (3 levels) in <top (required)>'5685 # ./lib/gitlab/application_context.rb:59:in `with_raw_context'5686 # ./spec/spec_helper.rb:404:in `block (2 levels) in <top (required)>'5687 # ./spec/spec_helper.rb:240:in `block (2 levels) in <top (required)>'5688 # ./spec/support/sidekiq.rb:21:in `block (3 levels) in <top (required)>'5689 # ./spec/support/sidekiq.rb:8:in `gitlab_sidekiq_inline'5690 # ./spec/support/sidekiq.rb:21:in `block (2 levels) in <top (required)>'5691 # ./spec/support/system_exit_detected.rb:7:in `block (2 levels) in <top (required)>'5692 # ./spec/support/redis.rb:17:in `block (3 levels) in <top (required)>'5693 # ./spec/support/flaky_tests.rb:27:in `block (2 levels) in <top (required)>'5694 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (3 levels) in <top (required)>'5695 # ./spec/support/database/prevent_cross_joins.rb:60:in `with_cross_joins_prevented'5696 # ./spec/support/database/prevent_cross_joins.rb:106:in `block (2 levels) in <top (required)>'5697 # ./ee/spec/support/elastic.rb:80:in `block (2 levels) in <top (required)>'5698Finished in 26 minutes 51 seconds (files took 47.98 seconds to load)56992142 examples, 1 failure, 1 pending5700Failed examples:5701rspec ./ee/spec/elastic/migrate/20220713103500_delete_commits_from_original_index_spec.rb:42 # DeleteCommitsFromOriginalIndex commits are still present in the index removes commits from the index5702Randomized with seed 617855703[TEST PROF INFO] Time spent in factories: 15:05.239 (56.05% of total time)5704Stopped processing SimpleCov as a previous error not related to SimpleCov has been detected5705RSpec exited with 1.5706Retrying the failing examples in a new RSpec process...5707$ gem install junit_merge --no-document --version 0.1.25708Successfully installed nokogiri-1.13.9-x86_64-linux5709Successfully installed junit_merge-0.1.257102 gems installed5711==> 'gem install junit_merge --no-document --version 0.1.2' succeeded in 0 seconds.5712Running RSpec command: bin/rspec -Ispec -rspec_helper --color --format documentation --format RspecJunitFormatter --out rspec/junit_rspec-retry.xml --only-failures --pattern "{ee/}spec/{bin,channels,config,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.rb"5713Run options: include {:last_run_status=>"failed"}5714Test environment set up in 0.369200878 seconds5715DeleteCommitsFromOriginalIndex5716 commits are still present in the index5717 removes commits from the index5718Finished in 9.06 seconds (files took 43.58 seconds to load)57191 example, 0 failures5720[TEST PROF INFO] Time spent in factories: 00:01.899 (16.41% of total time)5722Not uploading cache ruby-gems-debian-bullseye-ruby-2.7-16 due to policy5723Not uploading cache gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 due to policy5725Uploading artifacts...5726coverage/: found 4 matching files and directories 5727crystalball/: found 2 matching files and directories 5728deprecations/: found 7 matching files and directories 5729knapsack/: found 3 matching files and directories 5730rspec/: found 11 matching files and directories 5731WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory 5732log/*.log: found 20 matching files and directories 5733WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3307837873/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com5734WARNING: Retrying... context=artifacts-uploader error=request redirected5735Uploading artifacts as "archive" to coordinator... 201 Created id=3307837873 responseStatus=201 Created token=JRZjyKVs5736Uploading artifacts...5737rspec/junit_rspec.xml: found 1 matching files and directories 5738WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3307837873/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com5739WARNING: Retrying... context=artifacts-uploader error=request redirected5740Uploading artifacts as "junit" to coordinator... 201 Created id=3307837873 responseStatus=201 Created token=JRZjyKVs5742Job succeeded