rspec unit pg12 1/22
Passed Started
by
@jerasmus

Jacques Erasmus
1Running with gitlab-runner 14.10.0~beta.50.g1f2fe53e (1f2fe53e)2 on green-2.shared-gitlab-org.runners-manager.gitlab.com/default 8zCxmpPt3 feature flags: FF_USE_FASTZIP:true6Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images:debian-bullseye-ruby-2.7.patched-golang-1.16-git-2.33-lfs-2.9-chrome-97-node-16.14-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 ...7Starting service postgres:12 ...8Pulling docker image postgres:12 ...9Using docker image sha256:19789c9e83692f61ca3314294926bb26b68068f08aab1bd207915dcbd1a629c7 for postgres:12 with digest postgres@sha256:f2765d6a2a6459578274645b4d801345060322da2ba855af3d84878be28fe923 ...10Starting service redis:6.0-alpine ...11Pulling docker image redis:6.0-alpine ...12Using docker image sha256:131bc9ee328cff6485bae97a15d5867539c2902681d2bb30ab20117132936344 for redis:6.0-alpine with digest redis@sha256:54cd3000b43117c720f7d1ae77692b798ad8b4d54e304dbd8e49e799e77494a1 ...13Waiting for services to be up and running...14Authenticating with credentials from job payload (GitLab Registry)15Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:debian-bullseye-ruby-2.7.patched-golang-1.16-git-2.33-lfs-2.9-chrome-97-node-16.14-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 ...16Using docker image sha256:f5ccee577b270c6a832d9828384f62b437fcd3314314b5a98a5ab1cd248c3455 for registry.gitlab.com/gitlab-org/gitlab-build-images:debian-bullseye-ruby-2.7.patched-golang-1.16-git-2.33-lfs-2.9-chrome-97-node-16.14-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:7291ca4981a34fb65e8293b932eab1b4a4949bffa86bf4427b9f12c73f3483b7 ...18Running on runner-8zcxmppt-project-278964-concurrent-0 via runner-8zcxmppt-shared-gitlab-org-1651130456-5c0373b2...20$ eval "$CI_PRE_CLONE_SCRIPT"21Fetching changes with git depth set to 20...22Initialized empty Git repository in /builds/gitlab-org/gitlab/.git/23Created fresh repository.24remote: Enumerating objects: 103295, done. 25remote: Counting objects: 100% (103295/103295), done. 26remote: Compressing objects: 100% (73122/73122), done. 27remote: Total 103295 (delta 39893), reused 68736 (delta 26495), pack-reused 0 28Receiving objects: 100% (103295/103295), 104.30 MiB | 33.88 MiB/s, done.29Resolving deltas: 100% (39893/39893), done.31 * [new ref] refs/pipelines/526772223 -> refs/pipelines/52677222332 * [new branch] master -> origin/master33Checking out d5ce7ff4 as master...34Skipping Git submodules setup36Checking cache for ruby-gems-bullseye-9-protected...37Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/ruby-gems-bullseye-9-protected 38Successfully extracted cache39Checking cache for gitaly-ruby-gems-bullseye-9-protected...40Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/gitaly-ruby-gems-bullseye-9-protected 41Successfully extracted cache43Downloading artifacts for compile-test-assets (2388875148)...44Downloading artifacts from coordinator... ok id=2388875148 responseStatus=200 OK token=Hwaf-unk45Downloading artifacts for detect-tests (2388875168)...46Downloading artifacts from coordinator... ok id=2388875168 responseStatus=200 OK token=C51XdtG347Downloading artifacts for retrieve-tests-metadata (2388875184)...48Downloading artifacts from coordinator... ok id=2388875184 responseStatus=200 OK token=DVXPaLbN49Downloading artifacts for setup-test-env (2388875163)...50Downloading artifacts from coordinator... ok id=2388875163 responseStatus=200 OK token=qLL8tAwL52Using docker image sha256:f5ccee577b270c6a832d9828384f62b437fcd3314314b5a98a5ab1cd248c3455 for registry.gitlab.com/gitlab-org/gitlab-build-images:debian-bullseye-ruby-2.7.patched-golang-1.16-git-2.33-lfs-2.9-chrome-97-node-16.14-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:7291ca4981a34fb65e8293b932eab1b4a4949bffa86bf4427b9f12c73f3483b7 ...53$ echo $FOSS_ONLY54$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb55$ export GOPATH=$CI_PROJECT_DIR/.go56$ mkdir -p $GOPATH57$ source scripts/utils.sh58$ source scripts/prepare_build.sh59Successfully installed bundler-2.3.6601 gem installed61Bundler version 2.3.662production:development63Settings are listed in order of priority. The top value will be used.64clean65Set for the current user (/root/.bundle/config): true66install_flags67Set via BUNDLE_INSTALL_FLAGS: "--jobs=$(nproc) --retry=3 --quiet"68path69Set for the current user (/root/.bundle/config): "/builds/gitlab-org/gitlab/vendor"70without71Set via BUNDLE_WITHOUT: [:production, :development]72$ bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check73Don't run Bundler as root. Bundler can ask for sudo if it is needed, and74installing your bundle as root will break this application for all non-root75users on this machine.76The Gemfile's dependencies are satisfied77==> 'bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check' succeeded in 7 seconds.78$ bundle pristine pg79Installing pg 1.2.3 with native extensions80==> 'bundle pristine pg' succeeded in 11 seconds.81Using decomposed database config (config/database.yml.decomposed-postgresql)82$ setup_db_user_only83CREATE ROLE84GRANT85==> 'setup_db_user_only' succeeded in 1 seconds.86$ bundle exec rake db:drop db:create db:structure:load db:migrate gitlab:db:setup_ee87DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from block in <module:HasVariable> at app/models/concerns/ci/has_variable.rb:22)88DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from block in <module:NewHasVariable> at app/models/concerns/ci/new_has_variable.rb:9)89DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from <class:Kubernetes> at app/models/clusters/platforms/kubernetes.rb:29)90DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from <class:Kubernetes> at app/models/clusters/platforms/kubernetes.rb:34)91DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from block in <module:HasVariable> at app/models/concerns/ci/has_variable.rb:22)92DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)93DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)94DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from block in <module:HasVariable> at app/models/concerns/ci/has_variable.rb:22)95DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)96DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)97DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)98DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)99DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from block in <module:HasVariable> at app/models/concerns/ci/has_variable.rb:22)100DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from <class:Integration> at app/models/integration.rb:52)101DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from <class:Helm> at app/models/clusters/applications/helm.rb:12)102DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from <class:Prometheus> at app/models/clusters/applications/prometheus.rb:23)103DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)104DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)105DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)106DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from connected? at ee/lib/gitlab/geo.rb:79)107Dropped database 'gitlabhq_test'108Dropped database 'gitlabhq_test_ci'109Dropped database 'gitlabhq_geo_test'110Created database 'gitlabhq_test'111Created database 'gitlabhq_test_ci'112Created database 'gitlabhq_geo_test'113DEPRECATION WARNING: Using `bin/rails db:structure:load` is deprecated and will be removed in Rails 6.2. Configure the format using `config.active_record.schema_format = :sql` to use `structure.sql` and run `bin/rails db:schema:load` instead. (called from load at /builds/gitlab-org/gitlab/vendor/ruby/2.7.0/bin/rake:23)114Dropped database 'gitlabhq_geo_test'115Created database 'gitlabhq_geo_test'116==> 'bundle exec rake db:drop db:create db:structure:load db:migrate gitlab:db:setup_ee' succeeded in 38 seconds.117$ run_timed_command "gem install knapsack --no-document"118$ gem install knapsack --no-document119Successfully installed knapsack-4.0.01201 gem installed121==> 'gem install knapsack --no-document' succeeded in 1 seconds.122$ run_timed_command "scripts/gitaly-test-spawn"123$ scripts/gitaly-test-spawn124find: ‘/builds/gitlab-org/gitlab/tmp/tests/gitaly/cmd’: No such file or directory125find: ‘/builds/gitlab-org/gitlab/tmp/tests/gitaly/cmd’: No such file or directory126find: ‘/builds/gitlab-org/gitlab/tmp/tests/gitaly/cmd’: No such file or directory127Don't run Bundler as root. Bundler can ask for sudo if it is needed, and128installing your bundle as root will break this application for all non-root129users on this machine.130Using abstract_type 0.0.7131Using concurrent-ruby 1.1.10132Using i18n 1.10.0133Using minitest 5.15.0134Using tzinfo 2.0.4135Using zeitwerk 2.5.4136Using activesupport 6.1.4.7137Using builder 3.2.4138Using erubi 1.10.0139Using mini_portile2 2.8.0140Using racc 1.6.0141Using nokogiri 1.13.3 (x86_64-linux)142Using rails-dom-testing 2.0.3143Using crass 1.0.6144Using loofah 2.16.0145Using rails-html-sanitizer 1.4.2146Using actionview 6.1.4.7147Using rack 2.2.3148Using rack-test 1.1.0149Using actionpack 6.1.4.7150Using ice_nine 0.11.2151Using thread_safe 0.3.6152Using memoizable 0.4.2153Using adamantium 0.2.0154Using public_suffix 4.0.6155Using addressable 2.7.0156Using ast 2.4.2157Using binding_ninja 0.2.3158Using bundler 2.1.4159Using charlock_holmes 0.7.7160Using coderay 1.1.2161Using equalizer 0.0.11162Using concord 0.1.5163Using diff-lcs 1.3164Using dotenv 2.7.6165Using escape_utils 1.2.1166Using factory_bot 5.0.2167Using multipart-post 2.1.1168Using faraday 1.0.1169Using ffi 1.15.3170Using json 2.6.1171Using gemojione 3.3.0172Using mini_mime 1.0.2173Using rugged 1.2.0174Using github-linguist 7.12.1175Using github-markup 1.7.0176Using mime-types-data 3.2020.1104177Using mime-types 3.3.1178Using gitlab-gollum-rugged_adapter 0.4.4.4.gitlab.1179Using rouge 3.27.0180Using sanitize 6.0.0181Using stringex 2.8.5182Using gitlab-gollum-lib 4.2.7.10.gitlab.2183Using google-protobuf 3.19.1 (x86_64-linux)184Using googleapis-common-protos-types 1.3.0185Using grpc 1.42.0 (x86_64-linux)186Using opentracing 0.5.0187Using thrift 0.15.0188Using jaeger-client 1.1.0189Using pg_query 2.1.1190Using redis 4.4.0191Using gitlab-labkit 0.21.2192Using rubyzip 2.3.2193Using thor 1.1.0194Using tomlrb 2.0.1195Using with_env 1.1.0196Using rexml 3.2.5197Using xml-simple 1.1.9198Using gitlab-license_finder 6.14.2.1199Using gitlab-markup 1.7.1200Using grpc-tools 1.42.0201Using sawyer 0.8.2202Using octokit 4.20.0203Using reverse_markdown 1.4.0204Using licensee 9.14.1205Using method_source 0.9.2206Using msgpack 1.3.3207Using optimist 3.0.1208Using parallel 1.19.2209Using parser 3.0.3.2210Using procto 0.0.3211Using unparser 0.4.7212Using proc_to_ast 0.1.0213Using pry 0.12.2214Using rainbow 3.0.0215Using rbtrace 0.4.14216Using rdoc 6.3.2217Using regexp_parser 1.8.1218Using rspec-support 3.8.0219Using rspec-core 3.8.0220Using rspec-expectations 3.8.3221Using rspec-mocks 3.8.0222Using rspec 3.8.0223Using rspec-parameterized 0.4.2224Using rubocop-ast 0.2.0225Using ruby-progressbar 1.10.1226Using unicode-display_width 1.7.0227Using rubocop 0.86.0228Using sentry-raven 3.0.4229Using timecop 0.9.1230Bundle complete! 22 Gemfile dependencies, 100 gems now installed.231Gems in the groups production and development were not installed.232Bundled gems are installed into `/builds/gitlab-org/gitlab/vendor/gitaly-ruby`233Checking gitaly-ruby Gemfile...234Checking gitaly-ruby bundle...235The Gemfile's dependencies are satisfied236Trying to connect to gitaly: .............................................. OK237Trying to connect to gitaly2: ............................................................. OK238Trying to connect to praefect: ......... OK239==> 'scripts/gitaly-test-spawn' succeeded in 13 seconds.240$ source ./scripts/rspec_helpers.sh241$ rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"242SKIP_FLAKY_TESTS_AUTOMATICALLY: true243RETRY_FAILED_TESTS_IN_NEW_PROCESS: true244KNAPSACK_GENERATE_REPORT: true245FLAKY_RSPEC_GENERATE_REPORT: true246KNAPSACK_TEST_FILE_PATTERN: spec/{bin,channels,config,db,dependencies,elastic,elastic_integration,experiments,events,factories,finders,frontend,graphql,haml_lint,helpers,initializers,javascripts,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,component}{,/**/}*_spec.rb247KNAPSACK_LOG_LEVEL: debug248KNAPSACK_REPORT_PATH: knapsack/rspec_unit_pg12_1_22_report.json249FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json250FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec_unit_pg12_1_22_report.json251NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec_unit_pg12_1_22_report.json252SKIPPED_FLAKY_TESTS_REPORT_PATH: rspec/flaky/skipped_flaky_tests_rspec_unit_pg12_1_22_report.txt253RETRIED_TESTS_REPORT_PATH: rspec/flaky/retried_tests_rspec_unit_pg12_1_22_report.txt254CRYSTALBALL: 255Knapsack node specs:256spec/lib/gitlab/import_export/project/tree_restorer_spec.rb257spec/models/members/project_member_spec.rb258spec/lib/gitlab/database/rename_reserved_paths_migration/v1/rename_base_spec.rb259spec/policies/global_policy_spec.rb260spec/finders/projects_finder_spec.rb261spec/finders/ci/pipelines_finder_spec.rb262spec/models/integrations/hangouts_chat_spec.rb263spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb264spec/bin/sidekiq_cluster_spec.rb265spec/services/environments/stop_service_spec.rb266spec/services/deployments/update_environment_service_spec.rb267spec/services/search_service_spec.rb268spec/policies/blob_policy_spec.rb269spec/lib/error_tracking/sentry_client/issue_spec.rb270spec/policies/namespace/root_storage_statistics_policy_spec.rb271spec/presenters/commit_status_presenter_spec.rb272spec/serializers/diffs_entity_spec.rb273spec/workers/packages/debian/process_changes_worker_spec.rb274spec/lib/gitlab/background_migration/copy_column_using_background_migration_job_spec.rb275spec/policies/group_member_policy_spec.rb276spec/services/clusters/kubernetes/create_or_update_namespace_service_spec.rb277spec/models/ci/legacy_stage_spec.rb278spec/services/projects/operations/update_service_spec.rb279spec/models/concerns/project_api_compatibility_spec.rb280spec/models/serverless/domain_cluster_spec.rb281spec/lib/gitlab/auth/ldap/dn_spec.rb282spec/lib/backup/manager_spec.rb283spec/graphql/mutations/releases/update_spec.rb284spec/models/commit_collection_spec.rb285spec/finders/cluster_ancestors_finder_spec.rb286spec/services/projects/update_pages_service_spec.rb287spec/lib/gitlab/database/rename_reserved_paths_migration/v1_spec.rb288spec/lib/banzai/filter/references/design_reference_filter_spec.rb289spec/services/projects/update_remote_mirror_service_spec.rb290spec/tooling/quality/test_level_spec.rb291spec/finders/ci/pipelines_for_merge_request_finder_spec.rb292spec/lib/banzai/filter/video_link_filter_spec.rb293spec/lib/gitlab/search_context/builder_spec.rb294spec/services/packages/npm/create_tag_service_spec.rb295spec/lib/gitlab/redis/rate_limiting_spec.rb296spec/workers/projects/after_import_worker_spec.rb297spec/lib/gitlab/redis/cache_spec.rb298spec/policies/user_policy_spec.rb299spec/lib/gitlab/metrics_spec.rb300spec/models/ci_platform_metric_spec.rb301spec/services/clusters/gcp/provision_service_spec.rb302spec/services/packages/maven/metadata/sync_service_spec.rb303spec/services/integrations/test/project_service_spec.rb304spec/models/ci/build_trace_chunks/database_spec.rb305spec/lib/gitlab/kubernetes/helm/pod_spec.rb306spec/lib/gitlab/sql/pattern_spec.rb307spec/lib/bulk_imports/common/pipelines/uploads_pipeline_spec.rb308spec/models/design_management/design_collection_spec.rb309spec/models/external_pull_request_spec.rb310spec/lib/gitlab/ci/badge/pipeline/metadata_spec.rb311spec/lib/event_filter_spec.rb312spec/lib/gitlab/background_migration/reset_duplicate_ci_runners_token_encrypted_values_on_projects_spec.rb313spec/services/clusters/build_kubernetes_namespace_service_spec.rb314spec/models/board_group_recent_visit_spec.rb315spec/services/bulk_imports/relation_export_service_spec.rb316spec/services/clusters/applications/update_service_spec.rb317spec/lib/gitlab/database/load_balancing/connection_proxy_spec.rb318spec/services/issues/resolve_discussions_spec.rb319spec/workers/concerns/reenqueuer_spec.rb320spec/lib/gitlab/ci/pipeline/chain/validate/abilities_spec.rb321spec/rack_servers/puma_spec.rb322spec/models/ci/unit_test_spec.rb323spec/lib/gitlab/github_import/importer/pull_request_review_importer_spec.rb324spec/services/merge_requests/resolved_discussion_notification_service_spec.rb325spec/services/projects/update_statistics_service_spec.rb326spec/workers/merge_requests/create_pipeline_worker_spec.rb327spec/lib/gitlab/zentao/client_spec.rb328spec/db/production/settings_spec.rb329spec/lib/gitlab/database/reindexing_spec.rb330spec/lib/gitlab/database/query_analyzer_spec.rb331spec/lib/banzai/filter/math_filter_spec.rb332spec/services/clusters/applications/destroy_service_spec.rb333spec/lib/gitlab/ci/jwt_spec.rb334spec/services/incident_management/pager_duty/create_incident_issue_service_spec.rb335spec/lib/gitlab/legacy_github_import/branch_formatter_spec.rb336spec/models/merge_request/metrics_spec.rb337spec/services/milestones/issues_count_service_spec.rb338spec/services/ci/create_pipeline_service/parameter_content_spec.rb339spec/lib/gitlab/database/query_analyzers/restrict_allowed_schemas_spec.rb340spec/lib/gitlab/error_tracking/context_payload_generator_spec.rb341spec/finders/clusters_finder_spec.rb342spec/uploaders/gitlab_uploader_spec.rb343spec/finders/packages/helm/package_files_finder_spec.rb344spec/helpers/snippets_helper_spec.rb345spec/lib/gitlab/auth/result_spec.rb346spec/models/concerns/schedulable_spec.rb347spec/serializers/deployment_cluster_entity_spec.rb348spec/lib/gitlab/kubernetes/helm/v3/install_command_spec.rb349spec/lib/banzai/reference_parser/milestone_parser_spec.rb350spec/services/ci/prepare_build_service_spec.rb351spec/presenters/web_hook_log_presenter_spec.rb352spec/lib/gitlab/sanitizers/exception_message_spec.rb353spec/models/project_custom_attribute_spec.rb354spec/helpers/hooks_helper_spec.rb355spec/helpers/notifications_helper_spec.rb356spec/lib/gitlab/kubernetes/helm/v3/base_command_spec.rb357spec/tooling/rspec_flaky/flaky_example_spec.rb358spec/services/groups/group_links/destroy_service_spec.rb359spec/services/lfs/push_service_spec.rb360spec/lib/gitlab/ci/status/build/action_spec.rb361spec/finders/freeze_periods_finder_spec.rb362spec/presenters/commit_presenter_spec.rb363spec/tasks/cache/clear/redis_spec.rb364spec/scripts/changed-feature-flags_spec.rb365spec/models/concerns/delete_with_limit_spec.rb366spec/rubocop/cop/rspec/be_success_matcher_spec.rb367spec/lib/sidebars/projects/menus/zentao_menu_spec.rb368spec/lib/gitlab/serverless/service_spec.rb369spec/services/ci/build_report_result_service_spec.rb370spec/lib/gitlab/usage/metric_spec.rb371spec/tasks/gitlab/background_migrations_rake_spec.rb372spec/lib/sidebars/projects/panel_spec.rb373spec/rubocop/cop/scalability/cron_worker_context_spec.rb374spec/lib/gitlab/ci/config/entry/services_spec.rb375spec/views/shared/wikis/_sidebar.html.haml_spec.rb376spec/lib/gitlab/ci/status/skipped_spec.rb377spec/lib/gitlab/sql/recursive_cte_spec.rb378spec/policies/ci/pipeline_schedule_policy_spec.rb379spec/validators/nested_attributes_duplicates_validator_spec.rb380spec/workers/hashed_storage/migrator_worker_spec.rb381spec/helpers/numbers_helper_spec.rb382spec/services/base_count_service_spec.rb383spec/views/shared/milestones/_issuable.html.haml_spec.rb384spec/services/update_merge_request_metrics_service_spec.rb385spec/lib/sidebars/projects/menus/learn_gitlab_menu_spec.rb386spec/services/ci/generate_terraform_reports_service_spec.rb387spec/rubocop/cop/gitlab/event_store_subscriber_spec.rb388spec/workers/propagate_integration_inherit_descendant_worker_spec.rb389spec/presenters/packages/nuget/search_results_presenter_spec.rb390spec/lib/sidebars/panel_spec.rb391spec/services/chat_names/authorize_user_service_spec.rb392spec/views/registrations/welcome/show.html.haml_spec.rb393spec/workers/every_sidekiq_worker_spec.rb394spec/workers/cluster_wait_for_app_update_worker_spec.rb395spec/lib/gitlab/ci/config/entry/product/variables_spec.rb396spec/lib/json_web_token/token_spec.rb397spec/views/projects/settings/ci_cd/_autodevops_form.html.haml_spec.rb398spec/services/ci/disable_user_pipeline_schedules_service_spec.rb399spec/lib/gitlab/github_import/representation/diff_notes/suggestion_formatter_spec.rb400spec/lib/gitlab/database/count/exact_count_strategy_spec.rb401spec/lib/gitlab/database/each_database_spec.rb402spec/models/pages/virtual_domain_spec.rb403spec/services/pages/delete_service_spec.rb404spec/services/dependency_proxy/find_cached_manifest_service_spec.rb405spec/lib/gitlab/import_export/repo_saver_spec.rb406spec/lib/gitlab/pagination/cursor_based_keyset_spec.rb407spec/finders/bulk_imports/entities_finder_spec.rb408spec/services/projects/container_repository/destroy_service_spec.rb409spec/lib/atlassian/jira_connect/serializers/repository_entity_spec.rb410spec/graphql/types/metadata_type_spec.rb411spec/services/ci/create_pipeline_service/creation_errors_and_warnings_spec.rb412spec/lib/gitlab/markdown_cache/redis/store_spec.rb413spec/lib/gitlab/middleware/query_analyzer_spec.rb414spec/graphql/types/tree/tree_type_spec.rb415spec/graphql/types/packages/helm/maintainer_type_spec.rb416spec/services/packages/rubygems/create_dependencies_service_spec.rb417spec/rubocop/cop/active_model_errors_direct_manipulation_spec.rb418spec/lib/gitlab/console_spec.rb419spec/tooling/rspec_flaky/report_spec.rb420spec/graphql/resolvers/ci/test_report_summary_resolver_spec.rb421spec/services/discussions/capture_diff_note_positions_service_spec.rb422spec/lib/gitlab/metrics/prometheus_spec.rb423spec/views/projects/clusters/clusters/gcp/_form.html.haml_spec.rb424spec/graphql/types/container_repository_cleanup_status_enum_spec.rb425spec/serializers/ci/trigger_serializer_spec.rb426spec/models/concerns/token_authenticatable_strategies/digest_spec.rb427spec/views/projects/hooks/index.html.haml_spec.rb428spec/lib/gitlab/file_markdown_link_builder_spec.rb429spec/models/project_export_job_spec.rb430spec/config/application_spec.rb431spec/graphql/resolvers/repository_branch_names_resolver_spec.rb432spec/lib/banzai/filter/inline_diff_filter_spec.rb433spec/lib/gitlab/usage_data/topology_spec.rb434spec/workers/authorized_project_update/user_refresh_from_replica_worker_spec.rb435spec/services/packages/mark_package_for_destruction_service_spec.rb436spec/lib/gitlab/database/reindexing/reindex_action_spec.rb437spec/serializers/issue_serializer_spec.rb438spec/services/ci/create_pipeline_service/artifacts_spec.rb439spec/lib/gitlab/usage_data_counters/web_ide_counter_spec.rb440spec/lib/gitlab/ci/templates/kaniko_gitlab_ci_yaml_spec.rb441spec/services/ci/create_pipeline_service/pre_post_stages_spec.rb442spec/rubocop/cop/scalability/bulk_perform_with_context_spec.rb443spec/lib/gitlab/metrics/dashboard/cache_spec.rb444spec/services/work_items/build_service_spec.rb445spec/models/import_failure_spec.rb446spec/models/user_mentions/issue_user_mention_spec.rb447spec/services/spam/akismet_mark_as_spam_service_spec.rb448spec/finders/packages/package_finder_spec.rb449spec/lib/gitlab/usage/metrics/instrumentations/count_users_associating_milestones_to_releases_metric_spec.rb450spec/lib/gitlab/email/service_desk_receiver_spec.rb451spec/models/user_mentions/snippet_user_mention_spec.rb452spec/workers/delete_user_worker_spec.rb453spec/lib/gitlab/graphql/known_operations_spec.rb454spec/lib/gitlab/import_export/decompressed_archive_size_validator_spec.rb455spec/services/merge_requests/mergeability/check_draft_status_service_spec.rb456spec/lib/constraints/jira_encoded_url_constrainer_spec.rb457spec/lib/gitlab/graphql/pagination/keyset/conditions/null_condition_spec.rb458spec/lib/bulk_imports/projects/graphql/get_repository_query_spec.rb459spec/rubocop/cop/api/base_spec.rb460spec/lib/api/every_api_endpoint_spec.rb461spec/lib/gitlab/config/entry/simplifiable_spec.rb462spec/lib/gitlab/checks/force_push_spec.rb463spec/models/concerns/case_sensitivity_spec.rb464spec/graphql/resolvers/user_resolver_spec.rb465spec/lib/gitlab/lazy_spec.rb466spec/graphql/resolvers/release_milestones_resolver_spec.rb467spec/lib/gitlab/graphql/negatable_arguments_spec.rb468spec/views/admin/application_settings/_eks.html.haml_spec.rb469spec/rubocop/cop/migration/migration_record_spec.rb470spec/serializers/diff_viewer_entity_spec.rb471spec/graphql/mutations/saved_replies/destroy_spec.rb472spec/graphql/resolvers/package_details_resolver_spec.rb473spec/services/ci/job_artifacts/delete_project_artifacts_service_spec.rb474spec/lib/gitlab/metrics/dashboard/validator/client_spec.rb475spec/serializers/runner_entity_spec.rb476spec/services/bulk_imports/uploads_export_service_spec.rb477spec/rubocop/cop/graphql/gid_expected_type_spec.rb478spec/lib/banzai/pipeline/email_pipeline_spec.rb479spec/lib/error_tracking/collector/sentry_auth_parser_spec.rb480spec/views/dashboard/projects/_blank_state_admin_welcome.haml_spec.rb481spec/graphql/types/projects/service_type_enum_spec.rb482spec/lib/gitlab/default_branch_spec.rb483spec/initializers/database_config_spec.rb484spec/lib/gitlab/cache_spec.rb485spec/lib/gitlab/kubernetes/kubeconfig/entry/cluster_spec.rb486spec/lib/banzai/filter/output_safety_spec.rb487spec/models/concerns/database_reflection_spec.rb488spec/db/development/create_base_work_item_types_spec.rb489spec/models/blob_viewer/podspec_json_spec.rb490spec/lib/gitlab/database/sha_attribute_spec.rb491spec/graphql/types/issue_state_enum_spec.rb492spec/graphql/types/dependency_proxy/manifest_type_spec.rb493spec/graphql/types/design_management/design_collection_type_spec.rb494spec/graphql/types/eventable_type_spec.rb495spec/graphql/types/ci/job_artifact_type_spec.rb496spec/lib/api/validations/validators/email_or_email_list_spec.rb497spec/workers/metrics/dashboard/schedule_annotations_prune_worker_spec.rb498spec/workers/concerns/pipeline_background_queue_spec.rb499spec/workers/ci_platform_metrics_update_cron_worker_spec.rb500spec/graphql/resolvers/metadata_resolver_spec.rb501spec/lib/banzai/filter/task_list_filter_spec.rb502spec/services/ide/schemas_config_service_spec.rb503Filter specs:504Running specs:505Running all node tests without filter506spec/lib/gitlab/import_export/project/tree_restorer_spec.rb507spec/models/members/project_member_spec.rb508spec/lib/gitlab/database/rename_reserved_paths_migration/v1/rename_base_spec.rb509spec/policies/global_policy_spec.rb510spec/finders/projects_finder_spec.rb511spec/finders/ci/pipelines_finder_spec.rb512spec/models/integrations/hangouts_chat_spec.rb513spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb514spec/bin/sidekiq_cluster_spec.rb515spec/services/environments/stop_service_spec.rb516spec/services/deployments/update_environment_service_spec.rb517spec/services/search_service_spec.rb518spec/policies/blob_policy_spec.rb519spec/lib/error_tracking/sentry_client/issue_spec.rb520spec/policies/namespace/root_storage_statistics_policy_spec.rb521spec/presenters/commit_status_presenter_spec.rb522spec/serializers/diffs_entity_spec.rb523spec/workers/packages/debian/process_changes_worker_spec.rb524spec/lib/gitlab/background_migration/copy_column_using_background_migration_job_spec.rb525spec/policies/group_member_policy_spec.rb526spec/services/clusters/kubernetes/create_or_update_namespace_service_spec.rb527spec/models/ci/legacy_stage_spec.rb528spec/services/projects/operations/update_service_spec.rb529spec/models/concerns/project_api_compatibility_spec.rb530spec/models/serverless/domain_cluster_spec.rb531spec/lib/gitlab/auth/ldap/dn_spec.rb532spec/lib/backup/manager_spec.rb533spec/graphql/mutations/releases/update_spec.rb534spec/models/commit_collection_spec.rb535spec/finders/cluster_ancestors_finder_spec.rb536spec/services/projects/update_pages_service_spec.rb537spec/lib/gitlab/database/rename_reserved_paths_migration/v1_spec.rb538spec/lib/banzai/filter/references/design_reference_filter_spec.rb539spec/services/projects/update_remote_mirror_service_spec.rb540spec/tooling/quality/test_level_spec.rb541spec/finders/ci/pipelines_for_merge_request_finder_spec.rb542spec/lib/banzai/filter/video_link_filter_spec.rb543spec/lib/gitlab/search_context/builder_spec.rb544spec/services/packages/npm/create_tag_service_spec.rb545spec/lib/gitlab/redis/rate_limiting_spec.rb546spec/workers/projects/after_import_worker_spec.rb547spec/lib/gitlab/redis/cache_spec.rb548spec/policies/user_policy_spec.rb549spec/lib/gitlab/metrics_spec.rb550spec/models/ci_platform_metric_spec.rb551spec/services/clusters/gcp/provision_service_spec.rb552spec/services/packages/maven/metadata/sync_service_spec.rb553spec/services/integrations/test/project_service_spec.rb554spec/models/ci/build_trace_chunks/database_spec.rb555spec/lib/gitlab/kubernetes/helm/pod_spec.rb556spec/lib/gitlab/sql/pattern_spec.rb557spec/lib/bulk_imports/common/pipelines/uploads_pipeline_spec.rb558spec/models/design_management/design_collection_spec.rb559spec/models/external_pull_request_spec.rb560spec/lib/gitlab/ci/badge/pipeline/metadata_spec.rb561spec/lib/event_filter_spec.rb562spec/lib/gitlab/background_migration/reset_duplicate_ci_runners_token_encrypted_values_on_projects_spec.rb563spec/services/clusters/build_kubernetes_namespace_service_spec.rb564spec/models/board_group_recent_visit_spec.rb565spec/services/bulk_imports/relation_export_service_spec.rb566spec/services/clusters/applications/update_service_spec.rb567spec/lib/gitlab/database/load_balancing/connection_proxy_spec.rb568spec/services/issues/resolve_discussions_spec.rb569spec/workers/concerns/reenqueuer_spec.rb570spec/lib/gitlab/ci/pipeline/chain/validate/abilities_spec.rb571spec/rack_servers/puma_spec.rb572spec/models/ci/unit_test_spec.rb573spec/lib/gitlab/github_import/importer/pull_request_review_importer_spec.rb574spec/services/merge_requests/resolved_discussion_notification_service_spec.rb575spec/services/projects/update_statistics_service_spec.rb576spec/workers/merge_requests/create_pipeline_worker_spec.rb577spec/lib/gitlab/zentao/client_spec.rb578spec/db/production/settings_spec.rb579spec/lib/gitlab/database/reindexing_spec.rb580spec/lib/gitlab/database/query_analyzer_spec.rb581spec/lib/banzai/filter/math_filter_spec.rb582spec/services/clusters/applications/destroy_service_spec.rb583spec/lib/gitlab/ci/jwt_spec.rb584spec/services/incident_management/pager_duty/create_incident_issue_service_spec.rb585spec/lib/gitlab/legacy_github_import/branch_formatter_spec.rb586spec/models/merge_request/metrics_spec.rb587spec/services/milestones/issues_count_service_spec.rb588spec/services/ci/create_pipeline_service/parameter_content_spec.rb589spec/lib/gitlab/database/query_analyzers/restrict_allowed_schemas_spec.rb590spec/lib/gitlab/error_tracking/context_payload_generator_spec.rb591spec/finders/clusters_finder_spec.rb592spec/uploaders/gitlab_uploader_spec.rb593spec/finders/packages/helm/package_files_finder_spec.rb594spec/helpers/snippets_helper_spec.rb595spec/lib/gitlab/auth/result_spec.rb596spec/models/concerns/schedulable_spec.rb597spec/serializers/deployment_cluster_entity_spec.rb598spec/lib/gitlab/kubernetes/helm/v3/install_command_spec.rb599spec/lib/banzai/reference_parser/milestone_parser_spec.rb600spec/services/ci/prepare_build_service_spec.rb601spec/presenters/web_hook_log_presenter_spec.rb602spec/lib/gitlab/sanitizers/exception_message_spec.rb603spec/models/project_custom_attribute_spec.rb604spec/helpers/hooks_helper_spec.rb605spec/helpers/notifications_helper_spec.rb606spec/lib/gitlab/kubernetes/helm/v3/base_command_spec.rb607spec/tooling/rspec_flaky/flaky_example_spec.rb608spec/services/groups/group_links/destroy_service_spec.rb609spec/services/lfs/push_service_spec.rb610spec/lib/gitlab/ci/status/build/action_spec.rb611spec/finders/freeze_periods_finder_spec.rb612spec/presenters/commit_presenter_spec.rb613spec/tasks/cache/clear/redis_spec.rb614spec/scripts/changed-feature-flags_spec.rb615spec/models/concerns/delete_with_limit_spec.rb616spec/rubocop/cop/rspec/be_success_matcher_spec.rb617spec/lib/sidebars/projects/menus/zentao_menu_spec.rb618spec/lib/gitlab/serverless/service_spec.rb619spec/services/ci/build_report_result_service_spec.rb620spec/lib/gitlab/usage/metric_spec.rb621spec/tasks/gitlab/background_migrations_rake_spec.rb622spec/lib/sidebars/projects/panel_spec.rb623spec/rubocop/cop/scalability/cron_worker_context_spec.rb624spec/lib/gitlab/ci/config/entry/services_spec.rb625spec/views/shared/wikis/_sidebar.html.haml_spec.rb626spec/lib/gitlab/ci/status/skipped_spec.rb627spec/lib/gitlab/sql/recursive_cte_spec.rb628spec/policies/ci/pipeline_schedule_policy_spec.rb629spec/validators/nested_attributes_duplicates_validator_spec.rb630spec/workers/hashed_storage/migrator_worker_spec.rb631spec/helpers/numbers_helper_spec.rb632spec/services/base_count_service_spec.rb633spec/views/shared/milestones/_issuable.html.haml_spec.rb634spec/services/update_merge_request_metrics_service_spec.rb635spec/lib/sidebars/projects/menus/learn_gitlab_menu_spec.rb636spec/services/ci/generate_terraform_reports_service_spec.rb637spec/rubocop/cop/gitlab/event_store_subscriber_spec.rb638spec/workers/propagate_integration_inherit_descendant_worker_spec.rb639spec/presenters/packages/nuget/search_results_presenter_spec.rb640spec/lib/sidebars/panel_spec.rb641spec/services/chat_names/authorize_user_service_spec.rb642spec/views/registrations/welcome/show.html.haml_spec.rb643spec/workers/every_sidekiq_worker_spec.rb644spec/workers/cluster_wait_for_app_update_worker_spec.rb645spec/lib/gitlab/ci/config/entry/product/variables_spec.rb646spec/lib/json_web_token/token_spec.rb647spec/views/projects/settings/ci_cd/_autodevops_form.html.haml_spec.rb648spec/services/ci/disable_user_pipeline_schedules_service_spec.rb649spec/lib/gitlab/github_import/representation/diff_notes/suggestion_formatter_spec.rb650spec/lib/gitlab/database/count/exact_count_strategy_spec.rb651spec/lib/gitlab/database/each_database_spec.rb652spec/models/pages/virtual_domain_spec.rb653spec/services/pages/delete_service_spec.rb654spec/services/dependency_proxy/find_cached_manifest_service_spec.rb655spec/lib/gitlab/import_export/repo_saver_spec.rb656spec/lib/gitlab/pagination/cursor_based_keyset_spec.rb657spec/finders/bulk_imports/entities_finder_spec.rb658spec/services/projects/container_repository/destroy_service_spec.rb659spec/lib/atlassian/jira_connect/serializers/repository_entity_spec.rb660spec/graphql/types/metadata_type_spec.rb661spec/services/ci/create_pipeline_service/creation_errors_and_warnings_spec.rb662spec/lib/gitlab/markdown_cache/redis/store_spec.rb663spec/lib/gitlab/middleware/query_analyzer_spec.rb664spec/graphql/types/tree/tree_type_spec.rb665spec/graphql/types/packages/helm/maintainer_type_spec.rb666spec/services/packages/rubygems/create_dependencies_service_spec.rb667spec/rubocop/cop/active_model_errors_direct_manipulation_spec.rb668spec/lib/gitlab/console_spec.rb669spec/tooling/rspec_flaky/report_spec.rb670spec/graphql/resolvers/ci/test_report_summary_resolver_spec.rb671spec/services/discussions/capture_diff_note_positions_service_spec.rb672spec/lib/gitlab/metrics/prometheus_spec.rb673spec/views/projects/clusters/clusters/gcp/_form.html.haml_spec.rb674spec/graphql/types/container_repository_cleanup_status_enum_spec.rb675spec/serializers/ci/trigger_serializer_spec.rb676spec/models/concerns/token_authenticatable_strategies/digest_spec.rb677spec/views/projects/hooks/index.html.haml_spec.rb678spec/lib/gitlab/file_markdown_link_builder_spec.rb679spec/models/project_export_job_spec.rb680spec/config/application_spec.rb681spec/graphql/resolvers/repository_branch_names_resolver_spec.rb682spec/lib/banzai/filter/inline_diff_filter_spec.rb683spec/lib/gitlab/usage_data/topology_spec.rb684spec/workers/authorized_project_update/user_refresh_from_replica_worker_spec.rb685spec/services/packages/mark_package_for_destruction_service_spec.rb686spec/lib/gitlab/database/reindexing/reindex_action_spec.rb687spec/serializers/issue_serializer_spec.rb688spec/services/ci/create_pipeline_service/artifacts_spec.rb689spec/lib/gitlab/usage_data_counters/web_ide_counter_spec.rb690spec/lib/gitlab/ci/templates/kaniko_gitlab_ci_yaml_spec.rb691spec/services/ci/create_pipeline_service/pre_post_stages_spec.rb692spec/rubocop/cop/scalability/bulk_perform_with_context_spec.rb693spec/lib/gitlab/metrics/dashboard/cache_spec.rb694spec/services/work_items/build_service_spec.rb695spec/models/import_failure_spec.rb696spec/models/user_mentions/issue_user_mention_spec.rb697spec/services/spam/akismet_mark_as_spam_service_spec.rb698spec/finders/packages/package_finder_spec.rb699spec/lib/gitlab/usage/metrics/instrumentations/count_users_associating_milestones_to_releases_metric_spec.rb700spec/lib/gitlab/email/service_desk_receiver_spec.rb701spec/models/user_mentions/snippet_user_mention_spec.rb702spec/workers/delete_user_worker_spec.rb703spec/lib/gitlab/graphql/known_operations_spec.rb704spec/lib/gitlab/import_export/decompressed_archive_size_validator_spec.rb705spec/services/merge_requests/mergeability/check_draft_status_service_spec.rb706spec/lib/constraints/jira_encoded_url_constrainer_spec.rb707spec/lib/gitlab/graphql/pagination/keyset/conditions/null_condition_spec.rb708spec/lib/bulk_imports/projects/graphql/get_repository_query_spec.rb709spec/rubocop/cop/api/base_spec.rb710spec/lib/api/every_api_endpoint_spec.rb711spec/lib/gitlab/config/entry/simplifiable_spec.rb712spec/lib/gitlab/checks/force_push_spec.rb713spec/models/concerns/case_sensitivity_spec.rb714spec/graphql/resolvers/user_resolver_spec.rb715spec/lib/gitlab/lazy_spec.rb716spec/graphql/resolvers/release_milestones_resolver_spec.rb717spec/lib/gitlab/graphql/negatable_arguments_spec.rb718spec/views/admin/application_settings/_eks.html.haml_spec.rb719spec/rubocop/cop/migration/migration_record_spec.rb720spec/serializers/diff_viewer_entity_spec.rb721spec/graphql/mutations/saved_replies/destroy_spec.rb722spec/graphql/resolvers/package_details_resolver_spec.rb723spec/services/ci/job_artifacts/delete_project_artifacts_service_spec.rb724spec/lib/gitlab/metrics/dashboard/validator/client_spec.rb725spec/serializers/runner_entity_spec.rb726spec/services/bulk_imports/uploads_export_service_spec.rb727spec/rubocop/cop/graphql/gid_expected_type_spec.rb728spec/lib/banzai/pipeline/email_pipeline_spec.rbKnapsack report generator started!729DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from connected? at ee/lib/gitlab/geo.rb:79)730DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from block in <module:HasVariable> at app/models/concerns/ci/has_variable.rb:22)731DEPRECATION WARNING: Database connection should not be called during initializers. Read more at https://docs.gitlab.com/ee/development/rails_initializers.html#database-connections-in-initializers (called from exists? at lib/gitlab/database/reflection.rb:94)732Run options: exclude {:quarantine=>true, :geo=>true, :level=>"migration"}733==> /builds/gitlab-org/gitlab/tmp/tests/gitlab-test_bare set up in 0.061211856 seconds...734Test environment set up in 0.726528384 seconds735Gitlab::ImportExport::Project::TreeRestorer736 when import_relation_object_persistence feature flag is enabled737 enable ndjson import738 behaves like project tree restorer work properly739 restore project tree740 JSON741 restores models based on JSON742 restore correct project features743 has the project description744 has the same label associated to two issues745 has milestones associated to two separate issues746 creates a valid pipeline note747 pipeline has the correct user ID748 restores pipelines with missing ref749 restores pipeline for merge request750 restores pipelines based on ascending id order751 preserves updated_at on issues752 has multiple issue assignees753 restores timelogs for issues754 contains the merge access levels on a protected branch755 contains the push access levels on a protected branch756 contains the create access levels on a protected tag757 restores issue resource label events758 restores merge requests resource label events759 restores suggestion760 has the correct data for merge request diff files761 has the correct data for merge request diff commits762 assigns committer and author details to all diff commits763 assigns the correct commit users to different diff commits764 has the correct data for merge request latest_merge_request_diff765 has labels associated to label links, associated to issues766 has project labels767 has no group labels768 has issue boards769 has lists associated with the issue board770 has a project feature771 has custom attributes772 has badges773 has snippets774 has award emoji for a snippet775 snippet has notes776 snippet has award emojis on notes777 restores `ci_cd_settings` : `group_runners_enabled` setting778 restores `auto_devops`779 restores zoom meetings780 restores sentry issues781 has award emoji for an issue782 has award emoji for a note in an issue783 restores container_expiration_policy784 restores error_tracking_setting785 restores external pull requests786 restores pipeline schedules787 restores releases with links & milestones788 when importing a project with cached_markdown_version and note_html789 for an Issue790 does not import note_html791 for a Merge Request792 does not import note_html793 merge request system note metadata794 restores title action for unmark wip795 restores commit action and commit count for pushing 3 commits796 event at forth level of the tree797 restores the event798 has the action799 event belongs to note, belongs to merge request, belongs to a project800 Merge requests801 always has the new project as a target802 has the same source project as originally if source/target are the same803 has the new project as target if source/target differ804 has no source if source/target differ805 has award emoji806 notes807 has award emoji808 tokens are regenerated809 has new CI trigger tokens810 has a new CI build token811 has restored the correct number of records812 has the correct number of merge requests813 does not restore triggers814 has the correct number of pipelines and statuses815 when restoring hierarchy of pipeline, stages and jobs816 restores pipelines817 restores pipeline stages818 correctly restores association between stage and a pipeline819 restores statuses820 correctly restores association between a stage and a job821 correctly restores association between a pipeline and a job822 restores a Hash for CommitStatus options823 restores external pull request for the restored pipeline824 has no import failures825 project.json file access check826 does not read a symlink827 Light JSON828 with a simple project829 issue system note metadata restored successfully830 when there is an existing build with build token831 behaves like restores project successfully832 restores the project833 has labels834 has label priorities835 has milestones836 has issues837 has ci pipelines838 has external pull requests839 does not set params that are excluded from import_export settings840 records exact number of import failures841 when there is an existing build with build token842 behaves like restores project successfully843 restores the project844 has labels845 has label priorities846 has milestones847 has issues848 has ci pipelines849 has external pull requests850 does not set params that are excluded from import_export settings851 records exact number of import failures852 multiple pipelines reference the same external pull request853 restores external pull request for the restored pipelines854 behaves like restores project successfully855 restores the project856 has labels857 has label priorities858 has milestones859 has issues860 has ci pipelines861 has external pull requests862 does not set params that are excluded from import_export settings863 records exact number of import failures864 when post import action throw non-retriable exception865 report post import error866 when post import action throw retriable exception one time867 records the failures in the database868 behaves like restores project successfully869 restores the project870 has labels871 has label priorities872 has milestones873 has issues874 has ci pipelines875 has external pull requests876 does not set params that are excluded from import_export settings877 records exact number of import failures878 when the project has overridden params in import data879 handles string versions of visibility_level880 overwrites the params stored in the JSON881 does not allow setting params that are excluded from import_export settings882 overrides project feature access levels883 with a project that has a group884 restores issue states885 behaves like restores project successfully886 restores the project887 has labels888 has label priorities889 has milestones890 has issues891 has ci pipelines892 has external pull requests893 does not set params that are excluded from import_export settings894 records exact number of import failures895 behaves like restores group correctly896 has group label897 has group milestone898 has the correct visibility level899 with existing group models900 imports labels901 imports milestones902 with clashing milestones on IID903 preserves the project milestone IID904 with external authorization classification labels905 converts empty external classification authorization labels to nil906 preserves valid external classification authorization labels907 Minimal JSON908 no group visibility909 uses the project visibility910 with restricted internal visibility911 internal project912 uses private visibility913 with group visibility914 private group visibility915 uses the group visibility916 public group visibility917 uses the project visibility918 internal group visibility919 uses the group visibility920 with restricted internal visibility921 sets private visibility922 with project members923 restores project members924 JSON with invalid records925 when failures occur because a relation fails to be processed926 records the failures in the database927 behaves like restores project successfully928 restores the project929 has labels930 has label priorities931 has milestones932 has issues933 has ci pipelines934 has external pull requests935 does not set params that are excluded from import_export settings936 records exact number of import failures937 JSON with design management data938 restores project associations correctly939 behaves like restores project successfully940 restores the project941 has labels942 has label priorities943 has milestones944 has issues945 has ci pipelines946 has external pull requests947 does not set params that are excluded from import_export settings948 records exact number of import failures949 restores issue associations correctly950 index: 0, design_filenames: ["chirrido3.jpg", "jonathan_richman.jpg", "mariavontrap.jpeg"], version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"], events: ["creation", "creation", "creation", "modification", "modification", "deletion"], author_emails: ["user_1@gitlabexample.com", "user_1@gitlabexample.com", "user_2@gitlabexample.com"]951 is expected to contain exactly "user_1@gitlabexample.com", "user_1@gitlabexample.com", and "user_2@gitlabexample.com"952 index: 1, design_filenames: ["1 (1).jpeg", "2099743.jpg", "a screenshot (1).jpg", "chirrido3.jpg"], version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"], events: ["creation", "creation", "creation", "creation", "modification"], author_emails: ["user_1@gitlabexample.com", "user_2@gitlabexample.com", "user_2@gitlabexample.com"]953 is expected to contain exactly "user_1@gitlabexample.com", "user_2@gitlabexample.com", and "user_2@gitlabexample.com"954 restores design version associations correctly955 index: 0, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]956 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4" and "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"957 index: 1, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4"]958 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4"959 index: 2, version_shas: ["c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]960 is expected to contain exactly "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"961 index: 3, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]962 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"963 index: 4, version_shas: ["8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"]964 is expected to contain exactly "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"965 index: 5, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]966 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85" and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"967 index: 6, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85"]968 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85"969 behaves like project tree restorer work properly970 restore project tree971 JSON972 restores models based on JSON973 restore correct project features974 has the project description975 has the same label associated to two issues976 has milestones associated to two separate issues977 creates a valid pipeline note978 pipeline has the correct user ID979 restores pipelines with missing ref980 restores pipeline for merge request981 restores pipelines based on ascending id order982 preserves updated_at on issues983 has multiple issue assignees984 restores timelogs for issues985 contains the merge access levels on a protected branch986 contains the push access levels on a protected branch987 contains the create access levels on a protected tag988 restores issue resource label events989 restores merge requests resource label events990 restores suggestion991 has the correct data for merge request diff files992 has the correct data for merge request diff commits993 assigns committer and author details to all diff commits994 assigns the correct commit users to different diff commits995 has the correct data for merge request latest_merge_request_diff996 has labels associated to label links, associated to issues997 has project labels998 has no group labels999 has issue boards1000 has lists associated with the issue board1001 has a project feature1002 has custom attributes1003 has badges1004 has snippets1005 has award emoji for a snippet1006 snippet has notes1007 snippet has award emojis on notes1008 restores `ci_cd_settings` : `group_runners_enabled` setting1009 restores `auto_devops`1010 restores zoom meetings1011 restores sentry issues1012 has award emoji for an issue1013 has award emoji for a note in an issue1014 restores container_expiration_policy1015 restores error_tracking_setting1016 restores external pull requests1017 restores pipeline schedules1018 restores releases with links & milestones1019 when importing a project with cached_markdown_version and note_html1020 for an Issue1021 does not import note_html1022 for a Merge Request1023 does not import note_html1024 merge request system note metadata1025 restores title action for unmark wip1026 restores commit action and commit count for pushing 3 commits1027 event at forth level of the tree1028 restores the event1029 has the action1030 event belongs to note, belongs to merge request, belongs to a project1031 Merge requests1032 always has the new project as a target1033 has the same source project as originally if source/target are the same1034 has the new project as target if source/target differ1035 has no source if source/target differ1036 has award emoji1037 notes1038 has award emoji1039 tokens are regenerated1040 has new CI trigger tokens1041 has a new CI build token1042 has restored the correct number of records1043 has the correct number of merge requests1044 does not restore triggers1045 has the correct number of pipelines and statuses1046 when restoring hierarchy of pipeline, stages and jobs1047 restores pipelines1048 restores pipeline stages1049 correctly restores association between stage and a pipeline1050 restores statuses1051 correctly restores association between a stage and a job1052 correctly restores association between a pipeline and a job1053 restores a Hash for CommitStatus options1054 restores external pull request for the restored pipeline1055 has no import failures1056 project.json file access check1057 does not read a symlink1058 Light JSON1059 with a simple project1060 issue system note metadata restored successfully1061 when there is an existing build with build token1062 behaves like restores project successfully1063 restores the project1064 has labels1065 has label priorities1066 has milestones1067 has issues1068 has ci pipelines1069 has external pull requests1070 does not set params that are excluded from import_export settings1071 records exact number of import failures1072 when there is an existing build with build token1073 behaves like restores project successfully1074 restores the project1075 has labels1076 has label priorities1077 has milestones1078 has issues1079 has ci pipelines1080 has external pull requests1081 does not set params that are excluded from import_export settings1082 records exact number of import failures1083 multiple pipelines reference the same external pull request1084 restores external pull request for the restored pipelines1085 behaves like restores project successfully1086 restores the project1087 has labels1088 has label priorities1089 has milestones1090 has issues1091 has ci pipelines1092 has external pull requests1093 does not set params that are excluded from import_export settings1094 records exact number of import failures1095 when post import action throw non-retriable exception1096 report post import error1097 when post import action throw retriable exception one time1098 records the failures in the database1099 behaves like restores project successfully1100 restores the project1101 has labels1102 has label priorities1103 has milestones1104 has issues1105 has ci pipelines1106 has external pull requests1107 does not set params that are excluded from import_export settings1108 records exact number of import failures1109 when the project has overridden params in import data1110 handles string versions of visibility_level1111 overwrites the params stored in the JSON1112 does not allow setting params that are excluded from import_export settings1113 overrides project feature access levels1114 with a project that has a group1115 restores issue states1116 behaves like restores project successfully1117 restores the project1118 has labels1119 has label priorities1120 has milestones1121 has issues1122 has ci pipelines1123 has external pull requests1124 does not set params that are excluded from import_export settings1125 records exact number of import failures1126 behaves like restores group correctly1127 has group label1128 has group milestone1129 has the correct visibility level1130 with existing group models1131 imports labels1132 imports milestones1133 with clashing milestones on IID1134 preserves the project milestone IID1135 with external authorization classification labels1136 converts empty external classification authorization labels to nil1137 preserves valid external classification authorization labels1138 Minimal JSON1139 no group visibility1140 uses the project visibility1141 with restricted internal visibility1142 internal project1143 uses private visibility1144 with group visibility1145 private group visibility1146 uses the group visibility1147 public group visibility1148 uses the project visibility1149 internal group visibility1150 uses the group visibility1151 with restricted internal visibility1152 sets private visibility1153 with project members1154 restores project members1155 JSON with invalid records1156 when failures occur because a relation fails to be processed1157 records the failures in the database1158 behaves like restores project successfully1159 restores the project1160 has labels1161 has label priorities1162 has milestones1163 has issues1164 has ci pipelines1165 has external pull requests1166 does not set params that are excluded from import_export settings1167 records exact number of import failures1168 JSON with design management data1169 restores project associations correctly1170 behaves like restores project successfully1171 restores the project1172 has labels1173 has label priorities1174 has milestones1175 has issues1176 has ci pipelines1177 has external pull requests1178 does not set params that are excluded from import_export settings1179 records exact number of import failures1180 restores issue associations correctly1181 index: 0, design_filenames: ["chirrido3.jpg", "jonathan_richman.jpg", "mariavontrap.jpeg"], version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"], events: ["creation", "creation", "creation", "modification", "modification", "deletion"], author_emails: ["user_1@gitlabexample.com", "user_1@gitlabexample.com", "user_2@gitlabexample.com"]1182 is expected to contain exactly "user_1@gitlabexample.com", "user_1@gitlabexample.com", and "user_2@gitlabexample.com"1183 index: 1, design_filenames: ["1 (1).jpeg", "2099743.jpg", "a screenshot (1).jpg", "chirrido3.jpg"], version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"], events: ["creation", "creation", "creation", "creation", "modification"], author_emails: ["user_1@gitlabexample.com", "user_2@gitlabexample.com", "user_2@gitlabexample.com"]1184 is expected to contain exactly "user_1@gitlabexample.com", "user_2@gitlabexample.com", and "user_2@gitlabexample.com"1185 restores design version associations correctly1186 index: 0, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1187 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4" and "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1188 index: 1, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4"]1189 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4"1190 index: 2, version_shas: ["c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1191 is expected to contain exactly "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1192 index: 3, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1193 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1194 index: 4, version_shas: ["8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"]1195 is expected to contain exactly "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"1196 index: 5, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1197 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85" and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1198 index: 6, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85"]1199 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85"1200 disable ndjson import1201 behaves like project tree restorer work properly1202 restore project tree1203 JSON1204 restores models based on JSON1205 restore correct project features1206 has the project description1207 has the same label associated to two issues1208 has milestones associated to two separate issues1209 creates a valid pipeline note1210 pipeline has the correct user ID1211 restores pipelines with missing ref1212 restores pipeline for merge request1213 restores pipelines based on ascending id order1214 preserves updated_at on issues1215 has multiple issue assignees1216 restores timelogs for issues1217 contains the merge access levels on a protected branch1218 contains the push access levels on a protected branch1219 contains the create access levels on a protected tag1220 restores issue resource label events1221 restores merge requests resource label events1222 restores suggestion1223 has the correct data for merge request diff files1224 has the correct data for merge request diff commits1225 assigns committer and author details to all diff commits1226 assigns the correct commit users to different diff commits1227 has the correct data for merge request latest_merge_request_diff1228 has labels associated to label links, associated to issues1229 has project labels1230 has no group labels1231 has issue boards1232 has lists associated with the issue board1233 has a project feature1234 has custom attributes1235 has badges1236 has snippets1237 has award emoji for a snippet1238 snippet has notes1239 snippet has award emojis on notes1240 restores `ci_cd_settings` : `group_runners_enabled` setting1241 restores `auto_devops`1242 restores zoom meetings1243 restores sentry issues1244 has award emoji for an issue1245 has award emoji for a note in an issue1246 restores container_expiration_policy1247 restores error_tracking_setting1248 restores external pull requests1249 restores pipeline schedules1250 restores releases with links & milestones1251 when importing a project with cached_markdown_version and note_html1252 for an Issue1253 does not import note_html1254 for a Merge Request1255 does not import note_html1256 merge request system note metadata1257 restores title action for unmark wip1258 restores commit action and commit count for pushing 3 commits1259 event at forth level of the tree1260 restores the event1261 has the action1262 event belongs to note, belongs to merge request, belongs to a project1263 Merge requests1264 always has the new project as a target1265 has the same source project as originally if source/target are the same1266 has the new project as target if source/target differ1267 has no source if source/target differ1268 has award emoji1269 notes1270 has award emoji1271 tokens are regenerated1272 has new CI trigger tokens1273 has a new CI build token1274 has restored the correct number of records1275 has the correct number of merge requests1276 does not restore triggers1277 has the correct number of pipelines and statuses1278 when restoring hierarchy of pipeline, stages and jobs1279 restores pipelines1280 restores pipeline stages1281 correctly restores association between stage and a pipeline1282 restores statuses1283 correctly restores association between a stage and a job1284 correctly restores association between a pipeline and a job1285 restores a Hash for CommitStatus options1286 restores external pull request for the restored pipeline1287 has no import failures1288 project.json file access check1289 does not read a symlink1290 Light JSON1291 with a simple project1292 issue system note metadata restored successfully1293 when there is an existing build with build token1294 behaves like restores project successfully1295 restores the project1296 has labels1297 has label priorities1298 has milestones1299 has issues1300 has ci pipelines1301 has external pull requests1302 does not set params that are excluded from import_export settings1303 records exact number of import failures1304 when there is an existing build with build token1305 behaves like restores project successfully1306 restores the project1307 has labels1308 has label priorities1309 has milestones1310 has issues1311 has ci pipelines1312 has external pull requests1313 does not set params that are excluded from import_export settings1314 records exact number of import failures1315 multiple pipelines reference the same external pull request1316 restores external pull request for the restored pipelines1317 behaves like restores project successfully1318 restores the project1319 has labels1320 has label priorities1321 has milestones1322 has issues1323 has ci pipelines1324 has external pull requests1325 does not set params that are excluded from import_export settings1326 records exact number of import failures1327 when post import action throw non-retriable exception1328 report post import error1329 when post import action throw retriable exception one time1330 records the failures in the database1331 behaves like restores project successfully1332 restores the project1333 has labels1334 has label priorities1335 has milestones1336 has issues1337 has ci pipelines1338 has external pull requests1339 does not set params that are excluded from import_export settings1340 records exact number of import failures1341 when the project has overridden params in import data1342 handles string versions of visibility_level1343 overwrites the params stored in the JSON1344 does not allow setting params that are excluded from import_export settings1345 overrides project feature access levels1346 with a project that has a group1347 restores issue states1348 behaves like restores project successfully1349 restores the project1350 has labels1351 has label priorities1352 has milestones1353 has issues1354 has ci pipelines1355 has external pull requests1356 does not set params that are excluded from import_export settings1357 records exact number of import failures1358 behaves like restores group correctly1359 has group label1360 has group milestone1361 has the correct visibility level1362 with existing group models1363 imports labels1364 imports milestones1365 with clashing milestones on IID1366 preserves the project milestone IID1367 with external authorization classification labels1368 converts empty external classification authorization labels to nil1369 preserves valid external classification authorization labels1370 Minimal JSON1371 no group visibility1372 uses the project visibility1373 with restricted internal visibility1374 internal project1375 uses private visibility1376 with group visibility1377 private group visibility1378 uses the group visibility1379 public group visibility1380 uses the project visibility1381 internal group visibility1382 uses the group visibility1383 with restricted internal visibility1384 sets private visibility1385 with project members1386 restores project members1387 JSON with invalid records1388 when failures occur because a relation fails to be processed1389 records the failures in the database1390 behaves like restores project successfully1391 restores the project1392 has labels1393 has label priorities1394 has milestones1395 has issues1396 has ci pipelines1397 has external pull requests1398 does not set params that are excluded from import_export settings1399 records exact number of import failures1400 JSON with design management data1401 restores project associations correctly1402 behaves like restores project successfully1403 restores the project1404 has labels1405 has label priorities1406 has milestones1407 has issues1408 has ci pipelines1409 has external pull requests1410 does not set params that are excluded from import_export settings1411 records exact number of import failures1412 restores issue associations correctly1413 index: 0, design_filenames: ["chirrido3.jpg", "jonathan_richman.jpg", "mariavontrap.jpeg"], version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"], events: ["creation", "creation", "creation", "modification", "modification", "deletion"], author_emails: ["user_1@gitlabexample.com", "user_1@gitlabexample.com", "user_2@gitlabexample.com"]1414 is expected to contain exactly "user_1@gitlabexample.com", "user_1@gitlabexample.com", and "user_2@gitlabexample.com"1415 index: 1, design_filenames: ["1 (1).jpeg", "2099743.jpg", "a screenshot (1).jpg", "chirrido3.jpg"], version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"], events: ["creation", "creation", "creation", "creation", "modification"], author_emails: ["user_1@gitlabexample.com", "user_2@gitlabexample.com", "user_2@gitlabexample.com"]1416 is expected to contain exactly "user_1@gitlabexample.com", "user_2@gitlabexample.com", and "user_2@gitlabexample.com"1417 restores design version associations correctly1418 index: 0, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1419 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4" and "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1420 index: 1, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4"]1421 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4"1422 index: 2, version_shas: ["c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1423 is expected to contain exactly "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1424 index: 3, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1425 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1426 index: 4, version_shas: ["8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"]1427 is expected to contain exactly "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"1428 index: 5, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1429 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85" and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1430 index: 6, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85"]1431 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85"1432 when import_relation_object_persistence feature flag is disabled1433 enable ndjson import1434 behaves like project tree restorer work properly1435 restore project tree1436 JSON1437 restores models based on JSON1438 restore correct project features1439 has the project description1440 has the same label associated to two issues1441 has milestones associated to two separate issues1442 creates a valid pipeline note1443 pipeline has the correct user ID1444 restores pipelines with missing ref1445 restores pipeline for merge request1446 restores pipelines based on ascending id order1447 preserves updated_at on issues1448 has multiple issue assignees1449 restores timelogs for issues1450 contains the merge access levels on a protected branch1451 contains the push access levels on a protected branch1452 contains the create access levels on a protected tag1453 restores issue resource label events1454 restores merge requests resource label events1455 restores suggestion1456 has the correct data for merge request diff files1457 has the correct data for merge request diff commits1458 assigns committer and author details to all diff commits1459 assigns the correct commit users to different diff commits1460 has the correct data for merge request latest_merge_request_diff1461 has labels associated to label links, associated to issues1462 has project labels1463 has no group labels1464 has issue boards1465 has lists associated with the issue board1466 has a project feature1467 has custom attributes1468 has badges1469 has snippets1470 has award emoji for a snippet1471 snippet has notes1472 snippet has award emojis on notes1473 restores `ci_cd_settings` : `group_runners_enabled` setting1474 restores `auto_devops`1475 restores zoom meetings1476 restores sentry issues1477 has award emoji for an issue1478 has award emoji for a note in an issue1479 restores container_expiration_policy1480 restores error_tracking_setting1481 restores external pull requests1482 restores pipeline schedules1483 restores releases with links & milestones1484 when importing a project with cached_markdown_version and note_html1485 for an Issue1486 does not import note_html1487 for a Merge Request1488 does not import note_html1489 merge request system note metadata1490 restores title action for unmark wip1491 restores commit action and commit count for pushing 3 commits1492 event at forth level of the tree1493 restores the event1494 has the action1495 event belongs to note, belongs to merge request, belongs to a project1496 Merge requests1497 always has the new project as a target1498 has the same source project as originally if source/target are the same1499 has the new project as target if source/target differ1500 has no source if source/target differ1501 has award emoji1502 notes1503 has award emoji1504 tokens are regenerated1505 has new CI trigger tokens1506 has a new CI build token1507 has restored the correct number of records1508 has the correct number of merge requests1509 does not restore triggers1510 has the correct number of pipelines and statuses1511 when restoring hierarchy of pipeline, stages and jobs1512 restores pipelines1513 restores pipeline stages1514 correctly restores association between stage and a pipeline1515 restores statuses1516 correctly restores association between a stage and a job1517 correctly restores association between a pipeline and a job1518 restores a Hash for CommitStatus options1519 restores external pull request for the restored pipeline1520 has no import failures1521 project.json file access check1522 does not read a symlink1523 Light JSON1524 with a simple project1525 issue system note metadata restored successfully1526 when there is an existing build with build token1527 behaves like restores project successfully1528 restores the project1529 has labels1530 has label priorities1531 has milestones1532 has issues1533 has ci pipelines1534 has external pull requests1535 does not set params that are excluded from import_export settings1536 records exact number of import failures1537 when there is an existing build with build token1538 behaves like restores project successfully1539 restores the project1540 has labels1541 has label priorities1542 has milestones1543 has issues1544 has ci pipelines1545 has external pull requests1546 does not set params that are excluded from import_export settings1547 records exact number of import failures1548 multiple pipelines reference the same external pull request1549 restores external pull request for the restored pipelines1550 behaves like restores project successfully1551 restores the project1552 has labels1553 has label priorities1554 has milestones1555 has issues1556 has ci pipelines1557 has external pull requests1558 does not set params that are excluded from import_export settings1559 records exact number of import failures1560 when post import action throw non-retriable exception1561 report post import error1562 when post import action throw retriable exception one time1563 records the failures in the database1564 behaves like restores project successfully1565 restores the project1566 has labels1567 has label priorities1568 has milestones1569 has issues1570 has ci pipelines1571 has external pull requests1572 does not set params that are excluded from import_export settings1573 records exact number of import failures1574 when the project has overridden params in import data1575 handles string versions of visibility_level1576 overwrites the params stored in the JSON1577 does not allow setting params that are excluded from import_export settings1578 overrides project feature access levels1579 with a project that has a group1580 restores issue states1581 behaves like restores project successfully1582 restores the project1583 has labels1584 has label priorities1585 has milestones1586 has issues1587 has ci pipelines1588 has external pull requests1589 does not set params that are excluded from import_export settings1590 records exact number of import failures1591 behaves like restores group correctly1592 has group label1593 has group milestone1594 has the correct visibility level1595 with existing group models1596 imports labels1597 imports milestones1598 with clashing milestones on IID1599 preserves the project milestone IID1600 with external authorization classification labels1601 converts empty external classification authorization labels to nil1602 preserves valid external classification authorization labels1603 Minimal JSON1604 no group visibility1605 uses the project visibility1606 with restricted internal visibility1607 internal project1608 uses private visibility1609 with group visibility1610 private group visibility1611 uses the group visibility1612 public group visibility1613 uses the project visibility1614 internal group visibility1615 uses the group visibility1616 with restricted internal visibility1617 sets private visibility1618 with project members1619 restores project members1620 JSON with invalid records1621 when failures occur because a relation fails to be processed1622 records the failures in the database1623 behaves like restores project successfully1624 restores the project1625 has labels1626 has label priorities1627 has milestones1628 has issues1629 has ci pipelines1630 has external pull requests1631 does not set params that are excluded from import_export settings1632 records exact number of import failures1633 JSON with design management data1634 restores project associations correctly1635 behaves like restores project successfully1636 restores the project1637 has labels1638 has label priorities1639 has milestones1640 has issues1641 has ci pipelines1642 has external pull requests1643 does not set params that are excluded from import_export settings1644 records exact number of import failures1645 restores issue associations correctly1646 index: 0, design_filenames: ["chirrido3.jpg", "jonathan_richman.jpg", "mariavontrap.jpeg"], version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"], events: ["creation", "creation", "creation", "modification", "modification", "deletion"], author_emails: ["user_1@gitlabexample.com", "user_1@gitlabexample.com", "user_2@gitlabexample.com"]1647 is expected to contain exactly "user_1@gitlabexample.com", "user_1@gitlabexample.com", and "user_2@gitlabexample.com"1648 index: 1, design_filenames: ["1 (1).jpeg", "2099743.jpg", "a screenshot (1).jpg", "chirrido3.jpg"], version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"], events: ["creation", "creation", "creation", "creation", "modification"], author_emails: ["user_1@gitlabexample.com", "user_2@gitlabexample.com", "user_2@gitlabexample.com"]1649 is expected to contain exactly "user_1@gitlabexample.com", "user_2@gitlabexample.com", and "user_2@gitlabexample.com"1650 restores design version associations correctly1651 index: 0, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1652 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4" and "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1653 index: 1, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4"]1654 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4"1655 index: 2, version_shas: ["c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1656 is expected to contain exactly "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1657 index: 3, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1658 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1659 index: 4, version_shas: ["8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"]1660 is expected to contain exactly "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"1661 index: 5, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1662 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85" and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1663 index: 6, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85"]1664 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85"1665 behaves like project tree restorer work properly1666 restore project tree1667 JSON1668 restores models based on JSON1669 restore correct project features1670 has the project description1671 has the same label associated to two issues1672 has milestones associated to two separate issues1673 creates a valid pipeline note1674 pipeline has the correct user ID1675 restores pipelines with missing ref1676 restores pipeline for merge request1677 restores pipelines based on ascending id order1678 preserves updated_at on issues1679 has multiple issue assignees1680 restores timelogs for issues1681 contains the merge access levels on a protected branch1682 contains the push access levels on a protected branch1683 contains the create access levels on a protected tag1684 restores issue resource label events1685 restores merge requests resource label events1686 restores suggestion1687 has the correct data for merge request diff files1688 has the correct data for merge request diff commits1689 assigns committer and author details to all diff commits1690 assigns the correct commit users to different diff commits1691 has the correct data for merge request latest_merge_request_diff1692 has labels associated to label links, associated to issues1693 has project labels1694 has no group labels1695 has issue boards1696 has lists associated with the issue board1697 has a project feature1698 has custom attributes1699 has badges1700 has snippets1701 has award emoji for a snippet1702 snippet has notes1703 snippet has award emojis on notes1704 restores `ci_cd_settings` : `group_runners_enabled` setting1705 restores `auto_devops`1706 restores zoom meetings1707 restores sentry issues1708 has award emoji for an issue1709 has award emoji for a note in an issue1710 restores container_expiration_policy1711 restores error_tracking_setting1712 restores external pull requests1713 restores pipeline schedules1714 restores releases with links & milestones1715 when importing a project with cached_markdown_version and note_html1716 for an Issue1717 does not import note_html1718 for a Merge Request1719 does not import note_html1720 merge request system note metadata1721 restores title action for unmark wip1722 restores commit action and commit count for pushing 3 commits1723 event at forth level of the tree1724 restores the event1725 has the action1726 event belongs to note, belongs to merge request, belongs to a project1727 Merge requests1728 always has the new project as a target1729 has the same source project as originally if source/target are the same1730 has the new project as target if source/target differ1731 has no source if source/target differ1732 has award emoji1733 notes1734 has award emoji1735 tokens are regenerated1736 has new CI trigger tokens1737 has a new CI build token1738 has restored the correct number of records1739 has the correct number of merge requests1740 does not restore triggers1741 has the correct number of pipelines and statuses1742 when restoring hierarchy of pipeline, stages and jobs1743 restores pipelines1744 restores pipeline stages1745 correctly restores association between stage and a pipeline1746 restores statuses1747 correctly restores association between a stage and a job1748 correctly restores association between a pipeline and a job1749 restores a Hash for CommitStatus options1750 restores external pull request for the restored pipeline1751 has no import failures1752 project.json file access check1753 does not read a symlink1754 Light JSON1755 with a simple project1756 issue system note metadata restored successfully1757 when there is an existing build with build token1758 behaves like restores project successfully1759 restores the project1760 has labels1761 has label priorities1762 has milestones1763 has issues1764 has ci pipelines1765 has external pull requests1766 does not set params that are excluded from import_export settings1767 records exact number of import failures1768 when there is an existing build with build token1769 behaves like restores project successfully1770 restores the project1771 has labels1772 has label priorities1773 has milestones1774 has issues1775 has ci pipelines1776 has external pull requests1777 does not set params that are excluded from import_export settings1778 records exact number of import failures1779 multiple pipelines reference the same external pull request1780 restores external pull request for the restored pipelines1781 behaves like restores project successfully1782 restores the project1783 has labels1784 has label priorities1785 has milestones1786 has issues1787 has ci pipelines1788 has external pull requests1789 does not set params that are excluded from import_export settings1790 records exact number of import failures1791 when post import action throw non-retriable exception1792 report post import error1793 when post import action throw retriable exception one time1794 records the failures in the database1795 behaves like restores project successfully1796 restores the project1797 has labels1798 has label priorities1799 has milestones1800 has issues1801 has ci pipelines1802 has external pull requests1803 does not set params that are excluded from import_export settings1804 records exact number of import failures1805 when the project has overridden params in import data1806 handles string versions of visibility_level1807 overwrites the params stored in the JSON1808 does not allow setting params that are excluded from import_export settings1809 overrides project feature access levels1810 with a project that has a group1811 restores issue states1812 behaves like restores project successfully1813 restores the project1814 has labels1815 has label priorities1816 has milestones1817 has issues1818 has ci pipelines1819 has external pull requests1820 does not set params that are excluded from import_export settings1821 records exact number of import failures1822 behaves like restores group correctly1823 has group label1824 has group milestone1825 has the correct visibility level1826 with existing group models1827 imports labels1828 imports milestones1829 with clashing milestones on IID1830 preserves the project milestone IID1831 with external authorization classification labels1832 converts empty external classification authorization labels to nil1833 preserves valid external classification authorization labels1834 Minimal JSON1835 no group visibility1836 uses the project visibility1837 with restricted internal visibility1838 internal project1839 uses private visibility1840 with group visibility1841 private group visibility1842 uses the group visibility1843 public group visibility1844 uses the project visibility1845 internal group visibility1846 uses the group visibility1847 with restricted internal visibility1848 sets private visibility1849 with project members1850 restores project members1851 JSON with invalid records1852 when failures occur because a relation fails to be processed1853 records the failures in the database1854 behaves like restores project successfully1855 restores the project1856 has labels1857 has label priorities1858 has milestones1859 has issues1860 has ci pipelines1861 has external pull requests1862 does not set params that are excluded from import_export settings1863 records exact number of import failures1864 JSON with design management data1865 restores project associations correctly1866 behaves like restores project successfully1867 restores the project1868 has labels1869 has label priorities1870 has milestones1871 has issues1872 has ci pipelines1873 has external pull requests1874 does not set params that are excluded from import_export settings1875 records exact number of import failures1876 restores issue associations correctly1877 index: 0, design_filenames: ["chirrido3.jpg", "jonathan_richman.jpg", "mariavontrap.jpeg"], version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"], events: ["creation", "creation", "creation", "modification", "modification", "deletion"], author_emails: ["user_1@gitlabexample.com", "user_1@gitlabexample.com", "user_2@gitlabexample.com"]1878 is expected to contain exactly "user_1@gitlabexample.com", "user_1@gitlabexample.com", and "user_2@gitlabexample.com"1879 index: 1, design_filenames: ["1 (1).jpeg", "2099743.jpg", "a screenshot (1).jpg", "chirrido3.jpg"], version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"], events: ["creation", "creation", "creation", "creation", "modification"], author_emails: ["user_1@gitlabexample.com", "user_2@gitlabexample.com", "user_2@gitlabexample.com"]1880 is expected to contain exactly "user_1@gitlabexample.com", "user_2@gitlabexample.com", and "user_2@gitlabexample.com"1881 restores design version associations correctly1882 index: 0, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1883 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4" and "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1884 index: 1, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4"]1885 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4"1886 index: 2, version_shas: ["c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]1887 is expected to contain exactly "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"1888 index: 3, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1889 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1890 index: 4, version_shas: ["8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"]1891 is expected to contain exactly "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"1892 index: 5, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]1893 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85" and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"1894 index: 6, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85"]1895 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85"1896 disable ndjson import1897 behaves like project tree restorer work properly1898 restore project tree1899 JSON1900 restores models based on JSON1901 restore correct project features1902 has the project description1903 has the same label associated to two issues1904 has milestones associated to two separate issues1905 creates a valid pipeline note1906 pipeline has the correct user ID1907 restores pipelines with missing ref1908 restores pipeline for merge request1909 restores pipelines based on ascending id order1910 preserves updated_at on issues1911 has multiple issue assignees1912 restores timelogs for issues1913 contains the merge access levels on a protected branch1914 contains the push access levels on a protected branch1915 contains the create access levels on a protected tag1916 restores issue resource label events1917 restores merge requests resource label events1918 restores suggestion1919 has the correct data for merge request diff files1920 has the correct data for merge request diff commits1921 assigns committer and author details to all diff commits1922 assigns the correct commit users to different diff commits1923 has the correct data for merge request latest_merge_request_diff1924 has labels associated to label links, associated to issues1925 has project labels1926 has no group labels1927 has issue boards1928 has lists associated with the issue board1929 has a project feature1930 has custom attributes1931 has badges1932 has snippets1933 has award emoji for a snippet1934 snippet has notes1935 snippet has award emojis on notes1936 restores `ci_cd_settings` : `group_runners_enabled` setting1937 restores `auto_devops`1938 restores zoom meetings1939 restores sentry issues1940 has award emoji for an issue1941 has award emoji for a note in an issue1942 restores container_expiration_policy1943 restores error_tracking_setting1944 restores external pull requests1945 restores pipeline schedules1946 restores releases with links & milestones1947 when importing a project with cached_markdown_version and note_html1948 for an Issue1949 does not import note_html1950 for a Merge Request1951 does not import note_html1952 merge request system note metadata1953 restores title action for unmark wip1954 restores commit action and commit count for pushing 3 commits1955 event at forth level of the tree1956 restores the event1957 has the action1958 event belongs to note, belongs to merge request, belongs to a project1959 Merge requests1960 always has the new project as a target1961 has the same source project as originally if source/target are the same1962 has the new project as target if source/target differ1963 has no source if source/target differ1964 has award emoji1965 notes1966 has award emoji1967 tokens are regenerated1968 has new CI trigger tokens1969 has a new CI build token1970 has restored the correct number of records1971 has the correct number of merge requests1972 does not restore triggers1973 has the correct number of pipelines and statuses1974 when restoring hierarchy of pipeline, stages and jobs1975 restores pipelines1976 restores pipeline stages1977 correctly restores association between stage and a pipeline1978 restores statuses1979 correctly restores association between a stage and a job1980 correctly restores association between a pipeline and a job1981 restores a Hash for CommitStatus options1982 restores external pull request for the restored pipeline1983 has no import failures1984 project.json file access check1985 does not read a symlink1986 Light JSON1987 with a simple project1988 issue system note metadata restored successfully1989 when there is an existing build with build token1990 behaves like restores project successfully1991 restores the project1992 has labels1993 has label priorities1994 has milestones1995 has issues1996 has ci pipelines1997 has external pull requests1998 does not set params that are excluded from import_export settings1999 records exact number of import failures2000 when there is an existing build with build token2001 behaves like restores project successfully2002 restores the project2003 has labels2004 has label priorities2005 has milestones2006 has issues2007 has ci pipelines2008 has external pull requests2009 does not set params that are excluded from import_export settings2010 records exact number of import failures2011 multiple pipelines reference the same external pull request2012 restores external pull request for the restored pipelines2013 behaves like restores project successfully2014 restores the project2015 has labels2016 has label priorities2017 has milestones2018 has issues2019 has ci pipelines2020 has external pull requests2021 does not set params that are excluded from import_export settings2022 records exact number of import failures2023 when post import action throw non-retriable exception2024 report post import error2025 when post import action throw retriable exception one time2026 records the failures in the database2027 behaves like restores project successfully2028 restores the project2029 has labels2030 has label priorities2031 has milestones2032 has issues2033 has ci pipelines2034 has external pull requests2035 does not set params that are excluded from import_export settings2036 records exact number of import failures2037 when the project has overridden params in import data2038 handles string versions of visibility_level2039 overwrites the params stored in the JSON2040 does not allow setting params that are excluded from import_export settings2041 overrides project feature access levels2042 with a project that has a group2043 restores issue states2044 behaves like restores project successfully2045 restores the project2046 has labels2047 has label priorities2048 has milestones2049 has issues2050 has ci pipelines2051 has external pull requests2052 does not set params that are excluded from import_export settings2053 records exact number of import failures2054 behaves like restores group correctly2055 has group label2056 has group milestone2057 has the correct visibility level2058 with existing group models2059 imports labels2060 imports milestones2061 with clashing milestones on IID2062 preserves the project milestone IID2063 with external authorization classification labels2064 converts empty external classification authorization labels to nil2065 preserves valid external classification authorization labels2066 Minimal JSON2067 no group visibility2068 uses the project visibility2069 with restricted internal visibility2070 internal project2071 uses private visibility2072 with group visibility2073 private group visibility2074 uses the group visibility2075 public group visibility2076 uses the project visibility2077 internal group visibility2078 uses the group visibility2079 with restricted internal visibility2080 sets private visibility2081 with project members2082 restores project members2083 JSON with invalid records2084 when failures occur because a relation fails to be processed2085 records the failures in the database2086 behaves like restores project successfully2087 restores the project2088 has labels2089 has label priorities2090 has milestones2091 has issues2092 has ci pipelines2093 has external pull requests2094 does not set params that are excluded from import_export settings2095 records exact number of import failures2096 JSON with design management data2097 restores project associations correctly2098 behaves like restores project successfully2099 restores the project2100 has labels2101 has label priorities2102 has milestones2103 has issues2104 has ci pipelines2105 has external pull requests2106 does not set params that are excluded from import_export settings2107 records exact number of import failures2108 restores issue associations correctly2109 index: 0, design_filenames: ["chirrido3.jpg", "jonathan_richman.jpg", "mariavontrap.jpeg"], version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"], events: ["creation", "creation", "creation", "modification", "modification", "deletion"], author_emails: ["user_1@gitlabexample.com", "user_1@gitlabexample.com", "user_2@gitlabexample.com"]2110 is expected to contain exactly "user_1@gitlabexample.com", "user_1@gitlabexample.com", and "user_2@gitlabexample.com"2111 index: 1, design_filenames: ["1 (1).jpeg", "2099743.jpg", "a screenshot (1).jpg", "chirrido3.jpg"], version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"], events: ["creation", "creation", "creation", "creation", "modification"], author_emails: ["user_1@gitlabexample.com", "user_2@gitlabexample.com", "user_2@gitlabexample.com"]2112 is expected to contain exactly "user_1@gitlabexample.com", "user_2@gitlabexample.com", and "user_2@gitlabexample.com"2113 restores design version associations correctly2114 index: 0, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4", "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]2115 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4" and "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"2116 index: 1, version_shas: ["73f871b4c8c1d65c62c460635e023179fb53abc4"]2117 is expected to contain exactly "73f871b4c8c1d65c62c460635e023179fb53abc4"2118 index: 2, version_shas: ["c9b5f067f3e892122a4b12b0a25a8089192f3ac8"]2119 is expected to contain exactly "c9b5f067f3e892122a4b12b0a25a8089192f3ac8"2120 index: 3, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]2121 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85", "9358d1bac8ff300d3d2597adaa2572a20f7f8703", and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"2122 index: 4, version_shas: ["8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"]2123 is expected to contain exactly "8587e78ab6bda3bc820a9f014c3be4a21ad4fcc8"2124 index: 5, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85", "e1a4a501bcb42f291f84e5d04c8f927821542fb6"]2125 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85" and "e1a4a501bcb42f291f84e5d04c8f927821542fb6"2126 index: 6, version_shas: ["27702d08f5ee021ae938737f84e8fe7c38599e85"]2127 is expected to contain exactly "27702d08f5ee021ae938737f84e8fe7c38599e85"2128ProjectMember2129 associations2130 is expected to belong to project required: false2131 validations2132 is expected to allow :source_type to be ‹"Project"›2133 is expected not to allow :source_type to be ‹"project"›2134 is expected to validate that :access_level is either ‹10›, ‹20›, ‹30›, or ‹40›2135 delegations2136 is expected to delegate #namespace_id to the #project object2137 .access_level_roles2138 returns Gitlab::Access.options2139 #real_source_type2140 is expected to eq "Project"2141 #destroy2142 creates an expired event when left due to expiry2143 creates a left event when left due to leave2144 for an orphaned member2145 does not raise an error2146 .import_team2147 is expected to be truthy2148 project 2 should get user 1 as developer. user_2 should not be changed2149 is expected to include #<User id:1231 @user621>2150 is expected to include #<User id:1236 @user624>2151 is expected to be truthy2152 is expected to be truthy2153 project 1 should not be changed2154 is expected to include #<User id:1247 @user629>2155 is expected not to include #<User id:1252 @user632>2156 .add_users_to_projects2157 adds the given users to the given projects2158 .truncate_teams2159 is expected to be empty2160 is expected to be empty2161 behaves like members notifications2162 #after_create2163 sends email to user2164 #after_update2165 calls NotificationService.update_project_member2166 does not send an email when the access level has not changed2167 #accept_request2168 calls NotificationService.new_project_member2169 #accept_invite!2170 calls NotificationService.accept_project_invite2171 #decline_invite!2172 calls NotificationService.decline_project_invite2173 access levels2174 with parent group2175 behaves like inherited access level as a member of entity2176 with root parent_entity developer member2177 is allowed to be a maintainer of the entity2178 is not allowed to be a reporter of the entity2179 is allowed to change to be a developer of the entity2180 is not allowed to change to be a guest of the entity2181 shows an error if the member can't be updated2182 allows changing the level from a non existing member2183 with parent group and a subgroup2184 behaves like inherited access level as a member of entity2185 with root parent_entity developer member2186 is allowed to be a maintainer of the entity2187 is not allowed to be a reporter of the entity2188 is allowed to change to be a developer of the entity2189 is not allowed to change to be a guest of the entity2190 shows an error if the member can't be updated2191 allows changing the level from a non existing member2192 refreshing project_authorizations2193 when the source project of the project member is destroyed2194 refreshes the authorization of user to the project in the group2195 refreshes the authorization without calling AuthorizedProjectUpdate::ProjectRecalculatePerUserService2196 when the user of the project member is destroyed2197 refreshes the authorization of user to the project in the group2198 refreshes the authorization without calling UserProjectAccessChangedService2199 when importing2200 does not refresh2201 authorization refresh on addition/updation/deletion2202 on create2203 changes access level2204 behaves like calls AuthorizedProjectUpdate::ProjectRecalculatePerUserService to recalculate authorizations2205 calls AuthorizedProjectUpdate::ProjectRecalculatePerUserService2206 behaves like calls AuthorizedProjectUpdate::UserRefreshFromReplicaWorker with a delay to update project authorizations2207 calls AuthorizedProjectUpdate::UserRefreshFromReplicaWorker2208 on update2209 changes access level2210 behaves like calls AuthorizedProjectUpdate::ProjectRecalculatePerUserService to recalculate authorizations2211 calls AuthorizedProjectUpdate::ProjectRecalculatePerUserService2212 behaves like calls AuthorizedProjectUpdate::UserRefreshFromReplicaWorker with a delay to update project authorizations2213 calls AuthorizedProjectUpdate::UserRefreshFromReplicaWorker2214 on destroy2215 changes access level2216 calls AuthorizedProjectUpdate::ProjectRecalculatePerUserWorker to recalculate authorizations2217 behaves like calls AuthorizedProjectUpdate::UserRefreshFromReplicaWorker with a delay to update project authorizations2218 calls AuthorizedProjectUpdate::UserRefreshFromReplicaWorker2219 #set_member_namespace_id2220 on create2221 sets the member_namespace_id2222Gitlab::Database::RenameReservedPathsMigration::V1::RenameBase2223 #remove_last_occurrence2224 removes only the last occurrence of a string2225 #remove_cached_html_for_projects2226 removes description_html from projects2227 removes issue descriptions2228 removes merge request descriptions2229 removes note html2230 removes milestone description2231 #rename_path_for_routable2232 for personal namespaces2233 renames namespaces called the-path2234 renames the route to the namespace2235 renames the route for projects of the namespace2236 returns the old & the new path2237 doesn't rename routes that start with a similar name2238 for groups2239 the-path group -> subgroup -> the-path0 project2240 updates the route of the project correctly2241 for projects2242 renames the project called `the-path`2243 renames the route for the project2244 returns the old & new path2245 #perform_rename2246 for personal namespaces2247 renames the path2248 for groups2249 renames all the routes for the group2250 #move_pages2251 moves the pages directory2252 #move_uploads2253 moves subdirectories in the uploads folder2254 doesn't move uploads when they are stored in object storage2255 #move_folders2256 moves a folder with files2257 #track_rename2258 tracks a rename in redis2259 #reverts_for_type2260 yields for each tracked rename2261 keeps the revert in redis if it failed2262GlobalPolicy2263 reading the list of users2264 for a logged in user2265 is expected to be allowed :read_users_list2266 for an anonymous user2267 when the public level is restricted2268 is expected not to be allowed :read_users_list2269 when the public level is not restricted2270 is expected to be allowed :read_users_list2271 for an admin2272 when the public level is restricted2273 is expected to be allowed :read_users_list2274 when the public level is not restricted2275 is expected to be allowed :read_users_list2276 create fork2277 when user has not exceeded project limit2278 is expected to be allowed :create_fork2279 when user has exceeded project limit2280 is expected not to be allowed :create_fork2281 when user is a maintainer in a group2282 is expected to be allowed :create_fork2283 create group2284 when user has the ability to create group2285 is expected to be allowed :create_group2286 when user does not have the ability to create group2287 is expected not to be allowed :create_group2288 create group with default branch protection2289 when user has the ability to create group2290 is expected to be allowed :create_group_with_default_branch_protection2291 when user does not have the ability to create group2292 is expected not to be allowed :create_group_with_default_branch_protection2293 custom attributes2294 regular user2295 is expected not to be allowed :read_custom_attribute2296 is expected not to be allowed :update_custom_attribute2297 admin2298 when admin mode is enabled2299 is expected to be allowed :read_custom_attribute2300 is expected to be allowed :update_custom_attribute2301 when admin mode is disabled2302 is expected to be disallowed :read_custom_attribute2303 is expected to be disallowed :update_custom_attribute2304 approving users2305 regular user2306 is expected not to be allowed :approve_user2307 admin2308 when admin mode is enabled2309 is expected to be allowed :approve_user2310 when admin mode is disabled2311 is expected to be disallowed :approve_user2312 rejecting users2313 regular user2314 is expected not to be allowed :reject_user2315 admin2316 when admin mode is enabled2317 is expected to be allowed :reject_user2318 when admin mode is disabled2319 is expected to be disallowed :reject_user2320 using project statistics filters2321 regular user2322 is expected not to be allowed :use_project_statistics_filters2323 admin2324 when admin mode is enabled2325 is expected to be allowed :use_project_statistics_filters2326 when admin mode is disabled2327 is expected to be disallowed :use_project_statistics_filters2328 API access2329 regular user2330 is expected to be allowed :access_api2331 admin2332 is expected to be allowed :access_api2333 anonymous2334 is expected to be allowed :access_api2335 project bot2336 is expected to be allowed :access_api2337 migration bot2338 is expected not to be allowed :access_api2339 security bot2340 is expected not to be allowed :access_api2341 user blocked pending approval2342 is expected not to be allowed :access_api2343 with a deactivated user2344 is expected not to be allowed :access_api2345 user with expired password2346 is expected not to be allowed :access_api2347 when user is using ldap2348 is expected to be allowed :access_api2349 when terms are enforced2350 regular user2351 behaves like access allowed when terms accepted2352 is expected not to be allowed :access_api2353 allows access_api when the user accepted the terms2354 admin2355 behaves like access allowed when terms accepted2356 is expected not to be allowed :access_api2357 allows access_api when the user accepted the terms2358 anonymous2359 is expected to be allowed :access_api2360 inactive user2361 when within the confirmation grace period2362 is expected to be allowed :access_api2363 when confirmation grace period is expired2364 is expected not to be allowed :access_api2365 receive notifications2366 regular user2367 is expected to be allowed :receive_notifications2368 admin2369 is expected to be allowed :receive_notifications2370 anonymous2371 is expected not to be allowed :receive_notifications2372 blocked user2373 is expected not to be allowed :receive_notifications2374 deactivated user2375 is expected not to be allowed :receive_notifications2376 project bot2377 is expected not to be allowed :receive_notifications2378 migration bot2379 is expected not to be allowed :receive_notifications2380 user blocked pending approval2381 is expected not to be allowed :receive_notifications2382 git access2383 regular user2384 is expected to be allowed :access_git2385 admin2386 is expected to be allowed :access_git2387 anonymous2388 is expected to be allowed :access_git2389 migration bot2390 is expected to be allowed :access_git2391 security bot2392 is expected to be allowed :access_git2393 deactivated user2394 is expected not to be allowed :access_git2395 inactive user2396 is expected not to be allowed :access_git2397 when terms are enforced2398 regular user2399 behaves like access allowed when terms accepted2400 is expected not to be allowed :access_git2401 allows access_git when the user accepted the terms2402 admin2403 behaves like access allowed when terms accepted2404 is expected not to be allowed :access_git2405 allows access_git when the user accepted the terms2406 anonymous2407 is expected to be allowed :access_git2408 project bot2409 is expected to be allowed :access_git2410 user blocked pending approval2411 is expected not to be allowed :access_git2412 user with expired password2413 is expected not to be allowed :access_git2414 when user is using ldap2415 is expected to be allowed :access_git2416 read instance metadata2417 regular user2418 is expected to be allowed :read_instance_metadata2419 anonymous2420 is expected not to be allowed :read_instance_metadata2421 slash commands2422 regular user2423 is expected to be allowed :use_slash_commands2424 when internal2425 is expected not to be allowed :use_slash_commands2426 when blocked2427 is expected not to be allowed :use_slash_commands2428 when deactivated2429 is expected not to be allowed :use_slash_commands2430 inactive user2431 is expected not to be allowed :use_slash_commands2432 when access locked2433 is expected not to be allowed :use_slash_commands2434 project bot2435 is expected to be allowed :use_slash_commands2436 migration bot2437 is expected not to be allowed :use_slash_commands2438 user blocked pending approval2439 is expected not to be allowed :use_slash_commands2440 user with expired password2441 is expected not to be allowed :use_slash_commands2442 when user is using ldap2443 is expected to be allowed :use_slash_commands2444 create_snippet2445 when anonymous2446 is expected not to be allowed :create_snippet2447 regular user2448 is expected to be allowed :create_snippet2449 when external2450 is expected not to be allowed :create_snippet2451 log in2452 project bot2453 is expected not to be allowed :log_in2454 migration bot2455 is expected not to be allowed :log_in2456 security bot2457 is expected not to be allowed :log_in2458 user blocked pending approval2459 is expected not to be allowed :log_in2460ProjectsFinder2461 #execute2462 without CTE flag enabled2463 behaves like ProjectFinder#execute examples2464 without a user2465 is expected to eq [#<Project id:665 group151/C>>]2466 with a user2467 without private projects2468 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2469 with private projects2470 is expected to contain exactly #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:663 namespace666/A>>2471 with project_ids_relation2472 is expected to eq [#<Project id:664 group151/B>>]2473 with id_after2474 only returns projects with a project id greater than given2475 is expected to eq [#<Project id:665 group151/C>>]2476 with id_before2477 only returns projects with a project id less than given2478 is expected to eq [#<Project id:664 group151/B>>]2479 with both id_before and id_after2480 only returns projects with a project id less than given2481 is expected to contain exactly #<Project id:668 namespace671/project214>>, #<Project id:669 namespace672/project215>>, and #<Project id:670 namespace673/project216>>2482 regression: Combination of id_before/id_after and joins requires fully qualified column names2483 only returns projects with a project id less than given and matching search2484 is expected to eq [#<Project id:664 group151/B>>]2485 only returns projects with a project id greater than given and matching search2486 is expected to eq [#<Project id:665 group151/C>>]2487 filter by visibility_level2488 private2489 is expected to eq [#<Project id:663 namespace666/A>>]2490 internal2491 is expected to eq [#<Project id:664 group151/B>>]2492 public2493 is expected to eq [#<Project id:665 group151/C>>]2494 as string2495 is expected to eq [#<Project id:664 group151/B>>]2496 filter by tags (deprecated)2497 is expected to eq [#<Project id:665 group151/C>>]2498 filter by topics2499 single topic2500 is expected to eq [#<Project id:665 group151/C>>]2501 multiple topics2502 is expected to eq [#<Project id:665 group151/C>>]2503 one topic matches, other one does not2504 is expected to eq []2505 no matching topic2506 is expected to eq []2507 filter by personal2508 is expected to eq [#<Project id:672 user834/project218>>]2509 filter by search2510 is expected to eq [#<Project id:665 group151/C>>]2511 with anonymous user2512 with disable_anonymous_project_search feature flag enabled2513 does not perform search2514 with disable_anonymous_project_search feature flag disabled2515 finds one public project2516 filter by name for backward compatibility2517 is expected to eq [#<Project id:665 group151/C>>]2518 filter by search with minimum search length2519 when search term is shorter than minimum length2520 is expected to be empty2521 when search term is longer than minimum length2522 is expected to eq [#<Project id:674 group151/test_project>>]2523 when minimum length is invalid2524 ignores the minimum length param2525 filter by group name2526 is expected to eq [#<Project id:665 group151/C>>, #<Project id:664 group151/B>>]2527 filter by archived2528 non_archived=true2529 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2530 non_archived=false2531 is expected to contain exactly #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:676 namespace678/E>>2532 filter by archived only2533 is expected to eq [#<Project id:677 namespace679/E>>]2534 filter by archived for backward compatibility2535 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2536 filter by trending2537 is expected to eq [#<Project id:665 group151/C>>]2538 filter by owned2539 is expected to eq [#<Project id:679 user834/project219>>]2540 filter by non_public2541 is expected to eq [#<Project id:663 namespace666/A>>]2542 filter by starred2543 is expected to eq [#<Project id:665 group151/C>>]2544 returns only projects the user has access to2545 filter by without_deleted2546 when without_deleted is true2547 returns projects that are not pending_delete2548 when without_deleted is false2549 behaves like returns all projects2550 is expected to include #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:680 namespace681/project220>>2551 when without_deleted is nil2552 behaves like returns all projects2553 is expected to include #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:680 namespace681/project220>>2554 when without_deleted is not present2555 behaves like returns all projects2556 is expected to include #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:680 namespace681/project220>>2557 filter by last_activity_after2558 is expected to contain exactly #<Project id:664 group151/B>>2559 filter by last_activity_before2560 is expected to contain exactly #<Project id:665 group151/C>>2561 filter by repository_storage2562 is expected to contain exactly #<Project id:681 namespace682/project221>>2563 sorting2564 when sorting by a field2565 is expected to eq [#<Project id:664 group151/B>>, #<Project id:665 group151/C>>, #<Project id:682 group151/projA>>, #<Project id:684 group151/projAB>>, #<Project id:683 group151/projABC>>]2566 when sorting by similarity2567 is expected to eq [#<Project id:682 group151/projA>>, #<Project id:684 group151/projAB>>, #<Project id:683 group151/projABC>>]2568 when no sort is provided2569 is expected to eq [#<Project id:684 group151/projAB>>, #<Project id:683 group151/projABC>>, #<Project id:682 group151/projA>>, #<Project id:665 group151/C>>, #<Project id:664 group151/B>>]2570 with admin user2571 admin mode enabled2572 is expected to contain exactly #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, #<Project id:663 namespace666/A>>, and #<Project id:666 namespace669/D>>2573 admin mode disabled2574 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2575 with CTE flag enabled2576 behaves like ProjectFinder#execute examples2577 without a user2578 is expected to eq [#<Project id:665 group151/C>>]2579 with a user2580 without private projects2581 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2582 with private projects2583 is expected to contain exactly #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:663 namespace666/A>>2584 with project_ids_relation2585 is expected to eq [#<Project id:664 group151/B>>]2586 with id_after2587 only returns projects with a project id greater than given2588 is expected to eq [#<Project id:665 group151/C>>]2589 with id_before2590 only returns projects with a project id less than given2591 is expected to eq [#<Project id:664 group151/B>>]2592 with both id_before and id_after2593 only returns projects with a project id less than given2594 is expected to contain exactly #<Project id:686 namespace687/project223>>, #<Project id:687 namespace688/project224>>, and #<Project id:688 namespace689/project225>>2595 regression: Combination of id_before/id_after and joins requires fully qualified column names2596 only returns projects with a project id less than given and matching search2597 is expected to eq [#<Project id:664 group151/B>>]2598 only returns projects with a project id greater than given and matching search2599 is expected to eq [#<Project id:665 group151/C>>]2600 filter by visibility_level2601 private2602 is expected to eq [#<Project id:663 namespace666/A>>]2603 internal2604 is expected to eq [#<Project id:664 group151/B>>]2605 public2606 is expected to eq [#<Project id:665 group151/C>>]2607 as string2608 is expected to eq [#<Project id:664 group151/B>>]2609 filter by tags (deprecated)2610 is expected to eq [#<Project id:665 group151/C>>]2611 filter by topics2612 single topic2613 is expected to eq [#<Project id:665 group151/C>>]2614 multiple topics2615 is expected to eq [#<Project id:665 group151/C>>]2616 one topic matches, other one does not2617 is expected to eq []2618 no matching topic2619 is expected to eq []2620 filter by personal2621 is expected to eq [#<Project id:690 user834/project227>>]2622 filter by search2623 is expected to eq [#<Project id:665 group151/C>>]2624 with anonymous user2625 with disable_anonymous_project_search feature flag enabled2626 does not perform search2627 with disable_anonymous_project_search feature flag disabled2628 finds one public project2629 filter by name for backward compatibility2630 is expected to eq [#<Project id:665 group151/C>>]2631 filter by search with minimum search length2632 when search term is shorter than minimum length2633 is expected to be empty2634 when search term is longer than minimum length2635 is expected to eq [#<Project id:692 group151/test_project>>]2636 when minimum length is invalid2637 ignores the minimum length param2638 filter by group name2639 is expected to eq [#<Project id:665 group151/C>>, #<Project id:664 group151/B>>]2640 filter by archived2641 non_archived=true2642 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2643 non_archived=false2644 is expected to contain exactly #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:694 namespace694/E>>2645 filter by archived only2646 is expected to eq [#<Project id:695 namespace695/E>>]2647 filter by archived for backward compatibility2648 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2649 filter by trending2650 is expected to eq [#<Project id:665 group151/C>>]2651 filter by owned2652 is expected to eq [#<Project id:697 user834/project228>>]2653 filter by non_public2654 is expected to eq [#<Project id:663 namespace666/A>>]2655 filter by starred2656 is expected to eq [#<Project id:665 group151/C>>]2657 returns only projects the user has access to2658 filter by without_deleted2659 when without_deleted is true2660 returns projects that are not pending_delete2661 when without_deleted is false2662 behaves like returns all projects2663 is expected to include #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:698 namespace697/project229>>2664 when without_deleted is nil2665 behaves like returns all projects2666 is expected to include #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:698 namespace697/project229>>2667 when without_deleted is not present2668 behaves like returns all projects2669 is expected to include #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, and #<Project id:698 namespace697/project229>>2670 filter by last_activity_after2671 is expected to contain exactly #<Project id:664 group151/B>>2672 filter by last_activity_before2673 is expected to contain exactly #<Project id:665 group151/C>>2674 filter by repository_storage2675 is expected to contain exactly #<Project id:699 namespace698/project230>>2676 sorting2677 when sorting by a field2678 is expected to eq [#<Project id:664 group151/B>>, #<Project id:665 group151/C>>, #<Project id:700 group151/projA>>, #<Project id:702 group151/projAB>>, #<Project id:701 group151/projABC>>]2679 when sorting by similarity2680 is expected to eq [#<Project id:700 group151/projA>>, #<Project id:702 group151/projAB>>, #<Project id:701 group151/projABC>>]2681 when no sort is provided2682 is expected to eq [#<Project id:702 group151/projAB>>, #<Project id:701 group151/projABC>>, #<Project id:700 group151/projA>>, #<Project id:665 group151/C>>, #<Project id:664 group151/B>>]2683 with admin user2684 admin mode enabled2685 is expected to contain exactly #<Project id:665 group151/C>>, #<Project id:664 group151/B>>, #<Project id:663 namespace666/A>>, and #<Project id:666 namespace669/D>>2686 admin mode disabled2687 is expected to contain exactly #<Project id:665 group151/C>> and #<Project id:664 group151/B>>2688Ci::PipelinesFinder2689 #execute2690 when params is empty2691 returns all pipelines2692 when scope is running2693 returns matched pipelines2694 when scope is pending2695 returns matched pipelines2696 when scope is finished2697 returns matched pipelines2698 when scope is branches or tags2699 when scope is branches2700 returns matched pipelines2701 when scope is tags2702 returns matched pipelines2703 when project has child pipelines2704 filters out child pipelines and shows only the parents by default2705 when status is created2706 returns matched pipelines2707 when status is waiting_for_resource2708 returns matched pipelines2709 when status is preparing2710 returns matched pipelines2711 when status is pending2712 returns matched pipelines2713 when status is running2714 returns matched pipelines2715 when status is success2716 returns matched pipelines2717 when status is failed2718 returns matched pipelines2719 when status is canceled2720 returns matched pipelines2721 when status is skipped2722 returns matched pipelines2723 when status is manual2724 returns matched pipelines2725 when status is scheduled2726 returns matched pipelines2727 when ref is specified2728 when ref exists2729 returns matched pipelines2730 when ref does not exist2731 returns empty2732 when username is specified2733 when username exists2734 returns matched pipelines2735 when username does not exist2736 returns empty2737 when yaml_errors is specified2738 when yaml_errors is true2739 returns matched pipelines2740 when yaml_errors is false2741 returns matched pipelines2742 when yaml_errors is invalid2743 returns all pipelines2744 when updated_at filters are specified2745 returns deployments with matched updated_at2746 when iids filter is specified2747 returns matches pipelines2748 does not fitler out child pipelines2749 when sha is specified2750 when sha exists2751 returns matched pipelines2752 when sha does not exist2753 returns empty2754 when the project has limited access to pipelines2755 when the user has access2756 is expected to return pipelines2757 the user is not allowed to read pipelines2758 returns empty2759 when source is specified2760 returns only the matched pipeline2761 ordering2762 order_by: "id", sort: "asc", ordered_pipelines: [:pipeline_1, :pipeline_2, :pipeline_3]2763 returns the pipelines ordered2764 order_by: "id", sort: "desc", ordered_pipelines: [:pipeline_3, :pipeline_2, :pipeline_1]2765 returns the pipelines ordered2766 order_by: "ref", sort: "asc", ordered_pipelines: [:pipeline_2, :pipeline_1, :pipeline_3]2767 returns the pipelines ordered2768 order_by: "ref", sort: "desc", ordered_pipelines: [:pipeline_3, :pipeline_1, :pipeline_2]2769 returns the pipelines ordered2770 order_by: "status", sort: "asc", ordered_pipelines: [:pipeline_2, :pipeline_1, :pipeline_3]2771 returns the pipelines ordered2772 order_by: "status", sort: "desc", ordered_pipelines: [:pipeline_3, :pipeline_1, :pipeline_2]2773 returns the pipelines ordered2774 order_by: "updated_at", sort: "asc", ordered_pipelines: [:pipeline_2, :pipeline_3, :pipeline_1]2775 returns the pipelines ordered2776 order_by: "updated_at", sort: "desc", ordered_pipelines: [:pipeline_1, :pipeline_3, :pipeline_2]2777 returns the pipelines ordered2778 order_by: "user_id", sort: "asc", ordered_pipelines: [:pipeline_1, :pipeline_2, :pipeline_3]2779 returns the pipelines ordered2780 order_by: "user_id", sort: "desc", ordered_pipelines: [:pipeline_3, :pipeline_2, :pipeline_1]2781 returns the pipelines ordered2782 order_by: "invalid", sort: "asc", ordered_pipelines: [:pipeline_1, :pipeline_2, :pipeline_3]2783 returns the pipelines ordered2784 order_by: "id", sort: "err", ordered_pipelines: [:pipeline_3, :pipeline_2, :pipeline_1]2785 returns the pipelines ordered2786Integrations::HangoutsChat2787 behaves like chat integration2788 Associations2789 is expected to belong to project required: false2790 is expected to have one service_hook2791 Validations2792 when integration is active2793 is expected to validate that :webhook cannot be empty/falsy2794 behaves like issue tracker integration URL attribute2795 is expected to allow :webhook to be ‹"https://example.com"›2796 is expected not to allow :webhook to be ‹"example.com"›2797 is expected not to allow :webhook to be ‹"ftp://example.com"›2798 is expected not to allow :webhook to be ‹"herp-and-derp"›2799 when integration is inactive2800 is expected not to validate that :webhook cannot be empty/falsy2801 .supported_events2802 does not support deployment_events2803 #execute2804 with push events2805 behaves like triggered Hangouts Chat integration2806 calls Hangouts Chat API2807 with default branch2808 when only default branch are to be notified2809 behaves like triggered Hangouts Chat integration2810 calls Hangouts Chat API2811 when only protected branches are to be notified2812 behaves like untriggered Hangouts Chat integration2813 does not call Hangouts Chat API2814 when default and protected branches are to be notified2815 behaves like triggered Hangouts Chat integration2816 calls Hangouts Chat API2817 when all branches are to be notified2818 behaves like triggered Hangouts Chat integration2819 calls Hangouts Chat API2820 with protected branch2821 when only default branch are to be notified2822 behaves like untriggered Hangouts Chat integration2823 does not call Hangouts Chat API2824 when only protected branches are to be notified2825 behaves like triggered Hangouts Chat integration2826 calls Hangouts Chat API2827 when default and protected branches are to be notified2828 behaves like triggered Hangouts Chat integration2829 calls Hangouts Chat API2830 when all branches are to be notified2831 behaves like triggered Hangouts Chat integration2832 calls Hangouts Chat API2833 with neither default nor protected branch2834 when only default branch are to be notified2835 behaves like untriggered Hangouts Chat integration2836 does not call Hangouts Chat API2837 when only protected branches are to be notified2838 behaves like untriggered Hangouts Chat integration2839 does not call Hangouts Chat API2840 when default and protected branches are to be notified2841 behaves like untriggered Hangouts Chat integration2842 does not call Hangouts Chat API2843 when all branches are to be notified2844 behaves like triggered Hangouts Chat integration2845 calls Hangouts Chat API2846 with issue events2847 behaves like triggered Hangouts Chat integration2848 calls Hangouts Chat API2849 with merge events2850 behaves like triggered Hangouts Chat integration2851 calls Hangouts Chat API2852 with wiki page events2853 behaves like triggered Hangouts Chat integration2854 calls Hangouts Chat API2855 with note events2856 with commit comment2857 behaves like triggered Hangouts Chat integration2858 calls Hangouts Chat API2859 with merge request comment2860 behaves like triggered Hangouts Chat integration2861 calls Hangouts Chat API2862 with issue comment2863 behaves like triggered Hangouts Chat integration2864 calls Hangouts Chat API2865 with snippet comment2866 behaves like triggered Hangouts Chat integration2867 calls Hangouts Chat API2868 with pipeline events2869 with failed pipeline2870 behaves like triggered Hangouts Chat integration2871 calls Hangouts Chat API2872 with succeeded pipeline2873 with default notify_only_broken_pipelines2874 does not call Hangouts Chat API2875 when notify_only_broken_pipelines is false2876 behaves like triggered Hangouts Chat integration2877 calls Hangouts Chat API2878 with default branch2879 when only default branch are to be notified2880 behaves like triggered Hangouts Chat integration2881 calls Hangouts Chat API2882 when only protected branches are to be notified2883 behaves like untriggered Hangouts Chat integration2884 does not call Hangouts Chat API2885 when default and protected branches are to be notified2886 behaves like triggered Hangouts Chat integration2887 calls Hangouts Chat API2888 when all branches are to be notified2889 behaves like triggered Hangouts Chat integration2890 calls Hangouts Chat API2891 with protected branch2892 when only default branch are to be notified2893 behaves like untriggered Hangouts Chat integration2894 does not call Hangouts Chat API2895 when only protected branches are to be notified2896 behaves like triggered Hangouts Chat integration2897 calls Hangouts Chat API2898 when default and protected branches are to be notified2899 behaves like triggered Hangouts Chat integration2900 calls Hangouts Chat API2901 when all branches are to be notified2902 behaves like triggered Hangouts Chat integration2903 calls Hangouts Chat API2904 with neither default nor protected branch2905 when only default branch are to be notified2906 behaves like untriggered Hangouts Chat integration2907 does not call Hangouts Chat API2908 when only protected branches are to be notified2909 behaves like untriggered Hangouts Chat integration2910 does not call Hangouts Chat API2911 when default and protected branches are to be notified2912 behaves like untriggered Hangouts Chat integration2913 does not call Hangouts Chat API2914 when all branches are to be notified2915 behaves like triggered Hangouts Chat integration2916 calls Hangouts Chat API2917 deployment events2918 behaves like untriggered Hangouts Chat integration2919 does not call Hangouts Chat API2920Gitlab::CycleAnalytics::StageSummary2921 #identifier2922 returns identifiers for each metric2923 #new_issues2924 doesn't find issues from other projects2925 when from date is given2926 finds the number of issues created after the 'from date'2927 returns the localized title2928 when `to` parameter is given2929 doesn't find any record2930 finds records created between `from` and `to` range2931 #commits2932 doesn't find commits from other projects2933 finds a large (> 100) number of commits if present2934 when from date is given2935 finds the number of commits created after the 'from date'2936 returns the localized title2937 when `to` parameter is given2938 doesn't find any record2939 finds records created between `from` and `to` range2940 when a guest user is signed in2941 does not include commit stats2942 behaves like deployment metrics examples2943 #deploys2944 doesn't find commits from other projects2945 when from date is given2946 finds the number of deploys made created after the 'from date'2947 returns the localized title2948 when `to` parameter is given2949 doesn't find any record2950 finds records created between `from` and `to` range2951 #deployment_frequency2952 includes the unit: `/day`2953 returns 0.0 when there were deploys but the frequency was too low2954 returns `-` when there were no deploys2955 when `to` is nil2956 includes range until now2957 when `to` is given2958 finds records created between `from` and `to` range2959 when `from` and `to` are within a day2960 returns the number of deployments made on that day2961bin/sidekiq-cluster2962 when selecting some queues and excluding others2963 args: ["--negate", "cronjob"], included: "-qdefault,1", excluded: "-qcronjob,1"2964 runs successfully2965 args: ["--queue-selector", "resource_boundary=cpu"], included: "-qupdate_merge_requests,1", excluded: "-qdefault,1"2966 runs successfully2967 when selecting all queues2968 runs successfully with `["*"]`2969 runs successfully with `["--queue-selector", "*"]`2970 when arguments contain newlines2971 raises an error2972Environments::StopService2973 #execute2974 with a deployment2975 stops the environment2976 plays the stop action2977 when an environment has already been stopped2978 does not play the stop action2979 without a deployment2980 stops the environment2981 when the actor is a reporter2982 does not stop the environment2983 #execute_for_branch2984 when environment with review app exists2985 when user has permission to stop environment2986 when environment is associated with removed branch2987 stops environment2988 when environment is associated with different branch2989 does not stop environment2990 when specified branch does not exist2991 does not stop environment2992 when no branch not specified2993 does not stop environment2994 when environment is not stopped2995 does not stop environment2996 when user does not have permission to stop environment2997 when user has no access to manage deployments2998 does not stop environment2999 when branch for stop action is protected3000 does not stop environment3001 when there is no environment associated with review app3002 when user has permission to stop environments3003 does not stop environment3004 when environment does not exist3005 does not raise error3006 #execute_for_merge_request_pipeline3007 has active environment at first3008 when user is a developer3009 stops the active environment3010 when pipeline is a branch pipeline for merge request3011 does not stop the active environment3012 with environment related jobs3013 does not stop environments that was not started by the merge request3014 when fix_related_environments_for_merge_requests feature flag is disabled3015 stops unrelated environments too3016 when user is a reporter3017 does not stop the active environment3018 when pipeline is not associated with environments3019 does not raise exception3020 when pipeline is not a pipeline for merge request3021 does not stop the active environment3022Deployments::UpdateEnvironmentService3023 #execute3024 invalidates the environment etag cache3025 creates ref3026 updates merge request metrics3027 returns the deployment3028 returns the deployment when could not save the environment3029 returns the deployment when environment is stopped3030 when start action is defined3031 and environment is stopped3032 makes environment available3033 when external URL is specified and the tier is unset3034 when external URL is valid3035 succeeds to update the tier automatically3036 when external URL is invalid3037 fails to update the tier due to validation error3038 tracks an exception3039 when variables are used3040 does not create a new environment3041 updates external url3042 when auto_stop_in are used3043 renews auto stop at3044 when deployment tier is specified3045 when tier has already been set3046 overwrites the guessed tier by the specified deployment tier3047 when tier has not been set3048 sets the specified deployment tier3049 when deployment was created by an external CD system3050 guesses the deployment tier3051 when deployment tier is not specified3052 guesses the deployment tier3053 #expanded_environment_url3054 when yaml environment uses $CI_COMMIT_REF_NAME3055 is expected to eq "http://review/master"3056 when yaml environment uses $CI_ENVIRONMENT_SLUG3057 is expected to eq "http://review/prod-slug"3058 when yaml environment uses yaml_variables containing symbol keys3059 is expected to eq "http://review/host"3060 when job variables are generated during runtime3061 expands the environment URL from the dynamic variable3062 when environment url uses a nested variable3063 is expected to eq "http://appname-master.example.com"3064 when the FF ci_expand_environment_name_and_url is disabled3065 is expected to eq "http://${STACK_NAME}.example.com"3066 when yaml environment does not have url3067 returns the external_url from persisted environment3068 merge request metrics3069 while updating the 'first_deployed_to_production_at' time3070 for merge requests merged before the current deploy3071 sets the time if the deploy's environment is 'production'3072 does not raise errors if the merge request does not have a metrics record3073 when job deploys to staging3074 doesn't set the time if the deploy's environment is not 'production'3075 for merge requests merged before the previous deploy3076 if the 'first_deployed_to_production_at' time is already set3077 does not overwrite the older 'first_deployed_to_production_at' time3078 if the 'first_deployed_to_production_at' time is not already set3079 does not overwrite the older 'first_deployed_to_production_at' time3080SearchService3081 #project3082 when the project is accessible3083 returns the project3084 returns the project for guests3085 when the project is not accessible3086 returns nil3087 when there is no project_id3088 returns nil3089 #group3090 when the group is accessible3091 returns the group3092 when the group is not accessible3093 returns nil3094 when there is no group_id3095 returns nil3096 #show_snippets?3097 when :snippets is 'true'3098 returns true3099 when :snippets is not 'true'3100 returns false3101 when :snippets is missing3102 returns false3103 #scope3104 with accessible project_id3105 and allowed scope3106 returns the specified scope3107 and disallowed scope3108 returns the default scope3109 and no scope3110 returns the default scope3111 with 'true' snippets3112 and allowed scope3113 returns the specified scope3114 and disallowed scope3115 returns the default scope3116 and no scope3117 returns the default scope3118 with no project_id, no snippets3119 and allowed scope3120 returns the specified scope3121 and disallowed scope3122 returns the default scope3123 and no scope3124 returns the default scope3125 #search_results3126 with accessible project_id3127 returns an instance of Gitlab::ProjectSearchResults3128 with accessible project_id and 'true' snippets3129 returns an instance of Gitlab::ProjectSearchResults3130 with 'true' snippets3131 returns an instance of Gitlab::SnippetSearchResults3132 with no project_id and no snippets3133 returns an instance of Gitlab::SearchResults3134 #search_objects3135 per_page: parameter3136 when nil3137 defaults to 203138 when empty string3139 defaults to 203140 when negative3141 defaults to 203142 when present3143 converts to integer and passes to search results3144 when greater than 2003145 passes 2003146 page: parameter3147 when < 13148 defaults to 13149 when nil3150 defaults to 13151 with accessible project_id3152 returns objects in the project3153 with accessible project_id and 'true' snippets3154 returns objects in the project3155 with 'true' snippets3156 returns objects in snippets3157 with accessible group_id3158 returns objects in the group3159 with no project_id, group_id or snippets3160 returns objects in global3161 redacting search results3162 issues3163 redacts the inaccessible issue3164 notes3165 redacts the inaccessible note3166 merge_requests3167 redacts the inaccessible merge request3168 with :with_api_entity_associations3169 behaves like redaction limits N+1 queries3170 does not exceed the query limit3171 project repository blobs3172 redacts the inaccessible blob3173 project wiki blobs3174 redacts the inaccessible blob3175 project snippets3176 redacts the inaccessible snippet3177 with :with_api_entity_associations3178 behaves like redaction limits N+1 queries3179 does not exceed the query limit3180 personal snippets3181 redacts the inaccessible snippet3182 with :with_api_entity_associations3183 behaves like redaction limits N+1 queries3184 does not exceed the query limit3185 commits3186 redacts the inaccessible commit3187 users3188 passes the users through3189 #valid_request?3190 is the return value of params.valid?3191 #abuse_messages3192 returns an empty array when not abusive3193 calls on abuse_detection.errors.full_messages when abusive3194 abusive search handling3195 when abusive search but prevent_abusive_searches FF is disabled3196 executes search even if params are abusive3197 a search is abusive3198 does NOT execute search service3199 a search is NOT abusive3200 executes search service3201BlobPolicy3202 project_level: :public, feature_access_level: :enabled, membership: :admin, admin_mode: true, expected_count: 13203 grants permission3204 project_level: :public, feature_access_level: :enabled, membership: :admin, admin_mode: false, expected_count: 13205 grants permission3206 project_level: :public, feature_access_level: :enabled, membership: :reporter, admin_mode: nil, expected_count: 13207 grants permission3208 project_level: :public, feature_access_level: :enabled, membership: :guest, admin_mode: nil, expected_count: 13209 grants permission3210 project_level: :public, feature_access_level: :enabled, membership: :non_member, admin_mode: nil, expected_count: 13211 grants permission3212 project_level: :public, feature_access_level: :enabled, membership: :anonymous, admin_mode: nil, expected_count: 13213 grants permission3214 project_level: :public, feature_access_level: :private, membership: :admin, admin_mode: true, expected_count: 13215 grants permission3216 project_level: :public, feature_access_level: :private, membership: :admin, admin_mode: false, expected_count: 03217 grants permission3218 project_level: :public, feature_access_level: :private, membership: :reporter, admin_mode: nil, expected_count: 13219 grants permission3220 project_level: :public, feature_access_level: :private, membership: :guest, admin_mode: nil, expected_count: 13221 grants permission3222 project_level: :public, feature_access_level: :private, membership: :non_member, admin_mode: nil, expected_count: 03223 grants permission3224 project_level: :public, feature_access_level: :private, membership: :anonymous, admin_mode: nil, expected_count: 03225 grants permission3226 project_level: :public, feature_access_level: :disabled, membership: :reporter, admin_mode: nil, expected_count: 03227 grants permission3228 project_level: :public, feature_access_level: :disabled, membership: :guest, admin_mode: nil, expected_count: 03229 grants permission3230 project_level: :public, feature_access_level: :disabled, membership: :non_member, admin_mode: nil, expected_count: 03231 grants permission3232 project_level: :public, feature_access_level: :disabled, membership: :anonymous, admin_mode: nil, expected_count: 03233 grants permission3234 project_level: :internal, feature_access_level: :enabled, membership: :admin, admin_mode: true, expected_count: 13235 grants permission3236 project_level: :internal, feature_access_level: :enabled, membership: :admin, admin_mode: false, expected_count: 13237 grants permission3238 project_level: :internal, feature_access_level: :enabled, membership: :reporter, admin_mode: nil, expected_count: 13239 grants permission3240 project_level: :internal, feature_access_level: :enabled, membership: :guest, admin_mode: nil, expected_count: 13241 grants permission3242 project_level: :internal, feature_access_level: :enabled, membership: :non_member, admin_mode: nil, expected_count: 13243 grants permission3244 project_level: :internal, feature_access_level: :enabled, membership: :anonymous, admin_mode: nil, expected_count: 03245 grants permission3246 project_level: :internal, feature_access_level: :private, membership: :admin, admin_mode: true, expected_count: 13247 grants permission3248 project_level: :internal, feature_access_level: :private, membership: :admin, admin_mode: false, expected_count: 03249 grants permission3250 project_level: :internal, feature_access_level: :private, membership: :reporter, admin_mode: nil, expected_count: 13251 grants permission3252 project_level: :internal, feature_access_level: :private, membership: :guest, admin_mode: nil, expected_count: 13253 grants permission3254 project_level: :internal, feature_access_level: :private, membership: :non_member, admin_mode: nil, expected_count: 03255 grants permission3256 project_level: :internal, feature_access_level: :private, membership: :anonymous, admin_mode: nil, expected_count: 03257 grants permission3258 project_level: :internal, feature_access_level: :disabled, membership: :reporter, admin_mode: nil, expected_count: 03259 grants permission3260 project_level: :internal, feature_access_level: :disabled, membership: :guest, admin_mode: nil, expected_count: 03261 grants permission3262 project_level: :internal, feature_access_level: :disabled, membership: :non_member, admin_mode: nil, expected_count: 03263 grants permission3264 project_level: :internal, feature_access_level: :disabled, membership: :anonymous, admin_mode: nil, expected_count: 03265 grants permission3266 project_level: :private, feature_access_level: :private, membership: :admin, admin_mode: true, expected_count: 13267 grants permission3268 project_level: :private, feature_access_level: :private, membership: :admin, admin_mode: false, expected_count: 03269 grants permission3270 project_level: :private, feature_access_level: :private, membership: :reporter, admin_mode: nil, expected_count: 13271 grants permission3272 project_level: :private, feature_access_level: :private, membership: :guest, admin_mode: nil, expected_count: 03273 grants permission3274 project_level: :private, feature_access_level: :private, membership: :non_member, admin_mode: nil, expected_count: 03275 grants permission3276 project_level: :private, feature_access_level: :private, membership: :anonymous, admin_mode: nil, expected_count: 03277 grants permission3278 project_level: :private, feature_access_level: :disabled, membership: :reporter, admin_mode: nil, expected_count: 03279 grants permission3280 project_level: :private, feature_access_level: :disabled, membership: :guest, admin_mode: nil, expected_count: 03281 grants permission3282 project_level: :private, feature_access_level: :disabled, membership: :non_member, admin_mode: nil, expected_count: 03283 grants permission3284 project_level: :private, feature_access_level: :disabled, membership: :anonymous, admin_mode: nil, expected_count: 03285 grants permission3286ErrorTracking::SentryClient::Issue3287 #list_issues3288 behaves like calls sentry api3289 calls sentry api3290 behaves like issues have correct return type3291 returns objects of type Gitlab::ErrorTracking::Error3292 behaves like issues have correct length3293 is expected to eq 33294 when response has a pagination info3295 parses the pagination3296 when error object created from sentry response3297 error_object: :id, sentry_response: :id3298 is expected to eq "11"3299 error_object: :first_seen, sentry_response: :firstSeen3300 is expected to eq "2018-12-17T12:00:14Z"3301 error_object: :last_seen, sentry_response: :lastSeen3302 is expected to eq "2018-12-31T12:00:11Z"3303 error_object: :title, sentry_response: :title3304 is expected to eq "gaierror: [Errno -2] Name or service not known"3305 error_object: :type, sentry_response: :type3306 is expected to eq "error"3307 error_object: :user_count, sentry_response: :userCount3308 is expected to eq 03309 error_object: :count, sentry_response: :count3310 is expected to eq "21"3311 error_object: :message, sentry_response: [:metadata, :value]3312 is expected to eq "[Errno -2] Name or service not known"3313 error_object: :culprit, sentry_response: :culprit3314 is expected to eq "sentry.tasks.reports.deliver_organization_user_report"3315 error_object: :short_id, sentry_response: :shortId3316 is expected to eq "INTERNAL-4"3317 error_object: :status, sentry_response: :status3318 is expected to eq "unresolved"3319 error_object: :frequency, sentry_response: [:stats, "24h"]3320 is expected to eq [[1546437600, 0]]3321 error_object: :project_id, sentry_response: [:project, :id]3322 is expected to eq "1"3323 error_object: :project_name, sentry_response: [:project, :name]3324 is expected to eq "Internal"3325 error_object: :project_slug, sentry_response: [:project, :slug]3326 is expected to eq "internal"3327 behaves like has correct external_url3328 #external_url3329 is constructed correctly3330 with redirects3331 behaves like no Sentry redirects3332 does not follow redirects3333 with sort parameter in sentry api3334 calls the sentry api with sort params3335 with invalid sort params3336 throws an error3337 with older sentry versions where keys are not present3338 behaves like calls sentry api3339 calls sentry api3340 behaves like issues have correct return type3341 returns objects of type Gitlab::ErrorTracking::Error3342 behaves like issues have correct length3343 is expected to eq 13344 behaves like has correct external_url3345 #external_url3346 is constructed correctly3347 when essential keys are missing in API response3348 raises exception3349 when sentry api response is too large3350 raises exception3351 behaves like maps Sentry exceptions3352 HTTParty::Error3353 is expected to raise ErrorTracking::SentryClient::Error with "Error when connecting to Sentry"3354 Net::OpenTimeout3355 is expected to raise ErrorTracking::SentryClient::Error with "Connection to Sentry timed out"3356 SocketError3357 is expected to raise ErrorTracking::SentryClient::Error with "Received SocketError when trying to connect to Sentry"3358 OpenSSL::SSL::SSLError3359 is expected to raise ErrorTracking::SentryClient::Error with "Sentry returned invalid SSL data"3360 Errno::ECONNREFUSED3361 is expected to raise ErrorTracking::SentryClient::Error with "Connection refused"3362 StandardError3363 is expected to raise ErrorTracking::SentryClient::Error with "Sentry request failed due to StandardError"3364 when search term is present3365 behaves like calls sentry api3366 calls sentry api3367 behaves like issues have correct return type3368 returns objects of type Gitlab::ErrorTracking::Error3369 behaves like issues have correct length3370 is expected to eq 33371 when cursor is present3372 behaves like calls sentry api3373 calls sentry api3374 behaves like issues have correct return type3375 returns objects of type Gitlab::ErrorTracking::Error3376 behaves like issues have correct length3377 is expected to eq 33378 #issue_details3379 with error object created from sentry response3380 has a correct external URL3381 issue has a correct external base url3382 has a correct GitLab issue url3383 has an integrated attribute set to false3384 has the correct tags3385 error_object: :id, sentry_response: :id3386 is expected to eq "11"3387 error_object: :first_seen, sentry_response: :firstSeen3388 is expected to eq "2018-11-06T21:19:55Z"3389 error_object: :last_seen, sentry_response: :lastSeen3390 is expected to eq "2018-11-06T21:19:55Z"3391 error_object: :title, sentry_response: :title3392 is expected to eq "This is an example Python exception"3393 error_object: :type, sentry_response: :type3394 is expected to eq "default"3395 error_object: :user_count, sentry_response: :userCount3396 is expected to eq 03397 error_object: :count, sentry_response: :count3398 is expected to eq "1"3399 error_object: :message, sentry_response: [:metadata, :value]3400 is expected to eq nil3401 error_object: :culprit, sentry_response: :culprit3402 is expected to eq "raven.scripts.runner in main"3403 error_object: :short_id, sentry_response: :shortId3404 is expected to eq "PUMP-STATION-1"3405 error_object: :status, sentry_response: :status3406 is expected to eq "unresolved"3407 error_object: :frequency, sentry_response: [:stats, "24h"]3408 is expected to eq [[1541451600.0, 557], [1541455200.0, 473], [1541458800.0, 914], [1541462400.0, 991], [1541466000.0, 9...1523600.0, 111], [1541527200.0, 926], [1541530800.0, 772], [1541534400.0, 400], [1541538000.0, 943]]3409 error_object: :project_id, sentry_response: [:project, :id]3410 is expected to eq "2"3411 error_object: :project_name, sentry_response: [:project, :name]3412 is expected to eq "Pump Station"3413 error_object: :project_slug, sentry_response: [:project, :slug]3414 is expected to eq "pump-station"3415 error_object: :first_release_last_commit, sentry_response: [:firstRelease, :lastCommit]3416 is expected to eq nil3417 error_object: :last_release_last_commit, sentry_response: [:lastRelease, :lastCommit]3418 is expected to eq {}3419 error_object: :first_release_short_version, sentry_response: [:firstRelease, :shortVersion]3420 is expected to eq "1764232"3421 error_object: :last_release_short_version, sentry_response: [:lastRelease, :shortVersion]3422 is expected to eq "27de6b42eb4"3423 error_object: :first_release_version, sentry_response: [:firstRelease, :version]3424 is expected to eq "17642328ead24b51867165985996d04b29310337"3425 error_object: :last_release_version, sentry_response: [:lastRelease, :version]3426 is expected to eq "17642328ead24b51867165985996d04b29321448"3427 when issue annotations exist3428 has a correct GitLab issue url3429 when no GitLab issue is linked3430 does not find a GitLab issue3431 #update_issue3432 returns a truthy result3433 behaves like calls sentry api3434 calls sentry api3435 when error is encountered3436 raises the error3437Namespace::RootStorageStatisticsPolicy3438 #rules3439 when the namespace is a personal namespace3440 when the users is anonymous3441 is expected to be falsey3442 when the user is not the owner3443 is expected to be falsey3444 when the user is the owner3445 is expected to be truthy3446 when the namespace is a group3447 when the users is anonymous3448 is expected to be falsey3449 user_type: :non_member, outcome: false3450 is expected to eq false3451 when the user is external3452 is expected to eq false3453 user_type: :guest, outcome: false3454 is expected to eq false3455 when the user is external3456 is expected to eq false3457 user_type: :reporter, outcome: false3458 is expected to eq false3459 when the user is external3460 is expected to eq false3461 user_type: :developer, outcome: false3462 is expected to eq false3463 when the user is external3464 is expected to eq false3465 user_type: :maintainer, outcome: false3466 is expected to eq false3467 when the user is external3468 is expected to eq false3469 user_type: :owner, outcome: true3470 is expected to eq true3471 when the user is external3472 is expected to eq true3473 when the users is anonymous3474 is expected to be falsey3475 user_type: :non_member, outcome: false3476 is expected to eq false3477 when the user is external3478 is expected to eq false3479 user_type: :guest, outcome: false3480 is expected to eq false3481 when the user is external3482 is expected to eq false3483 user_type: :reporter, outcome: false3484 is expected to eq false3485 when the user is external3486 is expected to eq false3487 user_type: :developer, outcome: false3488 is expected to eq false3489 when the user is external3490 is expected to eq false3491 user_type: :maintainer, outcome: false3492 is expected to eq false3493 when the user is external3494 is expected to eq false3495 user_type: :owner, outcome: true3496 is expected to eq true3497 when the user is external3498 is expected to eq true3499 when the users is anonymous3500 is expected to be falsey3501 user_type: :non_member, outcome: false3502 is expected to eq false3503 when the user is external3504 is expected to eq false3505 user_type: :guest, outcome: false3506 is expected to eq false3507 when the user is external3508 is expected to eq false3509 user_type: :reporter, outcome: false3510 is expected to eq false3511 when the user is external3512 is expected to eq false3513 user_type: :developer, outcome: false3514 is expected to eq false3515 when the user is external3516 is expected to eq false3517 user_type: :maintainer, outcome: false3518 is expected to eq false3519 when the user is external3520 is expected to eq false3521 user_type: :owner, outcome: true3522 is expected to eq true3523 when the user is external3524 is expected to eq true3525CommitStatusPresenter3526 inherits from Gitlab::View::Presenter::Delegated3527 #callout_failure_message3528 when troubleshooting doc is available3529 appends the troubleshooting link3530 covers all failure reasons3531 unknown_failure3532 is a valid status3533 script_failure3534 is a valid status3535 api_failure3536 is a valid status3537 stuck_or_timeout_failure3538 is a valid status3539 runner_system_failure3540 is a valid status3541 missing_dependency_failure3542 is a valid status3543 runner_unsupported3544 is a valid status3545 stale_schedule3546 is a valid status3547 job_execution_timeout3548 is a valid status3549 archived_failure3550 is a valid status3551 unmet_prerequisites3552 is a valid status3553 scheduler_failure3554 is a valid status3555 data_integrity_failure3556 is a valid status3557 forward_deployment_failure3558 is a valid status3559 user_blocked3560 is a valid status3561 project_deleted3562 is a valid status3563 ci_quota_exceeded3564 is a valid status3565 pipeline_loop_detected3566 is a valid status3567 no_matching_runner3568 is a valid status3569 trace_size_exceeded3570 is a valid status3571 builds_disabled3572 is a valid status3573 environment_creation_failure3574 is a valid status3575 deployment_rejected3576 is a valid status3577 insufficient_bridge_permissions3578 is a valid status3579 downstream_bridge_project_not_found3580 is a valid status3581 invalid_bridge_trigger3582 is a valid status3583 bridge_pipeline_is_child_pipeline3584 is a valid status3585 downstream_pipeline_creation_failed3586 is a valid status3587 secrets_provider_not_found3588 is a valid status3589 reached_max_descendant_pipelines_depth3590 is a valid status3591 protected_environment_failure3592 is a valid status3593 upstream_bridge_project_not_found3594 is a valid status3595 insufficient_upstream_permissions3596 is a valid status3597 invalid failure message3598 is an invalid status3599DiffsEntity3600 as json3601 contains needed attributes3602 broken merge request3603 renders without errors3604 when a commit_id is passed3605 when the passed commit is not the first or last in the group3606 includes commit references for previous and next3607 when the passed commit is the first in the group3608 includes commit references for nil and previous commit3609 when the passed commit is the last in the group3610 includes commit references for the next and nil3611 when there are conflicts3612 conflicts are highlighted3613 merge ref head diff is not chosen to be displayed3614 conflicts are not calculated3615 when conflicts cannot be resolved3616 conflicts are not highlighted3617 when allow_tree_conflicts is set to true3618 conflicts are still highlighted3619Packages::Debian::ProcessChangesWorker3620 #perform3621 with mocked service3622 calls ProcessChangesService3623 with non existing package file3624 returns early without error3625 with nil package file id3626 returns early without error3627 with non existing user3628 returns early without error3629 with nil user id3630 returns early without error3631 when the service raises an error3632 removes package file3633 behaves like an idempotent worker3634 is labeled as idempotent3635 performs multiple times sequentially without raising an exception3636 sets the Debian file type as changes3637GroupMemberPolicy3638 with anonymous user3639 is expected to be allowed :read_group3640 design management is enabled3641 is expected to be allowed :read_design_activity3642 for a private group3643 is expected not to be allowed :destroy_group_member3644 for an internal group3645 is expected not to be allowed :destroy_group_member3646 with guest user, for own membership3647 is expected not to be allowed :update_group_member3648 is expected to be allowed :destroy_group_member3649 with guest user, for other membership3650 is expected not to be allowed :update_group_member3651 is expected to be allowed :read_group3652 with bot user3653 is expected to be allowed :destroy_project_bot_member3654 with anonymous bot user3655 is expected not to be allowed :destroy_project_bot_member3656 with one owner3657 is expected not to be allowed :destroy_group_member3658 is expected to be allowed :read_group3659 with one blocked owner3660 is expected not to be allowed :destroy_group_member3661 is expected not to be allowed :read_group3662 with more than one owner3663 is expected to be allowed :destroy_group_member3664 is expected not to be allowed :destroy_project_bot_member3665 with the group parent3666 is expected to be allowed :update_group_member3667 without group parent3668 is expected not to be allowed :update_group_member3669 without group parent with two owners3670 is expected to be allowed :update_group_member3671Clusters::Kubernetes::CreateOrUpdateNamespaceService#execute3672 group clusters3673 when kubernetes namespace is not persisted3674 behaves like successful creation of kubernetes namespace3675 creates a Clusters::KubernetesNamespace3676 creates project service account and namespace3677 configures kubernetes token3678 without environment3679 creates project service account and namespace3680 project clusters3681 when kubernetes namespace is not persisted3682 behaves like successful creation of kubernetes namespace3683 creates a Clusters::KubernetesNamespace3684 creates project service account and namespace3685 configures kubernetes token3686 without environment3687 creates project service account and namespace3688 when there is a Kubernetes Namespace associated3689 does not create any Clusters::KubernetesNamespace3690 creates project service account3691 updates Clusters::KubernetesNamespace3692Ci::LegacyStage3693 #expectations3694 is expected to includes the StaticModel module3695 is expected to respond to #pipeline3696 is expected to respond to #name3697 is expected to delegate #project to the #pipeline object3698 #statuses3699 returns only matching statuses3700 #groups3701 returns an array of three groups3702 returns groups with correctly ordered statuses3703 returns groups with correct names3704 when a name is nil on legacy pipelines3705 returns an array of three groups3706 #statuses_count3707 counts statuses only from current stage3708 #builds3709 returns only builds3710 #status3711 if status is already defined3712 returns defined status3713 if status has to be calculated3714 returns status of a build3715 and builds are retried3716 returns status of latest build3717 #detailed_status3718 when build is created3719 returns detailed status for created stage3720 when build is pending3721 returns detailed status for pending stage3722 when build is running3723 returns detailed status for running stage3724 when build is successful3725 returns detailed status for successful stage3726 when build is failed3727 returns detailed status for failed stage3728 when build is canceled3729 returns detailed status for canceled stage3730 when build is skipped3731 returns detailed status for skipped stage3732 #success?3733 when stage is successful3734 is successful3735 when stage is not successful3736 is not successful3737 #has_warnings?3738 when stage has warnings3739 when using memoized warnings flag3740 when there are warnings3741 returns true using memoized value3742 when there are no warnings3743 returns false using memoized value3744 when calculating warnings from statuses3745 has warnings calculated from statuses3746 when stage does not have warnings3747 does not have warnings calculated from statuses3748 behaves like manual playable stage3749 #manual_playable?3750 when is manual3751 is expected to be truthy3752 when is scheduled3753 is expected to be truthy3754 when is skipped3755 is expected to be truthy3756Projects::Operations::UpdateService3757 #execute3758 alerting setting3759 with valid params3760 when regenerate_token is not set3761 with an existing setting3762 ignores provided token3763 without an existing setting3764 behaves like setting creation3765 creates a setting3766 when regenerate_token is set3767 with an existing setting3768 regenerates token3769 without an existing setting3770 behaves like setting creation3771 creates a setting3772 with insufficient permissions3773 behaves like no operation3774 does nothing3775 with empty params3776 behaves like no operation3777 does nothing3778 metrics dashboard setting3779 without existing metrics dashboard setting3780 creates a setting3781 with existing metrics dashboard setting3782 updates the settings3783 with blank external_dashboard_url3784 updates dashboard_timezone3785 error tracking3786 with existing error tracking setting3787 updates the settings3788 disable error tracking3789 can set api_url to nil3790 without an existing error tracking setting3791 creates a setting3792 partial_update3793 with setting3794 service succeeds3795 updates attributes3796 only updates enabled attribute3797 with integrated attribute3798 updates integrated attribute3799 only updates enabled and integrated attributes3800 without setting3801 creates setting with default values3802 with masked param token3803 does not update token3804 with invalid parameters3805 does nothing3806 with inappropriate params3807 ignores params3808 grafana integration3809 without existing grafana integration3810 creates an integration3811 with an existing grafana integration3812 updates the settings3813 with all grafana attributes blank in params3814 destroys the metrics_setting entry in DB3815 prometheus integration3816 prometheus params were passed into service3817WARNING: You're overriding a previous stub implementation of `new`. Called from /builds/gitlab-org/gitlab/spec/services/projects/operations/update_service_spec.rb:436:in `block (5 levels) in <top (required)>'.. Called from /builds/gitlab-org/gitlab/spec/services/projects/operations/update_service_spec.rb:436:in `block (5 levels) in <top (required)>'.3818 uses Project#find_or_initialize_integration to include instance defined defaults and pass them to Projects::UpdateService3819 when prometheus params are not passed into service3820 does not pass any prometheus params into Projects::UpdateService3821 tracing setting3822 with valid params3823 with an existing setting3824 updates the setting3825 with missing external_url3826 behaves like setting deletion3827 deletes the setting3828 does not modify original params3829 with empty external_url3830 behaves like setting deletion3831 deletes the setting3832 does not modify original params3833 with blank external_url3834 behaves like setting deletion3835 deletes the setting3836 does not modify original params3837 without an existing setting3838 creates a setting3839 with empty params3840 does nothing3841ProjectAPICompatibility3842 converts build_git_strategy=fetch to build_allow_git_fetch=true3843 converts build_git_strategy=clone to build_allow_git_fetch=false3844 #auto_devops_enabled3845 initial: :missing, final: nil3846 sets the correct value3847 initial: :missing, final: false3848 sets the correct value3849 initial: :missing, final: true3850 sets the correct value3851 initial: nil, final: nil3852 sets the correct value3853 initial: nil, final: false3854 sets the correct value3855 initial: nil, final: true3856 sets the correct value3857 initial: false, final: nil3858 sets the correct value3859 initial: false, final: false3860 sets the correct value3861 initial: false, final: true3862 sets the correct value3863 initial: true, final: nil3864 sets the correct value3865 initial: true, final: false3866 sets the correct value3867 initial: true, final: true3868 sets the correct value3869 #auto_devops_deploy_strategy3870 initial: :missing, final: "continuous"3871 sets the correct value3872 initial: :missing, final: "manual"3873 sets the correct value3874 initial: :missing, final: "timed_incremental"3875 sets the correct value3876 initial: "continuous", final: "continuous"3877 sets the correct value3878 initial: "continuous", final: "manual"3879 sets the correct value3880 initial: "continuous", final: "timed_incremental"3881 sets the correct value3882 initial: "manual", final: "continuous"3883 sets the correct value3884 initial: "manual", final: "manual"3885 sets the correct value3886 initial: "manual", final: "timed_incremental"3887 sets the correct value3888 initial: "timed_incremental", final: "continuous"3889 sets the correct value3890 initial: "timed_incremental", final: "manual"3891 sets the correct value3892 initial: "timed_incremental", final: "timed_incremental"3893 sets the correct value3894Serverless::DomainCluster3895 validations3896 is expected to validate that :pages_domain cannot be empty/falsy3897 is expected to validate that :knative cannot be empty/falsy3898 is expected to validate that :uuid cannot be empty/falsy3899 is expected to validate that the length of :uuid is 143900 is expected to validate that :uuid is case-sensitively unique3901 validates that uuid has only hex characters3902 associations3903 is expected to belong to pages_domain required: false3904 is expected to belong to knative required: false3905 is expected to belong to creator optional: true3906 uuid3907 when nil3908 generates a value by default3909 when not nil3910 does not override the existing value3911 cluster3912 is expected to respond to #cluster3913 domain3914 is expected to respond to #domain3915 certificate3916 is expected to respond to #certificate3917 key3918 is expected to respond to #key3919Gitlab::Auth::Ldap::DN3920 #normalize_value3921 behaves like normalizes a DN attribute value3922 test_description: "strips extraneous whitespace", given: " John Smith ", expected: "john smith"3923 normalizes the DN attribute value3924 test_description: "unescapes non-reserved, non-special Unicode characters", given: "Sebasti\\c3\\a1n\\ C.\\20Smith", expected: "sebastián c. smith"3925 normalizes the DN attribute value3926 test_description: "downcases the whole string", given: "JoHn C. Smith", expected: "john c. smith"3927 normalizes the DN attribute value3928 test_description: "does not strip an escaped leading space in an attribute value", given: "\\ John Smith", expected: "\\ john smith"3929 normalizes the DN attribute value3930 test_description: "does not strip an escaped trailing space in an attribute value", given: "John Smith\\ ", expected: "john smith\\ "3931 normalizes the DN attribute value3932 test_description: "hex-escapes an escaped leading newline in an attribute value", given: "\\\nJohn Smith", expected: "\\0ajohn smith"3933 normalizes the DN attribute value3934 test_description: "hex-escapes and does not strip an escaped trailing newline in an attribute value", given: "John Smith\\\n", expected: "john smith\\0a"3935 normalizes the DN attribute value3936 test_description: "hex-escapes an unescaped leading newline (actually an invalid DN value?)", given: "\nJohn Smith", expected: "\\0ajohn smith"3937 normalizes the DN attribute value3938 test_description: "strips an unescaped trailing newline (actually an invalid DN value?)", given: "John Smith\n", expected: "john smith"3939 normalizes the DN attribute value3940 test_description: "does not strip if no extraneous whitespace", given: "John Smith", expected: "john smith"3941 normalizes the DN attribute value3942 test_description: "does not modify an escaped equal sign in an attribute value", given: " foo \\= bar", expected: "foo \\= bar"3943 normalizes the DN attribute value3944 test_description: "converts an escaped hex equal sign to an escaped equal sign in an attribute value", given: " foo \\3D bar", expected: "foo \\= bar"3945 normalizes the DN attribute value3946 test_description: "does not modify an escaped comma in an attribute value", given: "San Francisco\\, CA", expected: "san francisco\\, ca"3947 normalizes the DN attribute value3948 test_description: "converts an escaped hex comma to an escaped comma in an attribute value", given: "San Francisco\\2C CA", expected: "san francisco\\, ca"3949 normalizes the DN attribute value3950 test_description: "does not modify an escaped hex carriage return character in an attribute value", given: "San Francisco\\,\\0DCA", expected: "san francisco\\,\\0dca"3951 normalizes the DN attribute value3952 test_description: "does not modify an escaped hex line feed character in an attribute value", given: "San Francisco\\,\\0ACA", expected: "san francisco\\,\\0aca"3953 normalizes the DN attribute value3954 test_description: "does not modify an escaped hex CRLF in an attribute value", given: "San Francisco\\,\\0D\\0ACA", expected: "san francisco\\,\\0d\\0aca"3955 normalizes the DN attribute value3956 when the given DN is malformed3957 when ending with a comma3958 raises MalformedError3959 when given a BER encoded attribute value with a space in it3960 raises MalformedError3961 when given a BER encoded attribute value with a non-hex character in it3962 raises MalformedError3963 when given a BER encoded attribute value with a non-hex character in it3964 raises MalformedError3965 when given a hex pair with a non-hex character in it, inside double quotes3966 raises MalformedError3967 with an open (as opposed to closed) double quote3968 raises MalformedError3969 with an invalid escaped hex code3970 raises MalformedError3971 with a value ending with the escape character3972 raises MalformedError3973 #to_normalized_s3974 behaves like normalizes a DN3975 test_description: "strips extraneous whitespace", given: "uid =John Smith , ou = People, dc= example,dc =com", expected: "uid=john smith,ou=people,dc=example,dc=com"3976 normalizes the DN3977 test_description: "strips extraneous whitespace for a DN with a single RDN", given: "uid = John Smith", expected: "uid=john smith"3978 normalizes the DN3979 test_description: "unescapes non-reserved, non-special Unicode characters", given: "uid = Sebasti\\c3\\a1n\\ C.\\20Smith, ou=People (aka. \\22humans\\\") ,dc=example, dc=com", expected: "uid=sebastián c. smith,ou=people (aka. \\\"humans\\\"),dc=example,dc=com"3980 normalizes the DN3981 test_description: "downcases the whole string", given: "UID=John Smith,ou=People,dc=example,dc=com", expected: "uid=john smith,ou=people,dc=example,dc=com"3982 normalizes the DN3983 test_description: "for a null DN (empty string), returns empty string and does not error", given: "", expected: ""3984 normalizes the DN3985 test_description: "does not strip an escaped leading space in an attribute value", given: "uid=\\ John Smith,ou=People,dc=example,dc=com", expected: "uid=\\ john smith,ou=people,dc=example,dc=com"3986 normalizes the DN3987 test_description: "does not strip an escaped leading space in the last attribute value", given: "uid=\\ John Smith", expected: "uid=\\ john smith"3988 normalizes the DN3989 test_description: "does not strip an escaped trailing space in an attribute value", given: "uid=John Smith\\ ,ou=People,dc=example,dc=com", expected: "uid=john smith\\ ,ou=people,dc=example,dc=com"3990 normalizes the DN3991 test_description: "strips extraneous spaces after an escaped trailing space", given: "uid=John Smith\\ ,ou=People,dc=example,dc=com", expected: "uid=john smith\\ ,ou=people,dc=example,dc=com"3992 normalizes the DN3993 test_description: "strips extraneous spaces after an escaped trailing space at the end of the DN", given: "uid=John Smith,ou=People,dc=example,dc=com\\ ", expected: "uid=john smith,ou=people,dc=example,dc=com\\ "3994 normalizes the DN3995 test_description: "properly preserves escaped trailing space after unescaped trailing spaces", given: "uid=John Smith \\ ,ou=People,dc=example,dc=com", expected: "uid=john smith \\ ,ou=people,dc=example,dc=com"3996 normalizes the DN3997 test_description: "preserves multiple inner spaces in an attribute value", given: "uid=John Smith,ou=People,dc=example,dc=com", expected: "uid=john smith,ou=people,dc=example,dc=com"3998 normalizes the DN3999 test_description: "preserves inner spaces after an escaped space", given: "uid=John\\ Smith,ou=People,dc=example,dc=com", expected: "uid=john smith,ou=people,dc=example,dc=com"4000 normalizes the DN4001 test_description: "hex-escapes an escaped leading newline in an attribute value", given: "uid=\\\nJohn Smith,ou=People,dc=example,dc=com", expected: "uid=\\0ajohn smith,ou=people,dc=example,dc=com"4002 normalizes the DN4003 test_description: "hex-escapes and does not strip an escaped trailing newline in an attribute value", given: "uid=John Smith\\\n,ou=People,dc=example,dc=com", expected: "uid=john smith\\0a,ou=people,dc=example,dc=com"4004 normalizes the DN4005 test_description: "hex-escapes an unescaped leading newline (actually an invalid DN?)", given: "uid=\nJohn Smith,ou=People,dc=example,dc=com", expected: "uid=\\0ajohn smith,ou=people,dc=example,dc=com"4006 normalizes the DN4007 test_description: "strips an unescaped trailing newline (actually an invalid DN?)", given: "uid=John Smith\n,ou=People,dc=example,dc=com", expected: "uid=john smith,ou=people,dc=example,dc=com"4008 normalizes the DN4009 test_description: "does not strip if no extraneous whitespace", given: "uid=John Smith,ou=People,dc=example,dc=com", expected: "uid=john smith,ou=people,dc=example,dc=com"4010 normalizes the DN4011 test_description: "does not modify an escaped equal sign in an attribute value", given: "uid= foo \\= bar", expected: "uid=foo \\= bar"4012 normalizes the DN4013 test_description: "converts an escaped hex equal sign to an escaped equal sign in an attribute value", given: "uid= foo \\3D bar", expected: "uid=foo \\= bar"4014 normalizes the DN4015 test_description: "does not modify an escaped comma in an attribute value", given: "uid= John C. Smith, ou=San Francisco\\, CA", expected: "uid=john c. smith,ou=san francisco\\, ca"4016 normalizes the DN4017 test_description: "converts an escaped hex comma to an escaped comma in an attribute value", given: "uid= John C. Smith, ou=San Francisco\\2C CA", expected: "uid=john c. smith,ou=san francisco\\, ca"4018 normalizes the DN4019 test_description: "does not modify an escaped hex carriage return character in an attribute value", given: "uid= John C. Smith, ou=San Francisco\\,\\0DCA", expected: "uid=john c. smith,ou=san francisco\\,\\0dca"4020 normalizes the DN4021 test_description: "does not modify an escaped hex line feed character in an attribute value", given: "uid= John C. Smith, ou=San Francisco\\,\\0ACA", expected: "uid=john c. smith,ou=san francisco\\,\\0aca"4022 normalizes the DN4023 test_description: "does not modify an escaped hex CRLF in an attribute value", given: "uid= John C. Smith, ou=San Francisco\\,\\0D\\0ACA", expected: "uid=john c. smith,ou=san francisco\\,\\0d\\0aca"4024 normalizes the DN4025 test_description: "allows attribute type name OIDs", given: "0.9.2342.19200300.100.1.25=Example,0.9.2342.19200300.100.1.25=Com", expected: "0.9.2342.19200300.100.1.25=example,0.9.2342.19200300.100.1.25=com"4026 normalizes the DN4027 test_description: "strips extraneous whitespace from attribute type name OIDs", given: "0.9.2342.19200300.100.1.25 = Example, 0.9.2342.19200300.100.1.25 = Com", expected: "0.9.2342.19200300.100.1.25=example,0.9.2342.19200300.100.1.25=com"4028 normalizes the DN4029 when we do not support the given DN format4030 multivalued RDNs4031 without extraneous whitespace4032 raises UnsupportedError4033 with extraneous whitespace4034 around the phone number plus sign4035 raises UnsupportedError4036 not around the phone number plus sign4037 raises UnsupportedError4038 when the given DN is malformed4039 when ending with a comma4040 raises MalformedError4041 when given a BER encoded attribute value with a space in it4042 raises MalformedError4043 when given a BER encoded attribute value with a non-hex character in it4044 raises MalformedError4045 when given a BER encoded attribute value with a non-hex character in it4046 raises MalformedError4047 when given a hex pair with a non-hex character in it, inside double quotes4048 raises MalformedError4049 without a name value pair4050 raises MalformedError4051 with an open (as opposed to closed) double quote4052 raises MalformedError4053 with an invalid escaped hex code4054 raises MalformedError4055 with a value ending with the escape character4056 raises MalformedError4057 with an invalid OID attribute type name4058 raises MalformedError4059 with a period in a non-OID attribute type name4060 raises MalformedError4061 when starting with non-space, non-alphanumeric character4062 raises MalformedError4063 when given a UID with an escaped equal sign4064 raises MalformedError4065Backup::Manager4066 #run_create_task4067 calls the named task4068 disabled4069 informs the user4070 skipped4071 informs the user4072 #run_restore_task4073 calls the named task4074 disabled4075 informs the user4076 pre_restore_warning4077 displays and waits for the user4078 does not continue when the user quits4079 post_restore_warning4080 displays and waits for the user4081 does not continue when the user quits4082 #create4083 executes tar4084 tar fails4085 logs a failure4086 when BACKUP is set4087 uses the given value as tar file name4088 when skipped is set in backup_information.yml4089 executes tar4090 when SKIP env is set4091 executes tar4092 when the destination is optional4093 executes tar4094 many backup files4095 when keep_time is zero4096 removes no files4097 prints a skipped message4098 when no valid file is found4099 removes no files4100 prints a done message4101 when there are no files older than keep_time4102 removes no files4103 prints a done message4104 when keep_time is set to remove files4105 removes matching files with a human-readable versioned timestamp4106 removes matching files with a human-readable versioned timestamp with tagged EE4107 removes matching files with a human-readable non-versioned timestamp4108 removes matching files without a human-readable timestamp4109 does not remove files that are not old enough4110 does not remove non-matching files4111 prints a done message4112 when removing a file fails4113 removes the remaining expected files4114 sets the correct removed count4115 prints the error from file that could not be removed4116 cloud storage4117 skipped upload4118 informs the user4119 target path4120 uses the tar filename by default4121 adds the DIRECTORY environment variable if present4122 with AWS with server side encryption4123 with SSE-S3 without using storage_options4124 sets encryption attributes4125 with SSE-C (customer-provided keys) options4126 sets encryption attributes4127 with SSE-KMS options4128 sets encryption attributes4129 with Google provider4130 does not attempt to set ACL4131 with AzureRM provider4132 loads the provider4133 incremental4134 when there are no backup files in the directory4135 fails the operation and prints an error4136 when there are two backup files in the directory and BACKUP variable is not set4137 prints the list of available backups4138 fails the operation and prints an error4139 when BACKUP variable is set to a non-existing file4140 fails the operation and prints an error4141 when BACKUP variable is set to a correct file4142 unpacks and packs the backup4143 untar fails4144 logs a failure4145 tar fails4146 logs a failure4147 on version mismatch4148 stops the process4149 when there is a non-tarred backup in the directory4150 selects the non-tarred backup to restore from4151 on version mismatch4152 stops the process4153 #restore4154 when there are no backup files in the directory4155 fails the operation and prints an error4156 when there are two backup files in the directory and BACKUP variable is not set4157 prints the list of available backups4158 fails the operation and prints an error4159 when BACKUP variable is set to a non-existing file4160 fails the operation and prints an error4161 when BACKUP variable is set to a correct file4162 unpacks the file4163 tar fails4164 logs a failure4165 on version mismatch4166 stops the process4167 tmp files4168 removes backups/tmp dir4169 when there is a non-tarred backup in the directory4170 selects the non-tarred backup to restore from4171 on version mismatch4172 stops the process4173 tmp files4174 removes backups/tmp dir4175Mutations::Releases::Update4176 #ready?4177 when released_at is included as an argument but is passed nil4178 raises a validation error4179 when milestones is included as an argument but is passed nil4180 raises a validation error4181 #resolve4182 when the current user has access to create releases4183 name4184 when a new name is provided4185 updates the name4186 behaves like no changes to the release except for the4187 does not change other release properties4188 with protected tag4189 when user has access to the protected tag4190 does not have errors4191 when user does not have access to the protected tag4192 has an access error4193 when nil is provided4194 updates the name to be the tag name4195 behaves like no changes to the release except for the4196 does not change other release properties4197 description4198 when a new description is provided4199 updates the description4200 behaves like no changes to the release except for the4201 does not change other release properties4202 when nil is provided4203 updates the description to nil4204 behaves like no changes to the release except for the4205 does not change other release properties4206 released_at4207 when a new released_at is provided4208 updates the released_at4209 behaves like no changes to the release except for the4210 does not change other release properties4211 milestones4212 when a new set of milestones is provided provided4213 updates the milestone associations4214 behaves like no changes to the release except for the4215 does not change other release properties4216 when an empty array is provided4217 removes all milestone associations4218 behaves like no changes to the release except for the4219 does not change other release properties4220 when a non-existent milestone title is provided4221 behaves like validation error with message4222 returns the updated release as nil4223 returns a validation error4224 when a milestone title from a different project is provided4225 behaves like validation error with message4226 returns the updated release as nil4227 returns a validation error4228 validation4229 when no updated fields are provided4230 behaves like validation error with message4231 returns the updated release as nil4232 returns a validation error4233 when the tag does not exist4234 behaves like validation error with message4235 returns the updated release as nil4236 returns a validation error4237 when the project does not exist4238 raises an error4239 when the current user doesn't have access to update releases4240 raises an error4241CommitCollection4242 #each4243 yields every commit4244 .committers4245 returns a relation of users when users are found4246 returns empty array when committers cannot be found4247 excludes authors of merge commits4248 #without_merge_commits4249 returns all commits except merge commits4250 #with_latest_pipeline4251 sets the latest pipeline for every commit so no additional queries are necessary4252 performs a single query to fetch pipeline warnings4253 #with_markdown_cache4254 preloads commits cache markdown4255 enrichment methods4256 #unenriched4257 returns all commits that are not backed by gitaly data4258 #fully_enriched?4259 returns true when all commits are backed by gitaly data4260 returns false when any commits are not backed by gitaly data4261 returns true when the collection is empty4262 #enrich!4263 replaces commits in the collection with those backed by gitaly data4264 maintains the original order of the commits4265 fetches data if there are unenriched commits4266 does not fetch data if all commits are enriched4267 returns the original commit if the commit could not be lazy loaded4268 #respond_to_missing?4269 returns true when the underlying Array responds to the message4270 returns false when the underlying Array does not respond to the message4271 #method_missing4272 delegates undefined methods to the underlying Array4273ClusterAncestorsFinder#execute4274 for a project4275 returns the project clusters followed by group clusters4276 nested groups4277 returns the project clusters followed by group clusters ordered ascending the hierarchy4278 user cannot read clusters for clusterable4279 returns nothing4280 for a group4281 returns the list of group clusters4282 nested groups4283 returns the list of group clusters ordered ascending the hierarchy4284 for an instance4285 when admin mode is enabled4286 returns the list of instance clusters4287 when admin mode is disabled4288 returns nothing4289Projects::UpdatePagesService4290 fails if no artifacts4291 fails for invalid archive4292 for new artifacts4293 for a valid job4294 doesn't delete artifacts after deploying4295 succeeds4296 creates pages_deployment and saves it in the metadata4297 does not fail if pages_metadata is absent4298 limits pages size4299 limits pages file count4300 when there is an old pages deployment4301 schedules a destruction of older deployments4302 removes older deployments4303 when timeout happens by DNS error4304 raises an error4305 when missing artifacts metadata4306 does not raise an error as failed job4307 with background jobs running4308 succeeds4309 when sha on branch was updated before deployment was uploaded4310 succeeds4311 when old deployment present4312 succeeds4313 when newer deployment present4314 fails4315 when artifacts archive does not have sha2564316 fails with exception raised4317 maximum pages artifacts size4318 when maximum pages size is set to zero4319 behaves like pages size limit is4320 when size is below the limit4321 updates pages correctly4322 when size is above the limit4323 limits the maximum size of gitlab pages4324 when size is limited on the instance level4325 behaves like pages size limit is4326 when size is below the limit4327 updates pages correctly4328 when size is above the limit4329 limits the maximum size of gitlab pages4330 when retrying the job4331 marks older pages:deploy jobs retried4332Gitlab::Database::RenameReservedPathsMigration::V14333 #rename_child_paths4334 behaves like renames child namespaces4335 renames namespaces4336 #rename_wildcard_paths4337 renames projects4338 behaves like renames child namespaces4339 renames namespaces4340 #rename_root_paths4341 renames namespaces4342 #revert_renames4343 renames namespaces4344 renames projects4345Banzai::Filter::References::DesignReferenceFilter4346 does not error when we add redaction to the pipeline4347 .call4348 requires project context4349 #call4350 feature flags4351 design management is not enabled4352 behaves like a no-op filter4353 does nothing4354 wrapped in a <pre/>4355 behaves like a no-op filter4356 does nothing4357 wrapped in a <code/>4358 behaves like a no-op filter4359 does nothing4360 wrapped in a <a/>4361 behaves like a no-op filter4362 does nothing4363 wrapped in a <style/>4364 behaves like a no-op filter4365 does nothing4366 .identifier4367 filename: "simple.png"4368 can parse the reference4369 filename: "SIMPLE.PNG"4370 can parse the reference4371 filename: "has-hyphen.jpg"4372 can parse the reference4373 filename: "snake_case.svg"4374 can parse the reference4375 static properties4376 is expected to eq :design4377 #data_attributes_for4378 is expected to include {:issue => 779, :original => "Added http://localhost/namespace990/project514/-/issues/10/designs/homescreen-1.jpg", :project => 991, :design => 799}4379 internal reference4380 behaves like a reference containing an element node4381 does not escape inner html4382 behaves like a good link reference4383 produces a good link4384 the filename contains invalid characters4385 filename: "with some spaces.png"4386 behaves like a no-op filter4387 does nothing4388 filename: "with <script>console.log(\"pwded\")<%2Fscript>.png"4389 behaves like a no-op filter4390 does nothing4391 filename: "foo\"bar.png"4392 behaves like a no-op filter4393 does nothing4394 filename: "A \"very\" good file.png"4395 behaves like a no-op filter4396 does nothing4397 the reference is to a non-existant design4398 behaves like a no-op filter4399 does nothing4400 design management is disabled for the referenced project4401 behaves like a no-op filter4402 does nothing4403 link pattern4404 matches4405 cross-project / cross-namespace complete reference4406 links to a valid reference4407 link has valid text4408 includes default classes4409 behaves like a reference containing an element node4410 does not escape inner html4411 behaves like a good link reference4412 produces a good link4413 design management is disabled for that project4414 behaves like a no-op filter4415 does nothing4416 the reference is invalid4417 behaves like a no-op filter4418 does nothing4419 performance4420 is linear in the number of projects with design management enabled each design refers to4421Projects::UpdateRemoteMirrorService4422 #execute4423 does not fetch the remote repository4424 marks the mirror as started when beginning4425 marks the mirror as successfully finished4426 marks the mirror as failed and raises the error when an unexpected error occurs4427 when the URL is blocked4428 hard retries and returns error status4429 when retries are exceeded4430 hard fails and returns error status4431 when given URLs containing escaped elements4432 behaves like URLs containing escaped elements return expected status4433 url: "https://user:0a%23@test.example.com/project.git", result_status: :success4434 returns expected status4435 url: "https://git.example.com:1%2F%2F@source.developers.google.com/project.git", result_status: :success4436 returns expected status4437 url: "git%3A%2F%2Flocalhost%3A1234%2Fsome-path%3Fsome-query%3Dsome-val%23%40example.com%2F", result_status: :error4438 returns expected status4439 url: "https%253A%252F%252Fuser%253A0a%252523%2540test.example.com%252Fproject.git", result_status: :error4440 returns expected status4441 when the update fails because of a `Gitlab::Git::CommandError`4442 wraps `Gitlab::Git::CommandError`s in a service error4443 marks the mirror as to be retried4444 marks the mirror as failed after 3 tries4445 when there are divergent refs4446 marks the mirror as failed and sets an error message4447 sending lfs objects4448 pushes LFS objects to a HTTP repository4449 when LFS objects fail to push4450 when remote_mirror_fail_on_lfs feature flag enabled4451 fails update4452 when remote_mirror_fail_on_lfs feature flag is disabled4453 does not fail update4454 with SSH repository4455 does nothing to an SSH repository4456 does nothing if LFS is disabled4457 does nothing if non-password auth is specified4458Quality::TestLevel4459 #pattern4460 when level is all4461 returns a pattern4462 when level is geo4463 returns a pattern4464 when level is frontend_fixture4465 returns a pattern4466 when level is unit4467 returns a pattern4468 when level is migration4469 returns a pattern4470 when level is background_migration4471 returns a pattern4472 when level is integration4473 returns a pattern4474 when level is system4475 returns a pattern4476 with a prefix4477 returns a pattern4478 with several prefixes4479 returns a pattern4480 performance4481 memoizes the pattern for a given level4482 freezes the pattern for a given level4483 #regexp4484 when level is all4485 returns a regexp4486 when level is geo4487 returns a regexp4488 when level is frontend_fixture4489 returns a regexp4490 when level is unit4491 returns a regexp4492 when level is migration4493 returns a regexp4494 when level is background_migration4495 returns a regexp4496 when level is integration4497 returns a regexp4498 when level is system4499 returns a regexp4500 with a prefix4501 returns a regexp4502 with several prefixes4503 returns a regexp4504 performance4505 memoizes the regexp for a given level4506 freezes the regexp for a given level4507 #level_for4508 returns the correct level for a unit test4509 returns the correct level for a frontend fixture test4510 returns the correct level for a tooling test4511 returns the correct level for a migration test4512 returns the correct level for a background migration test4513 returns the correct level for an EE file without passing a prefix4514 returns the correct level for a geo migration test4515 returns the correct level for a EE-namespaced background migration test4516 returns the correct level for an integration test4517 returns the correct level for an integration test in a subfolder4518 returns the correct level for a system test4519 raises an error for an unknown level4520 #background_migration?4521 returns false for a unit test4522 returns true for a migration test4523 returns true for a background migration test4524 returns true for a geo migration test4525 returns true for a EE-namespaced background migration test4526Ci::PipelinesForMergeRequestFinder4527 #execute4528 when actor has permission to read pipelines in both parent and forked projects4529 returns all pipelines4530 when actor has permission to read pipelines in both parent and forked projects4531 returns all pipelines4532 when actor has permission to read pipelines in the parent project only4533 returns pipelines in parent4534 when actor has permission to read pipelines in the forked project only4535 returns pipelines in fork4536 when actor does not have permission to read pipelines4537 returns nothing4538 when actor is nil4539 returns nothing4540 #all4541 with single merge_request_diffs4542 behaves like returning pipelines with proper ordering4543 returns all pipelines4544 with multiple irrelevant merge_request_diffs4545 behaves like returning pipelines with proper ordering4546 returns all pipelines4547 with unsaved merge request4548 returns pipelines from diff_head_sha4549 when pipelines exist for the branch and merge request4550 returns merge request pipeline first4551 when there are a branch pipeline and a merge request pipeline4552 returns merge request pipelines first4553 when there are multiple merge request pipelines from the same branch4554 returns only related merge request pipelines4555 when detached merge request pipeline is run on head ref of the merge request4556 sets the head ref of the merge request to the pipeline ref4557 includes the detached merge request pipeline even though the ref is custom path4558Banzai::Filter::VideoLinkFilter4559 when the element src has a video extension4560 behaves like a video element4561 replaces the image tag with a video tag4562 behaves like a video element4563 replaces the image tag with a video tag4564 behaves like a video element4565 replaces the image tag with a video tag4566 behaves like a video element4567 replaces the image tag with a video tag4568 behaves like a video element4569 replaces the image tag with a video tag4570 behaves like a video element4571 replaces the image tag with a video tag4572 behaves like a video element4573 replaces the image tag with a video tag4574 behaves like a video element4575 replaces the image tag with a video tag4576 behaves like a video element4577 replaces the image tag with a video tag4578 behaves like a video element4579 replaces the image tag with a video tag4580 when the element has no src attribute4581 behaves like an unchanged element4582 leaves the document unchanged4583 when the element src is an image4584 behaves like an unchanged element4585 leaves the document unchanged4586 when the element src has an invalid file extension4587 behaves like an unchanged element4588 leaves the document unchanged4589 when data-canonical-src is empty4590 and src is a video4591 behaves like a video element4592 replaces the image tag with a video tag4593 and src is an image4594 behaves like an unchanged element4595 leaves the document unchanged4596 when data-canonical-src is set4597 uses the correct src4598Gitlab::SearchContext::Builder4599 #with_project4600 behaves like has a fluid interface4601 is expected to be an instance of Gitlab::SearchContext::Builder4602 #build!4603 when a project is not owned by a group4604 is expected to be for project4605 is expected to have attributes {:group => nil, :group_metadata => {}, :project => #<Project id:1025 namespace1025/project549>>, :project_m...ts"), :issues_disabled => false}), :ref => nil, :search_url => "/search?project_id=1025", :snippets => []}4606 when a project is owned by a group4607 delegates to `#with_group`4608 is expected to have attributes {:group => #<Group id:3583 @group231>, :group_metadata => (a hash including {:group_path => "group231", :...ts"), :issues_disabled => false}), :ref => nil, :search_url => "/search?project_id=1027", :snippets => []}4609 #with_snippet4610 when there is a single snippet4611 behaves like has a fluid interface4612 is expected to be an instance of Gitlab::SearchContext::Builder4613 #build!4614 is expected to be for snippet4615 is expected to have attributes {:group => nil, :group_metadata => {}, :project => nil, :project_metadata => {}, :ref => nil, :search_url => "/search", :snippets => [#<Snippet id:20 $20>]}4616 when there are multiple snippets4617 #build!4618 is expected to be for snippet4619 is expected to have attributes {:group => nil, :group_metadata => {}, :project => nil, :project_metadata => {}, :ref => nil, :search_url => "/search", :snippets => [#<Snippet id:24 $24>, #<Snippet id:25 $25>, #<Snippet id:26 $26>]}4620 #with_group4621 behaves like has a fluid interface4622 is expected to be an instance of Gitlab::SearchContext::Builder4623 #build!4624 is expected to be for group4625 is expected to have attributes {:group => #<Group id:3598 @group234>, :group_metadata => (a hash including {:group_path => "group234", :...project => nil, :project_metadata => {}, :ref => nil, :search_url => "/search?group_id=3598", :snippets => []}4626 with group scope4627 returns nil without groups controller action4628 when on issues scope4629 search context returns issues scope4630 when on merge requests scope4631 search context returns issues scope4632 #with_ref4633 behaves like has a fluid interface4634 is expected to be an instance of Gitlab::SearchContext::Builder4635 #build!4636 is expected to have attributes {:group => nil, :group_metadata => {}, :project => nil, :project_metadata => {}, :ref => "4b825dc642cb6eb9a060e54bf8d69288fbee4904", :search_url => "/search", :snippets => []}4637 #build!4638 is expected to be a kind of Gitlab::SearchContext4639Packages::Npm::CreateTagService4640 #execute4641 with no existing tag name4642 behaves like it creates the tag4643 is expected to change `Packages::Tag.count` by 14644 is expected to eq "test-tag"4645 adds tag to the package4646 with exisiting tag name4647 on package with different name4648 behaves like it creates the tag4649 is expected to change `Packages::Tag.count` by 14650 is expected to eq "test-tag"4651 adds tag to the package4652 on different package type4653 behaves like it creates the tag4654 is expected to change `Packages::Tag.count` by 14655 is expected to eq "test-tag"4656 adds tag to the package4657 on same package with different version4658 is expected to not change `Packages::Tag.count`4659 is expected to eq "test-tag"4660 adds tag to the package4661Gitlab::Redis::RateLimiting4662 behaves like redis_shared_examples4663 .config_file_name4664 when there is no config file anywhere4665 is expected to be nil4666 but resque.yml exists4667 is expected to eq "/tmp/redis_shared_examples20220428-476-11md6k2/config/resque.yml"4668 returns a path that exists4669 and there is a global env override4670 is expected to eq "global override"4671 and there is an instance specific config file4672 is expected to eq "/tmp/redis_shared_examples20220428-476-11rij7v/config/redis.rate_limiting.yml"4673 returns a path that exists4674 and there is a specific env override4675 is expected to eq "instance specific override"4676 .store4677 with old format4678 behaves like redis store4679 instantiates Redis::Store4680 with the namespace4681 uses specified namespace4682 with new format4683 behaves like redis store4684 instantiates Redis::Store4685 with the namespace4686 uses specified namespace4687 .params4688 withstands mutation4689 when url contains unix socket reference4690 with old format4691 returns path key instead4692 with new format4693 returns path key instead4694 when url is host based4695 with old format4696 returns hash with host, port, db, and password4697 with new format4698 rails_env: "development", host: "development-host"4699 returns hash with host, port, db, and password4700 rails_env: "test", host: "test-host"4701 returns hash with host, port, db, and password4702 rails_env: "production", host: "production-host"4703 returns hash with host, port, db, and password4704 .url4705 withstands mutation4706 when yml file with env variable4707 reads redis url from env variable4708 .version4709 returns a version4710 ._raw_config4711 is frozen4712 returns false when the file does not exist4713 returns false when the filename can't be determined4714 .with4715 when running on single-threaded runtime4716 instantiates a connection pool with size 54717 when running on multi-threaded runtime4718 instantiates a connection pool with a size based on the concurrency of the worker4719 when there is no config at all4720 can run an empty block4721 #db4722 with old format4723 returns the correct db4724 with new format4725 returns the correct db4726 #sentinels4727 when sentinels are defined4728 rails_env: "development", hosts: ["development-replica1", "development-replica2"]4729 returns an array of hashes with host and port keys4730 rails_env: "test", hosts: ["test-replica1", "test-replica2"]4731 returns an array of hashes with host and port keys4732 rails_env: "production", hosts: ["production-replica1", "production-replica2"]4733 returns an array of hashes with host and port keys4734 when sentinels are not defined4735 returns nil4736 #sentinels?4737 when sentinels are defined4738 returns true4739 when sentinels are not defined4740 returns false4741 #raw_config_hash4742 returns old-style single url config in a hash4743 #fetch_config4744 returns false when no config file is present4745 returns false when config file is present but has invalid YAML4746 has a value for the legacy default URL4747 .config_file_name4748 when there is only a resque.yml4749 is expected to eq "/tmp/redis_shared_examples20220428-476-5iegn3/config/resque.yml"4750 and there is a global env override4751 is expected to eq "global override"4752 and Cache has a different config file4753 is expected to eq "fallback config file"4754Projects::AfterImportWorker4755 #execute4756 performs housekeeping4757 with some refs in refs/pull/**/*4758 removes refs/pull/**/*4759 with a ref in refs/heads/tmp4760 does not remove refs/heads/tmp4761 with a ref in refs/tags/tmp4762 does not remove refs/tags/tmp4763 with a ref in refs/replace/tmp4764 does not remove refs/replace/tmp4765 with a ref in refs/merge-requests/tmp4766 does not remove refs/merge-requests/tmp4767 with a ref in refs/environments/tmp4768 does not remove refs/environments/tmp4769 with a ref in refs/keep-around/tmp4770 does not remove refs/keep-around/tmp4771 with a ref in refs/pipelines/tmp4772 does not remove refs/pipelines/tmp4773 when after import action throw non-retriable exception4774 throws after import error4775 when housekeeping service lease is taken4776 logs the error message4777 when after import action throw retriable exception one time4778 removes refs/pull/**/*4779 records the failures in the database4780Gitlab::Redis::Cache4781 .config_file_name4782 when there is no config file anywhere4783 is expected to be nil4784 but resque.yml exists4785 is expected to eq "/tmp/redis_shared_examples20220428-476-eo2wnz/config/resque.yml"4786 returns a path that exists4787 and there is a global env override4788 is expected to eq "global override"4789 and there is an instance specific config file4790 is expected to eq "/tmp/redis_shared_examples20220428-476-jahm40/config/redis.cache.yml"4791 returns a path that exists4792 and there is a specific env override4793 is expected to eq "instance specific override"4794 .store4795 with old format4796 behaves like redis store4797 instantiates Redis::Store4798 with the namespace4799 uses specified namespace4800 with new format4801 behaves like redis store4802 instantiates Redis::Store4803 with the namespace4804 uses specified namespace4805 .params4806 withstands mutation4807 when url contains unix socket reference4808 with old format4809 returns path key instead4810 with new format4811 returns path key instead4812 when url is host based4813 with old format4814 returns hash with host, port, db, and password4815 with new format4816 rails_env: "development", host: "development-host"4817 returns hash with host, port, db, and password4818 rails_env: "test", host: "test-host"4819 returns hash with host, port, db, and password4820 rails_env: "production", host: "production-host"4821 returns hash with host, port, db, and password4822 .url4823 withstands mutation4824 when yml file with env variable4825 reads redis url from env variable4826 .version4827 returns a version4828 ._raw_config4829 is frozen4830 returns false when the file does not exist4831 returns false when the filename can't be determined4832 .with4833 when running on single-threaded runtime4834 instantiates a connection pool with size 54835 when running on multi-threaded runtime4836 instantiates a connection pool with a size based on the concurrency of the worker4837 when there is no config at all4838 can run an empty block4839 #db4840 with old format4841 returns the correct db4842 with new format4843 returns the correct db4844 #sentinels4845 when sentinels are defined4846 rails_env: "development", hosts: ["development-replica1", "development-replica2"]4847 returns an array of hashes with host and port keys4848 rails_env: "test", hosts: ["test-replica1", "test-replica2"]4849 returns an array of hashes with host and port keys4850 rails_env: "production", hosts: ["production-replica1", "production-replica2"]4851 returns an array of hashes with host and port keys4852 when sentinels are not defined4853 returns nil4854 #sentinels?4855 when sentinels are defined4856 returns true4857 when sentinels are not defined4858 returns false4859 #raw_config_hash4860 returns old-style single url config in a hash4861 #fetch_config4862 returns false when no config file is present4863 returns false when config file is present but has invalid YAML4864 has a value for the legacy default URL4865 #raw_config_hash4866 has a legacy default URL4867UserPolicy4868 reading a user's information4869 is expected to be allowed :read_user4870 reading a different user's Personal Access Tokens4871 when user is admin4872 when admin mode is enabled4873 is expected to be allowed :read_user_personal_access_tokens4874 when admin mode is disabled4875 is expected not to be allowed :read_user_personal_access_tokens4876 when user is not an admin4877 requesting their own personal access tokens4878 is expected to be allowed :read_user_personal_access_tokens4879 requesting a different user's personal access tokens4880 is expected not to be allowed :read_user_personal_access_tokens4881 creating a different user's Personal Access Tokens4882 when current_user is admin4883 when admin mode is enabled and current_user is not blocked4884 is expected to be allowed :create_user_personal_access_token4885 when admin mode is enabled and current_user is blocked4886 is expected not to be allowed :create_user_personal_access_token4887 when admin mode is disabled4888 is expected not to be allowed :create_user_personal_access_token4889 when current_user is not an admin4890 creating their own personal access tokens4891 when current_user is not blocked4892 is expected to be allowed :create_user_personal_access_token4893 when current_user is blocked4894 is expected not to be allowed :create_user_personal_access_token4895 creating a different user's personal access tokens4896 is expected not to be allowed :create_user_personal_access_token4897 updating a user's status4898 behaves like changing a user4899 when a regular user tries to destroy another regular user4900 is expected not to be allowed :update_user_status4901 when a regular user tries to destroy themselves4902 is expected to be allowed :update_user_status4903 when an admin user tries to destroy a regular user4904 when admin mode is enabled4905 is expected to be allowed :update_user_status4906 when admin mode is disabled4907 is expected to be disallowed :update_user_status4908 when an admin user tries to destroy a ghost user4909 is expected not to be allowed :update_user_status4910 destroying a user4911 behaves like changing a user4912 when a regular user tries to destroy another regular user4913 is expected not to be allowed :destroy_user4914 when a regular user tries to destroy themselves4915 is expected to be allowed :destroy_user4916 when an admin user tries to destroy a regular user4917 when admin mode is enabled4918 is expected to be allowed :destroy_user4919 when admin mode is disabled4920 is expected to be disallowed :destroy_user4921 when an admin user tries to destroy a ghost user4922 is expected not to be allowed :destroy_user4923 updating a user4924 behaves like changing a user4925 when a regular user tries to destroy another regular user4926 is expected not to be allowed :update_user4927 when a regular user tries to destroy themselves4928 is expected to be allowed :update_user4929 when an admin user tries to destroy a regular user4930 when admin mode is enabled4931 is expected to be allowed :update_user4932 when admin mode is disabled4933 is expected to be disallowed :update_user4934 when an admin user tries to destroy a ghost user4935 is expected not to be allowed :update_user4936 disabling two-factor authentication4937 disabling their own two-factor authentication4938 is expected to be allowed :disable_two_factor4939 disabling the two-factor authentication of another user4940 when the executor is an admin4941 is expected to be allowed :disable_two_factor4942 when the executor is not an admin4943 is expected not to be allowed :disable_two_factor4944 reading a user's group count4945 when current_user is an admin4946 is expected to be allowed :read_group_count4947 for self users4948 is expected to be allowed :read_group_count4949 when accessing a different user's group count4950 is expected not to be allowed :read_group_count4951 :read_user_profile4952 when the user is unconfirmed4953 is expected not to be allowed :read_user_profile4954 when the user is confirmed4955 is expected to be allowed :read_user_profile4956 :read_user_groups4957 when user is admin4958 when admin mode is enabled4959 is expected to be allowed :read_user_groups4960 when admin mode is disabled4961 is expected not to be allowed :read_user_groups4962 when user is not an admin4963 requesting their own manageable groups4964 is expected to be allowed :read_user_groups4965 requesting a different user's manageable groups4966 is expected not to be allowed :read_user_groups4967Gitlab::Metrics4968 .settings4969 returns a Hash4970 .enabled?4971 returns a boolean4972 .prometheus_metrics_enabled_unmemoized4973 prometheus metrics enabled in config4974 when metrics folder is present4975 metrics are enabled4976 when metrics folder is missing4977 metrics are disabled4978 .prometheus_metrics_enabled?4979 returns a boolean4980 .measure4981 without a transaction4982 returns the return value of the block4983 with a transaction4984 adds a metric to the current transaction4985 returns the return value of the block4986 #series_prefix4987 returns a String4988 .record_status_for_duration?4989 status: 100, should_record: false4990 is expected to equal false4991 status: 200, should_record: true4992 is expected to equal true4993 status: 401, should_record: true4994 is expected to equal true4995 status: nil, should_record: false4996 is expected to equal false4997 status: 500, should_record: false4998 is expected to equal false4999 status: 503, should_record: false5000 is expected to equal false5001 status: "100", should_record: false5002 is expected to equal false5003 status: "201", should_record: true5004 is expected to equal true5005 status: "nothing", should_record: false5006 is expected to equal false5007 .add_event5008 without a transaction5009 does nothing5010 with a transaction5011 adds an event5012 prometheus metrics disabled5013 behaves like prometheus metrics API5014 #counter5015 #increment5016 successfully calls #increment without arguments5017 successfully calls #increment with 1 argument5018 successfully calls #increment with 2 arguments5019 #summary5020 #observe5021 successfully calls #observe with 2 arguments5022 #gauge5023 #set5024 successfully calls #set with 2 arguments5025 #histogram5026 #observe5027 successfully calls #observe with 2 arguments5028 #null_metric5029 is expected to be a kind of Gitlab::Metrics::NullMetric5030 #counter5031 is expected to be a kind of Gitlab::Metrics::NullMetric5032 #summary5033 is expected to be a kind of Gitlab::Metrics::NullMetric5034 #gauge5035 is expected to be a kind of Gitlab::Metrics::NullMetric5036 #histogram5037 is expected to be a kind of Gitlab::Metrics::NullMetric5038 prometheus metrics enabled5039 behaves like prometheus metrics API5040 #counter5041 #increment5042 successfully calls #increment without arguments5043 successfully calls #increment with 1 argument5044 successfully calls #increment with 2 arguments5045 #summary5046 #observe5047 successfully calls #observe with 2 arguments5048 #gauge5049 #set5050 successfully calls #set with 2 arguments5051 #histogram5052 #observe5053 successfully calls #observe with 2 arguments5054 #null_metric5055 is expected to be nil5056 #counter5057 is expected not to be a kind of Gitlab::Metrics::NullMetric5058 #summary5059 is expected not to be a kind of Gitlab::Metrics::NullMetric5060 #gauge5061 is expected not to be a kind of Gitlab::Metrics::NullMetric5062 #histogram5063 is expected not to be a kind of Gitlab::Metrics::NullMetric5064CiPlatformMetric5065 behaves like a BulkInsertSafe model5066 when calling class methods directly5067 raises an error when method is not bulk-insert safe5068 does not raise an error when method is bulk-insert safe5069 .bulk_insert!5070 when all items are valid5071 inserts them all5072 returns an empty array5073 when some items are invalid5074 does not insert any of them and raises an error5075 inserts them anyway when bypassing validations5076 validations5077 is expected to validate that :recorded_at cannot be empty/falsy5078 is expected to validate that :count cannot be empty/falsy5079 is expected to validate that :count looks like an integer greater than 05080 is expected to allow :platform_target to be ‹""›5081 is expected not to allow :platform_target to be ‹nil›5082 is expected to validate that the length of :platform_target is at most 2555083 .insert_auto_devops_platform_targets!5084 when there is already existing metrics data5085 does not erase any existing data5086 when there are multiple platform target variables5087 inserts platform target counts for that day5088 when there are invalid ci variable values for platform_target5089 ignores those values5090 when there are no platform target variables5091 does not generate any new platform metrics5092Clusters::Gcp::ProvisionService5093 #execute5094 when succeeded to request provision5095 behaves like success5096 schedules a worker for status minitoring5097 when operation status is unexpected5098 behaves like error5099 sets an error to provider object5100 when selfLink is unexpected5101 behaves like error5102 sets an error to provider object5103 when Internal Server Error happened5104 behaves like error5105 sets an error to provider object5106Packages::Maven::Metadata::SyncService5107 #execute5108 permissions5109 role: :anonymous, expected_result: :rejected5110 behaves like returning an error service response5111 returns an error service response5112 role: :developer, expected_result: :rejected5113 behaves like returning an error service response5114 returns an error service response5115 role: :maintainer, expected_result: :accepted5116 behaves like returning a success service response5117 returns a success service response5118 with a maintainer5119 with a jar package5120 with no changes5121 behaves like returning a success service response5122 returns a success service response5123 with changes5124 behaves like returning a success service response5125 returns a success service response5126 with empty versions5127 behaves like returning a success service response5128 returns a success service response5129 with a too big maven metadata file for versions5130 behaves like returning an error service response5131 returns an error service response5132 an error from the create versions xml service5133 behaves like returning an error service response5134 returns an error service response5135 an error from the append package file service5136 behaves like returning an error service response5137 returns an error service response5138 without a package name5139 behaves like returning an error service response5140 returns an error service response5141 without a versionless package for version5142 behaves like returning a success service response5143 returns a success service response5144 without a metadata package file for versions5145 behaves like returning a success service response5146 returns a success service response5147 without a project5148 behaves like returning an error service response5149 returns an error service response5150 with a maven plugin package5151 with no changes5152 behaves like returning a success service response5153 returns a success service response5154 with changes in the versions xml5155 behaves like returning a success service response5156 returns a success service response5157 with changes in the plugin xml5158 behaves like returning a success service response5159 returns a success service response5160 with empty versions5161 behaves like returning a success service response5162 returns a success service response5163 with a too big maven metadata file for plugins5164 behaves like returning an error service response5165 returns an error service response5166 an error from the create versions xml service5167 behaves like returning an error service response5168 returns an error service response5169 an error from the append package file service5170 behaves like returning an error service response5171 returns an error service response5172 without a versionless package for plugins5173 behaves like returning a success service response5174 returns a success service response5175 without a versionless package for versions5176 behaves like returning a success service response5177 returns a success service response5178 without a metadata package file for plugins5179 behaves like returning a success service response5180 returns a success service response5181Integrations::Test::ProjectService5182 #execute5183 without event specified5184 tests the integration with default data5185 with Integrations::PipelinesEmail5186 behaves like tests for integration with pipeline data5187 tests the integration with pipeline data5188 with event specified5189 event not supported by integration5190 returns error message5191 push5192 executes integration5193 tag_push5194 executes integration5195 note5196 returns error message if not enough data5197 executes integration5198 issue5199 behaves like a test of an integration that operates on issues5200 returns error message if not enough data5201 executes integration5202 confidential_issue5203 behaves like a test of an integration that operates on issues5204 returns error message if not enough data5205 executes integration5206 merge_request5207 returns error message if not enough data5208 executes integration5209 deployment5210 returns error message if not enough data5211 executes integration5212 pipeline5213 returns error message if not enough data5214 executes integration5215 wiki_page5216 returns error message if wiki disabled5217 returns error message if not enough data5218 executes integration5219Ci::BuildTraceChunks::Database5220 #data5221 when data exists5222 returns the data5223 when data does not exist5224 returns nil5225 #set_data5226 when data exists5227 overwrites data5228 when data does not exist5229 sets new data5230 #delete_data5231 when data exists5232 deletes data5233 when data does not exist5234 does nothing5235 #size5236 when data exists5237 returns data bytesize correctly5238 when data does not exist5239 returns zero5240 #keys5241 returns empty array5242Gitlab::Kubernetes::Helm::Pod5243 #generate5244 helm_major_version: 2, expected_helm_version: "2.17.0", expected_command_env: [:TILLER_NAMESPACE]5245 with a command5246 generates a Kubeclient::Resource5247 generates the appropriate metadata5248 generates a container spec5249 generates the appropriate specifications for the container5250 includes a never restart policy5251 includes volumes for the container5252 includes a volume inside the specification5253 mounts configMap specification in the volume5254 has no serviceAccountName5255 with a service_account_name5256 uses the serviceAccountName provided5257 helm_major_version: 3, expected_helm_version: "3.2.4", expected_command_env: nil5258 with a command5259 generates a Kubeclient::Resource5260 generates the appropriate metadata5261 generates a container spec5262 generates the appropriate specifications for the container5263 includes a never restart policy5264 includes volumes for the container5265 includes a volume inside the specification5266 mounts configMap specification in the volume5267 has no serviceAccountName5268 with a service_account_name5269 uses the serviceAccountName provided5270Gitlab::SQL::Pattern5271 .fuzzy_search5272 query: "foo", columns: [#<struct Arel::Attributes::Attribute relation=#<Arel::Table:0x00007fe292b01748 @name="issues", @klass=Issue(id: integer, title: string, author_id: integer, project_id: integer, created_at: datetime, updated_at: datetime, description: text, milestone_id: integer, iid: integer, updated_by_id: integer, weight: integer, confidential: boolean, due_date: date, moved_to_id: integer, lock_version: integer, title_html: text, description_html: text, time_estimate: integer, relative_position: integer, service_desk_reply_to: string, cached_markdown_version: integer, last_edited_at: datetime, last_edited_by_id: integer, discussion_locked: boolean, closed_at: datetime_with_timezone, closed_by_id: integer, state_id: integer, duplicated_to_id: integer, promoted_to_epic_id: integer, health_status: integer, external_key: string, sprint_id: integer, issue_type: integer, blocking_issues_count: integer, upvotes_count: integer, work_item_type_id: integer), @type_caster=#<ActiveRecord::TypeCaster::Map:0x00007fe292b016f8 @klass=Issue(id: integer, title: string, author_id: integer, project_id: integer, created_at: datetime, updated_at: datetime, description: text, milestone_id: integer, iid: integer, updated_by_id: integer, weight: integer, confidential: boolean, due_date: date, moved_to_id: integer, lock_version: integer, title_html: text, description_html: text, time_estimate: integer, relative_position: integer, service_desk_reply_to: string, cached_markdown_version: integer, last_edited_at: datetime, last_edited_by_id: integer, discussion_locked: boolean, closed_at: datetime_with_timezone, closed_by_id: integer, state_id: integer, duplicated_to_id: integer, promoted_to_epic_id: integer, health_status: integer, external_key: string, sprint_id: integer, issue_type: integer, blocking_issues_count: integer, upvotes_count: integer, work_item_type_id: integer)>, @table_alias=nil>, name="title">], expected: [:issue1]5273 finds the expected issues5274 query: "foo", columns: [:title], expected: [:issue1]5275 finds the expected issues5276 query: "foo", columns: ["title"], expected: [:issue1]5277 finds the expected issues5278 query: "foo", columns: [:description], expected: [:issue2]5279 finds the expected issues5280 query: "foo", columns: [:title, :description], expected: [:issue1, :issue2]5281 finds the expected issues5282 query: "bar", columns: [:title, :description], expected: [:issue1]5283 finds the expected issues5284 query: "baz", columns: [:title, :description], expected: [:issue2]5285 finds the expected issues5286 query: "qux", columns: [:title, :description], expected: []5287 finds the expected issues5288 query: "oh", columns: [:title, :description], expected: [:issue3]5289 finds the expected issues5290 query: "OH", columns: [:title, :description], expected: [:issue3]5291 finds the expected issues5292 query: "ah", columns: [:title, :description], expected: [:issue3]5293 finds the expected issues5294 query: "AH", columns: [:title, :description], expected: [:issue3]5295 finds the expected issues5296 query: "oh", columns: [:title], expected: [:issue3]5297 finds the expected issues5298 query: "ah", columns: [:description], expected: [:issue3]5299 finds the expected issues5300 .to_pattern5301 when a query is shorter than 3 chars5302 returns exact matching pattern5303 and ignore_minimum_char_limit is true5304 returns partial matching pattern5305 when a query with a escape character is shorter than 3 chars5306 returns sanitized exact matching pattern5307 and ignore_minimum_char_limit is true5308 returns sanitized partial matching pattern5309 when a query is equal to 3 chars5310 returns partial matching pattern5311 when a query with a escape character is equal to 3 chars5312 returns partial matching pattern5313 when a query is longer than 3 chars5314 returns partial matching pattern5315 when a query with a escape character is longer than 3 chars5316 returns sanitized partial matching pattern5317 .select_fuzzy_words5318 with a word equal to 3 chars5319 returns array cotaining a word5320 with a word shorter than 3 chars5321 returns empty array5322 with two words both equal to 3 chars5323 returns array containing two words5324 with two words divided by two spaces both equal to 3 chars5325 returns array containing two words5326 with two words equal to 3 chars and shorter than 3 chars5327 returns array containing a word5328 with a multi-word surrounded by double quote5329 returns array containing a multi-word5330 with a multi-word surrounded by double quote and two words5331 returns array containing a multi-word and tow words5332 with a multi-word surrounded by double quote missing a spece before the first double quote5333 returns array containing two words with double quote5334 with a multi-word surrounded by double quote missing a spece after the second double quote5335 returns array containing two words with double quote5336 with two multi-word surrounded by double quote and two words5337 returns array containing two multi-words and tow words5338 .fuzzy_arel_match5339 with a word equal to 3 chars5340 returns a single ILIKE condition5341 with a word shorter than 3 chars5342 returns a single equality condition5343 uses LOWER instead of ILIKE when LOWER is enabled5344 with two words both equal to 3 chars5345 returns a joining LIKE condition using a AND5346 with two words both shorter than 3 chars5347 returns a single ILIKE condition5348 with two words, one shorter 3 chars5349 returns a single ILIKE condition using the longer word5350 with a multi-word surrounded by double quote and two words5351 returns a joining LIKE condition using a AND5352 when passing an Arel column5353 returns a condition with the table and column name5354BulkImports::Common::Pipelines::UploadsPipeline5355 when importing to group5356 #run5357 imports uploads into destination portable and removes tmpdir5358 when importing avatar5359 imports avatar5360 when something goes wrong5361 raises exception5362 #extract5363 downloads & extracts upload paths5364 #load5365 creates a file upload5366 when dynamic path is nil5367 returns5368 when path is a directory5369 returns5370 when path is a symlink5371 does not upload the file5372 #after_run5373 removes tmp dir5374 when dir does not exist5375 does not attempt to remove tmpdir5376 when importing to project5377 #run5378 imports uploads into destination portable and removes tmpdir5379 when importing avatar5380 imports avatar5381 when something goes wrong5382 raises exception5383 #extract5384 downloads & extracts upload paths5385 #load5386 creates a file upload5387 when dynamic path is nil5388 returns5389 when path is a directory5390 returns5391 when path is a symlink5392 does not upload the file5393 #after_run5394 removes tmp dir5395 when dir does not exist5396 does not attempt to remove tmpdir5397DesignManagement::DesignCollection5398 .find_or_create_design!5399 finds an existing design5400 creates a new design if one didn't exist5401 only queries the designs once5402 inserts the design after any existing designs5403 #copy_state5404 defaults to ready5405 persists its state changes between initializations5406 state: "ready", can_start: true, can_end: false, can_error: true, can_reset: true5407 maintains state machine transition rules5408 state: "in_progress", can_start: false, can_end: true, can_error: true, can_reset: true5409 maintains state machine transition rules5410 state: "error", can_start: false, can_end: false, can_error: false, can_reset: true5411 maintains state machine transition rules5412 clearing the redis cached state when state changes back to ready5413 clears the cached state on end_copy!5414 clears the cached state on reset_copy!5415 #empty?5416 is true when the design collection has no designs5417 is false when the design collection has designs5418 #versions5419 includes versions for all designs5420 #repository5421 builds a design repository5422 #designs_by_filename5423 finds all the designs with those filenames on this issue5424 only makes a single query5425 some are deleted5426 takes deletion into account5427ExternalPullRequest5428 is expected to belong to project required: false5429 validations5430 when source branch not present5431 behaves like has errors on5432 has errors for source_branch5433 when status not present5434 behaves like has errors on5435 has errors for status5436 when pull request is from a fork5437 behaves like has errors on5438 has errors for base5439 create_or_update_from_params5440 when pull request does not exist5441 when params are correct5442 saves the model successfully and returns it5443 yields the model5444 when params are not correct5445 returns an invalid model5446 when pull request exists5447 when params are correct5448 updates the model successfully and returns it5449 when params are not correct5450 returns an invalid model5451 #open?5452 returns true if status is open5453 returns false if status is not open5454 #closed?5455 returns true if status is closed5456 returns false if status is not closed5457 #actual_branch_head?5458 when source sha matches the head of the branch5459 returns true5460 when source sha does not match the head of the branch5461 returns true5462 #from_fork?5463 returns true if source_repository differs from target_repository5464 returns false if source_repository is the same as target_repository5465 #modified_paths5466 returns modified paths5467 loose foreign key on external_pull_requests.project_id5468 behaves like cleanup by a loose foreign key5469 cleans up (delete or nullify) the model5470Gitlab::Ci::Badge::Pipeline::Metadata5471 behaves like badge metadata5472 #to_html5473 points to link5474 contains clickable image5475 #to_markdown5476 is expected to include "http://localhost/namespace1110/project634/badges/feature/pipeline.svg"5477 is expected to include "http://localhost/namespace1111/project635/-/commits/feature"5478 #to_asciidoc5479 is expected to include "http://localhost/namespace1112/project636/badges/feature/pipeline.svg"5480 is expected to include "http://localhost/namespace1113/project637/-/commits/feature"5481 is expected to include "image:"5482 is expected to include "link="5483 is expected to include "title="5484 #title5485 returns build status title5486 #image_url5487 returns valid url5488 #link_url5489 returns valid link5490EventFilter5491 #filter5492 returns "all" if given filter is nil5493 returns "all" if given filter is ""5494 returns "all" if given filter is "foo"5495 #apply_filter5496 with the "push" filter5497 filters push events only5498 with the "merged" filter5499 filters merged events only5500 with the "issue" filter5501 filters issue events only5502 with the "comments" filter5503 filters comment events only5504 with the "team" filter5505 filters team events only5506 with the "all" filter5507 returns all events5508 with the "design" filter5509 returns only design events5510 with the "wiki" filter5511 returns only wiki page events5512 with an unknown filter5513 returns all events5514 with a nil filter5515 returns all events5516 #active?5517 returns false if filter does not include the given key5518 returns false if the given key is nil5519 returns true if filter does not include the given key5520Clusters::BuildKubernetesNamespaceService5521 initializes a new namespace and sets default values5522 sets cluster_project and environment5523 namespace per environment is disabled5524 initializes a new namespace and sets default values5525 does not set environment5526 group cluster5527 initializes a new namespace and sets default values5528 does not set cluster_project5529BoardGroupRecentVisit5530 relationships5531 is expected to belong to user required: false5532 is expected to belong to group required: false5533 is expected to belong to board required: false5534 validations5535 is expected to validate that :user cannot be empty/falsy5536 is expected to validate that :group cannot be empty/falsy5537 is expected to validate that :board cannot be empty/falsy5538 behaves like boards recent visit5539 #visited5540 creates a visit if one does not exists5541 behaves like was visited previously5542 updates the timestamp5543 when we try to create a visit that is not unique5544 behaves like was visited previously5545 updates the timestamp5546 #latest5547 returns the most recent visited5548 returns last 3 visited boards5549BulkImports::RelationExportService5550 #execute5551 exports specified relation and marks export as finished5552 removes temp export files5553 exports specified relation and marks export as finished5554 when exporting a file relation5555 uses file export service5556 when export record does not exist5557 creates export record5558 when there is existing export present5559/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/carrierwave-1.3.2/lib/carrierwave/mounter.rb:113: warning: deprecated Object#=~ is called on TrueClass; it always returns nil5560 removes existing export before exporting5561 when export is recently finished5562 returns recently finished export instead of re-exporting5563 when exception occurs during export5564 marks export as failed5565 tracks exception5566 when passed relation is not supported5567 tracks exception5568 when user is not allowed to perform export5569 tracks exception5570Clusters::Applications::UpdateService5571 #execute5572 application is not installed5573 raises Clusters::Applications::BaseService::InvalidApplicationError5574 application is installed5575 application is schedulable5576 updates the application data5577 makes application scheduled!5578 schedules ClusterPatchAppWorker5579 knative application5580 executes AssociateDomainService5581 application is not schedulable5582 raises StateMachines::InvalidTransition5583Gitlab::Database::LoadBalancing::ConnectionProxy5584 #select5585 performs a read5586 #select_all5587 method signatures match5588 using a SELECT query5589 runs the query on a secondary5590 using a SELECT FOR UPDATE query5591 runs the query on the primary and sticks to it5592 sanitize_limit5593 runs the query on the replica5594 select5595 runs the query on the replica5596 select_one5597 runs the query on the replica5598 select_rows5599 runs the query on the replica5600 quote_column_name5601 runs the query on the replica5602 delete5603 runs the query on the primary and sticks to it5604 delete_all5605 runs the query on the primary and sticks to it5606 insert5607 runs the query on the primary and sticks to it5608 update5609 runs the query on the primary and sticks to it5610 update_all5611 runs the query on the primary and sticks to it5612 .insert_all!5613-- create_table(:_test_connection_proxy_bulk_insert, {:force=>true})5614 -> 0.0464s5615-- drop_table(:_test_connection_proxy_bulk_insert, {:force=>true})5616 -> 0.0160s5617 inserts data in bulk5618 #transaction5619 session fallbacks ambiguous queries to replicas5620 with a read query5621 runs the transaction and any nested queries on the replica5622 with a write query5623 raises an exception5624 session does not fallback to replicas for ambiguous queries5625 with a read query5626 runs the transaction and any nested queries on the primary and stick to it5627 with a write query5628 runs the transaction and any nested queries on the primary and stick to it5629 #method_missing5630 runs the query on the primary without sticking to it5631 properly forwards keyword arguments5632 current session prefers to fallback ambiguous queries to replicas5633 runs the query on the replica5634 properly forwards keyword arguments5635 #read_using_load_balancer5636 with a regular session5637 uses a secondary5638 with a regular session and forcing all reads to replicas5639 uses a secondary5640 with a session using the primary but forcing all reads to replicas5641 uses a secondary5642 with a session using the primary5643 uses the primary5644 #write_using_load_balancer5645 uses but does not stick to the primary5646Issues::ResolveDiscussions5647 for resolving discussions5648 #merge_request_for_resolving_discussion5649 finds the merge request5650 only queries for the merge request once5651 #discussions_to_resolve5652 contains a single discussion when matching merge request and discussion are passed5653 contains all discussions when only a merge request is passed5654 contains only unresolved discussions5655 is empty when a discussion and another merge request are passed5656Reenqueuer5657 disables Sidekiq retries5658 behaves like reenqueuer5659 implements lease_timeout5660 uses the :none deduplication strategy5661 #perform5662 tries to obtain a lease5663 behaves like #perform is rate limited to 1 call per5664 when the work finishes in 0 seconds5665 sleeps exactly the minimum duration5666 when the work finishes in 10% of minimum duration5667 sleeps 90% of minimum duration5668 when the work finishes in 90% of minimum duration5669 sleeps 10% of minimum duration5670 when the work finishes exactly at minimum duration5671 does not sleep5672 when the work takes 10% longer than minimum duration5673 does not sleep5674 when the work takes twice as long as minimum duration5675 does not sleep5676 #perform5677 when the lease is available5678 does perform5679 when the lease is taken5680 does not perform5681 when #perform returns truthy5682 reenqueues the worker5683 returns the original value from #perform5684 when #perform returns falsey5685 does not reenqueue the worker5686 returns the original value from #perform5687Reenqueuer::ReenqueuerSleeper5688 behaves like #perform is rate limited to 1 call per5689 when the work finishes in 0 seconds5690 sleeps exactly the minimum duration5691 when the work finishes in 10% of minimum duration5692 sleeps 90% of minimum duration5693 when the work finishes in 90% of minimum duration5694 sleeps 10% of minimum duration5695 when the work finishes exactly at minimum duration5696 does not sleep5697 when the work takes 10% longer than minimum duration5698 does not sleep5699 when the work takes twice as long as minimum duration5700 does not sleep5701 #ensure_minimum_duration5702 when the block completes well before the minimum duration5703 sleeps until the minimum duration5704 when the block completes just before the minimum duration5705 sleeps until the minimum duration5706 when the block completes just after the minimum duration5707 does not sleep5708 when the block completes well after the minimum duration5709 does not sleep5710Gitlab::Ci::Pipeline::Chain::Validate::Abilities5711 when users has no ability to run a pipeline5712 adds an error about insufficient permissions5713 breaks the pipeline builder chain5714 when user has ability to create a pipeline5715 does not invalidate the pipeline5716 does not break the chain5717 when project is deleted5718 is expected to contain exactly "Project is deleted!"5719 #allowed_to_write_ref?5720 when user is a developer5721 is expected to be truthy5722 when pipeline is a detached merge request pipeline5723 is expected to be truthy5724 when the branch is protected5725 is expected to be falsey5726 when pipeline is a detached merge request pipeline5727 is expected to be falsey5728 when developers are allowed to merge5729 is expected to be truthy5730 when pipeline is a detached merge request pipeline5731 is expected to be truthy5732 when the tag is protected5733 is expected to be falsey5734 when developers are allowed to create the tag5735 is expected to be truthy5736 when user is a maintainer5737 is expected to be truthy5738 when the branch is protected5739 is expected to be truthy5740 when pipeline is a detached merge request pipeline5741 is expected to be truthy5742 when the tag is protected5743 is expected to be truthy5744 when no one can create the tag5745 is expected to be falsey5746 when owner cannot create pipeline5747 is expected to be falsey5748Puma5749{"timestamp":"2022-04-28T09:41:02.627Z","pid":4452,"message":"Puma starting in cluster mode..."}5750{"timestamp":"2022-04-28T09:41:02.627Z","pid":4452,"message":"* Puma version: 5.6.2 (ruby 2.7.5-p203) (\"Birdie's Version\")"}5751{"timestamp":"2022-04-28T09:41:02.627Z","pid":4452,"message":"* Min threads: 1"}5752{"timestamp":"2022-04-28T09:41:02.627Z","pid":4452,"message":"* Max threads: 4"}5753{"timestamp":"2022-04-28T09:41:02.627Z","pid":4452,"message":"* Environment: test"}5754{"timestamp":"2022-04-28T09:41:02.627Z","pid":4452,"message":"* Master PID: 4452"}5755{"timestamp":"2022-04-28T09:41:02.627Z","pid":4452,"message":"* Workers: 1"}5756{"timestamp":"2022-04-28T09:41:02.628Z","pid":4452,"message":"* Restarts: (✔) hot (✖) phased"}5757{"timestamp":"2022-04-28T09:41:02.628Z","pid":4452,"message":"* Preloading application"}5758{"timestamp":"2022-04-28T09:41:02.677Z","pid":4452,"message":"* Listening on unix:///builds/gitlab-org/gitlab/tmp/tests/puma.socket"}5759{"timestamp":"2022-04-28T09:41:02.678Z","pid":4452,"message":"Use Ctrl-C to stop"}5760{"timestamp":"2022-04-28T09:41:02.678Z","pid":4452,"message":"! WARNING: Detected running cluster mode with 1 worker."}5761{"timestamp":"2022-04-28T09:41:02.678Z","pid":4452,"message":"! Running Puma in cluster mode with a single worker is often a misconfiguration."}5762{"timestamp":"2022-04-28T09:41:02.678Z","pid":4452,"message":"! Consider running Puma in single-mode (workers = 0) in order to reduce memory overhead."}5763{"timestamp":"2022-04-28T09:41:02.678Z","pid":4452,"message":"! Set the `silence_single_worker_warning` option to silence this warning message."}5764{"timestamp":"2022-04-28T09:41:02.679Z","pid":4452,"message":"! Promoting existing objects to old generation..."}5765{"timestamp":"2022-04-28T09:41:02.700Z","pid":4452,"message":"! Compacting..."}5766{"timestamp":"2022-04-28T09:41:02.728Z","pid":4452,"message":"! Friendly fork preparation complete."}5767{"timestamp":"2022-04-28T09:41:02.730Z","pid":4452,"message":"- Worker 0 (PID: 4453) booted in 0.0s, phase: 0"}5768{"timestamp":"2022-04-28T09:41:03.478Z","pid":4452,"message":"- Worker 0 (PID: 4460) booted in 0.0s, phase: 0"}5769 has a worker that self-terminates on signal SIGQUIT5770{"timestamp":"2022-04-28T09:41:04.373Z","pid":4452,"message":"- Worker 0 (PID: 4467) booted in 0.0s, phase: 0"}5771 has a worker that self-terminates on signal SIGTERM5772{"timestamp":"2022-04-28T09:41:05.400Z","pid":4452,"message":"- Worker 0 (PID: 4474) booted in 0.0s, phase: 0"}5773 has a worker that self-terminates on signal SIGKILL5774{"timestamp":"2022-04-28T09:41:05.403Z","pid":4452,"message":"=== puma shutdown: 2022-04-28 09:41:05 +0000 ==="}5775{"timestamp":"2022-04-28T09:41:05.403Z","pid":4452,"message":"- Goodbye!"}5776{"timestamp":"2022-04-28T09:41:05.404Z","pid":4452,"message":"- Gracefully shutting down workers..."}5777Ci::UnitTest5778 behaves like cleanup by a loose foreign key5779 cleans up (delete or nullify) the model5780 relationships5781 is expected to belong to project required: false5782 is expected to have many unit_test_failures5783 validations5784 is expected to validate that :project cannot be empty/falsy5785 is expected to validate that :key_hash cannot be empty/falsy5786 is expected to validate that :name cannot be empty/falsy5787 is expected to validate that :suite_name cannot be empty/falsy5788 .find_or_create_by_batch5789 finds or creates records for the given unit test keys5790 when a given name or suite_name exceeds the string size limit5791 truncates the values before storing the information5792Gitlab::GithubImport::Importer::PullRequestReviewImporter5793 when the review author can be mapped to a gitlab user5794 when the review has no note text5795 when the review is "APPROVED"5796 creates a note for the review and approves the Merge Request5797 does nothing if the user already approved the merge request5798 when the review is "COMMENTED"5799 creates a note for the review5800 when the review is "CHANGES_REQUESTED"5801 creates a note for the review5802 when the review has a note text5803 when the review is "APPROVED"5804 creates a note for the review5805 when the review is "COMMENTED"5806 creates a note for the review5807 when the review is "CHANGES_REQUESTED"5808 creates a note for the review5809 when the review author cannot be mapped to a gitlab user5810 when the review has no note text5811 when the review is "APPROVED"5812 creates a note for the review with *Approved by by<author>*5813 when the review is "COMMENTED"5814 creates a note for the review with *Commented by<author>*5815 when the review is "CHANGES_REQUESTED"5816 creates a note for the review with *Changes requested by <author>*5817 when original author was deleted in github5818 creates a note for the review without the author information5819 when the submitted_at is not provided5820 creates a note for the review without the author information5821 when the review has a note text5822 when the review is "APPROVED"5823 creates a note for the review with *Approved by by<author>*5824 when the review is "COMMENTED"5825 creates a note for the review with *Commented by<author>*5826 when the review is "CHANGES_REQUESTED"5827 creates a note for the review with *Changes requested by <author>*5828MergeRequests::ResolvedDiscussionNotificationService5829 #execute5830 when not all discussions are resolved5831 doesn't add a system note5832 doesn't send a notification email5833 doesn't send a webhook5834 when all discussions are resolved5835 adds a system note5836 sends a notification email5837 sends a webhook5838Projects::UpdateStatisticsService5839 #execute5840 with a non-existing project5841 does nothing5842 with an existing project5843 statistics: [], method_caches: [:size, :commit_count]5844 refreshes the project statistics5845 invalidates the method caches after a refresh5846 statistics: ["repository_size"], method_caches: [:size]5847 refreshes the project statistics5848 invalidates the method caches after a refresh5849 statistics: [:repository_size], method_caches: [:size]5850 refreshes the project statistics5851 invalidates the method caches after a refresh5852 statistics: [:lfs_objects_size], method_caches: nil5853 refreshes the project statistics5854 invalidates the method caches after a refresh5855 statistics: [:commit_count], method_caches: [:commit_count]5856 refreshes the project statistics5857 invalidates the method caches after a refresh5858 statistics: [:repository_size, :commit_count], method_caches: [:size, :commit_count]5859 refreshes the project statistics5860 invalidates the method caches after a refresh5861 statistics: [:repository_size, :commit_count, :lfs_objects_size], method_caches: [:size, :commit_count]5862 refreshes the project statistics5863 invalidates the method caches after a refresh5864 with an existing project with a Wiki5865 invalidates and refreshes Wiki size5866MergeRequests::CreatePipelineWorker5867 #perform5868 when the objects exist5869 calls the merge request create pipeline service and calls update head pipeline5870 when the project does not exist5871 behaves like when object does not exist5872 does not call the create pipeline service5873 when the user does not exist5874 behaves like when object does not exist5875 does not call the create pipeline service5876 when the merge request does not exist5877 behaves like when object does not exist5878 does not call the create pipeline service5879Gitlab::Zentao::Client5880 #new5881 if integration is nil5882 raises ConfigError5883 integration is provided5884 is initialized successfully5885 #fetch_product5886 with valid product5887 fetches the product5888 with invalid product5889 fetches the empty product5890 with invalid response5891 fetches the empty product5892 #ping5893 with valid resource5894 responds with success5895 with deleted resource5896 responds with unsuccess5897 #fetch_issue5898 with invalid id5899 returns empty object5900 with valid id5901 fetches current issue5902seed production settings5903 GITLAB_SHARED_RUNNERS_REGISTRATION_TOKEN is set in the environment5904Saved Runner Registration Token5905Saved CI JWT signing key5906 writes the token to the database5907 GITLAB_PROMETHEUS_METRICS_ENABLED is set in the environment5908 GITLAB_PROMETHEUS_METRICS_ENABLED is true5909Saved Prometheus metrics enabled flag5910Saved CI JWT signing key5911 prometheus_metrics_enabled is set to true5912 GITLAB_PROMETHEUS_METRICS_ENABLED is false5913Saved Prometheus metrics enabled flag5914Saved CI JWT signing key5915 prometheus_metrics_enabled is set to false5916 GITLAB_PROMETHEUS_METRICS_ENABLED is default5917Saved CI JWT signing key5918 prometheus_metrics_enabled is set to true5919 CI JWT signing key5920Saved CI JWT signing key5921 writes valid RSA key to the database5922Gitlab::Database::Reindexing5923 .invoke5924 cleans up any leftover indexes5925 when there is an error raised5926 logs and re-raise5927 when async index creation is enabled5928 executes async index creation prior to any reindexing actions5929 when async index creation is disabled5930 does not execute async index creation5931 calls automatic reindexing5932 uses all candidate indexes5933 when explicit database is given5934 skips other databases5935 .automatic_reindexing5936 cleans up leftovers, before consuming the queue5937 with records in the queue5938 with enough records in the queue to reach limit5939 does not perform reindexing with heuristic5940 without enough records in the queue to reach limit5941 continues if the queue did not have enough records5942 .perform_with_heuristic5943 delegates to Coordinator5944 .perform_from_queue5945 consumes the queue in order of created_at and applies the limit5946 updates queued action and sets state to done5947 updates queued action upon error and sets state to failed5948 .cleanup_leftovers!5949Skipping ./spec/lib/gitlab/database/reindexing_spec.rb[1:5:1] 'Gitlab::Database::Reindexing.cleanup_leftovers! drops both leftover indexes' because it's flaky.5950 drops both leftover indexes (PENDING: around hook at ./spec/support/flaky_tests.rb:21 did not execute the example)5951Gitlab::Database::QueryAnalyzer5952 the hook is enabled by default in specs5953 does process queries and gets normalized SQL5954 does prevent recursive execution5955 #within5956 when it is already initialized5957 does initialize analyzer only once5958 does initialize user analyzer when enabled5959 does initialize user analyzer only once5960 does not initializer user analyzer when disabled5961 when initializer is enabled5962 calls begin! and end!5963 when begin! raises the end! is not called5964 when user analyzers are used5965 calls begin! and end!5966 #process_sql5967 does not analyze query if not enabled5968 does analyze query if enabled5969 does track exception if query cannot be parsed5970 does track exception if analyzer raises exception on enabled?5971 does track exception if analyzer raises exception on analyze5972 does call analyze only on enabled initializers5973 does not call analyze on suppressed analyzers5974 does call analyze on suppressed analyzers if some queries require tracking5975Banzai::Filter::MathFilter5976 leaves regular inline code unchanged5977 removes surrounding dollar signs and adds class code, math and js-render-math5978 only removes surrounding dollar signs5979 only removes surrounding single dollar sign5980 adds data-math-style inline attribute to inline math5981 adds class code and math to inline math5982 adds js-render-math class to inline math5983 ignores cases with missing dolar sign at the end5984 ignores cases with missing dolar sign at the beginning5985 ignores dollar signs if it is not adjacent5986 ignores dollar signs if they are inside another element5987 adds data-math-style display attribute to display math5988 adds js-render-math class to display math5989 ignores code blocks that are not math5990 requires the pre to contain both code and math5991 dollar signs around to display math5992 limits how many elements can be marked as math5993Clusters::Applications::DestroyService#execute5994 application is not installed5995 raises Clusters::Applications::BaseService::InvalidApplicationError5996 application is installed5997 application is schedulable5998 makes application scheduled!5999 schedules UninstallWorker6000 application is not schedulable6001 raises StateMachines::InvalidTransition6002Gitlab::Ci::Jwt6003 #payload6004 has correct values for the standard JWT attributes6005 has correct values for the custom attributes6006 skips user related custom attributes if build has no user assigned6007 ref type6008 branches6009 is "branch"6010 tags6011 is "tag"6012 merge requests6013 is "branch"6014 ref_protected6015 is false when ref is not protected6016 is true when ref is protected6017 environment6018 has correct values for environment attributes6019 .for_build6020 when ci_jwt_signing_key feature flag is disabled6021 behaves like generating JWT for build6022 when signing key is present6023 generates JWT with key id6024 generates JWT for the given job with ttl equal to build timeout6025 generates JWT for the given job with default ttl if build timeout is not set6026 when signing key is missing6027 raises NoSigningKeyError6028 when ci_jwt_signing_key feature flag is enabled6029 behaves like generating JWT for build6030 when signing key is present6031 generates JWT with key id6032 generates JWT for the given job with ttl equal to build timeout6033 generates JWT for the given job with default ttl if build timeout is not set6034 when signing key is missing6035 raises NoSigningKeyError6036IncidentManagement::PagerDuty::CreateIncidentIssueService6037 #execute6038 when PagerDuty webhook setting is active6039 when issue can be created6040 creates a new issue6041 responds with success6042 the issue author is Alert bot6043 issue has a correct title6044 issue has a correct description6045 when the payload does not contain a title6046 does not create a GitLab issue6047 responds with error6048 when PagerDuty webhook setting is not active6049 does not create a GitLab issue6050 responds with forbidden6051Gitlab::LegacyGithubImport::BranchFormatter6052 #exists?6053 returns true when branch exists and commit is part of the branch6054 returns false when branch exists and commit is not part of the branch6055 returns false when branch does not exist6056 #repo6057 returns raw repo6058 #sha6059 returns raw sha6060 #valid?6061 returns true when raw sha and ref are present6062 returns false when raw sha is blank6063 returns false when raw ref is blank6064MergeRequest::Metrics6065 associations6066 is expected to belong to merge_request required: false6067 is expected to belong to target_project class_name => Project required: false6068 is expected to belong to latest_closed_by class_name => User required: false6069 is expected to belong to merged_by class_name => User required: false6070 scopes6071 .merged_after6072 finds the record6073 doesn't include record outside of the filter6074 .merged_before6075 finds the record6076 doesn't include record outside of the filter6077 .by_target_project6078 finds metrics record with the associated target project6079 behaves like cleanup by a loose foreign key6080 cleans up (delete or nullify) the model6081 update6082 when pipeline_id is nullified6083 nullifies build related columns via DB trigger6084 when updated but pipeline_id is not nullified6085 does not nullify build related columns6086Milestones::IssuesCountService6087 counts all issues including confidential6088 behaves like a counter caching service6089 #count6090 caches the count6091 #refresh_cache6092 refreshes the cache6093 #delete_cache6094 removes the cache6095 #uncached_count6096 does not cache the count6097Ci::CreatePipelineService6098 #execute6099 when source is a dangling build6100 parameter config content6101 creates a pipeline6102 creates builds with the correct names6103 creates stages with the correct names6104 sets the correct config source6105Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas6106 properly analyzes queries6107 for SELECT on projects for allowed_gitlab_schema=no_schema6108 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DMLNotAllowedError6109 for SELECT on projects for allowed_gitlab_schema=gitlab_main6110 is expected not to raise Exception6111 for SELECT on projects for allowed_gitlab_schema=gitlab_ci6112 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DMLAccessDeniedError6113 for INSERT for allowed_gitlab_schema=no_schema6114 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DMLNotAllowedError6115 for INSERT for allowed_gitlab_schema=gitlab_main6116 is expected not to raise Exception6117 for INSERT for allowed_gitlab_schema=gitlab_ci6118 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DMLAccessDeniedError6119 for CREATE INDEX for allowed_gitlab_schema=no_schema6120 is expected not to raise Exception6121 for CREATE INDEX for allowed_gitlab_schema=gitlab_main6122 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DDLNotAllowedError6123 for CREATE INDEX for allowed_gitlab_schema=gitlab_ci6124 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DDLNotAllowedError6125 for CREATE SCHEMA for allowed_gitlab_schema=no_schema6126 is expected not to raise Exception6127 for CREATE SCHEMA for allowed_gitlab_schema=gitlab_main6128 is expected not to raise Exception6129 for CREATE SCHEMA for allowed_gitlab_schema=gitlab_ci6130 is expected not to raise Exception6131 for CREATE FUNCTION for allowed_gitlab_schema=no_schema6132 is expected not to raise Exception6133 for CREATE FUNCTION for allowed_gitlab_schema=gitlab_main6134 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DDLNotAllowedError6135 for CREATE FUNCTION for allowed_gitlab_schema=gitlab_ci6136 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DDLNotAllowedError6137 for CREATE TRIGGER for allowed_gitlab_schema=no_schema6138 is expected not to raise Exception6139 for CREATE TRIGGER for allowed_gitlab_schema=gitlab_main6140 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DDLNotAllowedError6141 for CREATE TRIGGER for allowed_gitlab_schema=gitlab_ci6142 is expected to raise Gitlab::Database::QueryAnalyzers::RestrictAllowedSchemas::DDLNotAllowedError6143 .require_ddl_mode!6144 when not configured does not raise exception6145 when no schemas are configured does not raise exception (DDL mode)6146 with schemas configured does raise exception (DML mode)6147 .require_dml_mode!6148 when not configured does not raise exception6149 when no schemas are configured does raise exception (DDL mode)6150 with schemas configured does raise exception (DML mode)6151Gitlab::ErrorTracking::ContextPayloadGenerator6152 user metadata6153 appends user metadata to the payload6154 tags metadata6155 when the GITLAB_SENTRY_EXTRA_TAGS env is not set6156 does not log into AppLogger6157 does not send any extra tags6158 when the GITLAB_SENTRY_EXTRA_TAGS env is a JSON hash6159 includes those tags in all events6160 does not log into AppLogger6161 when the GITLAB_SENTRY_EXTRA_TAGS env is not a JSON hash6162 env_var: "{:foo=>\"bar\", :baz=>\"quux\"}", error: "JSON::ParserError"6163 logs into AppLogger6164 does not include any extra tags6165 env_var: "[]", error: "NoMethodError"6166 logs into AppLogger6167 does not include any extra tags6168 env_var: "[[\"foo\",\"bar\"]]", error: "NoMethodError"6169 logs into AppLogger6170 does not include any extra tags6171 env_var: "[\"foo\",\"bar\"]", error: "NoMethodError"6172 logs into AppLogger6173 does not include any extra tags6174 env_var: "\"string\"", error: "NoMethodError"6175 logs into AppLogger6176 does not include any extra tags6177 extra metadata6178 appends extra metadata to the payload6179 appends exception embedded extra metadata to the payload6180 filters sensitive extra info6181ClustersFinder6182 #execute6183 when scope is all6184 is expected to contain exactly #<Clusters::Cluster id: 232, user_id: 2657, provider_type: "gcp", platform_type: "kubernetes", create...e, management_project_id: nil, cleanup_status: 1, cleanup_status_reason: nil, helm_major_version: 3> and #<Clusters::Cluster id: 235, user_id: 2660, provider_type: "gcp", platform_type: "kubernetes", create...e, management_project_id: nil, cleanup_status: 1, cleanup_status_reason: nil, helm_major_version: 3>6185 when scope is active6186 is expected to contain exactly #<Clusters::Cluster id: 238, user_id: 2664, provider_type: "gcp", platform_type: "kubernetes", create...e, management_project_id: nil, cleanup_status: 1, cleanup_status_reason: nil, helm_major_version: 3>6187 when scope is inactive6188 is expected to contain exactly #<Clusters::Cluster id: 241, user_id: 2668, provider_type: "gcp", platform_type: "kubernetes", create...e, management_project_id: nil, cleanup_status: 1, cleanup_status_reason: nil, helm_major_version: 3>6189GitlabUploader6190 #file_storage?6191 when file storage is used6192 is expected to be file storage6193 when is remote storage6194 is expected not to be file storage6195 #file_cache_storage?6196 when file storage is used6197 is expected to be file cache storage6198 when is remote storage6199 is expected not to be file cache storage6200 #move_to_cache6201 is true6202 #move_to_store6203 is true6204 #cache!6205 moves the file from the working directory to the cache directory6206 #replace_file_without_saving!6207 allows file to be replaced without triggering any callbacks6208 #open6209 when trace is stored in File storage6210 when file exists6211 returns io stream6212 when passing block it yields6213 when file does not exist6214 returns nil6215 when passing block it does not yield6216 when trace is stored in Object storage6217 when file exists6218 returns http io stream6219 when passing block it yields6220 when file does not exist6221 returns nil6222 when passing block it does not yield6223 #url_or_file_path6224 returns url when in remote storage6225 returns url when in remote storage6226Packages::Helm::PackageFilesFinder6227 #execute6228 with empty params6229 is expected to eq [#<Packages::PackageFile id: 86, package_id: 37, created_at: "2022-04-28 09:42:02.739574810 +0000", u...m: nil, verification_state: 0, verification_started_at: nil, status: "default", new_file_path: nil>]6230 with another project6231 is expected to eq []6232 with another channel6233 is expected to eq []6234 with matching file_name6235 is expected to eq [#<Packages::PackageFile id: 86, package_id: 37, created_at: "2022-04-28 09:42:02.739574810 +0000", u...m: nil, verification_state: 0, verification_started_at: nil, status: "default", new_file_path: nil>]6236 with another file_name6237 is expected to eq []6238 #most_recent!6239 is expected to eq #<Packages::PackageFile id: 86, package_id: 37, created_at: "2022-04-28 09:42:02.739574810 +0000", up...um: nil, verification_state: 0, verification_started_at: nil, status: "default", new_file_path: nil>6240SnippetsHelper6241 #embedded_raw_snippet_button6242 for Personal Snippets6243 returns view raw button of embedded snippets6244 for Project Snippets6245 returns view raw button of embedded snippets6246 #embedded_snippet_download_button6247 for Personal Snippets6248 returns download button of embedded snippets6249 for Project Snippets6250 returns download button of embedded snippets6251 #snippet_badge6252 when snippet is private6253 returns the snippet badge6254 when snippet is public6255 does not return anything6256 when snippet is internal6257 does not return anything6258 #snippet_report_abuse_path6259 returns false if the user cannot submit the snippet as spam6260 returns true if the user can submit the snippet as spam6261Gitlab::Auth::Result6262 when actor is User6263 returns auth_user6264 does not return deploy token6265 when actor is Deploy token6266 returns deploy token6267 does not return auth_user6268 #authentication_abilities_include?6269 when authentication abilities are empty6270 returns false6271 when authentication abilities are not empty6272 returns false when ability is not allowed6273 returns true when ability is allowed6274 #can_perform_action_on_project?6275 returns if actor can do perform given action on given project6276 returns if actor cannot do perform given action on given project6277 #can?6278 returns if actor can do perform given action on given project6279 returns if actor cannot do perform given action on given project6280Schedulable6281 for a pipeline_schedule6282 behaves like #schedule_next_run!6283 saves the object and sets next_run_at6284 sets next_run_at to nil on error6285 behaves like before_save callback6286 updates next_run_at6287 behaves like .runnable_schedules6288 returns the runnable schedules6289 for a container_expiration_policy6290 behaves like #schedule_next_run!6291 saves the object and sets next_run_at6292 sets next_run_at to nil on error6293 behaves like before_save callback6294 updates next_run_at6295 behaves like .runnable_schedules6296 returns the runnable schedules6297 #next_run_at6298 works6299DeploymentClusterEntity6300 #as_json6301 matches deployment_cluster entity schema6302 exposes the cluster details6303 when the user does not have permission to view the cluster6304 does not include the path nor the namespace6305Gitlab::Kubernetes::Helm::V3::InstallCommand6306 behaves like helm command generator6307 #generate_script6308 returns appropriate command6309 when rbac is true6310 behaves like helm command generator6311 #generate_script6312 returns appropriate command6313 when there is a pre-install script6314 behaves like helm command generator6315 #generate_script6316 returns appropriate command6317 when there is a post-install script6318 behaves like helm command generator6319 #generate_script6320 returns appropriate command6321 when there is no version6322 behaves like helm command generator6323 #generate_script6324 returns appropriate command6325 behaves like helm command6326 HELM_VERSION6327 is expected to match /\d+\.\d+\.\d+/6328 #env6329 is expected to be a kind of Hash6330 #rbac?6331 rbac is enabled6332 is expected to be truthy6333 rbac is not enabled6334 is expected to be falsey6335 #pod_resource6336 rbac is enabled6337 is expected to be an instance of Kubeclient::Resource6338 generates a pod that uses the tiller serviceAccountName6339 rbac is not enabled6340 is expected to be an instance of Kubeclient::Resource6341 generates a pod that uses the default serviceAccountName6342 #config_map_resource6343 returns a KubeClient resource with config map content for the application6344 #service_account_resource6345 rbac is enabled6346 generates a Kubeclient resource for the tiller ServiceAccount6347 rbac is not enabled6348 generates nothing6349 #cluster_role_binding_resource6350 rbac is enabled6351 generates a Kubeclient resource for the ClusterRoleBinding for tiller6352 binds the account in #service_account_resource6353 rbac is not enabled6354 generates nothing6355Banzai::ReferenceParser::MilestoneParser6356 #nodes_visible_to_user6357 when the link has a data-issue attribute6358 behaves like referenced feature visibility6359 when feature is disabled6360 does not create reference6361 when feature is enabled only for team members6362 does not create reference for non member6363 creates reference for member6364 when feature is enabled6365 creates reference6366 #referenced_by6367 when the link has a data-milestone attribute6368 using an existing milestone ID6369 returns an Array of milestones6370 using a non-existing milestone ID6371 returns an empty Array6372Ci::PrepareBuildService6373 #execute6374 build has unmet prerequisites6375 completes each prerequisite6376 enqueues the build6377 prerequisites fail to complete6378 drops the build6379 prerequisites raise an error6380 drops the build and notifies Sentry6381 build has no prerequisites6382 enqueues the build6383WebHookLogPresenter6384 #details_path6385 project hook6386 is expected to eq "/namespace1279/project803/-/hooks/1/hook_logs/1"6387 service hook6388 is expected to eq "/namespace1280/project804/-/integrations/drone_ci/hook_logs/2"6389 #retry_path6390 project hook6391 is expected to eq "/namespace1281/project805/-/hooks/4/hook_logs/3/retry"6392 service hook6393 is expected to eq "/namespace1282/project806/-/integrations/drone_ci/hook_logs/4/retry"6394Gitlab::Sanitizers::ExceptionMessage6395 .clean6396 when error is a URI::InvalidURIError6397 is expected to eq "bad URI(is not URI?): [FILTERED]"6398 when error is an Addressable::URI::InvalidURIError6399 uri: "http://foo:bar", result: "Invalid port number: [FILTERED]"6400 is expected to eq "Invalid port number: [FILTERED]"6401 uri: "http://foo:%eb", result: "Invalid encoding in port"6402 is expected to eq "Invalid encoding in port"6403 uri: "ht%0atp://foo", result: "Invalid scheme format: [FILTERED]"6404 is expected to eq "Invalid scheme format: [FILTERED]"6405 uri: "http:", result: "Absolute URI missing hierarchical segment: [FILTERED]"6406 is expected to eq "Absolute URI missing hierarchical segment: [FILTERED]"6407 uri: "::http", result: "Cannot assemble URI string with ambiguous path: [FILTERED]"6408 is expected to eq "Cannot assemble URI string with ambiguous path: [FILTERED]"6409 uri: "http://foo bar", result: "Invalid character in host: [FILTERED]"6410 is expected to eq "Invalid character in host: [FILTERED]"6411 with any other exception6412 is not invoked and does nothing6413ProjectCustomAttribute6414 assocations6415 is expected to belong to project required: false6416 validations6417 is expected to validate that :project cannot be empty/falsy6418 is expected to validate that :key cannot be empty/falsy6419 is expected to validate that :value cannot be empty/falsy6420 is expected to validate that :key is case-sensitively unique within the scope of :project_id6421HooksHelper6422 #link_to_test_hook6423 returns project namespaced link6424 returns admin namespaced link6425 #hook_log_path6426 with a project hook6427 returns project-namespaced link6428 with a service hook6429 returns project-namespaced link6430 with a system hook6431 returns admin-namespaced link6432NotificationsHelper6433 notification_icon6434 is expected to match "data-testid=\"notifications-off-icon\""6435 is expected to match "data-testid=\"notifications-off-icon\""6436 is expected to match "data-testid=\"notifications-icon\""6437 is expected to match "data-testid=\"at-icon\""6438 is expected to match "data-testid=\"earth-icon"6439 is expected to match "data-testid=\"eye-icon\""6440 is expected to equal ""6441 notification_title6442 is expected to match "Watch"6443 is expected to match "On mention"6444 is expected to match "Global"6445 #notification_icon_level6446 is expected to eq "owner_disabled"6447 is expected to eq "watch"6448 is expected to eq "participating"6449Gitlab::Kubernetes::Helm::V3::BaseCommand6450 HELM_VERSION6451 is expected to match /^3\.\d+\.\d+$/6452 behaves like helm command generator6453 #generate_script6454 returns appropriate command6455 #pod_name6456 is expected to eq "install-test-class-name"6457 behaves like helm command6458 HELM_VERSION6459 is expected to match /\d+\.\d+\.\d+/6460 #env6461 is expected to be a kind of Hash6462 #rbac?6463 rbac is enabled6464 is expected to be truthy6465 rbac is not enabled6466 is expected to be falsey6467 #pod_resource6468 rbac is enabled6469 is expected to be an instance of Kubeclient::Resource6470 generates a pod that uses the tiller serviceAccountName6471 rbac is not enabled6472 is expected to be an instance of Kubeclient::Resource6473 generates a pod that uses the default serviceAccountName6474 #config_map_resource6475 returns a KubeClient resource with config map content for the application6476 #service_account_resource6477 rbac is enabled6478 generates a Kubeclient resource for the tiller ServiceAccount6479 rbac is not enabled6480 generates nothing6481 #cluster_role_binding_resource6482 rbac is enabled6483 generates a Kubeclient resource for the ClusterRoleBinding for tiller6484 binds the account in #service_account_resource6485 rbac is not enabled6486 generates nothing6487RspecFlaky::FlakyExample6488 #initialize6489 when given an Example hash6490 behaves like a valid FlakyExample instance6491 returns valid attributes6492 when given a FlakyExample hash6493 behaves like a valid FlakyExample instance6494 returns valid attributes6495 #update_flakiness!6496 when given an Example hash6497 behaves like an up-to-date FlakyExample instance6498 sets the first_flaky_at if none exists6499 maintains the first_flaky_at if exists6500 updates the last_flaky_at6501 updates the flaky_reports6502 when passed a :last_attempts_count6503 updates the last_attempts_count6504 when run on the CI6505 updates the last_flaky_job6506 when given a FlakyExample hash6507 behaves like an up-to-date FlakyExample instance6508 sets the first_flaky_at if none exists6509 maintains the first_flaky_at if exists6510 updates the last_flaky_at6511 updates the flaky_reports6512 when passed a :last_attempts_count6513 updates the last_attempts_count6514 when run on the CI6515 updates the last_flaky_job6516 #to_h6517 when given an Example hash6518 behaves like a valid FlakyExample hash6519 returns a valid hash6520 when given a FlakyExample hash6521 behaves like a valid FlakyExample hash6522 returns a valid hash6523Groups::GroupLinks::DestroyService#execute6524 single link6525 destroys link6526 revokes project authorization6527 multiple links6528 updates project authorization once per group6529Lfs::PushService6530 does nothing if there are no LFS objects6531 #execute6532 uploads the object when upload is requested6533 does not upload the object when upload is not requested6534 verifies the upload if requested6535 skips verification if requested but upload fails6536 returns a failure when submitting a batch fails6537 returns a failure when submitting an upload fails6538 non-project-repository LFS objects6539 only tries to upload the project-repository LFS object6540Gitlab::Ci::Status::Build::Action6541 #label6542 when status has action6543 does not append text6544 when status does not have action6545 appends text about action not allowed6546 .matches?6547 when build is playable action6548 is a correct match6549 when build is not playable action6550 does not match6551 #badge_tooltip6552 returns the status6553FreezePeriodsFinder6554 when user is a maintainer6555 behaves like returns freeze_periods ordered by created_at asc6556 returns freeze_periods ordered by created_at6557 when user is a guest6558 behaves like returns nothing6559 is expected to be empty6560 when user is a developer6561 behaves like returns nothing6562 is expected to be empty6563 when user is not a project member6564 behaves like returns nothing6565 is expected to be empty6566 when project is public6567 behaves like returns nothing6568 is expected to be empty6569CommitPresenter6570 #web_path6571 is expected to eq "/namespace1303/project827/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"6572 #status_for6573 when user can read_commit_status6574 returns commit status for ref6575 when user can not read_commit_status6576 is nil6577 #any_pipelines?6578 when user can read pipeline6579 returns if there are any pipelines for commit6580 when user can not read pipeline6581 is false6582 #signature_html6583 renders html for displaying signature6584clearing redis cache6585 clearing pipeline status cache6586 clears pipeline status cache6587 behaves like clears the cache6588 is expected to change `redis_keys.size` by -16589 clearing set caches6590 repository set6591 behaves like clears the cache6592 is expected to change `redis_keys.size` by -16593 reactive cache set6594 behaves like clears the cache6595 is expected to change `redis_keys.size` by -16596scripts/changed-feature-flags6597 GetFeatureFlagsFromFiles6598 .extracted_flags6599 with definition files in the development directory6600 behaves like extract feature flags6601 returns feature flags on their own6602 returns feature flags and their state as enabled6603 returns feature flags and their state as disabled6604 with definition files in the ops directory6605 behaves like extract feature flags6606 returns feature flags on their own6607 returns feature flags and their state as enabled6608 returns feature flags and their state as disabled6609 with definition files in the experiment directory6610 ignores the files6611DeleteWithLimit6612 .delete_with_limit6613 deletes a limited amount of rows6614RuboCop::Cop::RSpec::BeSuccessMatcher6615 using expect(response).to be_success call6616 registers an offense and corrects6617 using expect(response).to be_successful call6618 does not register an offense6619 using expect(response).to_not be_success call6620 registers an offense and corrects6621 using expect(response).to_not be_successful call6622 does not register an offense6623 using expect(response).not_to be_success call6624 registers an offense and corrects6625 using expect(response).not_to be_successful call6626 does not register an offense6627 using is_expected.to be_success call6628 registers an offense and corrects6629 using is_expected.to be_successful call6630 does not register an offense6631 using is_expected.to_not be_success call6632 registers an offense and corrects6633 using is_expected.to_not be_successful call6634 does not register an offense6635 using is_expected.not_to be_success call6636 registers an offense and corrects6637 using is_expected.not_to be_successful call6638 does not register an offense6639Sidebars::Projects::Menus::ZentaoMenu6640 behaves like ZenTao menu with CE version6641 #render?6642 when issues integration is disabled6643 returns false6644 when issues integration is enabled6645 returns true6646 renders menu link6647 renders external-link icon6648 renders ZenTao menu6649 does not contain items6650Gitlab::Serverless::Service6651 exposes methods extracting data from the attributes hash6652 returns nil for missing attributes6653 #description6654 extracts the description in knative 7 format if available6655 extracts the description in knative 5/6 format if 7 is not available6656 #url6657 returns proxy URL if cluster has serverless domain6658 returns the URL from the knative 6/7 format6659 returns the URL from the knative 5 format6660Ci::BuildReportResultService6661 #execute6662 when build is finished6663 creates a build report result entry6664 tracks unique test cases parsed6665 and build has test report parsing errors6666 creates a build report result entry with suite error6667 does not track unique test cases parsed6668 when data has already been persisted6669 raises an error and do not persist the same data twice6670 when build is running and test report does not exist6671 does not persist data6672Gitlab::Usage::Metric6673 #with_value6674 returns key_path metric with the corresponding value6675 #with_instrumentation6676 returns key_path metric with the corresponding generated query6677 #with_suggested_name6678 returns key_path metric with the corresponding generated query6679 unavailable metric6680 #with_value6681 returns an empty hash6682 #with_instrumentation6683 returns an empty hash6684 #with_suggested_name6685 returns an empty hash6686gitlab:background_migrations namespace rake tasks6687 finalize6688 without the proper arguments6689 exits without finalizing the migration6690 with the proper arguments6691 finalizes the matching migration6692 with a null parameter6693 finalizes the matching migration6694 when multiple database feature is enabled6695 ignores geo6696 without the proper arguments6697 exits without finalizing the migration6698 with the proper arguments6699 finalizes the matching migration6700 when database name is not passed6701 aborts the rake task6702 status6703 outputs the status of background migrations6704 when multiple database feature is enabled6705 with a single database6706 outputs the status of background migrations6707 ignores geo6708 with multiple databases6709 outputs the status for each database6710Sidebars::Projects::Panel6711 has a scope menu6712 Confluence menu item6713 when integration is present and active6714 confluence only6715 contains Confluence menu item6716 does not contain Wiki menu item6717 shimo only6718 contains Shimo menu item6719 confluence & shimo6720 contains Confluence menu item, not Shimo6721 when integration is not present6722 does not contain Confluence menu item6723 contains Wiki menu item6724RuboCop::Cop::Scalability::CronWorkerContext6725 adds an offense when including CronjobQueue6726 does not add offenses for other workers6727 does not add an offense when the class defines a context6728 does not add an offense when the worker calls `with_context`6729 does not add an offense when the worker calls `bulk_perform_async_with_contexts`6730 does not add an offense when the worker calls `bulk_perform_in_with_contexts`6731Gitlab::Ci::Config::Entry::Services6732 when configuration is valid6733 #valid?6734 is valid6735 #value6736 returns valid array6737 when configuration is invalid6738 #valid?6739 is invalid6740 when configuration has ports6741 when with_image_ports metadata is not enabled6742 #valid?6743 is not valid6744 when with_image_ports metadata is enabled6745 #valid?6746 is valid6747 #value6748 returns valid array6749 services alias6750 when they are not unique6751 #valid?6752 is invalid6753 when they are unique6754 #valid?6755 is valid6756 when one of the duplicated alias is in a service without ports6757 is valid6758 when there are not any ports6759 is valid6760shared/wikis/_sidebar.html.haml6761 includes a link to clone the repository6762 the sidebar failed to load6763 reports this to the user6764 The sidebar comes from a custom page6765 does not show an alert6766 renders the wiki content6767 The sidebar comes a list of wiki pages6768 does not show an alert6769 renders the wiki content6770 there is no more to see6771 does not invite the user to view more6772 link to edit the sidebar6773 when the user has edit permission6774 renders the link6775 when the user does not have edit permission6776 does not render the link6777Gitlab::Ci::Status::Skipped6778 #text6779 is expected to eq "skipped"6780 #label6781 is expected to eq "skipped"6782 #icon6783 is expected to eq "status_skipped"6784 #favicon6785 is expected to eq "favicon_status_skipped"6786 #group6787 is expected to eq "skipped"6788 #details_path6789 is expected to be nil6790Gitlab::SQL::RecursiveCTE6791 #to_arel6792 generates an Arel relation for the CTE body6793 #alias_to6794 returns an alias for the CTE6795 replaces dots with an underscore6796 #apply_to6797 applies a CTE to an ActiveRecord::Relation6798 behaves like CTE with MATERIALIZED keyword examples6799 adding MATERIALIZE to the CTE6800 when PG version is <126801 does not add MATERIALIZE keyword6802 when PG version is >=126803 adds MATERIALIZE keyword6804 when version is higher than 126805 adds MATERIALIZE keyword6806 when materialized is disabled6807 does not add MATERIALIZE keyword6808Ci::PipelineSchedulePolicy6809 rules6810 rules for protected ref6811 when no one can push or merge to the branch6812 does not include ability to play pipeline schedule6813 when developers can push to the branch6814 includes ability to update pipeline6815 when no one can create the tag6816 does not include ability to play pipeline schedule6817 when no one can create the tag but it is not a tag6818 includes ability to play pipeline schedule6819 rules for owner of schedule6820 includes abilities to do all operations on pipeline schedule6821 rules for a maintainer6822 includes abilities to do all operations on pipeline schedule6823 rules for non-owner of schedule6824 includes abilities to take ownership6825NestedAttributesDuplicatesValidator6826 #validate_each6827 with no scope6828 does not have any errors6829 with duplicates6830 has a duplicate key error6831 with a scope attribute6832 does not have any errors6833 with duplicates6834 has a duplicate key error6835 with a child attribute6836 does not have any errors6837 when name is duplicated6838 has a duplicate error6839 when url is duplicated6840 has a duplicate error6841HashedStorage::MigratorWorker6842 #perform6843 delegates to MigratorService6844 migrates projects in the specified range6845NumbersHelper6846 #limited_counter_with_delimiter6847 count: 9, options: {:limit=>10}, expected_result: "9"6848 is expected to eq "9"6849 count: 10, options: {:limit=>10}, expected_result: "10"6850 is expected to eq "10"6851 count: 11, options: {:limit=>10}, expected_result: "10+"6852 is expected to eq "10+"6853 count: 12, options: {:limit=>10}, expected_result: "10+"6854 is expected to eq "10+"6855 count: 999, options: {}, expected_result: "999"6856 is expected to eq "999"6857 count: 1000, options: {}, expected_result: "1,000"6858 is expected to eq "1,000"6859 count: 1001, options: {}, expected_result: "1,000+"6860 is expected to eq "1,000+"6861 count: 1002, options: {}, expected_result: "1,000+"6862 is expected to eq "1,000+"6863BaseCountService6864 #relation_for_count6865 raises NotImplementedError6866 #count6867 returns the number of values6868 #uncached_count6869 returns the uncached number of values6870 #refresh_cache6871 refreshes the cache6872 #delete_cache6873 deletes the cache6874 #raw?6875 returns false6876 #cache_key6877 raises NotImplementedError6878 #cache_options6879 returns the default in options6880shared/milestones/_issuable.html.haml6881 issue6882 links to the page for the issue6883 links to issues page for user6884 merge request6885 links to merge requests page for user6886 links to the page for the merge request6887MergeRequestMetricsService6888 #merge6889 updates metrics6890 #close6891 updates metrics6892 #reopen6893 updates metrics6894Sidebars::Projects::Menus::LearnGitlabMenu6895 does not contain any sub menu6896 #nav_link_html_options6897 is expected to eq {:class=>"home", :data=>{:track_label=>"learn_gitlab"}}6898 #render?6899 when learn gitlab experiment is enabled6900 returns true6901 when learn gitlab experiment is disabled6902 returns false6903 #has_pill?6904 when learn gitlab experiment is enabled6905 returns true6906 when learn gitlab experiment is disabled6907 returns false6908 #pill_count6909 returns pill count6910Ci::GenerateTerraformReportsService6911 #execute6912 when head pipeline has terraform reports6913 returns status and data6914 when head pipeline has corrupted terraform reports6915 returns a report with error messages6916 when head pipeline is corrupted6917 returns status and error message6918RuboCop::Cop::Gitlab::EventStoreSubscriber6919 when an event store subscriber overrides #perform6920 registers an offense6921 when an event store subscriber does not override #perform6922 does not register an offense6923 when an event store subscriber does not implement #handle_event6924 registers an offense6925 when a Sidekiq worker overrides #perform6926 does not register an offense6927 when a Sidekiq worker implements #handle_event6928 does not register an offense6929 a non worker class6930 does not register an offense6931PropagateIntegrationInheritDescendantWorker6932 behaves like an idempotent worker6933 is labeled as idempotent6934 performs multiple times sequentially without raising an exception6935 calls to BulkUpdateIntegrationService6936 with an invalid integration id6937 returns without failure6938Packages::Nuget::SearchResultsPresenter6939 #total_count6940 expects to have 3 total elements6941 #data6942 returns the proper data structure6943Sidebars::Panel6944 #renderable_menus6945 returns only renderable menus6946 #has_renderable_menus?6947 returns false when no renderable menus6948 returns true when no renderable menus6949 #add_element6950 adds the element to the last position of the list6951 does not add nil elements6952 #insert_element_before6953 adds element before the specific element class6954 does not add nil elements6955 when reference element does not exist6956 adds the element to the top of the list6957 #insert_element_after6958 adds element after the specific element class6959 does not add nil elements6960 when reference element does not exist6961 adds the element to the end of the list6962 #replace_element6963 replace existing element in the list6964 does not add nil elements6965 does not add the element if the other element is not found6966ChatNames::AuthorizeUserService6967 #execute6968 when all parameters are valid6969 produces a valid HTTP URL6970 requests a new token6971 when there are missing parameters6972 does not produce a URL6973 does not request a new token6974registrations/welcome/show6975 is expected not to have visible css "label[for=\"user_setup_for_company\"]"6976 is expected to have visible button "Get started!" that is not disabled6977 is expected not to have visible css "input[name=\"user[email_opted_in]\"]"6978Every Sidekiq worker6979 does not use the default queue6980 uses the cronjob queue when the worker runs as a cronjob6981 has its queue in Gitlab::SidekiqConfig::QUEUE_CONFIG_PATHS6982 has its queue or namespace in config/sidekiq_queues.yml6983 has a value for loggable_arguments6984 feature category declarations6985 has a feature_category attribute6986 has a feature_category that maps to a value in feature_categories.yml6987 is (exclusively) memory-bound or high urgency, not both6988 has (exclusively) external dependencies or is high urgency, not both6989 retries6990 uses the default number of retries for new jobs6991 uses zero retries for cronjobs6992 uses specified numbers of retries for workers with exceptions encoded here6993ClusterWaitForAppUpdateWorker6994 runs CheckUpgradeProgressService when application is found6995 does not run CheckUpgradeProgressService when application is not found6996Gitlab::Ci::Config::Entry::Product::Variables6997 validations6998 when entry config value is correct6999 #value7000 returns hash with key value strings7001 #errors7002 does not append errors7003 #valid?7004 is valid7005 with only one variable7006 #valid?7007 is valid7008 #errors7009 does not append errors7010JSONWebToken::Token7011 custom parameters7012 is expected to eq "value"7013 is expected to include {:key => "value"}7014 embeds default payload7015 is expected to include {:jti => "a5598295-a02c-4892-a3de-e6c6bbc82caa", :iat => 1651139000, :nbf => 1651138995, :exp => 1651139060}7016projects/settings/ci_cd/_autodevops_form7017 shows a warning message about Kubernetes cluster7018 when the project has an available kubernetes cluster7019 does not show a warning message about Kubernetes cluster7020 shows a warning message about base domain7021Ci::DisableUserPipelineSchedulesService7022 #execute7023 when user has active pipeline schedules7024 disables all active pipeline schedules7025Gitlab::GithubImport::Representation::DiffNotes::SuggestionFormatter7026 does nothing when there is any text before the suggestion tag7027 handles nil value for note7028 does not allow over 3 leading spaces for valid suggestion7029 allows up to 3 leading spaces7030 does nothing when there is any text without space after the suggestion tag7031 formats single-line suggestions7032 ignores text after suggestion tag on the same line7033 formats multiple single-line suggestions7034 formats multi-line suggestions7035 formats multiple multi-line suggestions7036Gitlab::Database::Count::ExactCountStrategy7037 #count7038 counts all models7039 returns default value if count times out7040Gitlab::Database::EachDatabase7041 .each_database_connection7042 yields each connection after connecting SharedModel7043 when only certain databases are selected7044 yields the selected connections after connecting SharedModel7045 when the selected names are passed as symbols7046 yields the selected connections after connecting SharedModel7047 when the selected names are invalid7048 does not yield any connections7049 raises an error7050 when shared connections are not included7051 only yields the unshared connections7052 .each_model_connection7053 when the model inherits from SharedModel7054 yields each model with SharedModel connected to each database connection7055 when the model limits connection names7056 only yields the model with SharedModel connected to the limited connections7057 when the model does not inherit from SharedModel7058 yields each model after connecting SharedModel7059 when the database connections are limited by the only_on option7060 when a single name is passed in7061 yields models only connected to the given database7062 when a list of names are passed in7063 yields models only connected to the given databases7064Pages::VirtualDomain7065 #certificate and #key pair7066 returns nil if there is no domain provided7067 when Pages domain is provided7068 returns certificate and key from the provided domain7069 #lookup_paths7070 when there is pages domain provided7071 returns collection of projects pages lookup paths sorted by prefix in reverse7072 when there is trim_prefix provided7073 returns collection of projects pages lookup paths sorted by prefix in reverse7074Pages::DeleteService7075 marks pages as not deployed7076 deletes all domains7077 schedules a destruction of pages deployments7078 removes pages deployments7079DependencyProxy::FindCachedManifestService7080 #execute7081 when no manifest exists7082 successful head request7083 behaves like returning no manifest7084 returns a nil manifest7085 failed head request7086 behaves like returning no manifest7087 returns a nil manifest7088 when manifest exists7089 behaves like using the cached manifest7090 uses cached manifest instead of downloading one7091 when digest is stale7092 behaves like returning no manifest7093 returns a nil manifest7094 when the cached manifest is pending destruction7095 behaves like returning no manifest7096 returns a nil manifest7097 failed connection7098 behaves like using the cached manifest7099 uses cached manifest instead of downloading one7100 and no manifest is cached7101 returns an error7102Gitlab::ImportExport::RepoSaver7103 bundle a project Git repo7104 bundles the repo successfully7105 creates the directory for the repository7106 when the repo is empty7107 bundles the repo successfully7108Gitlab::Pagination::CursorBasedKeyset7109 .available_for_type?7110 returns true for Group7111 return false for other types of relations7112 .available?7113 with order-by name asc7114 returns true for Group7115 return false for other types of relations7116 with other order-by columns7117 returns false for Group7118 return false for other types of relations7119BulkImports::EntitiesFinder7120 #execute7121 returns a list of import entities associated with user7122 when bulk import is specified7123 returns a list of import entities filtered by bulk import7124 when specified import is not associated with user7125 does not return entities7126 when status is specified7127 returns a list of import entities filtered by status7128 when invalid status is specified7129 does not filter entities by status7130 when bulk import and status are specified7131 returns matched import entities7132 when order is specifed7133 when order is specified as asc7134 returns entities sorted ascending7135 when order is specified as desc7136 returns entities sorted descending7137Projects::ContainerRepository::DestroyService7138 when user does not have access to registry7139 does not delete a repository7140 when user has access to registry7141 when root container repository exists7142 deletes the repository7143 when destroy fails7144 set delete_status7145Atlassian::JiraConnect::Serializers::RepositoryEntity7146 is expected to match schema "jira_connect/repository"7147 with custom update_sequence_id7148 passes the update_sequence_id on to the nested entities7149Types::MetadataType7150 is expected to eq "Metadata"7151 is expected to require graphql authorizations :read_instance_metadata7152Ci::CreatePipelineService7153 creation errors and warnings7154 when created successfully7155 when warnings are raised7156 contains only warnings7157 when no warnings are raised7158 contains no warnings7159 when failed to create the pipeline7160 when errors are raised and masked variables are involved7161 contains errors and masks variables7162 when warnings are raised7163 contains both errors and warnings7164 when no warnings are raised7165 contains only errors7166Gitlab::MarkdownCache::Redis::Store7167 .bulk_read7168 returns a hash of values from store7169 #save7170 stores updates to html fields and version7171 #read7172 reads the html fields and version from redis if they were stored7173 is mared loaded after reading7174Gitlab::Middleware::QueryAnalyzer7175 the PreventCrossDatabaseModification7176 #call7177 when there is a cross modification7178 detects cross modifications and tracks exception7179 when the detect_cross_database_modification is disabled7180 does not detect cross modifications7181 when there is no cross modification7182 does not log anything7183Types::Tree::TreeType7184 is expected to eq "Tree"7185 is expected to have graphql fields :trees, :submodules, :blobs, and :last_commit7186Types::Packages::Helm::MaintainerType7187 is expected to eq "PackageHelmMaintainerType"7188 includes helm maintainer fields7189Packages::Rubygems::CreateDependenciesService7190 #execute7191 creates dependencies7192 links dependencies to the package7193RuboCop::Cop::ActiveModelErrorsDirectManipulation7194 when modifying errors7195 registers an offense7196 when assigning7197 registers an offense7198 when modifying errors.messages7199 registers an offense7200 when assigning7201 registers an offense7202 when modifying errors.details7203 registers an offense7204 when assigning7205 registers an offense7206Gitlab::Console7207 .welcome!7208 when running in the Rails console7209 on darwin7210 behaves like console messages7211 prints system info7212 behaves like console messages7213 prints system info7214 when not running in the Rails console7215 does not print anything7216RspecFlaky::Report7217 delegates to #flaky_examples using SimpleDelegator7218 .load7219 loads the report file7220 .load_json7221 loads the report file7222 #initialize7223 accepts a RspecFlaky::FlakyExamplesCollection7224 does not accept anything else7225 #write7226 when RspecFlaky::Config.generate_report? is false7227 does not write any report file7228 when RspecFlaky::Config.generate_report? is true7229 delegates the writes to RspecFlaky::Report7230 #prune_outdated7231 returns a new collection without the examples older than 30 days by default7232 accepts a given number of days7233Resolvers::Ci::TestReportSummaryResolver7234 #resolve7235 when pipeline has build report results7236 returns test report summary data7237 when pipeline does not have build report results7238 renders test report summary data7239Discussions::CaptureDiffNotePositionsService7240 when merge request has a discussion7241 and position of the discussion changed on target branch head7242 diff positions are created for the first notes of the discussions7243Gitlab::Metrics::Prometheus7244 #reset_registry!7245 clears existing metrics7246 #error_detected!7247 disables Prometheus metrics7248clusters/clusters/gcp/_form7249 with all feature flags enabled7250 has a cloud run checkbox7251Types::ContainerRepositoryCleanupStatusEnum7252 exposes all statuses7253Ci::TriggerSerializer7254 #represent7255 matches schema7256TokenAuthenticatableStrategies::Digest7257 #token_fields7258 includes the digest field7259projects/hooks/index7260 renders webhooks page with "Project Hooks"7261 webhook is rate limited7262 renders "Disabled" badge7263 webhook is permanently disabled7264 renders "Failed to connect" badge7265 webhook is temporarily disabled7266 renders "Fails to connect" badge7267Gitlab::FileMarkdownLinkBuilder7268 markdown_link7269 when file name has the character ]7270 escapes the character7271 when file is an image7272 returns preview markdown link7273 when file is video7274 returns preview markdown link7275 when file is audio7276 returns preview markdown link7277 when file is not embeddable7278 returns markdown link7279 when file name is blank7280 returns nil7281 mardown_name7282 when file is an image7283 retrieves the name without the extension7284 when file is video7285 retrieves the name without the extension7286 when file is audio7287 retrieves the name without the extension7288 when file is not embeddable7289 retrieves the name with the extesion7290 when file name is blank7291 returns nil7292ProjectExportJob7293 associations7294 is expected to belong to project required: false7295 validations7296 is expected to validate that :project cannot be empty/falsy7297 is expected to validate that :jid cannot be empty/falsy7298 is expected to validate that :status cannot be empty/falsy7299Gitlab::Application7300 when parameters are logged7301 rails does not leak confidential parameters7302 input_url: "/", output_query: {}7303 is expected to eq {}7304 input_url: "/?safe=1", output_query: {"safe"=>"1"}7305 is expected to eq {"safe"=>"1"}7306 input_url: "/?private_token=secret", output_query: {"private_token"=>"[FILTERED]"}7307 is expected to eq {"private_token"=>"[FILTERED]"}7308 input_url: "/?mixed=1&private_token=secret", output_query: {"mixed"=>"1", "private_token"=>"[FILTERED]"}7309 is expected to eq {"mixed"=>"1", "private_token"=>"[FILTERED]"}7310 input_url: "/?note=secret¬eable=1&prefix_note=2", output_query: {"note"=>"[FILTERED]", "noteable"=>"1", "prefix_note"=>"2"}7311 is expected to eq {"note"=>"[FILTERED]", "noteable"=>"1", "prefix_note"=>"2"}7312 input_url: "/?note[note]=secret&target_type=1", output_query: {"note"=>"[FILTERED]", "target_type"=>"1"}7313 is expected to eq {"note"=>"[FILTERED]", "target_type"=>"1"}7314 input_url: "/?safe[note]=secret&target_type=1", output_query: {"safe"=>{"note"=>"[FILTERED]"}, "target_type"=>"1"}7315 is expected to eq {"safe"=>{"note"=>"[FILTERED]"}, "target_type"=>"1"}7316Resolvers::RepositoryBranchNamesResolver7317 #resolve7318 with empty search pattern7319 returns nil7320 with a valid search pattern7321 returns matching branches7322 properly offsets and limits branch name results7323Banzai::Filter::InlineDiffFilter7324 adds inline diff span tags for deletions when using square brackets7325 adds inline diff span tags for deletions when using curley braces7326 does not add inline diff span tags when a closing tag is not provided7327 adds inline span tags for additions when using square brackets7328 adds inline span tags for additions when using curley braces7329 does not add inline diff span tags when a closing addition tag is not provided7330 does not add inline diff span tags when the tags do not match7331 prevents user-land html being injected7332 preserves content inside pre tags7333 preserves content inside code tags7334 preserves content inside tt tags7335Gitlab::UsageData::Topology7336 #topology_usage_data7337 can reach a ready Prometheus client7338 behaves like query topology data from Prometheus7339 tracking node metrics7340 contains node level metrics for each instance7341 and some node memory metrics are missing7342 removes the respective entries and includes the failures7343 and services run on the same node but report different instance values7344 normalizes equivalent instance values and maps them to the same node7345 and node metrics are missing but service metrics exist7346 still reports service metrics7347 and unknown services are encountered7348 filters out unknown service data and reports the unknown services as a failure7349 and an error is raised when querying Prometheus7350 without timeout failures7351 returns empty result and executes subsequent queries as usual7352 with timeout failures7353 exception: Errno::ETIMEDOUT7354 returns empty result and cancelled subsequent queries7355 exception: Net::OpenTimeout7356 returns empty result and cancelled subsequent queries7357 exception: Net::ReadTimeout7358 returns empty result and cancelled subsequent queries7359 can not reach a ready Prometheus client7360 behaves like returns empty result with no failures7361 is expected to eq {:duration_s=>0, :failures=>[]}7362 when top-level function raises error7363 returns empty result with generic failure7364AuthorizedProjectUpdate::UserRefreshFromReplicaWorker7365 is labeled as low urgency7366 behaves like an idempotent worker7367 is labeled as idempotent7368 performs multiple times sequentially without raising an exception7369 #perform7370 checks if a project_authorization refresh is needed for the user7371 when there are project authorization records due for either removal or addition for a specific user7372 enqueues a new project authorization update job for the user7373 when there are no additions or removals to be made to project authorizations for a specific user7374 does not enqueue a new project authorization update job for the user7375 with load balancing enabled7376 reads from the replica database7377Packages::MarkPackageForDestructionService7378 #execute7379 when the user is authorized7380 when it is successful7381 marks the package and package files as pending destruction7382 returns a success ServiceResponse7383 when it is not successful7384 returns an error ServiceResponse7385 when the user is not authorized7386 returns an error ServiceResponse7387Gitlab::Database::Reindexing::ReindexAction7388 is expected to be a kind of Gitlab::Database::SharedModel(abstract)7389 .create_for7390 creates a new record for the given index7391 #finish7392 sets #action_end7393 sets #ondisk_size_bytes_end after reloading the index record7394 saves the record7395 setting #state7396 sets #state to finished if not given7397 sets #state to finished if not set to started7398 does not change state if set to failed7399IssueSerializer7400 non-sidebar issue serialization7401 matches issue json schema7402 sidebar issue serialization7403 matches issue_sidebar json schema7404 sidebar extras issue serialization7405 matches issue_sidebar_extras json schema7406 board issue serialization7407 matches board issue json schema7408Ci::CreatePipelineService7409 artifacts:7410 reports:7411 with valid config7412 creates pipeline with builds7413 with invalid config7414 creates pipeline with yaml errors7415Gitlab::UsageDataCounters::WebIdeCounter7416 commits counter7417 behaves like counter examples7418 increments counter and return the total count7419 merge requests counter7420 behaves like counter examples7421 increments counter and return the total count7422 views counter7423 behaves like counter examples7424 increments counter and return the total count7425 terminals counter7426 behaves like counter examples7427 increments counter and return the total count7428 pipelines counter7429 behaves like counter examples7430 increments counter and return the total count7431 previews counter7432 when web ide clientside preview is enabled7433 behaves like counter examples7434 increments counter and return the total count7435 when web ide clientside preview is not enabled7436 does not increment the counter7437 .totals7438 can report all totals7439Kaniko.gitlab-ci.yml7440 the created pipeline7441 creates "kaniko-build" job7442Ci::CreatePipelineService7443 .pre/.post stages7444 when pipeline contains a build except .pre/.post7445 creates a pipeline7446 when pipeline does not contain any other build except .pre/.post7447 does not create a pipeline7448RuboCop::Cop::Scalability::BulkPerformWithContext7449 adds an offense when calling bulk_perform_async7450 adds an offense when calling bulk_perform_in7451 does not add an offense for migrations7452 does not add an offence for specs7453 does not add an offense for scheduling on the BackgroundMigrationWorker7454 does not add an offense for scheduling on the CiDatabaseWorker7455Gitlab::Metrics::Dashboard::Cache7456 .fetch7457 stores data correctly7458 .for7459 returns a new instance7460 #fetch7461 stores data correctly7462 #delete_all!7463 deletes keys of the given project7464 does not fail when nothing to delete7465 multiple fetches and deletes7466 aggregate_failures7467WorkItems::BuildService7468 #execute7469 is expected to be a kind of WorkItem(id: integer, title: string, author_id: integer, project_id: integer, created_at: datetime, u...e_type: integer, blocking_issues_count: integer, upvotes_count: integer, work_item_type_id: integer)7470ImportFailure7471 Scopes7472 returns hard failures given a correlation ID7473 orders hard failures by newest first7474 Associations7475 is expected to belong to project required: false7476 is expected to belong to group required: false7477 Validations7478 has no group7479 is expected to validate that :project cannot be empty/falsy7480 has no project7481 is expected to validate that :group cannot be empty/falsy7482IssueUserMention7483 associations7484 is expected to belong to issue required: false7485 is expected to belong to note required: false7486 behaves like has user mentions7487 #has_mentions?7488 when no mentions7489 returns false7490 when mentioned_users_ids not null7491 returns true7492 when mentioned projects7493 returns true7494 when mentioned groups7495 returns true7496Spam::AkismetMarkAsSpamService7497 #execute7498 when the spammable object is not submittable7499 does not submit as spam7500 spam is submitted successfully7501 submits as spam7502 updates the spammable object's user agent detail as being submitted as spam7503 when Akismet does not consider it spam7504 does not update the spammable object as spam7505Packages::PackageFinder7506 #execute7507 is expected to eq #<Packages::Package id: 54, project_id: 1350, created_at: "2022-04-28 09:43:59.013069000 +0000", upda...ny/app/my-app", version: "1.4-SNAPSHOT", package_type: "maven", creator_id: 2897, status: "default">7508 with non-displayable package7509 raises an exception7510 processing packages7511 are not returned7512Gitlab::Usage::Metrics::Instrumentations::CountUsersAssociatingMilestonesToReleasesMetric7513 behaves like a correct instrumented metric value7514 has correct value7515Gitlab::Email::ServiceDeskReceiver7516 when the email contains a valid email address7517 when in a To header7518 finds the service desk key7519 when the email contains a valid email address in a header7520 when in a Delivered-To header7521 finds the service desk key7522 when in a Envelope-To header7523 finds the service desk key7524 when in a X-Envelope-To header7525 finds the service desk key7526 when the email does not contain a valid email address7527 raises an error7528SnippetUserMention7529 associations7530 is expected to belong to snippet required: false7531 is expected to belong to note required: false7532 behaves like has user mentions7533 #has_mentions?7534 when no mentions7535 returns false7536 when mentioned_users_ids not null7537 returns true7538 when mentioned projects7539 returns true7540 when mentioned groups7541 returns true7542DeleteUserWorker7543 calls the DeleteUserWorker with the params it was given7544 uses symbolized keys7545Gitlab::Graphql::KnownOperations7546 #from_query7547 query_string: "query { helloWorld }", expected: #<struct Gitlab::Graphql::KnownOperations::Operation name="unknown">7548 returns known operation name from GraphQL Query7549 query_string: "query fuzzyyy { helloWorld }", expected: #<struct Gitlab::Graphql::KnownOperations::Operation name="unknown">7550 returns known operation name from GraphQL Query7551 query_string: "query foo { helloWorld }", expected: #<struct Gitlab::Graphql::KnownOperations::Operation name="foo">7552 returns known operation name from GraphQL Query7553 #operations7554 returns array of known operations7555 Operation#to_caller_id7556 query_string: "query { helloWorld }", expected: "graphql:unknown"7557 formats operation name for caller_id metric property7558 query_string: "query foo { helloWorld }", expected: "graphql:foo"7559 formats operation name for caller_id metric property7560 Opeartion#query_urgency7561 returns the associated query urgency7562 .default7563 returns a memoization of values from webpack7564Gitlab::ImportExport::DecompressedArchiveSizeValidator7565 #valid?7566 when file does not exceed allowed decompressed size7567 returns true7568 when waiter thread no longer exists7569 does not raise exception7570 when file exceeds allowed decompressed size7571 logs error message returns false7572 when exception occurs during decompression7573 when timeout occurs7574 logs raised exception and terminates validator process group7575 when exception occurs7576 logs raised exception and terminates validator process group7577MergeRequests::Mergeability::CheckDraftStatusService7578 #execute7579 when the merge request is a draft7580 returns a check result with status failed7581 when the merge request is not a draft7582 returns a check result with status success7583 #skip?7584 returns false7585 #cacheable?7586 returns false7587Constraints::JiraEncodedUrlConstrainer7588 #matches?7589 when there is no /-/jira prefix and no encoded slash7590 is expected to eq false7591 when tree path contains encoded slash7592 is expected to eq false7593 when path has /-/jira prefix7594 is expected to eq true7595 when project_id has encoded slash7596 is expected to eq true7597Gitlab::Graphql::Pagination::Keyset::Conditions::NullCondition7598 #build7599 when ordering by a column attribute7600 when :after7601 behaves like :after condition7602 generates sql7603 when :before7604 generates :before sql7605 when :foo7606 behaves like :after condition7607 generates sql7608 when ordering by LOWER7609 when :after7610 generates sql7611 when :before7612 generates :before sql7613BulkImports::Projects::Graphql::GetRepositoryQuery7614 has a valid query7615 returns project repository url7616 queries project based on source_full_path7617RuboCop::Cop::API::Base7618 adds an offense when inheriting from Grape::API7619 adds an offense when inheriting from ::Grape::API7620 adds an offense when inheriting from Grape::API::Instance7621 adds an offense when inheriting from ::Grape::API::Instance7622 does not add an offense when inheriting from BaseAPI7623Every API endpoint7624 feature categories7625 has feature categories7626 recognizes the feature categories7627 has no routes with multiple paths7628 doesn't define or exclude categories on removed actions7629Gitlab::Config::Entry::Simplifiable7630 .strategy7631 defines entry strategies7632 setting strategy by a condition7633 when first strategy should be used7634 attemps to load a first strategy7635 when second strategy should be used7636 attemps to load a second strategy7637 when neither one is a valid strategy7638 instantiates an unknown strategy7639 when a unknown strategy class is not defined7640 raises an error when being initialized7641Gitlab::Checks::ForcePush7642 .force_push?7643 returns false if the repo is empty7644 checks if old rev is an anchestor7645CaseSensitivity7646 .iwhere7647 finds a single instance by a single attribute regardless of case7648 finds multiple instances by a single attribute regardless of case7649 finds instances by multiple attributes7650 finds instances by custom Arel attributes7651 builds a query using LOWER7652Resolvers::UserResolver7653 #resolve7654 generates an ArgumentError when both an ID and username are provided7655 when neither an ID or a username is provided7656 generates an ArgumentError7657 by username7658 returns the correct user7659 by ID7660 returns the correct user7661Gitlab::Lazy7662 when not calling any methods7663 does not call the supplied block7664 when calling a method on the object7665 lazy loads the value returned by the block7666 #respond_to?7667 returns true for a method defined on the wrapped object7668 returns false for a method not defined on the wrapped object7669Resolvers::ReleaseMilestonesResolver7670 #resolve7671 uses offset-pagination7672 includes the release's milestones in the returned OffsetActiveRecordRelationConnection7673Gitlab::Graphql::NegatableArguments7674 #negated7675 defines :not argument7676 defines any arguments passed as block7677 defines all arguments passed as block even if called multiple times7678 allows to specify custom argument name7679admin/application_settings/_eks7680 when eks_secret_access_key is not set7681 renders an empty password field7682 when eks_secret_access_key is set7683 renders an empty password field7684RuboCop::Cop::Migration::MigrationRecord7685 outside of a migration7686 behaves like a disabled cop7687 does not register any offenses7688 in migration7689 in an old migration7690 behaves like a disabled cop7691 does not register any offenses7692 that is recent7693 adds an offense if inheriting from ActiveRecord::Base7694 when migration inhertis from ::ActiveRecord::Base7695 adds an offense7696DiffViewerEntity7697 serializes diff file viewer7698Mutations::SavedReplies::Destroy7699 #resolve7700 when feature is disabled7701 raises Gitlab::Graphql::Errors::ResourceNotAvailable7702 when feature is enabled for current user7703 when service fails to delete a new saved reply7704 raises Gitlab::Graphql::Errors::ResourceNotAvailable7705 when service successfully deletes the saved reply7706 is expected to be empty7707Resolvers::PackageDetailsResolver7708 #resolve7709 is expected to eq #<Packages::Package id: 56, project_id: 1357, created_at: "2022-04-28 09:44:09.368702712 +0000", upda...omposer-package-1", version: "1.0.1", package_type: "composer", creator_id: 2916, status: "default">7710Ci::JobArtifacts::DeleteProjectArtifactsService7711 #execute7712 enqueues a Ci::ExpireProjectBuildArtifactsWorker7713Gitlab::Metrics::Dashboard::Validator::Client7714 #execute7715 with no validation errors7716 returns empty array7717 with validation errors7718 returns array of error objects7719RunnerEntity7720 #as_json7721 contains required fields7722BulkImports::UploadsExportService7723 #execute7724 exports project uploads and avatar7725RuboCop::Cop::Graphql::GIDExpectedType7726 adds an offense when there is no expected_type parameter7727 does not add an offense for calls that have an expected_type parameter7728Banzai::Pipeline::EmailPipeline7729 .filters7730 returns the expected type7731 excludes ImageLazyLoadFilter7732 shows punycode for autolinks7733ErrorTracking::Collector::SentryAuthParser7734 .parse7735 returns correct value for public_key7736 empty headers7737 fails with exception7738 missing sentry_key7739 returns empty value for public_key7740dashboard/projects/_blank_state_admin_welcome.html.haml7741 links to new group path7742Types::Projects::ServiceTypeEnum7743 exposes all the existing project services7744 coerces values correctly7745Gitlab::DefaultBranch7746 main_branch_over_master is enabled7747 returns main7748 main_branch_over_master is disabled7749 returns master7750Database config initializer7751 retains the correct database name for the connection7752 does not overwrite custom pool settings7753Gitlab::Cache7754 #fetch_once7755 fetches from the cache once7756 always returns from the request store7757 .delete7758 calls Rails.cache.delete7759Gitlab::Kubernetes::Kubeconfig::Entry::Cluster7760 #to_h7761 is expected to eq {:cluster=>{:server=>"url"}, :name=>"name"}7762 with a certificate7763 is expected to eq {:cluster=>{:"certificate-authority-data"=>"Y2VydGlmaWNhdGU=", :server=>"url"}, :name=>"name"}7764Banzai::Filter::OutputSafety7765 when given HTML is safe7766 returns safe HTML7767 when given HTML is not safe7768 returns escaped HTML7769DatabaseReflection7770 .reflect7771 returns a Reflection instance7772 memoizes the result7773Create base work item types in development7774 behaves like work item base types importer7775OK7776 creates all base work item types7777BlobViewer::PodspecJson7778 #package_name7779 returns the package name7780Gitlab::Database::ShaAttribute7781 #deserialize7782 converts the binary SHA to a String7783 #serialize7784 converts a SHA String to binary data7785Types::IssueStateEnum7786 is expected to eq "IssueState"7787 behaves like issuable state7788 exposes all the existing issuable states7789Types::DependencyProxy::ManifestType7790 includes dependency proxy manifest fields7791Types::DesignManagement::DesignCollectionType7792 is expected to require graphql authorizations :read_design7793 has the expected fields7794Types::EventableType7795 exposes events field7796Types::Ci::JobArtifactType7797 has the correct fields7798API::Validations::Validators::EmailOrEmailList7799 with valid email addresses7800 does not raise a validation error7801 including any invalid email address7802 raises a validation error7803Metrics::Dashboard::ScheduleAnnotationsPruneWorker7804 #perform7805 schedules annotations prune job with default cut off date7806PipelineBackgroundQueue7807 sets a default object storage queue automatically7808CiPlatformMetricsUpdateCronWorker7809 #perform7810 inserts new platform metrics7811Resolvers::MetadataResolver7812 #resolve7813 returns version and revision7814Banzai::Filter::TaskListFilter7815 adds `<task-button></task-button>` to every list item7816Knapsack report was generated. Preview:7817{7818 "spec/lib/gitlab/import_export/project/tree_restorer_spec.rb": 783.2805152350002,7819 "spec/models/members/project_member_spec.rb": 40.890322993000154,7820 "spec/lib/gitlab/database/rename_reserved_paths_migration/v1/rename_base_spec.rb": 51.73777222300032,7821 "spec/policies/global_policy_spec.rb": 27.442427664000206,7822 "spec/finders/projects_finder_spec.rb": 22.053899982000075,7823 "spec/finders/ci/pipelines_finder_spec.rb": 25.788599272999818,7824 "spec/models/integrations/hangouts_chat_spec.rb": 26.06720207000035,7825 "spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb": 29.235522304999904,7826 "spec/bin/sidekiq_cluster_spec.rb": 26.406162074999884,7827 "spec/services/environments/stop_service_spec.rb": 20.958611067000675,7828 "spec/services/deployments/update_environment_service_spec.rb": 20.84887360399989,7829 "spec/services/search_service_spec.rb": 12.697363145999589,7830 "spec/policies/blob_policy_spec.rb": 12.423831166999662,7831 "spec/lib/error_tracking/sentry_client/issue_spec.rb": 7.252800348999699,7832 "spec/policies/namespace/root_storage_statistics_policy_spec.rb": 17.133123163000164,7833 "spec/presenters/commit_status_presenter_spec.rb": 17.79765149100058,7834 "spec/serializers/diffs_entity_spec.rb": 16.656522070000392,7835 "spec/workers/packages/debian/process_changes_worker_spec.rb": 18.471141639000052,7836 "spec/policies/group_member_policy_spec.rb": 15.804340186000445,7837 "spec/services/clusters/kubernetes/create_or_update_namespace_service_spec.rb": 18.961981721000484,7838 "spec/models/ci/legacy_stage_spec.rb": 12.950806546999956,7839 "spec/services/projects/operations/update_service_spec.rb": 11.354618870000195,7840 "spec/models/concerns/project_api_compatibility_spec.rb": 13.068388728999707,7841 "spec/models/serverless/domain_cluster_spec.rb": 18.351502752999295,7842 "spec/lib/gitlab/auth/ldap/dn_spec.rb": 6.461438950999764,7843 "spec/lib/backup/manager_spec.rb": 10.607934940999257,7844 "spec/graphql/mutations/releases/update_spec.rb": 11.191571145000125,7845 "spec/models/commit_collection_spec.rb": 10.52193663700018,7846 "spec/finders/cluster_ancestors_finder_spec.rb": 15.715884637000272,7847 "spec/services/projects/update_pages_service_spec.rb": 8.426116259000992,7848 "spec/lib/gitlab/database/rename_reserved_paths_migration/v1_spec.rb": 11.034784727999067,7849 "spec/lib/banzai/filter/references/design_reference_filter_spec.rb": 3.5136449790006736,7850 "spec/services/projects/update_remote_mirror_service_spec.rb": 6.981011611000213,7851 "spec/tooling/quality/test_level_spec.rb": 1.9248497810003755,7852 "spec/finders/ci/pipelines_for_merge_request_finder_spec.rb": 9.015701264001109,7853 "spec/lib/banzai/filter/video_link_filter_spec.rb": 6.809713963999457,7854 "spec/lib/gitlab/search_context/builder_spec.rb": 5.337711277999915,7855 "spec/services/packages/npm/create_tag_service_spec.rb": 7.090942142000131,7856 "spec/lib/gitlab/redis/rate_limiting_spec.rb": 1.9763726679993852,7857 "spec/workers/projects/after_import_worker_spec.rb": 5.508664834000228,7858 "spec/lib/gitlab/redis/cache_spec.rb": 1.2021361070001149,7859 "spec/policies/user_policy_spec.rb": 2.0177235749997635,7860 "spec/lib/gitlab/metrics_spec.rb": 1.3372309549995407,7861 "spec/models/ci_platform_metric_spec.rb": 4.047267595999074,7862 "spec/services/clusters/gcp/provision_service_spec.rb": 7.534755365999445,7863 "spec/services/packages/maven/metadata/sync_service_spec.rb": 4.202372075998937,7864 "spec/services/integrations/test/project_service_spec.rb": 4.589454375000059,7865 "spec/models/ci/build_trace_chunks/database_spec.rb": 3.972935054000118,7866 "spec/lib/gitlab/kubernetes/helm/pod_spec.rb": 3.431638385000042,7867 "spec/lib/gitlab/sql/pattern_spec.rb": 2.0365251719995285,7868 "spec/lib/bulk_imports/common/pipelines/uploads_pipeline_spec.rb": 2.970010499999262,7869 "spec/models/design_management/design_collection_spec.rb": 3.9812487029994372,7870 "spec/models/external_pull_request_spec.rb": 4.03742998800044,7871 "spec/lib/gitlab/ci/badge/pipeline/metadata_spec.rb": 3.772228009000173,7872 "spec/lib/event_filter_spec.rb": 2.990298299000642,7873 "spec/services/clusters/build_kubernetes_namespace_service_spec.rb": 6.43267562300025,7874 "spec/models/board_group_recent_visit_spec.rb": 3.4900744309998117,7875 "spec/services/bulk_imports/relation_export_service_spec.rb": 4.8292458779997105,7876 "spec/services/clusters/applications/update_service_spec.rb": 6.815413374000855,7877 "spec/lib/gitlab/database/load_balancing/connection_proxy_spec.rb": 1.2541593019996071,7878 "spec/services/issues/resolve_discussions_spec.rb": 6.110047387999657,7879 "spec/workers/concerns/reenqueuer_spec.rb": 1.3067388889994618,7880 "spec/lib/gitlab/ci/pipeline/chain/validate/abilities_spec.rb": 5.03220377100115,7881 "spec/rack_servers/puma_spec.rb": 6.2443855380006426,7882 "spec/models/ci/unit_test_spec.rb": 2.806764872999338,7883 "spec/lib/gitlab/github_import/importer/pull_request_review_importer_spec.rb": 2.1844216209992737,7884 "spec/services/merge_requests/resolved_discussion_notification_service_spec.rb": 5.020153232000666,7885 "spec/services/projects/update_statistics_service_spec.rb": 1.4776114760006749,7886 "spec/workers/merge_requests/create_pipeline_worker_spec.rb": 4.628922121999494,7887 "spec/lib/gitlab/zentao/client_spec.rb": 4.429614647999188,7888 "spec/db/production/settings_spec.rb": 3.547253966000426,7889 "spec/lib/gitlab/database/reindexing_spec.rb": 1.288868691000971,7890 "spec/lib/gitlab/database/query_analyzer_spec.rb": 0.538047137999456,7891 "spec/lib/banzai/filter/math_filter_spec.rb": 0.8011515790003614,7892 "spec/services/clusters/applications/destroy_service_spec.rb": 4.813905308999892,7893 "spec/lib/gitlab/ci/jwt_spec.rb": 2.2856656029998703,7894 "spec/services/incident_management/pager_duty/create_incident_issue_service_spec.rb": 2.737032539000211,7895 "spec/lib/gitlab/legacy_github_import/branch_formatter_spec.rb": 4.0626557460000186,7896 "spec/models/merge_request/metrics_spec.rb": 4.382608772000822,7897 "spec/services/milestones/issues_count_service_spec.rb": 3.0226561759991455,7898 "spec/services/ci/create_pipeline_service/parameter_content_spec.rb": 1.571227338999961,7899 "spec/lib/gitlab/database/query_analyzers/restrict_allowed_schemas_spec.rb": 0.9643154650002543,7900 "spec/lib/gitlab/error_tracking/context_payload_generator_spec.rb": 1.1737370999999257,7901 "spec/finders/clusters_finder_spec.rb": 4.069981425998776,7902 "spec/uploaders/gitlab_uploader_spec.rb": 0.797138048999841,7903 "spec/finders/packages/helm/package_files_finder_spec.rb": 1.2080635970014555,7904 "spec/helpers/snippets_helper_spec.rb": 1.3109753389999241,7905 "spec/lib/gitlab/auth/result_spec.rb": 0.5865508739989309,7906 "spec/models/concerns/schedulable_spec.rb": 4.064564276000965,7907 "spec/serializers/deployment_cluster_entity_spec.rb": 4.091529434999757,7908 "spec/lib/gitlab/kubernetes/helm/v3/install_command_spec.rb": 1.1138022039995121,7909 "spec/lib/banzai/reference_parser/milestone_parser_spec.rb": 4.046645618000184,7910 "spec/services/ci/prepare_build_service_spec.rb": 2.1594706529995165,7911 "spec/presenters/web_hook_log_presenter_spec.rb": 2.035553532999984,7912 "spec/lib/gitlab/sanitizers/exception_message_spec.rb": 0.3809772399999929,7913 "spec/models/project_custom_attribute_spec.rb": 0.678909157999442,7914 "spec/helpers/hooks_helper_spec.rb": 1.9910729860002903,7915 "spec/helpers/notifications_helper_spec.rb": 1.3118320690009568,7916 "spec/lib/gitlab/kubernetes/helm/v3/base_command_spec.rb": 0.6160085219999019,7917 "spec/tooling/rspec_flaky/flaky_example_spec.rb": 0.5405094590005319,7918 "spec/services/groups/group_links/destroy_service_spec.rb": 1.9776789679999638,7919 "spec/services/lfs/push_service_spec.rb": 0.8836463919997186,7920 "spec/lib/gitlab/ci/status/build/action_spec.rb": 1.121850984000048,7921 "spec/finders/freeze_periods_finder_spec.rb": 3.121417979000398,7922 "spec/presenters/commit_presenter_spec.rb": 3.2296022699993046,7923 "spec/tasks/cache/clear/redis_spec.rb": 3.1936860740006523,7924 "spec/scripts/changed-feature-flags_spec.rb": 0.23349321199930273,7925 "spec/models/concerns/delete_with_limit_spec.rb": 2.008333474999745,7926 "spec/rubocop/cop/rspec/be_success_matcher_spec.rb": 0.40943083800084423,7927 "spec/lib/sidebars/projects/menus/zentao_menu_spec.rb": 2.9779265399993164,7928 "spec/lib/gitlab/serverless/service_spec.rb": 2.9550842820008256,7929 "spec/services/ci/build_report_result_service_spec.rb": 2.817353442998865,7930 "spec/lib/gitlab/usage/metric_spec.rb": 2.7878676050004287,7931 "spec/tasks/gitlab/background_migrations_rake_spec.rb": 2.4744618389995594,7932 "spec/lib/sidebars/projects/panel_spec.rb": 2.026540863998889,7933 "spec/rubocop/cop/scalability/cron_worker_context_spec.rb": 0.314479446000405,7934 "spec/lib/gitlab/ci/config/entry/services_spec.rb": 0.44501189600123325,7935 "spec/views/shared/wikis/_sidebar.html.haml_spec.rb": 1.8979181030008476,7936 "spec/lib/gitlab/ci/status/skipped_spec.rb": 0.31787641599839844,7937 "spec/lib/gitlab/sql/recursive_cte_spec.rb": 0.3686343810004473,7938 "spec/policies/ci/pipeline_schedule_policy_spec.rb": 1.9894717770002899,7939 "spec/validators/nested_attributes_duplicates_validator_spec.rb": 0.5470684280007845,7940 "spec/workers/hashed_storage/migrator_worker_spec.rb": 1.3602294550000806,7941 "spec/helpers/numbers_helper_spec.rb": 0.3517552630000864,7942 "spec/services/base_count_service_spec.rb": 0.444188806000966,7943 "spec/views/shared/milestones/_issuable.html.haml_spec.rb": 1.153955550998944,7944 "spec/services/update_merge_request_metrics_service_spec.rb": 2.4528068599993276,7945 "spec/lib/sidebars/projects/menus/learn_gitlab_menu_spec.rb": 0.49698552199879487,7946 "spec/services/ci/generate_terraform_reports_service_spec.rb": 1.1534114009991754,7947 "spec/rubocop/cop/gitlab/event_store_subscriber_spec.rb": 0.3344721239991486,7948 "spec/workers/propagate_integration_inherit_descendant_worker_spec.rb": 0.7686478510004235,7949 "spec/presenters/packages/nuget/search_results_presenter_spec.rb": 0.6736372279992793,7950 "spec/lib/sidebars/panel_spec.rb": 0.5089322399999219,7951 "spec/services/chat_names/authorize_user_service_spec.rb": 1.4619972170003166,7952 "spec/views/registrations/welcome/show.html.haml_spec.rb": 0.6525402400002349,7953 "spec/workers/every_sidekiq_worker_spec.rb": 1.324864117999823,7954 "spec/workers/cluster_wait_for_app_update_worker_spec.rb": 1.1948900780007534,7955 "spec/lib/gitlab/ci/config/entry/product/variables_spec.rb": 0.16496139700029744,7956 "spec/lib/json_web_token/token_spec.rb": 0.18457949599905987,7957 "spec/views/projects/settings/ci_cd/_autodevops_form.html.haml_spec.rb": 1.501046014000167,7958 "spec/services/ci/disable_user_pipeline_schedules_service_spec.rb": 0.635901940999247,7959 "spec/lib/gitlab/github_import/representation/diff_notes/suggestion_formatter_spec.rb": 0.2608275599995977,7960 "spec/lib/gitlab/database/count/exact_count_strategy_spec.rb": 2.5392938240001968,7961 "spec/lib/gitlab/database/each_database_spec.rb": 0.5605918959990959,7962 "spec/models/pages/virtual_domain_spec.rb": 0.3313529950009979,7963 "spec/services/pages/delete_service_spec.rb": 1.9801873569995223,7964 "spec/services/dependency_proxy/find_cached_manifest_service_spec.rb": 0.639856771000268,7965 "spec/lib/gitlab/import_export/repo_saver_spec.rb": 1.517123203000665,7966 "spec/lib/gitlab/pagination/cursor_based_keyset_spec.rb": 0.1726703570002428,7967 "spec/finders/bulk_imports/entities_finder_spec.rb": 0.6125272829995083,7968 "spec/services/projects/container_repository/destroy_service_spec.rb": 0.7349310429999605,7969 "spec/lib/atlassian/jira_connect/serializers/repository_entity_spec.rb": 1.7256471370001236,7970 "spec/graphql/types/metadata_type_spec.rb": 0.11949950000052922,7971 "spec/services/ci/create_pipeline_service/creation_errors_and_warnings_spec.rb": 1.287163580998822,7972 "spec/lib/gitlab/markdown_cache/redis/store_spec.rb": 0.2094239739999466,7973 "spec/lib/gitlab/middleware/query_analyzer_spec.rb": 0.17616548600017268,7974 "spec/graphql/types/tree/tree_type_spec.rb": 0.11595995100105938,7975 "spec/graphql/types/packages/helm/maintainer_type_spec.rb": 0.24190757100041083,7976 "spec/services/packages/rubygems/create_dependencies_service_spec.rb": 1.003796152999712,7977 "spec/rubocop/cop/active_model_errors_direct_manipulation_spec.rb": 0.2952731369987305,7978 "spec/lib/gitlab/console_spec.rb": 0.17959265599893115,7979 "spec/tooling/rspec_flaky/report_spec.rb": 0.459176935000869,7980 "spec/graphql/resolvers/ci/test_report_summary_resolver_spec.rb": 1.7770188029990095,7981 "spec/services/discussions/capture_diff_note_positions_service_spec.rb": 1.4970596639996074,7982 "spec/lib/gitlab/metrics/prometheus_spec.rb": 1.1686196800001198,7983 "spec/views/projects/clusters/clusters/gcp/_form.html.haml_spec.rb": 1.263221192999481,7984 "spec/graphql/types/container_repository_cleanup_status_enum_spec.rb": 0.07749690399941755,7985 "spec/serializers/ci/trigger_serializer_spec.rb": 0.14232829899992794,7986 "spec/models/concerns/token_authenticatable_strategies/digest_spec.rb": 0.07419384399872797,7987 "spec/views/projects/hooks/index.html.haml_spec.rb": 1.054815088999021,7988 "spec/lib/gitlab/file_markdown_link_builder_spec.rb": 0.46442569400096545,7989 "spec/models/project_export_job_spec.rb": 1.3344168069997977,7990 "spec/config/application_spec.rb": 0.20877229399957287,7991 "spec/graphql/resolvers/repository_branch_names_resolver_spec.rb": 1.2205951270007063,7992 "spec/lib/banzai/filter/inline_diff_filter_spec.rb": 0.526715840000179,7993 "spec/lib/gitlab/usage_data/topology_spec.rb": 0.4884031120000145,7994 "spec/workers/authorized_project_update/user_refresh_from_replica_worker_spec.rb": 0.8575633340005879,7995 "spec/services/packages/mark_package_for_destruction_service_spec.rb": 0.9030978499995399,7996 "spec/lib/gitlab/database/reindexing/reindex_action_spec.rb": 0.41581991800012474,7997 "spec/serializers/issue_serializer_spec.rb": 0.5718863559995953,7998 "spec/services/ci/create_pipeline_service/artifacts_spec.rb": 0.8917428109998582,7999 "spec/lib/gitlab/usage_data_counters/web_ide_counter_spec.rb": 0.33752901399930124,8000 "spec/lib/gitlab/ci/templates/kaniko_gitlab_ci_yaml_spec.rb": 0.7577062010004738,8001 "spec/services/ci/create_pipeline_service/pre_post_stages_spec.rb": 1.0972171849989536,8002 "spec/rubocop/cop/scalability/bulk_perform_with_context_spec.rb": 0.29163882700049726,8003 "spec/lib/gitlab/metrics/dashboard/cache_spec.rb": 0.30940037599975767,8004 "spec/services/work_items/build_service_spec.rb": 0.5771641949995683,8005 "spec/models/import_failure_spec.rb": 0.6793465779992403,8006 "spec/models/user_mentions/issue_user_mention_spec.rb": 0.32640764500138175,8007 "spec/services/spam/akismet_mark_as_spam_service_spec.rb": 0.8470191239994165,8008 "spec/finders/packages/package_finder_spec.rb": 0.7319734539996716,8009 "spec/lib/gitlab/usage/metrics/instrumentations/count_users_associating_milestones_to_releases_metric_spec.rb": 0.9838745039996866,8010 "spec/lib/gitlab/email/service_desk_receiver_spec.rb": 0.29886162699949637,8011 "spec/models/user_mentions/snippet_user_mention_spec.rb": 0.35832183200000145,8012 "spec/workers/delete_user_worker_spec.rb": 0.7074382749997312,8013 "spec/lib/gitlab/graphql/known_operations_spec.rb": 0.4379777270005434,8014 "spec/lib/gitlab/import_export/decompressed_archive_size_validator_spec.rb": 0.3802701610002259,8015 "spec/services/merge_requests/mergeability/check_draft_status_service_spec.rb": 0.1790190360006818,8016 "spec/lib/constraints/jira_encoded_url_constrainer_spec.rb": 0.18981867500042426,8017 "spec/lib/gitlab/graphql/pagination/keyset/conditions/null_condition_spec.rb": 0.14614066899957834,8018 "spec/lib/bulk_imports/projects/graphql/get_repository_query_spec.rb": 0.1742369969997526,8019 "spec/rubocop/cop/api/base_spec.rb": 0.21373910299917043,8020 "spec/lib/api/every_api_endpoint_spec.rb": 1.5118053530004545,8021 "spec/lib/gitlab/config/entry/simplifiable_spec.rb": 0.2531494800005021,8022 "spec/lib/gitlab/checks/force_push_spec.rb": 0.4307690069999808,8023 "spec/models/concerns/case_sensitivity_spec.rb": 0.4038440479998826,8024 "spec/graphql/resolvers/user_resolver_spec.rb": 0.3547221429998899,8025 "spec/lib/gitlab/lazy_spec.rb": 0.2273029520001728,8026 "spec/graphql/resolvers/release_milestones_resolver_spec.rb": 0.983534924000196,8027 "spec/lib/gitlab/graphql/negatable_arguments_spec.rb": 0.26659150999876147,8028 "spec/views/admin/application_settings/_eks.html.haml_spec.rb": 0.3455933429995639,8029 "spec/rubocop/cop/migration/migration_record_spec.rb": 0.23425120200045058,8030 "spec/serializers/diff_viewer_entity_spec.rb": 0.6499262799989083,8031 "spec/graphql/mutations/saved_replies/destroy_spec.rb": 0.19666514500022458,8032 "spec/graphql/resolvers/package_details_resolver_spec.rb": 0.29909940600009577,8033 "spec/services/ci/job_artifacts/delete_project_artifacts_service_spec.rb": 0.2372116910009936,8034 "spec/lib/gitlab/metrics/dashboard/validator/client_spec.rb": 0.10300747200017213,8035 "spec/serializers/runner_entity_spec.rb": 0.46157224499984295,8036 "spec/services/bulk_imports/uploads_export_service_spec.rb": 0.30876556699877256,8037 "spec/rubocop/cop/graphql/gid_expected_type_spec.rb": 0.07348657500006084,8038 "spec/lib/banzai/pipeline/email_pipeline_spec.rb": 0.10860529099954874,8039 "spec/lib/error_tracking/collector/sentry_auth_parser_spec.rb": 0.1202587699990545,8040 "spec/views/dashboard/projects/_blank_state_admin_welcome.haml_spec.rb": 0.28742817799866316,8041 "spec/graphql/types/projects/service_type_enum_spec.rb": 0.10861874100010027,8042 "spec/lib/gitlab/default_branch_spec.rb": 0.10462124199875689,8043 "spec/initializers/database_config_spec.rb": 0.2160425040001428,8044 "spec/lib/gitlab/cache_spec.rb": 0.10897049100094591,8045 "spec/lib/gitlab/kubernetes/kubeconfig/entry/cluster_spec.rb": 0.07270896500085655,8046 "spec/lib/banzai/filter/output_safety_spec.rb": 0.10883942100008426,8047 "spec/models/concerns/database_reflection_spec.rb": 0.07890637399941625,8048 "spec/db/development/create_base_work_item_types_spec.rb": 0.0996157019999373,8049 "spec/models/blob_viewer/podspec_json_spec.rb": 0.11552019199916685,8050 "spec/lib/gitlab/database/sha_attribute_spec.rb": 0.24264284099990618,8051 "spec/graphql/types/issue_state_enum_spec.rb": 0.18895504499960225,8052 "spec/graphql/types/dependency_proxy/manifest_type_spec.rb": 0.1489377189991501,8053 "spec/graphql/types/design_management/design_collection_type_spec.rb": 0.1435522089996084,8054 "spec/graphql/types/eventable_type_spec.rb": 0.07769536399973731,8055 "spec/graphql/types/ci/job_artifact_type_spec.rb": 0.20367172500118613,8056 "spec/lib/api/validations/validators/email_or_email_list_spec.rb": 0.1497765080002864,8057 "spec/workers/metrics/dashboard/schedule_annotations_prune_worker_spec.rb": 0.18206775600083347,8058 "spec/workers/concerns/pipeline_background_queue_spec.rb": 0.15452012800051307,8059 "spec/workers/ci_platform_metrics_update_cron_worker_spec.rb": 0.0994030420006311,8060 "spec/graphql/resolvers/metadata_resolver_spec.rb": 0.13914531000045827,8061 "spec/lib/banzai/filter/task_list_filter_spec.rb": 0.124721809999755358062}8063Knapsack global time execution for tests: 27m 51s8064Pending: (Failures listed here are expected and do not affect your suite's status)8065 1) Gitlab::Database::Reindexing.cleanup_leftovers! drops both leftover indexes8066 # around hook at ./spec/support/flaky_tests.rb:21 did not execute the example8067 # ./spec/lib/gitlab/database/reindexing_spec.rb:2118068Finished in 27 minutes 56 seconds (files took 1 minute 28.84 seconds to load)80693712 examples, 0 failures, 1 pending8070RSpec exited with 0.8071No examples to retry, congrats!8073Not uploading cache ruby-gems-bullseye-9-protected due to policy8074Not uploading cache gitaly-ruby-gems-bullseye-9-protected due to policy8076Uploading artifacts...8077coverage/: found 5 matching files and directories 8078crystalball/: found 2 matching files and directories 8079WARNING: deprecations/: no matching files 8080knapsack/: found 3 matching files and directories 8081rspec/: found 9 matching files and directories 8082WARNING: tmp/capybara/: no matching files 8083log/*.log: found 17 matching files and directories 8084WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/2388875550/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com8085WARNING: Retrying... context=artifacts-uploader error=request redirected8086Uploading artifacts as "archive" to coordinator... 201 Created id=2388875550 responseStatus=201 Created token=7wSWTuy88087Uploading artifacts...8088rspec/junit_rspec.xml: found 1 matching files and directories 8089WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/2388875550/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com8090WARNING: Retrying... context=artifacts-uploader error=request redirected8091Uploading artifacts as "junit" to coordinator... 201 Created id=2388875550 responseStatus=201 Created token=7wSWTuy88093Job succeeded