Running with gitlab-runner 16.9.1 (782c6ecb)
  on green-2.private.runners-manager.gitlab.com/gitlab.com/gitlab-org GaSD-S1F, system ID: s_5651e5b5643b
  feature flags: FF_NETWORK_PER_BUILD:true, FF_USE_IMPROVED_URL_MASKING:true
section_start:1711452048:resolve_secrets
Resolving secrets
section_end:1711452048:resolve_secrets
section_start:1711452048:prepare_executor
Preparing the "docker+machine" executor
Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bookworm-ruby-3.1.patched-golang-1.20-rust-1.73-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-120-yarn-1.22-graphicsmagick-1.3.36 ...
Starting service registry.gitlab.com/gitlab-org/gitlab-build-images:postgres-14-pgvector-0.4.1 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:postgres-14-pgvector-0.4.1 ...
Using docker image sha256:82f132c22567f8ce17cc132c14b2f9aa3eaf9bb5424d91c2d966912433f0257d for registry.gitlab.com/gitlab-org/gitlab-build-images:postgres-14-pgvector-0.4.1 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:c55e1364ee4327b244a9cfa1750f19feea14fc774eaf792b725967d146eb45f5 ...
WARNING: Service registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 is already created. Ignoring.
WARNING: Service registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 is already created. Ignoring.
Starting service registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 ...
Using docker image sha256:5c5ba5b83d6c60cb0b225bd670b7a43be8c238cc72347d24af57e5027c3648f3 for registry.gitlab.com/gitlab-org/gitlab-build-images:redis-cluster-6.2.12 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:46aceab84c42d0e819c8e7940f2f98ce9e184785cd7b22d95872024a35f52407 ...
Starting service redis:6.2-alpine ...
Pulling docker image redis:6.2-alpine ...
Using docker image sha256:57763d55554967cf0a9b05258512282482807d361c68b10fd9599ac9732bfb04 for redis:6.2-alpine with digest redis@sha256:3fcb624d83a9c478357f16dc173c58ded325ccc5fd2a4375f3916c04cc579f70 ...
Waiting for services to be up and running (timeout 30 seconds)...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bookworm-ruby-3.1.patched-golang-1.20-rust-1.73-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-120-yarn-1.22-graphicsmagick-1.3.36 ...
Using docker image sha256:4d97a6e6b48a500f28599f739761ccb23dc0b775b23fe71357e1f48df9074e52 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bookworm-ruby-3.1.patched-golang-1.20-rust-1.73-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-120-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bookworm-ruby-3.1.patched-golang-1.20-rust-1.73-node-18.17-postgresql-14@sha256:56b23cca550b55e86db3c2471a1223d2b3a97ddff9a4bf6bd246dcef3ec64284 ...
section_end:1711452058:prepare_executor
section_start:1711452058:prepare_script
Preparing environment
Running on runner-gasd-s1f-project-278964-concurrent-0 via runner-gasd-s1f-private-1711441388-4957d115...
section_end:1711452059:prepare_script
section_start:1711452059:get_sources
Getting source from Git repository
Skipping Git repository setup
Skipping Git checkout
Skipping Git submodules setup
section_end:1711452059:get_sources
section_start:1711452059:restore_cache
Restoring cache
Checking cache for ruby-gems-debian-bookworm-ruby-3.1-17...
cache.zip is up to date                            
Successfully extracted cache
section_end:1711452075:restore_cache
section_start:1711452075:download_artifacts
Downloading artifacts
Downloading artifacts for clone-gitlab-repo (6478668239)...
Downloading artifacts from coordinator... ok        host=storage.googleapis.com id=6478668239 responseStatus=200 OK token=glcbt-65
WARNING: Part of .git directory is on the list of files to extract 
WARNING: This may introduce unexpected problems    
Downloading artifacts for compile-test-assets (6478668259)...
Downloading artifacts from coordinator... ok        host=storage.googleapis.com id=6478668259 responseStatus=200 OK token=glcbt-65
Downloading artifacts for retrieve-tests-metadata (6478668275)...
Downloading artifacts from coordinator... ok        host=storage.googleapis.com id=6478668275 responseStatus=200 OK token=glcbt-65
Downloading artifacts for setup-test-env (6478668265)...
Downloading artifacts from coordinator... ok        host=storage.googleapis.com id=6478668265 responseStatus=200 OK token=glcbt-65
section_end:1711452110:download_artifacts
section_start:1711452110:step_script
Executing "step_script" stage of the job script
Using docker image sha256:4d97a6e6b48a500f28599f739761ccb23dc0b775b23fe71357e1f48df9074e52 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bookworm-ruby-3.1.patched-golang-1.20-rust-1.73-node-18.17-postgresql-14:rubygems-3.4-git-2.36-lfs-2.9-chrome-120-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bookworm-ruby-3.1.patched-golang-1.20-rust-1.73-node-18.17-postgresql-14@sha256:56b23cca550b55e86db3c2471a1223d2b3a97ddff9a4bf6bd246dcef3ec64284 ...
$ echo $FOSS_ONLY

$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb
$ export GOPATH=$CI_PROJECT_DIR/.go
$ mkdir -p $GOPATH
$ source scripts/utils.sh
$ source scripts/prepare_build.sh
section_start:1711452111:bundle-install[collapsed=true]
Installing gems
3.4.4
Bundler version 2.4.4
Successfully installed bundler-2.4.11
1 gem installed
production:development
Settings are listed in order of priority. The top value will be used.
clean
Set for your local app (/builds/gitlab-org/gitlab/.bundle/config): true

frozen
Set via BUNDLE_FROZEN: true

install_flags
Set via BUNDLE_INSTALL_FLAGS: "--jobs=$(nproc) --retry=3"

path
Set for your local app (/builds/gitlab-org/gitlab/.bundle/config): "/builds/gitlab-org/gitlab/vendor"

without
Set via BUNDLE_WITHOUT: [:production, :development]

$ bundle install --jobs=$(nproc) --retry=3 
Don't run Bundler as root. Installing your bundle as root will break this
application for all non-root users on this machine.
Patching bundler with bundler-checksum...
Using rake 13.0.6
Using rexml 3.2.6
Using CFPropertyList 3.0.5
Using RedCloth 4.3.3
Using faraday-em_http 1.0.0
Using faraday-em_synchrony 1.0.0
Using faraday-excon 1.1.0
Using faraday-httpclient 1.0.1
Using multipart-post 2.2.3
Using faraday-multipart 1.0.4
Using faraday-net_http 1.0.1
Using faraday-net_http_persistent 1.2.0
Using faraday-patron 1.0.0
Using faraday-rack 1.0.0
Using faraday-retry 1.0.3
Using ruby2_keywords 0.0.5
Using faraday 1.10.0
Using acme-client 2.0.11
Using concurrent-ruby 1.2.2
Using i18n 1.14.1
Using minitest 5.11.3
Using tzinfo 2.0.6
Using activesupport 7.0.8.1
Using builder 3.2.4
Using erubi 1.12.0
Using racc 1.6.2
Using nokogiri 1.16.0 (x86_64-linux)
Using rails-dom-testing 2.0.3
Using crass 1.0.6
Using loofah 2.22.0
Using rails-html-sanitizer 1.6.0
Using actionview 7.0.8.1
Using rack 2.2.8.1
Using rack-test 2.1.0
Using actionpack 7.0.8.1
Using nio4r 2.7.0
Using websocket-extensions 0.1.5
Using websocket-driver 0.7.6
Using actioncable 7.0.8.1
Using globalid 1.1.0
Using activejob 7.0.8.1
Using activemodel 7.0.8.1
Using activerecord 7.0.8.1
Using marcel 1.0.2
Using mini_mime 1.1.2
Using activestorage 7.0.8.1
Using date 3.3.3
Using timeout 0.3.2
Using net-protocol 0.1.3
Using net-imap 0.3.4
Using net-pop 0.1.2
Using net-smtp 0.3.3
Using mail 2.8.1
Using actionmailbox 7.0.8.1
Using actionmailer 7.0.8.1
Using actiontext 7.0.8.1
Using pg 1.5.6
Using activerecord-explain-analyze 0.1.0
Using activerecord-gitlab 0.2.0 from source at `gems/activerecord-gitlab`
Using acts-as-taggable-on 10.0.0
Using public_suffix 5.0.0
Using addressable 2.8.1
Using aes_key_wrap 1.1.0
Using akismet 3.0.0
Using http-accept 1.7.0
Using unf_ext 0.0.8.2
Using unf 0.1.4
Using domain_name 0.5.20190701
Using http-cookie 1.0.5
Using mime-types-data 3.2023.1003
Using mime-types 3.5.1
Using netrc 0.11.0
Using rest-client 2.1.0
Using aliyun-sdk 0.8.0
Using sexp_processor 4.17.1
Using ruby_parser 3.21.0
Using protocol 2.0.0
Using mize 0.4.1
Using sync 0.5.0
Using tins 1.31.1
Using amatch 0.4.1
Using android_key_attestation 0.3.0
Using graphql 2.2.5
Using apollo_upload_server 2.1.5
Using jwt 2.5.0
Using app_store_connect 0.29.0
Using arr-pm 0.0.12
Using asciidoctor 2.0.18
Using asciidoctor-include-ext 0.4.0
Using asciidoctor-kroki 0.8.0
Using asciidoctor-plantuml 0.0.16
Using ast 2.4.2
Using atlassian-jwt 0.2.1
Using encryptor 3.0.0
Using attr_encrypted 3.2.4 from source at `vendor/gems/attr_encrypted`
Using attr_required 1.0.1
Using awesome_print 1.9.2
Using awrence 1.2.1
Using aws-eventstream 1.3.0
Using aws-partitions 1.877.0
Using aws-sigv4 1.8.0
Using jmespath 1.6.2
Using aws-sdk-core 3.191.3
Using aws-sdk-cloudformation 1.41.0
Using aws-sdk-kms 1.76.0
Using aws-sdk-s3 1.144.0
Using dumb_delegator 1.0.0
Using thread_safe 0.3.6
Using descendants_tracker 0.0.4
Using ice_nine 0.11.2
Using axiom-types 0.1.1
Using coercible 1.0.0
Using virtus 2.0.0
Using axe-core-api 4.8.0
Using axe-core-rspec 4.8.2
Using faraday_middleware 1.2.0
Using connection_pool 2.4.1
Using net-http-persistent 4.0.1
Using azure-storage-common 2.0.4
Using azure-storage-blob 2.0.3
Using babosa 2.0.0
Using base32 0.3.2
Using base64 0.2.0
Using batch-loader 2.0.1
Using bcrypt 3.1.18
Using benchmark-ips 2.11.0
Using benchmark-malloc 0.2.0
Using memory_profiler 1.0.1
Using benchmark-memory 0.2.0
Using benchmark-perf 0.6.0
Using benchmark-trend 0.4.0
Using bindata 2.4.11
Using debug_inspector 1.1.0
Using binding_of_caller 1.0.0
Using msgpack 1.5.4
Using bootsnap 1.18.3
Using browser 5.3.1
Using uniform_notifier 1.16.0
Using bullet 7.1.2
Using bundler 2.4.11
Using thor 1.3.1
Using bundler-audit 0.9.1
Using bundler-checksum 0.1.0 from source at `vendor/gems/bundler-checksum` and installing its executables
Using byebug 11.1.3
Using matrix 0.4.2
Using regexp_parser 2.6.0
Using xpath 3.2.0
Using capybara 3.40.0
Using launchy 2.5.0
Using capybara-screenshot 1.0.26
Using ssrf_filter 1.0.8
Using carrierwave 1.3.4
Using cbor 0.5.9.8
Using character_set 1.8.0
Using charlock_holmes 0.7.7
Using chef-utils 18.3.0
Using fuzzyurl 0.9.0
Using tomlrb 1.3.0
Using mixlib-config 3.0.27
Using mixlib-shellout 3.2.7
Using chef-config 18.3.0
Using chunky_png 1.4.0
Using circuitbox 2.0.0
Using citrus 3.0.2
Using claide 1.1.0
Using colored2 3.1.2
Using cork 0.3.0
Using nap 1.1.0
Using open4 1.3.4
Using claide-plugins 0.9.2
Using json 2.6.3
Using click_house-client 0.1.0 from source at `gems/click_house-client`
Using google-protobuf 3.25.3 (x86_64-linux)
Using googleapis-common-protos-types 1.5.0
Using grpc 1.60.0 (x86_64-linux)
Using googleapis-common-protos 1.4.0
Using multi_json 1.14.1
Using os 1.1.4
Using signet 0.18.0
Using googleauth 1.8.1
Using gapic-common 0.20.0
Using google-cloud-errors 1.3.0
Using google-cloud-profiler-v2 0.4.0
Using stackprof 0.2.25
Using cloud_profiler_agent 0.0.1.pre from source at `vendor/gems/cloud_profiler_agent`
Using coderay 1.1.3
Using commonmarker 0.23.10
Using openssl 3.1.0
Using openssl-signature_algorithm 1.3.0
Using cose 1.3.0
Using i18n_data 0.13.1
Using sixarm_ruby_unaccent 1.2.0
Using countries 4.0.1
Using safe_yaml 1.0.4
Using crack 0.4.3
Using creole 0.5.0
Using rchardet 1.8.0
Using git 1.18.0
Using crystalball 0.7.0
Using css_parser 1.14.0
Using method_source 1.0.0
Using zeitwerk 2.6.7
Using railties 7.0.8.1
Using cssbundling-rails 1.4.0
Using csv_builder 0.1.0 from source at `gems/csv_builder`
Using cvss-suite 3.0.1
Using faraday-http-cache 2.5.0
Using kramdown 2.3.2
Using kramdown-parser-gfm 1.1.0
Using no_proxy_fix 0.1.2
Using sawyer 0.9.2
Using octokit 8.0.0
Using unicode-display_width 2.4.2
Using terminal-table 3.0.2
Using danger 9.4.2
Using multi_xml 0.6.0
Using httparty 0.21.0
Using gitlab 4.19.0
Using danger-gitlab 8.0.0
Using dartsass 1.49.8
Using database_cleaner-core 2.0.1
Using database_cleaner-active_record 2.1.0
Using dead_end 3.1.1
Using deb_version 1.0.2
Using html-pipeline 2.14.3
Using deckar01-task_list 2.3.4
Using declarative 0.0.20
Using declarative_policy 1.1.0
Using deprecation_toolkit 1.5.1
Using ffi 1.15.5
Using get_process_mem 0.2.7
Using heapy 0.2.0
Using mini_histogram 0.3.1
Using ruby-statistics 3.0.0
Using derailed_benchmarks 2.1.2
Using devfile 0.0.25.pre.alpha1 (x86_64-linux)
Using device_detector 1.0.0
Using orm_adapter 0.5.0
Using responders 3.0.1
Using warden 1.2.9
Using devise 4.9.3
Using rotp 6.3.0
Using devise-two-factor 4.1.1
Using devise-pbkdf2-encryptable 0.0.0 from source at `vendor/gems/devise-pbkdf2-encryptable`
Using diff-lcs 1.5.0
Using diff_match_patch 0.1.0 from source at `vendor/gems/diff_match_patch`
Using diffy 3.4.2
Using digest-crc 0.6.5
Using discordrb-webhooks 3.5.0
Using docile 1.4.0
Using doorkeeper 5.6.6
Using doorkeeper-openid_connect 1.8.7
Using dotenv 2.7.6
Using dry-cli 1.0.0
Using dry-core 1.0.1
Using dry-inflector 1.0.0
Using dry-logic 1.5.0
Using dry-types 1.7.1
Using duo_api 1.3.0
Using ecma-re-validator 0.3.0
Using ed25519 1.3.0
Using elasticsearch-api 7.13.3
Using elasticsearch-transport 7.13.3
Using elasticsearch 7.13.3
Using hashie 5.0.0
Using elasticsearch-model 7.2.0
Using elasticsearch-rails 7.2.1
Using email_reply_trimmer 0.1.6
Using htmlentities 4.3.4
Using email_spec 2.2.0
Using ethon 0.16.0
Using typhoeus 1.4.0
Using error_tracking_open_api 1.0.0 from source at `gems/error_tracking_open_api`
Using escape_utils 1.3.0
Using et-orbi 1.2.7
Using excon 0.99.0
Using execjs 2.8.1
Using parslet 1.8.2
Using expgen 0.1.1
Using expression_parser 0.9.0
Using extended-markdown-filter 0.7.0
Using factory_bot 6.4.5
Using factory_bot_rails 6.4.3
Using faraday_middleware-aws-sigv4 0.3.0
Using fast_blank 1.0.1
Using fast_gettext 2.3.0
Using ffaker 2.23.0
Using ffi-compiler 1.0.1
Using libyajl2 2.1.0
Using ffi-yajl 2.6.0
Using find_a_port 1.0.1
Using flipper 0.26.2
Using flipper-active_record 0.26.2
Using flipper-active_support_cache_store 0.26.2
Using formatador 0.2.5
Using fog-core 2.1.0
Using fog-json 1.2.0
Using ipaddress 0.8.3
Using xml-simple 1.1.9
Using fog-aliyun 0.4.0
Using fog-xml 0.1.3
Using fog-aws 3.18.0
Using httpclient 2.8.3
Using trailblazer-option 0.1.2
Using uber 0.1.0
Using representable 3.2.0
Using retriable 3.1.2
Using webrick 1.8.1
Using google-apis-core 0.11.2
Using google-apis-compute_v1 0.57.0
Using google-apis-dns_v1 0.28.0
Using google-apis-iamcredentials_v1 0.15.0
Using google-apis-monitoring_v3 0.37.0
Using google-apis-pubsub_v1 0.30.0
Using google-apis-sqladmin_v1beta4 0.41.0
Using google-apis-storage_v1 0.29.0
Using google-cloud-env 1.6.0
Using fog-google 1.19.0
Using fog-local 0.8.0
Using forwardable 1.3.3
Using raabro 1.4.0
Using fugit 1.8.1
Using rspec-support 3.12.0
Using rspec-core 3.12.2
Using ruby-progressbar 1.11.0
Using fuubar 2.2.0
Using gemoji 3.0.1
Using locale 2.1.3
Using singleton 0.1.1
Using prime 0.1.2
Using text 1.3.1
Using gettext 3.4.9
Using gettext_i18n_rails 1.12.0
Using gitaly 16.10.0.pre.rc1
Using gitlab-backup-cli 0.0.1 from source at `gems/gitlab-backup-cli`
Using numerizer 0.2.0
Using gitlab-chronic 0.10.5
Using gitlab-dangerfiles 4.7.0
Using request_store 1.5.1
Using gitlab-experiment 0.9.1
Using gitlab-fog-azure-rm 1.9.1
Using rb_sys 0.9.86
Using gitlab-glfm-markdown 0.0.13 (x86_64-linux)
Using language_server-protocol 3.17.0.3
Using parallel 1.22.1
Using parser 3.3.0.5
Using rainbow 3.1.1
Using rubocop-ast 1.29.0
Using rubocop 1.57.2
Using gitlab-housekeeper 0.1.0 from source at `gems/gitlab-housekeeper` and installing its executables
Using gitlab-http 0.1.0 from source at `gems/gitlab-http`
Using opentracing 0.5.0
Using thrift 0.16.0
Using jaeger-client 1.1.0
Using pg_query 5.1.0
Using redis-client 0.21.1
Using redis 5.0.8
Using gitlab-labkit 0.35.1
Using gitlab-license 2.4.0
Using version_gem 1.1.0
Using snaky_hash 2.0.0
Using oauth2 2.0.9
Using redis-namespace 1.10.0
Using gitlab-mail_room 0.0.24
Using gitlab-markup 1.9.0
Using gitlab-net-dns 0.9.2
Using rspec-expectations 3.12.3
Using rspec-mocks 3.12.6
Using rspec 3.12.0
Using gitlab-rspec 0.1.0 from source at `gems/gitlab-rspec`
Using gitlab-rspec_flaky 0.1.0 from source at `gems/gitlab-rspec_flaky`
Using gitlab-safe_request_store 0.1.0 from source at `gems/gitlab-safe_request_store`
Using gitlab-schema-validation 0.1.0 from source at `gems/gitlab-schema-validation`
Using snowplow-tracker 0.8.0
Using gitlab-sdk 0.3.0
Using re2 2.7.0 (x86_64-linux)
Using toml-rb 2.2.0
Using gitlab-secret_detection 0.1.0 from source at `gems/gitlab-secret_detection`
Using sidekiq 7.1.6 from source at `vendor/gems/sidekiq-7.1.6` and installing its executables
Using gitlab-sidekiq-fetcher 0.11.0 from source at `vendor/gems/sidekiq-reliable-fetch`
Using rubocop-graphql 0.19.0
Using rubocop-performance 1.19.1
Using rubocop-rails 2.22.1
Using rubocop-capybara 2.19.0
Using rubocop-factory_bot 2.24.0
Using rubocop-rspec 2.25.0
Using gitlab-styles 11.0.0
Using gitlab-utils 0.1.0 from source at `gems/gitlab-utils`
Using gitlab_chronic_duration 0.12.0
Using net-ldap 0.17.1
Using rack-protection 2.2.2
Using omniauth 2.1.0
Using pyu-ruby-sasl 0.0.3.3
Using rubyntlm 0.6.3
Using gitlab_omniauth-ldap 2.2.0
Using http-form_data 2.3.0
Using llhttp-ffi 0.4.0
Using http 5.1.1
Using unparser 0.6.7
Using proc_to_ast 0.1.0
Using rspec-parameterized-core 1.0.0
Using rspec-parameterized-table_syntax 1.0.0
Using rspec-parameterized 1.0.0
Using table_print 1.5.7
Using gitlab_quality-test_tooling 1.17.0
Using gon 6.4.0
Using google-apis-androidpublisher_v3 0.34.0
Using google-apis-cloudbilling_v1 0.21.0
Using google-apis-cloudresourcemanager_v1 0.31.0
Using google-apis-container_v1 0.43.0
Using google-apis-container_v1beta1 0.43.0
Using google-apis-iam_v1 0.36.0
Using google-apis-serviceusage_v1 0.28.0
Using google-cloud-location 0.6.0
Using grpc-google-iam-v1 1.5.0
Using google-cloud-artifact_registry-v1 0.11.0
Using google-cloud-common 1.1.0
Using google-cloud-compute-v1 2.6.0
Using google-cloud-core 1.6.0
Using google-cloud-storage 1.45.0
Using mini_portile2 2.8.5
Using gpgme 2.0.23
Using mustermann 3.0.0
Using mustermann-grape 1.0.2
Using rack-accept 0.4.5
Using grape 2.0.0
Using grape-entity 0.10.2
Using grape-path-helpers 2.0.1
Using grape-swagger 2.0.1
Using grape-swagger-entity 0.5.1
Using grape_logging 1.8.4
Using sprockets 3.7.2
Using sprockets-rails 3.4.2
Using graphiql-rails 1.8.0
Using graphql-client 0.19.0
Using graphlient 0.6.0
Using graphlyte 1.0.0
Using graphql-docs 4.0.0
Using gssapi 1.3.1
Using rb-fsevent 0.11.2
Using rb-inotify 0.10.1
Using listen 3.7.1
Using lumberjack 1.2.7
Using nenv 0.3.0
Using shellany 0.0.1
Using notiffany 0.1.3
Using pry 0.14.2
Using guard 2.16.2
Using guard-compat 1.2.1
Using guard-rspec 4.7.3
Using temple 0.8.2
Using tilt 2.0.11
Using haml 5.2.2
Using sysexits 1.2.0
Using haml_lint 0.53.0
Using hamlit 2.15.0
Using hana 1.3.7
Using hashdiff 1.0.1
Using health_check 3.1.0
Using html2text 0.2.0
Using ice_cube 0.16.4
Using icalendar 2.8.0
Using imagen 0.1.8
Using influxdb-client 2.9.0
Using rails 7.0.8.1
Using invisible_captcha 2.1.0
Using ipaddr 1.2.5
Using oj 3.13.23
Using ipynbdiff 0.4.7 from source at `gems/ipynbdiff`
Using oauth 0.5.6
Using jira-ruby 2.3.0
Using regexp_property_values 1.0.0
Using js_regex 3.8.0
Using json-jwt 1.15.3
Using uri_template 0.7.0
Using json_schemer 0.2.18
Using jsonb_accessor 1.3.10
Using jsonpath 1.1.2
Using kaminari-core 1.2.2
Using kaminari-actionview 1.2.2
Using kaminari-activerecord 1.2.2
Using kaminari 1.2.2
Using kas-grpc 0.4.0
Using knapsack 1.22.0
Using recursive-open-struct 1.1.3
Using kubeclient 4.11.0
Using rubyzip 2.3.2
Using with_env 1.1.0
Using license_finder 7.0.1
Using reverse_markdown 1.4.0
Using rugged 1.6.3
Using licensee 9.16.1
Using lockbox 1.3.0
Using lograge 0.11.2
Using lru_redux 1.1.0
Using mail-smtp_pool 0.1.0 from source at `vendor/gems/mail-smtp_pool`
Using marginalia 1.11.1
Using microsoft_graph_mailer 0.1.0 from source at `vendor/gems/microsoft_graph_mailer`
Using mini_magick 4.12.0
Using mixlib-cli 2.1.8
Using mixlib-log 3.0.9
Using murmurhash3 0.1.7
Using neighbor 0.2.3
Using uri 0.13.0
Using net-http 0.1.1
Using net-ntp 2.1.3
Using net-ssh 7.2.0
Using net-scp 4.0.0
Using plist 3.7.0
Using train-core 3.10.8
Using wmi-lite 1.0.7
Using ohai 18.1.3
Using oj-introspect 0.7.2
Using omniauth-oauth2 1.8.0
Using omniauth-alicloud 3.0.0
Using omniauth-atlassian-oauth2 0.2.0
Using omniauth-auth0 3.1.0
Using omniauth-azure-activedirectory-v2 2.0.0
Using omniauth-azure-oauth2 0.0.10 from source at `vendor/gems/omniauth-azure-oauth2`
Using omniauth-dingtalk-oauth2 1.0.1
Using omniauth-facebook 4.0.0
Using omniauth-github 2.0.1
Using omniauth-gitlab 4.0.0 from source at `vendor/gems/omniauth-gitlab`
Using omniauth-google-oauth2 1.1.1
Using omniauth-oauth 1.2.0
Using omniauth-oauth2-generic 0.2.8
Using omniauth-salesforce 1.0.5 from source at `vendor/gems/omniauth-salesforce`
Using ruby-saml 1.15.0
Using omniauth-saml 2.1.0
Using omniauth-shibboleth-redux 2.0.0
Using omniauth-twitter 1.4.0
Using omniauth_crowd 2.4.0 from source at `vendor/gems/omniauth_crowd`
Using rack-oauth2 1.21.3
Using swd 1.3.0
Using validate_email 0.1.6
Using validate_url 1.0.15
Using webfinger 1.2.0
Using openid_connect 1.3.0
Using omniauth_openid_connect 0.6.1
Using optimist 3.0.1
Using rubypants 0.2.0
Using org-ruby 0.9.12
Using pact-support 1.20.0
Using pact-mock_service 3.11.2
Using term-ansicolor 1.7.1
Using pact 1.64.0
Using tty-color 0.6.0
Using pastel 0.8.0
Using peek 1.1.0
Using png_quantizator 0.2.1
Using premailer 1.16.0
Using premailer-rails 1.10.3
Using prometheus-client-mmap 1.1.1 (x86_64-linux)
Using pry-byebug 3.10.1
Using pry-rails 0.3.9
Using rouge 4.2.0
Using strings-ansi 0.2.0
Using unicode_utils 1.4.0
Using strings 0.2.1
Using tty-screen 0.8.1
Using tty-markdown 0.7.2
Using tty-cursor 0.7.1
Using wisper 2.0.1
Using tty-reader 0.9.0
Using tty-prompt 0.23.1
Using pry-shell 0.6.4
Using puma 6.4.0
Using rack-attack 6.7.0
Using rack-cors 2.0.1
Using rack-proxy 0.7.7
Using rack-session 1.0.2
Using rack-timeout 0.6.3
Using rails-controller-testing 1.0.5
Using rails-i18n 7.0.3
Using rbtrace 0.5.1
Using recaptcha 5.12.3
Using redis-store 1.10.0
Using redis-rack 3.0.0
Using redis-actionpack 5.4.0
Using redis-cluster-client 0.7.5
Using redis-clustering 5.0.8
Using rinku 2.0.0
Using rqrcode_core 1.2.0
Using rqrcode 2.2.0
Using rspec-benchmark 0.6.0
Using rspec-rails 6.1.1
Using rspec-retry 0.6.2
Using rspec_junit_formatter 0.6.0
Using rspec_profiling 0.0.9
Using ruby-fogbugz 0.3.0
Using ruby-magic 0.6.0
Using ruby-openai 3.7.0
Using safety_net_attestation 0.4.0
Using sanitize 6.0.2
Using sd_notify 0.1.1
Using seed-fu 2.3.7
Using websocket 1.2.10
Using selenium-webdriver 4.18.1
Using tty-command 0.10.1
Using semver_dialects 2.0.0
Using sentry-ruby 5.10.0
Using sentry-rails 5.10.0
Using sentry-raven 3.1.2
Using sentry-sidekiq 5.10.0
Using shoulda-matchers 5.1.0
Using sidekiq-cron 1.12.0
Using sigdump 0.2.4
Using simple_po_parser 1.1.6
Using simplecov-html 0.12.3
Using simplecov_json_formatter 0.1.4
Using simplecov 0.22.0
Using simplecov-cobertura 2.1.0
Using simplecov-lcov 0.8.0
Using slack-messenger 2.3.4
Using spamcheck 1.3.0
Using spring 4.1.0
Using spring-commands-rspec 1.0.4
Using ssh_data 1.3.0
Using state_machines 0.5.0
Using state_machines-activemodel 0.8.0
Using state_machines-activerecord 0.8.0
Using sys-filesystem 1.4.3
Using tanuki_emoji 0.9.0
Using telesign 2.2.4
Using telesignenterprise 2.2.2
Using terser 1.0.2
Using test-prof 1.3.1
Using test_file_finder 0.3.0
Using timfel-krb5-auth 0.8.3
Using tpm-key_attestation 0.12.0
Using truncato 0.7.12
Using undercover 0.4.6
Using unleash 3.2.2
Using valid_email 0.1.3
Using validates_hostname 1.0.13
Using version_sorter 2.3.0
Using view_component 3.11.0
Using vite_ruby 3.5.0
Using vite_rails 3.0.17
Using vmstat 2.3.0
Using warning 1.3.0
Using webauthn 3.0.0
Using webmock 3.22.0
Using wikicloth 0.8.1
Using yajl-ruby 1.4.3
Bundle complete! 332 Gemfile dependencies, 645 gems now installed.
Gems in the groups 'production' and 'development' were not installed.
Bundled gems are installed into `./vendor`
2 installed gems you directly depend on are looking for funding.
  Run `bundle fund` for details
==> 'bundle install --jobs=$(nproc) --retry=3 ' succeeded in 1 seconds.
$ bundle pristine pg
Patching bundler with bundler-checksum...
Installing pg 1.5.6 with native extensions
==> 'bundle pristine pg' succeeded in 17 seconds.
section_end:1711452133:bundle-install

Using decomposed database config (config/database.yml.decomposed-postgresql)
Geo DB won't be set up.
Embedding DB won't be set up.
section_start:1711452133:setup-db[collapsed=true]
Setting up DBs
CREATE ROLE
GRANT
$ bundle exec rake db:drop db:create db:schema:load db:migrate gitlab:db:lock_writes
Dropped database 'gitlabhq_test'
Dropped database 'gitlabhq_test_ci'
Created database 'gitlabhq_test'
Created database 'gitlabhq_test_ci'
==> 'bundle exec rake db:drop db:create db:schema:load db:migrate gitlab:db:lock_writes' succeeded in 55 seconds.
SELECT pg_catalog.set_config('search_path', '', false);
CREATE DATABASE praefect_test ENCODING 'UTF8';
section_end:1711452190:setup-db

$ source ./scripts/rspec_helpers.sh
$ run_timed_command "gem install knapsack --no-document"
$ gem install knapsack --no-document
Successfully installed knapsack-4.0.0
1 gem installed
==> 'gem install knapsack --no-document' succeeded in 0 seconds.
$ section_start "gitaly-test-spawn" "Spawning Gitaly"; scripts/gitaly-test-spawn; section_end "gitaly-test-spawn"
section_start:1711452190:gitaly-test-spawn[collapsed=true]
Spawning Gitaly
Trying to connect to gitaly: .... OK
Trying to connect to gitaly2: ...... OK
Starting Praefect with in-memory election strategyTrying to connect to praefect: ..... OK
section_end:1711452193:gitaly-test-spawn

$ export RSPEC_SKIPPED_TESTS_REPORT_PATH="rspec/skipped_tests-${CI_JOB_ID}.txt"
$ export RSPEC_RETRIED_TESTS_REPORT_PATH="rspec/retried_tests-${CI_JOB_ID}.txt"
$ tooling/bin/create_job_metrics_file || true
[job-metrics] Creating the job metrics file for the CI/CD job.
$ rspec_section rspec_parallelized_job "--fail-fast=${RSPEC_FAIL_FAST_THRESHOLD} --tag ~quarantine --tag ~level:background_migration --tag ~click_house --tag ~real_ai_request"
section_start:1711452195:rspec[collapsed=false]
RSpec
[11:23:15] Starting rspec_parallelized_job
RETRY_FAILED_TESTS_IN_NEW_PROCESS: true
KNAPSACK_GENERATE_REPORT: true
FLAKY_RSPEC_GENERATE_REPORT: true
KNAPSACK_TEST_FILE_PATTERN: spec/{bin,channels,components,config,contracts,db,dependencies,elastic,elastic_integration,experiments,factories,finders,frontend,graphql,haml_lint,helpers,initializers,keeps,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,dot_gitlab_ci}{,/**/}*_spec.rb
KNAPSACK_LOG_LEVEL: debug
KNAPSACK_REPORT_PATH: knapsack/rspec_unit_pg14_9_32_278964_report.json
FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json
FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec_unit_pg14_9_32_278964_report.json
NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec_unit_pg14_9_32_278964_report.json
RSPEC_SKIPPED_TESTS_REPORT_PATH: rspec/skipped_tests-6478668447.txt
CRYSTALBALL: 
RSPEC_TESTS_MAPPING_ENABLED: 
RSPEC_TESTS_FILTER_FILE: 
Shell set options (set -o) enabled:
braceexpand    	on
hashall        	on
interactive-comments	on
pipefail       	on
Parsing expected rspec suite duration...
RSpec suite is expected to take 28 minutes 48.98 seconds.
Expected duration for tests:

{
  "spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb": 351.1359230390093,
  "spec/tasks/gitlab/workhorse_rake_spec.rb": 135.93848712149165,
  "spec/models/event_spec.rb": 93.9380055153449,
  "spec/services/merge_requests/mergeability_check_service_spec.rb": 69.93867891976709,
  "spec/models/ci/bridge_spec.rb": 61.85633383257372,
  "spec/lib/gitlab/background_migration/backfill_releases_author_id_spec.rb": 54.43174278244951,
  "spec/models/integration_spec.rb": 49.11454805072022,
  "spec/graphql/mutations/merge_requests/update_spec.rb": 42.752205807413446,
  "spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb": 38.327247595113676,
  "spec/services/todos/destroy/group_private_service_spec.rb": 34.31551709412889,
  "spec/services/users/destroy_service_spec.rb": 30.55920049216788,
  "spec/services/projects/prometheus/alerts/notify_service_spec.rb": 26.66660590382254,
  "spec/services/projects/protect_default_branch_service_spec.rb": 25.22527486726044,
  "spec/models/merge_request_diff_commit_spec.rb": 23.186873584101757,
  "spec/lib/gitlab/import_export/project/sample/relation_tree_restorer_spec.rb": 21.99478665016655,
  "spec/policies/namespace/root_storage_statistics_policy_spec.rb": 20.535031992631165,
  "spec/models/timelog_spec.rb": 19.447259512484603,
  "spec/models/route_spec.rb": 18.005400455588333,
  "spec/models/internal_id_spec.rb": 17.220454159984122,
  "spec/workers/pipeline_schedule_worker_spec.rb": 16.036796588141318,
  "spec/services/verify_pages_domain_service_spec.rb": 15.608872995642539,
  "spec/helpers/todos_helper_spec.rb": 14.518603286609418,
  "spec/services/search/group_service_spec.rb": 14.004690756961931,
  "spec/lib/gitlab/background_migration/backfill_default_organization_owners_again_spec.rb": 13.423739307948972,
  "spec/lib/gitlab/email/handler/create_issue_handler_spec.rb": 12.774269139972937,
  "spec/lib/gitlab/import_export/group/relation_tree_restorer_spec.rb": 12.585271773834581,
  "spec/models/ci/sources/pipeline_spec.rb": 11.876200286619326,
  "spec/lib/gitlab/slash_commands/command_spec.rb": 11.76171341765895,
  "spec/services/notification_recipients/build_service_spec.rb": 11.228818164893081,
  "spec/graphql/mutations/design_management/delete_spec.rb": 10.766522385494346,
  "spec/lib/gitlab/background_migration/delete_orphans_approval_merge_request_rules2_spec.rb": 10.314942055237847,
  "spec/models/personal_access_token_spec.rb": 9.921081277918145,
  "spec/models/packages/debian/project_distribution_spec.rb": 9.553313676774303,
  "spec/lib/gitlab/git/object_pool_spec.rb": 9.227824387686201,
  "spec/lib/gitlab/ci/trace/stream_spec.rb": 9.034470400800755,
  "spec/lib/gitlab/legacy_github_import/pull_request_formatter_spec.rb": 8.536634804940123,
  "spec/lib/gitlab/gitaly_client/with_feature_flag_actors_spec.rb": 8.442685735603632,
  "spec/serializers/profile/event_entity_spec.rb": 8.134834767155109,
  "spec/graphql/types/merge_request_type_spec.rb": 7.897066090326687,
  "spec/lib/gitlab/search/recent_issues_spec.rb": 7.767258960698546,
  "spec/models/protected_tag/create_access_level_spec.rb": 7.380445434319043,
  "spec/services/wiki_pages/create_service_spec.rb": 7.184711013347028,
  "spec/models/packages/npm/metadata_cache_spec.rb": 7.041553745677975,
  "spec/lib/gitlab/background_migration/backfill_has_issues_for_external_issue_links_spec.rb": 6.810327048909961,
  "spec/lib/gitlab/pagination/keyset/order_spec.rb": 6.631088543881075,
  "spec/lib/gitlab/auth/unique_ips_limiter_spec.rb": 6.449899588075776,
  "spec/models/sentry_issue_spec.rb": 6.3567306059354864,
  "spec/lib/gitlab/gitaly_client/conflicts_service_spec.rb": 6.059584147878217,
  "spec/services/ci/create_pipeline_service/include_spec.rb": 5.989100476757487,
  "spec/helpers/icons_helper_spec.rb": 5.772528790551878,
  "spec/models/slack_integration_spec.rb": 5.611732641660669,
  "spec/finders/security/license_compliance_jobs_finder_spec.rb": 5.455299929043857,
  "spec/lib/banzai/reference_redactor_spec.rb": 5.358856749293887,
  "spec/services/tags/create_service_spec.rb": 5.186351178400098,
  "spec/workers/ci/external_pull_requests/create_pipeline_worker_spec.rb": 5.018239651489962,
  "spec/models/concerns/spammable_spec.rb": 4.985912271749045,
  "spec/models/users/phone_number_validation_spec.rb": 4.797485542965825,
  "spec/serializers/group_child_serializer_spec.rb": 4.758471079176415,
  "spec/rubocop/cop/rspec/misspelled_aggregate_failures_spec.rb": 4.601374001688023,
  "spec/services/ci/job_artifacts/bulk_delete_by_project_service_spec.rb": 4.54000865981005,
  "spec/services/lfs/lock_file_service_spec.rb": 4.4218980119696685,
  "spec/lib/gitlab/diff/position_tracer/file_strategy_spec.rb": 4.342495463013272,
  "spec/models/integrations/ewm_spec.rb": 4.236441969948702,
  "spec/lib/gitlab/issuable/clone/attributes_rewriter_spec.rb": 4.168774636843979,
  "spec/lib/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb": 4.045153199978678,
  "spec/tasks/gitlab/x509/update_rake_spec.rb": 3.9427034593911907,
  "spec/lib/gitlab/composer/cache_spec.rb": 3.9011171047777453,
  "spec/lib/gitlab/ssh/signature_spec.rb": 3.83905339371369,
  "spec/tasks/gitlab/gitaly_rake_spec.rb": 3.7688108223383483,
  "spec/tasks/gitlab/audit_event_types/compile_docs_task_spec.rb": 3.691594555518912,
  "spec/services/users/set_namespace_commit_email_service_spec.rb": 3.6158006278255206,
  "spec/experiments/application_experiment_spec.rb": 3.571446106713287,
  "spec/services/ci/refs/enqueue_pipelines_to_unlock_service_spec.rb": 3.48235750309657,
  "spec/lib/gitlab/ci/reports/test_report_spec.rb": 3.43552755542911,
  "spec/lib/gitlab/database/partitioning/monthly_strategy_spec.rb": 3.3884502579674254,
  "spec/serializers/review_app_setup_entity_spec.rb": 3.3083349053628357,
  "spec/services/ci/daily_build_group_report_result_service_spec.rb": 3.261208218652523,
  "spec/lib/gitlab/background_migration/batching_strategies/backfill_project_statistics_with_container_registry_size_batching_strategy_spec.rb": 3.2018095341937958,
  "spec/lib/gitlab/ci/build/policy/variables_spec.rb": 3.136152992581967,
  "spec/workers/repository_import_worker_spec.rb": 3.1086166459027496,
  "spec/models/subscription_spec.rb": 3.0062081404247945,
  "spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_build_started_spec.rb": 2.9673238680427403,
  "spec/lib/gitlab/pages/virtual_host_finder_spec.rb": 2.909101498655913,
  "spec/lib/gitlab/utils/username_and_email_generator_spec.rb": 2.8751217090233956,
  "spec/workers/gitlab/bitbucket_import/stage/import_pull_requests_notes_worker_spec.rb": 2.7877989659061284,
  "spec/lib/gitlab/ci/build/policy/refs_spec.rb": 2.775928071146456,
  "spec/uploaders/gitlab_uploader_spec.rb": 2.7077915337715814,
  "spec/workers/environments/auto_recover_worker_spec.rb": 2.6662772489439543,
  "spec/lib/banzai/filter/emoji_filter_spec.rb": 2.65635035425175,
  "spec/serializers/runner_entity_spec.rb": 2.5805431359259607,
  "spec/lib/gitlab/middleware/same_site_cookies_spec.rb": 2.559465264991711,
  "spec/lib/gitlab/usage_data_counters/quick_action_activity_unique_counter_spec.rb": 2.531480546005615,
  "spec/models/project_repository_spec.rb": 2.4537195707209745,
  "spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb": 2.437138897442743,
  "spec/components/pajamas/avatar_component_spec.rb": 2.380010931053572,
  "spec/workers/incident_management/add_severity_system_note_worker_spec.rb": 2.3683173015884345,
  "spec/services/users/ban_service_spec.rb": 2.3226698256430454,
  "spec/tooling/lib/tooling/find_changes_spec.rb": 2.292565273735608,
  "spec/lib/banzai/filter/asset_proxy_filter_spec.rb": 2.2521112405577,
  "spec/lib/gitlab/jira/dvcs_spec.rb": 2.2268706977396926,
  "spec/services/activity_pub/projects/releases_unfollow_service_spec.rb": 2.162240870141979,
  "spec/finders/repositories/changelog_commits_finder_spec.rb": 2.140998435847279,
  "spec/workers/container_registry/cleanup_worker_spec.rb": 2.094775193347015,
  "spec/lib/gitlab/ci/reports/security/identifier_spec.rb": 2.054747456481187,
  "spec/components/pajamas/single_stat_component_spec.rb": 2.0303141096287955,
  "spec/lib/grafana/time_window_spec.rb": 1.9935714665213333,
  "spec/graphql/resolvers/ci/group_runners_resolver_spec.rb": 1.9663746523102246,
  "spec/lib/gitlab/ci/pipeline/chain/sequence_spec.rb": 1.9476450810000023,
  "spec/lib/gitlab/database/migration_helpers/cascading_namespace_settings_spec.rb": 1.9166733544207946,
  "spec/workers/authorized_project_update/project_recalculate_per_user_worker_spec.rb": 1.8926075863104632,
  "spec/lib/gitlab/shell_spec.rb": 1.8769380093616332,
  "spec/views/projects/tree/show.html.haml_spec.rb": 1.824488467411082,
  "spec/lib/gitlab/ci/secure_files/migration_helper_spec.rb": 1.789783736385726,
  "spec/lib/gitlab/spamcheck/result_spec.rb": 1.7888768626405431,
  "spec/workers/flush_counter_increments_worker_spec.rb": 1.755637570275003,
  "spec/workers/pages/deactivated_deployments_delete_cron_worker_spec.rb": 1.7173214489531476,
  "spec/workers/object_pool/join_worker_spec.rb": 1.6984966119754523,
  "spec/models/cycle_analytics/project_level_stage_adapter_spec.rb": 1.6765481913034097,
  "spec/services/ci/job_artifacts/delete_service_spec.rb": 1.6526368197713166,
  "spec/finders/groups/accepting_project_transfers_finder_spec.rb": 1.6317428402867415,
  "spec/services/customer_relations/organizations/create_service_spec.rb": 1.6076472769370491,
  "spec/lib/gitlab/view/presenter/base_spec.rb": 1.5758252294308088,
  "spec/lib/gitlab/email/service_desk/custom_email_spec.rb": 1.5642612064832684,
  "spec/models/group_deploy_token_spec.rb": 1.5305873594776505,
  "spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_monitor_enabled_metric_spec.rb": 1.5184505758888136,
  "spec/models/blob_viewer/package_json_spec.rb": 1.4840610665905678,
  "spec/workers/google_cloud/create_cloudsql_instance_worker_spec.rb": 1.4787598918987408,
  "spec/lib/gitlab/auth/result_spec.rb": 1.4302460210053853,
  "spec/services/ci/catalog/resources/create_service_spec.rb": 1.4263050703968374,
  "spec/services/pages_domains/create_service_spec.rb": 1.3939555652031115,
  "spec/presenters/ml/candidates_csv_presenter_spec.rb": 1.38745970220045,
  "spec/lib/gitlab/setup_helper/praefect_spec.rb": 1.3465298863733275,
  "spec/services/ml/find_model_service_spec.rb": 1.3386621376364407,
  "spec/lib/gitlab/ci/config/yaml/loader_spec.rb": 1.3136144285437439,
  "spec/helpers/gitlab_script_tag_helper_spec.rb": 1.285689932894679,
  "spec/models/projects/ci_feature_usage_spec.rb": 1.280910531810588,
  "spec/graphql/types/release_links_type_spec.rb": 1.2363580403136132,
  "spec/serializers/project_access_token_entity_spec.rb": 1.2324874973034587,
  "spec/lib/gitlab/ci/config/entry/services_spec.rb": 1.191659368928764,
  "spec/services/bulk_imports/archive_extraction_service_spec.rb": 1.1856831818413778,
  "spec/workers/group_export_worker_spec.rb": 1.1645053127398,
  "spec/models/projects/project_topic_spec.rb": 1.1350971833120767,
  "spec/models/packages/go/package_spec.rb": 1.1205401780935804,
  "spec/lib/gitlab/ci/reports/codequality_reports_spec.rb": 1.1073589758353388,
  "spec/services/cohorts_service_spec.rb": 1.0867737725197923,
  "spec/graphql/resolvers/work_item_resolver_spec.rb": 1.0710672733687683,
  "spec/graphql/mutations/customer_relations/contacts/update_spec.rb": 1.0497078831585624,
  "spec/lib/gitlab/usage/metrics/instrumentations/count_slack_app_installations_gbp_metric_spec.rb": 1.0388918998727208,
  "spec/services/import/github/gists_import_service_spec.rb": 1.011843581777535,
  "spec/lib/gitlab/etag_caching/store_spec.rb": 1.0031193369209142,
  "spec/models/concerns/from_set_operator_spec.rb": 0.9886020240939932,
  "spec/rubocop/cop/code_reuse/presenter_spec.rb": 0.9747379965042018,
  "spec/lib/sidebars/user_settings/menus/account_menu_spec.rb": 0.9669861559824899,
  "spec/lib/gitlab/graphql/present/field_extension_spec.rb": 0.9429718104009766,
  "spec/initializers/carrierwave_s3_encryption_headers_patch_spec.rb": 0.9406886347131356,
  "spec/lib/bulk_imports/common/rest/get_badges_query_spec.rb": 0.918331338142088,
  "spec/lib/gitlab/database/health_status/indicators/write_ahead_log_spec.rb": 0.9160166260999019,
  "spec/models/group_custom_attribute_spec.rb": 0.8858863587568455,
  "spec/lib/gitlab/gitaly_client/conflict_files_stitcher_spec.rb": 0.8815769702974985,
  "spec/services/achievements/destroy_service_spec.rb": 0.8597882875897496,
  "spec/lib/gitlab/github_import/events_cache_spec.rb": 0.8560912598816955,
  "spec/lib/sidebars/projects/menus/wiki_menu_spec.rb": 0.8441844166372111,
  "spec/views/groups/packages/index.html.haml_spec.rb": 0.8303604497683519,
  "spec/workers/email_receiver_worker_spec.rb": 0.8238672304742953,
  "spec/lib/gitlab/snippet_search_results_spec.rb": 0.8057960023917514,
  "spec/lib/gitlab/usage/metrics/instrumentations/count_issues_metric_spec.rb": 0.8021708139507601,
  "spec/lib/gitlab/reference_counter_spec.rb": 0.7826335064702388,
  "spec/lib/gitlab/ci/config/yaml/documents_spec.rb": 0.7818237778970268,
  "spec/workers/user_status_cleanup/batch_worker_spec.rb": 0.7535786376302473,
  "spec/rubocop/cop/active_record_association_reload_spec.rb": 0.7530346845489815,
  "spec/lib/gitlab/diff/pair_selector_spec.rb": 0.7313367485955379,
  "spec/workers/gitlab/github_import/import_diff_note_worker_spec.rb": 0.7195243163156875,
  "spec/models/jira_connect_subscription_spec.rb": 0.7171171470007442,
  "spec/lib/gitlab/tracking/destinations/snowplow_spec.rb": 0.7075052216950325,
  "spec/graphql/types/alert_management/integration_type_enum_spec.rb": 0.6888186507206906,
  "spec/graphql/types/data_transfer/project_data_transfer_type_spec.rb": 0.6867998217936799,
  "spec/lib/gitlab/ci/config/entry/includes_spec.rb": 0.6702802454356136,
  "spec/graphql/resolvers/saved_reply_resolver_spec.rb": 0.6660808679813488,
  "spec/lib/gitlab/global_id/deprecations_spec.rb": 0.6417854853806971,
  "spec/serializers/integrations/project_entity_spec.rb": 0.6345400026214258,
  "spec/lib/gitlab/import_export/import_export_spec.rb": 0.6253634144525819,
  "spec/lib/gitlab/memory/watchdog/monitor/heap_fragmentation_spec.rb": 0.6134741724720953,
  "spec/graphql/types/packages/package_details_type_spec.rb": 0.6013471922912745,
  "spec/support_specs/capybara_slow_finder_spec.rb": 0.6006377768019182,
  "spec/views/admin/users/_form.html.haml_spec.rb": 0.581494018060731,
  "spec/lib/gitlab/sessions/redis_store_spec.rb": 0.5814516330394728,
  "spec/services/emails/destroy_service_spec.rb": 0.5599307326641912,
  "spec/lib/gitlab/chat_name_token_spec.rb": 0.5491256254881276,
  "spec/tooling/danger/experiments_spec.rb": 0.5371614150674922,
  "spec/rubocop/cop/qa/element_with_pattern_spec.rb": 0.5267465011679839,
  "spec/services/packages/rpm/repository_metadata/build_repomd_xml_service_spec.rb": 0.5186222993049339,
  "spec/rubocop/cop/qa/selector_usage_spec.rb": 0.5117239087714092,
  "spec/lib/gitlab/ci/build/policy_spec.rb": 0.5005520940197278,
  "spec/helpers/external_link_helper_spec.rb": 0.4978922188324765,
  "spec/lib/gitlab/ci/status/group/factory_spec.rb": 0.48655852930225735,
  "spec/rubocop/cop/rspec/avoid_conditional_statements_spec.rb": 0.4802338913218914,
  "spec/tooling/lib/tooling/api/pipeline_spec.rb": 0.46739227298014047,
  "spec/lib/gitlab/audit/deploy_token_author_spec.rb": 0.458866092510693,
  "spec/services/vs_code/settings/delete_service_spec.rb": 0.4441513830938222,
  "spec/lib/sidebars/organizations/menus/scope_menu_spec.rb": 0.43453282054462705,
  "spec/helpers/one_trust_helper_spec.rb": 0.4290531460315474,
  "spec/rubocop/qa_helpers_spec.rb": 0.4233051461406961,
  "spec/graphql/types/boards/board_issue_input_type_spec.rb": 0.4208504438280498,
  "spec/lib/gitlab/usage/metrics/instrumentations/snowplow_configured_to_gitlab_collector_metric_spec.rb": 0.4146973290114525,
  "spec/lib/gitlab/sidekiq_middleware/pause_control/client_spec.rb": 0.41114540573596003,
  "spec/helpers/ci/pipeline_schedules_helper_spec.rb": 0.40771817222004203,
  "spec/lib/gitlab/database/background_migration/batched_background_migration_dictionary_spec.rb": 0.4020081639226307,
  "spec/graphql/types/ml/model_type_spec.rb": 0.398581328835886,
  "spec/lib/api/validations/validators/email_or_email_list_spec.rb": 0.39552122865359585,
  "spec/lib/banzai/filter/markdown_engines/cmark_spec.rb": 0.3891428332871312,
  "spec/lib/bulk_imports/common/extractors/rest_extractor_spec.rb": 0.3868612286694854,
  "spec/graphql/types/admin/analytics/usage_trends/measurement_identifier_enum_spec.rb": 0.37585667093026803,
  "spec/graphql/types/ci/ci_cd_setting_type_spec.rb": 0.3740887129838157,
  "spec/workers/gitlab/github_import/pull_requests/import_review_request_worker_spec.rb": 0.34449686195698836,
  "spec/workers/gitlab/github_import/import_protected_branch_worker_spec.rb": 0.3374568370975468,
  "spec/lib/gitlab/graphql/query_analyzers/ast/logger_analyzer_spec.rb": 0.3271883085596467,
  "spec/lib/gitlab/usage/metrics/instrumentations/incoming_email_encrypted_secrets_enabled_metric_spec.rb": 0.32484960429209664,
  "spec/serializers/evidences/release_serializer_spec.rb": 0.31624637083057705,
  "spec/services/issues/issuable_base_service_spec.rb": 0.31567828042913837,
  "spec/lib/gitlab/nav/top_nav_menu_item_spec.rb": 0.3074072710053669,
  "spec/graphql/types/work_items/widgets/participants_type_spec.rb": 0.3056018061148538,
  "spec/graphql/types/permission_types/work_item_spec.rb": 0.29638905786508546,
  "spec/lib/gitlab/diff/inline_diff_markdown_marker_spec.rb": 0.2922154675922328
}

Running command: bundle exec rspec -Ispec -rspec_helper --color --failure-exit-code 1 --error-exit-code 2 --format documentation --format Support::Formatters::JsonFormatter --out rspec/rspec-6478668447.json --format RspecJunitFormatter --out rspec/rspec-6478668447.xml --fail-fast=20 --tag ~quarantine --tag ~level:background_migration --tag ~click_house --tag ~real_ai_request -- spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb spec/tasks/gitlab/workhorse_rake_spec.rb spec/models/event_spec.rb spec/services/merge_requests/mergeability_check_service_spec.rb spec/models/ci/bridge_spec.rb spec/lib/gitlab/background_migration/backfill_releases_author_id_spec.rb spec/models/integration_spec.rb spec/graphql/mutations/merge_requests/update_spec.rb spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb spec/services/todos/destroy/group_private_service_spec.rb spec/services/users/destroy_service_spec.rb spec/services/projects/prometheus/alerts/notify_service_spec.rb spec/services/projects/protect_default_branch_service_spec.rb spec/models/merge_request_diff_commit_spec.rb spec/lib/gitlab/import_export/project/sample/relation_tree_restorer_spec.rb spec/policies/namespace/root_storage_statistics_policy_spec.rb spec/models/timelog_spec.rb spec/models/route_spec.rb spec/models/internal_id_spec.rb spec/workers/pipeline_schedule_worker_spec.rb spec/services/verify_pages_domain_service_spec.rb spec/helpers/todos_helper_spec.rb spec/services/search/group_service_spec.rb spec/lib/gitlab/background_migration/backfill_default_organization_owners_again_spec.rb spec/lib/gitlab/email/handler/create_issue_handler_spec.rb spec/lib/gitlab/import_export/group/relation_tree_restorer_spec.rb spec/models/ci/sources/pipeline_spec.rb spec/lib/gitlab/slash_commands/command_spec.rb spec/services/notification_recipients/build_service_spec.rb spec/graphql/mutations/design_management/delete_spec.rb spec/lib/gitlab/background_migration/delete_orphans_approval_merge_request_rules2_spec.rb spec/models/personal_access_token_spec.rb spec/models/packages/debian/project_distribution_spec.rb spec/lib/gitlab/git/object_pool_spec.rb spec/lib/gitlab/ci/trace/stream_spec.rb spec/lib/gitlab/legacy_github_import/pull_request_formatter_spec.rb spec/lib/gitlab/gitaly_client/with_feature_flag_actors_spec.rb spec/serializers/profile/event_entity_spec.rb spec/graphql/types/merge_request_type_spec.rb spec/lib/gitlab/search/recent_issues_spec.rb spec/models/protected_tag/create_access_level_spec.rb spec/services/wiki_pages/create_service_spec.rb spec/models/packages/npm/metadata_cache_spec.rb spec/lib/gitlab/background_migration/backfill_has_issues_for_external_issue_links_spec.rb spec/lib/gitlab/pagination/keyset/order_spec.rb spec/lib/gitlab/auth/unique_ips_limiter_spec.rb spec/models/sentry_issue_spec.rb spec/lib/gitlab/gitaly_client/conflicts_service_spec.rb spec/services/ci/create_pipeline_service/include_spec.rb spec/helpers/icons_helper_spec.rb spec/models/slack_integration_spec.rb spec/finders/security/license_compliance_jobs_finder_spec.rb spec/lib/banzai/reference_redactor_spec.rb spec/services/tags/create_service_spec.rb spec/workers/ci/external_pull_requests/create_pipeline_worker_spec.rb spec/models/concerns/spammable_spec.rb spec/models/users/phone_number_validation_spec.rb spec/serializers/group_child_serializer_spec.rb spec/rubocop/cop/rspec/misspelled_aggregate_failures_spec.rb spec/services/ci/job_artifacts/bulk_delete_by_project_service_spec.rb spec/services/lfs/lock_file_service_spec.rb spec/lib/gitlab/diff/position_tracer/file_strategy_spec.rb spec/models/integrations/ewm_spec.rb spec/lib/gitlab/issuable/clone/attributes_rewriter_spec.rb spec/lib/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb spec/tasks/gitlab/x509/update_rake_spec.rb spec/lib/gitlab/composer/cache_spec.rb spec/lib/gitlab/ssh/signature_spec.rb spec/tasks/gitlab/gitaly_rake_spec.rb spec/tasks/gitlab/audit_event_types/compile_docs_task_spec.rb spec/services/users/set_namespace_commit_email_service_spec.rb spec/experiments/application_experiment_spec.rb spec/services/ci/refs/enqueue_pipelines_to_unlock_service_spec.rb spec/lib/gitlab/ci/reports/test_report_spec.rb spec/lib/gitlab/database/partitioning/monthly_strategy_spec.rb spec/serializers/review_app_setup_entity_spec.rb spec/services/ci/daily_build_group_report_result_service_spec.rb spec/lib/gitlab/background_migration/batching_strategies/backfill_project_statistics_with_container_registry_size_batching_strategy_spec.rb spec/lib/gitlab/ci/build/policy/variables_spec.rb spec/workers/repository_import_worker_spec.rb spec/models/subscription_spec.rb spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_build_started_spec.rb spec/lib/gitlab/pages/virtual_host_finder_spec.rb spec/lib/gitlab/utils/username_and_email_generator_spec.rb spec/workers/gitlab/bitbucket_import/stage/import_pull_requests_notes_worker_spec.rb spec/lib/gitlab/ci/build/policy/refs_spec.rb spec/uploaders/gitlab_uploader_spec.rb spec/workers/environments/auto_recover_worker_spec.rb spec/lib/banzai/filter/emoji_filter_spec.rb spec/serializers/runner_entity_spec.rb spec/lib/gitlab/middleware/same_site_cookies_spec.rb spec/lib/gitlab/usage_data_counters/quick_action_activity_unique_counter_spec.rb spec/models/project_repository_spec.rb spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb spec/components/pajamas/avatar_component_spec.rb spec/workers/incident_management/add_severity_system_note_worker_spec.rb spec/services/users/ban_service_spec.rb spec/tooling/lib/tooling/find_changes_spec.rb spec/lib/banzai/filter/asset_proxy_filter_spec.rb spec/lib/gitlab/jira/dvcs_spec.rb spec/services/activity_pub/projects/releases_unfollow_service_spec.rb spec/finders/repositories/changelog_commits_finder_spec.rb spec/workers/container_registry/cleanup_worker_spec.rb spec/lib/gitlab/ci/reports/security/identifier_spec.rb spec/components/pajamas/single_stat_component_spec.rb spec/lib/grafana/time_window_spec.rb spec/graphql/resolvers/ci/group_runners_resolver_spec.rb spec/lib/gitlab/ci/pipeline/chain/sequence_spec.rb spec/lib/gitlab/database/migration_helpers/cascading_namespace_settings_spec.rb spec/workers/authorized_project_update/project_recalculate_per_user_worker_spec.rb spec/lib/gitlab/shell_spec.rb spec/views/projects/tree/show.html.haml_spec.rb spec/lib/gitlab/ci/secure_files/migration_helper_spec.rb spec/lib/gitlab/spamcheck/result_spec.rb spec/workers/flush_counter_increments_worker_spec.rb spec/workers/pages/deactivated_deployments_delete_cron_worker_spec.rb spec/workers/object_pool/join_worker_spec.rb spec/models/cycle_analytics/project_level_stage_adapter_spec.rb spec/services/ci/job_artifacts/delete_service_spec.rb spec/finders/groups/accepting_project_transfers_finder_spec.rb spec/services/customer_relations/organizations/create_service_spec.rb spec/lib/gitlab/view/presenter/base_spec.rb spec/lib/gitlab/email/service_desk/custom_email_spec.rb spec/models/group_deploy_token_spec.rb spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_monitor_enabled_metric_spec.rb spec/models/blob_viewer/package_json_spec.rb spec/workers/google_cloud/create_cloudsql_instance_worker_spec.rb spec/lib/gitlab/auth/result_spec.rb spec/services/ci/catalog/resources/create_service_spec.rb spec/services/pages_domains/create_service_spec.rb spec/presenters/ml/candidates_csv_presenter_spec.rb spec/lib/gitlab/setup_helper/praefect_spec.rb spec/services/ml/find_model_service_spec.rb spec/lib/gitlab/ci/config/yaml/loader_spec.rb spec/helpers/gitlab_script_tag_helper_spec.rb spec/models/projects/ci_feature_usage_spec.rb spec/graphql/types/release_links_type_spec.rb spec/serializers/project_access_token_entity_spec.rb spec/lib/gitlab/ci/config/entry/services_spec.rb spec/services/bulk_imports/archive_extraction_service_spec.rb spec/workers/group_export_worker_spec.rb spec/models/projects/project_topic_spec.rb spec/models/packages/go/package_spec.rb spec/lib/gitlab/ci/reports/codequality_reports_spec.rb spec/services/cohorts_service_spec.rb spec/graphql/resolvers/work_item_resolver_spec.rb spec/graphql/mutations/customer_relations/contacts/update_spec.rb spec/lib/gitlab/usage/metrics/instrumentations/count_slack_app_installations_gbp_metric_spec.rb spec/services/import/github/gists_import_service_spec.rb spec/lib/gitlab/etag_caching/store_spec.rb spec/models/concerns/from_set_operator_spec.rb spec/rubocop/cop/code_reuse/presenter_spec.rb spec/lib/sidebars/user_settings/menus/account_menu_spec.rb spec/lib/gitlab/graphql/present/field_extension_spec.rb spec/initializers/carrierwave_s3_encryption_headers_patch_spec.rb spec/lib/bulk_imports/common/rest/get_badges_query_spec.rb spec/lib/gitlab/database/health_status/indicators/write_ahead_log_spec.rb spec/models/group_custom_attribute_spec.rb spec/lib/gitlab/gitaly_client/conflict_files_stitcher_spec.rb spec/services/achievements/destroy_service_spec.rb spec/lib/gitlab/github_import/events_cache_spec.rb spec/lib/sidebars/projects/menus/wiki_menu_spec.rb spec/views/groups/packages/index.html.haml_spec.rb spec/workers/email_receiver_worker_spec.rb spec/lib/gitlab/snippet_search_results_spec.rb spec/lib/gitlab/usage/metrics/instrumentations/count_issues_metric_spec.rb spec/lib/gitlab/reference_counter_spec.rb spec/lib/gitlab/ci/config/yaml/documents_spec.rb spec/workers/user_status_cleanup/batch_worker_spec.rb spec/rubocop/cop/active_record_association_reload_spec.rb spec/lib/gitlab/diff/pair_selector_spec.rb spec/workers/gitlab/github_import/import_diff_note_worker_spec.rb spec/models/jira_connect_subscription_spec.rb spec/lib/gitlab/tracking/destinations/snowplow_spec.rb spec/graphql/types/alert_management/integration_type_enum_spec.rb spec/graphql/types/data_transfer/project_data_transfer_type_spec.rb spec/lib/gitlab/ci/config/entry/includes_spec.rb spec/graphql/resolvers/saved_reply_resolver_spec.rb spec/lib/gitlab/global_id/deprecations_spec.rb spec/serializers/integrations/project_entity_spec.rb spec/lib/gitlab/import_export/import_export_spec.rb spec/lib/gitlab/memory/watchdog/monitor/heap_fragmentation_spec.rb spec/graphql/types/packages/package_details_type_spec.rb spec/support_specs/capybara_slow_finder_spec.rb spec/views/admin/users/_form.html.haml_spec.rb spec/lib/gitlab/sessions/redis_store_spec.rb spec/services/emails/destroy_service_spec.rb spec/lib/gitlab/chat_name_token_spec.rb spec/tooling/danger/experiments_spec.rb spec/rubocop/cop/qa/element_with_pattern_spec.rb spec/services/packages/rpm/repository_metadata/build_repomd_xml_service_spec.rb spec/rubocop/cop/qa/selector_usage_spec.rb spec/lib/gitlab/ci/build/policy_spec.rb spec/helpers/external_link_helper_spec.rb spec/lib/gitlab/ci/status/group/factory_spec.rb spec/rubocop/cop/rspec/avoid_conditional_statements_spec.rb spec/tooling/lib/tooling/api/pipeline_spec.rb spec/lib/gitlab/audit/deploy_token_author_spec.rb spec/services/vs_code/settings/delete_service_spec.rb spec/lib/sidebars/organizations/menus/scope_menu_spec.rb spec/helpers/one_trust_helper_spec.rb spec/rubocop/qa_helpers_spec.rb spec/graphql/types/boards/board_issue_input_type_spec.rb spec/lib/gitlab/usage/metrics/instrumentations/snowplow_configured_to_gitlab_collector_metric_spec.rb spec/lib/gitlab/sidekiq_middleware/pause_control/client_spec.rb spec/helpers/ci/pipeline_schedules_helper_spec.rb spec/lib/gitlab/database/background_migration/batched_background_migration_dictionary_spec.rb spec/graphql/types/ml/model_type_spec.rb spec/lib/api/validations/validators/email_or_email_list_spec.rb spec/lib/banzai/filter/markdown_engines/cmark_spec.rb spec/lib/bulk_imports/common/extractors/rest_extractor_spec.rb spec/graphql/types/admin/analytics/usage_trends/measurement_identifier_enum_spec.rb spec/graphql/types/ci/ci_cd_setting_type_spec.rb spec/workers/gitlab/github_import/pull_requests/import_review_request_worker_spec.rb spec/workers/gitlab/github_import/import_protected_branch_worker_spec.rb spec/lib/gitlab/graphql/query_analyzers/ast/logger_analyzer_spec.rb spec/lib/gitlab/usage/metrics/instrumentations/incoming_email_encrypted_secrets_enabled_metric_spec.rb spec/serializers/evidences/release_serializer_spec.rb spec/services/issues/issuable_base_service_spec.rb spec/lib/gitlab/nav/top_nav_menu_item_spec.rb spec/graphql/types/work_items/widgets/participants_type_spec.rb spec/graphql/types/permission_types/work_item_spec.rb spec/lib/gitlab/diff/inline_diff_markdown_marker_spec.rbKnapsack report generator started!
Run options: exclude {:quarantine=>true, :level=>"background_migration", :click_house=>true, :real_ai_request=>true}

# [RSpecRunTime] Starting RSpec timer...
[TEST PROF INFO] EventProf enabled (sql.active_record)
unknown OID 2249: failed to recognize type of 'pg_stat_file'. It will be treated as String.
unknown OID 2249: failed to recognize type of 'pg_stat_file'. It will be treated as String.

Test environment set up in 0.657529983 seconds
# [RSpecRunTime] Starting example group spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb. Expected to take 5 minutes 51.14 seconds.

Ci::PipelineProcessing::AtomicProcessingService
  Pipeline Processing Service Tests With Yaml
    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build2_build1_rules_out_test_needs_build1_with_optional.yml"
      follows transitions
    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 11.83 seconds. Current RSS: ~1426M. load average: 1.22 1.57 1.26 1/288 445


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_deploy_is_delayed_and_needs_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 14.35 seconds. Current RSS: ~1446M. load average: 1.22 1.57 1.26 1/288 464


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_deploy_is_manual_and_needs_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 16.89 seconds. Current RSS: ~1457M. load average: 1.29 1.58 1.27 1/288 483


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_deploy_needs_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 19.24 seconds. Current RSS: ~1456M. load average: 1.29 1.58 1.27 1/288 502


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_deploy_needs_test_when_always.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 21.29 seconds. Current RSS: ~1461M. load average: 1.26 1.57 1.26 1/288 521


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_other_build_succeeds_deploy_needs_one_build_and_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 24.41 seconds. Current RSS: ~1462M. load average: 1.26 1.57 1.26 1/288 542


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_other_build_succeeds_deploy_needs_one_build_and_test_when_always.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 26.81 seconds. Current RSS: ~1468M. load average: 1.24 1.56 1.26 1/288 563


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_test_always.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 28.63 seconds. Current RSS: ~1473M. load average: 1.24 1.56 1.26 1/288 582


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_test_fails_with_allow_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 31.02 seconds. Current RSS: ~1475M. load average: 1.24 1.56 1.26 1/288 601


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_test_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 32.75 seconds. Current RSS: ~1475M. load average: 1.22 1.55 1.26 1/288 620


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_test_on_failure_deploy_needs_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 36.23 seconds. Current RSS: ~1479M. load average: 1.20 1.54 1.26 1/288 645


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_test_skips_rollback_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 38.75 seconds. Current RSS: ~1477M. load average: 1.20 1.54 1.26 1/288 664


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_fails_with_allow_failure_test_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 41.33 seconds. Current RSS: ~1475M. load average: 1.19 1.53 1.26 1/288 683


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_rules_out_test_needs_build_with_optional.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 43.44 seconds. Current RSS: ~1477M. load average: 1.19 1.53 1.26 1/288 700


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_succeds_test_manual_allow_failure_true_deploy_needs_both.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 46.01 seconds. Current RSS: ~1478M. load average: 1.19 1.53 1.26 1/288 719


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_succeds_test_manual_allow_failure_true_deploy_needs_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 48.84 seconds. Current RSS: ~1479M. load average: 1.17 1.52 1.26 1/288 738


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_succeeds_test_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 51.2 seconds. Current RSS: ~1480M. load average: 1.17 1.52 1.26 1/288 757


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_succeeds_test_on_failure_deploy_needs_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 53.6 seconds. Current RSS: ~1480M. load average: 1.16 1.51 1.26 1/288 776


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_test_manual_review_deploy.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 56.69 seconds. Current RSS: ~1480M. load average: 1.14 1.50 1.25 1/287 797


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_build_test_two_manual_review_test_staging_production.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 2.99 seconds. Current RSS: ~1467M. load average: 1.13 1.50 1.25 1/287 830


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_builds_succeed_test_on_failure_deploy_needs_one_build_and_test.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 5.85 seconds. Current RSS: ~1467M. load average: 1.13 1.50 1.25 1/287 849


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_builds_succeed_test_on_failure_deploy_needs_one_build_and_test_when_always.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 9.31 seconds. Current RSS: ~1463M. load average: 1.12 1.49 1.25 1/288 871


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_deploy_needs_empty.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 10.54 seconds. Current RSS: ~1463M. load average: 1.12 1.49 1.25 1/288 886


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_same_stage_with_fail_and_retry_1.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 14.27 seconds. Current RSS: ~1470M. load average: 1.19 1.50 1.26 1/288 916


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_same_stage_with_fail_and_retry_2.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 17.93 seconds. Current RSS: ~1472M. load average: 1.18 1.49 1.25 1/289 946


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_same_stage_with_subsequent_manual_jobs.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 22.06 seconds. Current RSS: ~1469M. load average: 1.16 1.48 1.25 1/289 971


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_same_stages.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 24.42 seconds. Current RSS: ~1468M. load average: 1.16 1.48 1.25 1/289 994


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_fails_with_allow_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 27.08 seconds. Current RSS: ~1469M. load average: 1.15 1.47 1.25 1/289 1015


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_false.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 30.54 seconds. Current RSS: ~1471M. load average: 1.15 1.47 1.25 1/289 1041


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_false_deploy_always.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 32.96 seconds. Current RSS: ~1470M. load average: 1.14 1.46 1.25 1/289 1062


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_false_deploy_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 35.22 seconds. Current RSS: ~1472M. load average: 1.14 1.46 1.25 1/289 1083


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_false_other_test_succeeds_deploy_needs_both.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 36.91 seconds. Current RSS: ~1473M. load average: 1.13 1.46 1.25 1/289 1100


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_true_deploy_always.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 38.1 seconds. Current RSS: ~1474M. load average: 1.13 1.46 1.25 1/289 1115


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_true_deploy_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 41.34 seconds. Current RSS: ~1474M. load average: 1.12 1.45 1.25 1/289 1136


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_true_fails.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 45.1 seconds. Current RSS: ~1475M. load average: 1.12 1.45 1.25 1/288 1162


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_true_other_test_succeeds_deploy_needs_both.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 47.08 seconds. Current RSS: ~1476M. load average: 1.11 1.44 1.25 1/288 1179


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_allow_failure_true_succeeds.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 50.85 seconds. Current RSS: ~1468M. load average: 1.11 1.44 1.25 1/285 1205


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_post_test_needs_deploy_is_stage.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 52.88 seconds. Current RSS: ~1469M. load average: 1.10 1.43 1.24 1/285 1224


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_same_and_different_stage_needs.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 55.08 seconds. Current RSS: ~1467M. load average: 1.10 1.43 1.24 1/285 1241


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_manual_same_stage_needs.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 1 minute 58.3 seconds. Current RSS: ~1470M. load average: 1.09 1.43 1.24 1/285 1262


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/dag_test_on_failure_no_needs.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 0.16 second. Current RSS: ~1473M. load average: 1.09 1.43 1.24 1/285 1279


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_cancels_test1_and_test2_have_when.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 2.37 seconds. Current RSS: ~1473M. load average: 1.08 1.42 1.24 1/285 1298


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_cancels_with_allow_failure_test1_and_test2_have_when.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 4.13 seconds. Current RSS: ~1474M. load average: 1.08 1.42 1.24 1/285 1317


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_fails.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 6.31 seconds. Current RSS: ~1469M. load average: 1.08 1.41 1.24 1/285 1336


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_fails_test_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 9.07 seconds. Current RSS: ~1471M. load average: 1.08 1.41 1.24 1/285 1359


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_fails_with_allow_failure_test_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 11.66 seconds. Current RSS: ~1472M. load average: 1.07 1.40 1.24 1/285 1380


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_succeeds_test_manual_allow_failure_true.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 13.82 seconds. Current RSS: ~1467M. load average: 1.07 1.40 1.24 1/285 1399


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_succeeds_test_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 16.64 seconds. Current RSS: ~1464M. load average: 1.14 1.41 1.24 1/285 1420


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_build_test_manual_review_deploy.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 19.33 seconds. Current RSS: ~1466M. load average: 1.14 1.41 1.24 1/284 1443


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_one_test_succeeds_one_manual_test_fails_and_retry_manual_build.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 23.18 seconds. Current RSS: ~1468M. load average: 1.13 1.41 1.24 1/284 1469


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_one_test_succeeds_one_manual_test_fails_and_retry_pipeline.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 27.48 seconds. Current RSS: ~1469M. load average: 1.12 1.40 1.24 1/284 1493


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_test_manual_allow_failure_false.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 30.96 seconds. Current RSS: ~1468M. load average: 1.12 1.40 1.24 1/284 1519


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_test_manual_allow_failure_true.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 34.3 seconds. Current RSS: ~1469M. load average: 1.11 1.39 1.24 1/284 1540


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_test_manual_allow_failure_true_deploy_always.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 35.44 seconds. Current RSS: ~1471M. load average: 1.11 1.39 1.24 1/284 1555


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_test_manual_allow_failure_true_deploy_on_failure.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 38.69 seconds. Current RSS: ~1471M. load average: 1.10 1.39 1.24 1/284 1576


    test_file_path: "/builds/gitlab-org/gitlab/spec/services/ci/pipeline_processing/test_cases/stage_test_on_failure_no_prev_stage.yml"
      follows transitions
# [RSpecRunTime] RSpec elapsed time: 2 minutes 40.63 seconds. Current RSS: ~1473M. load average: 1.10 1.39 1.24 1/284 1593


  Pipeline Processing Service
    when simple pipeline is defined
      processes a pipeline
      does not process pipeline if existing stage is running
# [RSpecRunTime] RSpec elapsed time: 2 minutes 46.23 seconds. Current RSS: ~1497M. load average: 1.16 1.39 1.24 1/285 1637


    custom stage with first job allowed to fail
      automatically triggers a next stage when build finishes
# [RSpecRunTime] RSpec elapsed time: 2 minutes 49.03 seconds. Current RSS: ~1504M. load average: 1.16 1.39 1.24 1/285 1659


    when optional manual actions are defined
      when builds are successful
        properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 2 minutes 54.14 seconds. Current RSS: ~1508M. load average: 1.15 1.38 1.24 1/286 1690


      when test job fails
        properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 2 minutes 59.44 seconds. Current RSS: ~1496M. load average: 1.13 1.38 1.24 1/286 1720


      when test and test_failure jobs fail
        properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 4.02 seconds. Current RSS: ~1503M. load average: 1.12 1.37 1.23 1/286 1750


      when deploy job fails
        properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 8.61 seconds. Current RSS: ~1509M. load average: 1.11 1.36 1.23 1/286 1780


      when build is canceled in the second stage
        does not schedule builds after build has been canceled
# [RSpecRunTime] RSpec elapsed time: 3 minutes 12.16 seconds. Current RSS: ~1514M. load average: 1.10 1.36 1.23 1/286 1804


      when listing optional manual actions
        returns only for skipped builds
# [RSpecRunTime] RSpec elapsed time: 3 minutes 16.06 seconds. Current RSS: ~1513M. load average: 1.10 1.36 1.23 1/286 1831


    when delayed jobs are defined
      when the scene is timed incremental rollout
        when builds are successful
          properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 21.68 seconds. Current RSS: ~1506M. load average: 1.16 1.36 1.23 1/287 1865


        when build job fails
          properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 24.25 seconds. Current RSS: ~1508M. load average: 1.16 1.36 1.23 1/286 1885


        when rollout 10% is unscheduled
          properly processes the pipeline
          when user plays rollout 10%
            schedules rollout100%
# [RSpecRunTime] RSpec elapsed time: 3 minutes 30.73 seconds. Current RSS: ~1521M. load average: 1.15 1.35 1.23 1/286 1934


        when rollout 10% fails
          properly processes the pipeline
          when user retries rollout 10%
            does not schedule rollout10% again
# [RSpecRunTime] RSpec elapsed time: 3 minutes 39.39 seconds. Current RSS: ~1515M. load average: 1.12 1.34 1.23 1/286 1999


        when rollout 10% is played immidiately
          properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 42.28 seconds. Current RSS: ~1515M. load average: 1.11 1.34 1.23 1/286 2021


      when only one scheduled job exists in a pipeline
        properly processes the pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 43.68 seconds. Current RSS: ~1517M. load average: 1.11 1.34 1.23 1/286 2038


      when there are two delayed jobs in a stage
        blocks the stage until all scheduled jobs finished
# [RSpecRunTime] RSpec elapsed time: 3 minutes 45.52 seconds. Current RSS: ~1527M. load average: 1.11 1.34 1.23 1/286 2057


      when a delayed job is allowed to fail
        blocks the stage and continues after it failed
# [RSpecRunTime] RSpec elapsed time: 3 minutes 48.1 seconds. Current RSS: ~1536M. load average: 1.11 1.33 1.23 1/286 2080


    when an exception is raised during a persistent ref creation
      process the pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 49.36 seconds. Current RSS: ~1538M. load average: 1.11 1.33 1.23 1/286 2098


    when there are manual action in earlier stages
      when first stage has only optional manual actions
        starts from the second stage
# [RSpecRunTime] RSpec elapsed time: 3 minutes 50.71 seconds. Current RSS: ~1546M. load average: 1.11 1.33 1.23 1/286 2113


      when second stage has only optional manual actions
        skips second stage and continues on third stage
# [RSpecRunTime] RSpec elapsed time: 3 minutes 53.04 seconds. Current RSS: ~1548M. load average: 1.18 1.34 1.23 1/286 2132


    when there are only manual actions in stages
      processes all jobs until blocking actions encountered
# [RSpecRunTime] RSpec elapsed time: 3 minutes 54.61 seconds. Current RSS: ~1548M. load average: 1.18 1.34 1.23 1/286 2150


    when there is only one manual action
      skips the pipeline
      when the action was played
        queues the action and pipeline
# [RSpecRunTime] RSpec elapsed time: 3 minutes 58.04 seconds. Current RSS: ~1546M. load average: 1.24 1.35 1.24 1/286 2187


    when blocking manual actions are defined
      when first stage succeeds
        blocks pipeline on stage with first manual action
# [RSpecRunTime] RSpec elapsed time: 4 minutes 0.53 second. Current RSS: ~1537M. load average: 1.24 1.35 1.24 1/286 2207


      when first stage fails
        does not take blocking action into account
# [RSpecRunTime] RSpec elapsed time: 4 minutes 3.95 seconds. Current RSS: ~1539M. load average: 1.22 1.35 1.23 1/286 2229


      when pipeline is promoted sequentially up to the end
        properly processes entire pipeline
# [RSpecRunTime] RSpec elapsed time: 4 minutes 10.82 seconds. Current RSS: ~1508M. load average: 1.21 1.34 1.23 1/286 2267


    when second stage has only on_failure jobs
      skips second stage and continues on third stage
# [RSpecRunTime] RSpec elapsed time: 4 minutes 13.05 seconds. Current RSS: ~1509M. load average: 1.19 1.34 1.23 1/286 2286


    when failed build in the middle stage is retried
      when failed build is the only unsuccessful build in the stage
        does trigger builds in the next stage
# [RSpecRunTime] RSpec elapsed time: 4 minutes 19.05 seconds. Current RSS: ~1507M. load average: 1.17 1.33 1.23 2/286 2332


    when builds with auto-retries are configured
      automatically retries builds in a valid order
# [RSpecRunTime] RSpec elapsed time: 4 minutes 22.95 seconds. Current RSS: ~1504M. load average: 1.16 1.32 1.23 1/287 2362


    when pipeline with needs is created
      when linux:* finishes first it runs it out of order
      when one of the jobs is run on a failure
        when another job in build phase fails first
          does skip linux:notify
# [RSpecRunTime] RSpec elapsed time: 4 minutes 32.0 seconds. Current RSS: ~1502M. load average: 1.13 1.31 1.23 1/286 2417


        when linux:build job fails first
          does run linux:notify
# [RSpecRunTime] RSpec elapsed time: 4 minutes 34.77 seconds. Current RSS: ~1509M. load average: 1.13 1.31 1.23 1/287 2437


      when there is a job scheduled with dag but no need (needs: [])
        runs deploy_pages without waiting prior stages
# [RSpecRunTime] RSpec elapsed time: 4 minutes 40.82 seconds. Current RSS: ~1509M. load average: 1.12 1.31 1.22 1/287 2472


    when a needed job is skipped
      skips the jobs depending on it
# [RSpecRunTime] RSpec elapsed time: 4 minutes 43.57 seconds. Current RSS: ~1512M. load average: 1.11 1.30 1.22 1/287 2492


    when a needed job is manual
      makes deploy DAG to be skipped
# [RSpecRunTime] RSpec elapsed time: 4 minutes 45.36 seconds. Current RSS: ~1517M. load average: 1.11 1.30 1.22 1/287 2510


    when jobs change from stopped to alive status during pipeline processing
      runs ResetSkippedJobsService on the new alive jobs and logs event (FAILED - 1)
      logs event
      when the new alive jobs belong to different users
        runs ResetSkippedJobsService on the new alive jobs
        assigns the correct user to the dependent jobs
        logs event
# [RSpecRunTime] RSpec elapsed time: 4 minutes 56.94 seconds. Current RSS: ~1505M. load average: 1.09 1.29 1.22 1/287 2623


    when a bridge job has parallel:matrix config
      creates pipeline with bridges, then passes the matrix variables to downstream jobs
# [RSpecRunTime] RSpec elapsed time: 5 minutes 3.53 seconds. Current RSS: ~1508M. load average: 1.08 1.28 1.22 3/287 2740


    when a bridge job has invalid downstream project
      creates a pipeline, then fails the bridge job
# [RSpecRunTime] RSpec elapsed time: 5 minutes 7.03 seconds. Current RSS: ~1505M. load average: 1.07 1.28 1.22 1/287 2771


    when the dependency is stage-independent
      processes subsequent jobs in the correct order when playing first job
# [RSpecRunTime] RSpec elapsed time: 5 minutes 10.36 seconds. Current RSS: ~1502M. load average: 1.07 1.28 1.22 1/287 2804


    when the exclusive lease is taken
      skips pipeline processing
    deployments creation
      creates deployment records for the deploy jobs
# [RSpecRunTime] RSpec elapsed time: 5 minutes 16.95 seconds. Current RSS: ~1504M. load average: 1.14 1.28 1.22 1/287 2886



# [RSpecRunTime] Finishing example group spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb. It took 5 minutes 14.94 seconds. Expected to take 5 minutes 51.14 seconds.
# [RSpecRunTime] RSpec elapsed time: 5 minutes 18.12 seconds. Current RSS: ~1497M. load average: 1.14 1.28 1.22 1/287 2887


# [RSpecRunTime] Starting example group spec/tasks/gitlab/workhorse_rake_spec.rb. Expected to take 2 minutes 15.94 seconds.

gitlab:workhorse namespace rake task
  install
    clones the origin and creates a gitlab-workhorse binary
    no dir given
      aborts and display a help message
# [RSpecRunTime] RSpec elapsed time: 7 minutes 14.47 seconds. Current RSS: ~1488M. load average: 2.47 1.74 1.39 1/287 7685


    when an underlying Git command fails
      aborts and display a help message

# [RSpecRunTime] Finishing example group spec/tasks/gitlab/workhorse_rake_spec.rb. It took 1 minute 59.37 seconds. Expected to take 2 minutes 15.94 seconds.
# [RSpecRunTime] RSpec elapsed time: 7 minutes 17.53 seconds. Current RSS: ~1496M. load average: 2.35 1.73 1.39 1/284 7686


# [RSpecRunTime] Starting example group spec/models/event_spec.rb. Expected to take 1 minute 33.94 seconds.

Event
  does not allow STI
  Associations
    is expected to belong to project required: false
    is expected to belong to target required: false
  Respond to
    is expected to respond to #author_name
    is expected to respond to #author_email
    is expected to respond to #issue_title
    is expected to respond to #merge_request_title
    is expected to respond to #design_title
  Callbacks
    after_create :reset_project_activity
      calls the reset_project_activity method
    after_create :set_last_repository_updated_at
      with a push event
        updates the project last_repository_updated_at
        calls the reset_project_activity method
      without a push event
        does not update the project last_repository_updated_at
    #set_last_repository_updated_at
      only updates once every Event::REPOSITORY_UPDATED_AT_INTERVAL minutes
  validations
    action
      for a design
        action: "created", valid: true
          is expected to eq true
        action: "updated", valid: true
          is expected to eq true
        action: "closed", valid: false
          is expected to eq false
        action: "reopened", valid: false
          is expected to eq false
        action: "pushed", valid: false
          is expected to eq false
        action: "commented", valid: false
          is expected to eq false
        action: "merged", valid: false
          is expected to eq false
        action: "joined", valid: false
          is expected to eq false
        action: "left", valid: false
          is expected to eq false
        action: "destroyed", valid: true
          is expected to eq true
        action: "expired", valid: false
          is expected to eq false
        action: "approved", valid: false
          is expected to eq false
  scopes
    .for_issue
      returns events for Issue and WorkItem target_type
# [RSpecRunTime] RSpec elapsed time: 7 minutes 24.26 seconds. Current RSS: ~1530M. load average: 2.24 1.72 1.39 1/284 7687


    .for_merge_request
      returns events for MergeRequest target_type
# [RSpecRunTime] RSpec elapsed time: 7 minutes 26.61 seconds. Current RSS: ~1547M. load average: 2.14 1.70 1.39 1/290 7728


    .created_at
      can find the right event
    .created_between
      returns events created between given timestamps
# [RSpecRunTime] RSpec elapsed time: 7 minutes 29.31 seconds. Current RSS: ~1522M. load average: 2.14 1.70 1.39 1/289 7729


    .for_fingerprint
      returns none if there is no fingerprint
      returns none if there is no match
      can find a given event
    .contributions
      returns events for MergeRequest, Issue, WorkItem and push, comment events
# [RSpecRunTime] RSpec elapsed time: 7 minutes 37.43 seconds. Current RSS: ~1525M. load average: 1.97 1.68 1.38 2/290 7887


  #fingerprint
    is unique scoped to target
  Push event
    is expected to eq #<User id:94 @namespace77>
  #target_title
    for an issue
      delegates to issue title
    for a wiki page
      delegates to wiki page title
  #membership_changed?
    created
      is expected to be falsey
    updated
      is expected to be falsey
    expired
      is expected to be truthy
    left
      is expected to be truthy
    joined
      is expected to be truthy
  #note?
    issue note event
      is expected to be note
    merge request diff note event
      is expected to be note
# [RSpecRunTime] RSpec elapsed time: 7 minutes 42.62 seconds. Current RSS: ~1540M. load average: 1.89 1.67 1.38 1/290 7957


  #visible_to_user?
    commit note event
      has the correct visibility
      private project
        when admin mode enabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 7 minutes 46.23 seconds. Current RSS: ~1530M. load average: 1.89 1.67 1.38 1/289 7974


        when admin mode disabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 7 minutes 47.31 seconds. Current RSS: ~1539M. load average: 1.82 1.66 1.38 1/289 7983


    issue event
      for non confidential issues
        has the correct visibility
        is expected to eq true
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 7 minutes 48.73 seconds. Current RSS: ~1541M. load average: 1.82 1.66 1.38 1/289 7984


      for confidential issues
        has the correct visibility
        is expected to eq true
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 7 minutes 50.4 seconds. Current RSS: ~1532M. load average: 1.82 1.66 1.38 1/289 7985


    work item event
      for non confidential work item
        has the correct visibility
        is expected to eq true
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 7 minutes 51.81 seconds. Current RSS: ~1521M. load average: 1.75 1.65 1.37 1/289 7986


      for confidential work item
        has the correct visibility
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 7 minutes 52.87 seconds. Current RSS: ~1519M. load average: 1.75 1.65 1.37 1/287 7987


    issue note event
      on non confidential issues
        has the correct visibility
        is expected to eq true
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 7 minutes 54.87 seconds. Current RSS: ~1518M. load average: 1.75 1.65 1.37 1/287 7988


      on confidential issues
        has the correct visibility
        is expected to eq true
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 7 minutes 56.55 seconds. Current RSS: ~1513M. load average: 1.77 1.65 1.38 1/286 7989


      confidential note
        has the correct visibility
      private project
        is expected to eq false
        is expected to eq false
        when admin mode enabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 7 minutes 59.04 seconds. Current RSS: ~1513M. load average: 1.77 1.65 1.38 1/284 7990


        when admin mode disabled
          has the correct visibility
    merge request diff note event
      public project
        has the correct visibility
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 8 minutes 1.1 seconds. Current RSS: ~1513M. load average: 1.77 1.65 1.38 1/284 7991


      private project
        is expected to eq false
        when admin mode enabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 2.48 seconds. Current RSS: ~1513M. load average: 1.71 1.64 1.38 1/284 7992


        when admin mode disabled
          has the correct visibility
    milestone event
      has the correct visibility
      on public project with private issue tracker and merge requests
        when admin mode enabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 4.61 seconds. Current RSS: ~1513M. load average: 1.71 1.64 1.38 1/284 7993


        when admin mode disabled
          has the correct visibility
      on private project
        when admin mode enabled
          has the correct visibility
        when admin mode disabled
          has the correct visibility
    wiki-page event
      on private project
        when admin mode enabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 8.58 seconds. Current RSS: ~1504M. load average: 1.65 1.63 1.37 1/286 8027


        when admin mode disabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 9.82 seconds. Current RSS: ~1495M. load average: 1.65 1.63 1.37 1/288 8061


      wiki-page event on public project
        has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 11.08 seconds. Current RSS: ~1495M. load average: 1.65 1.63 1.37 1/289 8095


    project snippet note event
      has the correct visibility
      on public project with private snippets
        is expected to eq false
        when admin mode enabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 13.78 seconds. Current RSS: ~1494M. load average: 1.60 1.62 1.37 1/289 8096


        when admin mode disabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 14.78 seconds. Current RSS: ~1496M. load average: 1.60 1.62 1.37 1/289 8097


      on private project
        is expected to eq false
        when admin mode enabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 16.81 seconds. Current RSS: ~1497M. load average: 1.47 1.59 1.36 1/289 8098


        when admin mode disabled
          has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 18.02 seconds. Current RSS: ~1497M. load average: 1.47 1.59 1.36 1/289 8099


    personal snippet note event
      has the correct visibility
      is expected to eq true
      on internal snippet
        has the correct visibility
# [RSpecRunTime] RSpec elapsed time: 8 minutes 19.46 seconds. Current RSS: ~1501M. load average: 1.47 1.59 1.36 1/288 8100


      on private snippet
        is expected to eq true
        when admin mode enabled
          has the correct visibility
        when admin mode disabled
          has the correct visibility
    design note event
      has the correct visibility
      is expected to eq true
      is expected to eq true
      the event refers to a design on a confidential issue
        has the correct visibility
        is expected to eq true
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 8 minutes 24.59 seconds. Current RSS: ~1496M. load average: 1.51 1.60 1.37 1/284 8101


    design event
      has the correct visibility
      is expected to eq true
      is expected to eq true
      the event refers to a design on a confidential issue
        has the correct visibility
        is expected to eq true
        is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 8 minutes 27.75 seconds. Current RSS: ~1499M. load average: 1.47 1.59 1.36 1/284 8102


  wiki_page predicate scopes
    .for_design
      only includes design events
# [RSpecRunTime] RSpec elapsed time: 8 minutes 32.14 seconds. Current RSS: ~1494M. load average: 1.43 1.58 1.36 1/288 8171


    .for_wiki_page
      only contains the wiki page events
    .for_wiki_meta
      finds events for a given wiki page metadata object
  categorization
    passes a sanity check
    #wiki_page and #wiki_page?
      for a wiki page event
        is expected to have attributes {:wiki_page => #<WikiPage:0x00007de34469a640 @wiki=#<ProjectWiki id:94 >, @page=#<Gitlab::Git::WikiPage...0ba3ae08bc e66f21b5b4a2574143af91a26ed1960ba3ae08bc>, @format=:markdown>>, :wiki_page? => (be truthy)}
        title is empty
          is expected to have attributes {:wiki_page => nil, :wiki_page? => (be truthy)}
# [RSpecRunTime] RSpec elapsed time: 8 minutes 34.02 seconds. Current RSS: ~1498M. load average: 1.43 1.58 1.36 1/289 8243


      for any other event
        has no wiki_page and is not a wiki_page
    #design and #design?
      for a design event
        is expected to have attributes {:design => #<DesignManagement::Design id: namespace113/project-113#/designs[homescreen-31.jpg]>, :design? => (be truthy)}
      for any other event
        has no design and is not a design
  .limit_recent
    without an explicit limit
      is expected to eq [#<Event project_id: 96, author_id: 147, created_at: "2024-03-26 11:32:43.994873869 +0000", updated_a...", action: "closed", target_type: "Issue", group_id: nil, fingerprint: nil, id: 175, target_id: 51>]
# [RSpecRunTime] RSpec elapsed time: 8 minutes 35.85 seconds. Current RSS: ~1506M. load average: 1.43 1.58 1.36 1/289 8244


    with an explicit limit
      is expected to eq [#<Event project_id: 98, author_id: 151, created_at: "2024-03-26 11:32:45.472582924 +0000", updated_a...", action: "closed", target_type: "Issue", group_id: nil, fingerprint: nil, id: 178, target_id: 54>]
# [RSpecRunTime] RSpec elapsed time: 8 minutes 37.32 seconds. Current RSS: ~1498M. load average: 1.40 1.57 1.36 1/289 8245


  #reset_project_activity
    when a project was updated less than 1 hour ago
      does not update the project
    when a project was updated more than 1 hour ago
      updates the project
      deletes the redis key for if the project was inactive
# [RSpecRunTime] RSpec elapsed time: 8 minutes 39.17 seconds. Current RSS: ~1497M. load average: 1.40 1.57 1.36 1/289 8246


  #authored_by?
    returns true when the event author and user are the same
    returns false when passing nil as an argument
    returns false when the given user is not the author of the event
  #body?
    returns true for a push event with commits
    returns false for a push event without a valid commit range
    returns true for a Note event
    returns true if the target responds to #title
    returns false for a regular event without a target
  #target
    eager loads the author of an event target
  with snippet note
    #snippet_note?
      returns true for a project snippet event
      returns true for a personal snippet event
      returns false for a other kinds of event
# [RSpecRunTime] RSpec elapsed time: 8 minutes 42.54 seconds. Current RSS: ~1510M. load average: 1.45 1.58 1.36 1/289 8247


    #personal_snippet_note?
      returns false for a project snippet event
      returns true for a personal snippet event
      returns false for a other kinds of event
    #project_snippet_note?
      returns true for a project snippet event
      returns false for a personal snippet event
      returns false for a other kinds of event
  #action_name
    handles all valid design events
    handles correct push_action
    handles correct base actions
      trait: :created, action_name: "created"
        with correct name and method
# [RSpecRunTime] RSpec elapsed time: 8 minutes 44.41 seconds. Current RSS: ~1503M. load average: 1.45 1.58 1.36 1/284 8248


      trait: :updated, action_name: "opened"
        with correct name and method
      trait: :closed, action_name: "closed"
        with correct name and method
      trait: :reopened, action_name: "opened"
        with correct name and method
      trait: :commented, action_name: "commented on"
        with correct name and method
      trait: :merged, action_name: "accepted"
        with correct name and method
      trait: :joined, action_name: "joined"
        with correct name and method
      trait: :left, action_name: "left"
        with correct name and method
      trait: :destroyed, action_name: "destroyed"
        with correct name and method
      trait: :expired, action_name: "removed due to membership expiration from"
        with correct name and method
      trait: :approved, action_name: "approved"
        with correct name and method
    for created_project_action?
      returns created for created event
      returns imported for imported event
  #has_no_project_and_group
    with project event
      returns false when the event has project
      returns true when the event has no project
    with group event
      returns false when the event has group
      returns true when the event has no group
  with loose foreign key on events.author_id
    behaves like cleanup by a loose foreign key
      cleans up (delete or nullify) the model
# [RSpecRunTime] RSpec elapsed time: 8 minutes 48.65 seconds. Current RSS: ~1506M. load average: 1.49 1.58 1.37 1/284 8249



# [RSpecRunTime] Finishing example group spec/models/event_spec.rb. It took 1 minute 31.26 seconds. Expected to take 1 minute 33.94 seconds.
# [RSpecRunTime] Starting example group spec/services/merge_requests/mergeability_check_service_spec.rb. Expected to take 1 minute 9.94 seconds.

MergeRequests::MergeabilityCheckService
  #async_execute
    updates merge status to checking
    enqueues MergeRequestMergeabilityCheckWorker
    when read-only DB
      does not enqueue MergeRequestMergeabilityCheckWorker
# [RSpecRunTime] RSpec elapsed time: 8 minutes 52.44 seconds. Current RSS: ~1516M. load average: 1.45 1.57 1.37 1/290 8368


  #execute
    behaves like mergeable merge request
      updates or keeps merge status as can_be_merged
      reloads merge head diff
      update diff discussion positions
      updates the merge ref
      returns ServiceResponse.success
      ServiceResponse has merge_ref_head payload
# [RSpecRunTime] RSpec elapsed time: 9 minutes 1.82 seconds. Current RSS: ~1526M. load average: 1.46 1.57 1.37 1/291 8857


    when concurrent calls
      waits first lock and returns "cached" result in subsequent calls
      writes the merge-ref once
      resets one merge request upon execution
      when retry_lease flag is false
        the first call succeeds, subsequent concurrent calls get a lock error response
# [RSpecRunTime] RSpec elapsed time: 9 minutes 12.6 seconds. Current RSS: ~1514M. load average: 1.47 1.57 1.37 1/292 9144


    when broken
      returns ServiceResponse.error
      behaves like unmergeable merge request
        updates or keeps merge status as cannot_be_merged
        does not change the merge ref HEAD
        returns ServiceResponse.error
# [RSpecRunTime] RSpec elapsed time: 9 minutes 17.73 seconds. Current RSS: ~1530M. load average: 1.51 1.58 1.37 1/290 9337


    when it cannot be merged on git
      returns ServiceResponse.error and keeps merge status as cannot_be_merged
# [RSpecRunTime] RSpec elapsed time: 9 minutes 19.34 seconds. Current RSS: ~1538M. load average: 1.51 1.58 1.37 1/290 9391


    when MR cannot be merged and has no merge ref
      returns ServiceResponse.error
      behaves like unmergeable merge request
        updates or keeps merge status as cannot_be_merged
        does not change the merge ref HEAD
        returns ServiceResponse.error
# [RSpecRunTime] RSpec elapsed time: 9 minutes 24.75 seconds. Current RSS: ~1537M. load average: 1.47 1.57 1.37 1/290 9584


    when MR cannot be merged and has outdated merge ref
      returns ServiceResponse.error
      behaves like unmergeable merge request
        updates or keeps merge status as cannot_be_merged
        does not change the merge ref HEAD
        returns ServiceResponse.error
# [RSpecRunTime] RSpec elapsed time: 9 minutes 30.22 seconds. Current RSS: ~1539M. load average: 1.43 1.56 1.37 1/290 9817


    when merge request is not given
      returns ServiceResponse.error
# [RSpecRunTime] RSpec elapsed time: 9 minutes 31.62 seconds. Current RSS: ~1538M. load average: 1.40 1.55 1.36 1/290 9857


    when read-only DB
      returns ServiceResponse.error
# [RSpecRunTime] RSpec elapsed time: 9 minutes 32.91 seconds. Current RSS: ~1543M. load average: 1.40 1.55 1.36 1/290 9897


    when fails to update the merge-ref
      does not reload merge head diff
      returns ServiceResponse.error
      behaves like unmergeable merge request
        updates or keeps merge status as cannot_be_merged
        does not change the merge ref HEAD
        returns ServiceResponse.error
# [RSpecRunTime] RSpec elapsed time: 9 minutes 39.55 seconds. Current RSS: ~1542M. load average: 1.61 1.59 1.38 1/290 10137


    recheck enforced
      when MR is marked as mergeable, but repo is not mergeable and MR is not opened
        returns ServiceResponse.error
        does not change the merge status
# [RSpecRunTime] RSpec elapsed time: 9 minutes 42.19 seconds. Current RSS: ~1535M. load average: 1.56 1.58 1.38 1/290 10220


      when MR is mergeable but merge-ref does not exists
        behaves like mergeable merge request
          updates or keeps merge status as can_be_merged
          reloads merge head diff
          update diff discussion positions
          updates the merge ref
          returns ServiceResponse.success
          ServiceResponse has merge_ref_head payload
# [RSpecRunTime] RSpec elapsed time: 9 minutes 51.85 seconds. Current RSS: ~1531M. load average: 1.47 1.56 1.37 1/290 10721


      when MR is mergeable but merge-ref is already updated
        returns ServiceResponse.success
        does not recreate the merge-ref
        does not reload merge head diff
# [RSpecRunTime] RSpec elapsed time: 9 minutes 56.07 seconds. Current RSS: ~1530M. load average: 1.47 1.56 1.37 1/290 10893



# [RSpecRunTime] Finishing example group spec/services/merge_requests/mergeability_check_service_spec.rb. It took 1 minute 7.47 seconds. Expected to take 1 minute 9.94 seconds.
# [RSpecRunTime] Starting example group spec/models/ci/bridge_spec.rb. Expected to take 1 minute 1.86 seconds.

Ci::Bridge
  does not allow STI
  has one sourced pipeline
  has one downstream pipeline
  behaves like has ID tokens
    delegations
      is expected to delegate #id_tokens to the #metadata object, allowing #metadata to return nil
# [RSpecRunTime] RSpec elapsed time: 9 minutes 58.25 seconds. Current RSS: ~1532M. load average: 1.43 1.55 1.37 1/290 10901


    #id_tokens?
      without metadata
        is expected to be falsy
      with metadata
        when ID tokens exist
          is expected to be truthy
        when ID tokens do not exist
          is expected to be falsy
    #id_tokens=
      assigns the ID tokens to the CI job
  behaves like a retryable job
    #enqueue_immediately?
      defaults to false
    #set_enqueue_immediately!
      changes #enqueue_immediately? to true
  behaves like a deployable job
    is expected to have one deployment
    #has_outdated_deployment?
      when job has no environment
        is expected to be falsey
      when deployment is not persisted
        returns false to ignore the Build and not take any Deployment-related action
      when project has forward deployment disabled
        is expected to be falsey
      when job is not an outdated deployment
        is expected to be falsey
      when job is older than the latest deployment and still pending status
        is expected to be truthy
      when job is older than the latest deployment but succeeded once
        returns false for allowing rollback
        when forward_deployment_rollback_allowed option is disabled
          returns true for disallowing rollback
    state transition as a deployable
      has deployments record with created status
      when transits to running
        transits deployment status to running
        behaves like avoid deadlock
          executes UPDATE in the right order
        when deployment is already running state
          does not change deployment status and tracks an error
      when transits to success
        transits deployment status to success
        behaves like avoid deadlock
          executes UPDATE in the right order
        behaves like calling proper BuildFinishedWorker
          calls Ci::BuildFinishedWorker (PENDING: No reason given)
      when transits to failed
        transits deployment status to failed
        behaves like avoid deadlock
          executes UPDATE in the right order
        behaves like calling proper BuildFinishedWorker
          calls Ci::BuildFinishedWorker (PENDING: No reason given)
      when transits to skipped
        transits deployment status to skipped
        behaves like avoid deadlock
          executes UPDATE in the right order
      when transits to canceled
        transits deployment status to canceled
        behaves like avoid deadlock
          executes UPDATE in the right order
        behaves like calling proper BuildFinishedWorker
          calls Ci::BuildFinishedWorker (PENDING: No reason given)
      when transits from skipped to created to running
        during skipped to created
          transitions to created
        during created to running
          transitions to running and calls webhook
    #on_stop
      when a job has a specification that it can be stopped from the other job
        returns the other job name
      when a job does not have environment information
        returns nil
    #environment_tier_from_options
      is expected to eq "production"
      when options does not include deployment_tier
        is expected to be nil
    #environment_tier
      is expected to eq "production"
      when options does not include deployment_tier
        uses tier from environment
        when persisted environment is absent
          is expected to be nil
    #environment_url
      is expected to eq "http://prd.example.com/$CI_JOB_NAME"
      when options does not include url
        fetches from the persisted environment
        when persisted environment is absent
          is expected to be nil
    #environment_slug
      is expected to eq "review-master-8dyme2"
      when persisted environment is absent
        is expected to be nil
    environment
      #has_environment_keyword?
        when environment is defined
          is expected to be truthy
        when environment is not defined
          is expected to be falsey
      #expanded_environment_name
        when environment uses $CI_COMMIT_REF_NAME
          is expected to eq "review/master"
        when environment uses yaml_variables containing symbol keys
          returns an expanded environment name with a list of variables
          when job metadata has already persisted the expanded environment name
            returns a persisted expanded environment name without a list of variables
        when using persisted variables
          is expected to eq "review/x"
        when environment name uses a nested variable
          is expected to eq "review/master"
      #expanded_kubernetes_namespace
        environment and namespace are not set
          is expected to be nil
        environment is specified
          namespace is not set
            is expected to be nil
          namespace is provided
            with a static value
              is expected to eq "production"
            with a dynamic value
              is expected to eq "deploy-master"
      #deployment_job?
        when environment is defined
          no action is defined
            is expected to be truthy
          and start action is defined
            is expected to be truthy
        when environment is not defined
          is expected to be falsey
      #stops_environment?
        when environment is defined
          no action is defined
            is expected to be falsey
          and stop action is defined
            is expected to be truthy
        when environment is not defined
          is expected to be falsey
    #persisted_environment
      when referenced literally
        is expected to eq #<Environment id: 35, project_id: 152, name: "foo-master", created_at: "2024-03-26 11:34:19.725576879...", merge_request_id: nil, cluster_agent_id: nil, kubernetes_namespace: nil, flux_resource_path: nil>
      when referenced with a variable
        is expected to eq #<Environment id: 36, project_id: 152, name: "foo-master", created_at: "2024-03-26 11:34:19.861243460...", merge_request_id: nil, cluster_agent_id: nil, kubernetes_namespace: nil, flux_resource_path: nil>
      when there is no environment
        is expected to be nil
      when job has a stop environment
        expands environment name
    #deployment_status
      when job is a last deployment
        is expected to eq :last
      when there is a newer job with deployment
        is expected to eq :out_of_date
      when job with deployment has failed
        is expected to eq :failed
      when job with deployment is running
        is expected to eq :creating
  no-op methods for compatibility with Ci::Build
    returns an empty array job_artifacts
    return nil for artifacts_expire_at
    return nil for runner
    returns an empty TagList for tag_list
  #retryable?
    returns true
  when there is a pipeline loop detected
    returns false
  when the pipeline depth has reached the max descendents
    returns false
  #tags
    only has a bridge tag
  #detailed_status
    returns detailed status object
  #scoped_variables
    returns a hash representing variables
    when bridge has dependency which has dotenv variable
      includes inherited variable
  state machine transitions
    when bridge points towards downstream
      schedules downstream pipeline creation when the status is created
      schedules downstream pipeline creation when the status is manual
      schedules downstream pipeline creation when the status is waiting for resource
      raises error when the status is failed
  #inherit_status_from_downstream!
    when status is not supported
      when status is created
        returns false
        does not change the bridge status
      when status is waiting_for_resource
        returns false
        does not change the bridge status
      when status is preparing
        returns false
        does not change the bridge status
      when status is waiting_for_callback
        returns false
        does not change the bridge status
      when status is pending
        returns false
        does not change the bridge status
      when status is running
        returns false
        does not change the bridge status
      when status is canceling
        returns false
        does not change the bridge status
      when status is manual
        returns false
        does not change the bridge status
      when status is scheduled
        returns false
        does not change the bridge status
    when status is supported
      downstream_status: "success", upstream_status: "success"
        inherits the downstream status
      downstream_status: "canceled", upstream_status: "canceled"
        inherits the downstream status
      downstream_status: "failed", upstream_status: "failed"
        inherits the downstream status
      downstream_status: "skipped", upstream_status: "failed"
        inherits the downstream status
  #dependent?
    when bridge has strategy depend
      is expected to equal true
    when bridge does not have strategy depend
      is expected to equal false
  #yaml_variables
    returns YAML variables
  #downstream_variables
    returns variables that are going to be passed downstream
    when using variables interpolation
      correctly expands variables with interpolation
    when using variables interpolation on file variables
      does not expand file variable and forwards the file variable
      and feature flag is disabled
        expands the file variable
    when recursive interpolation has been used
      does not expand variable recursively
    forward variables
      yaml_variables: nil, pipeline_variables: nil, variables: ["BRIDGE"]
        returns variables according to the forward value
      yaml_variables: nil, pipeline_variables: false, variables: ["BRIDGE"]
        returns variables according to the forward value
      yaml_variables: nil, pipeline_variables: true, variables: ["BRIDGE", "PVAR1"]
        returns variables according to the forward value
      yaml_variables: false, pipeline_variables: nil, variables: []
        returns variables according to the forward value
      yaml_variables: false, pipeline_variables: false, variables: []
        returns variables according to the forward value
      yaml_variables: false, pipeline_variables: true, variables: ["PVAR1"]
        returns variables according to the forward value
      yaml_variables: true, pipeline_variables: nil, variables: ["BRIDGE"]
        returns variables according to the forward value
      yaml_variables: true, pipeline_variables: false, variables: ["BRIDGE"]
        returns variables according to the forward value
      yaml_variables: true, pipeline_variables: true, variables: ["BRIDGE", "PVAR1"]
        returns variables according to the forward value
      when sending a variable via both yaml and pipeline
        uses the pipeline variable
      when sending a file variable from pipeline variable
        forwards the pipeline file variable
      when a pipeline variable interpolates a scoped file variable
        does not expand the scoped file variable and forwards the file variable
        and feature flag is disabled
          expands the file variable
      when the pipeline runs from a pipeline schedule
        adds the schedule variable
    when sending a file variable from pipeline schedule
      forwards the schedule file variable
    when a pipeline schedule variable interpolates a scoped file variable
      does not expand the scoped file variable and forwards the file variable
      and feature flag is disabled
        expands the file variable
# [RSpecRunTime] RSpec elapsed time: 10 minutes 35.46 seconds. Current RSS: ~1489M. load average: 1.17 1.47 1.35 1/289 11226


    when using raw variables
      expands variables according to their raw attributes
    variables expansion
      when they are protected
        and downstream project group is different from bridge group
          behaves like does not expand project and group variables downstream
            behaves like does not expand variables from a project downstream
              is expected not to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
# [RSpecRunTime] RSpec elapsed time: 10 minutes 37.6 seconds. Current RSS: ~1484M. load average: 1.24 1.48 1.35 1/289 11241


            behaves like does not expand variables from a group downstream
              is expected not to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and there is no downstream project
          behaves like expands project and group variables downstream
            behaves like expands variables from a project downstream
              is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like expands variables from a group downstream
              is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and downstream project equals bridge project
          behaves like expands project and group variables downstream
            behaves like expands variables from a project downstream
              is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like expands variables from a group downstream
              is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and downstream project group is equal to bridge project group
          behaves like expands variables from a group downstream
            is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like does not expand variables from a project downstream
            is expected not to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and downstream project has no group
          behaves like does not expand project and group variables downstream
            behaves like does not expand variables from a project downstream
              is expected not to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like does not expand variables from a group downstream
              is expected not to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
      when they are not protected
        and downstream project group is different from bridge group
          behaves like expands project and group variables downstream
            behaves like expands variables from a project downstream
              is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like expands variables from a group downstream
              is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and there is no downstream project
          behaves like expands project and group variables downstream
            behaves like expands variables from a project downstream
              is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like expands variables from a group downstream
              is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and downstream project equals bridge project
          behaves like expands project and group variables downstream
            behaves like expands variables from a project downstream
              is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like expands variables from a group downstream
              is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and downstream project group is equal to bridge project group
          behaves like expands project and group variables downstream
            behaves like expands variables from a project downstream
              is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like expands variables from a group downstream
              is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
        and downstream project has no group
          behaves like expands project and group variables downstream
            behaves like expands variables from a project downstream
              is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
            behaves like expands variables from a group downstream
              is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
          behaves like feature flag is disabled
            behaves like expands project and group variables downstream
              behaves like expands variables from a project downstream
                is expected to include {:key => "EXPANDED_PROJECT_VAR6", :value => "project value6 this is a secret"}
              behaves like expands variables from a group downstream
                is expected to include {:key => "EXPANDED_GROUP_VAR6", :value => "group value6 this is a secret"}
  #variables
    returns bridge scoped variables and pipeline persisted variables
  #pipeline_variables
    returns the pipeline variables
  #pipeline_schedule_variables
    when pipeline is on a schedule
      returns the pipeline schedule variables
    when pipeline is not on a schedule
      returns empty array
  #forward_yaml_variables?
    forward: true, result: true
      is expected to eq true
    forward: false, result: false
      is expected to eq false
    forward: nil, result: true
      is expected to eq true
  #forward_pipeline_variables?
    forward: true, result: true
      is expected to eq true
    forward: false, result: false
      is expected to eq false
    forward: nil, result: false
      is expected to eq false
  metadata support
    reads YAML variables from metadata
    reads options from metadata
  #triggers_child_pipeline?
    when bridge defines a downstream YAML
      is expected to be truthy
    when bridge does not define a downstream YAML
      is expected to be falsey
  #yaml_for_downstream
    when bridge defines a downstream YAML
      is expected to eq "---\ninclude: path/to/child.yml\n"
    when bridge does not define a downstream YAML
      is expected to be nil
  #downstream_project_path
    when trigger is defined
      when using variable expansion
        correctly expands variables
  #target_ref
    when trigger is defined
      returns a ref name
      when using variable expansion
        correctly expands variables
    when trigger does not have project defined
      returns nil
  #play
    enqueues the bridge
# [RSpecRunTime] RSpec elapsed time: 10 minutes 56.57 seconds. Current RSS: ~1502M. load average: 1.17 1.45 1.34 1/289 11398


  #playable?
    when bridge is a manual action
      is expected to be truthy
    when build is not a manual action
      is expected to be falsey
  #action?
    when bridge is a manual action
      is expected to be truthy
    when build is not a manual action
      is expected to be falsey
  #dependency_variables
    when downloading from previous stages
      inherits only dependent variables
    when using needs
      inherits only needs with artifacts variables
  metadata partitioning
    creates the metadata record and assigns its partition
  #deployment_job?
    is expected to eq false

# [RSpecRunTime] Finishing example group spec/models/ci/bridge_spec.rb. It took 1 minute 1.7 seconds. Expected to take 1 minute 1.86 seconds.
# [RSpecRunTime] Starting example group spec/models/integration_spec.rb. Expected to take 49.11 seconds.

Integration
  does not allow STI
  associations
    is expected to belong to project required: false inverse_of => integrations
    is expected to belong to group required: false inverse_of => integrations
    is expected to have one issue_tracker_data class_name => Integrations::IssueTrackerData inverse_of => integration
    is expected to have one jira_tracker_data class_name => Integrations::JiraTrackerData inverse_of => integration
# [RSpecRunTime] RSpec elapsed time: 10 minutes 59.08 seconds. Current RSS: ~1498M. load average: 1.17 1.45 1.34 1/289 11400


  default values
    is expected to be alert events
    is expected to be commit events
    is expected to be confidential issues events
    is expected to be confidential note events
    is expected to be issues events
    is expected to be job events
    is expected to be merge requests events
    is expected to be note events
    is expected to be pipeline events
    is expected to be push events
    is expected to be tag push events
    is expected to be wiki page events
    is expected not to be active
    is expected not to be incident events
    is expected to eq :common
# [RSpecRunTime] RSpec elapsed time: 11 minutes 0.89 second. Current RSS: ~1511M. load average: 1.17 1.45 1.34 1/286 11401


  validations
    is expected to validate that :type cannot be empty/falsy
    is expected to validate that :type is neither ‹"Integrations::BaseChatNotification"›, ‹"Integrations::BaseCi"›, ‹"Integrations::BaseIssueTracker"›, ‹"Integrations::BaseMonitoring"›, ‹"Integrations::BaseSlackNotification"›, ‹"Integrations::BaseSlashCommands"›, nor ‹"Integrations::BaseThirdPartyWiki"›
    project_id: 1, group_id: nil, instance: false, valid: true
      validates the integration
    project_id: nil, group_id: 1, instance: false, valid: true
      validates the integration
    project_id: nil, group_id: nil, instance: true, valid: true
      validates the integration
    project_id: nil, group_id: nil, instance: false, valid: false
      validates the integration
    project_id: 1, group_id: 1, instance: false, valid: false
      validates the integration
    project_id: 1, group_id: nil, instance: false, valid: true
      validates the integration
    project_id: 1, group_id: nil, instance: true, valid: false
      validates the integration
    project_id: nil, group_id: 1, instance: false, valid: true
      validates the integration
    project_id: nil, group_id: 1, instance: true, valid: false
      validates the integration
    with existing integrations
      allows only one instance integration per type
      allows only one project integration per type
      allows only one group integration per type
  scopes
    .third_party_wikis
      returns the right group integration
    .with_default_settings
      returns the correct integrations
    .with_custom_settings
      returns the correct integrations
    .by_type
      when type is "Integrations::JiraService"
        is expected to contain exactly #<Integrations::Jira id: 11, project_id: 206, created_at: "2024-03-26 11:35:12.308193360 +0000", upda...ents: false, group_mention_events: false, group_confidential_mention_events: false, properties: nil> and #<Integrations::Jira id: 12, project_id: 209, created_at: "2024-03-26 11:35:12.687354203 +0000", upda...ents: false, group_mention_events: false, group_confidential_mention_events: false, properties: nil>
      when type is "Integrations::Redmine"
        is expected to contain exactly #<Integrations::Redmine id: 13, project_id: 210, created_at: "2024-03-26 11:35:13.109900043 +0000", u...ents: false, group_mention_events: false, group_confidential_mention_events: false, properties: nil>
    .for_group
      returns the right group integration
    .confidential_note_hooks
      includes services where confidential_note_events is true
      excludes services where confidential_note_events is false
# [RSpecRunTime] RSpec elapsed time: 11 minutes 6.72 seconds. Current RSS: ~1505M. load average: 1.30 1.47 1.35 1/283 11402


    .alert_hooks
      includes services where alert_events is true
      excludes services where alert_events is false
# [RSpecRunTime] RSpec elapsed time: 11 minutes 9.13 seconds. Current RSS: ~1501M. load average: 1.30 1.47 1.35 1/283 11403


    .archive_trace_hooks
      includes services where archive_trace_events is true
      excludes services where archive_trace_events is false
# [RSpecRunTime] RSpec elapsed time: 11 minutes 10.32 seconds. Current RSS: ~1496M. load average: 1.30 1.47 1.35 1/283 11404


    .incident_hooks
      includes services where incident_events is true
      excludes services where incident_events is false
# [RSpecRunTime] RSpec elapsed time: 11 minutes 11.36 seconds. Current RSS: ~1497M. load average: 1.27 1.46 1.35 1/283 11405


  .title
    raises an error
  .description
    raises an error
  .attribution_notice
    is expected to be nil
  #operating?
    is false when the integration is not active
    is false when the integration is not persisted
    is true when the integration is active and persisted
  #testable?
    when integration is project-level
      is expected to be testable
    when integration is not project-level
      is expected not to be testable
  #test
    calls #execute
    returns a result
  #project_level?
    is true when integration has a project
    is false when integration has no project
  #group_level?
    is true when integration has a group
    is false when integration has no group
  #instance_level?
    is true when integration has instance-level integration
    is false when integration does not have instance-level integration
  #chat?
    is true when integration is chat integration
    is false when integration is not chat integration
  #ci?
    is true when integration is a CI integration
    is false when integration is not a ci integration
  #deactivate!
    sets active to false
  #activate!
    sets active to true
  #toggle!
    when active
      deactivates the integration
    when not active
      activates the integration
  .find_or_initialize_non_project_specific_integration
    returns the right integration
    does not create a new integration
  .find_or_initialize_all_non_project_specific
    behaves like integration instances
      with include_instance_specific value equal to false
        returns the available integration instances
        does not create integration instances
      with include_instance_specific value equal to true
        returns the available integration instances
        does not create integration instances
    with all existing instances
      behaves like integration instances
        with include_instance_specific value equal to false
          returns the available integration instances
          does not create integration instances
        with include_instance_specific value equal to true
          returns the available integration instances
          does not create integration instances
      with a previous existing integration (:mock_ci) and a new integration (:asana)
        behaves like integration instances
          with include_instance_specific value equal to false
            returns the available integration instances
            does not create integration instances
          with include_instance_specific value equal to true
            returns the available integration instances
            does not create integration instances
    with a few existing instances
      behaves like integration instances
        with include_instance_specific value equal to false
          returns the available integration instances
          does not create integration instances
        with include_instance_specific value equal to true
          returns the available integration instances
          does not create integration instances
  #inheritable?
    is true for an instance integration
    is true for a group integration
    is false for a project integration
  .build_from_integration
    when integration is invalid
      sets integration to inactive
    when integration is an instance-level integration
      sets inherit_from_id from integration
    when integration is a group-level integration
      sets inherit_from_id from integration
    build issue tracker from an integration
      when data is stored in properties
        behaves like integration creation from an integration
          creates a correct integration for a project integration
          creates a correct integration for a group integration
      when data are stored in separated fields
        behaves like integration creation from an integration
          creates a correct integration for a project integration
          creates a correct integration for a group integration
      when data are stored in both properties and separated fields
        behaves like integration creation from an integration
          creates a correct integration for a project integration
          creates a correct integration for a group integration
  .default_integration
    with an instance-level integration
      returns the instance integration
      returns nil for nonexistent integration type
      with a group integration
        returns the group integration for a project
        returns the instance integration for a group
        with a subgroup
          returns the closest group integration for a project
          returns the closest group integration for a subgroup
          when having an integration with custom settings
            returns the closest group integration for a project
# [RSpecRunTime] RSpec elapsed time: 11 minutes 23.94 seconds. Current RSS: ~1590M. load average: 1.16 1.43 1.34 1/283 11406


          when having an integration inheriting settings
            returns the closest group integration which does not inherit from its parent for a project
  .create_from_active_default_integrations
    with an active instance-level integration
      creates an integration from the instance-level integration
      when passing a group
        creates an integration from the instance-level integration
      with an active group-level integration
        creates an integration from the group-level integration
        when there are multiple inheritable integrations, and a duplicate
          returns the number of successfully created integrations
# [RSpecRunTime] RSpec elapsed time: 11 minutes 27.29 seconds. Current RSS: ~1609M. load average: 1.14 1.42 1.34 1/282 11407


        when passing a group
          creates an integration from the group-level integration
        with an active subgroup
          creates an integration from the subgroup-level integration
          when passing a group
            with traversal queries
              creates an integration from the subgroup-level integration
              when having an integration inheriting settings
                creates an integration from the group-level integration
# [RSpecRunTime] RSpec elapsed time: 11 minutes 31.13 seconds. Current RSS: ~1619M. load average: 1.14 1.42 1.34 1/282 11408


  .inherited_descendants_from_self_or_ancestors_from
    returns the groups and projects inheriting from integration ancestors
# [RSpecRunTime] RSpec elapsed time: 11 minutes 32.71 seconds. Current RSS: ~1590M. load average: 1.21 1.43 1.34 1/282 11409


  .integration_name_to_type
    handles a simple case
    raises an error if the name is unknown
    does not raise an error if the name is a disabled integration
    handles all available_integration_names
  .integration_name_to_model
    raises an error if integration name is invalid
  {property}_changed?
    returns false when the property has not been assigned a new value
    returns true when the property has been assigned a different value
    returns true when the property has been assigned a different value twice
    returns false when the property has been re-assigned the same value
    returns false when the property has been assigned a new value then saved
  #properties=
    supports indifferent access
  #properties
    is not mutable
  {property}_touched?
    returns false when the property has not been assigned a new value
    returns true when the property has been assigned a different value
    returns true when the property has been assigned a different value twice
    returns true when the property has been re-assigned the same value
    returns false when the property has been assigned a new value then saved
  {property}_was
    returns nil when the property has not been assigned a new value
    returns the previous value when the property has been assigned a different value
    returns initial value when the property has been re-assigned the same value
    returns initial value when the property has been assigned multiple values
    returns nil when the property has been assigned a new value then saved
  initialize integration with no properties
    does not raise error
    sets data correctly
  field definitions
    when the class overrides #fields
      behaves like #fields
        does not return the same array
      behaves like #api_field_names
        filters out secret fields and conditional fields
      behaves like #form_fields
        filters out API only fields
        filters conditionals fields
    when the class uses the field DSL
      behaves like #fields
        does not return the same array
      behaves like #api_field_names
        filters out secret fields and conditional fields
      behaves like #form_fields
        filters out API only fields
        filters conditionals fields
  with logging
    logs info messages using json logger
    logs error messages using json logger
    when project is nil
      logs info messages using json logger
    with logging exceptions
      logs exceptions using json logger
      logs exceptions using json logger with a custom message
  .available_integration_names
    is expected to include "foo", "bar", and "baz"
    when `include_project_specific` is false
      is expected to include "foo", "baz", and "instance-specific"
      is expected not to include "bar" and "disabled"
    when `include_dev` is false
      is expected to include "foo", "bar", and "instance-specific"
      is expected not to include "baz" and "disabled"
    when `include_instance_specific` is false
      is expected to include "foo", "baz", and "bar"
      is expected not to include "instance-specific" and "disabled"
    when `include_disabled` is true
      is expected to include "disabled"
  .integration_names
    is expected to include "asana", "assembla", "bamboo", "bugzilla", "buildkite", "campfire", "clickup", "confluence", "custom_issue_tracker", "datadog", "diffblue_cover", "discord", "drone_ci", "emails_on_push", "ewm", "external_wiki", "gitlab_slack_application", "hangouts_chat", "harbor", "irker", "jira", "mattermost", "mattermost_slash_commands", "microsoft_teams", "packagist", "pipelines_email", "pivotaltracker", "prometheus", "pumble", "pushover", "redmine", "slack", "slack_slash_commands", "squash_tm", "teamcity", "telegram", "unify_circuit", "webex_teams", "youtrack", and "zentao"
    is expected to include "gitlab_slack_application"
    when Rails.env is not test
      is expected not to include "gitlab_slack_application"
      when `slack_app_enabled` setting is enabled
        is expected to include "gitlab_slack_application"
        when feature flag is disabled
          is expected not to include "gitlab_slack_application"
  .project_specific_integration_names
    is expected to include "apple_app_store", "google_play", and "jenkins"
    is expected not to include "gitlab_slack_application"
    when feature flag is disabled
      is expected to include "gitlab_slack_application"
      when Rails.env is not test
        is expected not to include "gitlab_slack_application"
        when `slack_app_enabled` setting is enabled
          is expected to include "gitlab_slack_application"
    when Rails.env is not test and `slack_app_enabled` setting is enabled
      is expected not to include "gitlab_slack_application"
  #secret_fields
    returns all fields with type `password`
    returns an empty array if no secret fields exist
  #to_database_hash
    does not include the properties key
    does not include certain attributes
    saves correctly using insert_all
    decrypts encrypted properties correctly
    when the properties are empty
      is part of the to_database_hash
      saves correctly using insert_all
  field DSL
    checks the value of storage
    provides prop_accessors
    provides boolean accessors for checkbox fields
    provides data fields
    registers fields in the fields list
    fields have expected attributes
  Checkbox field booleans
    returns values when initialized without input
    input: true, method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: false, method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: 1, method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: 0, method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "1", method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: "0", method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "true", method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: "false", method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "foobar", method_result: nil, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "", method_result: nil, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: nil, method_result: nil, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "on", method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: "off", method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "yes", method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: "no", method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "n", method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
    input: "y", method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: "t", method_result: true, predicate_method_result: true
      has the correct value
      when using data fields
        has the correct value
    input: "f", method_result: false, predicate_method_result: false
      has the correct value
      when using data fields
        has the correct value
  #attributes
    does not include properties
    can be used in assign_attributes without nullifying properties
  #dup
    results in distinct ciphertexts, but identical properties
    when the model supports data-fields
      creates distinct but identical data-fields
  #async_execute
    queues a Integrations::ExecuteWorker
    when the event is not supported
      does not queue a worker
    when the Gitlab::SilentMode is enabled
      does not queue a worker

# [RSpecRunTime] Finishing example group spec/models/integration_spec.rb. It took 47.72 seconds. Expected to take 49.11 seconds.
# [RSpecRunTime] Starting example group spec/graphql/mutations/merge_requests/update_spec.rb. Expected to take 42.75 seconds.

Mutations::MergeRequests::Update
  is expected to require graphql authorizations :update_merge_request
  #resolve
    behaves like permission level for merge request mutation is correctly verified
      when the user is not a project member
        behaves like when the user does not have access to the resource
          raises an error
          even if assigned to the merge request
            does not modify merge request
# [RSpecRunTime] RSpec elapsed time: 11 minutes 48.65 seconds. Current RSS: ~1645M. load average: 1.17 1.41 1.34 1/288 11489


          even if reviewer of the merge request
            raises an error
# [RSpecRunTime] RSpec elapsed time: 11 minutes 50.04 seconds. Current RSS: ~1649M. load average: 1.17 1.41 1.34 1/288 11529


          even if author of the merge request
            raises an error
# [RSpecRunTime] RSpec elapsed time: 11 minutes 51.42 seconds. Current RSS: ~1651M. load average: 1.15 1.40 1.33 1/288 11569


      when the user is a project member
        with guest role
          behaves like when the user does not have access to the resource
            raises an error
            even if assigned to the merge request
              does not modify merge request
# [RSpecRunTime] RSpec elapsed time: 11 minutes 54.4 seconds. Current RSS: ~1624M. load average: 1.15 1.40 1.33 1/288 11648


            even if reviewer of the merge request
              raises an error
# [RSpecRunTime] RSpec elapsed time: 11 minutes 56.07 seconds. Current RSS: ~1615M. load average: 1.15 1.40 1.33 1/288 11688


            even if author of the merge request
              raises an error
# [RSpecRunTime] RSpec elapsed time: 11 minutes 57.66 seconds. Current RSS: ~1590M. load average: 1.22 1.41 1.34 1/288 11728


        with reporter role
          behaves like when the user does not have access to the resource
            raises an error
            even if assigned to the merge request
              does not modify merge request
# [RSpecRunTime] RSpec elapsed time: 12 minutes 2.56 seconds. Current RSS: ~1569M. load average: 1.20 1.40 1.34 1/289 11811


            even if reviewer of the merge request
              raises an error
# [RSpecRunTime] RSpec elapsed time: 12 minutes 4.5 seconds. Current RSS: ~1563M. load average: 1.20 1.40 1.34 1/288 11852


            even if author of the merge request
              raises an error
# [RSpecRunTime] RSpec elapsed time: 12 minutes 6.48 seconds. Current RSS: ~1558M. load average: 1.19 1.40 1.33 1/288 11896


    when the user can update the merge request
      when all attributes except timeEstimate are provided
        applies all attributes
# [RSpecRunTime] RSpec elapsed time: 12 minutes 8.36 seconds. Current RSS: ~1558M. load average: 1.19 1.40 1.33 1/288 11940


      when timeEstimate attribute is provided
        when timeEstimate is invalid
          changes are not applied
# [RSpecRunTime] RSpec elapsed time: 12 minutes 10.15 seconds. Current RSS: ~1558M. load average: 1.19 1.40 1.33 1/288 11980


        when timeEstimate is negative
          raises an argument error and changes are not applied
# [RSpecRunTime] RSpec elapsed time: 12 minutes 11.9 seconds. Current RSS: ~1559M. load average: 1.17 1.39 1.33 1/288 12020


        when timeEstimate is 0
          resets the time estimate
# [RSpecRunTime] RSpec elapsed time: 12 minutes 13.65 seconds. Current RSS: ~1559M. load average: 1.17 1.39 1.33 1/288 12060


        when timeEstimate is a valid human readable time
          updates the time estimate
# [RSpecRunTime] RSpec elapsed time: 12 minutes 15.33 seconds. Current RSS: ~1559M. load average: 1.17 1.39 1.33 1/288 12100


      the merge request is invalid
        returns error information, and changes were not applied
# [RSpecRunTime] RSpec elapsed time: 12 minutes 17.07 seconds. Current RSS: ~1561M. load average: 1.16 1.38 1.33 1/288 12140


      our change is invalid
        returns error information, and changes were not applied
# [RSpecRunTime] RSpec elapsed time: 12 minutes 18.81 seconds. Current RSS: ~1562M. load average: 1.16 1.38 1.33 1/288 12180


      when passing subset of attributes
        only changes the mentioned attributes
# [RSpecRunTime] RSpec elapsed time: 12 minutes 20.59 seconds. Current RSS: ~1568M. load average: 1.16 1.38 1.33 1/288 12220


      when closing the MR
        closes the MR
# [RSpecRunTime] RSpec elapsed time: 12 minutes 22.39 seconds. Current RSS: ~1563M. load average: 1.38 1.43 1.35 1/288 12260


      when re-opening the MR
        closes the MR
# [RSpecRunTime] RSpec elapsed time: 12 minutes 24.47 seconds. Current RSS: ~1562M. load average: 1.38 1.43 1.35 1/288 12329


  #ready?
    when timeEstimate is provided
      when the value is invalid
        raises an argument error
# [RSpecRunTime] RSpec elapsed time: 12 minutes 25.7 seconds. Current RSS: ~1560M. load average: 1.38 1.43 1.35 1/288 12369


      when the value valid
        returns true
# [RSpecRunTime] RSpec elapsed time: 12 minutes 26.94 seconds. Current RSS: ~1561M. load average: 1.35 1.42 1.34 1/288 12409



# [RSpecRunTime] Finishing example group spec/graphql/mutations/merge_requests/update_spec.rb. It took 41.39 seconds. Expected to take 42.75 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb. Expected to take 38.33 seconds.

Gitlab::CycleAnalytics::StageSummary
  #identifier
    returns identifiers for each metric
  #new_issues
    doesn't find issues from other projects
    when from date is given
      finds the number of issues created after the 'from date'
      returns the localized title
# [RSpecRunTime] RSpec elapsed time: 12 minutes 30.72 seconds. Current RSS: ~1555M. load average: 1.35 1.42 1.34 1/287 12424


    when `to` parameter is given
      doesn't find any record
      finds records created between `from` and `to` range
# [RSpecRunTime] RSpec elapsed time: 12 minutes 31.92 seconds. Current RSS: ~1550M. load average: 1.41 1.43 1.35 1/287 12427


  #commits
    doesn't find commits from other projects
    finds a large (> 100) number of commits if present
    when from date is given
      finds the number of commits created after the 'from date'
      returns the localized title
# [RSpecRunTime] RSpec elapsed time: 12 minutes 49.44 seconds. Current RSS: ~1511M. load average: 1.38 1.42 1.35 1/288 14555


    when `to` parameter is given
      doesn't find any record
      finds records created between `from` and `to` range
# [RSpecRunTime] RSpec elapsed time: 12 minutes 55.9 seconds. Current RSS: ~1474M. load average: 1.35 1.42 1.35 1/288 14772


    when a guest user is signed in
      does not include commit stats
# [RSpecRunTime] RSpec elapsed time: 12 minutes 57.16 seconds. Current RSS: ~1469M. load average: 1.32 1.41 1.34 1/288 14779


  behaves like deployment metrics examples
    #deploys
      doesn't find commits from other projects
      when from date is given
        finds the number of deploys made created after the 'from date'
        returns the localized title
# [RSpecRunTime] RSpec elapsed time: 12 minutes 59.77 seconds. Current RSS: ~1489M. load average: 1.32 1.41 1.34 1/287 14814


      when `to` parameter is given
        doesn't find any record
        finds records created between `from` and `to` range
# [RSpecRunTime] RSpec elapsed time: 13 minutes 1.39 seconds. Current RSS: ~1508M. load average: 1.30 1.40 1.34 1/288 14837


    #deployment_frequency
      includes the unit: `/day`
      returns 0.0 when there were deploys but the frequency was too low
      returns `-` when there were no deploys
      when `to` is nil
        includes range until now
# [RSpecRunTime] RSpec elapsed time: 13 minutes 3.57 seconds. Current RSS: ~1518M. load average: 1.30 1.40 1.34 1/288 14862


      when `to` is given
        finds records created between `from` and `to` range
        when `from` and `to` are within a day
          returns the number of deployments made on that day
# [RSpecRunTime] RSpec elapsed time: 13 minutes 5.03 seconds. Current RSS: ~1525M. load average: 1.30 1.40 1.34 2/288 14890



# [RSpecRunTime] Finishing example group spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb. It took 38.13 seconds. Expected to take 38.33 seconds.
# [RSpecRunTime] Starting example group spec/services/todos/destroy/group_private_service_spec.rb. Expected to take 34.32 seconds.

Todos::Destroy::GroupPrivateService
  #execute
    when a group set to private
      removes todos only for users who are not group users
      with nested groups
        removes todos only for users who are not group users
# [RSpecRunTime] RSpec elapsed time: 13 minutes 21.37 seconds. Current RSS: ~1510M. load average: 1.29 1.39 1.34 1/284 14894


      with member via group share
        does not remove todos for users invited to the group
        does not remove todos for users invited to an ancestor group
# [RSpecRunTime] RSpec elapsed time: 13 minutes 35.3 seconds. Current RSS: ~1512M. load average: 1.24 1.38 1.34 1/284 14897


    when group is not private
      does not remove any todos
# [RSpecRunTime] RSpec elapsed time: 13 minutes 40.91 seconds. Current RSS: ~1508M. load average: 1.30 1.39 1.34 1/284 14898



# [RSpecRunTime] Finishing example group spec/services/todos/destroy/group_private_service_spec.rb. It took 35.81 seconds. Expected to take 34.32 seconds.
# [RSpecRunTime] Starting example group spec/services/users/destroy_service_spec.rb. Expected to take 30.56 seconds.

Users::DestroyService
  Initiates user deletion and deletes all their personal projects
    no options are given
      creates GhostUserMigration record to handle migration in a worker
      will delete the personal project
# [RSpecRunTime] RSpec elapsed time: 13 minutes 43.86 seconds. Current RSS: ~1509M. load average: 1.28 1.38 1.34 1/284 14899


    personal projects in pending_delete
      destroys a personal project in pending_delete
# [RSpecRunTime] RSpec elapsed time: 13 minutes 44.92 seconds. Current RSS: ~1509M. load average: 1.28 1.38 1.34 1/284 14900


    solo owned groups present
      returns the user with attached errors
      does not delete the user, nor the group
# [RSpecRunTime] RSpec elapsed time: 13 minutes 47.39 seconds. Current RSS: ~1511M. load average: 1.26 1.38 1.34 1/284 14901


    deletions with solo owned groups
      deletes solo owned groups
# [RSpecRunTime] RSpec elapsed time: 13 minutes 49.22 seconds. Current RSS: ~1511M. load average: 1.26 1.38 1.34 1/284 14902


    deletions with inherited group owners
      does not delete the group
# [RSpecRunTime] RSpec elapsed time: 13 minutes 51.04 seconds. Current RSS: ~1509M. load average: 1.26 1.38 1.34 1/284 14903


    user personal's repository removal
      storages
        legacy storage
          removes repository
# [RSpecRunTime] RSpec elapsed time: 13 minutes 52.4 seconds. Current RSS: ~1508M. load average: 1.24 1.37 1.33 1/285 14910


        hashed storage
          removes repository
# [RSpecRunTime] RSpec elapsed time: 13 minutes 53.67 seconds. Current RSS: ~1508M. load average: 1.24 1.37 1.33 1/286 14917


      repository removal status is taken into account
        raises exception
    calls the before/after callbacks
      of project_members
      of group_members
# [RSpecRunTime] RSpec elapsed time: 13 minutes 57.18 seconds. Current RSS: ~1511M. load average: 1.22 1.36 1.33 1/286 14918


    prometheus metrics
      scheduled records
        with a single record
          updates the scheduled records gauge
# [RSpecRunTime] RSpec elapsed time: 13 minutes 58.68 seconds. Current RSS: ~1500M. load average: 1.22 1.36 1.33 1/286 14919


        with approximate count due to large number of records
          updates the scheduled records gauge
# [RSpecRunTime] RSpec elapsed time: 14 minutes 0.11 second. Current RSS: ~1503M. load average: 1.22 1.36 1.33 1/286 14920


      lag
        update the lag gauge
# [RSpecRunTime] RSpec elapsed time: 14 minutes 2.0 seconds. Current RSS: ~1492M. load average: 1.20 1.36 1.33 1/286 14921


  Deletion permission checks
    does not delete the user when user is not an admin
    allows users to delete their own account
    allows user to be deleted if skip_authorization: true
    when admin mode is enabled
      allows admins to delete anyone
# [RSpecRunTime] RSpec elapsed time: 14 minutes 5.61 seconds. Current RSS: ~1498M. load average: 1.20 1.36 1.33 1/284 14922


    when admin mode is disabled
      disallows admins to delete anyone

# [RSpecRunTime] Finishing example group spec/services/users/destroy_service_spec.rb. It took 25.34 seconds. Expected to take 30.56 seconds.
# [RSpecRunTime] Starting example group spec/services/projects/prometheus/alerts/notify_service_spec.rb. Expected to take 26.67 seconds.

Projects::Prometheus::Alerts::NotifyService
  with valid payload
    with manual prometheus installation
      alerting_setting: true, configured_token: "token", token_input: "token", result: :success
        behaves like processes one firing and one resolved prometheus alerts
          creates alerts and returns them in the payload
          behaves like processes incident issues
            is expected to be success
# [RSpecRunTime] RSpec elapsed time: 14 minutes 8.22 seconds. Current RSS: ~1503M. load average: 1.26 1.37 1.33 1/284 14923


          behaves like sends alert notification emails
            is expected to receive prometheus_alerts_fired(*(any args)) 1 time
      alerting_setting: true, configured_token: "token", token_input: "x", result: :failure
        behaves like alerts service responds with an error and takes no actions
          is expected to eq :unauthorized
          behaves like does not create an alert management alert
            is expected not to change `AlertManagement::Alert.count`
          behaves like does not create a system note for alert
            is expected not to change `Note.count`
          behaves like does not process incident issues
            is expected not to receive perform_async(*(any args)) 0 times
          behaves like does not send alert notification emails
            is expected not to receive new(*(any args)) 0 times
      alerting_setting: true, configured_token: "token", token_input: nil, result: :failure
        behaves like alerts service responds with an error and takes no actions
          is expected to eq :unauthorized
          behaves like does not create an alert management alert
            is expected not to change `AlertManagement::Alert.count`
          behaves like does not create a system note for alert
            is expected not to change `Note.count`
          behaves like does not process incident issues
            is expected not to receive perform_async(*(any args)) 0 times
          behaves like does not send alert notification emails
            is expected not to receive new(*(any args)) 0 times
      alerting_setting: false, configured_token: nil, token_input: nil, result: :success
        behaves like processes one firing and one resolved prometheus alerts
          creates alerts and returns them in the payload
          behaves like processes incident issues
            is expected to be success
          behaves like sends alert notification emails
            is expected to receive prometheus_alerts_fired(*(any args)) 1 time
      alerting_setting: false, configured_token: nil, token_input: "token", result: :failure
        behaves like alerts service responds with an error and takes no actions
          is expected to eq :unauthorized
          behaves like does not create an alert management alert
            is expected not to change `AlertManagement::Alert.count`
          behaves like does not create a system note for alert
            is expected not to change `Note.count`
          behaves like does not process incident issues
            is expected not to receive perform_async(*(any args)) 0 times
          behaves like does not send alert notification emails
            is expected not to receive new(*(any args)) 0 times
    with HTTP integration
      active: :active, token: :valid, result: :success
        behaves like processes one firing and one resolved prometheus alerts
          creates alerts and returns them in the payload
          behaves like processes incident issues
            is expected to be success
          behaves like sends alert notification emails
            is expected to receive prometheus_alerts_fired(*(any args)) 1 time
      active: :active, token: :invalid, result: :failure
        behaves like alerts service responds with an error and takes no actions
          is expected to eq :unauthorized
          behaves like does not create an alert management alert
            is expected not to change `AlertManagement::Alert.count`
          behaves like does not create a system note for alert
            is expected not to change `Note.count`
          behaves like does not process incident issues
            is expected not to receive perform_async(*(any args)) 0 times
          behaves like does not send alert notification emails
            is expected not to receive new(*(any args)) 0 times
      active: :active, token: nil, result: :failure
        behaves like alerts service responds with an error and takes no actions
          is expected to eq :unauthorized
          behaves like does not create an alert management alert
            is expected not to change `AlertManagement::Alert.count`
          behaves like does not create a system note for alert
            is expected not to change `Note.count`
          behaves like does not process incident issues
            is expected not to receive perform_async(*(any args)) 0 times
          behaves like does not send alert notification emails
            is expected not to receive new(*(any args)) 0 times
      active: :inactive, token: :valid, result: :failure
        behaves like alerts service responds with an error and takes no actions
          is expected to eq :unauthorized
          behaves like does not create an alert management alert
            is expected not to change `AlertManagement::Alert.count`
          behaves like does not create a system note for alert
            is expected not to change `Note.count`
          behaves like does not process incident issues
            is expected not to receive perform_async(*(any args)) 0 times
          behaves like does not send alert notification emails
            is expected not to receive new(*(any args)) 0 times
      active: nil, token: nil, result: :failure
        behaves like alerts service responds with an error and takes no actions
          is expected to eq :unauthorized
          behaves like does not create an alert management alert
            is expected not to change `AlertManagement::Alert.count`
          behaves like does not create a system note for alert
            is expected not to change `Note.count`
          behaves like does not process incident issues
            is expected not to receive perform_async(*(any args)) 0 times
          behaves like does not send alert notification emails
            is expected not to receive new(*(any args)) 0 times
      with simultaneous manual configuration
        behaves like processes one firing and one resolved prometheus alerts
          creates alerts and returns them in the payload
          behaves like processes incident issues
            is expected to be success
          behaves like sends alert notification emails
            is expected to receive prometheus_alerts_fired(*(any args)) 1 time
        when HTTP integration is inactive
          behaves like alerts service responds with an error and takes no actions
            is expected to eq :unauthorized
            behaves like does not create an alert management alert
              is expected not to change `AlertManagement::Alert.count`
            behaves like does not create a system note for alert
              is expected not to change `Note.count`
            behaves like does not process incident issues
              is expected not to receive perform_async(*(any args)) 0 times
            behaves like does not send alert notification emails
              is expected not to receive new(*(any args)) 0 times
    incident settings
      behaves like processes one firing and one resolved prometheus alerts
        creates alerts and returns them in the payload
        behaves like processes incident issues
          is expected to be success
# [RSpecRunTime] RSpec elapsed time: 14 minutes 21.55 seconds. Current RSS: ~1566M. load average: 1.20 1.35 1.33 1/284 14924


        behaves like sends alert notification emails
          is expected to receive prometheus_alerts_fired(*(any args)) 1 time
      when incident_management_setting does not exist
        is expected to be success
        is expected not to receive new(*(any args)) 0 times
        is expected not to receive perform_async(*(any args)) 0 times
# [RSpecRunTime] RSpec elapsed time: 14 minutes 23.81 seconds. Current RSS: ~1557M. load average: 1.20 1.35 1.33 1/284 14925


      incident_management_setting.send_email is false
        is expected to be success
        is expected not to receive new(*(any args)) 0 times
# [RSpecRunTime] RSpec elapsed time: 14 minutes 24.96 seconds. Current RSS: ~1560M. load average: 1.20 1.35 1.33 1/284 14926


      incident_management_setting.create_issue is false
        is expected to be success
        is expected not to receive perform_async(*(any args)) 0 times
# [RSpecRunTime] RSpec elapsed time: 14 minutes 26.05 seconds. Current RSS: ~1556M. load average: 1.20 1.35 1.33 1/284 14927


    process Alert Management alerts
      with multiple firing alerts and resolving alerts
        processes Prometheus alerts
    when payload exceeds max amount of processable alerts
      with feature flag globally enabled
        returns 201 but skips processing and logs a warning
      with feature flag enabled on project
        returns 201 but skips processing and logs a warning
      with feature flag enabled on unrelated project
        returns 201 and process alerts without warnings
      with feature flag disabled
        returns 201 and process alerts without warnings
  with invalid payload
    when payload is not processable
      behaves like alerts service responds with an error and takes no actions
        is expected to eq :unprocessable_entity
        behaves like does not create an alert management alert
          is expected not to change `AlertManagement::Alert.count`
        behaves like does not create a system note for alert
          is expected not to change `Note.count`
        behaves like does not process incident issues
          is expected not to receive perform_async(*(any args)) 0 times
        behaves like does not send alert notification emails
          is expected not to receive new(*(any args)) 0 times
    when the payload is too big
      behaves like alerts service responds with an error and takes no actions
        is expected to eq :bad_request
        behaves like does not create an alert management alert
          is expected not to change `AlertManagement::Alert.count`
        behaves like does not create a system note for alert
          is expected not to change `Note.count`
        behaves like does not process incident issues
          is expected not to receive perform_async(*(any args)) 0 times
        behaves like does not send alert notification emails
          is expected not to receive new(*(any args)) 0 times
  .processable?
    with valid payload
      is expected to eq true
      containing unrelated keys
        is expected to eq true
    with invalid payload
      missing_key: "version"
        is expected to eq false
      missing_key: "groupKey"
        is expected to eq false
      missing_key: "status"
        is expected to eq false
      missing_key: "receiver"
        is expected to eq false
      missing_key: "groupLabels"
        is expected to eq false
      missing_key: "commonLabels"
        is expected to eq false
      missing_key: "commonAnnotations"
        is expected to eq false
      missing_key: "externalURL"
        is expected to eq false
      missing_key: "alerts"
        is expected to eq false
    with unsupported version
      is expected to eq false

# [RSpecRunTime] Finishing example group spec/services/projects/prometheus/alerts/notify_service_spec.rb. It took 25.53 seconds. Expected to take 26.67 seconds.
# [RSpecRunTime] Starting example group spec/services/projects/protect_default_branch_service_spec.rb. Expected to take 25.23 seconds.

Projects::ProtectDefaultBranchService
  when feature flag `default_branch_protection_defaults` is disabled
    #execute
      without a default branch
        does nothing
      with a default branch
        protects the default branch
    #protect_default_branch
      when branch protection is needed
        changes the HEAD of the project
        protects the default branch
      when branch protection is not needed
        changes the HEAD of the project
        does not protect the default branch
# [RSpecRunTime] RSpec elapsed time: 14 minutes 35.07 seconds. Current RSS: ~1555M. load average: 1.17 1.34 1.32 2/284 14928


      when protected branch does not exist
        changes the HEAD of the project
        protects the default branch
# [RSpecRunTime] RSpec elapsed time: 14 minutes 36.29 seconds. Current RSS: ~1559M. load average: 1.17 1.34 1.32 1/284 14929


      when protected branch already exists
        changes the HEAD of the project
        does not protect the default branch
# [RSpecRunTime] RSpec elapsed time: 14 minutes 37.44 seconds. Current RSS: ~1554M. load average: 1.16 1.33 1.32 1/284 14930


    #create_protected_branch
      creates the protected branch
    #protect_branch?
      when default branch protection is disabled
        returns false
      when default branch protection is enabled
        returns false if the branch is already protected
        returns true if the branch is not yet protected
# [RSpecRunTime] RSpec elapsed time: 14 minutes 39.7 seconds. Current RSS: ~1531M. load average: 1.16 1.33 1.32 1/284 14931


    #protected_branch_exists?
      when feature flag `group_protected_branches` disabled
        return false
      when feature flag `group_protected_branches` enabled
        return true
    #default_branch
      returns the default branch of the project
    #push_access_level
      when developers can push
        returns the DEVELOPER access level
      when developers can not push
        returns the MAINTAINER access level
    #merge_access_level
      when developers can merge
        returns the DEVELOPER access level
      when developers can not merge
        returns the MAINTAINER access level
  when feature flag `default_branch_protection_defaults` is enabled
    #execute
      without a default branch
        does nothing
      with a default branch
        protects the default branch
    #protect_default_branch
      when branch protection is needed
        changes the HEAD of the project
        protects the default branch
# [RSpecRunTime] RSpec elapsed time: 14 minutes 45.17 seconds. Current RSS: ~1519M. load average: 1.15 1.33 1.32 1/284 14932


      when branch protection is not needed
        changes the HEAD of the project
        does not protect the default branch
# [RSpecRunTime] RSpec elapsed time: 14 minutes 46.37 seconds. Current RSS: ~1518M. load average: 1.13 1.32 1.32 1/284 14933


      when protected branch does not exist
        changes the HEAD of the project
        protects the default branch
# [RSpecRunTime] RSpec elapsed time: 14 minutes 47.5 seconds. Current RSS: ~1518M. load average: 1.13 1.32 1.32 1/284 14934


      when protected branch already exists
        changes the HEAD of the project
        does not protect the default branch
# [RSpecRunTime] RSpec elapsed time: 14 minutes 48.69 seconds. Current RSS: ~1516M. load average: 1.13 1.32 1.32 1/284 14935


    #create_protected_branch
      creates the protected branch
    #protect_branch?
      when default branch protection is disabled
        returns false
      when default branch protection is enabled
        returns false if the branch is already protected
        returns true if the branch is not yet protected
# [RSpecRunTime] RSpec elapsed time: 14 minutes 51.07 seconds. Current RSS: ~1515M. load average: 1.13 1.32 1.32 1/284 14936


    #protected_branch_exists?
      when feature flag `group_protected_branches` disabled
        return false
      when feature flag `group_protected_branches` enabled
        return true
    #default_branch
      returns the default branch of the project
    #push_access_level
      when developers can push
        returns the DEVELOPER access level
      when developers can not push
        returns the MAINTAINER access level
    #merge_access_level
      when developers can merge
        returns the DEVELOPER access level
      when developers can not merge
        returns the MAINTAINER access level

# [RSpecRunTime] Finishing example group spec/services/projects/protect_default_branch_service_spec.rb. It took 22.83 seconds. Expected to take 25.23 seconds.
# [RSpecRunTime] Starting example group spec/models/merge_request_diff_commit_spec.rb. Expected to take 23.19 seconds.

MergeRequestDiffCommit
  does not allow STI
  behaves like a BulkInsertSafe model
    when calling class methods directly
      raises an error when method is not bulk-insert safe
      does not raise an error when method is bulk-insert safe
    .bulk_insert!
      when all items are valid
        inserts them all
        returns an empty array
# [RSpecRunTime] RSpec elapsed time: 15 minutes 12.09 seconds. Current RSS: ~1577M. load average: 1.11 1.29 1.31 1/289 15257


      when some items are invalid
        does not insert any of them and raises an error
        inserts them anyway when bypassing validations
  associations
    is expected to belong to commit_author required: false
    is expected to belong to committer required: false
  #to_hash
    returns the same results as Commit#to_hash, except for parent_ids
# [RSpecRunTime] RSpec elapsed time: 15 minutes 13.87 seconds. Current RSS: ~1577M. load average: 1.11 1.29 1.31 1/290 15300


  .create_bulk
    inserts the commits into the database en masse
    creates diff commit users
    with dates larger than the DB limit
      uses a sanitized date
# [RSpecRunTime] RSpec elapsed time: 15 minutes 17.45 seconds. Current RSS: ~1580M. load average: 1.10 1.29 1.31 1/290 15434


  .prepare_commits_for_bulk_insert
    returns the commit hashes and unique user tuples

# [RSpecRunTime] Finishing example group spec/models/merge_request_diff_commit_spec.rb. It took 23.04 seconds. Expected to take 23.19 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/import_export/project/sample/relation_tree_restorer_spec.rb. Expected to take 21.99 seconds.

Gitlab::ImportExport::Project::Sample::RelationTreeRestorer
  initializes relation_factory with date_calculator as parameter
  when relation tree restorer is initialized
    initializes date calculator with due dates
# [RSpecRunTime] RSpec elapsed time: 15 minutes 19.12 seconds. Current RSS: ~1571M. load average: 1.10 1.29 1.31 1/290 15435


  using ndjson reader
    behaves like import project successfully
      restores project tree
      imported project
        has the project attributes and relations
        has issues with correctly updated due dates
        has milestones with correctly updated due dates
# [RSpecRunTime] RSpec elapsed time: 15 minutes 42.0 seconds. Current RSS: ~1469M. load average: 1.12 1.28 1.30 1/284 15436



# [RSpecRunTime] Finishing example group spec/lib/gitlab/import_export/project/sample/relation_tree_restorer_spec.rb. It took 24.36 seconds. Expected to take 21.99 seconds.
# [RSpecRunTime] Starting example group spec/policies/namespace/root_storage_statistics_policy_spec.rb. Expected to take 20.54 seconds.

Namespace::RootStorageStatisticsPolicy
  #rules
    when the namespace is a personal namespace
      when the users is anonymous
        is expected to be falsey
      when the user is not the owner
        is expected to be falsey
      when the user is the owner
        is expected to be truthy
    when the namespace is a group
      when the users is anonymous
        is expected to be falsey
      user_type: :non_member, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
      user_type: :guest, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 45.37 seconds. Current RSS: ~1503M. load average: 1.12 1.28 1.30 1/284 15437


      user_type: :reporter, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 46.46 seconds. Current RSS: ~1512M. load average: 1.19 1.29 1.31 1/284 15438


      user_type: :developer, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 47.55 seconds. Current RSS: ~1518M. load average: 1.19 1.29 1.31 1/284 15439


      user_type: :maintainer, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 48.67 seconds. Current RSS: ~1519M. load average: 1.19 1.29 1.31 1/284 15440


      user_type: :owner, outcome: true
        is expected to eq true
        when the user is external
          is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 15 minutes 49.88 seconds. Current RSS: ~1528M. load average: 1.19 1.29 1.31 1/284 15441


      when the users is anonymous
        is expected to be falsey
      user_type: :non_member, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
      user_type: :guest, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 52.13 seconds. Current RSS: ~1528M. load average: 1.18 1.29 1.31 1/284 15442


      user_type: :reporter, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 53.29 seconds. Current RSS: ~1526M. load average: 1.18 1.29 1.31 1/284 15443


      user_type: :developer, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 54.46 seconds. Current RSS: ~1526M. load average: 1.18 1.29 1.31 1/284 15444


      user_type: :maintainer, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 55.63 seconds. Current RSS: ~1525M. load average: 1.18 1.29 1.31 1/284 15445


      user_type: :owner, outcome: true
        is expected to eq true
        when the user is external
          is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 15 minutes 56.78 seconds. Current RSS: ~1524M. load average: 1.16 1.28 1.30 1/284 15446


      when the users is anonymous
        is expected to be falsey
      user_type: :non_member, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
      user_type: :guest, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 15 minutes 58.99 seconds. Current RSS: ~1526M. load average: 1.16 1.28 1.30 1/284 15447


      user_type: :reporter, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 16 minutes 0.1 second. Current RSS: ~1525M. load average: 1.16 1.28 1.30 1/284 15448


      user_type: :developer, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 16 minutes 1.3 seconds. Current RSS: ~1526M. load average: 1.16 1.28 1.30 1/284 15449


      user_type: :maintainer, outcome: false
        is expected to eq false
        when the user is external
          is expected to eq false
# [RSpecRunTime] RSpec elapsed time: 16 minutes 2.4 seconds. Current RSS: ~1526M. load average: 1.15 1.28 1.30 1/284 15450


      user_type: :owner, outcome: true
        is expected to eq true
        when the user is external
          is expected to eq true
# [RSpecRunTime] RSpec elapsed time: 16 minutes 3.61 seconds. Current RSS: ~1524M. load average: 1.15 1.28 1.30 1/284 15451



# [RSpecRunTime] Finishing example group spec/policies/namespace/root_storage_statistics_policy_spec.rb. It took 21.6 seconds. Expected to take 20.54 seconds.
# [RSpecRunTime] Starting example group spec/models/timelog_spec.rb. Expected to take 19.45 seconds.

Timelog
  does not allow STI
  is expected to belong to project required: false
  is expected to belong to issue required: false
  is expected to belong to merge_request required: false
  is expected to belong to timelog_category optional: true
  is expected to be valid
  is expected to validate that :time_spent cannot be empty/falsy
  is expected to validate that :user cannot be empty/falsy
  is expected to validate that the length of :summary is at most 255
  is expected not to be nil
  validation
    is invalid if issue_id and merge_request_id are missing
    is invalid if issue_id and merge_request_id are set
    is valid if only issue_id is set
    is valid if only merge_request_id is set
    check if total time spent would be within the set range
      is valid when a negative time spent offsets the time already spent
      when total time spent is within the allowed range
        is valid
# [RSpecRunTime] RSpec elapsed time: 16 minutes 14.09 seconds. Current RSS: ~1529M. load average: 1.13 1.27 1.30 1/289 15492


      when total time spent is outside the allowed range
        adds an error if total time spent would exceed a year
        adds an error if total time spent would be negative
    when importing
      is valid if issue_id and merge_request_id are missing
  scopes
    .in_group
      return timelogs created for group issues and merge requests
# [RSpecRunTime] RSpec elapsed time: 16 minutes 17.83 seconds. Current RSS: ~1535M. load average: 1.28 1.30 1.31 1/290 15549


    .for_user
      return timelogs created by user
    .in_project
      returns timelogs created for project issues and merge requests
# [RSpecRunTime] RSpec elapsed time: 16 minutes 20.27 seconds. Current RSS: ~1538M. load average: 1.28 1.30 1.31 3/291 15597


    .at_or_after
      returns timelogs at the time limit
      returns timelogs after given time
    .at_or_before
      returns timelogs at the time limit
      returns timelogs before given time
  hooks
    .set_project
      populates project with issuable project
  sorting
    .sort_by_field
      sorts timelogs by time spent in ascending order
      sorts timelogs by time spent in descending order
      sorts timelogs by spent at in ascending order
      sorts timelogs by spent at in descending order
      sorts timelogs by created at in ascending order
      sorts timelogs by created at in descending order
      sorts timelogs by updated at in ascending order
      sorts timelogs by updated at in descending order
# [RSpecRunTime] RSpec elapsed time: 16 minutes 23.65 seconds. Current RSS: ~1546M. load average: 1.25 1.29 1.30 1/289 15598



# [RSpecRunTime] Finishing example group spec/models/timelog_spec.rb. It took 20.06 seconds. Expected to take 19.45 seconds.
# [RSpecRunTime] Starting example group spec/models/route_spec.rb. Expected to take 18.01 seconds.

Route
  does not allow STI
  relationships
    is expected to belong to source required: false
    is expected to belong to namespace required: false
  validations
    is expected to validate that :source cannot be empty/falsy
    is expected to validate that :path cannot be empty/falsy
    is expected to validate that :path is case-insensitively unique
  callbacks
    after update
      calls #create_redirect_for_old_path
      calls #delete_conflicting_redirects
    after create
      calls #delete_conflicting_redirects
  .inside_path
    returns correct routes
  .for_routable_type
    returns correct routes
  #rename_descendants
    path update
      when route name is set
        updates children routes with new path
      when route name is nil
        does not fail
      when conflicting redirects exist
        deletes the conflicting redirects
# [RSpecRunTime] RSpec elapsed time: 16 minutes 30.24 seconds. Current RSS: ~1549M. load average: 1.31 1.30 1.31 1/284 15599


    name update
      updates children routes with new path
      handles a rename from nil
# [RSpecRunTime] RSpec elapsed time: 16 minutes 31.92 seconds. Current RSS: ~1535M. load average: 1.29 1.30 1.31 1/284 15600


  #create_redirect_for_old_path
    if the path changed
      creates a RedirectRoute for the old path
  #create_redirect
    creates a RedirectRoute with the same source
    when the source is a Project
      creates a RedirectRoute
    when the source is not a project
      creates a RedirectRoute
  #delete_conflicting_redirects
    deletes the redirect
    when a redirect route with the same path exists
      when the redirect route has matching case
        deletes the redirect
        when redirect routes with paths descending from the route path exists
          deletes all redirects with paths that descend from the route path
# [RSpecRunTime] RSpec elapsed time: 16 minutes 35.19 seconds. Current RSS: ~1533M. load average: 1.29 1.30 1.31 1/284 15601


      when the redirect route is differently cased
        deletes the redirect
  #conflicting_redirects
    returns an ActiveRecord::Relation
    returns the redirect routes
    when a redirect route with the same path exists
      when the redirect route has matching case
        returns the redirect route
        when redirect routes with paths descending from the route path exists
          returns the redirect routes
# [RSpecRunTime] RSpec elapsed time: 16 minutes 38.1 seconds. Current RSS: ~1520M. load average: 1.27 1.29 1.30 1/284 15602


      when the redirect route is differently cased
        returns the redirect route
  conflicting routes validation
    when there is a conflicting route
      fails validation
      when deleting the conflicting route
        does not delete the original route
# [RSpecRunTime] RSpec elapsed time: 16 minutes 40.05 seconds. Current RSS: ~1520M. load average: 1.27 1.29 1.30 1/284 15603


    when there are no conflicting routes
      passes validation
  with loose foreign key on routes.namespace_id
    behaves like cleanup by a loose foreign key
      cleans up (delete or nullify) the model

# [RSpecRunTime] Finishing example group spec/models/route_spec.rb. It took 17.44 seconds. Expected to take 18.01 seconds.
# [RSpecRunTime] Starting example group spec/models/internal_id_spec.rb. Expected to take 17.22 seconds.

InternalId
  does not allow STI
  behaves like having unique enum values
    has unique values in "usage"
  validations
    is expected to validate that :usage cannot be empty/falsy
  .flush_records!
    deletes all records for the given project
    retains records for other projects
    does not allow an empty filter
# [RSpecRunTime] RSpec elapsed time: 16 minutes 45.56 seconds. Current RSS: ~1522M. load average: 1.24 1.29 1.30 1/284 15604


  .generate_next
    generates a strictly monotone, gapless sequence
    in the absence of a record
      creates a record if not yet present
      stores record attributes
      with existing issues
        calculates last_value values automatically
# [RSpecRunTime] RSpec elapsed time: 16 minutes 48.1 seconds. Current RSS: ~1519M. load average: 1.22 1.28 1.30 1/284 15605


    there are no instances to pass in
      accepts classes instead
    when executed outside of transaction
      increments counter with in_transaction: "false"
    when executed within transaction
      increments counter with in_transaction: "true"
  .reset
    in the absence of a record
      does not revert back the value
    when valid iid is used to reset
      and iid is a latest one
        does rewind and next generated value is the same
      and iid is not a latest one
        does not rewind
    when executed outside of transaction
      increments counter with in_transaction: "false"
    when executed within transaction
      increments counter with in_transaction: "true"
  .track_greatest
    stores record attributes
    in the absence of a record
      creates a record if not yet present
# [RSpecRunTime] RSpec elapsed time: 16 minutes 53.7 seconds. Current RSS: ~1517M. load average: 1.21 1.28 1.30 2/284 15606


    with existing issues
      still returns the last value to that of the given value
    when value is less than the current last_value
      returns the current last_value
    there are no instances to pass in
      accepts classes instead
    when executed outside of transaction
      increments counter with in_transaction: "false"
    when executed within transaction
      increments counter with in_transaction: "true"

# [RSpecRunTime] Finishing example group spec/models/internal_id_spec.rb. It took 15.46 seconds. Expected to take 17.22 seconds.
# [RSpecRunTime] Starting example group spec/workers/pipeline_schedule_worker_spec.rb. Expected to take 16.04 seconds.

PipelineScheduleWorker
  when the schedule is runnable by the user
    when there is a scheduled pipeline within next_run_at
      behaves like successful scheduling
        creates a new pipeline
        updates next_run_at
        does not change active status
# [RSpecRunTime] RSpec elapsed time: 17 minutes 2.14 seconds. Current RSS: ~1523M. load average: 1.17 1.27 1.29 1/290 15667


      when the latest commit contains [ci skip]
        behaves like successful scheduling
          creates a new pipeline
          updates next_run_at
          does not change active status
# [RSpecRunTime] RSpec elapsed time: 17 minutes 6.83 seconds. Current RSS: ~1514M. load average: 1.16 1.26 1.29 1/289 15722


    when the schedule is deactivated
      does not creates a new pipeline
    when gitlab-ci.yml is corrupted
      creates a new pipeline
# [RSpecRunTime] RSpec elapsed time: 17 minutes 8.47 seconds. Current RSS: ~1514M. load average: 1.16 1.26 1.29 1/289 15731


  when the schedule is not runnable by the user
    does not deactivate the schedule
    does not create a pipeline
    does not raise an exception
  when .gitlab-ci.yml is missing in the project
    does not create a pipeline
    does not raise an exception
  when the project is missing
    does not raise an exception
  when max retry attempts reach
    does not raise error
  with scheduling delay
    calls bulk_perform_in with the arguments and delay
    with run_pipeline_schedule_worker_with_delay disabled
      calls bulk_perform_async with the arguments and delay

# [RSpecRunTime] Finishing example group spec/workers/pipeline_schedule_worker_spec.rb. It took 15.07 seconds. Expected to take 16.04 seconds.
# [RSpecRunTime] Starting example group spec/services/verify_pages_domain_service_spec.rb. Expected to take 15.61 seconds.

VerifyPagesDomainService
  #execute
    domain_sym: :domain, code_sym: :verification_code
      when domain is disabled(or new)
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when no txt records are present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is verified
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies but does not disable domain
          does not schedule domain for removal
        when no txt records are present
          unverifies but does not disable domain
          does not schedule domain for removal
      when domain is expired
        when the right code is present
          verifies and enables the domain
        when the right code is not present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is disabled and scheduled for removal
        when the right code is present
          verifies and enables domain
          prevent domain from being removed
        when the right code is not present
          keeps domain scheduled for removal but does not change removal time
      invalid domain
        can be disabled
    domain_sym: :domain, code_sym: :keyed_verification_code
      when domain is disabled(or new)
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when no txt records are present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is verified
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies but does not disable domain
          does not schedule domain for removal
        when no txt records are present
          unverifies but does not disable domain
          does not schedule domain for removal
      when domain is expired
        when the right code is present
          verifies and enables the domain
        when the right code is not present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is disabled and scheduled for removal
        when the right code is present
          verifies and enables domain
          prevent domain from being removed
        when the right code is not present
          keeps domain scheduled for removal but does not change removal time
      invalid domain
        can be disabled
    domain_sym: :verification_domain, code_sym: :verification_code
      when domain is disabled(or new)
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when no txt records are present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is verified
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies but does not disable domain
          does not schedule domain for removal
        when no txt records are present
          unverifies but does not disable domain
          does not schedule domain for removal
      when domain is expired
        when the right code is present
          verifies and enables the domain
        when the right code is not present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is disabled and scheduled for removal
        when the right code is present
          verifies and enables domain
          prevent domain from being removed
        when the right code is not present
          keeps domain scheduled for removal but does not change removal time
      invalid domain
        can be disabled
    domain_sym: :verification_domain, code_sym: :keyed_verification_code
      when domain is disabled(or new)
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when txt record does not contain verification code
          unverifies domain
          disables domain and shedules it for removal in 1 week
        when no txt records are present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is verified
        when txt record contains verification code
          verifies and enables the domain
        when txt record contains verification code with other text
          verifies and enables the domain
        when txt record does not contain verification code
          unverifies but does not disable domain
          does not schedule domain for removal
        when no txt records are present
          unverifies but does not disable domain
          does not schedule domain for removal
      when domain is expired
        when the right code is present
          verifies and enables the domain
        when the right code is not present
          unverifies domain
          disables domain and shedules it for removal in 1 week
      when domain is disabled and scheduled for removal
        when the right code is present
          verifies and enables domain
          prevent domain from being removed
        when the right code is not present
          keeps domain scheduled for removal but does not change removal time
      invalid domain
        can be disabled
    timeout behaviour
      sets a timeout on the DNS query
    email notifications
      factory: nil, verification_succeeds: true, expected_notification: nil
        sends a notification if appropriate
      factory: nil, verification_succeeds: false, expected_notification: :verification_failed
        sends a notification if appropriate
      factory: :reverify, verification_succeeds: true, expected_notification: nil
        sends a notification if appropriate
      factory: :reverify, verification_succeeds: false, expected_notification: :verification_failed
        sends a notification if appropriate
      factory: :unverified, verification_succeeds: true, expected_notification: :verification_succeeded
        sends a notification if appropriate
      factory: :unverified, verification_succeeds: false, expected_notification: nil
        sends a notification if appropriate
      factory: :expired, verification_succeeds: true, expected_notification: nil
        sends a notification if appropriate
      factory: :expired, verification_succeeds: false, expected_notification: :disabled
        sends a notification if appropriate
      factory: :disabled, verification_succeeds: true, expected_notification: :enabled
        sends a notification if appropriate
      factory: :disabled, verification_succeeds: false, expected_notification: nil
        sends a notification if appropriate
      pages verification disabled
        skips email notifications
    no verification code
      returns an error
    pages domain verification is disabled
      extends domain validity by unconditionally reverifying
      does not shorten any grace period

# [RSpecRunTime] Finishing example group spec/services/verify_pages_domain_service_spec.rb. It took 11.09 seconds. Expected to take 15.61 seconds.
# [RSpecRunTime] Starting example group spec/helpers/todos_helper_spec.rb. Expected to take 14.52 seconds.

TodosHelper
  #todo_target_name
    when given a design
      references the filename of the design
# [RSpecRunTime] RSpec elapsed time: 17 minutes 24.82 seconds. Current RSS: ~1555M. load average: 1.12 1.25 1.29 1/284 15756


  #todo_target_title
    when the target does not exist
      returns an empty string
    when given a design todo
      returns an empty string
    when given a non-design todo
      returns the title
  #todo_target_path
    when given a design
      responds with an appropriate path
    when given an alert
      responds with an appropriate path
    when given a task
      responds with an appropriate path using iid
    when given an issue with a note anchor
      responds with an appropriate path
    when a user requests access to group
      responds with access requests tab
    when a user requests access to project
      responds with access requests tab
  #todo_target_aria_label
    when given a design todo
      is expected to eq "Design #1[homescreen-35.jpg]"
    when given an alert todo
      is expected to eq "Alert ^alert#1001"
    when given a task todo
      is expected to eq "Task #3"
    when given an issue todo
      is expected to eq "Issue #1"
    when given a merge request todo
      is expected to eq "Merge Request !1"
  #todo_types_options
    includes a match for a design todo
  #todo_target_state_pill
    merge request todo
      behaves like no state pill
        is expected to eq nil
# [RSpecRunTime] RSpec elapsed time: 17 minutes 28.61 seconds. Current RSS: ~1568M. load average: 1.11 1.25 1.29 1/290 15797


      closed MR
        behaves like a rendered state pill
          returns expected html
# [RSpecRunTime] RSpec elapsed time: 17 minutes 30.16 seconds. Current RSS: ~1556M. load average: 1.11 1.25 1.29 1/290 15837


      merged MR
        behaves like a rendered state pill
          returns expected html
# [RSpecRunTime] RSpec elapsed time: 17 minutes 31.65 seconds. Current RSS: ~1551M. load average: 1.10 1.24 1.28 1/290 15877


    issue todo
      behaves like no state pill
        is expected to eq nil
      closed issue
        behaves like a rendered state pill
          returns expected html
    alert todo
      behaves like no state pill
        is expected to eq nil
      resolved alert
        behaves like a rendered state pill
          returns expected html
  #no_todos_messages
    when getting todos messages
      return these sentences
  #todo_author_display?
    action: 3, result: false
      is expected to eq false
    action: 6, result: false
      is expected to eq false
    action: 1, result: true
      is expected to eq true
  #todos_filter_params
    state: "done", result: "done"
      is expected to eq "done"
    state: "pending", result: "pending"
      is expected to eq "pending"
    state: "", result: nil
      is expected to eq nil
  #todo_action_name
    action: 1, self_added?: false, expected_action_name: "assigned you"
      is expected to eq "assigned you"
    action: 1, self_added?: true, expected_action_name: "assigned"
      is expected to eq "assigned"
    action: 9, self_added?: true, expected_action_name: "requested a review"
      is expected to eq "requested a review"
    action: 2, self_added?: true, expected_action_name: "mentioned yourself"
      is expected to eq "mentioned yourself"
    action: 2, self_added?: false, expected_action_name: "mentioned you"
      is expected to eq "mentioned you"
    action: 7, self_added?: true, expected_action_name: "mentioned yourself"
      is expected to eq "mentioned yourself"
    action: 7, self_added?: false, expected_action_name: "mentioned you"
      is expected to eq "mentioned you"
    action: 3, self_added?: true, expected_action_name: "The pipeline failed"
      is expected to eq "The pipeline failed"
    action: 4, self_added?: true, expected_action_name: "added a to-do item"
      is expected to eq "added a to-do item"
    action: 5, self_added?: true, expected_action_name: "set yourself as an approver"
      is expected to eq "set yourself as an approver"
    action: 5, self_added?: false, expected_action_name: "set you as an approver"
      is expected to eq "set you as an approver"
    action: 6, self_added?: true, expected_action_name: "Could not merge"
      is expected to eq "Could not merge"
    action: 8, self_added?: true, expected_action_name: "Removed from Merge Train"
      is expected to eq "Removed from Merge Train"
    action: 11, self_added?: false, expected_action_name: "reviewed your merge request"
      is expected to eq "reviewed your merge request"
    member access requested
      when target is group
        returns group access message
      when target is project
        returns project access message
    okr checkin reminder
      returns okr checkin reminder message
  #todo_due_date
    due date is today
      is expected to match "Due today"
    due date is not today
      is expected to match "Due Mar 27, 2024"
  #todo_parent_path
    when todo resource parent is a group
      is expected to eq "Group 1"
    when todo resource parent is not a group
      returns project title with namespace
  .todo_groups_requiring_saml_reauth
    returns an empty array

# [RSpecRunTime] Finishing example group spec/helpers/todos_helper_spec.rb. It took 13.53 seconds. Expected to take 14.52 seconds.
# [RSpecRunTime] Starting example group spec/services/search/group_service_spec.rb. Expected to take 14.0 seconds.

Search::GroupService
  basic search
    finding projects by name
      in parent group
        is expected to contain exactly #<Project id:489 group84/group83/project-592>>, #<Project id:490 group84/group83/project-593>>, and #<Project id:491 group84/project-594>>
# [RSpecRunTime] RSpec elapsed time: 17 minutes 38.38 seconds. Current RSS: ~1552M. load average: 1.26 1.27 1.29 1/289 15878


      in subgroup
        is expected to contain exactly #<Project id:495 group86/group85/project-598>> and #<Project id:496 group86/group85/project-599>>
# [RSpecRunTime] RSpec elapsed time: 17 minutes 40.43 seconds. Current RSS: ~1547M. load average: 1.26 1.27 1.29 1/289 15879


  issues
    sorting
      sort: created_desc
        sorts results by created_at
# [RSpecRunTime] RSpec elapsed time: 17 minutes 41.58 seconds. Current RSS: ~1542M. load average: 1.24 1.27 1.29 1/284 15880


      sort: created_asc
        sorts results by created_at
      sort: updated_desc
        sorts results by updated_desc
      sort: updated_asc
        sorts results by updated_asc
  merge requests
    sorting
      sort: created_desc
        sorts results by created_at
# [RSpecRunTime] RSpec elapsed time: 17 minutes 44.97 seconds. Current RSS: ~1509M. load average: 1.24 1.27 1.29 1/284 15881


      sort: created_asc
        sorts results by created_at
# [RSpecRunTime] RSpec elapsed time: 17 minutes 46.37 seconds. Current RSS: ~1496M. load average: 1.24 1.27 1.29 1/284 15882


      sort: updated_desc
        sorts results by updated_desc
# [RSpecRunTime] RSpec elapsed time: 17 minutes 47.69 seconds. Current RSS: ~1503M. load average: 1.22 1.26 1.29 1/284 15883


      sort: updated_asc
        sorts results by updated_asc
# [RSpecRunTime] RSpec elapsed time: 17 minutes 49.08 seconds. Current RSS: ~1505M. load average: 1.22 1.26 1.29 1/284 15884



# [RSpecRunTime] Finishing example group spec/services/search/group_service_spec.rb. It took 12.82 seconds. Expected to take 14.0 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/email/handler/create_issue_handler_spec.rb. Expected to take 12.77 seconds.

Gitlab::Email::Handler::CreateIssueHandler
  behaves like reply processing shared examples
    when the user could not be found
      raises a UserNotFoundError
# [RSpecRunTime] RSpec elapsed time: 17 minutes 50.27 seconds. Current RSS: ~1505M. load average: 1.22 1.26 1.29 3/284 15885


    when the user is not authorized to the project
      raises a ProjectNotFound
  when email key
    matches the new format
    matches the legacy format
    doesn't match either format
# [RSpecRunTime] RSpec elapsed time: 17 minutes 52.72 seconds. Current RSS: ~1504M. load average: 1.28 1.27 1.29 1/284 15886


  when everything is fine
    behaves like a new issue
      creates a new issue
# [RSpecRunTime] RSpec elapsed time: 17 minutes 53.75 seconds. Current RSS: ~1506M. load average: 1.28 1.27 1.29 1/284 15887


    creates a new issue with legacy email address
      behaves like a new issue
        creates a new issue
# [RSpecRunTime] RSpec elapsed time: 17 minutes 54.8 seconds. Current RSS: ~1507M. load average: 1.28 1.27 1.29 1/284 15888


    when the reply is blank
      creates a new issue
    when there are quotes in email
      creates a new issue
  when all lines of email are quotes
    creates email with correct body
  something is wrong
    raises a RateLimitedService::RateLimitedError
    when the issue could not be saved
      raises an InvalidIssueError
# [RSpecRunTime] RSpec elapsed time: 17 minutes 58.84 seconds. Current RSS: ~1506M. load average: 1.26 1.27 1.29 1/284 15889


    when we can't find the incoming_email_token
      raises an UserNotFoundError
    when project is private
      raises a ProjectNotFound if the user is not a member
    when project ID is invalid
      raises a ProjectNotFound

# [RSpecRunTime] Finishing example group spec/lib/gitlab/email/handler/create_issue_handler_spec.rb. It took 11.43 seconds. Expected to take 12.77 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/import_export/group/relation_tree_restorer_spec.rb. Expected to take 12.59 seconds.

Gitlab::ImportExport::Group::RelationTreeRestorer
  restores group tree
  logs top-level relation creation
  relation object saving
    when relation object is new
      when relation object has invalid subrelations
        logs invalid subrelations
# [RSpecRunTime] RSpec elapsed time: 18 minutes 8.6 seconds. Current RSS: ~1501M. load average: 1.30 1.28 1.29 1/284 15893


    when invalid relation object has a loggable external identifier
      logs invalid record with external identifier
# [RSpecRunTime] RSpec elapsed time: 18 minutes 11.61 seconds. Current RSS: ~1504M. load average: 1.27 1.27 1.29 1/284 15895


    when relation object is persisted
      when relation object is invalid
        saves import failure with nested errors
# [RSpecRunTime] RSpec elapsed time: 18 minutes 13.93 seconds. Current RSS: ~1512M. load average: 1.27 1.27 1.29 1/284 15897



# [RSpecRunTime] Finishing example group spec/lib/gitlab/import_export/group/relation_tree_restorer_spec.rb. It took 13.42 seconds. Expected to take 12.59 seconds.
# [RSpecRunTime] Starting example group spec/models/ci/sources/pipeline_spec.rb. Expected to take 11.88 seconds.

Ci::Sources::Pipeline
  does not allow STI
  is expected to belong to project required: false
  is expected to belong to pipeline required: false
  is expected to belong to build class_name => Ci::Build required: false inverse_of => sourced_pipelines
  is expected to belong to source_project class_name => ::Project required: false
  is expected to belong to source_job required: false
  is expected to belong to source_bridge required: false
  is expected to belong to source_pipeline required: false
  is expected to validate that :project cannot be empty/falsy
  is expected to validate that :pipeline cannot be empty/falsy
  is expected to validate that :source_project cannot be empty/falsy
  is expected to validate that :source_job cannot be empty/falsy
  is expected to validate that :source_pipeline cannot be empty/falsy
  loose foreign key on ci_sources_pipelines.source_project_id
    behaves like cleanup by a loose foreign key
      cleans up (delete or nullify) the model
# [RSpecRunTime] RSpec elapsed time: 18 minutes 18.25 seconds. Current RSS: ~1523M. load average: 1.65 1.35 1.32 1/284 15898


  loose foreign key on ci_sources_pipelines.project_id
    behaves like cleanup by a loose foreign key
      cleans up (delete or nullify) the model
# [RSpecRunTime] RSpec elapsed time: 18 minutes 21.07 seconds. Current RSS: ~1502M. load average: 1.65 1.35 1.32 1/284 15899


  partitioning
    assigns partition_id and source_partition_id from pipeline and source_job
    when the upstream pipeline is from an older partition
      assigns partition_id from the current partition
      assigns source_partition_id to the older partition of the source pipeline
# [RSpecRunTime] RSpec elapsed time: 18 minutes 24.15 seconds. Current RSS: ~1503M. load average: 1.60 1.35 1.31 1/284 15900



# [RSpecRunTime] Finishing example group spec/models/ci/sources/pipeline_spec.rb. It took 10.21 seconds. Expected to take 11.88 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/slash_commands/command_spec.rb. Expected to take 11.76 seconds.

Gitlab::SlashCommands::Command
  #execute
    when no command is available
      displays 404 messages
    when an unknown command is triggered
      displays the help message
    the user can not create an issue
      rejects the actions
    when trying to do deployment
      and user can not create deployment
        returns action
# [RSpecRunTime] RSpec elapsed time: 18 minutes 27.45 seconds. Current RSS: ~1523M. load average: 1.55 1.34 1.31 1/286 15924


      and user has deployment permission
        returns action
        when duplicate action exists
          returns error
# [RSpecRunTime] RSpec elapsed time: 18 minutes 29.92 seconds. Current RSS: ~1533M. load average: 1.55 1.34 1.31 1/289 15948


  #match_command
    IssueShow is triggered
      is expected to eq Gitlab::SlashCommands::IssueShow
    IssueCreate is triggered
      is expected to eq Gitlab::SlashCommands::IssueNew
    IssueSearch is triggered
      is expected to eq Gitlab::SlashCommands::IssueSearch
    IssueMove is triggered
      is expected to eq Gitlab::SlashCommands::IssueMove
    IssueComment is triggered
      is expected to eq Gitlab::SlashCommands::IssueComment
    when incident declare is triggered
      IncidentNew is triggered
        is expected to eq Gitlab::SlashCommands::IncidentManagement::IncidentNew
      when feature flag is disabled
        IncidentNew is triggered
          is expected not to eq Gitlab::SlashCommands::IncidentManagement::IncidentNew

# [RSpecRunTime] Finishing example group spec/lib/gitlab/slash_commands/command_spec.rb. It took 10.86 seconds. Expected to take 11.76 seconds.
# [RSpecRunTime] Starting example group spec/services/notification_recipients/build_service_spec.rb. Expected to take 11.23 seconds.

NotificationRecipients::BuildService
  #build_new_note_recipients
    when there are multiple watchers
      avoids N+1 queries
# [RSpecRunTime] RSpec elapsed time: 18 minutes 38.59 seconds. Current RSS: ~1537M. load average: 1.47 1.33 1.31 1/286 15991


    when there are multiple subscribers
      avoids N+1 queries
      when the project is private
        avoids N+1 queries
# [RSpecRunTime] RSpec elapsed time: 18 minutes 42.91 seconds. Current RSS: ~1503M. load average: 1.43 1.32 1.31 1/284 15992


  #build_new_review_recipients
    when there are multiple watchers
      avoids N+1 queries
# [RSpecRunTime] RSpec elapsed time: 18 minutes 45.85 seconds. Current RSS: ~1490M. load average: 1.43 1.32 1.31 1/284 15993


    when there are multiple subscribers
      avoids N+1 queries
      when the project is private
        avoids N+1 queries
# [RSpecRunTime] RSpec elapsed time: 18 minutes 47.77 seconds. Current RSS: ~1502M. load average: 1.47 1.33 1.31 1/284 15994



# [RSpecRunTime] Finishing example group spec/services/notification_recipients/build_service_spec.rb. It took 12.75 seconds. Expected to take 11.23 seconds.
# [RSpecRunTime] Starting example group spec/graphql/mutations/design_management/delete_spec.rb. Expected to take 10.77 seconds.

Mutations::DesignManagement::Delete
  #resolve
    when the feature is not available
      behaves like resource not available
        behaves like failures
          raises Gitlab::Graphql::Errors::ResourceNotAvailable
# [RSpecRunTime] RSpec elapsed time: 18 minutes 49.07 seconds. Current RSS: ~1502M. load average: 1.47 1.33 1.31 1/286 16042


    when the feature is available
      when the user is not allowed to delete designs
        behaves like resource not available
          behaves like failures
            raises Gitlab::Graphql::Errors::ResourceNotAvailable
# [RSpecRunTime] RSpec elapsed time: 18 minutes 50.18 seconds. Current RSS: ~1506M. load average: 1.47 1.33 1.31 1/288 16090


      deleting an already deleted file
        fails with an argument error
# [RSpecRunTime] RSpec elapsed time: 18 minutes 51.57 seconds. Current RSS: ~1508M. load average: 1.44 1.33 1.31 1/289 16156


      when deleting all the designs
        returns a new version, and no errors
        runs no more than 34 queries
        the current designs
          is empty
# [RSpecRunTime] RSpec elapsed time: 18 minutes 55.29 seconds. Current RSS: ~1508M. load average: 1.44 1.33 1.31 1/289 16352


      when deleting a design
        returns the expected response
        the current designs
          does contain designs b and c
# [RSpecRunTime] RSpec elapsed time: 18 minutes 57.48 seconds. Current RSS: ~1510M. load average: 1.40 1.32 1.31 1/289 16451



# [RSpecRunTime] Finishing example group spec/graphql/mutations/design_management/delete_spec.rb. It took 9.73 seconds. Expected to take 10.77 seconds.
# [RSpecRunTime] Starting example group spec/models/personal_access_token_spec.rb. Expected to take 9.92 seconds.

PersonalAccessToken
  does not allow STI
  .build
    is a valid personal access token
    ensures that the token is generated
  associations
    is expected to belong to previous_personal_access_token class_name => PersonalAccessToken required: false
  scopes
    .project_access_tokens
      is expected to contain exactly #<PersonalAccessToken id: 3, user_id: 886, name: "PAT 4", revoked: false, expires_at: "2024-04-25", c...st_used_at: nil, after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>
    .owner_is_human
      is expected to contain exactly #<PersonalAccessToken id: 4, user_id: 890, name: "PAT 5", revoked: false, expires_at: "2024-04-25", c...st_used_at: nil, after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>
    .for_user
      returns personal access tokens of specified user only
    .for_users
      returns personal access tokens for the specified users only
    .created_before
      is expected to contain exactly #<PersonalAccessToken id: 15, user_id: 900, name: "PAT 16", revoked: false, expires_at: "2024-04-25",...st_used_at: nil, after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>, #<PersonalAccessToken id: 16, user_id: 901, name: "PAT 17", revoked: false, expires_at: "2024-04-25",...00000000 +0000", after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>, and #<PersonalAccessToken id: 17, user_id: 902, name: "PAT 18", revoked: false, expires_at: "2024-04-25",...22843394 +0000", after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>
    .last_used_before
      last_used_*
        does not return token that is last_used_at after given date
        .last_used_before
          returns personal access tokens used before the specified date only
        .last_used_after
          returns personal access tokens used after the specified date only
    .last_used_before_or_unused
      is expected to contain exactly #<PersonalAccessToken id: 22, user_id: 907, name: "PAT 23", revoked: false, expires_at: "2024-04-25",...st_used_at: nil, after_expiry_notification_delivered: false, previous_personal_access_token_id: nil> and #<PersonalAccessToken id: 23, user_id: 908, name: "PAT 24", revoked: false, expires_at: "2024-04-25",...00000000 +0000", after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>
  .active?
    returns false if the personal_access_token is revoked
    returns false if the personal_access_token is expired
    returns true if the personal_access_token is not revoked and not expired
  revoke!
    revokes the token
  validations
    requires at least one scope
    allows creating a token with API scopes
    allows creating a token with `admin_mode` scope
    rejects creating a token with unavailable scopes
    when registry is disabled
      rejects creating a token with read_registry scope
      allows revoking a token with read_registry scope
    when registry is enabled
      allows creating a token with read_registry scope
    validates expires_at
      can't be blank
      when expires_in is less than MAX_PERSONAL_ACCESS_TOKEN_LIFETIME_IN_DAYS days
        is valid
      when expires_in is more than MAX_PERSONAL_ACCESS_TOKEN_LIFETIME_IN_DAYS days
        is invalid
  scopes
    .active
      includes non-revoked tokens
    .expiring_and_not_notified
      in one day
        doesn't have any tokens
      in three days
        only includes a valid token
    .expiring_and_not_notified_without_impersonation
      when token is there to be notified
        has only unnotified tokens
      when no token is there to be notified
        return empty array
    .expired_today_and_not_notified
      returns tokens that have expired today
    .without_impersonation
      returns only non-impersonation tokens
    revoke scopes
      .revoked
        is expected to contain exactly #<PersonalAccessToken id: 49, user_id: 934, name: "PAT 62", revoked: true, expires_at: "2024-04-25", ...st_used_at: nil, after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>
      .not_revoked
        is expected to contain exactly #<PersonalAccessToken id: 50, user_id: 935, name: "PAT 63", revoked: false, expires_at: "2024-04-25",...st_used_at: nil, after_expiry_notification_delivered: false, previous_personal_access_token_id: nil> and #<PersonalAccessToken id: 51, user_id: 936, name: "PAT 64", revoked: nil, expires_at: "2024-04-25", c...st_used_at: nil, after_expiry_notification_delivered: false, previous_personal_access_token_id: nil>
  .simple_sorts
    includes overridden keys
  ordering by expires_at
    .order_expires_at_asc_id_desc
      returns ordered list in combination of expires_at ascending and id descending
  `admin_mode scope
    with feature flag enabled
      with administrator user
        does not add `admin_mode` scope before created
      with normal user
        does not add `admin_mode` scope before created
  token format
    generates a token
    when there is an existing token
      does not change the existing token

# [RSpecRunTime] Finishing example group spec/models/personal_access_token_spec.rb. It took 9.16 seconds. Expected to take 9.92 seconds.
# [RSpecRunTime] Starting example group spec/models/packages/debian/project_distribution_spec.rb. Expected to take 9.55 seconds.

Packages::Debian::ProjectDistribution
  does not allow STI
  behaves like Debian Distribution for common behavior
    relationships
      is expected to belong to creator class_name => User required: false
# [RSpecRunTime] RSpec elapsed time: 19 minutes 8.34 seconds. Current RSS: ~1545M. load average: 1.34 1.31 1.30 2/284 16452


    validations
      #creator
        is expected not to validate that :creator cannot be empty/falsy
      #codename
        is expected to validate that :codename cannot be empty/falsy
        is expected to allow :codename to be ‹"buster"›
        is expected to allow :codename to be ‹"buster-updates"›
        is expected to allow :codename to be ‹"Debian10.5"›
        is expected not to allow :codename to be ‹"jessie/updates"›
        is expected not to allow :codename to be ‹"hé"›
      #suite
        is expected to allow :suite to be ‹nil›
        is expected to allow :suite to be ‹"testing"›
        is expected not to allow :suite to be ‹"hé"›
      #origin
        is expected to allow :origin to be ‹nil›
        is expected to allow :origin to be ‹"Debian"›
        is expected not to allow :origin to be ‹"hé"›
      #label
        is expected to allow :label to be ‹nil›
        is expected to allow :label to be ‹"Debian"›
        is expected not to allow :label to be ‹"hé"›
      #version
        is expected to allow :version to be ‹nil›
        is expected to allow :version to be ‹"10.6"›
        is expected not to allow :version to be ‹"hé"›
      #description
        is expected to allow :description to be ‹nil›
        is expected to allow :description to be ‹"Debian 10.6 Released 26 September 2020"›
        is expected to allow :description to be ‹"Hé !"›
      #valid_time_duration_seconds
        is expected to allow :valid_time_duration_seconds to be ‹nil›
        is expected to allow :valid_time_duration_seconds to be ‹86400›
        is expected not to allow :valid_time_duration_seconds to be ‹43200›
      #file
        is expected not to validate that :file cannot be empty/falsy
      #file_store
        is expected to validate that :file_store cannot be empty/falsy
      #file_signature
        is expected not to validate that :file_signature is empty/falsy
      #signed_file
        is expected not to validate that :signed_file cannot be empty/falsy
      #signed_file_store
        is expected to validate that :signed_file_store cannot be empty/falsy
    scopes
      .with_container
        does not return other distributions
      .with_codename
        does not return other distributions
      .with_suite
        does not return other distributions
      .with_codename_or_suite
        passing codename
          does not return other distributions
        passing suite
          does not return other distributions
  behaves like Debian Distribution with project container
    behaves like Debian Distribution for specific behavior
      #unique_debian_suite_and_codename
        with_existing_suite: false, suite: nil, codename: :keep, errors: nil
          debian_project_distribution
            is expected to be valid
        with_existing_suite: false, suite: "testing", codename: :keep, errors: nil
          debian_project_distribution
            is expected to be valid
        with_existing_suite: false, suite: nil, codename: :codename, errors: ["Codename has already been taken"]
          debian_project_distribution
            is expected to eq ["Codename has already been taken"]
        with_existing_suite: false, suite: :codename, codename: :keep, errors: ["Suite has already been taken as Codename"]
          debian_project_distribution
            is expected to eq ["Suite has already been taken as Codename"]
        with_existing_suite: false, suite: :codename, codename: :codename, errors: ["Codename has already been taken", "Suite has already been taken as Codename"]
          debian_project_distribution
            is expected to eq ["Codename has already been taken", "Suite has already been taken as Codename"]
        with_existing_suite: true, suite: nil, codename: :keep, errors: nil
          debian_project_distribution
            is expected to be valid
        with_existing_suite: true, suite: "testing", codename: :keep, errors: nil
          debian_project_distribution
            is expected to be valid
        with_existing_suite: true, suite: nil, codename: :codename, errors: ["Codename has already been taken"]
          debian_project_distribution
            is expected to eq ["Codename has already been taken"]
        with_existing_suite: true, suite: :codename, codename: :keep, errors: ["Suite has already been taken as Codename"]
          debian_project_distribution
            is expected to eq ["Suite has already been taken as Codename"]
        with_existing_suite: true, suite: :codename, codename: :codename, errors: ["Codename has already been taken", "Suite has already been taken as Codename"]
          debian_project_distribution
            is expected to eq ["Codename has already been taken", "Suite has already been taken as Codename"]
        with_existing_suite: true, suite: nil, codename: :suite, errors: ["Codename has already been taken as Suite"]
          debian_project_distribution
            is expected to eq ["Codename has already been taken as Suite"]
        with_existing_suite: true, suite: :suite, codename: :keep, errors: ["Suite has already been taken"]
          debian_project_distribution
            is expected to eq ["Suite has already been taken"]
        with_existing_suite: true, suite: :suite, codename: :suite, errors: ["Suite has already been taken", "Codename has already been taken as Suite"]
          debian_project_distribution
            is expected to eq ["Suite has already been taken", "Codename has already been taken as Suite"]
    relationships
      is expected to belong to project required: false
      is expected to have one key class_name => Packages::Debian::ProjectDistributionKey inverse_of => distribution
      is expected to have many components class_name => Packages::Debian::ProjectComponent inverse_of => distribution
      is expected to have many architectures class_name => Packages::Debian::ProjectArchitecture inverse_of => distribution
    #project
      is expected to validate that :project cannot be empty/falsy
    project distribution specifics
      relationships
        is expected to have many publications class_name => Packages::Debian::Publication inverse_of => distribution
        is expected to have many packages class_name => Packages::Package through publications

# [RSpecRunTime] Finishing example group spec/models/packages/debian/project_distribution_spec.rb. It took 8.51 seconds. Expected to take 9.55 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/git/object_pool_spec.rb. Expected to take 9.23 seconds.

Gitlab::Git::ObjectPool
  #storage
    equals the pool repository's shard name
  .init_from_gitaly
    returns an object pool object
  #create
    when the pool doesn't exist yet
      creates the pool
    when the pool already exists
      raises an FailedPrecondition
  #exists?
    when the object pool doesn't exist
      returns false
    when the object pool exists
      returns true
  #link
    when linked for the first time
      sets a remote
    when the remote is already set
      doesn't raise an error
  #fetch
    when the object pool repository exists
      without changes
        does not raise an error
# [RSpecRunTime] RSpec elapsed time: 19 minutes 22.66 seconds. Current RSS: ~1619M. load average: 1.41 1.33 1.31 1/284 16568


      with new commit in source repository
        fetches objects from the source repository
# [RSpecRunTime] RSpec elapsed time: 19 minutes 23.96 seconds. Current RSS: ~1609M. load average: 1.41 1.33 1.31 1/287 16633



# [RSpecRunTime] Finishing example group spec/lib/gitlab/git/object_pool_spec.rb. It took 8.82 seconds. Expected to take 9.23 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/trace/stream_spec.rb. Expected to take 9.03 seconds.

Gitlab::Ci::Trace::Stream
  delegates
    is expected to delegate #close to the #stream object
    is expected to delegate #tell to the #stream object
    is expected to delegate #seek to the #stream object
    is expected to delegate #size to the #stream object
    is expected to delegate #path to the #stream object
    is expected to delegate #truncate to the #stream object
    is expected to delegate #valid? to the #stream object as #present?
# [RSpecRunTime] RSpec elapsed time: 19 minutes 25.43 seconds. Current RSS: ~1603M. load average: 1.41 1.33 1.31 1/287 16634


  #limit
    when stream is StringIO
      behaves like limits
        if size is larger we start from beginning
        if size is smaller we start from the end
        when the trace contains ANSI sequence and Unicode
          forwards to the next linefeed, case 1
          forwards to the next linefeed, case 2
          reads in binary, output as Encoding.default_external
    when stream is ChunkedIO
      behaves like limits
        if size is larger we start from beginning
        if size is smaller we start from the end
        when the trace contains ANSI sequence and Unicode
          forwards to the next linefeed, case 1
          forwards to the next linefeed, case 2
          reads in binary, output as Encoding.default_external
  #append
    when stream is Tempfile
      behaves like appends
        truncates and appends content
        appends in binary mode
    when stream is ChunkedIO
      behaves like appends
        truncates and appends content
        appends in binary mode
    metrics
      increments trace streamed operation
      increments trace bytes counter
  #set
    when stream is StringIO
      behaves like sets
        overwrite content
    when stream is ChunkedIO
      behaves like sets
        overwrite content
  #raw
    when stream is File
      behaves like sets
        returns all contents if last_lines is not specified
        limit max lines
          returns last few lines
          returns everything if trying to get too many lines
        limit max size
          returns every lines with respect of the size
          returns everything if trying to get too many bytes
        limit max lines and max size
          returns max lines if max size is greater
          returns max size if max lines is greater
    when stream is ChunkedIO
      behaves like sets
        returns all contents if last_lines is not specified
        limit max lines
          returns last few lines
          returns everything if trying to get too many lines
        limit max size
          returns every lines with respect of the size
          returns everything if trying to get too many bytes
        limit max lines and max size
          returns max lines if max size is greater
          returns max size if max lines is greater
  #html
    when stream is StringIO
      behaves like htmls
        returns html
        returns html for last line only
    when stream is ChunkedIO
      behaves like htmls
        returns html
        returns html for last line only
  #extract_coverage
    when stream is StringIO
      behaves like extract_coverages
        valid content & regex
          is expected to eq "98.29"
        valid content & bad regex
          is expected to be nil
        no coverage content & regex
          is expected to be nil
        multiple results in content & regex
          returns the last matched coverage
        when BUFFER_SIZE is smaller than stream.size
          is expected to eq "98.29"
        when regex is multi-byte char
          is expected to eq "95.0"
        when BUFFER_SIZE is equal to stream.size
          is expected to eq "98.29"
        using a regex capture
          is expected to eq "65"
        malicious regexp
          takes under a second
        multi-line data with rooted regexp
          is expected to eq "65"
        long line
          is expected to eq "100"
        many lines
          is expected to eq "100"
        empty regex
          skips processing
        nil regex
          skips processing
    when stream is ChunkedIO
      behaves like extract_coverages
        valid content & regex
          is expected to eq "98.29"
        valid content & bad regex
          is expected to be nil
        no coverage content & regex
          is expected to be nil
        multiple results in content & regex
          returns the last matched coverage
        when BUFFER_SIZE is smaller than stream.size
          is expected to eq "98.29"
        when regex is multi-byte char
          is expected to eq "95.0"
        when BUFFER_SIZE is equal to stream.size
          is expected to eq "98.29"
        using a regex capture
          is expected to eq "65"
        malicious regexp
          takes under a second
        multi-line data with rooted regexp
          is expected to eq "65"
        long line
          is expected to eq "100"
        many lines
          is expected to eq "100"
        empty regex
          skips processing
        nil regex
          skips processing

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/trace/stream_spec.rb. It took 8.51 seconds. Expected to take 9.03 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/legacy_github_import/pull_request_formatter_spec.rb. Expected to take 8.54 seconds.

Gitlab::LegacyGithubImport::PullRequestFormatter
  when importing a GitHub project
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#attributes
      when pull request is open
        returns formatted attributes
      when pull request is closed
        returns formatted attributes
      when pull request is merged
        returns formatted attributes
      when it is assigned to someone
        returns nil as assignee_id when is not a GitLab user
        returns GitLab user id associated with GitHub email as assignee_id
      when author is a GitLab user
        returns project creator_id as author_id when is not a GitLab user
        returns GitLab user id associated with GitHub email as author_id
        returns description without created at tag line
      when it has a milestone
        returns nil when milestone does not exist
        returns milestone when it exists
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#number
      returns pull request number
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#source_branch_name
      when source branch exists
        returns branch ref
      when source branch does not exist
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
      when source branch is from a fork
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
      when source branch is from a deleted fork
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#target_branch_name
      when target branch exists
        returns branch ref
      when target branch does not exist
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
  when importing a Gitea project
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#attributes
      when pull request is open
        returns formatted attributes
      when pull request is closed
        returns formatted attributes
      when pull request is merged
        returns formatted attributes
      when it is assigned to someone
        returns nil as assignee_id when is not a GitLab user
        returns GitLab user id associated with GitHub email as assignee_id
      when author is a GitLab user
        returns project creator_id as author_id when is not a GitLab user
        returns GitLab user id associated with GitHub email as author_id
        returns description without created at tag line
      when it has a milestone
        returns nil when milestone does not exist
        returns milestone when it exists
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#number
      returns pull request number
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#source_branch_name
      when source branch exists
        returns branch ref
      when source branch does not exist
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
      when source branch is from a fork
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
      when source branch is from a deleted fork
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
    behaves like Gitlab::LegacyGithubImport::PullRequestFormatter#target_branch_name
      when target branch exists
        returns branch ref
      when target branch does not exist
        prefixes branch name with gh-:short_sha/:number/:user pattern to avoid collision
  #valid?
    when source, and target repos are not a fork
      returns true
    when source repo is a fork
      returns true
    when target repo is a fork
      returns true
  #cross_project?
    when source and target repositories are different
      returns true
    when source repository does not exist anymore
      returns true
    when source and target repositories are the same
      returns false
  #source_branch_exists?
    returns false when is a cross_project
  #url
    return raw url
  #opened?
    returns true when state is "open"

# [RSpecRunTime] Finishing example group spec/lib/gitlab/legacy_github_import/pull_request_formatter_spec.rb. It took 7.31 seconds. Expected to take 8.54 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/gitaly_client/with_feature_flag_actors_spec.rb. Expected to take 8.44 seconds.

Gitlab::GitalyClient::WithFeatureFlagActors
  #user_actor
    when user is not available in ApplicationContext
      returns nil
    when user is available in ApplicationContext
      returns corresponding user record
    when user does not exist
      returns corresponding user record
  #repository, #project_actor, #group_actor
    when normal project repository
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
    when project wiki repository
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
    when repository of project in user namespace
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
    when personal snippet
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
    when project snippet
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
    when project design
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
      behaves like Gitaly feature flag actors are inferred from repository
        captures correct actors
        does not issues SQL queries after the first invocation
  #gitaly_client_call
    triggers client call with feature flag actors
    when call without repository_actor
      calls error tracking track_and_raise_for_dev_exception
    #gitaly_feature_flag_actors
      returns a hash with collected feature flag actors

# [RSpecRunTime] Finishing example group spec/lib/gitlab/gitaly_client/with_feature_flag_actors_spec.rb. It took 7.27 seconds. Expected to take 8.44 seconds.
# [RSpecRunTime] Starting example group spec/serializers/profile/event_entity_spec.rb. Expected to take 8.13 seconds.

Profile::EventEntity
  exposes fields
  with target
    when target does not responds to :reference_link_text
      exposes target fields
# [RSpecRunTime] RSpec elapsed time: 19 minutes 48.63 seconds. Current RSS: ~1604M. load average: 1.33 1.32 1.30 1/284 16747


    when target responds to :reference_link_text
      exposes reference_link_text
    when target is a wiki page
      exposes web_url
    when target is a work item
      exposes `issue_type`
    when target is an issue
      exposes `issue_type`
  for push events
    exposes ref fields
    exposes commit fields
    exposes create_mr_path
    with tag
      behaves like returns ref path
        is expected to be present
# [RSpecRunTime] RSpec elapsed time: 19 minutes 52.12 seconds. Current RSS: ~1601M. load average: 1.30 1.31 1.30 1/284 16748


    with branch
      behaves like returns ref path
        is expected to be present
  for private events
    when include_private_contributions? is true
      exposes only created_at, action, and author
    when include_private_contributions? is false
      is expected to be empty
  for noteable events
    exposes noteable fields
  without target
    only exposes target.type
  with resource parent
    exposes resource parent fields

# [RSpecRunTime] Finishing example group spec/serializers/profile/event_entity_spec.rb. It took 7.51 seconds. Expected to take 8.13 seconds.
# [RSpecRunTime] Starting example group spec/graphql/types/merge_request_type_spec.rb. Expected to take 7.9 seconds.

Types::MergeRequestType
  is expected to expose permissions using Types::PermissionTypes::MergeRequest
  is expected to require graphql authorizations :read_merge_request
  is expected to include Types::Notes::NoteableInterface
  is expected to include Types::CurrentUserTodos
  is expected to include Types::TodoableInterface
  has the expected fields
  #pipelines
    is expected to have attributes {:max_page_size => 500}
  #diff_stats_summary
    when MR metrics has additions and deletions
      pulls out data from metrics object
  #diverged_from_target_branch
    delegates the diverged_from_target_branch? call to the merge request entity
  merge_status_enum
    has the type MergeStatus
    when the the DB value is preparing
      serializes correctly
    when the the DB value is unchecked
      serializes correctly
    when the the DB value is cannot_be_merged_recheck
      serializes correctly
    when the the DB value is checking
      serializes correctly
    when the the DB value is cannot_be_merged_rechecking
      serializes correctly
    when the the DB value is can_be_merged
      serializes correctly
    when the the DB value is cannot_be_merged
      serializes correctly
  #merge_user
    when MR is merged
      is not nil
    when MR is set to merge when pipeline succeeds
      is not nil

# [RSpecRunTime] Finishing example group spec/graphql/types/merge_request_type_spec.rb. It took 5.72 seconds. Expected to take 7.9 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/search/recent_issues_spec.rb. Expected to take 7.77 seconds.

Gitlab::Search::RecentIssues
  behaves like search recent items
    #log_view
      adds the item to the recent items
      removes an item when it exceeds the size items_limit
      expires the items after expires_after
      does not include results logged for another user
# [RSpecRunTime] RSpec elapsed time: 20 minutes 3.3 seconds. Current RSS: ~1550M. load average: 1.34 1.32 1.30 1/284 16749


    #search
      matches partial text in the item title
      returns results sorted by recently viewed
      does not leak items you no longer have access to
      limits results to 5 items
# [RSpecRunTime] RSpec elapsed time: 20 minutes 8.17 seconds. Current RSS: ~1522M. load average: 1.39 1.33 1.31 1/284 16750



# [RSpecRunTime] Finishing example group spec/lib/gitlab/search/recent_issues_spec.rb. It took 7.87 seconds. Expected to take 7.77 seconds.
# [RSpecRunTime] Starting example group spec/models/protected_tag/create_access_level_spec.rb. Expected to take 7.38 seconds.

ProtectedTag::CreateAccessLevel
  is expected to belong to protected_tag required: false
  does not allow STI
  validations
    when role?
      is expected to validate that :access_level is either ‹30›, ‹40›, ‹60›, or ‹0›
      is expected to validate that :access_level cannot be empty/falsy
      is expected to validate that :access_level is case-sensitively unique within the scope of :protected_tag_id
# [RSpecRunTime] RSpec elapsed time: 20 minutes 10.03 seconds. Current RSS: ~1511M. load average: 1.39 1.33 1.31 1/284 16751


    when not role?
      is expected not to validate that :access_level cannot be empty/falsy
      is expected not to validate that :access_level is either ‹30›, ‹40›, ‹60›, or ‹0›
      is expected not to validate that :access_level is case-sensitively unique within the scope of :protected_tag_id
  ::human_access_levels
    is expected to eq {30=>"Developers + Maintainers", 40=>"Maintainers", 60=>"Instance admins", 0=>"No one"}
  #check_access
    when current_user is nil
      is expected to eq false
    when current_user access exists without membership
      does not check membership if check_membership_in_protected_ref_access FF is disabled
      when check_membership_in_protected_ref_access FF is enabled
        does check membership
        returns false
        when user has inherited membership
          is expected to be truthy
    when access_level is NO_ACCESS
      is expected to eq false
    when instance admin access is configured
      when current_user is a maintainer
        is expected to eq false
      when current_user is admin
        is expected to eq true
    when current_user can push_code to project
      and member access is high enough
        is expected to eq true
        when external authorization denies access
          is expected to be falsey
      and member access is too low
        is expected to eq false
    when current_user cannot push_code to project
      is expected to eq false
  associations
    is expected to belong to deploy_key required: false
  #check_access
    when this protected_tag_create_access_level is tied to a deploy key
      when the deploy key is among the active keys for this project
        is expected to be truthy
      when user is missing
        is expected to be falsey
      when deploy key does not belong to the user
        is expected to be falsey
      when user cannot access the project
        is expected to be falsey
      when the deploy key is not among the active keys of this project
        is expected to be falsey
  #project
    delegates project to protected_tag association
  #type
    when deploy_key?
      returns :deploy_key
  validations
    when deploy_key?
      when deploy key enabled for the project
        is valid
      when a deploy key already added for this access level
        is not valid
      when deploy key is not enabled for the project
        is not valid
      when deploy key is not active for the project
        is not valid
  ::allowed_access_levels
    when running on Gitlab.com?
      is expected to contain exactly 30, 40, and 0
    when self hosted?
      is expected to contain exactly 30, 40, 60, and 0

# [RSpecRunTime] Finishing example group spec/models/protected_tag/create_access_level_spec.rb. It took 7.02 seconds. Expected to take 7.38 seconds.
# [RSpecRunTime] Starting example group spec/services/wiki_pages/create_service_spec.rb. Expected to take 7.18 seconds.

WikiPages::CreateService
  behaves like WikiPages::CreateService#execute
    creates wiki page with valid attributes
    executes webhooks
    counts wiki page creation
    the new page is at the top level
      creates appropriate events
# [RSpecRunTime] RSpec elapsed time: 20 minutes 18.53 seconds. Current RSS: ~1542M. load average: 1.33 1.32 1.30 1/289 16884


    the new page is in a subsection
      creates appropriate events
    when the options are bad
      does not count a creation event
      does not record the activity
      reports the error
# [RSpecRunTime] RSpec elapsed time: 20 minutes 21.34 seconds. Current RSS: ~1535M. load average: 1.33 1.32 1.30 1/289 16925


  #execute
    when wiki create fails due to git error
      catches the thrown error and returns a ServiceResponse error

# [RSpecRunTime] Finishing example group spec/services/wiki_pages/create_service_spec.rb. It took 6.56 seconds. Expected to take 7.18 seconds.
# [RSpecRunTime] Starting example group spec/models/packages/npm/metadata_cache_spec.rb. Expected to take 7.04 seconds.

Packages::Npm::MetadataCache
  does not allow STI
  is expected to be a kind of Packages::Downloadable
  is expected to be a kind of FileStoreMounter
  save callbacks
    object_storage_key
      when the record is created
        sets object_storage_key
        when using `update!`
          sets object_storage_key
# [RSpecRunTime] RSpec elapsed time: 20 minutes 22.93 seconds. Current RSS: ~1531M. load average: 1.30 1.31 1.30 1/289 16926


      when the record is updated
        does not update object_storage_key
  .pending_destruction
    is expected to contain exactly #<Packages::Npm::MetadataCache id: 5, created_at: "2024-03-26 11:44:31.880420637 +0000", updated_at: ...a.json", package_name: "@namespace705/package-2", object_storage_key: [FILTERED], status: "default">
# [RSpecRunTime] RSpec elapsed time: 20 minutes 24.12 seconds. Current RSS: ~1533M. load average: 1.30 1.31 1.30 1/289 16927


  readonly attributes
    object_storage_key
      sets object_storage_key
      when the record is persisted
        does not re-set object_storage_key
  .find_or_build
    when a metadata cache exists
      finds an existing metadata cache
    when a metadata cache not found
      builds a new instance
  .next_pending_destruction
    returns the oldest pending destruction item based on updated_at
# [RSpecRunTime] RSpec elapsed time: 20 minutes 26.15 seconds. Current RSS: ~1532M. load average: 1.30 1.31 1.30 1/289 16928


  .stale
    is expected to contain exactly #<Packages::Npm::MetadataCache id: 14, created_at: "2024-03-26 11:44:34.923689191 +0000", updated_at:....json", package_name: "@namespace713/package-10", object_storage_key: [FILTERED], status: "default">
  validations
    is expected to validate that :file cannot be empty/falsy
    is expected to validate that :project cannot be empty/falsy
    is expected to validate that :size cannot be empty/falsy
    #package_name
      is expected to validate that :package_name cannot be empty/falsy
      uniqueness
        ensures the package name is unique within a given project
        allows duplicate file names in different projects
# [RSpecRunTime] RSpec elapsed time: 20 minutes 27.94 seconds. Current RSS: ~1536M. load average: 1.28 1.31 1.30 1/289 16929


      format
        is expected to allow :package_name to be ‹"my.app-11.07.2018"›
        is expected to allow :package_name to be ‹"@group-1/package"›
        is expected to allow :package_name to be ‹"@any-scope/package"›
        is expected to allow :package_name to be ‹"unscoped-package"›
        is expected not to allow :package_name to be ‹"my(dom$$$ain)com.my-app"›
        is expected not to allow :package_name to be ‹"@inv@lid-scope/package"›
        is expected not to allow :package_name to be ‹"@scope/../../package"›
        is expected not to allow :package_name to be ‹"@scope%2e%2e%fpackage"›
        is expected not to allow :package_name to be ‹"@scope/sub/package"›
  relationships
    is expected to belong to project required: false inverse_of => npm_metadata_caches

# [RSpecRunTime] Finishing example group spec/models/packages/npm/metadata_cache_spec.rb. It took 7.24 seconds. Expected to take 7.04 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/pagination/keyset/order_spec.rb. Expected to take 6.63 seconds.

Gitlab::Pagination::Keyset::Order
  paginate over items correctly
    when ordering by a distinct column
      behaves like order examples
        is expected to eq [{"id"=>9, "month"=>0, "year"=>0}, {"id"=>8, "month"=>0, "year"=>0}, {"id"=>7, "month"=>0, "year"=>0}..."id"=>3, "month"=>0, "year"=>0}, {"id"=>2, "month"=>0, "year"=>0}, {"id"=>1, "month"=>0, "year"=>0}]
        when paginating forwards
          is expected to eq [{"id"=>9, "month"=>0, "year"=>0}, {"id"=>8, "month"=>0, "year"=>0}, {"id"=>7, "month"=>0, "year"=>0}..."id"=>3, "month"=>0, "year"=>0}, {"id"=>2, "month"=>0, "year"=>0}, {"id"=>1, "month"=>0, "year"=>0}]
          with different page size
            is expected to eq [{"id"=>9, "month"=>0, "year"=>0}, {"id"=>8, "month"=>0, "year"=>0}, {"id"=>7, "month"=>0, "year"=>0}..."id"=>3, "month"=>0, "year"=>0}, {"id"=>2, "month"=>0, "year"=>0}, {"id"=>1, "month"=>0, "year"=>0}]
          when using the conditions in an UNION query
            is expected to eq [{"id"=>9, "month"=>0, "year"=>0}, {"id"=>8, "month"=>0, "year"=>0}, {"id"=>7, "month"=>0, "year"=>0}..."id"=>3, "month"=>0, "year"=>0}, {"id"=>2, "month"=>0, "year"=>0}, {"id"=>1, "month"=>0, "year"=>0}]
          when the cursor attributes are SQL literals
            is expected to eq [{"id"=>9, "month"=>0, "year"=>0}, {"id"=>8, "month"=>0, "year"=>0}, {"id"=>7, "month"=>0, "year"=>0}..."id"=>3, "month"=>0, "year"=>0}, {"id"=>2, "month"=>0, "year"=>0}, {"id"=>1, "month"=>0, "year"=>0}]
            when using the conditions in an UNION query
              is expected to eq [{"id"=>9, "month"=>0, "year"=>0}, {"id"=>8, "month"=>0, "year"=>0}, {"id"=>7, "month"=>0, "year"=>0}..."id"=>3, "month"=>0, "year"=>0}, {"id"=>2, "month"=>0, "year"=>0}, {"id"=>1, "month"=>0, "year"=>0}]
        when paginating backwards
          is expected to eq [{"id"=>2, "month"=>0, "year"=>0}, {"id"=>3, "month"=>0, "year"=>0}, {"id"=>4, "month"=>0, "year"=>0}..."id"=>7, "month"=>0, "year"=>0}, {"id"=>8, "month"=>0, "year"=>0}, {"id"=>9, "month"=>0, "year"=>0}]
    when ordering by two non-nullable columns and a distinct column
      uses the row comparison method
      behaves like order examples
        is expected to eq [{"id"=>3, "month"=>2, "year"=>2009}, {"id"=>6, "month"=>2, "year"=>2009}, {"id"=>1, "month"=>2, "yea..."month"=>1, "year"=>2011}, {"id"=>8, "month"=>4, "year"=>2012}, {"id"=>9, "month"=>5, "year"=>2013}]
        when paginating forwards
          is expected to eq [{"id"=>3, "month"=>2, "year"=>2009}, {"id"=>6, "month"=>2, "year"=>2009}, {"id"=>1, "month"=>2, "yea..."month"=>1, "year"=>2011}, {"id"=>8, "month"=>4, "year"=>2012}, {"id"=>9, "month"=>5, "year"=>2013}]
          with different page size
            is expected to eq [{"id"=>3, "month"=>2, "year"=>2009}, {"id"=>6, "month"=>2, "year"=>2009}, {"id"=>1, "month"=>2, "yea..."month"=>1, "year"=>2011}, {"id"=>8, "month"=>4, "year"=>2012}, {"id"=>9, "month"=>5, "year"=>2013}]
          when using the conditions in an UNION query
            is expected to eq [{"id"=>3, "month"=>2, "year"=>2009}, {"id"=>6, "month"=>2, "year"=>2009}, {"id"=>1, "month"=>2, "yea..."month"=>1, "year"=>2011}, {"id"=>8, "month"=>4, "year"=>2012}, {"id"=>9, "month"=>5, "year"=>2013}]
          when the cursor attributes are SQL literals
            is expected to eq [{"id"=>3, "month"=>2, "year"=>2009}, {"id"=>6, "month"=>2, "year"=>2009}, {"id"=>1, "month"=>2, "yea..."month"=>1, "year"=>2011}, {"id"=>8, "month"=>4, "year"=>2012}, {"id"=>9, "month"=>5, "year"=>2013}]
            when using the conditions in an UNION query
              is expected to eq [{"id"=>3, "month"=>2, "year"=>2009}, {"id"=>6, "month"=>2, "year"=>2009}, {"id"=>1, "month"=>2, "yea..."month"=>1, "year"=>2011}, {"id"=>8, "month"=>4, "year"=>2012}, {"id"=>9, "month"=>5, "year"=>2013}]
        when paginating backwards
          is expected to eq [{"id"=>8, "month"=>4, "year"=>2012}, {"id"=>5, "month"=>1, "year"=>2011}, {"id"=>4, "month"=>1, "yea..."month"=>2, "year"=>2010}, {"id"=>6, "month"=>2, "year"=>2009}, {"id"=>3, "month"=>2, "year"=>2009}]
    when ordering by nullable columns and a distinct column
      behaves like order examples
        is expected to eq [{"id"=>7, "month"=>2, "year"=>2010}, {"id"=>11, "month"=>2, "year"=>2010}, {"id"=>1, "month"=>nil, "...onth"=>5, "year"=>nil}, {"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}]
        when paginating forwards
          is expected to eq [{"id"=>7, "month"=>2, "year"=>2010}, {"id"=>11, "month"=>2, "year"=>2010}, {"id"=>1, "month"=>nil, "...onth"=>5, "year"=>nil}, {"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}]
          with different page size
            is expected to eq [{"id"=>7, "month"=>2, "year"=>2010}, {"id"=>11, "month"=>2, "year"=>2010}, {"id"=>1, "month"=>nil, "...onth"=>5, "year"=>nil}, {"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}]
          when using the conditions in an UNION query
            is expected to eq [{"id"=>7, "month"=>2, "year"=>2010}, {"id"=>11, "month"=>2, "year"=>2010}, {"id"=>1, "month"=>nil, "...onth"=>5, "year"=>nil}, {"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}]
          when the cursor attributes are SQL literals
            is expected to eq [{"id"=>7, "month"=>2, "year"=>2010}, {"id"=>11, "month"=>2, "year"=>2010}, {"id"=>1, "month"=>nil, "...onth"=>5, "year"=>nil}, {"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}]
            when using the conditions in an UNION query
              is expected to eq [{"id"=>7, "month"=>2, "year"=>2010}, {"id"=>11, "month"=>2, "year"=>2010}, {"id"=>1, "month"=>nil, "...onth"=>5, "year"=>nil}, {"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}]
        when paginating backwards
          is expected to eq [{"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>4, "month"=>5, "year"=>nil}, {"id"=>9, "month"=>2, "yea...nth"=>nil, "year"=>2010}, {"id"=>11, "month"=>2, "year"=>2010}, {"id"=>7, "month"=>2, "year"=>2010}]
    when ordering by nullable columns with nulls first ordering and a distinct column
      behaves like order examples
        is expected to eq [{"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}, {"id"=>9, "month"=>2, "..."month"=>2, "year"=>2011}, {"id"=>6, "month"=>2, "year"=>2011}, {"id"=>8, "month"=>2, "year"=>2012}]
        when paginating forwards
          is expected to eq [{"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}, {"id"=>9, "month"=>2, "..."month"=>2, "year"=>2011}, {"id"=>6, "month"=>2, "year"=>2011}, {"id"=>8, "month"=>2, "year"=>2012}]
          with different page size
            is expected to eq [{"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}, {"id"=>9, "month"=>2, "..."month"=>2, "year"=>2011}, {"id"=>6, "month"=>2, "year"=>2011}, {"id"=>8, "month"=>2, "year"=>2012}]
          when using the conditions in an UNION query
            is expected to eq [{"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}, {"id"=>9, "month"=>2, "..."month"=>2, "year"=>2011}, {"id"=>6, "month"=>2, "year"=>2011}, {"id"=>8, "month"=>2, "year"=>2012}]
          when the cursor attributes are SQL literals
            is expected to eq [{"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}, {"id"=>9, "month"=>2, "..."month"=>2, "year"=>2011}, {"id"=>6, "month"=>2, "year"=>2011}, {"id"=>8, "month"=>2, "year"=>2012}]
            when using the conditions in an UNION query
              is expected to eq [{"id"=>3, "month"=>nil, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}, {"id"=>9, "month"=>2, "..."month"=>2, "year"=>2011}, {"id"=>6, "month"=>2, "year"=>2011}, {"id"=>8, "month"=>2, "year"=>2012}]
        when paginating backwards
          is expected to eq [{"id"=>6, "month"=>2, "year"=>2011}, {"id"=>2, "month"=>2, "year"=>2011}, {"id"=>11, "month"=>2, "ye...onth"=>2, "year"=>nil}, {"id"=>10, "month"=>nil, "year"=>nil}, {"id"=>3, "month"=>nil, "year"=>nil}]
    when ordering by non-nullable columns with mixed directions and a distinct column
      takes out a slice between two cursors
    when ordering by the named function LOWER
      uses downcased value for encoding and decoding a cursor
    when the passed cursor values do not match with the order definition
      when values are missing
        raises error
      when extra values are present
        raises error
      when values are missing and extra values are present
        raises error
      when no values are passed
        returns empty array
    extract and apply cursor attributes
      when string attribute name is given
        behaves like cursor attribute examples
          #cursor_attributes_for_node
            is expected to eq {"id"=>"100"}
          #apply_cursor_conditions
            when params with string keys are passed
              is expected to include "\"projects\".\"id\" < 100)"
            when params with symbol keys are passed
              is expected to include "\"projects\".\"id\" < 100)"
      when symbol attribute name is given
        behaves like cursor attribute examples
          #cursor_attributes_for_node
            is expected to eq {"id"=>"100"}
          #apply_cursor_conditions
            when params with string keys are passed
              is expected to include "\"projects\".\"id\" < 100)"
            when params with symbol keys are passed
              is expected to include "\"projects\".\"id\" < 100)"
        with projections
          when additional_projections is empty
            has correct projections
          when there are additional_projections
            has correct projections
      when the cursor attribute is an array
        #cursor_attributes_for_node
          is expected to eq {"traversal_ids"=>[1, 2]}
        #apply_cursor_conditions
          is expected to include "\"namespaces\".\"traversal_ids\" > '{1,2}')"
  UNION optimization
    when UNION optimization is off
      returns items in the correct order
    when UNION optimization is on
      returns items in the correct order
      calls Gitlab::SQL::Union
      builds UNION query
      when the scope model has ignored columns
        when scope selects all columns
          returns items in the correct order
        when scope selects only specific columns
          returns items in the correct order
  #attribute_names
    is expected to contain exactly "id" and "name"

# [RSpecRunTime] Finishing example group spec/lib/gitlab/pagination/keyset/order_spec.rb. It took 6.0 seconds. Expected to take 6.63 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/auth/unique_ips_limiter_spec.rb. Expected to take 6.45 seconds.

Gitlab::Auth::UniqueIpsLimiter
  #count_unique_ips
    resets count after specified time window
    non unique IPs
      properly counts them
# [RSpecRunTime] RSpec elapsed time: 20 minutes 36.9 seconds. Current RSS: ~1581M. load average: 1.24 1.30 1.30 1/284 16930


    unique IPs
      properly counts them
  #limit_user!
    allows user authenticating from the same ip
    blocks user authenticating from two distinct ips
    allow 2 unique ips
      blocks user trying to login from third ip
# [RSpecRunTime] RSpec elapsed time: 20 minutes 40.9 seconds. Current RSS: ~1603M. load average: 1.24 1.30 1.30 1/284 16931



# [RSpecRunTime] Finishing example group spec/lib/gitlab/auth/unique_ips_limiter_spec.rb. It took 5.9 seconds. Expected to take 6.45 seconds.
# [RSpecRunTime] Starting example group spec/models/sentry_issue_spec.rb. Expected to take 6.36 seconds.

SentryIssue
  does not allow STI
  associations
    is expected to belong to issue required: false
  validations
    is expected to validate that :issue cannot be empty/falsy
    is expected to validate that :issue is case-sensitively unique
    is expected to validate that :sentry_issue_identifier cannot be empty/falsy
    allows duplicated sentry_issue_identifier
    validates uniqueness of sentry_issue_identifier per project
    when importing
      is expected not to validate that :issue cannot be empty/falsy
# [RSpecRunTime] RSpec elapsed time: 20 minutes 45.71 seconds. Current RSS: ~1548M. load average: 1.22 1.29 1.29 1/284 16932


  callbacks
    after create commit do
      updates Sentry with a reciprocal link on creation
  .for_project_and_identifier
    finds the most recent per project and sentry_issue_identifier
# [RSpecRunTime] RSpec elapsed time: 20 minutes 47.43 seconds. Current RSS: ~1549M. load average: 1.20 1.29 1.29 1/284 16933



# [RSpecRunTime] Finishing example group spec/models/sentry_issue_spec.rb. It took 6.54 seconds. Expected to take 6.36 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/gitaly_client/conflicts_service_spec.rb. Expected to take 6.06 seconds.

Gitlab::GitalyClient::ConflictsService
  #conflicts
    calls list_conflict_files with no parameters
  #list_conflict_files
    behaves like listing conflicts
      sends an RPC request
    when allow_tree_conflicts is set to true
      behaves like listing conflicts
        sends an RPC request
  #resolve_conflicts
    sends an RPC request
    raises a relevant exception if resolution_error is present
    with branches with UTF-8 characters
      handles commit messages with UTF-8 characters
# [RSpecRunTime] RSpec elapsed time: 20 minutes 53.49 seconds. Current RSS: ~1621M. load average: 1.18 1.28 1.29 1/284 16988



# [RSpecRunTime] Finishing example group spec/lib/gitlab/gitaly_client/conflicts_service_spec.rb. It took 6.07 seconds. Expected to take 6.06 seconds.
# [RSpecRunTime] Starting example group spec/services/ci/create_pipeline_service/include_spec.rb. Expected to take 5.99 seconds.

Ci::CreatePipelineService
  include:
    with a local file
      behaves like including the file
        includes the job in the file
# [RSpecRunTime] RSpec elapsed time: 20 minutes 55.23 seconds. Current RSS: ~1617M. load average: 1.18 1.28 1.29 1/289 17073


    with a local file with rules with a project variable
      when the rules matches
        behaves like including the file
          includes the job in the file
      when the rules does not match
        behaves like not including the file
          does not include the job in the file
    with a local file with rules with a predefined pipeline variable
      when the rules matches
        behaves like including the file
          includes the job in the file
      when the rules does not match
        behaves like not including the file
          does not include the job in the file
    with a local file with rules with a run pipeline variable
      when the rules matches
        behaves like including the file
          includes the job in the file
      when the rules does not match
        behaves like not including the file
          does not include the job in the file

# [RSpecRunTime] Finishing example group spec/services/ci/create_pipeline_service/include_spec.rb. It took 5.53 seconds. Expected to take 5.99 seconds.
# [RSpecRunTime] Starting example group spec/helpers/icons_helper_spec.rb. Expected to take 5.77 seconds.

IconsHelper
  sprite_icon_path
    returns relative path
    only calls image_path once when called multiple times
    when an asset_host is set in the config it will return an absolute local URL
      returns an absolute URL on that asset host
# [RSpecRunTime] RSpec elapsed time: 21 minutes 0.93 second. Current RSS: ~1587M. load average: 1.09 1.26 1.28 1/289 17497


  sprite_icon
    returns svg icon html with DEFAULT_ICON_SIZE
    returns svg icon html without size class
    returns svg icon html + size classes
    returns svg icon html + size classes + additional class
    returns a file icon
    non existing icon
      raises in development mode
      raises in test mode
      does not raise in production mode
  audit icon
    returns right icon name for standard auth
    returns right icon name for two-factor auth
    returns right icon name for google_oauth2 auth
  file_type_icon_class
    returns folder-o class
    returns share class
    returns document class with .pdf
    returns doc-image class with .jpg
    returns doc-image class with .JPG
    returns doc-image class with .png
    returns doc-image class with .apng
    returns doc-image class with .webp
    returns doc-compressed class with .tar
    returns doc-compressed class with .TAR
    returns doc-compressed class with .tar.gz
    returns volume-up class with .mp3
    returns volume-up class with .MP3
    returns volume-up class with .m4a
    returns volume-up class with .wav
    returns live-preview class with .avi
    returns live-preview class with .AVI
    returns live-preview class with .mp4
    returns doc-text class with .odt
    returns doc-text class with .doc
    returns doc-text class with .DOC
    returns doc-text class with .docx
    returns document class with .xls
    returns document class with .XLS
    returns document class with .xlsx
    returns doc-chart class with .odp
    returns doc-chart class with .ppt
    returns doc-chart class with .PPT
    returns doc-chart class with .pptx
    returns doc-text class with .unknow
    returns doc-text class with no extension
# [RSpecRunTime] RSpec elapsed time: 21 minutes 5.05 seconds. Current RSS: ~1630M. load average: 1.08 1.26 1.28 1/289 17498


  #external_snippet_icon
    returns external snippet icon
  gl_loading_icon
    returns the default spinner markup
    when css_class is provided
      appends css_class to container element
    when size is provided
      sets the size class
    when color is provided
      sets the color class
    when inline is true
      creates an inline container

# [RSpecRunTime] Finishing example group spec/helpers/icons_helper_spec.rb. It took 6.68 seconds. Expected to take 5.77 seconds.
# [RSpecRunTime] Starting example group spec/models/slack_integration_spec.rb. Expected to take 5.61 seconds.

SlackIntegration
  does not allow STI
  toggles the integration to active when created
  toggles the integration to inactive when destroyed
  authorized_scope_names
    accepts assignment to nil
    accepts assignment to a string
    accepts assignment to an array of strings
    accepts assignment to a comma-separated string
    strips white-space
# [RSpecRunTime] RSpec elapsed time: 21 minutes 8.04 seconds. Current RSS: ~1627M. load average: 1.07 1.25 1.28 1/289 17499


  Validations
    is expected to validate that :team_id cannot be empty/falsy
    is expected to validate that :team_name cannot be empty/falsy
    is expected to validate that :alias cannot be empty/falsy
    is expected to validate that :user_id cannot be empty/falsy
    is expected to validate that :integration cannot be empty/falsy
  Associations
    is expected to belong to integration required: false
  all_features_supported?/upgrade_needed?
    with enough scopes
      is expected to be all features supported
      is expected not to be upgrade needed
    without chat:write.public
      is expected not to be all features supported
      is expected to be upgrade needed
    without chat:write
      is expected not to be all features supported
      is expected to be upgrade needed
  feature_available?
    without any scopes
      is always true for :commands
      is always false for others
    with enough scopes for notifications
      only has the correct features
    with enough scopes for commands
      only has the correct features
    with all scopes
      only has the correct features
  #to_database_hash
    includes the correct attributes
  Scopes
    #with_bot
      returns records with bot data
    #by_team
      returns records with shared team_id
    #by_integration
      returns records by the integration

# [RSpecRunTime] Finishing example group spec/models/slack_integration_spec.rb. It took 5.44 seconds. Expected to take 5.61 seconds.
# [RSpecRunTime] Starting example group spec/finders/security/license_compliance_jobs_finder_spec.rb. Expected to take 5.46 seconds.

Security::LicenseComplianceJobsFinder
  behaves like Security::JobsFinder
    #new
      does not get initialized for unsupported job types
    #execute
      behaves like JobsFinder core functionality
        when the pipeline has no jobs
          is expected to be empty
        when the pipeline has no Secure jobs
          is expected to be empty
        when the pipeline only has jobs without report artifacts
          is expected to be empty
        when the pipeline only has jobs with reports unrelated to Secure products
          is expected to be empty
        when the pipeline only has jobs with reports with paths similar but not identical to Secure reports
          is expected to be empty
        when there is more than one pipeline
          returns jobs associated with provided pipeline
# [RSpecRunTime] RSpec elapsed time: 21 minutes 15.96 seconds. Current RSS: ~1578M. load average: 1.23 1.28 1.29 1/284 17500


  #execute
    returns only the license_scanning job

# [RSpecRunTime] Finishing example group spec/finders/security/license_compliance_jobs_finder_spec.rb. It took 5.5 seconds. Expected to take 5.46 seconds.
# [RSpecRunTime] Starting example group spec/lib/banzai/reference_redactor_spec.rb. Expected to take 5.36 seconds.

Banzai::ReferenceRedactor
  #redact
    when reference not visible to user
      redacts an array of documents
      replaces redacted reference with inner HTML
      when data-original attribute provided
        replaces redacted reference with original content
        does not replace redacted reference with original content if href is given
        uses the original content as the link content if given
    when project is in pending delete
      redacts an issue attached
      redacts an external issue
# [RSpecRunTime] RSpec elapsed time: 21 minutes 18.89 seconds. Current RSS: ~1556M. load average: 1.21 1.28 1.29 1/284 17501


    when reference visible to user
      does not redact an array of documents
  when the user cannot read cross project
    skips links to issues within the same project
    removes info from a cross project reference
# [RSpecRunTime] RSpec elapsed time: 21 minutes 21.44 seconds. Current RSS: ~1548M. load average: 1.21 1.28 1.29 1/284 17502


  #redact_nodes
    redacts an Array of nodes
  #nodes_visible_to_user
    returns a Set containing the visible nodes
    handles invalid references gracefully

# [RSpecRunTime] Finishing example group spec/lib/banzai/reference_redactor_spec.rb. It took 5.28 seconds. Expected to take 5.36 seconds.
# [RSpecRunTime] Starting example group spec/services/tags/create_service_spec.rb. Expected to take 5.19 seconds.

Tags::CreateService
  #execute
    creates the tag and returns success
    when target is invalid
      returns an error
# [RSpecRunTime] RSpec elapsed time: 21 minutes 23.76 seconds. Current RSS: ~1558M. load average: 1.19 1.27 1.28 1/286 17526


    when tag_name is empty
      returns an error
    when target is empty
      returns an error
    when tag already exists
      returns an error
    when tag name is invalid
      returns an error
    when pre-receive hook fails
      returns an error

# [RSpecRunTime] Finishing example group spec/services/tags/create_service_spec.rb. It took 5.4 seconds. Expected to take 5.19 seconds.
# [RSpecRunTime] Starting example group spec/workers/ci/external_pull_requests/create_pipeline_worker_spec.rb. Expected to take 5.02 seconds.

Ci::ExternalPullRequests::CreatePipelineWorker
  #perform
    creates the pipeline
    when the project not found
      behaves like not calling service
        does not call the service
# [RSpecRunTime] RSpec elapsed time: 21 minutes 31.35 seconds. Current RSS: ~1587M. load average: 1.18 1.27 1.28 1/289 17617


    when the user not found
      behaves like not calling service
        does not call the service
    when the pull request not found
      behaves like not calling service
        does not call the service
    when the pull request does not belong to the project
      behaves like not calling service
        does not call the service

# [RSpecRunTime] Finishing example group spec/workers/ci/external_pull_requests/create_pipeline_worker_spec.rb. It took 4.72 seconds. Expected to take 5.02 seconds.
# [RSpecRunTime] Starting example group spec/models/concerns/spammable_spec.rb. Expected to take 4.99 seconds.

Spammable
  does not allow STI
  Associations
    is expected to have one user_agent_detail dependent => destroy
  ClassMethods
    returns correct attr_spammable
  InstanceMethods
    is invalid if spam
    #check_for_spam?
      returns true for public project
      returns true for other visibility levels
      when not overriden
        when spammable attributes have changed
          attr: :title
            is expected to eq true
          attr: :description
            is expected to eq true
        when other attributes have changed
          is expected to eq false
    #invalidate_if_spam
      when the model is spam
        model: :issue
          has an error related to spam on the model
        model: :merge_request
          has an error related to spam on the model
        model: :note
          has an error related to spam on the model
        model: :snippet
          has an error related to spam on the model
        model: :spammable_model
          has an error related to spam on the model
      when the model needs recaptcha
        has an error related to spam on the model
      when the model needs recaptcha but does not support it
        has an error that discards the spammable
      if the model is spam and also needs recaptcha
        has an error related to spam on the model
      when the model is not spam nor needs recaptcha
        returns no error
      if recaptcha is not enabled and the model needs recaptcha
        has no errors
    spam flags
      #spam!
        adds only `spam` flag
      #needs_recaptcha!
        when recaptcha is supported
          adds `needs_recaptcha` flag
        when recaptcha is not supported
          marks the object as spam
      #render_recaptcha?
        when recaptcha is not enabled
          returns false
        when recaptcha is enabled
          when there are two or more errors
            returns false
          when there are less than two errors
            when spammable does not need recaptcha
              returns false
            when spammable needs recaptcha
              returns false
      #clear_spam_flags!
        clears spam and recaptcha flags
    #submittable_as_spam_by?
      tests if the user can submit spam
    #allow_possible_spam?
      when the `allow_possible_spam` application setting is turned off
        is expected to eq false
      when the `allow_possible_spam` application setting is turned on
        is expected to eq true

# [RSpecRunTime] Finishing example group spec/models/concerns/spammable_spec.rb. It took 4.37 seconds. Expected to take 4.99 seconds.
# [RSpecRunTime] Starting example group spec/models/users/phone_number_validation_spec.rb. Expected to take 4.8 seconds.

Users::PhoneNumberValidation
  is expected to belong to user required: false
  is expected to validate that :international_dial_code looks like an integer greater than or equal to 1 and less than or equal to 999
  is expected to validate that :international_dial_code cannot be empty/falsy
  is expected to validate that the length of :country is at most 3
  is expected to validate that the length of :telesign_reference_xid is at most 255
  is expected not to allow :phone_number to be ‹"555 555"›
  is expected to belong to banned_user required: false
  is expected not to allow :phone_number to be ‹"+555555"›
  is expected to validate that :country cannot be empty/falsy
  does not allow STI
  is expected to allow :phone_number to be ‹"555555"›
  is expected to validate that the length of :phone_number is at most 12
  is expected to validate that :phone_number cannot be empty/falsy
  is expected not to allow :phone_number to be ‹"555-555"›
  #validated?
    when phone number record is not validated
      returns false
# [RSpecRunTime] RSpec elapsed time: 21 minutes 38.36 seconds. Current RSS: ~1607M. load average: 1.15 1.26 1.28 1/289 17619


    when phone number record is validated
      returns true
  #similar_records
    returns matches with the same international dialing code and phone number
  .sms_send_allowed_after
    when there are no attempts yet
      is expected to be nil
    attempt_number: 2, expected_delay: 1 minute
      returns the correct delayed timestamp value
    attempt_number: 3, expected_delay: 3 minutes
      returns the correct delayed timestamp value
    attempt_number: 4, expected_delay: 5 minutes
      returns the correct delayed timestamp value
    attempt_number: 5, expected_delay: 10 minutes
      returns the correct delayed timestamp value
    attempt_number: 6, expected_delay: 10 minutes
      returns the correct delayed timestamp value
  .by_reference_id
    is expected to eq #<Users::PhoneNumberValidation user_id: 1138, validated_at: nil, created_at: "2024-03-26 11:45:47.741...telesign_reference_xid: "09BEC291-EC17-A8C2-B5CA-E01D9CA9F1E0", sms_sent_at: nil, sms_send_count: 0>
    when there is no matching record
      is expected to be nil
  .related_to_banned_user?
    when banned user has the same international dial code and phone number
      and the matching record has not been verified
        is expected to eq false
      and the matching record has been verified
        is expected to eq true
    when banned user has the same international dial code and phone number, but different country code
      is expected to eq true
    when banned user does not have the same international dial code
      is expected to eq false
    when banned user does not have the same phone number
      is expected to eq false
    when not-banned user has the same international dial code and phone number
      is expected to eq false
  scopes
    #for_user
      when multiple records exist for multiple users
        returns the correct phone number record for user
    .similar_to
      returns only records with the same international dialing code and phone number

# [RSpecRunTime] Finishing example group spec/models/users/phone_number_validation_spec.rb. It took 4.52 seconds. Expected to take 4.8 seconds.
# [RSpecRunTime] Starting example group spec/serializers/group_child_serializer_spec.rb. Expected to take 4.76 seconds.

GroupChildSerializer
  #represent
    for groups
      can render a single group
      can render a collection of groups
    with a hierarchy
      expands the subgroups
      can render a nested tree
      without a specified parent
        can render a tree
# [RSpecRunTime] RSpec elapsed time: 21 minutes 43.51 seconds. Current RSS: ~1596M. load average: 1.14 1.25 1.28 1/284 17620


    for projects
      can render a single project
      can render a collection of projects
      with a hierarchy
        can render a nested tree
        returns an array when an array of a single instance was given
# [RSpecRunTime] RSpec elapsed time: 21 minutes 45.93 seconds. Current RSS: ~1581M. load average: 1.14 1.25 1.28 1/284 17621



# [RSpecRunTime] Finishing example group spec/serializers/group_child_serializer_spec.rb. It took 4.98 seconds. Expected to take 4.76 seconds.
# [RSpecRunTime] Starting example group spec/rubocop/cop/rspec/misspelled_aggregate_failures_spec.rb. Expected to take 4.6 seconds.

RuboCop::Cop::RSpec::MisspelledAggregateFailures
  with misspelled tags
    tag: "aggregate_errors"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregate_failure"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregated_failures"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregate_results"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregated_errors"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregates_failures"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregate_failues"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregate_bar"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
    tag: "aggregate_foo"
      behaves like misspelled tag
        flags and auto-corrects misspelled tags in describe
        flags and auto-corrects misspelled tags in context
        flags and auto-corrects misspelled tags in examples
        flags and auto-corrects misspelled tags in any order
  with legit tags
    tag: "aggregate"
      behaves like legit tag
        does not flag
    tag: "aggregations"
      behaves like legit tag
        does not flag
    tag: "aggregate_two_underscores"
      behaves like legit tag
        does not flag

# [RSpecRunTime] Finishing example group spec/rubocop/cop/rspec/misspelled_aggregate_failures_spec.rb. It took 4.57 seconds. Expected to take 4.6 seconds.
# [RSpecRunTime] Starting example group spec/services/ci/job_artifacts/bulk_delete_by_project_service_spec.rb. Expected to take 4.54 seconds.

Ci::JobArtifacts::BulkDeleteByProjectService#execute
  #execute
    when number of artifacts exceeds limits to delete
      fails to destroy
# [RSpecRunTime] RSpec elapsed time: 21 minutes 52.13 seconds. Current RSS: ~1578M. load average: 1.20 1.26 1.28 1/284 17622


    when requested not existing artifacts do delete
      fails to destroy
    when maintainer has access to the project
      is successful
      and partially owns artifacts
        fails to destroy
      and request all artifacts from a different project
        returns a error
# [RSpecRunTime] RSpec elapsed time: 21 minutes 54.93 seconds. Current RSS: ~1573M. load average: 1.20 1.26 1.28 1/284 17623



# [RSpecRunTime] Finishing example group spec/services/ci/job_artifacts/bulk_delete_by_project_service_spec.rb. It took 4.42 seconds. Expected to take 4.54 seconds.
# [RSpecRunTime] Starting example group spec/services/lfs/lock_file_service_spec.rb. Expected to take 4.42 seconds.

Lfs::LockFileService
  #execute
    when not authorized
      doesn't succeed
    when authorized
      with an existent lock
        doesn't succeed
        doesn't create the Lock
# [RSpecRunTime] RSpec elapsed time: 21 minutes 57.24 seconds. Current RSS: ~1559M. load average: 1.18 1.26 1.28 1/284 17624


      without an existent lock
        succeeds
        creates the Lock
# [RSpecRunTime] RSpec elapsed time: 21 minutes 58.6 seconds. Current RSS: ~1546M. load average: 1.18 1.26 1.28 1/284 17625


      when an error is raised
        doesn't succeed

# [RSpecRunTime] Finishing example group spec/services/lfs/lock_file_service_spec.rb. It took 4.37 seconds. Expected to take 4.42 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/diff/position_tracer/file_strategy_spec.rb. Expected to take 4.34 seconds.

Gitlab::Diff::PositionTracer::FileStrategy
  #trace
    diff scenarios
      when the file was created in the old diff
        when the file is unchanged between the old and the new diff
          returns the new position
        when the file was updated between the old and the new diff
          returns the position of the change
        when the file was renamed in between the old and the new diff
          returns the position of the change
        when the file was removed in between the old and the new diff
          returns the position of the change
        when the file is unchanged in the new diff
          returns the position of the change
      when the file was changed in the old diff
        when the file is unchanged in between the old and the new diff
          returns the new position
        when the file was updated in between the old and the new diff
          returns the position of the change
        when the file was renamed in between the old and the new diff
          returns the position of the change
        when the file was removed in between the old and the new diff
          returns the position of the change
        when the file is unchanged in the new diff
          returns the position of the change

# [RSpecRunTime] Finishing example group spec/lib/gitlab/diff/position_tracer/file_strategy_spec.rb. It took 4.51 seconds. Expected to take 4.34 seconds.
# [RSpecRunTime] Starting example group spec/models/integrations/ewm_spec.rb. Expected to take 4.24 seconds.

Integrations::Ewm
  does not allow STI
  Validations
    when integration is active
      is expected to validate that :project_url cannot be empty/falsy
      is expected to validate that :issues_url cannot be empty/falsy
      is expected to validate that :new_issue_url cannot be empty/falsy
      behaves like issue tracker integration URL attribute
        is expected to allow :project_url to be ‹"https://example.com"›
        is expected not to allow :project_url to be ‹"example.com"›
        is expected not to allow :project_url to be ‹"ftp://example.com"›
        is expected not to allow :project_url to be ‹"herp-and-derp"›
# [RSpecRunTime] RSpec elapsed time: 22 minutes 5.3 seconds. Current RSS: ~1571M. load average: 1.17 1.25 1.27 1/290 18236


      behaves like issue tracker integration URL attribute
        is expected to allow :issues_url to be ‹"https://example.com"›
        is expected not to allow :issues_url to be ‹"example.com"›
        is expected not to allow :issues_url to be ‹"ftp://example.com"›
        is expected not to allow :issues_url to be ‹"herp-and-derp"›
      behaves like issue tracker integration URL attribute
        is expected to allow :new_issue_url to be ‹"https://example.com"›
        is expected not to allow :new_issue_url to be ‹"example.com"›
        is expected not to allow :new_issue_url to be ‹"ftp://example.com"›
        is expected not to allow :new_issue_url to be ‹"herp-and-derp"›
    when integration is inactive
      is expected not to validate that :project_url cannot be empty/falsy
      is expected not to validate that :issues_url cannot be empty/falsy
      is expected not to validate that :new_issue_url cannot be empty/falsy
  ReferencePatternValidation
    extracts bug
    extracts task
    extracts work item
    extracts workitem
    extracts defect
    extracts rtcwi

# [RSpecRunTime] Finishing example group spec/models/integrations/ewm_spec.rb. It took 4.14 seconds. Expected to take 4.24 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/issuable/clone/attributes_rewriter_spec.rb. Expected to take 4.17 seconds.

Gitlab::Issuable::Clone::AttributesRewriter
  with missing target parent
    raises an ArgumentError
  setting labels
    sets labels present in the new project and group labels
    does not set any labels when not used on the original issue
  setting milestones
    sets milestone to nil when old issue milestone is not in the new project
    copies the milestone when old issue milestone title is in the new project
    copies the milestone when old issue milestone is a group milestone
    when include_milestone is false
      does not return any milestone
  when target parent is a group
    setting labels
      keeps group labels and merges project labels where possible

# [RSpecRunTime] Finishing example group spec/lib/gitlab/issuable/clone/attributes_rewriter_spec.rb. It took 2.75 seconds. Expected to take 4.17 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb. Expected to take 4.05 seconds.

Gitlab::UsageDataCounters::IssueActivityUniqueCounter
  can return the count of actions per user deduplicated
  for Issue title edit actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue description edit actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue assignee edit actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue make confidential actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue make visible actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue created actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue closed actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue reopened actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue label changed actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue label milestone actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue cross-referenced actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue moved actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue cloned actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue relate actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue unrelate actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue marked as duplicate actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue locked actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue unlocked actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue designs added actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue designs modified actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue designs removed actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue due date changed actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue time estimate changed actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue time spent changed actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue comment added actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue comment edited actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue comment removed actions
    behaves like internal event tracking
      logs to Snowplow
  for Issue design comment removed actions
    behaves like internal event tracking
      logs to Snowplow

# [RSpecRunTime] Finishing example group spec/lib/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb. It took 3.83 seconds. Expected to take 4.05 seconds.
# [RSpecRunTime] Starting example group spec/tasks/gitlab/x509/update_rake_spec.rb. Expected to take 3.94 seconds.

gitlab:x509 namespace rake task
  update_signatures
    changes from unverified to verified if the certificate store contains the root certificate
    returns if no signature is available
# [RSpecRunTime] RSpec elapsed time: 22 minutes 16.12 seconds. Current RSS: ~1578M. load average: 1.14 1.24 1.27 1/289 18251



# [RSpecRunTime] Finishing example group spec/tasks/gitlab/x509/update_rake_spec.rb. It took 7.57 seconds. Expected to take 3.94 seconds.
# [RSpecRunTime] RSpec elapsed time: 22 minutes 22.24 seconds. Current RSS: ~1547M. load average: 1.12 1.23 1.27 1/290 18252


# [RSpecRunTime] Starting example group spec/lib/gitlab/composer/cache_spec.rb. Expected to take 3.9 seconds.

Gitlab::Composer::Cache
  #execute
    creating packages
      with a pre-existing package
        updates the sha and creates the cache page
        behaves like Composer create cache page
          creates the cached page
# [RSpecRunTime] RSpec elapsed time: 22 minutes 25.8 seconds. Current RSS: ~1506M. load average: 1.12 1.23 1.27 1/291 18278


        behaves like Composer marks cache page for deletion
          marks the page for deletion
      first package
        updates the sha and creates the cache page
        behaves like Composer create cache page
          creates the cached page
    updating packages
      behaves like Composer create cache page
        creates the cached page
      behaves like Composer marks cache page for deletion
        marks the page for deletion
    deleting packages
      when it is not the last package
        behaves like Composer create cache page
          creates the cached page
        behaves like Composer marks cache page for deletion
          marks the page for deletion
      when it is the last package
        does not create a new page
        behaves like Composer marks cache page for deletion
          marks the page for deletion

# [RSpecRunTime] Finishing example group spec/lib/gitlab/composer/cache_spec.rb. It took 5.87 seconds. Expected to take 3.9 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ssh/signature_spec.rb. Expected to take 3.84 seconds.

Gitlab::Ssh::Signature
  signature verification
    when signature is valid and user email is verified
      behaves like verified signature
        reports verified status
    when using an RSA key
      behaves like verified signature
        reports verified status
    when signed text is an empty string
      behaves like verified signature
        reports verified status
    when signed text is nil
      behaves like unverified signature
        reports unverified status
    when committer_email is empty
      behaves like unverified signature
        reports unverified status
    when committer_email is nil
      behaves like unverified signature
        reports unverified status
    when signature_text is empty
      behaves like unverified signature
        reports unverified status
    when signature_text is nil
      behaves like unverified signature
        reports unverified status
    when user email is not verified
      reports unverified status
    when no user exist with the committer email
      reports other_user status
    when no user exists with the committer email
      reports other_user status
    when signature is invalid
      behaves like unverified signature
        reports unverified status
    when signature is for a different namespace
      behaves like unverified signature
        reports unverified status
    when signature is for a different message
      behaves like unverified signature
        reports unverified status
    when message has been tampered
      behaves like unverified signature
        reports unverified status
    when the signing key does not exist in GitLab
      when the key is not a signing one
        reports unknown_key status
      when the key is removed
        reports unknown_key status
    when key belongs to someone other than the committer
      reports other_user status
    when signature created by GitLab
      reports verified_system status
  #key_fingerprint
    returns the pubkey sha256 fingerprint
    when a signature has been created with a certificate
      returns public key fingerprint

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ssh/signature_spec.rb. It took 3.31 seconds. Expected to take 3.84 seconds.
# [RSpecRunTime] Starting example group spec/tasks/gitlab/gitaly_rake_spec.rb. Expected to take 3.77 seconds.

gitlab:gitaly namespace rake task
  clone
    no dir given
      aborts and display a help message
    no storage path given
      aborts and display a help message
    when an underlying Git command fail
      aborts and display a help message
    checkout or clone
      calls checkout_or_clone_version with the right arguments
  install
    gmake/make
      gmake is available
        calls gmake in the gitaly directory
        when gmake fails
          aborts process
      gmake is not available
        calls make in the gitaly directory

# [RSpecRunTime] Finishing example group spec/tasks/gitlab/gitaly_rake_spec.rb. It took 3.21 seconds. Expected to take 3.77 seconds.
# [RSpecRunTime] RSpec elapsed time: 22 minutes 34.67 seconds. Current RSS: ~1561M. load average: 1.10 1.23 1.27 1/291 18369


# [RSpecRunTime] Starting example group spec/tasks/gitlab/audit_event_types/compile_docs_task_spec.rb. Expected to take 3.69 seconds.

Tasks::Gitlab::AuditEventTypes::CompileDocsTask
  #run
    outputs message after compiling the documentation
Documentation compiled.
    creates audit_event_types.md

# [RSpecRunTime] Finishing example group spec/tasks/gitlab/audit_event_types/compile_docs_task_spec.rb. It took 3.26 seconds. Expected to take 3.69 seconds.
# [RSpecRunTime] RSpec elapsed time: 22 minutes 37.98 seconds. Current RSS: ~1540M. load average: 1.09 1.22 1.26 1/291 18370


# [RSpecRunTime] Starting example group spec/services/users/set_namespace_commit_email_service_spec.rb. Expected to take 3.62 seconds.

Users::SetNamespaceCommitEmailService
  #execute
    when current_user is not provided
      returns error message
    when current_user does not have permission to change namespace commit emails
      returns error message
    when target_user does not have permission to access the namespace
      returns error message
    when namespace is public
      behaves like success
        creates namespace commit email
    when namespace is not provided
      returns error message
    when target user is not current user
      when current user is an admin
        when admin mode is enabled
          creates namespace commit email
        when admin mode is not enabled
          returns error message
      when current user is not an admin
        returns error message
    when namespace commit email does not exist
      when email_id is not provided
        returns error message
      when model save fails
        returns error message
      when namepsace is a group
        behaves like success
          creates namespace commit email
      when namespace is a user
        behaves like success
          creates namespace commit email
      when namespace is a project
        behaves like success
          creates namespace commit email
    when namespace commit email already exists
      when email_id is not provided
        destroys the namespace commit email
      and email_id is provided
        updates namespace commit email
      when model save fails
        returns generic error message
        with model errors
          returns the model error message

# [RSpecRunTime] Finishing example group spec/services/users/set_namespace_commit_email_service_spec.rb. It took 3.61 seconds. Expected to take 3.62 seconds.
# [RSpecRunTime] Starting example group spec/experiments/application_experiment_spec.rb. Expected to take 3.57 seconds.

ApplicationExperiment
  registers a default control behavior for anonymous experiments
  .available?
    is false for foss
  #publish
    tracks the assignment
    adds to the published experiments
  #track
    doesn't track if we shouldn't track
    tracks the event with the expected arguments and merged contexts
    when using known context resources
      includes those using the gitlab standard context
      falls back to using the group key
      with the actor key
        provides it to the tracking call as the user
        handles when it's not a user record
  #key_for
    generates FIPS compliant SHA2 hashes
    falls back to legacy MD5 when FIPS isn't forced
  #process_redirect_url
    generates the correct urls based on where the engine was mounted
  when resolving variants
    returns an assigned name
  when nesting experiments
    doesn't raise an exception
    tracks an event
  when caching
    caches the variant determined by the variant resolver
    doesn't cache a variant if we don't explicitly provide one
    caches a control variant if we assign it specifically
    arbitrary attributes
      sets and gets attributes about an experiment
      increments a value for an experiment

# [RSpecRunTime] Finishing example group spec/experiments/application_experiment_spec.rb. It took 2.72 seconds. Expected to take 3.57 seconds.
# [RSpecRunTime] Starting example group spec/services/ci/refs/enqueue_pipelines_to_unlock_service_spec.rb. Expected to take 3.48 seconds.

Ci::Refs::EnqueuePipelinesToUnlockService
  #execute
    when ref is a tag
      behaves like unlocking pipelines
        when before_pipeline is given
          only enqueues old locked pipelines within the ref, excluding the last successful CI source pipeline
# [RSpecRunTime] RSpec elapsed time: 22 minutes 45.47 seconds. Current RSS: ~1547M. load average: 1.08 1.22 1.26 1/286 18371


        when before_pipeline is not given
          enqueues all locked pipelines within the ref
    when ref is a branch
      behaves like unlocking pipelines
        when before_pipeline is given
          only enqueues old locked pipelines within the ref, excluding the last successful CI source pipeline
        when before_pipeline is not given
          enqueues all locked pipelines within the ref

# [RSpecRunTime] Finishing example group spec/services/ci/refs/enqueue_pipelines_to_unlock_service_spec.rb. It took 3.19 seconds. Expected to take 3.48 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/reports/test_report_spec.rb. Expected to take 3.44 seconds.

Gitlab::Ci::Reports::TestReport
  #get_suite
    when suite name is rspec
      is expected to eq "rspec"
      initializes a new test suite and returns it
      when suite name is already allocated
        does not initialize a new test suite
  #total_time
    returns the total time
  #total_count
    returns the total count
  #total_status
    when all test cases succeeded
      returns correct total status
    when there is a failed test case
      returns correct total status
    when there is a skipped test case
      returns correct total status
    when there is an error test case
      returns correct total status
  #with_attachment
    when test suites do not contain an attachment
      returns empty test suites
    when test suites contain an attachment
      returns test suites with attachment
  #suite_errors
    when a suite has normal spec errors or failures
      is expected to be empty
    when there is an error test case
      is expected to eq {"junit"=>"Existential parsing error"}
  #error_count
    when error test case exists
      returns the count
    when error test case do not exist
      returns nothing
  #failed_count
    when failed test case exists
      returns the count
    when failed test case do not exist
      returns nothing
  #success_count
    when success test case exists
      returns the count
    when success test case do not exist
      returns nothing
  #skipped_count
    when skipped test case exists
      returns the count
    when skipped test case do not exist
      returns nothing

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/reports/test_report_spec.rb. It took 3.05 seconds. Expected to take 3.44 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/database/partitioning/monthly_strategy_spec.rb. Expected to take 3.39 seconds.

Gitlab::Database::Partitioning::MonthlyStrategy
  #current_partitions
    detects both partitions
# [RSpecRunTime] RSpec elapsed time: 22 minutes 51.96 seconds. Current RSS: ~1555M. load average: 1.07 1.21 1.26 1/286 18372


  #missing_partitions
    with existing partitions
      detects the gap and the missing partition in May 2020
      detects the missing partitions at the end of the range and expects a partition for July 2020
      detects the missing partitions at the end of the range and expects a partition for August 2020
      creates partitions 6 months out from now (Sep 2020 through Feb 2021)
      detects all missing partitions
      when pruning partitions before June 2020
        does not include the missing partition from May 2020 because it would be dropped
        detects the missing partition for 1 month ago (July 2020)
# [RSpecRunTime] RSpec elapsed time: 22 minutes 52.97 seconds. Current RSS: ~1565M. load average: 1.07 1.21 1.26 4/286 18373


    without existing partitions
      detects the missing catch-all partition at the beginning
      detects the missing partition for today and expects a partition for August 2020
      creates partitions 6 months out from now (Sep 2020 through Feb 2021
      detects all missing partitions
      when pruning partitions before June 2020
        detects exactly the set of partitions from June 2020 to March 2021
    with a regular partition but no catchall (MINVALUE, to) partition
      detects a missing catch-all partition to add before the existing partition
  #extra_partitions
    with existing partitions
      without a time retention policy
        has no extra partitions to prune
      with a time retention policy that excludes no partitions
        has no extra partitions to prune
      with a time retention policy of 3 months
        prunes the unbounded partition ending 2020-05-01
      with a time retention policy of 2 months
        prunes the unbounded partition and the partition for May-June
        when the retain_non_empty_partitions is true
          prunes empty partitions
          does not prune non-empty partitions
  attributes
    is expected to have attributes {:analyze_interval => 1 week, :model => #<ClassDouble(ApplicationRecord) (anonymous)>, :partitioning_key => :partition, :retain_for => 12 months, :retain_non_empty_partitions => true}

# [RSpecRunTime] Finishing example group spec/lib/gitlab/database/partitioning/monthly_strategy_spec.rb. It took 4.05 seconds. Expected to take 3.39 seconds.
# [RSpecRunTime] Starting example group spec/serializers/review_app_setup_entity_spec.rb. Expected to take 3.31 seconds.

ReviewAppSetupEntity
  #as_json
    contains can_setup_review_app
    contains has_review_app
    when the user can setup a review app
      contains relevant fields
      exposes the relevant review snippet
      exposes whether the project has associated clusters
# [RSpecRunTime] RSpec elapsed time: 22 minutes 57.33 seconds. Current RSS: ~1562M. load average: 1.06 1.21 1.26 1/286 18374


    when the user cannot setup a review app
      does not expose certain fields

# [RSpecRunTime] Finishing example group spec/serializers/review_app_setup_entity_spec.rb. It took 3.37 seconds. Expected to take 3.31 seconds.
# [RSpecRunTime] Starting example group spec/services/ci/daily_build_group_report_result_service_spec.rb. Expected to take 3.26 seconds.

Ci::DailyBuildGroupReportResultService#execute
  creates daily code coverage record for each job in the pipeline that has coverage value
  creates a project_ci_feature_usage record for the pipeline project
  when there are multiple builds with the same group name that report coverage
    creates daily code coverage record with the average as the value
# [RSpecRunTime] RSpec elapsed time: 22 minutes 59.28 seconds. Current RSS: ~1557M. load average: 1.06 1.21 1.26 1/286 18375


  when there is an existing daily code coverage for the matching date, project, ref_path, and group name
    updates the existing record's coverage value and last_pipeline_id
    does not create a new project_ci_feature_usage record for the pipeline project
  when the ID of the pipeline is older than the last_pipeline_id
    updates the existing daily code coverage records
  when pipeline has no builds with coverage
    does nothing
  when pipeline ref_path is the project default branch
    sets default branch to true
    creates a project_ci_feature_usage record for the pipeline project for default branch
  when pipeline ref_path is not the project default branch
    sets default branch to false

# [RSpecRunTime] Finishing example group spec/services/ci/daily_build_group_report_result_service_spec.rb. It took 3.1 seconds. Expected to take 3.26 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/build/policy/variables_spec.rb. Expected to take 3.14 seconds.

Gitlab::Ci::Build::Policy::Variables
  #satisfied_by?
    is satisfied by at least one matching statement
    is satisfied by a matching pipeline variable
    is not satisfied by an overridden empty variable
    is satisfied by a truthy pipeline expression
    is not satisfied by a falsy pipeline expression
    is satisfied by a truthy expression using undefined variable
    is not satisfied by a falsy expression using undefined variable
    allows to evaluate regular CI variables
    does not persist neither pipeline nor build
    when a bridge job is used
      is satisfied by a matching expression for a bridge job
# [RSpecRunTime] RSpec elapsed time: 23 minutes 3.2 seconds. Current RSS: ~1558M. load average: 1.06 1.20 1.26 1/286 18376


    when using project ci variables in environment scope
      is satisfied by scoped variable match
      is not satisfied when matching against overridden variable

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/build/policy/variables_spec.rb. It took 2.75 seconds. Expected to take 3.14 seconds.
# [RSpecRunTime] Starting example group spec/workers/repository_import_worker_spec.rb. Expected to take 3.11 seconds.

RepositoryImportWorker
  #perform
    when project not found (deleted)
      does not raise any exception
    when import_state is scheduled
      imports the project successfully
    when worker was reset without cleanup (import_state is started)
      imports the project successfully
    when using an asynchronous importer
      does not mark the import process as finished
    when the import has failed
      marks import_state as failed

# [RSpecRunTime] Finishing example group spec/workers/repository_import_worker_spec.rb. It took 2.89 seconds. Expected to take 3.11 seconds.
# [RSpecRunTime] Starting example group spec/models/subscription_spec.rb. Expected to take 3.01 seconds.

Subscription
  does not allow STI
  relationships
    is expected to belong to project required: false
    is expected to belong to subscribable required: false
    is expected to belong to user required: false
  validations
    is expected to validate that :subscribable cannot be empty/falsy
    is expected to validate that :user cannot be empty/falsy
    validates uniqueness of project_id scoped to subscribable_id, subscribable_type, and user_id
# [RSpecRunTime] RSpec elapsed time: 23 minutes 8.55 seconds. Current RSS: ~1553M. load average: 1.05 1.20 1.25 1/286 18377



# [RSpecRunTime] Finishing example group spec/models/subscription_spec.rb. It took 1.95 seconds. Expected to take 3.01 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_build_started_spec.rb. Expected to take 2.97 seconds.

Gitlab::Analytics::CycleAnalytics::StageEvents::MergeRequestLastBuildStarted
  behaves like value stream analytics event
    is expected to be a kind of String
    is expected to be a kind of Symbol
    is expected to include ApplicationRecord(abstract)
    is expected to respond to #timestamp_projection
    is expected to respond to #html_description
    is expected to be a kind of Array
    #apply_query_customization
      expects an ActiveRecord::Relation object as argument and returns a modified version of it
    #hash_code
      returns a hash that uniquely identifies an event
      does not differ when the same object is built with the same params
  behaves like LEFT JOIN-able value stream analytics event
    can use the event as LEFT JOIN
    when looking at the record with data
      contains the timestamp expression
# [RSpecRunTime] RSpec elapsed time: 23 minutes 11.52 seconds. Current RSS: ~1567M. load average: 1.05 1.20 1.25 1/292 18457


    when looking at the record without data
      returns nil for the timestamp expression

# [RSpecRunTime] Finishing example group spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_build_started_spec.rb. It took 3.13 seconds. Expected to take 2.97 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/pages/virtual_host_finder_spec.rb. Expected to take 2.91 seconds.

Gitlab::Pages::VirtualHostFinder
  returns nil when host is empty
  when host is a namespace domain
    when there are no pages deployed for the project
      returns no result if the provided host is not subdomain of the Pages host
      returns the virual domain with no lookup_paths
    when there are pages deployed for the project
      returns no result if the provided host is not subdomain of the Pages host
      returns the virual domain when there are pages deployed for the project
      finds domain with case-insensitive
  when host is a unique domain
    when pages unique domain is enabled
      when there are no pages deployed for the project
        returns nil
      when there are pages deployed for the project
        returns the virual domain when there are pages deployed for the project
        when a project path conflicts with a unique domain
          prioritizes the unique domain project
    when pages unique domain is disabled
      when there are no pages deployed for the project
        returns nil
      when there are pages deployed for the project
        returns nil
  when host is a pages custom domain host
    when there are no pages deployed for the project
      returns nil
    when there are pages deployed for the project
      returns the virual domain when there are pages deployed for the project

# [RSpecRunTime] Finishing example group spec/lib/gitlab/pages/virtual_host_finder_spec.rb. It took 2.74 seconds. Expected to take 2.91 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/utils/username_and_email_generator_spec.rb. Expected to take 2.88 seconds.

Gitlab::Utils::UsernameAndEmailGenerator
  contains SecureRandom part
  email name is the same as username
  check email domain
  email domain
    defaults to `Gitlab.config.gitlab.host`
    when specified
      uses the specified email domain
  when conflicts
    when username is reserved
      when username is reserved by user
        uniquifies username and email
      when it conflicts with top-level group namespace
        uniquifies username and email
      when it conflicts with top-level group namespace that includes upcased characters
        uniquifies username and email
    when email is reserved
      when it conflicts with confirmed primary email
        uniquifies username and email
      when it conflicts with unconfirmed primary email
        uniquifies username and email
      when it conflicts with confirmed secondary email
        uniquifies username and email
    when email and username is reserved
      uniquifies username and email

# [RSpecRunTime] Finishing example group spec/lib/gitlab/utils/username_and_email_generator_spec.rb. It took 2.39 seconds. Expected to take 2.88 seconds.
# [RSpecRunTime] Starting example group spec/workers/gitlab/bitbucket_import/stage/import_pull_requests_notes_worker_spec.rb. Expected to take 2.79 seconds.

Gitlab::BitbucketImport::Stage::ImportPullRequestsNotesWorker
  #perform
    when the import succeeds
      schedules the next stage
      logs stage start and finish
    when project does not exists
      does not call the importer
    when project import state is not `started`
      does not call the importer
    when the importer fails
      does not schedule the next stage and raises error
  behaves like Gitlab::BitbucketImport::StageMethods
    .sidekiq_retries_exhausted
      tracks the import failure
    #perform
      does not execute the importer if no project could be found
      does not execute the importer if the import state is no longer in progress
      logs error when import fails with a StandardError
      when the import is successful
        executes the import
        queues RefreshImportJidWorker
        logs stage start and finish

# [RSpecRunTime] Finishing example group spec/workers/gitlab/bitbucket_import/stage/import_pull_requests_notes_worker_spec.rb. It took 2.62 seconds. Expected to take 2.79 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/build/policy/refs_spec.rb. Expected to take 2.78 seconds.

Gitlab::Ci::Build::Policy::Refs
  #satisfied_by?
    when matching ref
      is satisfied when pipeline branch matches
      is not satisfied when pipeline branch does not match
    when matching tags
      when pipeline runs for a tag
        is satisfied when tags matcher is specified
      when pipeline is not created for a tag
        is not satisfied when tag match is specified
    when also matching a path
      is satisfied when provided patch matches specified one
      is not satisfied when path differs
    when matching a source
      is satisfied when provided source keyword matches
      is not satisfied when provided source keyword does not match
      when source is merge_request_event
        is satisfied with only: merge_request
        is not satisfied with only: merge_request_event
      when source is external_pull_request_event
        is satisfied with only: external_pull_request
        is not satisfied with only: external_pull_request_event
      when source is pipeline
        is satisfied with only: pipelines
        is satisfied with only: pipeline
      when source is parent_pipeline
        is satisfied with only: parent_pipelines
        is satisfied with only: parent_pipeline
    when matching a ref by a regular expression
      is satisfied when regexp matches pipeline ref
      is satisfied when case-insensitive regexp matches pipeline ref
      is not satisfied when regexp does not match pipeline ref
      when unsafe regexp is used
        ignores invalid regexp
    malicious regexp
      takes under a second

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/build/policy/refs_spec.rb. It took 2.68 seconds. Expected to take 2.78 seconds.
# [RSpecRunTime] Starting example group spec/uploaders/gitlab_uploader_spec.rb. Expected to take 2.71 seconds.

GitlabUploader
  #file_storage?
    when file storage is used
      is expected to be file storage
    when is remote storage
      is expected not to be file storage
  #file_cache_storage?
    when file storage is used
      is expected to be file cache storage
    when is remote storage
      is expected not to be file cache storage
  #move_to_cache
    is true
  #move_to_store
    is true
  #empty_size?
    is true
  #cache!
    moves the file from the working directory to the cache directory
  #replace_file_without_saving!
    allows file to be replaced without triggering any callbacks
  #open
    when trace is stored in File storage
      when file exists
        returns io stream
        when passing block it yields
      when file does not exist
        returns nil
        when passing block it does not yield
    when trace is stored in Object storage
      when file exists
        returns http io stream
        when passing block it yields
      when file does not exist
        returns nil
        when passing block it does not yield
    #url_or_file_path
      returns url when in remote storage
      returns url when in remote storage
  #multi_read
    is expected to eq ["Running", "gitlab-runner"]
  .version
    is expected to raise RuntimeError with message matching /not supported/
  .storage_location
    sets the identifier for the storage location options
    when given identifier is not known
      raises an error

# [RSpecRunTime] Finishing example group spec/uploaders/gitlab_uploader_spec.rb. It took 2.36 seconds. Expected to take 2.71 seconds.
# [RSpecRunTime] Starting example group spec/workers/environments/auto_recover_worker_spec.rb. Expected to take 2.67 seconds.

Environments::AutoRecoverWorker
  has the `until_executed` deduplicate strategy
  when all stop actions are complete
    recovers the environment
# [RSpecRunTime] RSpec elapsed time: 23 minutes 26.44 seconds. Current RSS: ~1567M. load average: 1.04 1.19 1.25 1/291 18479


  when all stop actions are not complete
    does not recover the environment
  when there are no corresponding environment record
    ignores the invalid record
  when environment has been updated recently
    recovers the environment

# [RSpecRunTime] Finishing example group spec/workers/environments/auto_recover_worker_spec.rb. It took 2.93 seconds. Expected to take 2.67 seconds.
# [RSpecRunTime] Starting example group spec/lib/banzai/filter/emoji_filter_spec.rb. Expected to take 2.66 seconds.

Banzai::Filter::EmojiFilter
  replaces supported name emoji
  replaces supported unicode emoji
  ignores unicode versions of trademark, copyright, and registered trademark
  replaces name versions of trademark, copyright, and registered trademark
  correctly encodes the URL
  correctly encodes unicode to the URL
  matches at the start of a string
  unicode matches at the start of a string
  matches at the end of a string
  unicode matches at the end of a string
  unicode matches with adjacent text
  does not match multiple emoji in a row
  unicode matches multiple emoji in a row
  mixed matches multiple emoji in a row
  has a data-name attribute
  has a data-unicode-version attribute
  unicode keeps whitespace intact
  behaves like emoji filter
    keeps whitespace intact
    does not match emoji in a string
    ignores non existent/unsupported emoji
    matches with adjacent text
    does not match emoji in a pre tag
    does not match emoji in code tag
    does not match emoji in tt tag
# [RSpecRunTime] RSpec elapsed time: 23 minutes 31.24 seconds. Current RSS: ~1575M. load average: 1.04 1.19 1.25 1/291 18490



# [RSpecRunTime] Finishing example group spec/lib/banzai/filter/emoji_filter_spec.rb. It took 3.86 seconds. Expected to take 2.66 seconds.
# [RSpecRunTime] Starting example group spec/serializers/runner_entity_spec.rb. Expected to take 2.58 seconds.

RunnerEntity
  #as_json
    contains required fields
    without admin permissions
      does not contain admin_path field
# [RSpecRunTime] RSpec elapsed time: 23 minutes 32.74 seconds. Current RSS: ~1571M. load average: 1.03 1.18 1.25 1/291 18491


    with admin permissions
      contains admin_path field

# [RSpecRunTime] Finishing example group spec/serializers/runner_entity_spec.rb. It took 2.08 seconds. Expected to take 2.58 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/middleware/same_site_cookies_spec.rb. Expected to take 2.56 seconds.

Gitlab::Middleware::SameSiteCookies
  #call
    without SSL enabled
      with cookie
        does not add headers to cookies
    with SSL enabled
      with no cookies
        does not add headers
      with different browsers
        description: "iOS 12", user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1", expected: false
          returns expected SameSite status
        description: "macOS 10.14 + Safari", user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15", expected: false
          returns expected SameSite status
        description: "macOS 10.14 + Opera", user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.78 Safari/537.36 OPR/47.0.2631.55", expected: false
          returns expected SameSite status
        description: "macOS 10.14 + Chrome v80", user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36", expected: true
          returns expected SameSite status
        description: "Chrome v41", user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36", expected: true
          returns expected SameSite status
        description: "Chrome v50", user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2348.1 Safari/537.36", expected: true
          returns expected SameSite status
        description: "Chrome v51", user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2718.15 Safari/537.36", expected: false
          returns expected SameSite status
        description: "Chrome v62", user_agent: "Mozilla/5.0 (Macintosh; Intel NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36", expected: false
          returns expected SameSite status
        description: "Chrome v66", user_agent: "Mozilla/5.0 (Linux; Android 4.4.2; Avvio_793 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.126 Mobile Safari/537.36", expected: false
          returns expected SameSite status
        description: "Chrome v67", user_agent: "Mozilla/5.0 (Linux; Android 7.1.1; SM-J510F Build/NMF26X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3371.0 Mobile Safari/537.36", expected: true
          returns expected SameSite status
        description: "Chrome v85", user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36", expected: true
          returns expected SameSite status
        description: "Chromium v66", user_agent: "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/66.0.3359.181 HeadlessChrome/66.0.3359.181 Safari/537.36", expected: false
          returns expected SameSite status
        description: "Chromium v85", user_agent: "Mozilla/5.0 (X11; Linux aarch64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/85.0.4183.59 Chrome/85.0.4183.59 Safari/537.36", expected: true
          returns expected SameSite status
        description: "UC Browser 12.0.4", user_agent: "Mozilla/5.0 (Linux; U; Android 4.4.4; zh-CN; A31 Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.0.4.986 Mobile Safari/537.36", expected: false
          returns expected SameSite status
        description: "UC Browser 12.13.0", user_agent: "Mozilla/5.0 (Linux; U; Android 7.1.1; en-US; SM-C9000 Build/NMF26X) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.13.0.1207 Mobile Safari/537.36", expected: false
          returns expected SameSite status
        description: "UC Browser 12.13.2", user_agent: "Mozilla/5.0 (Linux; U; Android 9; en-US; Redmi Note 7 Build/PQ3B.190801.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.13.2.1208 Mobile Safari/537.36", expected: true
          returns expected SameSite status
        description: "UC Browser 12.13.5", user_agent: "Mozilla/5.0 (Linux; U; Android 5.1.1; en-US; PHICOMM C630 (CLUE L) Build/LMY47V) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.13.5.1209 Mobile Safari/537.36", expected: true
          returns expected SameSite status
        description: "Playstation", user_agent: "Mozilla/5.0 (PlayStation 4 2.51) AppleWebKit/537.73 (KHTML, like Gecko)", expected: true
          returns expected SameSite status
      with single cookie
        adds required headers
      multiple cookies
        adds required headers
      multiple cookies with some missing headers
        adds missing headers
      multiple cookies with all headers present
        does not add new headers

# [RSpecRunTime] Finishing example group spec/lib/gitlab/middleware/same_site_cookies_spec.rb. It took 2.59 seconds. Expected to take 2.56 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/usage_data_counters/quick_action_activity_unique_counter_spec.rb. Expected to take 2.53 seconds.

Gitlab::UsageDataCounters::QuickActionActivityUniqueCounter
  .track_unique_action
    behaves like a tracked quick action unique event
      is expected to change result by 1
  when tracking react
    behaves like a tracked quick action unique event
      is expected to change result by 1
  tracking assigns
    single assignee
      behaves like a tracked quick action unique event
        is expected to change result by 1
    multiple assignees
      behaves like a tracked quick action unique event
        is expected to change result by 1
    assigning "me"
      behaves like a tracked quick action unique event
        is expected to change result by 1
    assigning a reviewer
      behaves like a tracked quick action unique event
        is expected to change result by 1
    assigning a reviewer with request review alias
      behaves like a tracked quick action unique event
        is expected to change result by 1
  tracking copy_metadata
    for issues
      behaves like a tracked quick action unique event
        is expected to change result by 1
    for merge requests
      behaves like a tracked quick action unique event
        is expected to change result by 1
  tracking spend
    adding time
      behaves like a tracked quick action unique event
        is expected to change result by 1
    removing time
      behaves like a tracked quick action unique event
        is expected to change result by 1
  tracking spent
    adding time
      behaves like a tracked quick action unique event
        is expected to change result by 1
    removing time
      behaves like a tracked quick action unique event
        is expected to change result by 1
  tracking unassign
    unassigning everyone
      behaves like a tracked quick action unique event
        is expected to change result by 1
    unassigning specific users
      behaves like a tracked quick action unique event
        is expected to change result by 1
  tracking unlabel
    called as unlabel
      removing all labels
        behaves like a tracked quick action unique event
          is expected to change result by 1
      removing specific labels
        behaves like a tracked quick action unique event
          is expected to change result by 1
    called as remove_label
      behaves like a tracked quick action unique event
        is expected to change result by 1
  when tracking invite_email
    with single email
      behaves like a tracked quick action unique event
        is expected to change result by 1
    with multiple emails
      behaves like a tracked quick action unique event
        is expected to change result by 1
  when tracking convert_to_ticket
    behaves like a tracked quick action internal event
      tracks the internal event
      behaves like internal event tracking
        logs to Snowplow

# [RSpecRunTime] Finishing example group spec/lib/gitlab/usage_data_counters/quick_action_activity_unique_counter_spec.rb. It took 2.37 seconds. Expected to take 2.53 seconds.
# [RSpecRunTime] Starting example group spec/models/project_repository_spec.rb. Expected to take 2.45 seconds.

ProjectRepository
  does not allow STI
  associations
    is expected to belong to shard required: false
    is expected to belong to project required: false
  behaves like shardable scopes
    .for_repository_storage
      returns the objects for a given repository storage
    .excluding_repository_storage
      returns the objects excluding the given repository storage
    .for_shard
      returns the objects for a given shard
  .find_project
    finds project by disk path
    returns nil when it does not find the project
  #object_format
    when object format is sha1
      is expected to eq "sha1"
    when object format is sha256
      is expected to eq "sha256"
    when object format is not set
      is expected to eq "sha1"

# [RSpecRunTime] Finishing example group spec/models/project_repository_spec.rb. It took 2.19 seconds. Expected to take 2.45 seconds.
# [RSpecRunTime] Starting example group spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb. Expected to take 2.44 seconds.

Mutations::Ci::JobTokenScope::RemoveProject
  #resolve
    when user is not logged in
      raises error
    when user is logged in
      when user does not have permissions to admin project
        raises error
      when user has permissions to admin project and read target project
        with no direction specified
          defaults to asking the RemoveProjectService to remove the outbound link
        with direction specified
          executes project removal for the correct direction
        when the service returns an error
          returns an error response

# [RSpecRunTime] Finishing example group spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb. It took 2.26 seconds. Expected to take 2.44 seconds.
# [RSpecRunTime] Starting example group spec/components/pajamas/avatar_component_spec.rb. Expected to take 2.38 seconds.

Pajamas::AvatarComponent
  avatar shape
    for a User
      has a circle shape
    for an Email
      has a circle shape
    for a Project
      has default shape (rect)
    for a Group
      has default shape (rect)
  avatar image
    when it has an uploaded image
      uses the avatar_url as image src
      uses a srcset for higher resolution on retina displays
      uses lazy loading
      with size option
        uses that size as param for image src and srcset
    when a project or group has no uploaded image
      uses an identicon with the item's initial
      when the item has no id
        uses an identicon with default background color
    when a user has no uploaded image
      uses a gravatar
    when an email has no linked user
      when the email is blank
        uses the default avatar
      when the email is not blank
        uses a agravatar
  options
    alt
      with a value
        uses given value as alt text
      without a value
        uses the item's name as alt text
    class
      has the correct custom class
    size
      has the correct size class

# [RSpecRunTime] Finishing example group spec/components/pajamas/avatar_component_spec.rb. It took 2.2 seconds. Expected to take 2.38 seconds.
# [RSpecRunTime] Starting example group spec/workers/incident_management/add_severity_system_note_worker_spec.rb. Expected to take 2.37 seconds.

IncidentManagement::AddSeveritySystemNoteWorker
  #perform
    when incident and user exist
      creates a system note
      creates a timeline event
    when incident does not exist
      behaves like does not add anything
        does not change incident notes count
        does not create a timeline event
    when incident_id is nil
      behaves like does not add anything
        does not change incident notes count
        does not create a timeline event
    when issue is not an incident
      behaves like does not add anything
        does not change incident notes count
        does not create a timeline event
    when user does not exist
      behaves like does not add anything
        does not change incident notes count
        does not create a timeline event
    when user_id is nil
      behaves like does not add anything
        does not change incident notes count
        does not create a timeline event

# [RSpecRunTime] Finishing example group spec/workers/incident_management/add_severity_system_note_worker_spec.rb. It took 2.05 seconds. Expected to take 2.37 seconds.
# [RSpecRunTime] Starting example group spec/services/users/ban_service_spec.rb. Expected to take 2.32 seconds.

Users::BanService
  ban
    when successful
      returns success status
      bans the user
      creates a BannedUser
      logs ban in application logs
      tracks the event
# [RSpecRunTime] RSpec elapsed time: 23 minutes 48.26 seconds. Current RSS: ~1574M. load average: 1.03 1.17 1.24 1/286 18497


    when failed
      when user is blocked
        returns state error message
        behaves like does not modify the BannedUser record or user state
          does not modify the BannedUser record or user state
      when user is not an admin
        returns permissions error message
        behaves like does not modify the BannedUser record or user state
          does not modify the BannedUser record or user state

# [RSpecRunTime] Finishing example group spec/services/users/ban_service_spec.rb. It took 2.01 seconds. Expected to take 2.32 seconds.
# [RSpecRunTime] Starting example group spec/tooling/lib/tooling/find_changes_spec.rb. Expected to take 2.29 seconds.

Tooling::FindChanges
  #only_allowed_files_changed
    when fetching changes from changed files
      when changed files contain only *.js changes
        returns true
      when changed files contain both *.vue and *.js changes
        returns true
      when changed files contain not allowed changes
        returns false
    when fetching changes from API
      when a file is passed as an argument
        calls GitLab API
      when there are no file changes
        returns false
      when there are changes to files other than JS files
        returns false
      when there are changes only to JS files
        returns true
  #initialize
    when fetching changes from unknown
      raises an ArgumentError
  #execute
    when there is no changed files file
      raises an ArgumentError
    when fetching changes from API
      calls GitLab API to retrieve the MR diff
      when used with file_filter
        only writes matching files to output
      when used with only_new_paths
        only writes new file paths to output
    when fetching changes from changed files
      does not call GitLab API to retrieve the MR diff
      when there are no file changes
        writes an empty string to changed files file
      when there are file changes
        does not change the changed files file
      when there is no matched tests file
        does not add frontend fixtures mapping to the changed files file
      when there is no frontend fixture files
        does not add frontend fixtures mapping to the changed files file
      when the matched tests file and frontend fixture files are provided
        when there are no mappings for the matched tests
          does not change the changed files file
        when there are available mappings for the matched tests
          when the changed files file is initially empty
            adds the frontend fixtures mappings to the changed files file
          when the changed files file is initially not empty
            adds the frontend fixtures mappings to the changed files file

# [RSpecRunTime] Finishing example group spec/tooling/lib/tooling/find_changes_spec.rb. It took 2.13 seconds. Expected to take 2.29 seconds.
# [RSpecRunTime] Starting example group spec/lib/banzai/filter/asset_proxy_filter_spec.rb. Expected to take 2.25 seconds.

Banzai::Filter::AssetProxyFilter
  does not replace if disabled
  during initialization
    #initialize_settings
    supports deprecated whitelist settings
    when allowlist is empty
      defaults to the install domain
  when properly configured
    data_canonical_src: "http://example.com/test.png", src: "https://assets.example.com/08df250eeeef1a8cf2c761475ac74c5065105612/687474703a2f2f6578616d706c652e636f6d2f746573742e706e67"
      correctly modifies the img tag
    data_canonical_src: "///example.com/test.png", src: "https://assets.example.com/3368d2c7b9bed775bdd1e811f36a4b80a0dcd8ab/2f2f2f6578616d706c652e636f6d2f746573742e706e67"
      correctly modifies the img tag
    data_canonical_src: "//example.com/test.png", src: "https://assets.example.com/a2e9aa56319e31bbd05be72e633f2864ff08becb/2f2f6578616d706c652e636f6d2f746573742e706e67"
      correctly modifies the img tag
    data_canonical_src: "oigjsie8787%$**(#(%0", src: "https://assets.example.com/1b893f9a71d66c99437f27e19b9a061a6f5d9391/6f69676a7369653837383725242a2a2823282530"
      correctly modifies the img tag
    data_canonical_src: "https://example.com/x?¬", src: "https://assets.example.com/2f29a8c7f13f3ae14dc18c154dbbd657d703e75f/68747470733a2f2f6578616d706c652e636f6d2f783fc2ac"
      correctly modifies the img tag
    data_canonical_src: "http:example.com", src: "https://assets.example.com/bcefecd18484ec2850887d6730273e5e70f5ed1a/687474703a6578616d706c652e636f6d"
      correctly modifies the img tag
    data_canonical_src: "https:example.com", src: "https://assets.example.com/648e074361143780357db0b5cf73d4438d5484d3/68747470733a6578616d706c652e636f6d"
      correctly modifies the img tag
    data_canonical_src: "https://example.com/##", src: "https://assets.example.com/d7d0c845cc553d9430804c07e9456545ef3e6fe6/68747470733a2f2f6578616d706c652e636f6d2f2323"
      correctly modifies the img tag
    data_canonical_src: nil, src: "test.png"
      correctly modifies the img tag
    data_canonical_src: nil, src: "/test.png"
      correctly modifies the img tag
    data_canonical_src: nil, src: "http://localhost/test.png"
      correctly modifies the img tag
    data_canonical_src: nil, src: "http://gitlab.com/test.png"
      correctly modifies the img tag
    data_canonical_src: nil, src: "http://gitlab.com/test.png?url=http://example.com/test.png"
      correctly modifies the img tag
    data_canonical_src: nil, src: "http://images.mydomain.com/test.png"
      correctly modifies the img tag

# [RSpecRunTime] Finishing example group spec/lib/banzai/filter/asset_proxy_filter_spec.rb. It took 1.92 seconds. Expected to take 2.25 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/jira/dvcs_spec.rb. Expected to take 2.23 seconds.

Gitlab::Jira::Dvcs
  .encode_slash
    replaces slash character
    ignores path without slash
  .decode_slash
    replaces slash character
    ignores path without slash
  .encode_project_name
    root group
      returns project path
    nested group
      returns encoded project full path
  .restore_full_path
    project name is an encoded full path
      returns decoded project path
    project name is not an encoded full path
      assumes project belongs to root namespace and returns full project path based on passed in namespace

# [RSpecRunTime] Finishing example group spec/lib/gitlab/jira/dvcs_spec.rb. It took 1.94 seconds. Expected to take 2.23 seconds.
# [RSpecRunTime] Starting example group spec/services/activity_pub/projects/releases_unfollow_service_spec.rb. Expected to take 2.16 seconds.

ActivityPub::Projects::ReleasesUnfollowService
  #execute
    with a valid payload
      when there is a subscription for this actor
        deletes the subscription
        returns true
      when there is no subscription for this actor
        does not delete anything
        returns true
    when actor is missing
      behaves like invalid unfollow request
        does not delete anything
        sets an error
        returns false
    when actor is an object with no id attribute
      behaves like invalid unfollow request
        does not delete anything
        sets an error
        returns false
    when actor is neither a string nor an object
      behaves like invalid unfollow request
        does not delete anything
        sets an error
        returns false
    when actor tries to delete someone else's subscription
      does not delete anything
      returns true

# [RSpecRunTime] Finishing example group spec/services/activity_pub/projects/releases_unfollow_service_spec.rb. It took 1.99 seconds. Expected to take 2.16 seconds.
# [RSpecRunTime] Starting example group spec/finders/repositories/changelog_commits_finder_spec.rb. Expected to take 2.14 seconds.

Repositories::ChangelogCommitsFinder
  #each_page
    only yields commits with the given trailer
    ignores commits that are reverted
    includes revert commits if they have a trailer
    supports paginating of commits
# [RSpecRunTime] RSpec elapsed time: 23 minutes 58.12 seconds. Current RSS: ~1582M. load average: 1.02 1.17 1.24 1/291 18541


  #revert_commit_sha
    returns the SHA of a reverted commit
    returns nil when the commit is not a revert commit
    returns nil when the commit has no description

# [RSpecRunTime] Finishing example group spec/finders/repositories/changelog_commits_finder_spec.rb. It took 1.44 seconds. Expected to take 2.14 seconds.
# [RSpecRunTime] Starting example group spec/workers/container_registry/cleanup_worker_spec.rb. Expected to take 2.09 seconds.

ContainerRegistry::CleanupWorker
  #perform
    with no delete scheduled container repositories
      doesn't enqueue delete container repository jobs
    with delete scheduled container repositories
      enqueues delete container repository jobs
    with stale delete ongoing container repositories
      resets them and enqueue delete container repository jobs
    with stale ongoing repair details
      deletes them
    when on gitlab.com
      when the gitlab api is supported
        when there are pending projects to analyze
          enqueues record repair detail jobs
        when there are no pending projects to analyze
          behaves like does not enqueue record repair detail jobs
            does not enqueue record repair detail jobs
      when the Gitlab API is not supported
        behaves like does not enqueue record repair detail jobs
          does not enqueue record repair detail jobs
    when not on Gitlab.com
      behaves like does not enqueue record repair detail jobs
        does not enqueue record repair detail jobs
    when registry_data_repair_worker feature is disabled
      behaves like does not enqueue record repair detail jobs
        does not enqueue record repair detail jobs

# [RSpecRunTime] Finishing example group spec/workers/container_registry/cleanup_worker_spec.rb. It took 2.19 seconds. Expected to take 2.09 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/reports/security/identifier_spec.rb. Expected to take 2.05 seconds.

Gitlab::Ci::Reports::Security::Identifier
  #initialize
    when all params are given
      initializes an instance
    when attribute external_type is missing
      raises an error
    when attribute external_id is missing
      raises an error
    when attribute name is missing
      raises an error
  #key
    returns fingerprint
  #type_identifier?
    external_type: "cve", expected_result: false
      is expected to equal false
    external_type: "foo", expected_result: false
      is expected to equal false
    external_type: "cwe", expected_result: true
      is expected to equal true
    external_type: "wasc", expected_result: true
      is expected to equal true
  external type check methods
    external_type: "Foo", is_cve?: false, is_cwe?: false, is_wasc?: false
      returns correct result for the type check method
    external_type: "Cve", is_cve?: true, is_cwe?: false, is_wasc?: false
      returns correct result for the type check method
    external_type: "Cwe", is_cve?: false, is_cwe?: true, is_wasc?: false
      returns correct result for the type check method
    external_type: "Wasc", is_cve?: false, is_cwe?: false, is_wasc?: true
      returns correct result for the type check method
  #to_hash
    returns expected hash
  #==
    when external_type and external_id are equal
      returns true
    when external_type is different
      returns false
    when external_id is different
      returns false

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/reports/security/identifier_spec.rb. It took 1.76 seconds. Expected to take 2.05 seconds.
# [RSpecRunTime] Starting example group spec/components/pajamas/single_stat_component_spec.rb. Expected to take 2.03 seconds.

Pajamas::SingleStatComponent
  with default props
    shows title
    shows stat_value
    does not show unit
    does not show meta badge
  with unit
    shows unit
  with meta_text
    shows badge with text
  with stat_value_testid
    shows unique data-testid for stat_value
  with title_icon
    shows icon

# [RSpecRunTime] Finishing example group spec/components/pajamas/single_stat_component_spec.rb. It took 0.91 second. Expected to take 2.03 seconds.
# [RSpecRunTime] Starting example group spec/lib/grafana/time_window_spec.rb. Expected to take 1.99 seconds.

Grafana::TimeWindow
  #formatted
    is expected to eq {:end=>"2019-03-17T13:10:00Z", :start=>"2019-03-17T05:10:00Z"}
  #in_milliseconds
    is expected to eq {:from=>1552799400000, :to=>1552828200000}
    when non-unix parameters are provided
      is expected to eq {:from=>1552799400000, :to=>1552828200000}

# [RSpecRunTime] Finishing example group spec/lib/grafana/time_window_spec.rb. It took 0.47 second. Expected to take 1.99 seconds.
# [RSpecRunTime] Starting example group spec/lib/grafana/time_window_spec.rb. Expected to take 1.99 seconds.

Grafana::RangeWithDefaults
  #to_hash
    is expected to eq {:from=>#<Grafana::Timestamp:0x00007de319135810 @time=2019-03-17 05:10:00 +0000>, :to=>#<Grafana::Timestamp:0x00007de319135658 @time=2019-03-17 13:10:00 +0000>}
    when only "to" is provided
      has the expected properties
    when only "from" is provided
      has the expected properties
    when no parameters are provided
      has the expected properties

# [RSpecRunTime] Finishing example group spec/lib/grafana/time_window_spec.rb. It took 0.61 second. Expected to take 1.99 seconds.
# [RSpecRunTime] Starting example group spec/lib/grafana/time_window_spec.rb. Expected to take 1.99 seconds.

Grafana::Timestamp
  #formatted
    is expected to eq "2019-03-17T05:10:00Z"
  #to_ms
    is expected to eq 1552799400000
  .from_ms_since_epoch
    is expected to be a kind of Grafana::Timestamp
    when the input is not a unix-ish timestamp
      raises an error

# [RSpecRunTime] Finishing example group spec/lib/grafana/time_window_spec.rb. It took 0.57 second. Expected to take 1.99 seconds.
# [RSpecRunTime] Starting example group spec/graphql/resolvers/ci/group_runners_resolver_spec.rb. Expected to take 1.97 seconds.

Resolvers::Ci::GroupRunnersResolver
  #resolve
    when user cannot see runners
      returns Gitlab::Graphql::Errors::ResourceNotAvailable
    with user as group owner
      returns all the runners
      with membership direct
        returns only direct runners
    with obj set to nil
      raises an error
    with obj not set to group
      raises an error
    Allowed query arguments
      calls RunnersFinder with expected arguments

# [RSpecRunTime] Finishing example group spec/graphql/resolvers/ci/group_runners_resolver_spec.rb. It took 1.83 seconds. Expected to take 1.97 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/pipeline/chain/sequence_spec.rb. Expected to take 1.95 seconds.

Gitlab::Ci::Pipeline::Chain::Sequence
  when one of steps breaks the chain
    does not process the second step
    returns a pipeline object
  when all chains are executed correctly
    iterates through entire sequence
    returns a pipeline object
    adds sequence duration to duration histogram
    adds step sequence duration to duration histogram
    records pipeline size by pipeline source in a histogram
    active jobs by pipeline plan histogram
      counts all the active jobs

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/pipeline/chain/sequence_spec.rb. It took 1.82 seconds. Expected to take 1.95 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/database/migration_helpers/cascading_namespace_settings_spec.rb. Expected to take 1.92 seconds.

Gitlab::Database::MigrationHelpers::CascadingNamespaceSettings
  #add_cascading_namespace_setting
-- column_exists?(:namespace_settings, :some_setting)
   -> 0.0060s
-- column_exists?(:namespace_settings, :lock_some_setting)
   -> 0.0048s
-- column_exists?(:application_settings, :some_setting)
   -> 0.2770s
-- column_exists?(:application_settings, :lock_some_setting)
   -> 0.2770s
    creates the required columns
    when columns already exist
-- add_column(:namespace_settings, :cascading_setting, :integer)
   -> 0.0621s
-- add_column(:application_settings, :lock_cascading_setting, :boolean)
   -> 0.0133s
-- column_exists?(:namespace_settings, :cascading_setting)
   -> 0.0059s
-- column_exists?(:namespace_settings, :lock_cascading_setting)
   -> 0.0051s
-- column_exists?(:application_settings, :cascading_setting)
   -> 0.2775s
-- column_exists?(:application_settings, :lock_cascading_setting)
   -> 0.2784s
      raises an error when some columns already exist
# [RSpecRunTime] RSpec elapsed time: 24 minutes 10.2 seconds. Current RSS: ~1568M. load average: 1.10 1.18 1.24 1/286 18542


  #remove_cascading_namespace_setting
    removes the columns

# [RSpecRunTime] Finishing example group spec/lib/gitlab/database/migration_helpers/cascading_namespace_settings_spec.rb. It took 1.74 seconds. Expected to take 1.92 seconds.
# [RSpecRunTime] Starting example group spec/workers/authorized_project_update/project_recalculate_per_user_worker_spec.rb. Expected to take 1.89 seconds.

AuthorizedProjectUpdate::ProjectRecalculatePerUserWorker
  is labeled as idempotent
  performs multiple times sequentially without raising an exception
  does not change authorizations when run twice
  #perform
    does not fail if the project does not exist
    does not fail if the user does not exist
    calls AuthorizedProjectUpdate::ProjectRecalculatePerUserService
    exclusive lease
      when exclusive lease has not been taken
        obtains a new exclusive lease
# [RSpecRunTime] RSpec elapsed time: 24 minutes 11.88 seconds. Current RSS: ~1562M. load average: 1.09 1.17 1.24 1/286 18543


      when exclusive lease has already been taken
        raises an error

# [RSpecRunTime] Finishing example group spec/workers/authorized_project_update/project_recalculate_per_user_worker_spec.rb. It took 1.79 seconds. Expected to take 1.89 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/shell_spec.rb. Expected to take 1.88 seconds.

Gitlab::Shell
  .secret_token
    memoized secret_token
      behaves like creates and links the secret token file
        creates and links the secret token file
    when link_file is a broken symbolic link
      behaves like creates and links the secret token file
        creates and links the secret token file
    when secret_file exists
      reads the token from the existing file
      behaves like creates and links the secret token file
        creates and links the secret token file
  namespace actions
    #repository_exists?
      when the repository does not exist
        returns false
      when the repository exists
        returns true

# [RSpecRunTime] Finishing example group spec/lib/gitlab/shell_spec.rb. It took 1.77 seconds. Expected to take 1.88 seconds.
# [RSpecRunTime] Starting example group spec/views/projects/tree/show.html.haml_spec.rb. Expected to take 1.82 seconds.

projects/tree/show
  for branch names ending on .json
    displays correctly
# [RSpecRunTime] RSpec elapsed time: 24 minutes 15.32 seconds. Current RSS: ~1577M. load average: 1.09 1.17 1.24 1/289 18587


  when on root ref
    hides compare button
  when not on root ref
    shows a compare button

# [RSpecRunTime] Finishing example group spec/views/projects/tree/show.html.haml_spec.rb. It took 1.92 seconds. Expected to take 1.82 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/secure_files/migration_helper_spec.rb. Expected to take 1.79 seconds.

Gitlab::Ci::SecureFiles::MigrationHelper
  .migrate_in_batches
    migrates the given file to the given storage backend
    calls the given block for each migrated file
# [RSpecRunTime] RSpec elapsed time: 24 minutes 17.08 seconds. Current RSS: ~1571M. load average: 1.08 1.17 1.24 1/291 18600


  .migrate_to_remote_storage
    migrates remote files to remote storage

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/secure_files/migration_helper_spec.rb. It took 1.83 seconds. Expected to take 1.79 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/spamcheck/result_spec.rb. Expected to take 1.79 seconds.

Gitlab::Spamcheck::Result
  #initialize
    verdict_value: 0, expected: "allow", verdict_evaluated: true, verdict_score: 0.01
      returns expected verdict
      returns expected evaluated?
      returns expected score
    verdict_value: 1, expected: "conditional_allow", verdict_evaluated: true, verdict_score: 0.5
      returns expected verdict
      returns expected evaluated?
      returns expected score
    verdict_value: 2, expected: "disallow", verdict_evaluated: true, verdict_score: 0.75
      returns expected verdict
      returns expected evaluated?
      returns expected score
    verdict_value: 3, expected: "block", verdict_evaluated: true, verdict_score: 0.99
      returns expected verdict
      returns expected evaluated?
      returns expected score
    verdict_value: 4, expected: "noop", verdict_evaluated: false, verdict_score: 0.0
      returns expected verdict
      returns expected evaluated?
      returns expected score

# [RSpecRunTime] Finishing example group spec/lib/gitlab/spamcheck/result_spec.rb. It took 1.76 seconds. Expected to take 1.79 seconds.
# [RSpecRunTime] Starting example group spec/workers/flush_counter_increments_worker_spec.rb. Expected to take 1.76 seconds.

FlushCounterIncrementsWorker
  #perform
    commits increments to database
    when model class does not exist
      does nothing
# [RSpecRunTime] RSpec elapsed time: 24 minutes 20.56 seconds. Current RSS: ~1585M. load average: 1.08 1.17 1.24 1/291 18601


    when record does not exist
      does nothing

# [RSpecRunTime] Finishing example group spec/workers/flush_counter_increments_worker_spec.rb. It took 1.85 seconds. Expected to take 1.76 seconds.
# [RSpecRunTime] Starting example group spec/workers/pages/deactivated_deployments_delete_cron_worker_spec.rb. Expected to take 1.72 seconds.

Pages::DeactivatedDeploymentsDeleteCronWorker
  deletes all deactivated pages deployments and their files from the filesystem

# [RSpecRunTime] Finishing example group spec/workers/pages/deactivated_deployments_delete_cron_worker_spec.rb. It took 1.5 seconds. Expected to take 1.72 seconds.
# [RSpecRunTime] RSpec elapsed time: 24 minutes 22.85 seconds. Current RSS: ~1568M. load average: 1.08 1.17 1.24 1/291 18602


# [RSpecRunTime] Starting example group spec/workers/object_pool/join_worker_spec.rb. Expected to take 1.7 seconds.

ObjectPool::JoinWorker
  #perform
    when the pool is not joinable
      doesn't raise an error
    when the pool has been joined before
      succeeds in joining

# [RSpecRunTime] Finishing example group spec/workers/object_pool/join_worker_spec.rb. It took 1.76 seconds. Expected to take 1.7 seconds.
# [RSpecRunTime] Starting example group spec/models/cycle_analytics/project_level_stage_adapter_spec.rb. Expected to take 1.68 seconds.

CycleAnalytics::ProjectLevelStageAdapter
  does not allow STI
  calculates median
  lists events
  presents the data as json

# [RSpecRunTime] Finishing example group spec/models/cycle_analytics/project_level_stage_adapter_spec.rb. It took 1.73 seconds. Expected to take 1.68 seconds.
# [RSpecRunTime] RSpec elapsed time: 24 minutes 26.38 seconds. Current RSS: ~1572M. load average: 1.08 1.17 1.24 1/292 18661


# [RSpecRunTime] Starting example group spec/services/ci/job_artifacts/delete_service_spec.rb. Expected to take 1.65 seconds.

Ci::JobArtifacts::DeleteService
  #execute
    is successful
    deletes erasable artifacts
    does not delete trace
    when project is undergoing stats refresh
      logs a warning
      returns an error response with the correct message and reason
# [RSpecRunTime] RSpec elapsed time: 24 minutes 27.77 seconds. Current RSS: ~1571M. load average: 1.23 1.20 1.25 1/292 18662


    when an error response is received from DestroyBatchService
      returns an error response with the correct message

# [RSpecRunTime] Finishing example group spec/services/ci/job_artifacts/delete_service_spec.rb. It took 1.63 seconds. Expected to take 1.65 seconds.
# [RSpecRunTime] Starting example group spec/finders/groups/accepting_project_transfers_finder_spec.rb. Expected to take 1.63 seconds.

Groups::AcceptingProjectTransfersFinder
  #execute
    only returns groups where the user has access to transfer projects to
# [RSpecRunTime] RSpec elapsed time: 24 minutes 29.49 seconds. Current RSS: ~1560M. load average: 1.23 1.20 1.25 1/291 18663



# [RSpecRunTime] Finishing example group spec/finders/groups/accepting_project_transfers_finder_spec.rb. It took 1.59 seconds. Expected to take 1.63 seconds.
# [RSpecRunTime] Starting example group spec/services/customer_relations/organizations/create_service_spec.rb. Expected to take 1.61 seconds.

CustomerRelations::Organizations::CreateService
  #execute
    creates a crm_organization
    returns an error when user does not have permission
    returns an error when the crm_organization is not persisted
# [RSpecRunTime] RSpec elapsed time: 24 minutes 30.89 seconds. Current RSS: ~1560M. load average: 1.23 1.20 1.25 1/291 18664



# [RSpecRunTime] Finishing example group spec/services/customer_relations/organizations/create_service_spec.rb. It took 1.39 seconds. Expected to take 1.61 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/view/presenter/base_spec.rb. Expected to take 1.58 seconds.

Gitlab::View::Presenter::Base
  .presenter?
    returns true
  .presents
    raises an error when symbol is passed
    when the presenter class specifies a custom keyword
      exposes the subject with the given keyword
    when the presenter class inherits Presenter::Delegated
      sets the delegator target
    when the presenter class inherits Presenter::Simple
      does not set the delegator target
  #__subject__
    returns the subject
  #can?
    user is not allowed
      returns false
    user is allowed
      returns true
    subject is overridden
      returns true
  #present
    returns self
  #url_builder
    returns the UrlBuilder instance
  #web_url
    delegates to the UrlBuilder
  #web_path
    delegates to the UrlBuilder

# [RSpecRunTime] Finishing example group spec/lib/gitlab/view/presenter/base_spec.rb. It took 1.61 seconds. Expected to take 1.58 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/email/service_desk/custom_email_spec.rb. Expected to take 1.56 seconds.

Gitlab::Email::ServiceDesk::CustomEmail
  .key_from_reply_address
    is expected to equal nil
    with service_desk_setting
      is expected to equal nil
      with custom email
        is expected to eq "b7721fc7e8419911a8bea145236a0519"
    without reply key
      is expected to equal nil
  .reply_address
    is expected to equal nil
    with reply key
      is expected to equal nil
      with issue
        is expected to equal nil
        with service_desk_setting and custom email
          is expected to eq "support+b7721fc7e8419911a8bea145236a0519@example.com"

# [RSpecRunTime] Finishing example group spec/lib/gitlab/email/service_desk/custom_email_spec.rb. It took 1.44 seconds. Expected to take 1.56 seconds.
# [RSpecRunTime] Starting example group spec/models/group_deploy_token_spec.rb. Expected to take 1.53 seconds.

GroupDeployToken
  does not allow STI
  relationships
    is expected to belong to group required: false
    is expected to belong to deploy_token required: false
  validation
    is expected to validate that :deploy_token cannot be empty/falsy
    is expected to validate that :group cannot be empty/falsy
    is expected to validate that :deploy_token_id is case-sensitively unique within the scope of :group_id
  #has_access_to_group?
    for itself
      is expected to eq true
    for a subgroup
      is expected to eq true
    for other group
      is expected to eq false

# [RSpecRunTime] Finishing example group spec/models/group_deploy_token_spec.rb. It took 1.4 seconds. Expected to take 1.53 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_monitor_enabled_metric_spec.rb. Expected to take 1.52 seconds.

Gitlab::Usage::Metrics::Instrumentations::CountProjectsWithMonitorEnabledMetric
  behaves like a correct instrumented metric value and query
    behaves like a correct instrumented metric value
      has correct value
# [RSpecRunTime] RSpec elapsed time: 24 minutes 36.55 seconds. Current RSS: ~1559M. load average: 1.19 1.19 1.25 1/286 18665


    behaves like a correct instrumented metric query
      has correct generate query

# [RSpecRunTime] Finishing example group spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_monitor_enabled_metric_spec.rb. It took 1.3 seconds. Expected to take 1.52 seconds.
# [RSpecRunTime] Starting example group spec/models/blob_viewer/package_json_spec.rb. Expected to take 1.48 seconds.

BlobViewer::PackageJson
  does not allow STI
  #package_name
    returns the package name
  yarn
    #package_url
      returns the package URL
    #manager_url
      returns the manager URL
    when json is an array
      does not raise an error
  npm
    #package_url
      returns the package URL
    #manager_url
      returns the manager URL
  #package_type
    returns "package"
  when package.json has "private": true
    #package_url
      when the homepage has a valid URL
        returns homepage URL
      when the homepage has an invalid URL
        returns nil
    #package_type
      returns "private package"

# [RSpecRunTime] Finishing example group spec/models/blob_viewer/package_json_spec.rb. It took 1.46 seconds. Expected to take 1.48 seconds.
# [RSpecRunTime] Starting example group spec/workers/google_cloud/create_cloudsql_instance_worker_spec.rb. Expected to take 1.48 seconds.

GoogleCloud::CreateCloudsqlInstanceWorker
  when triggered
    calls CloudSeed::GoogleCloud::SetupCloudsqlInstanceService
    when CloudSeed::GoogleCloud::SetupCloudsqlInstanceService fails
      raises error
# [RSpecRunTime] RSpec elapsed time: 24 minutes 39.39 seconds. Current RSS: ~1564M. load average: 1.19 1.19 1.25 1/286 18666



# [RSpecRunTime] Finishing example group spec/workers/google_cloud/create_cloudsql_instance_worker_spec.rb. It took 1.29 seconds. Expected to take 1.48 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/auth/result_spec.rb. Expected to take 1.43 seconds.

Gitlab::Auth::Result
  when actor is User
    returns auth_user
    does not return deploy token
  when actor is Deploy token
    returns deploy token
    does not return auth_user
  #authentication_abilities_include?
    when authentication abilities are empty
      returns false
    when authentication abilities are not empty
      returns false when ability is not allowed
      returns true when ability is allowed
  #can_perform_action_on_project?
    returns if actor can do perform given action on given project
    returns if actor cannot do perform given action on given project
  #can?
    returns if actor can do perform given action on given project
    returns if actor cannot do perform given action on given project

# [RSpecRunTime] Finishing example group spec/lib/gitlab/auth/result_spec.rb. It took 1.4 seconds. Expected to take 1.43 seconds.
# [RSpecRunTime] Starting example group spec/services/ci/catalog/resources/create_service_spec.rb. Expected to take 1.43 seconds.

Ci::Catalog::Resources::CreateService
  #execute
    with an unauthorized user
      raises an AccessDeniedError
# [RSpecRunTime] RSpec elapsed time: 24 minutes 41.98 seconds. Current RSS: ~1556M. load average: 1.18 1.19 1.24 1/291 18757


    with an authorized user
      and a valid project
        creates a catalog resource
      with an invalid catalog resource
        does not save the catalog resource

# [RSpecRunTime] Finishing example group spec/services/ci/catalog/resources/create_service_spec.rb. It took 1.56 seconds. Expected to take 1.43 seconds.
# [RSpecRunTime] Starting example group spec/services/pages_domains/create_service_spec.rb. Expected to take 1.39 seconds.

PagesDomains::CreateService
  when the user has the required permissions
    when it saves the domain successfully
      creates the domain and publishes a PagesDomainCreatedEvent
    when it fails to save the domain
      does not create a pages domain and does not publish a PagesDomainCreatedEvent
  when the user does not have the required permissions
    does not create a pages domain and does not publish a PagesDomainCreatedEvent

# [RSpecRunTime] Finishing example group spec/services/pages_domains/create_service_spec.rb. It took 1.29 seconds. Expected to take 1.39 seconds.
# [RSpecRunTime] Starting example group spec/presenters/ml/candidates_csv_presenter_spec.rb. Expected to take 1.39 seconds.

Ml::CandidatesCsvPresenter
  .present
    generates header row correctly
    generates the first row correctly
    generates the second row correctly
# [RSpecRunTime] RSpec elapsed time: 24 minutes 44.83 seconds. Current RSS: ~1552M. load average: 1.18 1.19 1.24 1/291 18764



# [RSpecRunTime] Finishing example group spec/presenters/ml/candidates_csv_presenter_spec.rb. It took 1.19 seconds. Expected to take 1.39 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/setup_helper/praefect_spec.rb. Expected to take 1.35 seconds.

Gitlab::SetupHelper::Praefect
  .configuration_toml
    defaults to in memory queue
    provides database details if wanted
    fails when pghost is missing
    uses the provided pghost
    fails when pgport is missing
    uses the provided pgport
    fails when pguser is missing
    uses the provided pguser
    defaults to praefect_test if dbname is missing
    uses the provided dbname
# [RSpecRunTime] RSpec elapsed time: 24 minutes 46.04 seconds. Current RSS: ~1560M. load average: 1.18 1.19 1.24 1/291 18765


  .get_config_path
    defaults to praefect.config.toml
    takes the provided config_filename

# [RSpecRunTime] Finishing example group spec/lib/gitlab/setup_helper/praefect_spec.rb. It took 1.44 seconds. Expected to take 1.35 seconds.
# [RSpecRunTime] Starting example group spec/services/ml/find_model_service_spec.rb. Expected to take 1.34 seconds.

Ml::FindModelService
  #execute
    when model name does not exist in the project
      reutrns nil
    when model with name exists
      returns the existing model

# [RSpecRunTime] Finishing example group spec/services/ml/find_model_service_spec.rb. It took 1.06 seconds. Expected to take 1.34 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/config/yaml/loader_spec.rb. Expected to take 1.31 seconds.

Gitlab::Ci::Config::Yaml::Loader
  #load
    loads and interpolates CI config YAML
    allows the use of YAML reference tags
    when there is an error loading the YAML
      returns an error result
    when there are errors with the inputs
      returns up to 3 error messages for input errors
    when there are too many interpolation blocks
      returns an error result
    when a block is invalid
      returns an error result
    when a node is too large
      returns an error result
    when given an empty YAML file
      returns an empty result
  #load_uninterpolated_yaml
    returns the config
    when there is a format error in the yaml
      returns an error

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/config/yaml/loader_spec.rb. It took 1.21 seconds. Expected to take 1.31 seconds.
# [RSpecRunTime] Starting example group spec/helpers/gitlab_script_tag_helper_spec.rb. Expected to take 1.29 seconds.

GitlabScriptTagHelper
  external script tag
DEPRECATION WARNING: The asset "test.js" is not present in the asset pipeline.
Falling back to an asset that may be in the public folder.
This behavior is deprecated and will be removed.
To bypass the asset pipeline and preserve this behavior,
use the `skip_pipeline: true` option.
 (called from javascript_include_tag at /builds/gitlab-org/gitlab/app/helpers/gitlab_script_tag_helper.rb:12)
    returns a script tag with defer=true and a nonce
DEPRECATION WARNING: The asset "test.js" is not present in the asset pipeline.
Falling back to an asset that may be in the public folder.
This behavior is deprecated and will be removed.
To bypass the asset pipeline and preserve this behavior,
use the `skip_pipeline: true` option.
 (called from javascript_include_tag at /builds/gitlab-org/gitlab/app/helpers/gitlab_script_tag_helper.rb:12)
    returns a script tag with defer=false and a nonce
DEPRECATION WARNING: The asset "test.js" is not present in the asset pipeline.
Falling back to an asset that may be in the public folder.
This behavior is deprecated and will be removed.
To bypass the asset pipeline and preserve this behavior,
use the `skip_pipeline: true` option.
 (called from javascript_include_tag at /builds/gitlab-org/gitlab/app/helpers/gitlab_script_tag_helper.rb:12)
    returns a script tag with a nonce even nonce is set to nil
  inline script tag
    returns a script tag with a nonce using block syntax
    returns a script tag with a nonce using block syntax with options
    returns a script tag with a nonce using argument syntax
    returns a script tag with a nonce using argument syntax with options
    returns a script tag with a nonce using argument and block syntax with options
  #preload_link_tag
    returns a link tag with a nonce

# [RSpecRunTime] Finishing example group spec/helpers/gitlab_script_tag_helper_spec.rb. It took 1.13 seconds. Expected to take 1.29 seconds.
# [RSpecRunTime] Starting example group spec/models/projects/ci_feature_usage_spec.rb. Expected to take 1.28 seconds.

Projects::CiFeatureUsage
  does not allow STI
  associations
    is expected to belong to project required: false
  behaves like having unique enum values
    has unique values in "feature"
  validations
    is expected to validate that :project cannot be empty/falsy
    is expected to validate that :feature cannot be empty/falsy
  .insert_usage
    when data is not a duplicate
      creates a new record
    when data is a duplicate
      does not create a new record

# [RSpecRunTime] Finishing example group spec/models/projects/ci_feature_usage_spec.rb. It took 1.09 seconds. Expected to take 1.28 seconds.
# [RSpecRunTime] Starting example group spec/graphql/types/release_links_type_spec.rb. Expected to take 1.24 seconds.

Types::ReleaseLinksType
  is expected to require graphql authorizations :read_release
  has the expected fields
  individual field authorization
    openedMergeRequestsUrl
      has valid authorization
    mergedMergeRequestsUrl
      has valid authorization
    closedMergeRequestsUrl
      has valid authorization
    openedIssuesUrl
      has valid authorization
    closedIssuesUrl
      has valid authorization
    editUrl
      has valid authorization

# [RSpecRunTime] Finishing example group spec/graphql/types/release_links_type_spec.rb. It took 0.93 second. Expected to take 1.24 seconds.
# [RSpecRunTime] Starting example group spec/serializers/project_access_token_entity_spec.rb. Expected to take 1.23 seconds.

ProjectAccessTokenEntity
  when bot is a member of the project
    has the correct attributes
  when bot is unrelated to the project
    has the correct attributes

# [RSpecRunTime] Finishing example group spec/serializers/project_access_token_entity_spec.rb. It took 1.05 seconds. Expected to take 1.23 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/config/entry/services_spec.rb. Expected to take 1.19 seconds.

Gitlab::Ci::Config::Entry::Services
  when configuration is valid
    #valid?
      is valid
    #value
      returns valid array
  when configuration is invalid
    #valid?
      is invalid
  when configuration has ports
    when with_image_ports metadata is not enabled
      #valid?
        is not valid
    when with_image_ports metadata is enabled
      #valid?
        is valid
      #value
        returns valid array
      services alias
        when they are not unique
          #valid?
            is invalid
        when they are unique
          #valid?
            is valid
        when one of the duplicated alias is in a service without ports
          is valid
        when there are not any ports
          is valid

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/config/entry/services_spec.rb. It took 1.11 seconds. Expected to take 1.19 seconds.
# [RSpecRunTime] Starting example group spec/services/bulk_imports/archive_extraction_service_spec.rb. Expected to take 1.19 seconds.

BulkImports::ArchiveExtractionService
  #execute
    extracts files from archive and removes symlinks
    when dir is not in tmpdir
      raises an error
    when archive file is a symlink
      raises an error
    when archive file shares multiple hard links
      raises an error
    when filepath is being traversed
      raises an error

# [RSpecRunTime] Finishing example group spec/services/bulk_imports/archive_extraction_service_spec.rb. It took 1.03 seconds. Expected to take 1.19 seconds.
# [RSpecRunTime] Starting example group spec/workers/group_export_worker_spec.rb. Expected to take 1.16 seconds.

GroupExportWorker
  #perform
    when it succeeds
      calls the ExportService
    when it fails
      raises an exception when params are invalid
  sidekiq options
    disables retry
    disables dead

# [RSpecRunTime] Finishing example group spec/workers/group_export_worker_spec.rb. It took 1.21 seconds. Expected to take 1.16 seconds.
# [RSpecRunTime] Starting example group spec/models/projects/project_topic_spec.rb. Expected to take 1.14 seconds.

Projects::ProjectTopic
  does not allow STI
  is expected to be valid
  associations
    is expected to belong to project required: false
    is expected to belong to topic required: false
    is expected to validate that :topic_id is case-sensitively unique within the scope of :project_id

# [RSpecRunTime] Finishing example group spec/models/projects/project_topic_spec.rb. It took 1.07 seconds. Expected to take 1.14 seconds.
# [RSpecRunTime] Starting example group spec/models/packages/go/package_spec.rb. Expected to take 1.12 seconds.

Packages::Go::Package
  does not allow STI
  validations
    version: "v1.2.3", valid: true
      is expected to allow :version to be ‹"v1.2.3"›
    version: "v1.2.3-beta", valid: true
      is expected to allow :version to be ‹"v1.2.3-beta"›
    version: "v1.2.3-alpha.3", valid: true
      is expected to allow :version to be ‹"v1.2.3-alpha.3"›
    version: "v1", valid: false
      is expected not to allow :version to be ‹"v1"›
    version: "v1.2", valid: false
      is expected not to allow :version to be ‹"v1.2"›
    version: "v1./2.3", valid: false
      is expected not to allow :version to be ‹"v1./2.3"›
    version: "v../../../../../1.2.3", valid: false
      is expected not to allow :version to be ‹"v../../../../../1.2.3"›
    version: "v%2e%2e%2f1.2.3", valid: false
      is expected not to allow :version to be ‹"v%2e%2e%2f1.2.3"›

# [RSpecRunTime] Finishing example group spec/models/packages/go/package_spec.rb. It took 1.07 seconds. Expected to take 1.12 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/reports/codequality_reports_spec.rb. Expected to take 1.11 seconds.

Gitlab::Ci::Reports::CodequalityReports
  is expected to eq {}
  #add_degradation
    when there is a degradation
      adds degradation to codequality report
    when a required property is missing in the degradation
      sets location as an error
  #set_error_message
    when there is an error
      sets errors
  #degradations_count
    when there are many degradations
      returns the number of degradations
  #all_degradations
    when there are many degradations
      returns all degradations
  #sort_degradations!
    sorts degradations based on severity
    with non-existence and uppercase severities
      sorts unknown last
  #code_quality_report_summary
    when there is no degradation
      return nil
    when there are degradations
      returns the summary of the code quality report

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/reports/codequality_reports_spec.rb. It took 1.17 seconds. Expected to take 1.11 seconds.
# [RSpecRunTime] Starting example group spec/services/cohorts_service_spec.rb. Expected to take 1.09 seconds.

CohortsService
  #execute
    returns a list of user cohorts

# [RSpecRunTime] Finishing example group spec/services/cohorts_service_spec.rb. It took 0.98 second. Expected to take 1.09 seconds.
# [RSpecRunTime] Starting example group spec/graphql/resolvers/work_item_resolver_spec.rb. Expected to take 1.07 seconds.

Resolvers::WorkItemResolver
  #resolve
    when the user can read the work item
      is expected to eq #<WorkItem id:275 namespace954/project-972#1>
    when the user can not read the work item
      raises a resource not available error

# [RSpecRunTime] Finishing example group spec/graphql/resolvers/work_item_resolver_spec.rb. It took 1.07 seconds. Expected to take 1.07 seconds.
# [RSpecRunTime] Starting example group spec/graphql/mutations/customer_relations/contacts/update_spec.rb. Expected to take 1.05 seconds.

Mutations::CustomerRelations::Contacts::Update
  is expected to require graphql authorizations :admin_crm_contact
  #resolve
    when the user does not have permission to update a contact
      raises an error
    when the contact does not exist
      raises an error
    when the user has permission to update a contact
      updates the organization with correct values

# [RSpecRunTime] Finishing example group spec/graphql/mutations/customer_relations/contacts/update_spec.rb. It took 0.99 second. Expected to take 1.05 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/usage/metrics/instrumentations/count_slack_app_installations_gbp_metric_spec.rb. Expected to take 1.04 seconds.

Gitlab::Usage::Metrics::Instrumentations::CountSlackAppInstallationsGbpMetric
  behaves like a correct instrumented metric value and query
    behaves like a correct instrumented metric value
      has correct value
    behaves like a correct instrumented metric query
      has correct generate query

# [RSpecRunTime] Finishing example group spec/lib/gitlab/usage/metrics/instrumentations/count_slack_app_installations_gbp_metric_spec.rb. It took 1.02 seconds. Expected to take 1.04 seconds.
# [RSpecRunTime] Starting example group spec/services/import/github/gists_import_service_spec.rb. Expected to take 1.01 seconds.

Import::Github::GistsImportService
  #execute
    when import in progress
      returns error
    when import was not started
      returns success
    when user token is invalid
      returns 401 error

# [RSpecRunTime] Finishing example group spec/services/import/github/gists_import_service_spec.rb. It took 0.52 second. Expected to take 1.01 seconds.
# [RSpecRunTime] Starting example group spec/lib/gitlab/etag_caching/store_spec.rb. Expected to take 1.0 second.

Gitlab::EtagCaching::Store
  #get
    with invalid keys
      raises errors
      does not raise errors in production
    with GraphQL keys
      returns a stored value
    with RESTful keys
      returns a stored value
  #touch
    with invalid keys
      raises errors
    with GraphQL keys
      stores and returns a value
    with RESTful keys
      stores and returns a value
    with multiple keys
      stores and returns multiple values

# [RSpecRunTime] Finishing example group spec/lib/gitlab/etag_caching/store_spec.rb. It took 0.96 second. Expected to take 1.0 second.
# [RSpecRunTime] Starting example group spec/models/concerns/from_set_operator_spec.rb. Expected to take 0.99 second.

FromSetOperator
  does not allow STI
  when set operator method already exists
    is expected to raise RuntimeError
  with members
    as array
      is expected not to make queries
      behaves like set operator called with correct members
        is expected to receive new([#<ActiveRecord::Relation [#<Group id:1948 @group167>]>, #<ActiveRecord::Relation [#<Group id:1949 @group168>]>], anything) 1 time
    as multiple parameters
      is expected not to make queries
      behaves like set operator called with correct members
        is expected to receive new([#<ActiveRecord::Relation [#<Group id:1948 @group167>]>, #<ActiveRecord::Relation [#<Group id:1949 @group168>]>], anything) 1 time

# [RSpecRunTime] Finishing example group spec/models/concerns/from_set_operator_spec.rb. It took 0.93 second. Expected to take 0.99 second.
# [RSpecRunTime] Starting example group spec/rubocop/cop/code_reuse/presenter_spec.rb. Expected to take 0.97 second.

RuboCop::Cop::CodeReuse::Presenter
  flags the use of a Presenter in a Serializer
  flags the use of a Service class in a Presenter
  flags the use of a Presenter in a worker
  flags the use of a Presenter in a model instance method
  flags the use of a Presenter in a Finder
  flags the use of a Presenter in a Service class
  flags the use of a Presenter in a model class method

# [RSpecRunTime] Finishing example group spec/rubocop/cop/code_reuse/presenter_spec.rb. It took 0.86 second. Expected to take 0.97 second.
# [RSpecRunTime] Starting example group spec/lib/sidebars/user_settings/menus/account_menu_spec.rb. Expected to take 0.97 second.

Sidebars::UserSettings::Menus::AccountMenu
  behaves like User settings menu #render? method
    #render?
      when user is logged in
        renders
      when user is not logged in
        does not render
  behaves like User settings menu
    does not contain any sub menu
    renders the correct link
    renders the correct title
    renders the correct icon
    defines correct active route

# [RSpecRunTime] Finishing example group spec/lib/sidebars/user_settings/menus/account_menu_spec.rb. It took 0.86 second. Expected to take 0.97 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/graphql/present/field_extension_spec.rb. Expected to take 0.94 second.

Gitlab::Graphql::Present::FieldExtension
  when the object does not declare a presenter
    does not affect normal resolution
  when the field is declared on an interface, and implemented by a presenter
    resolves the interface field using the implementation from the presenter
    when the implementation is inherited
      resolves the interface field using the implementation from the presenter
  interactions with inheritance
    can resolve value, foo and bar
  when the object declares a presenter
    when the presenter overrides the original method
      behaves like calling the presenter method
        calls the presenter method
    when the presenter provides a new method
      when we select the original field
        is unaffected
      when we select the new field
        behaves like calling the presenter method
          calls the presenter method

# [RSpecRunTime] Finishing example group spec/lib/gitlab/graphql/present/field_extension_spec.rb. It took 0.89 second. Expected to take 0.94 second.
# [RSpecRunTime] Starting example group spec/initializers/carrierwave_s3_encryption_headers_patch_spec.rb. Expected to take 0.94 second.

CarrierWave::Storage::Fog::File
  Azure
    #copy_to
      copies the file
    #authenticated_url
      has an authenticated URL
      with custom expire_at
        properly sets expires param
      with content_disposition option
        passes options
  AWS
    #copy_to
      copies the file

# [RSpecRunTime] Finishing example group spec/initializers/carrierwave_s3_encryption_headers_patch_spec.rb. It took 0.82 second. Expected to take 0.94 second.
# [RSpecRunTime] Starting example group spec/lib/bulk_imports/common/rest/get_badges_query_spec.rb. Expected to take 0.92 second.

BulkImports::Common::Rest::GetBadgesQuery
  .to_h
    when entity is group
      when source id is present
        returns correct query using source id and page info
      when source id is missing
        returns correct query using source full path
    when entity is project
      when source id is present
        returns correct query using source id and page info
      when source id is missing
        returns correct query using source full path

# [RSpecRunTime] Finishing example group spec/lib/bulk_imports/common/rest/get_badges_query_spec.rb. It took 0.98 second. Expected to take 0.92 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/database/health_status/indicators/write_ahead_log_spec.rb. Expected to take 0.92 second.

Gitlab::Database::HealthStatus::Indicators::WriteAheadLog
  #evaluate
    remembers the indicator class
    returns NoSignal signal in case the feature flag is disabled
    returns NoSignal signal when WAL archive queue can not be calculated
    uses primary database
    when WAL archive queue size is below the limit
      returns Normal signal
    when WAL archive queue size is above the limit
      returns Stop signal

# [RSpecRunTime] Finishing example group spec/lib/gitlab/database/health_status/indicators/write_ahead_log_spec.rb. It took 1.04 seconds. Expected to take 0.92 second.
# [RSpecRunTime] Starting example group spec/models/group_custom_attribute_spec.rb. Expected to take 0.89 second.

GroupCustomAttribute
  does not allow STI
  assocations
    is expected to belong to group required: false
  validations
    is expected to validate that :group cannot be empty/falsy
    is expected to validate that :key cannot be empty/falsy
    is expected to validate that :value cannot be empty/falsy
    is expected to validate that :key is case-sensitively unique within the scope of :group_id

# [RSpecRunTime] Finishing example group spec/models/group_custom_attribute_spec.rb. It took 0.92 second. Expected to take 0.89 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/gitaly_client/conflict_files_stitcher_spec.rb. Expected to take 0.88 second.

Gitlab::GitalyClient::ConflictFilesStitcher
  enumeration
    combines segregated ConflictFile messages together
    handles non-latin character names

# [RSpecRunTime] Finishing example group spec/lib/gitlab/gitaly_client/conflict_files_stitcher_spec.rb. It took 0.82 second. Expected to take 0.88 second.
# [RSpecRunTime] Starting example group spec/services/achievements/destroy_service_spec.rb. Expected to take 0.86 second.

Achievements::DestroyService
  #execute
    when user does not have permission
      returns an error
    when user has permission
      deletes the achievement

# [RSpecRunTime] Finishing example group spec/services/achievements/destroy_service_spec.rb. It took 0.78 second. Expected to take 0.86 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/github_import/events_cache_spec.rb. Expected to take 0.86 second.

Gitlab::GithubImport::EventsCache
  #delete
    deletes the list
  #events
    retrieves the list of events from the cache in the correct order
    when no event was added
      returns an empty array
  #add
    adds event to cache
    when events is too large to cache
      does not add event to cache

# [RSpecRunTime] Finishing example group spec/lib/gitlab/github_import/events_cache_spec.rb. It took 0.82 second. Expected to take 0.86 second.
# [RSpecRunTime] Starting example group spec/lib/sidebars/projects/menus/wiki_menu_spec.rb. Expected to take 0.84 second.

Sidebars::Projects::Menus::WikiMenu
  does not contain any sub menu
  #render?
    when user can access project wiki
      returns true
      when user cannot access project wiki
        returns false
  behaves like serializable as super_sidebar_menu_args
    returns hash with provided attributes
    returns hash with an item_id

# [RSpecRunTime] Finishing example group spec/lib/sidebars/projects/menus/wiki_menu_spec.rb. It took 0.72 second. Expected to take 0.84 second.
# [RSpecRunTime] Starting example group spec/views/groups/packages/index.html.haml_spec.rb. Expected to take 0.83 second.

groups/packages/index.html.haml
  renders vue entrypoint
  can_delete_packages
    without permission sets false
    with permission sets true
  settings path
    without permission sets empty settings path
    with permission sets group settings path

# [RSpecRunTime] Finishing example group spec/views/groups/packages/index.html.haml_spec.rb. It took 0.8 second. Expected to take 0.83 second.
# [RSpecRunTime] Starting example group spec/workers/email_receiver_worker_spec.rb. Expected to take 0.82 second.

EmailReceiverWorker
  when reply by email is enabled
    calls the email receiver
    when an error occurs
      when error is a processing error
        triggers email failure handler
        logs the error
      when error is not a processing error
        triggers email failure handler
        reports the error
  when reply by email is disabled
    doesn't call the email receiver

# [RSpecRunTime] Finishing example group spec/workers/email_receiver_worker_spec.rb. It took 0.8 second. Expected to take 0.82 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/snippet_search_results_spec.rb. Expected to take 0.81 second.

Gitlab::SnippetSearchResults
  #snippet_titles_count
    returns the amount of matched snippet titles
  #formatted_count
    returns the expected formatted count
  #highlight_map
    returns the expected highlight map
  #objects
    uses page and per_page to paginate results

# [RSpecRunTime] Finishing example group spec/lib/gitlab/snippet_search_results_spec.rb. It took 0.74 second. Expected to take 0.81 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/usage/metrics/instrumentations/count_issues_metric_spec.rb. Expected to take 0.8 second.

Gitlab::Usage::Metrics::Instrumentations::CountIssuesMetric
  behaves like a correct instrumented metric value and query
    behaves like a correct instrumented metric value
      has correct value
    behaves like a correct instrumented metric query
      has correct generate query

# [RSpecRunTime] Finishing example group spec/lib/gitlab/usage/metrics/instrumentations/count_issues_metric_spec.rb. It took 0.76 second. Expected to take 0.8 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/reference_counter_spec.rb. Expected to take 0.78 second.

Gitlab::ReferenceCounter
  #increase
    increases and sets the expire time of a reference count for a path
  #decrease
    decreases the reference count for a path
    warns if attempting to decrease a counter with a value of zero or less, and resets the counter
  #value
    get the reference count for a path
  #reset!
    resets reference count down to zero
  #expires_in
    displays the expiration time in seconds

# [RSpecRunTime] Finishing example group spec/lib/gitlab/reference_counter_spec.rb. It took 0.73 second. Expected to take 0.78 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/config/yaml/documents_spec.rb. Expected to take 0.78 second.

Gitlab::Ci::Config::Yaml::Documents
  #content
    when there is a header
      returns the unparsed content of the last document
    when there is no header
      returns the unparsed content of the first document
  #header
    when there are at least 2 documents and the first document has a `spec` keyword
      returns the header
    when there are fewer than 2 documents
      returns nil
    when there are at least 2 documents and the first document does not have a `spec` keyword
      returns nil

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/config/yaml/documents_spec.rb. It took 0.64 second. Expected to take 0.78 second.
# [RSpecRunTime] Starting example group spec/workers/user_status_cleanup/batch_worker_spec.rb. Expected to take 0.75 second.

UserStatusCleanup::BatchWorker
  behaves like an idempotent worker
    is labeled as idempotent
    performs multiple times sequentially without raising an exception
  #perform
    cleans up the records
    when no records are scheduled for cleanup
      does nothing

# [RSpecRunTime] Finishing example group spec/workers/user_status_cleanup/batch_worker_spec.rb. It took 0.84 second. Expected to take 0.75 second.
# [RSpecRunTime] Starting example group spec/rubocop/cop/active_record_association_reload_spec.rb. Expected to take 0.75 second.

RuboCop::Cop::ActiveRecordAssociationReload
  when using ActiveRecord::Relation
    registers an offense on reload usage
    does not register an offense on reset usage
  when using on self
    registers an offense on reload usage
    does not register an offense on reset usage
  when using ActiveRecord::Base
    registers an offense on reload usage
    does not register an offense on reset usage

# [RSpecRunTime] Finishing example group spec/rubocop/cop/active_record_association_reload_spec.rb. It took 0.95 second. Expected to take 0.75 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/diff/pair_selector_spec.rb. Expected to take 0.73 second.

Gitlab::Diff::PairSelector
  #to_a
    finds all pairs
    when there are empty lines
      is expected not to raise Exception
    when there are only removals
      returns empty collection
    when there are only additions
      returns empty collection
    when there are no changes
      returns empty collection

# [RSpecRunTime] Finishing example group spec/lib/gitlab/diff/pair_selector_spec.rb. It took 0.63 second. Expected to take 0.73 second.
# [RSpecRunTime] Starting example group spec/workers/gitlab/github_import/import_diff_note_worker_spec.rb. Expected to take 0.72 second.

Gitlab::GithubImport::ImportDiffNoteWorker
  #import
    imports a diff note

# [RSpecRunTime] Finishing example group spec/workers/gitlab/github_import/import_diff_note_worker_spec.rb. It took 0.71 second. Expected to take 0.72 second.
# [RSpecRunTime] Starting example group spec/models/jira_connect_subscription_spec.rb. Expected to take 0.72 second.

JiraConnectSubscription
  does not allow STI
  associations
    is expected to belong to installation class_name => JiraConnectInstallation required: false
    is expected to belong to namespace class_name => Namespace required: false
  validations
    is expected to validate that :installation cannot be empty/falsy
    is expected to validate that :namespace cannot be empty/falsy

# [RSpecRunTime] Finishing example group spec/models/jira_connect_subscription_spec.rb. It took 0.69 second. Expected to take 0.72 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/tracking/destinations/snowplow_spec.rb. Expected to take 0.71 second.

Gitlab::Tracking::Destinations::Snowplow
  when snowplow is enabled
    #event
      sends event to tracker
      increase total snowplow events counter
  when snowplow is not enabled
    #event
      does not send event to tracker
  callbacks
    on success
      increase gitlab_successful_snowplow_events_total counter
    on failure
      increase gitlab_failed_snowplow_events_total counter and logs failures

# [RSpecRunTime] Finishing example group spec/lib/gitlab/tracking/destinations/snowplow_spec.rb. It took 0.66 second. Expected to take 0.71 second.
# [RSpecRunTime] Starting example group spec/graphql/types/alert_management/integration_type_enum_spec.rb. Expected to take 0.69 second.

Types::AlertManagement::IntegrationTypeEnum
  is expected to eq "AlertManagementIntegrationType"
  statuses
    name: "PROMETHEUS", value: :prometheus
      exposes a type with the correct value
    name: "HTTP", value: :http
      exposes a type with the correct value

# [RSpecRunTime] Finishing example group spec/graphql/types/alert_management/integration_type_enum_spec.rb. It took 0.5 second. Expected to take 0.69 second.
# [RSpecRunTime] Starting example group spec/graphql/types/data_transfer/project_data_transfer_type_spec.rb. Expected to take 0.69 second.

Types::DataTransfer::ProjectDataTransferType
  includes the specific fields
  #total_egress
    calls sum on active record relation

# [RSpecRunTime] Finishing example group spec/graphql/types/data_transfer/project_data_transfer_type_spec.rb. It took 0.66 second. Expected to take 0.69 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/config/entry/includes_spec.rb. Expected to take 0.67 second.

Gitlab::Ci::Config::Entry::Includes
  validations
    returns invalid
    returns the appropriate error
  #initialize
    does not increase aspects

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/config/entry/includes_spec.rb. It took 0.47 second. Expected to take 0.67 second.
# [RSpecRunTime] Starting example group spec/graphql/resolvers/saved_reply_resolver_spec.rb. Expected to take 0.67 second.

Resolvers::SavedReplyResolver
  returns nil when saved reply is another users
  returns users saved reply
  returns nil when saved reply is not found

# [RSpecRunTime] Finishing example group spec/graphql/resolvers/saved_reply_resolver_spec.rb. It took 0.6 second. Expected to take 0.67 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/global_id/deprecations_spec.rb. Expected to take 0.64 second.

Gitlab::GlobalId::Deprecations
  .deprecated?
    returns a boolean to signal if model name has a deprecation
  .deprecation_for
    returns the deprecation for the model if it exists
  .deprecation_by
    returns the deprecation by the model if it exists
  .apply_to_graphql_name
    returns the corresponding graphql_name of the GID for the new model
    returns the same value if there is no deprecation
# [RSpecRunTime] RSpec elapsed time: 25 minutes 28.51 seconds. Current RSS: ~1543M. load average: 1.31 1.22 1.25 1/286 18777



# [RSpecRunTime] Finishing example group spec/lib/gitlab/global_id/deprecations_spec.rb. It took 1.94 seconds. Expected to take 0.64 second.
# [RSpecRunTime] Starting example group spec/serializers/integrations/project_entity_spec.rb. Expected to take 0.63 second.

Integrations::ProjectEntity
  as json
    contains needed attributes

# [RSpecRunTime] Finishing example group spec/serializers/integrations/project_entity_spec.rb. It took 0.66 second. Expected to take 0.63 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/import_export/import_export_spec.rb. Expected to take 0.63 second.

Gitlab::ImportExport
  export filename
    contains the project path
    contains the namespace path
    does not go over a certain length
  #snippet_repo_bundle_filename_for
    generates the snippet bundle name

# [RSpecRunTime] Finishing example group spec/lib/gitlab/import_export/import_export_spec.rb. It took 0.61 second. Expected to take 0.63 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/memory/watchdog/monitor/heap_fragmentation_spec.rb. Expected to take 0.61 second.

Gitlab::Memory::Watchdog::Monitor::HeapFragmentation
  #initialize
    sets the heap fragmentation limit gauge
  #call
    gets gc_heap_fragmentation
    when process exceeds threshold
      returns if threshold is violated and payload
    when process does not exceed threshold
      returns if threshold is violated and payload

# [RSpecRunTime] Finishing example group spec/lib/gitlab/memory/watchdog/monitor/heap_fragmentation_spec.rb. It took 0.58 second. Expected to take 0.61 second.
# [RSpecRunTime] Starting example group spec/graphql/types/packages/package_details_type_spec.rb. Expected to take 0.6 second.

Types::Packages::PackageDetailsType
  is expected to eq "Represents a package details in the Package Registry"
  is expected to require graphql authorizations :read_package
  is expected to expose permissions using Types::PermissionTypes::Package
  includes all the package fields

# [RSpecRunTime] Finishing example group spec/graphql/types/packages/package_details_type_spec.rb. It took 0.56 second. Expected to take 0.6 second.
# [RSpecRunTime] Starting example group spec/support_specs/capybara_slow_finder_spec.rb. Expected to take 0.6 second.

Capybara::Node::Base::SlowFinder
  without timeout
    when element is found
      does not raise error
    when element is not found
      raises Capybara::ElementNotFound error
  with timeout
    with default timeout
      raises a timeout error
    when passed as paramater
      raises a timeout error

# [RSpecRunTime] Finishing example group spec/support_specs/capybara_slow_finder_spec.rb. It took 0.66 second. Expected to take 0.6 second.
# [RSpecRunTime] Starting example group spec/views/admin/users/_form.html.haml_spec.rb. Expected to take 0.58 second.

admin/users/_form.html.haml
  Access
    user top level group creation setting
      when the user is not allowed to create a group
        hides the checkbox
      when the user is allowed to create a group
        renders the checkbox

# [RSpecRunTime] Finishing example group spec/views/admin/users/_form.html.haml_spec.rb. It took 0.57 second. Expected to take 0.58 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/sessions/redis_store_spec.rb. Expected to take 0.58 second.

Gitlab::Sessions::RedisStore
  #generate_sid
    when passing session_cookie_token_prefix in options
      prefix: nil, calculated_prefix: ""
        generates sid that is prefixed with the configured prefix
      prefix: "", calculated_prefix: ""
        generates sid that is prefixed with the configured prefix
      prefix: "random_prefix_", calculated_prefix: "random_prefix_"
        generates sid that is prefixed with the configured prefix
    when not passing session_cookie_token_prefix in options
      generates sid that is not prefixed

# [RSpecRunTime] Finishing example group spec/lib/gitlab/sessions/redis_store_spec.rb. It took 0.55 second. Expected to take 0.58 second.
# [RSpecRunTime] Starting example group spec/services/emails/destroy_service_spec.rb. Expected to take 0.56 second.

Emails::DestroyService
  #execute
    removes an email
    when it corresponds to the user primary email
      does not remove the email and raises an exception

# [RSpecRunTime] Finishing example group spec/services/emails/destroy_service_spec.rb. It took 0.54 second. Expected to take 0.56 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/chat_name_token_spec.rb. Expected to take 0.55 second.

Gitlab::ChatNameToken
  when using unknown token
    returns empty data
  when storing data
    returns stored data
    and after deleting them
      data are removed

# [RSpecRunTime] Finishing example group spec/lib/gitlab/chat_name_token_spec.rb. It took 0.47 second. Expected to take 0.55 second.
# [RSpecRunTime] Starting example group spec/tooling/danger/experiments_spec.rb. Expected to take 0.54 second.

Tooling::Danger::Experiments
  #removed_experiments
    returns names of removed experiments
  #class_files_removed?
    when yml file is deleted but not class file
      returns false
    when yml file is deleted but no corresponding class file exists
      returns true

# [RSpecRunTime] Finishing example group spec/tooling/danger/experiments_spec.rb. It took 0.47 second. Expected to take 0.54 second.
# [RSpecRunTime] Starting example group spec/rubocop/cop/qa/element_with_pattern_spec.rb. Expected to take 0.53 second.

RuboCop::Cop::QA::ElementWithPattern
  when outside of a QA spec file
    does not register an offense
  in a QA file
    registers an offense for elements with a pattern
    does not register an offense for element without a pattern

# [RSpecRunTime] Finishing example group spec/rubocop/cop/qa/element_with_pattern_spec.rb. It took 0.53 second. Expected to take 0.53 second.
# [RSpecRunTime] Starting example group spec/services/packages/rpm/repository_metadata/build_repomd_xml_service_spec.rb. Expected to take 0.52 second.

Packages::Rpm::RepositoryMetadata::BuildRepomdXmlService
  #execute
    generate valid xml
    has all data info
    when data values has unexpected keys
      ignores wrong keys

# [RSpecRunTime] Finishing example group spec/services/packages/rpm/repository_metadata/build_repomd_xml_service_spec.rb. It took 0.47 second. Expected to take 0.52 second.
# [RSpecRunTime] Starting example group spec/rubocop/cop/qa/selector_usage_spec.rb. Expected to take 0.51 second.

RuboCop::Cop::QA::SelectorUsage
  outside of QA
    data-qa-selector
      behaves like non-qa file usage
        reports an offense
    qa class
      behaves like non-qa file usage
        reports an offense
  in a QA file
    has no error

# [RSpecRunTime] Finishing example group spec/rubocop/cop/qa/selector_usage_spec.rb. It took 0.5 second. Expected to take 0.51 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/build/policy_spec.rb. Expected to take 0.5 second.

Gitlab::Ci::Build::Policy
  .fabricate
    when policy exists
      fabricates and initializes relevant policy
    when some policies are not defined
      gracefully skips unknown policies
    when passing a nil value as specs
      returns an empty array

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/build/policy_spec.rb. It took 0.47 second. Expected to take 0.5 second.
# [RSpecRunTime] Starting example group spec/helpers/external_link_helper_spec.rb. Expected to take 0.5 second.

ExternalLinkHelper
  returns external link with icon
  allows options when creating external link with icon
  sanitizes and returns external link with icon

# [RSpecRunTime] Finishing example group spec/helpers/external_link_helper_spec.rb. It took 0.48 second. Expected to take 0.5 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/ci/status/group/factory_spec.rb. Expected to take 0.49 second.

Gitlab::Ci::Status::Group::Factory
  inherits from the core factory
  exposes group helpers
  exposes extended statuses

# [RSpecRunTime] Finishing example group spec/lib/gitlab/ci/status/group/factory_spec.rb. It took 0.48 second. Expected to take 0.49 second.
# [RSpecRunTime] Starting example group spec/rubocop/cop/rspec/avoid_conditional_statements_spec.rb. Expected to take 0.48 second.

RuboCop::Cop::RSpec::AvoidConditionalStatements
  when using conditionals
    flags if conditional
    flags unless conditional
    flags ternary operator

# [RSpecRunTime] Finishing example group spec/rubocop/cop/rspec/avoid_conditional_statements_spec.rb. It took 0.52 second. Expected to take 0.48 second.
# [RSpecRunTime] Starting example group spec/tooling/lib/tooling/api/pipeline_spec.rb. Expected to take 0.47 second.

Tooling::API::Pipeline
  #failed_jobs
    when there are failed jobs
      returns the jobs
  #failed_spec_files
    returns the failed spec files
    when Tooling::Debug is enabled
      outputs the job logs

# [RSpecRunTime] Finishing example group spec/tooling/lib/tooling/api/pipeline_spec.rb. It took 0.48 second. Expected to take 0.47 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/audit/deploy_token_author_spec.rb. Expected to take 0.46 second.

Gitlab::Audit::DeployTokenAuthor
  #initialize
    sets correct attributes
    sets default name when it is not provided

# [RSpecRunTime] Finishing example group spec/lib/gitlab/audit/deploy_token_author_spec.rb. It took 0.4 second. Expected to take 0.46 second.
# [RSpecRunTime] Starting example group spec/services/vs_code/settings/delete_service_spec.rb. Expected to take 0.44 second.

VsCode::Settings::DeleteService
  #execute
    deletes all vscode_settings belonging to the current user

# [RSpecRunTime] Finishing example group spec/services/vs_code/settings/delete_service_spec.rb. It took 0.45 second. Expected to take 0.44 second.
# [RSpecRunTime] Starting example group spec/lib/sidebars/organizations/menus/scope_menu_spec.rb. Expected to take 0.43 second.

Sidebars::Organizations::Menus::ScopeMenu
  behaves like serializable as super_sidebar_menu_args
    returns hash with provided attributes
    returns hash with an item_id

# [RSpecRunTime] Finishing example group spec/lib/sidebars/organizations/menus/scope_menu_spec.rb. It took 0.41 second. Expected to take 0.43 second.
# [RSpecRunTime] Starting example group spec/helpers/one_trust_helper_spec.rb. Expected to take 0.43 second.

OneTrustHelper
  #one_trust_enabled?
    with ecomm_instrumentation feature flag disabled
      is expected to be falsey
    with ecomm_instrumentation feature flag enabled
      when no id is set
        is expected to be falsey

# [RSpecRunTime] Finishing example group spec/helpers/one_trust_helper_spec.rb. It took 0.4 second. Expected to take 0.43 second.
# [RSpecRunTime] Starting example group spec/rubocop/qa_helpers_spec.rb. Expected to take 0.42 second.

RuboCop::QAHelpers
  #in_qa_file?
    returns true for a node in the qa/ directory
    returns false for a node outside the qa/ directory

# [RSpecRunTime] Finishing example group spec/rubocop/qa_helpers_spec.rb. It took 0.37 second. Expected to take 0.42 second.
# [RSpecRunTime] Starting example group spec/graphql/types/boards/board_issue_input_type_spec.rb. Expected to take 0.42 second.

Types::Boards::BoardIssueInputType
  is expected to eq "BoardIssueInput"
  has specific fields

# [RSpecRunTime] Finishing example group spec/graphql/types/boards/board_issue_input_type_spec.rb. It took 0.39 second. Expected to take 0.42 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/usage/metrics/instrumentations/snowplow_configured_to_gitlab_collector_metric_spec.rb. Expected to take 0.41 second.

Gitlab::Usage::Metrics::Instrumentations::SnowplowConfiguredToGitlabCollectorMetric
  for collector_hostname option
    collector_hostname: "snowplow.trx.gitlab.net", expected_value: true
      behaves like a correct instrumented metric value
        has correct value
    collector_hostname: "foo.bar.something.net", expected_value: false
      behaves like a correct instrumented metric value
        has correct value

# [RSpecRunTime] Finishing example group spec/lib/gitlab/usage/metrics/instrumentations/snowplow_configured_to_gitlab_collector_metric_spec.rb. It took 0.44 second. Expected to take 0.41 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/sidekiq_middleware/pause_control/client_spec.rb. Expected to take 0.41 second.

Gitlab::SidekiqMiddleware::PauseControl::Client
  #call
    when strategy is enabled
      does not schedule the job
    when strategy is disabled
      schedules the job

# [RSpecRunTime] Finishing example group spec/lib/gitlab/sidekiq_middleware/pause_control/client_spec.rb. It took 0.39 second. Expected to take 0.41 second.
# [RSpecRunTime] Starting example group spec/helpers/ci/pipeline_schedules_helper_spec.rb. Expected to take 0.41 second.

Ci::PipelineSchedulesHelper
  #js_pipeline_schedules_form_data
    returns pipeline schedule form data

# [RSpecRunTime] Finishing example group spec/helpers/ci/pipeline_schedules_helper_spec.rb. It took 0.35 second. Expected to take 0.41 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/database/background_migration/batched_background_migration_dictionary_spec.rb. Expected to take 0.4 second.

Gitlab::Database::BackgroundMigration::BatchedBackgroundMigrationDictionary
  .entry
    returns a single dictionary entry for the given migration job

# [RSpecRunTime] Finishing example group spec/lib/gitlab/database/background_migration/batched_background_migration_dictionary_spec.rb. It took 0.37 second. Expected to take 0.4 second.
# [RSpecRunTime] Starting example group spec/graphql/types/ml/model_type_spec.rb. Expected to take 0.4 second.

Types::Ml::ModelType
  includes all the package fields
  is expected to eq "Machine learning model in the model registry"

# [RSpecRunTime] Finishing example group spec/graphql/types/ml/model_type_spec.rb. It took 0.37 second. Expected to take 0.4 second.
# [RSpecRunTime] Starting example group spec/lib/api/validations/validators/email_or_email_list_spec.rb. Expected to take 0.4 second.

API::Validations::Validators::EmailOrEmailList
  with valid email addresses
    does not raise a validation error
  including any invalid email address
    raises a validation error

# [RSpecRunTime] Finishing example group spec/lib/api/validations/validators/email_or_email_list_spec.rb. It took 0.39 second. Expected to take 0.4 second.
# [RSpecRunTime] Starting example group spec/lib/banzai/filter/markdown_engines/cmark_spec.rb. Expected to take 0.39 second.

Banzai::Filter::MarkdownEngines::Cmark
  turns off sourcepos
  defaults to generating sourcepos

# [RSpecRunTime] Finishing example group spec/lib/banzai/filter/markdown_engines/cmark_spec.rb. It took 0.37 second. Expected to take 0.39 second.
# [RSpecRunTime] Starting example group spec/lib/bulk_imports/common/extractors/rest_extractor_spec.rb. Expected to take 0.39 second.

BulkImports::Common::Extractors::RestExtractor
  #extract
    returns instance of ExtractedData

# [RSpecRunTime] Finishing example group spec/lib/bulk_imports/common/extractors/rest_extractor_spec.rb. It took 0.37 second. Expected to take 0.39 second.
# [RSpecRunTime] Starting example group spec/graphql/types/admin/analytics/usage_trends/measurement_identifier_enum_spec.rb. Expected to take 0.38 second.

Types::Admin::Analytics::UsageTrends::MeasurementIdentifierEnum
  is expected to eq "MeasurementIdentifier"
  exposes all the existing identifier values

# [RSpecRunTime] Finishing example group spec/graphql/types/admin/analytics/usage_trends/measurement_identifier_enum_spec.rb. It took 0.37 second. Expected to take 0.38 second.
# [RSpecRunTime] Starting example group spec/graphql/types/ci/ci_cd_setting_type_spec.rb. Expected to take 0.37 second.

Types::Ci::CiCdSettingType
  is expected to eq "ProjectCiCdSetting"
  exposes the expected fields

# [RSpecRunTime] Finishing example group spec/graphql/types/ci/ci_cd_setting_type_spec.rb. It took 0.43 second. Expected to take 0.37 second.
# [RSpecRunTime] Starting example group spec/workers/gitlab/github_import/pull_requests/import_review_request_worker_spec.rb. Expected to take 0.34 second.

Gitlab::GithubImport::PullRequests::ImportReviewRequestWorker
  #import
    imports an pull request review requests

# [RSpecRunTime] Finishing example group spec/workers/gitlab/github_import/pull_requests/import_review_request_worker_spec.rb. It took 0.33 second. Expected to take 0.34 second.
# [RSpecRunTime] Starting example group spec/workers/gitlab/github_import/import_protected_branch_worker_spec.rb. Expected to take 0.34 second.

Gitlab::GithubImport::ImportProtectedBranchWorker
  #import
    imports protected branch rule

# [RSpecRunTime] Finishing example group spec/workers/gitlab/github_import/import_protected_branch_worker_spec.rb. It took 0.32 second. Expected to take 0.34 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/graphql/query_analyzers/ast/logger_analyzer_spec.rb. Expected to take 0.33 second.

Gitlab::Graphql::QueryAnalyzers::AST::LoggerAnalyzer
  #result
    returns the complexity, depth, duration, etc

# [RSpecRunTime] Finishing example group spec/lib/gitlab/graphql/query_analyzers/ast/logger_analyzer_spec.rb. It took 0.29 second. Expected to take 0.33 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/usage/metrics/instrumentations/incoming_email_encrypted_secrets_enabled_metric_spec.rb. Expected to take 0.32 second.

Gitlab::Usage::Metrics::Instrumentations::IncomingEmailEncryptedSecretsEnabledMetric
  behaves like a correct instrumented metric value
    has correct value

# [RSpecRunTime] Finishing example group spec/lib/gitlab/usage/metrics/instrumentations/incoming_email_encrypted_secrets_enabled_metric_spec.rb. It took 0.29 second. Expected to take 0.32 second.
# [RSpecRunTime] Starting example group spec/serializers/evidences/release_serializer_spec.rb. Expected to take 0.32 second.

Evidences::ReleaseSerializer
  represents an Evidence::ReleaseEntity entity

# [RSpecRunTime] Finishing example group spec/serializers/evidences/release_serializer_spec.rb. It took 0.29 second. Expected to take 0.32 second.
# [RSpecRunTime] Starting example group spec/services/issues/issuable_base_service_spec.rb. Expected to take 0.32 second.

IssuableBaseService
  #constructor_container_arg
    is expected to eq {:container=>"some-value"}

# [RSpecRunTime] Finishing example group spec/services/issues/issuable_base_service_spec.rb. It took 0.29 second. Expected to take 0.32 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/nav/top_nav_menu_item_spec.rb. Expected to take 0.31 second.

Gitlab::Nav::TopNavMenuItem
  .build
    builds a hash from the given args

# [RSpecRunTime] Finishing example group spec/lib/gitlab/nav/top_nav_menu_item_spec.rb. It took 0.3 second. Expected to take 0.31 second.
# [RSpecRunTime] Starting example group spec/graphql/types/work_items/widgets/participants_type_spec.rb. Expected to take 0.31 second.

Types::WorkItems::Widgets::ParticipantsType
  exposes the expected fields

# [RSpecRunTime] Finishing example group spec/graphql/types/work_items/widgets/participants_type_spec.rb. It took 0.31 second. Expected to take 0.31 second.
# [RSpecRunTime] Starting example group spec/graphql/types/permission_types/work_item_spec.rb. Expected to take 0.3 second.

Types::PermissionTypes::WorkItem
  is expected to have graphql field :admin_work_item_link

# [RSpecRunTime] Finishing example group spec/graphql/types/permission_types/work_item_spec.rb. It took 0.29 second. Expected to take 0.3 second.
# [RSpecRunTime] Starting example group spec/lib/gitlab/diff/inline_diff_markdown_marker_spec.rb. Expected to take 0.29 second.

Gitlab::Diff::InlineDiffMarkdownMarker
  #mark
    does not escape html etities and marks the range

# [RSpecRunTime] Finishing example group spec/lib/gitlab/diff/inline_diff_markdown_marker_spec.rb. It took 0.29 second. Expected to take 0.29 second.
auto_explain log contains 1915 entries for main, writing to /builds/gitlab-org/gitlab/auto_explain/rspec-unit-pg14-9-32.340.main.ndjson.gz
took 28.920767829
auto_explain log contains 1915 entries for ci, writing to /builds/gitlab-org/gitlab/auto_explain/rspec-unit-pg14-9-32.340.ci.ndjson.gz
took 27.732096408
[TEST PROF INFO] EventProf results for sql.active_record

Total time: 05:57.880 of 25:44.195 (23.18%)
Total events: 252663

Top 5 slowest suites (by time):

Ci::PipelineP...cessingService (./spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb:5) – 01:37.321 (51831 / 104) of 05:14.905 (30.91%)
Event (./spec/models/event_spec.rb:5) – 00:22.759 (17003 / 159) of 01:31.263 (24.94%)
Ci::Bridge (./spec/models/ci/bridge_spec.rb:5) – 00:13.318 (10434 / 204) of 01:01.703 (21.58%)
MergeRequests...tyCheckService (./spec/services/merge_requests/mergeability_check_service_spec.rb:5) – 00:13.197 (9217 / 44) of 01:07.472 (19.56%)
Todos::Destro...PrivateService (./spec/services/todos/destroy/group_private_service_spec.rb:5) – 00:12.321 (7916 / 5) of 00:35.812 (34.41%)

Knapsack report was generated. Preview:
{
  "spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb": 314.86778903900085,
  "spec/tasks/gitlab/workhorse_rake_spec.rb": 119.37289412000064,
  "spec/models/event_spec.rb": 91.26290667699868,
  "spec/services/merge_requests/mergeability_check_service_spec.rb": 67.47218923499895,
  "spec/models/ci/bridge_spec.rb": 61.70264861299984,
  "spec/models/integration_spec.rb": 47.72262173499985,
  "spec/graphql/mutations/merge_requests/update_spec.rb": 41.385739139999714,
  "spec/lib/gitlab/cycle_analytics/stage_summary_spec.rb": 38.12698485100009,
  "spec/services/todos/destroy/group_private_service_spec.rb": 35.81234300599863,
  "spec/services/users/destroy_service_spec.rb": 25.338411127000654,
  "spec/services/projects/prometheus/alerts/notify_service_spec.rb": 25.531329827999798,
  "spec/services/projects/protect_default_branch_service_spec.rb": 22.828096561001075,
  "spec/models/merge_request_diff_commit_spec.rb": 23.040985347999595,
  "spec/lib/gitlab/import_export/project/sample/relation_tree_restorer_spec.rb": 24.360254819001057,
  "spec/policies/namespace/root_storage_statistics_policy_spec.rb": 21.597355441999753,
  "spec/models/timelog_spec.rb": 20.054983505000564,
  "spec/models/route_spec.rb": 17.43970226000056,
  "spec/models/internal_id_spec.rb": 15.459594318999734,
  "spec/workers/pipeline_schedule_worker_spec.rb": 15.073162315000445,
  "spec/services/verify_pages_domain_service_spec.rb": 11.089820798000801,
  "spec/helpers/todos_helper_spec.rb": 13.53056122900125,
  "spec/services/search/group_service_spec.rb": 12.81470969899965,
  "spec/lib/gitlab/email/handler/create_issue_handler_spec.rb": 11.427492482000162,
  "spec/lib/gitlab/import_export/group/relation_tree_restorer_spec.rb": 13.424515548998897,
  "spec/models/ci/sources/pipeline_spec.rb": 10.214219231000243,
  "spec/lib/gitlab/slash_commands/command_spec.rb": 10.861920524001107,
  "spec/services/notification_recipients/build_service_spec.rb": 12.748083933000089,
  "spec/graphql/mutations/design_management/delete_spec.rb": 9.733882896000068,
  "spec/models/personal_access_token_spec.rb": 9.163130337999974,
  "spec/models/packages/debian/project_distribution_spec.rb": 8.506249677000596,
  "spec/lib/gitlab/git/object_pool_spec.rb": 8.815565786000661,
  "spec/lib/gitlab/ci/trace/stream_spec.rb": 8.506060196999897,
  "spec/lib/gitlab/legacy_github_import/pull_request_formatter_spec.rb": 7.3098544720014615,
  "spec/lib/gitlab/gitaly_client/with_feature_flag_actors_spec.rb": 7.274444788999972,
  "spec/serializers/profile/event_entity_spec.rb": 7.508436798998446,
  "spec/graphql/types/merge_request_type_spec.rb": 5.7186051459993905,
  "spec/lib/gitlab/search/recent_issues_spec.rb": 7.864651521000269,
  "spec/models/protected_tag/create_access_level_spec.rb": 7.0242954549994465,
  "spec/services/wiki_pages/create_service_spec.rb": 6.558213622000039,
  "spec/models/packages/npm/metadata_cache_spec.rb": 7.240450074001274,
  "spec/lib/gitlab/pagination/keyset/order_spec.rb": 6.000301919000776,
  "spec/lib/gitlab/auth/unique_ips_limiter_spec.rb": 5.897201957001016,
  "spec/models/sentry_issue_spec.rb": 6.540881675000492,
  "spec/lib/gitlab/gitaly_client/conflicts_service_spec.rb": 6.066408243999831,
  "spec/services/ci/create_pipeline_service/include_spec.rb": 5.533472587001597,
  "spec/helpers/icons_helper_spec.rb": 6.681207029998404,
  "spec/models/slack_integration_spec.rb": 5.437234164999609,
  "spec/finders/security/license_compliance_jobs_finder_spec.rb": 5.504191488000288,
  "spec/lib/banzai/reference_redactor_spec.rb": 5.280871879998813,
  "spec/services/tags/create_service_spec.rb": 5.39645536900025,
  "spec/workers/ci/external_pull_requests/create_pipeline_worker_spec.rb": 4.722801017000165,
  "spec/models/concerns/spammable_spec.rb": 4.36577311200017,
  "spec/models/users/phone_number_validation_spec.rb": 4.519822276999548,
  "spec/serializers/group_child_serializer_spec.rb": 4.975917161000325,
  "spec/rubocop/cop/rspec/misspelled_aggregate_failures_spec.rb": 4.571410242000638,
  "spec/services/ci/job_artifacts/bulk_delete_by_project_service_spec.rb": 4.421479016000376,
  "spec/services/lfs/lock_file_service_spec.rb": 4.374027710999144,
  "spec/lib/gitlab/diff/position_tracer/file_strategy_spec.rb": 4.504771238000103,
  "spec/models/integrations/ewm_spec.rb": 4.136133915000755,
  "spec/lib/gitlab/issuable/clone/attributes_rewriter_spec.rb": 2.7515864739998506,
  "spec/lib/gitlab/usage_data_counters/issue_activity_unique_counter_spec.rb": 3.830151096000918,
  "spec/tasks/gitlab/x509/update_rake_spec.rb": 7.567644521001057,
  "spec/lib/gitlab/composer/cache_spec.rb": 5.86985562100017,
  "spec/lib/gitlab/ssh/signature_spec.rb": 3.307247947999713,
  "spec/tasks/gitlab/gitaly_rake_spec.rb": 3.209254837998742,
  "spec/tasks/gitlab/audit_event_types/compile_docs_task_spec.rb": 3.2621693029996095,
  "spec/services/users/set_namespace_commit_email_service_spec.rb": 3.6049105590009276,
  "spec/experiments/application_experiment_spec.rb": 2.7217441869997856,
  "spec/services/ci/refs/enqueue_pipelines_to_unlock_service_spec.rb": 3.1917413499995746,
  "spec/lib/gitlab/ci/reports/test_report_spec.rb": 3.044679464001092,
  "spec/lib/gitlab/database/partitioning/monthly_strategy_spec.rb": 4.054581923999649,
  "spec/serializers/review_app_setup_entity_spec.rb": 3.3707489320004242,
  "spec/services/ci/daily_build_group_report_result_service_spec.rb": 3.0992107980000583,
  "spec/lib/gitlab/ci/build/policy/variables_spec.rb": 2.7531411740001204,
  "spec/workers/repository_import_worker_spec.rb": 2.891390610000599,
  "spec/models/subscription_spec.rb": 1.945040095000877,
  "spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_last_build_started_spec.rb": 3.12591849599994,
  "spec/lib/gitlab/pages/virtual_host_finder_spec.rb": 2.7368225760001224,
  "spec/lib/gitlab/utils/username_and_email_generator_spec.rb": 2.387479009999879,
  "spec/workers/gitlab/bitbucket_import/stage/import_pull_requests_notes_worker_spec.rb": 2.6149834480002028,
  "spec/lib/gitlab/ci/build/policy/refs_spec.rb": 2.6757996719989023,
  "spec/uploaders/gitlab_uploader_spec.rb": 2.355466664001142,
  "spec/workers/environments/auto_recover_worker_spec.rb": 2.9253149870000925,
  "spec/lib/banzai/filter/emoji_filter_spec.rb": 3.8566942229990673,
  "spec/serializers/runner_entity_spec.rb": 2.0754526519995125,
  "spec/lib/gitlab/middleware/same_site_cookies_spec.rb": 2.5889391109994904,
  "spec/lib/gitlab/usage_data_counters/quick_action_activity_unique_counter_spec.rb": 2.3712455820004834,
  "spec/models/project_repository_spec.rb": 2.189930659998936,
  "spec/graphql/mutations/ci/job_token_scope/remove_project_spec.rb": 2.255833123999764,
  "spec/components/pajamas/avatar_component_spec.rb": 2.19976897000015,
  "spec/workers/incident_management/add_severity_system_note_worker_spec.rb": 2.0477248540009896,
  "spec/services/users/ban_service_spec.rb": 2.007643068998732,
  "spec/tooling/lib/tooling/find_changes_spec.rb": 2.1292829959984374,
  "spec/lib/banzai/filter/asset_proxy_filter_spec.rb": 1.916631897998741,
  "spec/lib/gitlab/jira/dvcs_spec.rb": 1.940657494998959,
  "spec/services/activity_pub/projects/releases_unfollow_service_spec.rb": 1.985353041000053,
  "spec/finders/repositories/changelog_commits_finder_spec.rb": 1.4428809250002814,
  "spec/workers/container_registry/cleanup_worker_spec.rb": 2.186919661000502,
  "spec/lib/gitlab/ci/reports/security/identifier_spec.rb": 1.7549020540009224,
  "spec/components/pajamas/single_stat_component_spec.rb": 0.9141130080006405,
  "spec/lib/grafana/time_window_spec.rb": 1.6427567870014173,
  "spec/graphql/resolvers/ci/group_runners_resolver_spec.rb": 1.831637225999657,
  "spec/lib/gitlab/ci/pipeline/chain/sequence_spec.rb": 1.8172668979987066,
  "spec/lib/gitlab/database/migration_helpers/cascading_namespace_settings_spec.rb": 1.7380995450002956,
  "spec/workers/authorized_project_update/project_recalculate_per_user_worker_spec.rb": 1.7879630310017092,
  "spec/lib/gitlab/shell_spec.rb": 1.770033381999383,
  "spec/views/projects/tree/show.html.haml_spec.rb": 1.9200535269992542,
  "spec/lib/gitlab/ci/secure_files/migration_helper_spec.rb": 1.8292134160001297,
  "spec/lib/gitlab/spamcheck/result_spec.rb": 1.7555200740007422,
  "spec/workers/flush_counter_increments_worker_spec.rb": 1.8535999940013426,
  "spec/workers/pages/deactivated_deployments_delete_cron_worker_spec.rb": 1.4975778000007267,
  "spec/workers/object_pool/join_worker_spec.rb": 1.7607314840006438,
  "spec/models/cycle_analytics/project_level_stage_adapter_spec.rb": 1.7262886059997982,
  "spec/services/ci/job_artifacts/delete_service_spec.rb": 1.6280136759996822,
  "spec/finders/groups/accepting_project_transfers_finder_spec.rb": 1.5868113320011616,
  "spec/services/customer_relations/organizations/create_service_spec.rb": 1.3920760710007016,
  "spec/lib/gitlab/view/presenter/base_spec.rb": 1.6103577379999479,
  "spec/lib/gitlab/email/service_desk/custom_email_spec.rb": 1.4392882850006572,
  "spec/models/group_deploy_token_spec.rb": 1.3968947799985472,
  "spec/lib/gitlab/usage/metrics/instrumentations/count_projects_with_monitor_enabled_metric_spec.rb": 1.3028816599999118,
  "spec/models/blob_viewer/package_json_spec.rb": 1.4564554339995084,
  "spec/workers/google_cloud/create_cloudsql_instance_worker_spec.rb": 1.2860633310010599,
  "spec/lib/gitlab/auth/result_spec.rb": 1.3952403999992384,
  "spec/services/ci/catalog/resources/create_service_spec.rb": 1.5642933929993887,
  "spec/services/pages_domains/create_service_spec.rb": 1.2893047010002192,
  "spec/presenters/ml/candidates_csv_presenter_spec.rb": 1.1862269310004194,
  "spec/lib/gitlab/setup_helper/praefect_spec.rb": 1.4379457159993763,
  "spec/services/ml/find_model_service_spec.rb": 1.0625914330012165,
  "spec/lib/gitlab/ci/config/yaml/loader_spec.rb": 1.2117165380004735,
  "spec/helpers/gitlab_script_tag_helper_spec.rb": 1.1293459160006023,
  "spec/models/projects/ci_feature_usage_spec.rb": 1.0928428300012456,
  "spec/graphql/types/release_links_type_spec.rb": 0.9322059269998135,
  "spec/serializers/project_access_token_entity_spec.rb": 1.0513074640002742,
  "spec/lib/gitlab/ci/config/entry/services_spec.rb": 1.110098338998796,
  "spec/services/bulk_imports/archive_extraction_service_spec.rb": 1.0345776660014963,
  "spec/workers/group_export_worker_spec.rb": 1.210217208999893,
  "spec/models/projects/project_topic_spec.rb": 1.0737618620005378,
  "spec/models/packages/go/package_spec.rb": 1.067040822999843,
  "spec/lib/gitlab/ci/reports/codequality_reports_spec.rb": 1.167979412999557,
  "spec/services/cohorts_service_spec.rb": 0.9765892320010607,
  "spec/graphql/resolvers/work_item_resolver_spec.rb": 1.0704633320001449,
  "spec/graphql/mutations/customer_relations/contacts/update_spec.rb": 0.9906595009997545,
  "spec/lib/gitlab/usage/metrics/instrumentations/count_slack_app_installations_gbp_metric_spec.rb": 1.0148230779996084,
  "spec/services/import/github/gists_import_service_spec.rb": 0.515878417998465,
  "spec/lib/gitlab/etag_caching/store_spec.rb": 0.9558416639993084,
  "spec/models/concerns/from_set_operator_spec.rb": 0.9270281860008254,
  "spec/rubocop/cop/code_reuse/presenter_spec.rb": 0.8638285739998537,
  "spec/lib/sidebars/user_settings/menus/account_menu_spec.rb": 0.8636229040002945,
  "spec/lib/gitlab/graphql/present/field_extension_spec.rb": 0.8847403910003777,
  "spec/initializers/carrierwave_s3_encryption_headers_patch_spec.rb": 0.8178666280000471,
  "spec/lib/bulk_imports/common/rest/get_badges_query_spec.rb": 0.9769022019991098,
  "spec/lib/gitlab/database/health_status/indicators/write_ahead_log_spec.rb": 1.040498665000996,
  "spec/models/group_custom_attribute_spec.rb": 0.9228657679996104,
  "spec/lib/gitlab/gitaly_client/conflict_files_stitcher_spec.rb": 0.81803927799956,
  "spec/services/achievements/destroy_service_spec.rb": 0.7749537519994192,
  "spec/lib/gitlab/github_import/events_cache_spec.rb": 0.8156878179997875,
  "spec/lib/sidebars/projects/menus/wiki_menu_spec.rb": 0.7167896979990473,
  "spec/views/groups/packages/index.html.haml_spec.rb": 0.8029287089993886,
  "spec/workers/email_receiver_worker_spec.rb": 0.8044777390005038,
  "spec/lib/gitlab/snippet_search_results_spec.rb": 0.7437251949995698,
  "spec/lib/gitlab/usage/metrics/instrumentations/count_issues_metric_spec.rb": 0.759722103999593,
  "spec/lib/gitlab/reference_counter_spec.rb": 0.7346951359995728,
  "spec/lib/gitlab/ci/config/yaml/documents_spec.rb": 0.640740906001156,
  "spec/workers/user_status_cleanup/batch_worker_spec.rb": 0.8363695160005591,
  "spec/rubocop/cop/active_record_association_reload_spec.rb": 0.9467204850006965,
  "spec/lib/gitlab/diff/pair_selector_spec.rb": 0.6342234260009718,
  "spec/workers/gitlab/github_import/import_diff_note_worker_spec.rb": 0.7060121989998152,
  "spec/models/jira_connect_subscription_spec.rb": 0.6855839609997929,
  "spec/lib/gitlab/tracking/destinations/snowplow_spec.rb": 0.6627014929999859,
  "spec/graphql/types/alert_management/integration_type_enum_spec.rb": 0.4999130600008357,
  "spec/graphql/types/data_transfer/project_data_transfer_type_spec.rb": 0.6598344740013999,
  "spec/lib/gitlab/ci/config/entry/includes_spec.rb": 0.46806214299977,
  "spec/graphql/resolvers/saved_reply_resolver_spec.rb": 0.6040166499988118,
  "spec/lib/gitlab/global_id/deprecations_spec.rb": 1.943179224999767,
  "spec/serializers/integrations/project_entity_spec.rb": 0.6640955830007442,
  "spec/lib/gitlab/import_export/import_export_spec.rb": 0.611336169000424,
  "spec/lib/gitlab/memory/watchdog/monitor/heap_fragmentation_spec.rb": 0.5752948419994937,
  "spec/graphql/types/packages/package_details_type_spec.rb": 0.5570812240002851,
  "spec/support_specs/capybara_slow_finder_spec.rb": 0.658082154001022,
  "spec/views/admin/users/_form.html.haml_spec.rb": 0.5673282829993695,
  "spec/lib/gitlab/sessions/redis_store_spec.rb": 0.5490592850001121,
  "spec/services/emails/destroy_service_spec.rb": 0.5406830360007007,
  "spec/lib/gitlab/chat_name_token_spec.rb": 0.47103824300029373,
  "spec/tooling/danger/experiments_spec.rb": 0.4704499729996314,
  "spec/rubocop/cop/qa/element_with_pattern_spec.rb": 0.5327316270013398,
  "spec/services/packages/rpm/repository_metadata/build_repomd_xml_service_spec.rb": 0.46913537200089195,
  "spec/rubocop/cop/qa/selector_usage_spec.rb": 0.4961744499996712,
  "spec/lib/gitlab/ci/build/policy_spec.rb": 0.47162254200156895,
  "spec/helpers/external_link_helper_spec.rb": 0.4773341319996689,
  "spec/lib/gitlab/ci/status/group/factory_spec.rb": 0.476718981999511,
  "spec/rubocop/cop/rspec/avoid_conditional_statements_spec.rb": 0.5154618590004247,
  "spec/tooling/lib/tooling/api/pipeline_spec.rb": 0.4782180519996473,
  "spec/lib/gitlab/audit/deploy_token_author_spec.rb": 0.39512405000095896,
  "spec/services/vs_code/settings/delete_service_spec.rb": 0.4506444749986258,
  "spec/lib/sidebars/organizations/menus/scope_menu_spec.rb": 0.4128733180004929,
  "spec/helpers/one_trust_helper_spec.rb": 0.3954315700011648,
  "spec/rubocop/qa_helpers_spec.rb": 0.36715198299862095,
  "spec/graphql/types/boards/board_issue_input_type_spec.rb": 0.3910241710000264,
  "spec/lib/gitlab/usage/metrics/instrumentations/snowplow_configured_to_gitlab_collector_metric_spec.rb": 0.43785968700103695,
  "spec/lib/gitlab/sidekiq_middleware/pause_control/client_spec.rb": 0.38473518200044055,
  "spec/helpers/ci/pipeline_schedules_helper_spec.rb": 0.35410918399975344,
  "spec/lib/gitlab/database/background_migration/batched_background_migration_dictionary_spec.rb": 0.3675690830004896,
  "spec/graphql/types/ml/model_type_spec.rb": 0.3733164029999898,
  "spec/lib/api/validations/validators/email_or_email_list_spec.rb": 0.3858111610006745,
  "spec/lib/banzai/filter/markdown_engines/cmark_spec.rb": 0.3685973430001468,
  "spec/lib/bulk_imports/common/extractors/rest_extractor_spec.rb": 0.36675614299929293,
  "spec/graphql/types/admin/analytics/usage_trends/measurement_identifier_enum_spec.rb": 0.3700819829991815,
  "spec/graphql/types/ci/ci_cd_setting_type_spec.rb": 0.4272851170007925,
  "spec/workers/gitlab/github_import/pull_requests/import_review_request_worker_spec.rb": 0.32963508700049715,
  "spec/workers/gitlab/github_import/import_protected_branch_worker_spec.rb": 0.31841729799998575,
  "spec/lib/gitlab/graphql/query_analyzers/ast/logger_analyzer_spec.rb": 0.2929301709991705,
  "spec/lib/gitlab/usage/metrics/instrumentations/incoming_email_encrypted_secrets_enabled_metric_spec.rb": 0.2942325610001717,
  "spec/serializers/evidences/release_serializer_spec.rb": 0.2921587900000304,
  "spec/services/issues/issuable_base_service_spec.rb": 0.29048061100002087,
  "spec/lib/gitlab/nav/top_nav_menu_item_spec.rb": 0.3004006200008007,
  "spec/graphql/types/work_items/widgets/participants_type_spec.rb": 0.30776099899958353,
  "spec/graphql/types/permission_types/work_item_spec.rb": 0.2929295510002703,
  "spec/lib/gitlab/diff/inline_diff_markdown_marker_spec.rb": 0.28606053099974815
}

Knapsack global time execution for tests: 25m 43s

Pending: (Failures listed here are expected and do not affect your suite's status)

  1) Ci::Bridge behaves like a deployable job state transition as a deployable when transits to success behaves like calling proper BuildFinishedWorker calls Ci::BuildFinishedWorker
     # No reason given
     # ./spec/support/shared_examples/ci/deployable_shared_examples.rb:9

  2) Ci::Bridge behaves like a deployable job state transition as a deployable when transits to failed behaves like calling proper BuildFinishedWorker calls Ci::BuildFinishedWorker
     # No reason given
     # ./spec/support/shared_examples/ci/deployable_shared_examples.rb:9

  3) Ci::Bridge behaves like a deployable job state transition as a deployable when transits to canceled behaves like calling proper BuildFinishedWorker calls Ci::BuildFinishedWorker
     # No reason given
     # ./spec/support/shared_examples/ci/deployable_shared_examples.rb:9

Failures:

  1) Ci::PipelineProcessing::AtomicProcessingService Pipeline Processing Service when jobs change from stopped to alive status during pipeline processing runs ResetSkippedJobsService on the new alive jobs and logs event
     Failure/Error: expect(all_builds_names_and_statuses).to eq(statuses_1)

       expected: {:deploy1=>"skipped", :deploy2=>"skipped", :manual1=>"manual", :manual2=>"manual", :test1=>"skipped", :test2=>"skipped"}
            got: {:deploy1=>"skipped", :deploy2=>"skipped", :manual1=>"manual", :manual2=>"manual", :test1=>"created", :test2=>"skipped"}

       (compared using ==)

       Diff:
       @@ -2,6 +2,6 @@
        :deploy2 => "skipped",
        :manual1 => "manual",
        :manual2 => "manual",
       -:test1 => "skipped",
       +:test1 => "created",
        :test2 => "skipped",
     # ./spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb:1020:in `block (4 levels) in <top (required)>'
     # ./spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb:933:in `block (5 levels) in <top (required)>'
     # ./spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb:933:in `block (4 levels) in <top (required)>'
     # ./spec/spec_helper.rb:426:in `block (3 levels) in <top (required)>'
     # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'
     # ./spec/spec_helper.rb:417:in `block (2 levels) in <top (required)>'
     # ./spec/spec_helper.rb:413:in `block (3 levels) in <top (required)>'
     # ./lib/gitlab/application_context.rb:70:in `with_raw_context'
     # ./spec/spec_helper.rb:413:in `block (2 levels) in <top (required)>'
     # ./spec/spec_helper.rb:260:in `block (2 levels) in <top (required)>'
     # ./spec/support/system_exit_detected.rb:7:in `block (2 levels) in <top (required)>'
     # ./spec/support/fast_quarantine.rb:22:in `block (2 levels) in <top (required)>'
     # ./spec/support/database/prevent_cross_joins.rb:106:in `block (3 levels) in <top (required)>'
     # ./spec/support/database/prevent_cross_joins.rb:60:in `with_cross_joins_prevented'
     # ./spec/support/database/prevent_cross_joins.rb:106:in `block (2 levels) in <top (required)>'

Finished in 26 minutes 45 seconds (files took 47.28 seconds to load)
3101 examples, 1 failure, 3 pending

Failed examples:

rspec ./spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb:1013 # Ci::PipelineProcessing::AtomicProcessingService Pipeline Processing Service when jobs change from stopped to alive status during pipeline processing runs ResetSkippedJobsService on the new alive jobs and logs event

Randomized with seed 25819

Stopped processing SimpleCov as a previous error not related to SimpleCov has been detected
[TEST PROF INFO] Time spent in factories: 08:55.115 (33.22% of total time)
RSpec exited with 1.
[job-metrics] Updating job metrics tag for the CI/CD job.
RSPEC_RETRIED_TESTS_REPORT_PATH: rspec/retried_tests-6478668447.txt
Retrying the failing examples in a new RSpec process...
$ gem install junit_merge --no-document --version 0.1.2
Successfully installed nokogiri-1.16.3-x86_64-linux
Successfully installed junit_merge-0.1.2
2 gems installed
==> 'gem install junit_merge --no-document --version 0.1.2' succeeded in 1 seconds.
Running RSpec command: bin/rspec -Ispec -rspec_helper --color --failure-exit-code 1 --error-exit-code 2 --format documentation --format Support::Formatters::JsonFormatter --out rspec/rspec-retry-6478668447.json --format RspecJunitFormatter --out rspec/rspec-retry-6478668447.xml --only-failures --pattern "spec/{bin,channels,components,config,contracts,db,dependencies,elastic,elastic_integration,experiments,factories,finders,frontend,graphql,haml_lint,helpers,initializers,keeps,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,dot_gitlab_ci}{,/**/}*_spec.rb"
Run options: include {:last_run_status=>"failed"}

# [RSpecRunTime] Starting RSpec timer...
[TEST PROF INFO] EventProf enabled (sql.active_record)
unknown OID 2249: failed to recognize type of 'pg_stat_file'. It will be treated as String.
unknown OID 2249: failed to recognize type of 'pg_stat_file'. It will be treated as String.

Test environment set up in 0.407605389 seconds
# [RSpecRunTime] Starting example group spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb. Expected to take 5 minutes 51.14 seconds.

Ci::PipelineProcessing::AtomicProcessingService
  Pipeline Processing Service
    when jobs change from stopped to alive status during pipeline processing
      runs ResetSkippedJobsService on the new alive jobs and logs event

# [RSpecRunTime] Finishing example group spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb. It took 5.25 seconds. Expected to take 5 minutes 51.14 seconds.
auto_explain log contains 1916 entries for main, writing to /builds/gitlab-org/gitlab/auto_explain/rspec-unit-pg14-9-32.18794.main.ndjson.gz
took 29.313929475
auto_explain log contains 1916 entries for ci, writing to /builds/gitlab-org/gitlab/auto_explain/rspec-unit-pg14-9-32.18794.ci.ndjson.gz
took 25.434898918
[TEST PROF INFO] EventProf results for sql.active_record

Total time: 00:02.029 of 00:05.254 (38.63%)
Total events: 663

Top 5 slowest suites (by time):

Ci::PipelineP...cessingService (./spec/services/ci/pipeline_processing/atomic_processing_service_spec.rb:5) – 00:02.029 (663 / 1) of 00:05.254 (38.63%)


Finished in 1 minute 5.65 seconds (files took 56.1 seconds to load)
1 example, 0 failures

[TEST PROF INFO] Time spent in factories: 00:02.433 (3.54% of total time)
Loading rspec/rspec-6478668447.json...
Merged rspec/rspec-retry-6478668447.json adding 4 results.
Saved rspec/rspec-6478668447.json.
A test was flaky and succeeded after being retried. Checking to see if flaky test is part of this MR...
Flaky test was not part of this MR.
section_end:1711453983:step_script
section_start:1711453983:after_script
Running after_script
Running after script...
$ source scripts/utils.sh
$ bundle exec gem list gitlab_quality-test_tooling
gitlab_quality-test_tooling (1.17.0)
$ section_start "relate-failure-issue" "Report test failures" # collapsed multi-line command
section_start:1711453984:relate-failure-issue[collapsed=true]
Report test failures
Reporting test failures in `rspec/rspec-retry-6478668447.json` as issues in project `gitlab-org/gitlab` via the API at `https://gitlab.com/api/v4`.
=> Reporting 1 tests in rspec/rspec-retry-6478668447.json
section_end:1711453987:relate-failure-issue

$ section_start "flaky-test-issues" "Report test flakiness" # collapsed multi-line command
section_start:1711453987:flaky-test-issues[collapsed=true]
Report test flakiness
Reporting flaky tests in `rspec/rspec-retry-6478668447.json` as issues in project `gitlab-org/gitlab` via the API at `https://gitlab.com/api/v4`.
=> Reporting 1 tests in rspec/rspec-retry-6478668447.json
 => Reporting flakiness for test 'Ci::PipelineProcessing::AtomicProcessingService Pipeline Processing Service when jobs change from stopped to alive status during pipeline processing runs ResetSkippedJobsService on the new alive jobs and logs event'...
   => Adding the flaky test to the existing issue: https://gitlab.com/gitlab-org/gitlab/-/issues/450395
   => Adding the flaky test to the existing issue: https://gitlab.com/gitlab-org/gitlab/-/issues/446201
section_end:1711453997:flaky-test-issues

$ section_start "slow-test-issues" "Report test slowness" # collapsed multi-line command
section_start:1711453997:slow-test-issues[collapsed=true]
Report test slowness
Reporting slow tests in `rspec/rspec-*.json` as issues in project `gitlab-org/gitlab` via the API at `https://gitlab.com/api/v4`.
=> Reporting 1 tests in rspec/rspec-6478668447.json
=> Reporting 1 tests in rspec/rspec-retry-6478668447.json
section_end:1711453999:slow-test-issues

$ section_start "slow-test-merge-request-report-note" "Report test slowness in MR note" # collapsed multi-line command
section_start:1711453999:slow-test-merge-request-report-note[collapsed=true]
Report test slowness in MR note
section_end:1711453999:slow-test-merge-request-report-note

$ section_start "knapsack-report-issues" "Report test files close to timing out" # collapsed multi-line command
section_start:1711453999:knapsack-report-issues[collapsed=true]
Report test files close to timing out
Reporting spec file exceeding Knapsack expectaton issues in project `gitlab-org/gitlab` via the API at `https://gitlab.com/api/v4`.
=> Reporting 0 spec files exceeding Knapsack expectation.
section_end:1711454000:knapsack-report-issues

$ tooling/bin/push_job_metrics || true
[job-metrics] Pushing job metrics file for the CI/CD job.
[job-metrics] Pushed 4 CI job metric entries to InfluxDB.
section_end:1711454001:after_script
section_start:1711454001:archive_cache
Saving cache for successful job
Not uploading cache ruby-gems-debian-bookworm-ruby-3.1-17 due to policy
section_end:1711454002:archive_cache
section_start:1711454002:upload_artifacts_on_success
Uploading artifacts for successful job
Uploading artifacts...
auto_explain/: found 5 matching artifact files and directories 
coverage/: found 4 matching artifact files and directories 
WARNING: crystalball/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 
deprecations/: found 3 matching artifact files and directories 
knapsack/: found 4 matching artifact files and directories 
rspec/: found 15 matching artifact files and directories 
WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 
log/*.log: found 19 matching artifact files and directories 
WARNING: Upload request redirected                  location=https://gitlab.com/api/v4/jobs/6478668447/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com
WARNING: Retrying...                                context=artifacts-uploader error=request redirected
Uploading artifacts as "archive" to coordinator... 201 Created  id=6478668447 responseStatus=201 Created token=glcbt-65
Uploading artifacts...
rspec/rspec-*.xml: found 2 matching artifact files and directories 
WARNING: Upload request redirected                  location=https://gitlab.com/api/v4/jobs/6478668447/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com
WARNING: Retrying...                                context=artifacts-uploader error=request redirected
Uploading artifacts as "junit" to coordinator... 201 Created  id=6478668447 responseStatus=201 Created token=glcbt-65
section_end:1711454008:upload_artifacts_on_success
section_start:1711454008:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1711454008:cleanup_file_variables
Job succeeded