rspec-ee unit pg12 8/16
Passed Started
by
@lamportsapprentice

Hannes Moser
1Running with gitlab-runner 15.1.0~beta.20.g62206bb2 (62206bb2)2 on blue-4.shared-gitlab-org.runners-manager.gitlab.com/default 8cwZ3F433 feature flags: FF_USE_FASTZIP:true6Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 ...7Starting service postgres:12 ...8Pulling docker image postgres:12 ...9Using docker image sha256:ac3b8cd6a8b42e839456256bc514d6230b5a2538c738b3d522e1384a2a172b96 for postgres:12 with digest postgres@sha256:e6ffad42c91a4d5a29257a27ac4e160c3ae7196696b37bf2e80410024ed95951 ...10Starting service redis:6.0-alpine ...11Pulling docker image redis:6.0-alpine ...12Using docker image sha256:09401fed2a421bf0019f96dcec70c85f82ec7b76beb1ae589547b0dc302d6b76 for redis:6.0-alpine with digest redis@sha256:217a9db40a914cc3f6206a143a4d750da0607500cc013a147a4979e08e40beff ...13Starting service elasticsearch:7.17.0 ...14Pulling docker image elasticsearch:7.17.0 ...15Using docker image sha256:6fe993d6e7ed5e00a18f9b146d867b77559bf9948e6596bbf880ddbefeec46f7 for elasticsearch:7.17.0 with digest elasticsearch@sha256:332c6d416808f6e9a2cbcbe0170d9a9bb14bfe772180d37de5084c223dd8948b ...16Waiting for services to be up and running (timeout 30 seconds)...17*** WARNING: Service runner-8cwz3f43-project-278964-concurrent-0-71d26d3e87bf14e0-elasticsearch-2 probably didn't start properly.18Health check error:19service "runner-8cwz3f43-project-278964-concurrent-0-71d26d3e87bf14e0-elasticsearch-2-wait-for-service" timeout20Health check container logs:21Service container logs:222022-07-04T08:27:43.837788475Z {"type": "server", "timestamp": "2022-07-04T08:27:43,830Z", "level": "INFO", "component": "o.e.n.Node", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "version[7.17.0], pid[7], build[default/docker/bee86328705acaa9a6daede7140defd4d9ec56bd/2022-01-28T08:36:04.875279988Z], OS[Linux/5.4.109+/amd64], JVM[Eclipse Adoptium/OpenJDK 64-Bit Server VM/17.0.1/17.0.1+12]" }232022-07-04T08:27:43.838945756Z {"type": "server", "timestamp": "2022-07-04T08:27:43,838Z", "level": "INFO", "component": "o.e.n.Node", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "JVM home [/usr/share/elasticsearch/jdk], using bundled JDK [true]" }242022-07-04T08:27:43.839692406Z {"type": "server", "timestamp": "2022-07-04T08:27:43,839Z", "level": "INFO", "component": "o.e.n.Node", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "JVM arguments [-Xshare:auto, -Des.networkaddress.cache.ttl=60, -Des.networkaddress.cache.negative.ttl=10, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -XX:+ShowCodeDetailsInExceptionMessages, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dio.netty.allocator.numDirectArenas=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j2.formatMsgNoLookups=true, -Djava.locale.providers=SPI,COMPAT, --add-opens=java.base/java.io=ALL-UNNAMED, -XX:+UseG1GC, -Djava.io.tmpdir=/tmp/elasticsearch-1495854317502122682, -XX:+HeapDumpOnOutOfMemoryError, -XX:+ExitOnOutOfMemoryError, -XX:HeapDumpPath=data, -XX:ErrorFile=logs/hs_err_pid%p.log, -Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,pid,tags:filecount=32,filesize=64m, -Des.cgroups.hierarchy.override=/, -Xms256m, -Xmx256m, -XX:MaxDirectMemorySize=134217728, -XX:G1HeapRegionSize=4m, -XX:InitiatingHeapOccupancyPercent=30, -XX:G1ReservePercent=15, -Des.path.home=/usr/share/elasticsearch, -Des.path.conf=/usr/share/elasticsearch/config, -Des.distribution.flavor=default, -Des.distribution.type=docker, -Des.bundled_jdk=true]" }252022-07-04T08:27:51.556487966Z {"type": "server", "timestamp": "2022-07-04T08:27:51,555Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [aggs-matrix-stats]" }262022-07-04T08:27:51.556871676Z {"type": "server", "timestamp": "2022-07-04T08:27:51,556Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [analysis-common]" }272022-07-04T08:27:51.557188476Z {"type": "server", "timestamp": "2022-07-04T08:27:51,556Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [constant-keyword]" }282022-07-04T08:27:51.557492376Z {"type": "server", "timestamp": "2022-07-04T08:27:51,557Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [frozen-indices]" }292022-07-04T08:27:51.557833575Z {"type": "server", "timestamp": "2022-07-04T08:27:51,557Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [ingest-common]" }302022-07-04T08:27:51.558095306Z {"type": "server", "timestamp": "2022-07-04T08:27:51,557Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [ingest-geoip]" }312022-07-04T08:27:51.558375225Z {"type": "server", "timestamp": "2022-07-04T08:27:51,558Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [ingest-user-agent]" }322022-07-04T08:27:51.558679246Z {"type": "server", "timestamp": "2022-07-04T08:27:51,558Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [kibana]" }332022-07-04T08:27:51.558946886Z {"type": "server", "timestamp": "2022-07-04T08:27:51,558Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [lang-expression]" }342022-07-04T08:27:51.559211536Z {"type": "server", "timestamp": "2022-07-04T08:27:51,558Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [lang-mustache]" }352022-07-04T08:27:51.559484156Z {"type": "server", "timestamp": "2022-07-04T08:27:51,559Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [lang-painless]" }362022-07-04T08:27:51.559795975Z {"type": "server", "timestamp": "2022-07-04T08:27:51,559Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [legacy-geo]" }372022-07-04T08:27:51.560070556Z {"type": "server", "timestamp": "2022-07-04T08:27:51,559Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [mapper-extras]" }382022-07-04T08:27:51.560350805Z {"type": "server", "timestamp": "2022-07-04T08:27:51,560Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [mapper-version]" }392022-07-04T08:27:51.560622286Z {"type": "server", "timestamp": "2022-07-04T08:27:51,560Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [parent-join]" }402022-07-04T08:27:51.560912286Z {"type": "server", "timestamp": "2022-07-04T08:27:51,560Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [percolator]" }412022-07-04T08:27:51.561183776Z {"type": "server", "timestamp": "2022-07-04T08:27:51,560Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [rank-eval]" }422022-07-04T08:27:51.561446165Z {"type": "server", "timestamp": "2022-07-04T08:27:51,561Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [reindex]" }432022-07-04T08:27:51.561759555Z {"type": "server", "timestamp": "2022-07-04T08:27:51,561Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [repositories-metering-api]" }442022-07-04T08:27:51.562035466Z {"type": "server", "timestamp": "2022-07-04T08:27:51,561Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [repository-encrypted]" }452022-07-04T08:27:51.562332236Z {"type": "server", "timestamp": "2022-07-04T08:27:51,562Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [repository-url]" }462022-07-04T08:27:51.562613065Z {"type": "server", "timestamp": "2022-07-04T08:27:51,562Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [runtime-fields-common]" }472022-07-04T08:27:51.562938255Z {"type": "server", "timestamp": "2022-07-04T08:27:51,562Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [search-business-rules]" }482022-07-04T08:27:51.563217655Z {"type": "server", "timestamp": "2022-07-04T08:27:51,562Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [searchable-snapshots]" }492022-07-04T08:27:51.563483836Z {"type": "server", "timestamp": "2022-07-04T08:27:51,563Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [snapshot-repo-test-kit]" }502022-07-04T08:27:51.563775645Z {"type": "server", "timestamp": "2022-07-04T08:27:51,563Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [spatial]" }512022-07-04T08:27:51.564044235Z {"type": "server", "timestamp": "2022-07-04T08:27:51,563Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [transform]" }522022-07-04T08:27:51.564307385Z {"type": "server", "timestamp": "2022-07-04T08:27:51,564Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [transport-netty4]" }532022-07-04T08:27:51.564581895Z {"type": "server", "timestamp": "2022-07-04T08:27:51,564Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [unsigned-long]" }542022-07-04T08:27:51.564847655Z {"type": "server", "timestamp": "2022-07-04T08:27:51,564Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [vector-tile]" }552022-07-04T08:27:51.565094045Z {"type": "server", "timestamp": "2022-07-04T08:27:51,564Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [vectors]" }562022-07-04T08:27:51.565352465Z {"type": "server", "timestamp": "2022-07-04T08:27:51,565Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [wildcard]" }572022-07-04T08:27:51.565602045Z {"type": "server", "timestamp": "2022-07-04T08:27:51,565Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-aggregate-metric]" }582022-07-04T08:27:51.565868985Z {"type": "server", "timestamp": "2022-07-04T08:27:51,565Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-analytics]" }592022-07-04T08:27:51.566125605Z {"type": "server", "timestamp": "2022-07-04T08:27:51,565Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-async]" }602022-07-04T08:27:51.566400765Z {"type": "server", "timestamp": "2022-07-04T08:27:51,566Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-async-search]" }612022-07-04T08:27:51.566680205Z {"type": "server", "timestamp": "2022-07-04T08:27:51,566Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-autoscaling]" }622022-07-04T08:27:51.566950375Z {"type": "server", "timestamp": "2022-07-04T08:27:51,566Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-ccr]" }632022-07-04T08:27:51.567226435Z {"type": "server", "timestamp": "2022-07-04T08:27:51,566Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-core]" }642022-07-04T08:27:51.567492655Z {"type": "server", "timestamp": "2022-07-04T08:27:51,567Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-data-streams]" }652022-07-04T08:27:51.567755535Z {"type": "server", "timestamp": "2022-07-04T08:27:51,567Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-deprecation]" }662022-07-04T08:27:51.568017975Z {"type": "server", "timestamp": "2022-07-04T08:27:51,567Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-enrich]" }672022-07-04T08:27:51.568277555Z {"type": "server", "timestamp": "2022-07-04T08:27:51,567Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-eql]" }682022-07-04T08:27:51.568540365Z {"type": "server", "timestamp": "2022-07-04T08:27:51,568Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-fleet]" }692022-07-04T08:27:51.568806095Z {"type": "server", "timestamp": "2022-07-04T08:27:51,568Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-graph]" }702022-07-04T08:27:51.569066735Z {"type": "server", "timestamp": "2022-07-04T08:27:51,568Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-identity-provider]" }712022-07-04T08:27:51.569320305Z {"type": "server", "timestamp": "2022-07-04T08:27:51,569Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-ilm]" }722022-07-04T08:27:51.569588915Z {"type": "server", "timestamp": "2022-07-04T08:27:51,569Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-logstash]" }732022-07-04T08:27:51.569845245Z {"type": "server", "timestamp": "2022-07-04T08:27:51,569Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-ml]" }742022-07-04T08:27:51.570126825Z {"type": "server", "timestamp": "2022-07-04T08:27:51,569Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-monitoring]" }752022-07-04T08:27:51.570407275Z {"type": "server", "timestamp": "2022-07-04T08:27:51,570Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-ql]" }762022-07-04T08:27:51.570699155Z {"type": "server", "timestamp": "2022-07-04T08:27:51,570Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-rollup]" }772022-07-04T08:27:51.570968105Z {"type": "server", "timestamp": "2022-07-04T08:27:51,570Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-security]" }782022-07-04T08:27:51.571245605Z {"type": "server", "timestamp": "2022-07-04T08:27:51,570Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-shutdown]" }792022-07-04T08:27:51.571517095Z {"type": "server", "timestamp": "2022-07-04T08:27:51,571Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-sql]" }802022-07-04T08:27:51.571800625Z {"type": "server", "timestamp": "2022-07-04T08:27:51,571Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-stack]" }812022-07-04T08:27:51.572057025Z {"type": "server", "timestamp": "2022-07-04T08:27:51,571Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-text-structure]" }822022-07-04T08:27:51.572309585Z {"type": "server", "timestamp": "2022-07-04T08:27:51,572Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-voting-only-node]" }832022-07-04T08:27:51.572574595Z {"type": "server", "timestamp": "2022-07-04T08:27:51,572Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "loaded module [x-pack-watcher]" }842022-07-04T08:27:51.573167865Z {"type": "server", "timestamp": "2022-07-04T08:27:51,572Z", "level": "INFO", "component": "o.e.p.PluginsService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "no plugins loaded" }852022-07-04T08:27:51.713376252Z {"type": "server", "timestamp": "2022-07-04T08:27:51,712Z", "level": "INFO", "component": "o.e.e.NodeEnvironment", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "using [1] data paths, mounts [[/ (overlay)]], net usable_space [34.3gb], net total_space [45gb], types [overlay]" }862022-07-04T08:27:51.713760082Z {"type": "server", "timestamp": "2022-07-04T08:27:51,713Z", "level": "INFO", "component": "o.e.e.NodeEnvironment", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "heap size [256mb], compressed ordinary object pointers [true]" }872022-07-04T08:27:51.833399061Z {"type": "server", "timestamp": "2022-07-04T08:27:51,832Z", "level": "INFO", "component": "o.e.n.Node", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "node name [e6dde9280eef], node ID [L-7jkm5WTDa19_mP0S2DRA], cluster name [docker-cluster], roles [transform, data_frozen, master, remote_cluster_client, data, ml, data_content, data_hot, data_warm, data_cold, ingest]" }882022-07-04T08:28:02.380439584Z {"type": "server", "timestamp": "2022-07-04T08:28:02,379Z", "level": "INFO", "component": "o.e.x.m.p.l.CppLogMessageHandler", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "[controller/210] [Main.cc@122] controller (64 bit): Version 7.17.0 (Build 447aed7cba032c) Copyright (c) 2022 Elasticsearch BV" }892022-07-04T08:28:03.472552494Z {"type": "server", "timestamp": "2022-07-04T08:28:03,472Z", "level": "INFO", "component": "o.e.i.g.ConfigDatabases", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "initialized default databases [[GeoLite2-Country.mmdb, GeoLite2-City.mmdb, GeoLite2-ASN.mmdb]], config databases [[]] and watching [/usr/share/elasticsearch/config/ingest-geoip] for changes" }902022-07-04T08:28:03.474193184Z {"type": "server", "timestamp": "2022-07-04T08:28:03,473Z", "level": "INFO", "component": "o.e.i.g.DatabaseNodeService", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "initialized database registry, using geoip-databases directory [/tmp/elasticsearch-1495854317502122682/geoip-databases/L-7jkm5WTDa19_mP0S2DRA]" }912022-07-04T08:28:04.690688442Z {"type": "server", "timestamp": "2022-07-04T08:28:04,690Z", "level": "INFO", "component": "o.e.t.NettyAllocator", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "creating NettyAllocator with the following configs: [name=unpooled, suggested_max_allocation_size=1mb, factors={es.unsafe.use_unpooled_allocator=null, g1gc_enabled=true, g1gc_region_size=4mb, heap_size=256mb}]" }922022-07-04T08:28:04.824514779Z {"type": "server", "timestamp": "2022-07-04T08:28:04,823Z", "level": "INFO", "component": "o.e.d.DiscoveryModule", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "using discovery type [single-node] and seed hosts providers [settings]" }932022-07-04T08:28:05.409010226Z {"type": "server", "timestamp": "2022-07-04T08:28:05,408Z", "level": "INFO", "component": "o.e.g.DanglingIndicesState", "cluster.name": "docker-cluster", "node.name": "e6dde9280eef", "message": "gateway.auto_import_dangling_indices is disabled, dangling indices will not be automatically detected or imported and must be managed manually" }94*********95Authenticating with credentials from job payload (GitLab Registry)96Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 ...97Using docker image sha256:642191311550aaa03aba1d11d8d921042ead8ee5afeb833fc7e4e3f933b7ed04 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12@sha256:f0990c59018be757dd56365bb2cc6791d65f3f4bf99a431c3b26e3df08260f6a ...99Running on runner-8cwz3f43-project-278964-concurrent-0 via runner-8cwz3f43-shared-gitlab-org-1656907454-814e89d4...101$ eval "$CI_PRE_CLONE_SCRIPT"102Fetching changes with git depth set to 20...103Initialized empty Git repository in /builds/gitlab-org/gitlab/.git/104Created fresh repository.105remote: Enumerating objects: 116039, done. 106remote: Counting objects: 100% (116039/116039), done. 107remote: Compressing objects: 100% (81230/81230), done. 108remote: Total 116039 (delta 48550), reused 75347 (delta 30398), pack-reused 0 109Receiving objects: 100% (116039/116039), 108.46 MiB | 23.59 MiB/s, done.110Resolving deltas: 100% (48550/48550), done.112 * [new ref] refs/pipelines/579240176 -> refs/pipelines/579240176113Checking out ad477312 as refs/merge-requests/90914/merge...114Skipping Git submodules setup115$ git remote set-url origin "${CI_REPOSITORY_URL}"117Checking cache for ruby-gems-debian-bullseye-ruby-2.7-10...118Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/ruby-gems-debian-bullseye-ruby-2.7-10 119Successfully extracted cache120Checking cache for gitaly-ruby-gems-debian-bullseye-ruby-2.7-10...121Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/gitaly-ruby-gems-debian-bullseye-ruby-2.7-10 122Successfully extracted cache124Downloading artifacts for compile-test-assets (2673682644)...125Downloading artifacts from coordinator... ok id=2673682644 responseStatus=200 OK token=xA_uFPwX126Downloading artifacts for detect-tests (2673682683)...127Downloading artifacts from coordinator... ok id=2673682683 responseStatus=200 OK token=xA_uFPwX128Downloading artifacts for retrieve-tests-metadata (2673682698)...129Downloading artifacts from coordinator... ok id=2673682698 responseStatus=200 OK token=xA_uFPwX130Downloading artifacts for setup-test-env (2673682668)...131Downloading artifacts from coordinator... ok id=2673682668 responseStatus=200 OK token=xA_uFPwX133Using docker image sha256:642191311550aaa03aba1d11d8d921042ead8ee5afeb833fc7e4e3f933b7ed04 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12@sha256:f0990c59018be757dd56365bb2cc6791d65f3f4bf99a431c3b26e3df08260f6a ...134$ echo $FOSS_ONLY135$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb136$ export GOPATH=$CI_PROJECT_DIR/.go137$ mkdir -p $GOPATH138$ source scripts/utils.sh139$ source scripts/prepare_build.sh1403.2.33141Bundler version 2.2.33142Successfully installed bundler-2.3.151431 gem installed144production:development145Settings are listed in order of priority. The top value will be used.146clean147Set for your local app (/builds/gitlab-org/gitlab/.bundle/config): true148frozen149Set via BUNDLE_FROZEN: true150install_flags151Set via BUNDLE_INSTALL_FLAGS: "--jobs=$(nproc) --retry=3 --quiet"152path153Set for your local app (/builds/gitlab-org/gitlab/.bundle/config): "/builds/gitlab-org/gitlab/vendor"154without155Set via BUNDLE_WITHOUT: [:production, :development]156$ bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check157Don't run Bundler as root. Bundler can ask for sudo if it is needed, and158installing your bundle as root will break this application for all non-root159users on this machine.160The Gemfile's dependencies are satisfied161==> 'bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check' succeeded in 3 seconds.162$ bundle pristine pg163Installing pg 1.3.5 with native extensions164==> 'bundle pristine pg' succeeded in 10 seconds.165Using decomposed database config (config/database.yml.decomposed-postgresql)166$ setup_db_user_only167CREATE ROLE168GRANT169==> 'setup_db_user_only' succeeded in 0 seconds.170$ bundle exec rake db:drop db:create db:schema:load db:migrate171Dropped database 'gitlabhq_test'172Dropped database 'gitlabhq_test_ci'173Dropped database 'gitlabhq_geo_test'174Created database 'gitlabhq_test'175Created database 'gitlabhq_test_ci'176Created database 'gitlabhq_geo_test'177==> 'bundle exec rake db:drop db:create db:schema:load db:migrate' succeeded in 36 seconds.178$ setup_db_praefect179SELECT pg_catalog.set_config('search_path', '', false);180CREATE DATABASE praefect_test ENCODING 'UTF8';181==> 'setup_db_praefect' succeeded in 1 seconds.182$ run_timed_command "gem install knapsack --no-document"183$ gem install knapsack --no-document184Successfully installed knapsack-4.0.01851 gem installed186==> 'gem install knapsack --no-document' succeeded in 0 seconds.187$ run_timed_command "scripts/gitaly-test-spawn"188$ scripts/gitaly-test-spawn189find: ‘/builds/gitlab-org/gitlab/tmp/tests/gitaly/cmd’: No such file or directory190Don't run Bundler as root. Bundler can ask for sudo if it is needed, and191installing your bundle as root will break this application for all non-root192users on this machine.193Using abstract_type 0.0.7194Using concurrent-ruby 1.1.10195Using i18n 1.10.0196Using minitest 5.15.0197Using tzinfo 2.0.4198Using zeitwerk 2.5.4199Using activesupport 6.1.4.7200Using builder 3.2.4201Using erubi 1.10.0202Using mini_portile2 2.8.0203Using racc 1.6.0204Using nokogiri 1.13.6 (x86_64-linux)205Using rails-dom-testing 2.0.3206Using crass 1.0.6207Using loofah 2.16.0208Using rails-html-sanitizer 1.4.2209Using actionview 6.1.4.7210Using rack 2.2.3211Using rack-test 1.1.0212Using actionpack 6.1.4.7213Using ice_nine 0.11.2214Using thread_safe 0.3.6215Using memoizable 0.4.2216Using adamantium 0.2.0217Using public_suffix 4.0.6218Using addressable 2.7.0219Using ast 2.4.2220Using binding_ninja 0.2.3221Using bundler 2.3.15222Using charlock_holmes 0.7.7223Using coderay 1.1.2224Using equalizer 0.0.11225Using concord 0.1.5226Using diff-lcs 1.3227Using dotenv 2.7.6228Using escape_utils 1.2.1229Using factory_bot 5.0.2230Using multipart-post 2.1.1231Using faraday 1.0.1232Using ffi 1.15.3233Using json 2.5.1234Using gemojione 3.3.0235Using mini_mime 1.0.2236Using rugged 1.2.0237Using github-linguist 7.12.1238Using github-markup 1.7.0239Using mime-types-data 3.2020.1104240Using mime-types 3.3.1241Using gitlab-gollum-rugged_adapter 0.4.4.4.gitlab.1242Using rouge 3.27.0243Using sanitize 6.0.0244Using stringex 2.8.5245Using gitlab-gollum-lib 4.2.7.10.gitlab.2246Using google-protobuf 3.19.1 (x86_64-linux)247Using googleapis-common-protos-types 1.3.0248Using grpc 1.42.0 (x86_64-linux)249Using opentracing 0.5.0250Using thrift 0.15.0251Using jaeger-client 1.1.0252Using pg_query 2.1.1253Using redis 4.4.0254Using gitlab-labkit 0.23.0255Using rubyzip 2.3.2256Using thor 1.1.0257Using tomlrb 2.0.1258Using with_env 1.1.0259Using rexml 3.2.5260Using xml-simple 1.1.9261Using gitlab-license_finder 6.14.2.1262Using gitlab-markup 1.7.1263Using grpc-tools 1.42.0264Using sawyer 0.8.2265Using octokit 4.20.0266Using reverse_markdown 1.4.0267Using licensee 9.14.1268Using method_source 0.9.2269Using msgpack 1.3.3270Using optimist 3.0.1271Using parallel 1.19.2272Using parser 3.0.3.2273Using procto 0.0.3274Using unparser 0.4.7275Using proc_to_ast 0.1.0276Using pry 0.12.2277Using rainbow 3.0.0278Using rbtrace 0.4.14279Using rdoc 6.3.2280Using regexp_parser 1.8.1281Using rspec-support 3.8.0282Using rspec-core 3.8.0283Using rspec-expectations 3.8.3284Using rspec-mocks 3.8.0285Using rspec 3.8.0286Using rspec-parameterized 0.4.2287Using rubocop-ast 0.2.0288Using ruby-progressbar 1.10.1289Using unicode-display_width 1.7.0290Using rubocop 0.86.0291Using sentry-raven 3.0.4292Using timecop 0.9.1293Bundle complete! 22 Gemfile dependencies, 100 gems now installed.294Gems in the groups 'production' and 'development' were not installed.295Bundled gems are installed into `/builds/gitlab-org/gitlab/vendor/gitaly-ruby`296Checking gitaly-ruby Gemfile...297Checking gitaly-ruby bundle...298The Gemfile's dependencies are satisfied299Trying to connect to gitaly: .............................................. OK300Trying to connect to gitaly2: ................................................................. OK301Starting Praefect with in-memory election strategyTrying to connect to praefect: ......... OK302==> 'scripts/gitaly-test-spawn' succeeded in 14 seconds.303$ source ./scripts/rspec_helpers.sh304$ rspec_paralellized_job "--tag ~quarantine --tag ~level:migration"305SKIP_FLAKY_TESTS_AUTOMATICALLY: true306RETRY_FAILED_TESTS_IN_NEW_PROCESS: true307KNAPSACK_GENERATE_REPORT: true308FLAKY_RSPEC_GENERATE_REPORT: true309KNAPSACK_TEST_FILE_PATTERN: {ee/}spec/{bin,channels,config,db,dependencies,elastic,elastic_integration,experiments,events,factories,finders,frontend,graphql,haml_lint,helpers,initializers,lib,metrics_server,models,policies,presenters,rack_servers,replicators,routing,rubocop,scripts,serializers,services,sidekiq,sidekiq_cluster,spam,support_specs,tasks,uploaders,validators,views,workers,tooling,components}{,/**/}*_spec.rb310KNAPSACK_LOG_LEVEL: debug311KNAPSACK_REPORT_PATH: knapsack/rspec-ee_unit_pg12_8_16_report.json312FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json313FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec-ee_unit_pg12_8_16_report.json314NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec-ee_unit_pg12_8_16_report.json315SKIPPED_FLAKY_TESTS_REPORT_PATH: rspec/flaky/skipped_flaky_tests_rspec-ee_unit_pg12_8_16_report.txt316RETRIED_TESTS_REPORT_PATH: rspec/flaky/retried_tests_rspec-ee_unit_pg12_8_16_report.txt317CRYSTALBALL: 318Knapsack node specs:319ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb320ee/spec/models/epic_issue_spec.rb321ee/spec/models/ee/user_spec.rb322ee/spec/lib/gitlab/ci/templates/sast_latest_gitlab_ci_yaml_spec.rb323ee/spec/services/elastic/process_bookkeeping_service_spec.rb324ee/spec/policies/environment_policy_spec.rb325ee/spec/policies/merge_request_policy_spec.rb326ee/spec/models/gitlab_subscription_spec.rb327ee/spec/lib/gitlab/ci/templates/sast_gitlab_ci_yaml_spec.rb328ee/spec/lib/ee/gitlab/ci/templates/templates_spec.rb329ee/spec/services/projects/update_service_spec.rb330ee/spec/services/merge_requests/push_options_handler_service_spec.rb331ee/spec/lib/gitlab/elastic/bulk_indexer_spec.rb332ee/spec/lib/ee/gitlab/background_migration/populate_uuids_for_security_findings_spec.rb333ee/spec/services/approval_rules/params_filtering_service_spec.rb334ee/spec/services/ci/minutes/track_live_consumption_service_spec.rb335ee/spec/serializers/merge_request_widget_entity_spec.rb336ee/spec/services/geo/design_repository_sync_service_spec.rb337ee/spec/helpers/ee/namespaces_helper_spec.rb338ee/spec/services/merge_requests/approval_service_spec.rb339ee/spec/serializers/dashboard_operations_project_entity_spec.rb340ee/spec/services/status_page/mark_for_publication_service_spec.rb341ee/spec/models/ee/list_spec.rb342ee/spec/lib/gitlab/geo/log_cursor/events/repository_updated_event_spec.rb343ee/spec/lib/gitlab/ci/reports/security/finding_spec.rb344ee/spec/finders/geo/terraform_state_version_registry_finder_spec.rb345ee/spec/presenters/ci/pipeline_presenter_spec.rb346ee/spec/services/status_page/trigger_publish_service_spec.rb347ee/spec/serializers/vulnerabilities/finding_serializer_spec.rb348ee/spec/lib/gitlab/ci/parsers/security/formatters/dependency_list_spec.rb349ee/spec/lib/ee/gitlab/background_migration/populate_namespace_statistics_spec.rb350ee/spec/models/dast_site_token_spec.rb351ee/spec/lib/ee/gitlab/import_export/group/tree_saver_spec.rb352ee/spec/lib/gitlab/git_access_wiki_spec.rb353ee/spec/services/geo/project_housekeeping_service_spec.rb354ee/spec/services/ee/allowed_email_domains/update_service_spec.rb355ee/spec/services/groups/create_service_spec.rb356ee/spec/models/resource_weight_event_spec.rb357ee/spec/services/security/store_scan_service_spec.rb358ee/spec/models/vulnerabilities/export_spec.rb359ee/spec/presenters/ci/build_runner_presenter_spec.rb360ee/spec/lib/gitlab/auth/saml/user_spec.rb361ee/spec/services/projects/restore_service_spec.rb362ee/spec/services/security/ingestion/tasks/ingest_vulnerability_flags_spec.rb363ee/spec/services/security/ingestion/ingest_report_service_spec.rb364ee/spec/lib/elastic/latest/project_wiki_class_proxy_spec.rb365ee/spec/services/ci_cd/setup_project_spec.rb366ee/spec/graphql/mutations/incident_management/oncall_rotation/create_spec.rb367ee/spec/services/incident_management/oncall_schedules/update_service_spec.rb368ee/spec/views/compliance_management/compliance_framework/_project_settings.html.haml_spec.rb369ee/spec/services/ee/commits/create_service_spec.rb370ee/spec/lib/gitlab/elastic/client_spec.rb371ee/spec/services/vulnerability_exports/create_service_spec.rb372ee/spec/helpers/ee/subscribable_banner_helper_spec.rb373ee/spec/graphql/mutations/dast_site_profiles/update_spec.rb374ee/spec/services/ee/merge_requests/update_assignees_service_spec.rb375ee/spec/workers/elastic_delete_project_worker_spec.rb376ee/spec/lib/ee/gitlab/ip_restriction/enforcer_spec.rb377ee/spec/finders/geo/project_registry_status_finder_spec.rb378ee/spec/helpers/ee/personal_access_tokens_helper_spec.rb379ee/spec/graphql/types/incident_management/oncall_rotation_date_input_type_spec.rb380ee/spec/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker_spec.rb381ee/spec/services/protected_environments/base_service_spec.rb382ee/spec/finders/auth/provisioned_users_finder_spec.rb383ee/spec/models/ee/namespace_limit_spec.rb384ee/spec/models/dast_site_spec.rb385ee/spec/policies/instance_security_dashboard_policy_spec.rb386ee/spec/serializers/dependency_entity_spec.rb387ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_first_commit_at_spec.rb388ee/spec/policies/dast/profile_schedule_policy_spec.rb389ee/spec/models/integrations/github/remote_project_spec.rb390ee/spec/workers/new_epic_worker_spec.rb391ee/spec/services/elastic/indexing_control_service_spec.rb392ee/spec/graphql/mutations/security/ci_configuration/configure_container_scanning_spec.rb393ee/spec/helpers/ee/dashboard_helper_spec.rb394ee/spec/finders/incident_management/issuable_resource_links_finder_spec.rb395ee/spec/presenters/epic_issue_presenter_spec.rb396ee/spec/tasks/gitlab/license_rake_spec.rb397ee/spec/finders/geo/group_wiki_repository_registry_finder_spec.rb398ee/spec/lib/gitlab/ci/templates/secret_detection_latest_gitlab_ci_yaml_spec.rb399ee/spec/services/ee/incident_management/issuable_escalation_statuses/build_service_spec.rb400ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb401ee/spec/components/namespaces/free_user_cap/alert_component_spec.rb402ee/spec/models/allowed_email_domain_spec.rb403ee/spec/models/dora/change_failure_rate_metric_spec.rb404ee/spec/services/security/ingestion/tasks/ingest_identifiers_spec.rb405ee/spec/graphql/mutations/incident_management/oncall_schedule/destroy_spec.rb406ee/spec/helpers/ee/registrations_helper_spec.rb407ee/spec/helpers/ee/learn_gitlab_helper_spec.rb408ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb409ee/spec/services/geo/container_repository_updated_event_store_spec.rb410ee/spec/services/projects/hashed_storage/migrate_attachments_service_spec.rb411ee/spec/serializers/ee/user_serializer_spec.rb412ee/spec/finders/dast_site_validations_finder_spec.rb413ee/spec/helpers/ee/namespace_user_cap_reached_alert_helper_spec.rb414ee/spec/lib/gitlab/sidekiq_config_spec.rb415ee/spec/services/ci/retry_pipeline_service_spec.rb416ee/spec/models/board_assignee_spec.rb417ee/spec/views/projects/show.html.haml_spec.rb418ee/spec/helpers/ee/blob_helper_spec.rb419ee/spec/helpers/ee/graph_helper_spec.rb420ee/spec/helpers/ee/groups/group_members_helper_spec.rb421ee/spec/finders/geo/container_repository_registry_finder_spec.rb422ee/spec/services/licenses/destroy_service_spec.rb423ee/spec/workers/geo/design_repository_sync_worker_spec.rb424ee/spec/services/groups/update_repository_storage_service_spec.rb425ee/spec/models/ee/namespace_statistics_spec.rb426ee/spec/services/merge_trains/check_status_service_spec.rb427ee/spec/policies/award_emoji_policy_spec.rb428ee/spec/finders/ee/alert_management/http_integrations_finder_spec.rb429ee/spec/models/geo/repository_renamed_event_spec.rb430ee/spec/services/ee/users/build_service_spec.rb431ee/spec/elastic/migrate/20210910094600_add_namespace_ancestry_ids_to_issues_mapping_spec.rb432ee/spec/helpers/compliance_management/compliance_framework/group_settings_helper_spec.rb433ee/spec/serializers/licenses_list_serializer_spec.rb434ee/spec/models/namespaces/free_user_cap_spec.rb435ee/spec/lib/gitlab/prometheus/queries/additional_metrics_environment_query_spec.rb436ee/spec/lib/gitlab/code_owners/reference_extractor_spec.rb437ee/spec/lib/gitlab/status_page/storage/s3_multipart_upload_spec.rb438ee/spec/services/ee/merge_requests/base_service_spec.rb439ee/spec/finders/approval_rules/group_finder_spec.rb440ee/spec/models/geo/cache_invalidation_event_spec.rb441ee/spec/helpers/routing/pseudonymization_helper_spec.rb442ee/spec/workers/geo/verification_timeout_worker_spec.rb443ee/spec/services/milestones/destroy_service_spec.rb444ee/spec/lib/gitlab/pagination/keyset/simple_order_builder_spec.rb445ee/spec/services/path_locks/unlock_service_spec.rb446ee/spec/lib/ee/gitlab/ci/pipeline/chain/validate/security_orchestration_policy_spec.rb447ee/spec/services/ee/protected_branches/update_service_spec.rb448ee/spec/lib/ee/gitlab/prometheus/metric_group_spec.rb449ee/spec/models/ee/incident_management/project_incident_management_setting_spec.rb450ee/spec/serializers/incident_management/oncall_schedule_entity_spec.rb451ee/spec/graphql/resolvers/vulnerabilities_count_per_day_resolver_spec.rb452ee/spec/serializers/audit_event_entity_spec.rb453ee/spec/lib/gitlab/auth/ldap/adapter_spec.rb454ee/spec/lib/gitlab/geo/log_cursor/event_logs_spec.rb455ee/spec/helpers/kerberos_spnego_helper_spec.rb456ee/spec/graphql/mutations/boards/epic_boards/epic_move_list_spec.rb457ee/spec/services/merge_requests/mergeability/check_denied_policies_service_spec.rb458ee/spec/lib/gitlab/auth/o_auth/auth_hash_spec.rb459ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_links_aggregate_spec.rb460ee/spec/services/ee/groups/deploy_tokens/create_service_spec.rb461ee/spec/services/ee/merge_requests/handle_assignees_change_service_spec.rb462ee/spec/lib/bulk_imports/common/pipelines/wiki_pipeline_spec.rb463ee/spec/views/trials/_skip_trial.html.haml_spec.rb464ee/spec/serializers/protected_environments/entity_spec.rb465ee/spec/workers/geo/sync_timeout_cron_worker_spec.rb466ee/spec/validators/ldap_filter_validator_spec.rb467ee/spec/services/gitlab_subscriptions/extend_reactivate_trial_service_spec.rb468ee/spec/graphql/types/geo/package_file_registry_type_spec.rb469ee/spec/lib/gitlab/vulnerabilities/parser_spec.rb470ee/spec/graphql/types/ci/pipeline_type_spec.rb471ee/spec/graphql/types/incident_management/oncall_participant_type_spec.rb472ee/spec/services/gitlab_subscriptions/create_hand_raise_lead_service_spec.rb473ee/spec/graphql/types/vulnerability_details/commit_type_spec.rb474ee/spec/elastic/migrate/20210429154500_migrate_merge_requests_to_separate_index_spec.rb475ee/spec/views/shared/access_tokens/_table.html.haml_spec.rb476ee/spec/graphql/types/work_items/type_spec.rb477ee/spec/elastic/migrate/20201123123400_migrate_issues_to_separate_index_spec.rb478ee/spec/graphql/types/epic_sort_enum_spec.rb479ee/spec/lib/gitlab/console_spec.rb480ee/spec/graphql/types/vulnerable_projects_by_grade_type_spec.rb481ee/spec/helpers/prevent_forking_helper_spec.rb482ee/spec/lib/gitlab/geo/log_helpers_spec.rb483ee/spec/graphql/types/ci/code_quality_degradation_type_spec.rb484ee/spec/models/geo/upload_state_spec.rb485Filter specs:486Running specs:487Running all node tests without filter488ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb489ee/spec/models/epic_issue_spec.rb490ee/spec/models/ee/user_spec.rb491ee/spec/lib/gitlab/ci/templates/sast_latest_gitlab_ci_yaml_spec.rb492ee/spec/services/elastic/process_bookkeeping_service_spec.rb493ee/spec/policies/environment_policy_spec.rb494ee/spec/policies/merge_request_policy_spec.rb495ee/spec/models/gitlab_subscription_spec.rb496ee/spec/lib/gitlab/ci/templates/sast_gitlab_ci_yaml_spec.rb497ee/spec/lib/ee/gitlab/ci/templates/templates_spec.rb498ee/spec/services/projects/update_service_spec.rb499ee/spec/services/merge_requests/push_options_handler_service_spec.rb500ee/spec/lib/gitlab/elastic/bulk_indexer_spec.rb501ee/spec/lib/ee/gitlab/background_migration/populate_uuids_for_security_findings_spec.rb502ee/spec/services/approval_rules/params_filtering_service_spec.rb503ee/spec/services/ci/minutes/track_live_consumption_service_spec.rb504ee/spec/serializers/merge_request_widget_entity_spec.rb505ee/spec/services/geo/design_repository_sync_service_spec.rb506ee/spec/helpers/ee/namespaces_helper_spec.rb507ee/spec/services/merge_requests/approval_service_spec.rb508ee/spec/serializers/dashboard_operations_project_entity_spec.rb509ee/spec/services/status_page/mark_for_publication_service_spec.rb510ee/spec/models/ee/list_spec.rb511ee/spec/lib/gitlab/geo/log_cursor/events/repository_updated_event_spec.rb512ee/spec/lib/gitlab/ci/reports/security/finding_spec.rb513ee/spec/finders/geo/terraform_state_version_registry_finder_spec.rb514ee/spec/presenters/ci/pipeline_presenter_spec.rb515ee/spec/services/status_page/trigger_publish_service_spec.rb516ee/spec/serializers/vulnerabilities/finding_serializer_spec.rb517ee/spec/lib/gitlab/ci/parsers/security/formatters/dependency_list_spec.rb518ee/spec/lib/ee/gitlab/background_migration/populate_namespace_statistics_spec.rb519ee/spec/models/dast_site_token_spec.rb520ee/spec/lib/ee/gitlab/import_export/group/tree_saver_spec.rb521ee/spec/lib/gitlab/git_access_wiki_spec.rb522ee/spec/services/geo/project_housekeeping_service_spec.rb523ee/spec/services/ee/allowed_email_domains/update_service_spec.rb524ee/spec/services/groups/create_service_spec.rb525ee/spec/models/resource_weight_event_spec.rb526ee/spec/services/security/store_scan_service_spec.rb527ee/spec/models/vulnerabilities/export_spec.rb528ee/spec/presenters/ci/build_runner_presenter_spec.rb529ee/spec/lib/gitlab/auth/saml/user_spec.rb530ee/spec/services/projects/restore_service_spec.rb531ee/spec/services/security/ingestion/tasks/ingest_vulnerability_flags_spec.rb532ee/spec/services/security/ingestion/ingest_report_service_spec.rb533ee/spec/lib/elastic/latest/project_wiki_class_proxy_spec.rb534ee/spec/services/ci_cd/setup_project_spec.rb535ee/spec/graphql/mutations/incident_management/oncall_rotation/create_spec.rb536ee/spec/services/incident_management/oncall_schedules/update_service_spec.rb537ee/spec/views/compliance_management/compliance_framework/_project_settings.html.haml_spec.rb538ee/spec/services/ee/commits/create_service_spec.rb539ee/spec/lib/gitlab/elastic/client_spec.rb540ee/spec/services/vulnerability_exports/create_service_spec.rb541ee/spec/helpers/ee/subscribable_banner_helper_spec.rb542ee/spec/graphql/mutations/dast_site_profiles/update_spec.rb543ee/spec/services/ee/merge_requests/update_assignees_service_spec.rb544ee/spec/workers/elastic_delete_project_worker_spec.rb545ee/spec/lib/ee/gitlab/ip_restriction/enforcer_spec.rb546ee/spec/finders/geo/project_registry_status_finder_spec.rb547ee/spec/helpers/ee/personal_access_tokens_helper_spec.rb548ee/spec/graphql/types/incident_management/oncall_rotation_date_input_type_spec.rb549ee/spec/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker_spec.rb550ee/spec/services/protected_environments/base_service_spec.rb551ee/spec/finders/auth/provisioned_users_finder_spec.rb552ee/spec/models/ee/namespace_limit_spec.rb553ee/spec/models/dast_site_spec.rb554ee/spec/policies/instance_security_dashboard_policy_spec.rb555ee/spec/serializers/dependency_entity_spec.rb556ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_first_commit_at_spec.rb557ee/spec/policies/dast/profile_schedule_policy_spec.rb558ee/spec/models/integrations/github/remote_project_spec.rb559ee/spec/workers/new_epic_worker_spec.rb560ee/spec/services/elastic/indexing_control_service_spec.rb561ee/spec/graphql/mutations/security/ci_configuration/configure_container_scanning_spec.rb562ee/spec/helpers/ee/dashboard_helper_spec.rb563ee/spec/finders/incident_management/issuable_resource_links_finder_spec.rb564ee/spec/presenters/epic_issue_presenter_spec.rb565ee/spec/tasks/gitlab/license_rake_spec.rb566ee/spec/finders/geo/group_wiki_repository_registry_finder_spec.rb567ee/spec/lib/gitlab/ci/templates/secret_detection_latest_gitlab_ci_yaml_spec.rb568ee/spec/services/ee/incident_management/issuable_escalation_statuses/build_service_spec.rb569ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb570ee/spec/components/namespaces/free_user_cap/alert_component_spec.rb571ee/spec/models/allowed_email_domain_spec.rb572ee/spec/models/dora/change_failure_rate_metric_spec.rb573ee/spec/services/security/ingestion/tasks/ingest_identifiers_spec.rb574ee/spec/graphql/mutations/incident_management/oncall_schedule/destroy_spec.rb575ee/spec/helpers/ee/registrations_helper_spec.rb576ee/spec/helpers/ee/learn_gitlab_helper_spec.rb577ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb578ee/spec/services/geo/container_repository_updated_event_store_spec.rb579ee/spec/services/projects/hashed_storage/migrate_attachments_service_spec.rb580ee/spec/serializers/ee/user_serializer_spec.rb581ee/spec/finders/dast_site_validations_finder_spec.rb582ee/spec/helpers/ee/namespace_user_cap_reached_alert_helper_spec.rb583ee/spec/lib/gitlab/sidekiq_config_spec.rb584ee/spec/services/ci/retry_pipeline_service_spec.rb585ee/spec/models/board_assignee_spec.rb586ee/spec/views/projects/show.html.haml_spec.rb587ee/spec/helpers/ee/blob_helper_spec.rb588ee/spec/helpers/ee/graph_helper_spec.rb589ee/spec/helpers/ee/groups/group_members_helper_spec.rb590ee/spec/finders/geo/container_repository_registry_finder_spec.rb591ee/spec/services/licenses/destroy_service_spec.rb592ee/spec/workers/geo/design_repository_sync_worker_spec.rb593ee/spec/services/groups/update_repository_storage_service_spec.rb594ee/spec/models/ee/namespace_statistics_spec.rb595ee/spec/services/merge_trains/check_status_service_spec.rb596ee/spec/policies/award_emoji_policy_spec.rb597ee/spec/finders/ee/alert_management/http_integrations_finder_spec.rb598ee/spec/models/geo/repository_renamed_event_spec.rb599ee/spec/services/ee/users/build_service_spec.rb600ee/spec/elastic/migrate/20210910094600_add_namespace_ancestry_ids_to_issues_mapping_spec.rbKnapsack report generator started!601DEPRECATION WARNING: /builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/activerecord-6.1.4.7/lib/active_record/connection_adapters/postgresql_adapter.rb:78: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call602/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/pg-1.3.5/lib/pg.rb:68: warning: The called method `connect' is defined here603 (called from new_client at /builds/gitlab-org/gitlab/config/initializers/00_connection_logger.rb:21)604Run options: exclude {:quarantine=>true, :level=>"migration"}605Test environment set up in 0.65606101 seconds606Dependency-Scanning.gitlab-ci.yml607 the created pipeline608 when project has no license609 includes no jobs610 when project has Ultimate license611 when DEPENDENCY_SCANNING_DISABLED=1612 includes no jobs613 when DS_EXCLUDED_ANALYZERS set to614 exclude615 nothing616 creates pipeline with excluded analyzers skipped617 gemnasium618 creates pipeline with excluded analyzers skipped619 gemnasium-maven620 creates pipeline with excluded analyzers skipped621 gemnasium-python622 creates pipeline with excluded analyzers skipped623 two624 creates pipeline with excluded analyzers skipped625 three626 creates pipeline with excluded analyzers skipped627 four628 creates pipeline with excluded analyzers skipped629 all analyzers excluded630 creates a pipeline excluding jobs from specified analyzers631 by default632 Go633 with file at root634 creates a pipeline with the expected jobs635 sets the image suffix as expected636 with file at depth 1637 creates a pipeline with the expected jobs638 sets the image suffix as expected639 with file at depth 2640 creates a pipeline with the expected jobs641 sets the image suffix as expected642 with file at depth > 2643 includes no job644 Java645 with file at root646 creates a pipeline with the expected jobs647 sets the image suffix as expected648 with file at depth 1649 creates a pipeline with the expected jobs650 sets the image suffix as expected651 with file at depth 2652 creates a pipeline with the expected jobs653 sets the image suffix as expected654 with file at depth > 2655 includes no job656 Java Gradle657 with file at root658 creates a pipeline with the expected jobs659 sets the image suffix as expected660 with file at depth 1661 creates a pipeline with the expected jobs662 sets the image suffix as expected663 with file at depth 2664 creates a pipeline with the expected jobs665 sets the image suffix as expected666 with file at depth > 2667 includes no job668 Java Gradle Kotlin DSL669 with file at root670 creates a pipeline with the expected jobs671 sets the image suffix as expected672 with file at depth 1673 creates a pipeline with the expected jobs674 sets the image suffix as expected675 with file at depth 2676 creates a pipeline with the expected jobs677 sets the image suffix as expected678 with file at depth > 2679 includes no job680 Javascript package-lock.json681 with file at root682 creates a pipeline with the expected jobs683 sets the image suffix as expected684 with file at depth 1685 creates a pipeline with the expected jobs686 sets the image suffix as expected687 with file at depth 2688 creates a pipeline with the expected jobs689 sets the image suffix as expected690 with file at depth > 2691 includes no job692 Javascript yarn.lock693 with file at root694 creates a pipeline with the expected jobs695 sets the image suffix as expected696 with file at depth 1697 creates a pipeline with the expected jobs698 sets the image suffix as expected699 with file at depth 2700 creates a pipeline with the expected jobs701 sets the image suffix as expected702 with file at depth > 2703 includes no job704 Javascript npm-shrinkwrap.json705 with file at root706 creates a pipeline with the expected jobs707 sets the image suffix as expected708 with file at depth 1709 creates a pipeline with the expected jobs710 sets the image suffix as expected711 with file at depth 2712 creates a pipeline with the expected jobs713 sets the image suffix as expected714 with file at depth > 2715 includes no job716 Multiple languages717 with file at root718 creates a pipeline with the expected jobs719 sets the image suffix as expected720 with file at depth 1721 creates a pipeline with the expected jobs722 sets the image suffix as expected723 with file at depth 2724 creates a pipeline with the expected jobs725 sets the image suffix as expected726 with file at depth > 2727 includes no job728 NuGet729 with file at root730 creates a pipeline with the expected jobs731 sets the image suffix as expected732 with file at depth 1733 creates a pipeline with the expected jobs734 sets the image suffix as expected735 with file at depth 2736 creates a pipeline with the expected jobs737 sets the image suffix as expected738 with file at depth > 2739 includes no job740 Conan741 with file at root742 creates a pipeline with the expected jobs743 sets the image suffix as expected744 with file at depth 1745 creates a pipeline with the expected jobs746 sets the image suffix as expected747 with file at depth 2748 creates a pipeline with the expected jobs749 sets the image suffix as expected750 with file at depth > 2751 includes no job752 PHP753 with file at root754 creates a pipeline with the expected jobs755 sets the image suffix as expected756 with file at depth 1757 creates a pipeline with the expected jobs758 sets the image suffix as expected759 with file at depth 2760 creates a pipeline with the expected jobs761 sets the image suffix as expected762 with file at depth > 2763 includes no job764 Python requirements.txt765 with file at root766 creates a pipeline with the expected jobs767 sets the image suffix as expected768 with file at depth 1769 creates a pipeline with the expected jobs770 sets the image suffix as expected771 with file at depth 2772 creates a pipeline with the expected jobs773 sets the image suffix as expected774 with file at depth > 2775 includes no job776 Python requirements.pip777 with file at root778 creates a pipeline with the expected jobs779 sets the image suffix as expected780 with file at depth 1781 creates a pipeline with the expected jobs782 sets the image suffix as expected783 with file at depth 2784 creates a pipeline with the expected jobs785 sets the image suffix as expected786 with file at depth > 2787 includes no job788 Python Pipfile789 with file at root790 creates a pipeline with the expected jobs791 sets the image suffix as expected792 with file at depth 1793 creates a pipeline with the expected jobs794 sets the image suffix as expected795 with file at depth 2796 creates a pipeline with the expected jobs797 sets the image suffix as expected798 with file at depth > 2799 includes no job800 Python requires.txt801 with file at root802 creates a pipeline with the expected jobs803 sets the image suffix as expected804 with file at depth 1805 creates a pipeline with the expected jobs806 sets the image suffix as expected807 with file at depth 2808 creates a pipeline with the expected jobs809 sets the image suffix as expected810 with file at depth > 2811 includes no job812 Python with setup.py813 with file at root814 creates a pipeline with the expected jobs815 sets the image suffix as expected816 with file at depth 1817 creates a pipeline with the expected jobs818 sets the image suffix as expected819 with file at depth 2820 creates a pipeline with the expected jobs821 sets the image suffix as expected822 with file at depth > 2823 includes no job824 Python with poetry.lock825 with file at root826 creates a pipeline with the expected jobs827 sets the image suffix as expected828 with file at depth 1829 creates a pipeline with the expected jobs830 sets the image suffix as expected831 with file at depth 2832 creates a pipeline with the expected jobs833 sets the image suffix as expected834 with file at depth > 2835 includes no job836 Ruby Gemfile.lock837 with file at root838 creates a pipeline with the expected jobs839 sets the image suffix as expected840 with file at depth 1841 creates a pipeline with the expected jobs842 sets the image suffix as expected843 with file at depth 2844 creates a pipeline with the expected jobs845 sets the image suffix as expected846 with file at depth > 2847 includes no job848 Ruby gems.locked849 with file at root850 creates a pipeline with the expected jobs851 sets the image suffix as expected852 with file at depth 1853 creates a pipeline with the expected jobs854 sets the image suffix as expected855 with file at depth 2856 creates a pipeline with the expected jobs857 sets the image suffix as expected858 with file at depth > 2859 includes no job860 Scala861 with file at root862 creates a pipeline with the expected jobs863 sets the image suffix as expected864 with file at depth 1865 creates a pipeline with the expected jobs866 sets the image suffix as expected867 with file at depth 2868 creates a pipeline with the expected jobs869 sets the image suffix as expected870 with file at depth > 2871 includes no job872 when PIP_REQUIREMENTS_FILE is defined873 creates a pipeline with the expected jobs874 sets the image suffix as expected875 when FIPS mode is enabled876 Go877 with file at root878 creates a pipeline with the expected jobs879 sets the image suffix as expected880 with file at depth 1881 creates a pipeline with the expected jobs882 sets the image suffix as expected883 with file at depth 2884 creates a pipeline with the expected jobs885 sets the image suffix as expected886 with file at depth > 2887 includes no job888 Java889 with file at root890 creates a pipeline with the expected jobs891 sets the image suffix as expected892 with file at depth 1893 creates a pipeline with the expected jobs894 sets the image suffix as expected895 with file at depth 2896 creates a pipeline with the expected jobs897 sets the image suffix as expected898 with file at depth > 2899 includes no job900 Java Gradle901 with file at root902 creates a pipeline with the expected jobs903 sets the image suffix as expected904 with file at depth 1905 creates a pipeline with the expected jobs906 sets the image suffix as expected907 with file at depth 2908 creates a pipeline with the expected jobs909 sets the image suffix as expected910 with file at depth > 2911 includes no job912 Java Gradle Kotlin DSL913 with file at root914 creates a pipeline with the expected jobs915 sets the image suffix as expected916 with file at depth 1917 creates a pipeline with the expected jobs918 sets the image suffix as expected919 with file at depth 2920 creates a pipeline with the expected jobs921 sets the image suffix as expected922 with file at depth > 2923 includes no job924 Javascript package-lock.json925 with file at root926 creates a pipeline with the expected jobs927 sets the image suffix as expected928 with file at depth 1929 creates a pipeline with the expected jobs930 sets the image suffix as expected931 with file at depth 2932 creates a pipeline with the expected jobs933 sets the image suffix as expected934 with file at depth > 2935 includes no job936 Javascript yarn.lock937 with file at root938 creates a pipeline with the expected jobs939 sets the image suffix as expected940 with file at depth 1941 creates a pipeline with the expected jobs942 sets the image suffix as expected943 with file at depth 2944 creates a pipeline with the expected jobs945 sets the image suffix as expected946 with file at depth > 2947 includes no job948 Javascript npm-shrinkwrap.json949 with file at root950 creates a pipeline with the expected jobs951 sets the image suffix as expected952 with file at depth 1953 creates a pipeline with the expected jobs954 sets the image suffix as expected955 with file at depth 2956 creates a pipeline with the expected jobs957 sets the image suffix as expected958 with file at depth > 2959 includes no job960 Multiple languages961 with file at root962 creates a pipeline with the expected jobs963 sets the image suffix as expected964 with file at depth 1965 creates a pipeline with the expected jobs966 sets the image suffix as expected967 with file at depth 2968 creates a pipeline with the expected jobs969 sets the image suffix as expected970 with file at depth > 2971 includes no job972 NuGet973 with file at root974 creates a pipeline with the expected jobs975 sets the image suffix as expected976 with file at depth 1977 creates a pipeline with the expected jobs978 sets the image suffix as expected979 with file at depth 2980 creates a pipeline with the expected jobs981 sets the image suffix as expected982 with file at depth > 2983 includes no job984 Conan985 with file at root986 creates a pipeline with the expected jobs987 sets the image suffix as expected988 with file at depth 1989 creates a pipeline with the expected jobs990 sets the image suffix as expected991 with file at depth 2992 creates a pipeline with the expected jobs993 sets the image suffix as expected994 with file at depth > 2995 includes no job996 PHP997 with file at root998 creates a pipeline with the expected jobs999 sets the image suffix as expected1000 with file at depth 11001 creates a pipeline with the expected jobs1002 sets the image suffix as expected1003 with file at depth 21004 creates a pipeline with the expected jobs1005 sets the image suffix as expected1006 with file at depth > 21007 includes no job1008 Python requirements.txt1009 with file at root1010 creates a pipeline with the expected jobs1011 sets the image suffix as expected1012 with file at depth 11013 creates a pipeline with the expected jobs1014 sets the image suffix as expected1015 with file at depth 21016 creates a pipeline with the expected jobs1017 sets the image suffix as expected1018 with file at depth > 21019 includes no job1020 Python requirements.pip1021 with file at root1022 creates a pipeline with the expected jobs1023 sets the image suffix as expected1024 with file at depth 11025 creates a pipeline with the expected jobs1026 sets the image suffix as expected1027 with file at depth 21028 creates a pipeline with the expected jobs1029 sets the image suffix as expected1030 with file at depth > 21031 includes no job1032 Python Pipfile1033 with file at root1034 creates a pipeline with the expected jobs1035 sets the image suffix as expected1036 with file at depth 11037 creates a pipeline with the expected jobs1038 sets the image suffix as expected1039 with file at depth 21040 creates a pipeline with the expected jobs1041 sets the image suffix as expected1042 with file at depth > 21043 includes no job1044 Python requires.txt1045 with file at root1046 creates a pipeline with the expected jobs1047 sets the image suffix as expected1048 with file at depth 11049 creates a pipeline with the expected jobs1050 sets the image suffix as expected1051 with file at depth 21052 creates a pipeline with the expected jobs1053 sets the image suffix as expected1054 with file at depth > 21055 includes no job1056 Python with setup.py1057 with file at root1058 creates a pipeline with the expected jobs1059 sets the image suffix as expected1060 with file at depth 11061 creates a pipeline with the expected jobs1062 sets the image suffix as expected1063 with file at depth 21064 creates a pipeline with the expected jobs1065 sets the image suffix as expected1066 with file at depth > 21067 includes no job1068 Python with poetry.lock1069 with file at root1070 creates a pipeline with the expected jobs1071 sets the image suffix as expected1072 with file at depth 11073 creates a pipeline with the expected jobs1074 sets the image suffix as expected1075 with file at depth 21076 creates a pipeline with the expected jobs1077 sets the image suffix as expected1078 with file at depth > 21079 includes no job1080 Ruby Gemfile.lock1081 with file at root1082 creates a pipeline with the expected jobs1083 sets the image suffix as expected1084 with file at depth 11085 creates a pipeline with the expected jobs1086 sets the image suffix as expected1087 with file at depth 21088 creates a pipeline with the expected jobs1089 sets the image suffix as expected1090 with file at depth > 21091 includes no job1092 Ruby gems.locked1093 with file at root1094 creates a pipeline with the expected jobs1095 sets the image suffix as expected1096 with file at depth 11097 creates a pipeline with the expected jobs1098 sets the image suffix as expected1099 with file at depth 21100 creates a pipeline with the expected jobs1101 sets the image suffix as expected1102 with file at depth > 21103 includes no job1104 Scala1105 with file at root1106 creates a pipeline with the expected jobs1107 sets the image suffix as expected1108 with file at depth 11109 creates a pipeline with the expected jobs1110 sets the image suffix as expected1111 with file at depth 21112 creates a pipeline with the expected jobs1113 sets the image suffix as expected1114 with file at depth > 21115 includes no job1116 when PIP_REQUIREMENTS_FILE is defined1117 creates a pipeline with the expected jobs1118 sets the image suffix as expected1119EpicIssue1120 validations1121 is valid to add non-confidential issue to non-confidential epic1122 is valid to add confidential issue to confidential epic1123 is valid to add confidential issue to non-confidential epic1124 is not valid to add non-confidential issue to confidential epic1125 group hierarchy1126 when epic and issue belong to the same group1127 is expected to be valid1128 when epic is in an ancestor group1129 is expected to be valid1130 when epic is in a descendant group1131 is invalid1132 when epic and issue are at different group hierarchies1133 is invalid1134 relative positioning1135 behaves like a class that supports relative positioning1136 #scoped_items1137 includes all items with the same scope1138 #relative_siblings1139 includes all items with the same scope, except self1140 .move_nulls_to_end1141 moves items with null relative_position to the end1142 preserves relative position1143 moves the item near the start position when there are no existing positions1144 does not perform any moves if all items have their relative_position set1145 manages to move nulls to the end even if there is a sequence at the end1146 manages to move nulls to the end even if there is not enough space1147 manages to move nulls to the end, stacking if we cannot create enough space1148 manages to move nulls found in the relative scope1149 can move many nulls1150 does not have an N+1 issue1151 .move_nulls_to_start1152 moves items with null relative_position to the start1153 moves the item near the start position when there are no existing positions1154 preserves relative position1155 does not perform any moves if all items have their relative_position set1156 manages to move nulls to the start even if there is not enough space1157 manages to move nulls to the end, stacking if we cannot create enough space1158 #move_before1159 moves item before1160 can move the item before an item at the start1161 can move the item before an item at MIN_POSITION1162 can move the item before an item bunched up at MIN_POSITION1163 when there is no space1164 moves items correctly1165 leap-frogging to the left1166 can leap-frog STEPS times before needing to rebalance1167 there is no space to the left after moving STEPS times1168 rebalances to the right1169 #move_after1170 moves item after1171 can move the item after an item bunched up at MAX_POSITION1172 when there is no space1173 can move the item after an item at MAX_POSITION1174 moves items correctly1175 leap-frogging1176 rebalances after STEPS jumps1177 #move_to_start1178 places items at most IDEAL_DISTANCE from the start when the range is open1179 moves item to the end1180 positions the item at MIN_POSITION when there is only one space left1181 rebalances when there is already an item at the MIN_POSITION1182 deals with a run of elements at the start1183 #move_to_end1184 places items at most IDEAL_DISTANCE from the start when the range is open1185 moves item to the end1186 positions the item at MAX_POSITION when there is only one space left1187 rebalances when there is already an item at the MAX_POSITION1188 deals with a run of elements at the end1189 #move_between1190 positions item between two other1191 positions item between on top1192 positions item between to end1193 positions items even when after and before positions are the same1194 positions item in the middle of other two if distance is big enough1195 positions item closer to the middle if we are at the very top1196 positions item closer to the middle if we are at the very bottom1197 positions item in the middle of other two1198 positions item right if we pass non-sequential parameters1199 avoids N+1 queries when rebalancing other items1200 the two items are next to each other1201 behaves like moves item between1202 moves the middle item to between left and right1203 there is no space1204 behaves like moves item between1205 moves the middle item to between left and right1206 there is a bunch of items1207 handles bunches correctly1208 behaves like moves item between1209 moves the middle item to between left and right1210 with a mixed tree level1211 can create space to the right1212 can create space to the left1213 moves nulls to the end1214User1215 user creation1216 with defaults1217 applies defaults to user1218 delegations1219 is expected to delegate #shared_runners_minutes_limit to the #namespace object1220 is expected to delegate #shared_runners_minutes_limit= to the #namespace object passing arguments [133]1221 associations1222 is expected to have many vulnerability_feedback1223 is expected to have many path_locks dependent => destroy1224 is expected to have many users_security_dashboard_projects1225 is expected to have many security_dashboard_projects1226 is expected to have many board_preferences1227 is expected to have many boards_epic_user_preferences class_name => Boards::EpicUserPreference1228 is expected to have many user_permission_export_uploads1229 is expected to have many oncall_participants class_name => IncidentManagement::OncallParticipant1230 is expected to have many oncall_rotations class_name => IncidentManagement::OncallRotation through oncall_participants1231 is expected to have many oncall_schedules class_name => IncidentManagement::OncallSchedule through oncall_rotations1232 is expected to have many escalation_rules class_name => IncidentManagement::EscalationRule1233 is expected to have many escalation_policies class_name => IncidentManagement::EscalationPolicy through escalation_rules1234 is expected to have many epic_board_recent_visits inverse_of => user1235 is expected to have many deployment_approvals1236 nested attributes1237 is expected to respond to #namespace_attributes=1238 validations1239 does not allow a user to be both an auditor and an admin1240 scopes1241 .non_ldap1242 retuns non-ldap user1243 .excluding_guests1244 exclude users with a Guest role in a Project/Group1245 with_invalid_expires_at_tokens1246 only includes users with invalid tokens1247 .managed_by1248 returns users managed by the specified group1249 after_create1250 #perform_user_cap_check1251 when user cap is not set1252 does not call SetUserStatusBasedOnUserCapSettingWorker1253 when user cap is set1254 enqueues SetUserStatusBasedOnUserCapSettingWorker1255 when the user is already active1256 does not enqueue SetUserStatusBasedOnUserCapSettingWorker1257 .find_by_smartcard_identity1258 returns the user1259 the GitLab_Auditor_User add-on1260 creating an auditor user1261 does not allow creating an auditor user if the addon isn't enabled1262 does not allow creating an auditor user if no license is present1263 allows creating an auditor user if the addon is enabled1264 allows creating a regular user if the addon isn't enabled1265 #auditor?1266 returns true for an auditor user if the addon is enabled1267 returns false for an auditor user if the addon is not enabled1268 returns false for an auditor user if a license is not present1269 returns false for a non-auditor user even if the addon is present1270 #access_level=1271 does not set 'auditor' for an invalid access level1272 does not set 'auditor' for admin level1273 assigns the 'auditor' access level1274 assigns the 'auditor' access level1275 clears the 'admin' access level when a user is made an auditor1276 clears the 'auditor' access level when a user is made an admin1277 doesn't clear existing 'auditor' access levels when an invalid access level is passed in1278 #can_read_all_resources?1279 returns true for auditor user1280 #can_admin_all_resources?1281 returns false for auditor user1282 #forget_me!1283 clears remember_created_at1284 does not clear remember_created_at when in a GitLab read-only instance1285 #remember_me!1286 updates remember_created_at1287 does not update remember_created_at when in a Geo read-only instance1288 #email_opted_in_source1289 for GitLab.com1290 returns GitLab.com1291 for nil source id1292 returns blank1293 for non-existent source id1294 returns blank1295 #available_custom_project_templates1296 returns an empty relation if group is not set1297 when group with custom project templates is set1298 returns an empty relation if group has no available project templates1299 returns project with disabled features1300 does not return project with private issues1301 when group has custom project templates1302 returns public projects1303 allows to search available project templates by name1304 filters by project ID1305 does not return inaccessible projects1306 returns private projects if user1307 is a member of the project1308 is a member of the group1309 returns internal projects if user1310 is a member of the project1311 is a member of the group1312 #available_subgroups_with_custom_project_templates1313 without Groups with custom project templates1314 returns an empty collection1315 with Groups with custom project templates1316 when the access level of the user is below the required one1317 returns an empty collection1318 when the access level of the user is the correct1319 when a Group ID is passed1320DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from block (6 levels) in <top (required)> at /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:513)1321 returns a single Group1322 when a Group ID is not passed1323 returns all available Groups1324 excludes Groups with the configured setting but without projects1325 when namespace plan is checked1326 returns groups on ultimate or premium plans1327 #roadmap_layout1328 not set1329 returns default value1330 set1331 returns set value1332 #group_sso?1333 is false without a saml_provider1334 with linked identity1335 without preloading1336 returns true1337 does not cause ActiveRecord to loop through identites1338 when identities and saml_providers pre-loaded1339 returns true1340 does not trigger additional database queries1341 .limit_to_saml_provider1342 returns all users when SAML provider is nil1343 returns only the users who have an identity that belongs to the given SAML provider1344 .billable1345 with guests1346 validates the sql matches the specific index we have1347 returns users1348 without guests1349 validates the sql matches the specific index we have1350 returns users1351 #group_managed_account?1352 when user has managing group linked1353 is expected to eq true1354 when user has no linked managing group1355 is expected to eq false1356 #managed_by?1357 when a normal user account1358 returns false1359 when a group managed account1360 returns true with group managed account owner1361 returns false with a regular user account1362 #password_required?1363 when user has managing group linked1364 does not require password to be present1365 #allow_password_authentication_for_web?1366 when user has managing group linked1367 is false1368 when user is provisioned by group1369 is false1370 with feature flag switched off1371 is true1372 #allow_password_authentication_for_git?1373 when user has managing group linked1374 is false1375 when user is provisioned by group1376 is false1377 with feature flag switched off1378 is true1379 #password_expired_if_applicable?1380 when password_automatically_set is true1381 with a SCIM identity1382 behaves like password expired not applicable1383 when password_expires_at is not set1384 returns false1385 when password_expires_at is in the past1386 returns false1387 when password_expires_at is in the future1388 returns false1389 with a SAML identity1390 behaves like password expired not applicable1391 when password_expires_at is not set1392 returns false1393 when password_expires_at is in the past1394 returns false1395 when password_expires_at is in the future1396 returns false1397 with a smartcard identity1398 behaves like password expired not applicable1399 when password_expires_at is not set1400 returns false1401 when password_expires_at is in the past1402 returns false1403 when password_expires_at is in the future1404 returns false1405 #user_authorized_by_provisioning_group?1406 when user is provisioned by group1407 is true1408 with feature flag switched off1409 is false1410 with feature flag switched on for particular groups1411 is false when provisioned by group without feature flag1412 is true when provisioned by group with feature flag1413 when user is not provisioned by group1414 is false1415 with feature flag switched off1416 is false1417 #authorized_by_provisioning_group?1418 when user is provisioned by group1419 is true1420 when other group is provided1421 is false1422 with feature flag switched off1423 is false1424 when user is not provisioned by group1425 is false1426 with feature flag switched off1427 is false1428 #password_based_login_forbidden?1429 when user is provisioned by group1430 is true1431 with feature flag switched off1432 is false1433 when user is not provisioned by group1434 is false1435 with feature flag switched off1436 is false1437 #using_license_seat?1438 when user is inactive1439 returns false1440 when user is active1441 when user is internal1442 internal_user_type: "support_bot"1443 when user has internal user type1444 returns false1445 internal_user_type: "alert_bot"1446 when user has internal user type1447 returns false1448 internal_user_type: "visual_review_bot"1449 when user has internal user type1450 returns false1451 internal_user_type: "ghost"1452 when user has internal user type1453 returns false1454 internal_user_type: "migration_bot"1455 when user has internal user type1456 returns false1457 internal_user_type: "security_bot"1458 when user has internal user type1459 returns false1460 internal_user_type: "automation_bot"1461 when user has internal user type1462 returns false1463 when user is not internal1464 when license is nil (core/free/default)1465 returns false if license is nil (core/free/default)1466 user is guest1467 returns false if license is ultimate1468 returns true if license is not ultimate and not nil1469 user is admin without projects1470 returns false if license is ultimate1471 returns true if license is not ultimate and not nil1472 #using_gitlab_com_seat?1473 when Gitlab.com? is false1474 is expected to be falsey1475 when user is not active1476 is expected to be falsey1477 when Gitlab.com? is true1478 when namespace is nil1479 is expected to be falsey1480 when namespace is on a free plan1481 is expected to be falsey1482 when namespace is on a ultimate plan1483 user is a guest1484 is expected to be falsey1485 user is not a guest1486 is expected to be truthy1487 when user is within project1488 is expected to be truthy1489 when user is within subgroup1490 is expected to be truthy1491 when namespace is on a plan that is not free or ultimate1492 user is a guest1493 is expected to be truthy1494 user is not a guest1495 is expected to be truthy1496 #manageable_groups_eligible_for_trial1497 user with no groups1498 is expected to eq []1499 owner of an already-trialed group1500 is expected not to include #<Group id:1688 @omitted>1501 guest of a non-trialed group1502 is expected not to include #<Group id:1687 @alpha>1503 developer of a non-trialed group1504 is expected not to include #<Group id:1687 @alpha>1505 maintainer of a non-trialed group1506 is expected to include #<Group id:1687 @alpha>1507 owner of 2 non-trialed groups1508 is expected to eq [#<Group id:1687 @alpha>, #<Group id:1686 @zeta>]1509 owner of a top-level group with a sub-group1510 is expected to eq [#<Group id:1687 @alpha>]1511 #authorized_groups1512 with minimal access role feature unavailable1513 is expected to contain exactly #<Group id:1691 @group59> and #<Group id:1694 @group62>1514 with minimal access feature available1515 feature turned on for all groups1516 is expected to contain exactly #<Group id:1691 @group59>, #<Group id:1694 @group62>, and #<Group id:1693 @group61>1517 ignores groups with minimal access if with_minimal_access=false1518 feature available for specific groups only1519 is expected to contain exactly #<Group id:1691 @group59>, #<Group id:1694 @group62>, and #<Group id:1693 @group61>1520 #active_for_authentication?1521 based on user type1522 user_type: "service_user", expected_result: true1523 is expected to equal true1524 user_type: "visual_review_bot", expected_result: false1525 is expected to equal false1526 paid namespaces1527 #has_paid_namespace?1528 when the user has Reporter or higher on at least one paid group1529 returns true1530 when the user is only a Guest on paid groups1531 returns false1532 when the user is not a member of any groups with plans1533 returns false1534 #owns_paid_namespace?1535 when the user is an owner of at least one paid group1536 returns true1537 when the user is only a Maintainer on paid groups1538 returns false1539 when the user is not a member of any groups with plans1540 returns false1541 #gitlab_employee?1542 based on group membership1543 when user belongs to gitlab-com group1544 is_com: true, expected_result: true1545 is expected to equal true1546 is_com: false, expected_result: false1547 is expected to equal false1548 when user does not belongs to gitlab-com group1549 is_com: true, expected_result: false1550 is expected to equal false1551 is_com: false, expected_result: false1552 is expected to equal false1553 based on user type1554 when user is a bot1555 is expected to equal false1556 when user is ghost1557 is expected to equal false1558 #gitlab_bot?1559 based on group membership1560 when user belongs to gitlab-com group1561 is expected to equal true1562 when user does not belongs to gitlab-com group1563 is expected to equal false1564 based on user type1565 when user is a bot1566 is expected to equal true1567 when user is a human1568 is expected to equal false1569 when user is ghost1570 is expected to equal false1571 #gitlab_service_user?1572 based on group membership1573 when user belongs to gitlab-com group1574 is expected to equal true1575 when user does not belong to gitlab-com group1576 is expected to equal false1577 based on user type1578 is_com: true, user_type: :service_user, answer: true1579 returns if the user is a GitLab-owned service user1580 is_com: true, user_type: :alert_bot, answer: false1581 returns if the user is a GitLab-owned service user1582 is_com: true, user_type: :human, answer: false1583 returns if the user is a GitLab-owned service user1584 is_com: true, user_type: :ghost, answer: false1585 returns if the user is a GitLab-owned service user1586 is_com: false, user_type: :service_user, answer: false1587 returns if the user is a GitLab-owned service user1588 is_com: false, user_type: :alert_bot, answer: false1589 returns if the user is a GitLab-owned service user1590 is_com: false, user_type: :human, answer: false1591 returns if the user is a GitLab-owned service user1592 is_com: false, user_type: :ghost, answer: false1593 returns if the user is a GitLab-owned service user1594 #security_dashboard1595 returns an instance of InstanceSecurityDashboard for the user1596 #find_or_init_board_epic_preference1597 returns new board epic user preference1598 when preference already exists1599 returns the existing board1600 #can_remove_self?1601 not on GitLab.com1602 when the password is not automatically set1603 is expected to eq true1604 when the password is automatically set1605 is expected to eq true1606 on GitLab.com1607 when the password is not automatically set1608 is expected to eq true1609 when the password is automatically set1610 is expected to eq false1611 #has_required_credit_card_to_run_pipelines?1612 saas: nil, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted paid plan"1613 saas: nil, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted paid plan"1614 saas: nil, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted missing CC on trial plan"1615 saas: nil, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted missing CC on trial plan"1616 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial, :old_users], days_from_release: 0, result: true, description: "missing CC on paid plan"1617 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial, :old_users], days_from_release: 0, result: true, description: "missing CC on paid plan"1618 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on free plan"1619 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on free plan"1620 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "missing CC on free plan and shared runners disabled"1621 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "missing CC on free plan and shared runners disabled"1622 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on free plan but old user"1623 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on free plan but old user"1624 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on free plan but old user and FF enabled"1625 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on free plan but old user and FF enabled"1626 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :free, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: true, description: "missing CC on free plan but old user and FF enabled and shared runners disabled"1627 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :free, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: true, description: "missing CC on free plan but old user and FF enabled and shared runners disabled"1628 saas: :saas, cc_present: true, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on free plan"1629 saas: :saas, cc_present: true, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on free plan"1630 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on free plan - FF off"1631 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :free, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on free plan - FF off"1632 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on trial plan"1633 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on trial plan"1634 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "missing CC on trial plan and shared runners disabled"1635 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "missing CC on trial plan and shared runners disabled"1636 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on trial plan but old user"1637 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on trial plan but old user"1638 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on trial plan but old user and FF enabled"1639 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on trial plan but old user and FF enabled"1640 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: true, description: "missing CC on trial plan but old user and FF enabled and shared runners disabled"1641 saas: :saas, cc_present: false, shared_runners: nil, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: true, description: "missing CC on trial plan but old user and FF enabled and shared runners disabled"1642 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on trial plan - FF off"1643 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on trial plan - FF off"1644 saas: :saas, cc_present: true, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on trial plan"1645 saas: :saas, cc_present: true, shared_runners: :enabled, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on trial plan"1646 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 100, plan: :free, feature_flags: [:free], days_from_release: 0, result: true, description: "missing CC on free plan with purchased minutes"1647 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 100, plan: :free, feature_flags: [:free], days_from_release: 0, result: true, description: "missing CC on free plan with purchased minutes"1648 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 100, plan: :trial, feature_flags: [:trial], days_from_release: 0, result: true, description: "missing CC on trial plan with purchased minutes"1649 saas: :saas, cc_present: false, shared_runners: :enabled, addon_mins: 100, plan: :trial, feature_flags: [:trial], days_from_release: 0, result: true, description: "missing CC on trial plan with purchased minutes"1650 #has_required_credit_card_to_enable_shared_runners?1651 saas: nil, cc_present: false, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted paid plan"1652 saas: nil, cc_present: false, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted paid plan"1653 saas: nil, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted missing CC on trial plan"1654 saas: nil, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "self-hosted missing CC on trial plan"1655 saas: :saas, cc_present: false, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial, :old_users], days_from_release: 0, result: true, description: "missing CC on paid plan"1656 saas: :saas, cc_present: false, addon_mins: 0, plan: :paid, feature_flags: [:free, :trial, :old_users], days_from_release: 0, result: true, description: "missing CC on paid plan"1657 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on free plan"1658 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on free plan"1659 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on free plan but old user"1660 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on free plan but old user"1661 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on free plan but old user and FF enabled"1662 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on free plan but old user and FF enabled"1663 saas: :saas, cc_present: true, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on free plan"1664 saas: :saas, cc_present: true, addon_mins: 0, plan: :free, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on free plan"1665 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on free plan - FF off"1666 saas: :saas, cc_present: false, addon_mins: 0, plan: :free, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on free plan - FF off"1667 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on trial plan"1668 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: false, description: "missing CC on trial plan"1669 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on trial plan but old user"1670 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: -1, result: true, description: "missing CC on trial plan but old user"1671 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on trial plan but old user and FF enabled"1672 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial, :old_users], days_from_release: -1, result: false, description: "missing CC on trial plan but old user and FF enabled"1673 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on trial plan - FF off"1674 saas: :saas, cc_present: false, addon_mins: 0, plan: :trial, feature_flags: [], days_from_release: 0, result: true, description: "missing CC on trial plan - FF off"1675 saas: :saas, cc_present: true, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on trial plan"1676 saas: :saas, cc_present: true, addon_mins: 0, plan: :trial, feature_flags: [:free, :trial], days_from_release: 0, result: true, description: "present CC on trial plan"1677 saas: :saas, cc_present: false, addon_mins: 100, plan: :free, feature_flags: [:free], days_from_release: 0, result: true, description: "missing CC on free plan with purchased minutes"1678 saas: :saas, cc_present: false, addon_mins: 100, plan: :free, feature_flags: [:free], days_from_release: 0, result: true, description: "missing CC on free plan with purchased minutes"1679 saas: :saas, cc_present: false, addon_mins: 100, plan: :trial, feature_flags: [:trial], days_from_release: 0, result: true, description: "missing CC on trial plan with purchased minutes"1680 saas: :saas, cc_present: false, addon_mins: 100, plan: :trial, feature_flags: [:trial], days_from_release: 0, result: true, description: "missing CC on trial plan with purchased minutes"1681 #owns_group_without_trial1682 returns true if owns a group1683 returns false if is a member group1684 returns false if is not a member of any group1685 returns false if owns a group with a plan on a trial with an end date1686 .oncall_schedules1687 excludes removed participants1688 excludes duplicates1689 .escalation_policies1690 excludes removed rules1691 excludes duplicates1692 .user_cap_reached?1693 billable_count: 2, user_cap_max: nil, result: false1694 is expected to eq false1695 billable_count: 2, user_cap_max: 5, result: false1696 is expected to eq false1697 billable_count: 5, user_cap_max: 5, result: true1698 is expected to eq true1699 billable_count: 8, user_cap_max: 5, result: true1700 is expected to eq true1701 .user_cap_max1702 is equal to new_user_signups_cap setting1703 #blocked_auto_created_oauth_ldap_user?1704 when the auto-creation of an omniauth user is blocked1705 when the user is an omniauth user1706 is true1707 when the user is not an omniauth user1708 is false1709 when the config for auto-creation of LDAP user is set1710 when it blocks the creation of a LDAP user1711 is expected to be truthy1712 when no provider is linked to the user1713 is expected to be falsey1714 when it does not block the creation of a LDAP user1715 is expected to be falsey1716 #has_valid_credit_card?1717 returns true when a credit card validation is present1718 returns false when a credit card validation is present, but the credit_card_validated_at attribute is blank1719 returns false when a credit card validation is missing1720 #privatized_by_abuse_automation?1721 when the user has a non private profile1722 returns false1723 when the user name is not ghost-:id-:id like1724 returns false1725 when the user name matches ghost-:id-:id1726 with extra chars at the beginning1727 returns false1728 with extra chars at the end1729 returns false1730 with extra chars at the beginning and the end1731 returns false1732 when the user has a private profile and the format is ghost-:id-:id1733 is expected to eq true1734 #activate_based_on_user_cap?1735 blocked_auto_created_omniauth: true, blocked_pending_approval: true, user_cap_max_present: true, result: false1736WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1737 is expected to eq false1738 blocked_auto_created_omniauth: false, blocked_pending_approval: true, user_cap_max_present: true, result: true1739WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1740 is expected to eq true1741 blocked_auto_created_omniauth: true, blocked_pending_approval: false, user_cap_max_present: true, result: false1742WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1743 is expected to eq false1744 blocked_auto_created_omniauth: false, blocked_pending_approval: false, user_cap_max_present: true, result: false1745WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1746 is expected to eq false1747 blocked_auto_created_omniauth: true, blocked_pending_approval: true, user_cap_max_present: false, result: false1748WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1749 is expected to eq false1750 blocked_auto_created_omniauth: false, blocked_pending_approval: true, user_cap_max_present: false, result: false1751WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1752 is expected to eq false1753 blocked_auto_created_omniauth: true, blocked_pending_approval: false, user_cap_max_present: false, result: false1754WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1755 is expected to eq false1756 blocked_auto_created_omniauth: false, blocked_pending_approval: false, user_cap_max_present: false, result: false1757WARNING: An expectation of `:present?` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/models/ee/user_spec.rb:2031:in `block (4 levels) in <top (required)>'.1758 is expected to eq false1759 .random_password1760 when password_complexity is not available1761 calls password_length once1762 when password_complexity is available1763 without any password complexity polices1764 behaves like validating with random_password1765 is valid1766 when number is required1767 is invalid1768 behaves like validating with random_password1769 is valid1770 when password complexity is required1771 behaves like validating with random_password1772 is valid1773SAST.latest.gitlab-ci.yml1774 the created pipeline1775 when project has no license1776 when SAST_DISABLED=11777 includes no jobs1778 when SAST_EXPERIMENTAL_FEATURES is disabled for iOS projects1779 includes no jobs1780 by default1781 language detection1782 #<RSpec::Parameterized::RefArg:0x00007f7e44b29728>1783 when branch pipeline1784 creates a pipeline with the expected jobs1785 when MR pipeline1786 creates a pipeline with the expected jobs1787 #<RSpec::Parameterized::RefArg:0x00007f7e44b294d0>1788 when branch pipeline1789 creates a pipeline with the expected jobs1790 when MR pipeline1791 creates a pipeline with the expected jobs1792 #<RSpec::Parameterized::RefArg:0x00007f7e44b29340>1793 when branch pipeline1794 creates a pipeline with the expected jobs1795 when MR pipeline1796 creates a pipeline with the expected jobs1797 #<RSpec::Parameterized::RefArg:0x00007f7e44b291b0>1798 when branch pipeline1799 creates a pipeline with the expected jobs1800 when MR pipeline1801 creates a pipeline with the expected jobs1802 #<RSpec::Parameterized::RefArg:0x00007f7e44b29020>1803 when branch pipeline1804 creates a pipeline with the expected jobs1805 when MR pipeline1806 creates a pipeline with the expected jobs1807 Apex1808 when branch pipeline1809 creates a pipeline with the expected jobs1810 when MR pipeline1811 creates a pipeline with the expected jobs1812 C1813 when branch pipeline1814 creates a pipeline with the expected jobs1815 when MR pipeline1816 creates a pipeline with the expected jobs1817 C++1818 when branch pipeline1819 creates a pipeline with the expected jobs1820 when MR pipeline1821 creates a pipeline with the expected jobs1822 C#1823 when branch pipeline1824 creates a pipeline with the expected jobs1825 when MR pipeline1826 creates a pipeline with the expected jobs1827 Elixir1828 when branch pipeline1829 creates a pipeline with the expected jobs1830 when MR pipeline1831 creates a pipeline with the expected jobs1832 Golang1833 when branch pipeline1834 creates a pipeline with the expected jobs1835 when MR pipeline1836 creates a pipeline with the expected jobs1837 Groovy1838 when branch pipeline1839 creates a pipeline with the expected jobs1840 when MR pipeline1841 creates a pipeline with the expected jobs1842 #<RSpec::Parameterized::RefArg:0x00007f7e44b284b8>1843 when branch pipeline1844 creates a pipeline with the expected jobs1845 when MR pipeline1846 creates a pipeline with the expected jobs1847 #<RSpec::Parameterized::RefArg:0x00007f7e44b28328>1848 when branch pipeline1849 creates a pipeline with the expected jobs1850 when MR pipeline1851 creates a pipeline with the expected jobs1852 Java1853 when branch pipeline1854 creates a pipeline with the expected jobs1855 when MR pipeline1856 creates a pipeline with the expected jobs1857 Java with MobSF1858 when branch pipeline1859 creates a pipeline with the expected jobs1860 when MR pipeline1861 creates a pipeline with the expected jobs1862 Java without MobSF1863 when branch pipeline1864 creates a pipeline with the expected jobs1865 when MR pipeline1866 creates a pipeline with the expected jobs1867 Javascript1868 when branch pipeline1869 creates a pipeline with the expected jobs1870 when MR pipeline1871 creates a pipeline with the expected jobs1872 JSX1873 when branch pipeline1874 creates a pipeline with the expected jobs1875 when MR pipeline1876 creates a pipeline with the expected jobs1877 Javascript Node1878 when branch pipeline1879 creates a pipeline with the expected jobs1880 when MR pipeline1881 creates a pipeline with the expected jobs1882 HTML1883 when branch pipeline1884 creates a pipeline with the expected jobs1885 when MR pipeline1886 creates a pipeline with the expected jobs1887 Kubernetes Manifests1888 when branch pipeline1889 creates a pipeline with the expected jobs1890 when MR pipeline1891 creates a pipeline with the expected jobs1892 Multiple languages1893 when branch pipeline1894 creates a pipeline with the expected jobs1895 when MR pipeline1896 creates a pipeline with the expected jobs1897 PHP1898 when branch pipeline1899 creates a pipeline with the expected jobs1900 when MR pipeline1901 creates a pipeline with the expected jobs1902 Python1903 when branch pipeline1904 creates a pipeline with the expected jobs1905 when MR pipeline1906 creates a pipeline with the expected jobs1907 Ruby1908 when branch pipeline1909 creates a pipeline with the expected jobs1910 when MR pipeline1911 creates a pipeline with the expected jobs1912 Scala1913 when branch pipeline1914 creates a pipeline with the expected jobs1915 when MR pipeline1916 creates a pipeline with the expected jobs1917 Typescript1918 when branch pipeline1919 creates a pipeline with the expected jobs1920 when MR pipeline1921 creates a pipeline with the expected jobs1922 Typescript JSX1923 when branch pipeline1924 creates a pipeline with the expected jobs1925 when MR pipeline1926 creates a pipeline with the expected jobs1927 Visual Basic1928 when branch pipeline1929 creates a pipeline with the expected jobs1930 when MR pipeline1931 creates a pipeline with the expected jobs1932Elastic::ProcessBookkeepingService1933 .shard_number1934 returns correct shard number1935 .track1936 enqueues a record1937 enqueues a set of unique records1938 orders items based on when they were added and moves them to the back of the queue if they were added again1939 enqueues 10 identical records as 1 entry1940 deduplicates across multiple inserts1941 .queue_size1942 reports the queue size1943 .queued_items1944 reports queued items1945 .clear_tracking!1946 removes all entries from the queue1947 .maintain_indexed_associations1948 calls track! for each associated object1949 correctly scopes associated note objects to not include system notes1950 #execute1951 submits a batch of documents1952 returns the number of documents processed1953 returns 0 without writing to the index when there are no documents1954 retries failed documents1955 discards malformed documents1956 fails, preserving documents, when processing fails with an exception1957 limit is less than refs count1958 processes only up to limit1959 N+1 queries1960 does not have N+1 queries for projects1961 does not have N+1 queries for notes1962 does not have N+1 queries for issues1963 does not have N+1 queries for merge_requests1964EnvironmentPolicy1965 #stop_environment1966 behaves like protected environments access1967 when Protected Environments feature is not available in the project1968 access_level: :guest, result: false1969 is expected to eq false1970 access_level: :reporter, result: false1971 is expected to eq false1972 access_level: :developer, result: true1973 is expected to eq true1974 access_level: :maintainer, result: true1975 is expected to eq true1976 access_level: :admin, result: true1977 is expected to eq true1978 when Protected Environments feature is available in the project1979 when environment is protected with project-level protection1980 behaves like authorize correctly per access type1981 when user does not have access to the environment1982 access_level: :guest, result: false1983 is expected to eq false1984 access_level: :reporter, result: false1985 is expected to eq false1986 access_level: :developer, result: false1987 is expected to eq false1988 access_level: :maintainer, result: false1989 is expected to eq false1990 access_level: :admin, result: true1991 is expected to eq true1992 when user has access to the environment1993 access_level: :reporter, result: false1994 is expected to eq false1995 access_level: :developer, result: true1996 is expected to eq true1997 access_level: :maintainer, result: true1998 is expected to eq true1999 access_level: :admin, result: true2000 is expected to eq true2001 when the user has access via a group2002 is expected to eq false2003 when environment is protected with group-level protection2004 behaves like authorize correctly per access type2005 when user does not have access to the environment2006 access_level: :guest, result: false2007 is expected to eq false2008 access_level: :reporter, result: false2009 is expected to eq false2010 access_level: :developer, result: false2011 is expected to eq false2012 access_level: :maintainer, result: false2013 is expected to eq false2014 access_level: :admin, result: true2015 is expected to eq true2016 when user has access to the environment2017 access_level: :reporter, result: false2018 is expected to eq false2019 access_level: :developer, result: true2020 is expected to eq true2021 access_level: :maintainer, result: true2022 is expected to eq true2023 access_level: :admin, result: true2024 is expected to eq true2025 when the user has access via a group2026 is expected to eq false2027 when environment is not protected2028 access_level: :guest, result: false2029 is expected to eq false2030 access_level: :reporter, result: false2031 is expected to eq false2032 access_level: :developer, result: true2033 is expected to eq true2034 access_level: :maintainer, result: true2035 is expected to eq true2036 access_level: :admin, result: true2037 is expected to eq true2038 #destroy_environment2039 behaves like protected environments access2040 when Protected Environments feature is not available in the project2041 access_level: :guest, result: false2042 is expected to eq false2043 access_level: :reporter, result: false2044 is expected to eq false2045 access_level: :developer, result: true2046 is expected to eq true2047 access_level: :maintainer, result: true2048 is expected to eq true2049 access_level: :admin, result: true2050 is expected to eq true2051 when Protected Environments feature is available in the project2052 when environment is protected with project-level protection2053 behaves like authorize correctly per access type2054 when user does not have access to the environment2055 access_level: :guest, result: false2056 is expected to eq false2057 access_level: :reporter, result: false2058 is expected to eq false2059 access_level: :developer, result: false2060 is expected to eq false2061 access_level: :maintainer, result: false2062 is expected to eq false2063 access_level: :admin, result: true2064 is expected to eq true2065 when user has access to the environment2066 access_level: :reporter, result: false2067 is expected to eq false2068 access_level: :developer, result: true2069 is expected to eq true2070 access_level: :maintainer, result: true2071 is expected to eq true2072 access_level: :admin, result: true2073 is expected to eq true2074 when the user has access via a group2075 is expected to eq false2076 when environment is protected with group-level protection2077 behaves like authorize correctly per access type2078 when user does not have access to the environment2079 access_level: :guest, result: false2080 is expected to eq false2081 access_level: :reporter, result: false2082 is expected to eq false2083 access_level: :developer, result: false2084 is expected to eq false2085 access_level: :maintainer, result: false2086 is expected to eq false2087 access_level: :admin, result: true2088 is expected to eq true2089 when user has access to the environment2090 access_level: :reporter, result: false2091 is expected to eq false2092 access_level: :developer, result: true2093 is expected to eq true2094 access_level: :maintainer, result: true2095 is expected to eq true2096 access_level: :admin, result: true2097 is expected to eq true2098 when the user has access via a group2099 is expected to eq false2100 when environment is not protected2101 access_level: :guest, result: false2102 is expected to eq false2103 access_level: :reporter, result: false2104 is expected to eq false2105 access_level: :developer, result: true2106 is expected to eq true2107 access_level: :maintainer, result: true2108 is expected to eq true2109 access_level: :admin, result: true2110 is expected to eq true2111 #create_environment_terminal2112 behaves like protected environments access2113 when Protected Environments feature is not available in the project2114 access_level: :guest, result: false2115 is expected to eq false2116 access_level: :reporter, result: false2117 is expected to eq false2118 access_level: :developer, result: false2119 is expected to eq false2120 access_level: :maintainer, result: true2121 is expected to eq true2122 access_level: :admin, result: true2123 is expected to eq true2124 when Protected Environments feature is available in the project2125 when environment is protected with project-level protection2126 behaves like authorize correctly per access type2127 when user does not have access to the environment2128 access_level: :guest, result: false2129 is expected to eq false2130 access_level: :reporter, result: false2131 is expected to eq false2132 access_level: :developer, result: false2133 is expected to eq false2134 access_level: :maintainer, result: false2135 is expected to eq false2136 access_level: :admin, result: true2137 is expected to eq true2138 when user has access to the environment2139 access_level: :reporter, result: false2140 is expected to eq false2141 access_level: :developer, result: false2142 is expected to eq false2143 access_level: :maintainer, result: true2144 is expected to eq true2145 access_level: :admin, result: true2146 is expected to eq true2147 when the user has access via a group2148 is expected to eq false2149 when environment is protected with group-level protection2150 behaves like authorize correctly per access type2151 when user does not have access to the environment2152 access_level: :guest, result: false2153 is expected to eq false2154 access_level: :reporter, result: false2155 is expected to eq false2156 access_level: :developer, result: false2157 is expected to eq false2158 access_level: :maintainer, result: false2159 is expected to eq false2160 access_level: :admin, result: true2161 is expected to eq true2162 when user has access to the environment2163 access_level: :reporter, result: false2164 is expected to eq false2165 access_level: :developer, result: false2166 is expected to eq false2167 access_level: :maintainer, result: true2168 is expected to eq true2169 access_level: :admin, result: true2170 is expected to eq true2171 when the user has access via a group2172 is expected to eq false2173 when environment is not protected2174 access_level: :guest, result: false2175 is expected to eq false2176 access_level: :reporter, result: false2177 is expected to eq false2178 access_level: :developer, result: false2179 is expected to eq false2180 access_level: :maintainer, result: true2181 is expected to eq true2182 access_level: :admin, result: true2183 is expected to eq true2184MergeRequestPolicy2185 for a merge request within the same project2186 when overwriting approvers is disabled on the project2187 does not allow anyone to update approvers2188 when overwriting approvers is enabled on the project2189 allows only project developers and above to update the approvers2190 allows project developers and above2191 to approve the merge request2192 for a merge request from a fork2193 when overwriting approvers is disabled on the target project2194 does not allow anyone to update approvers2195 when overwriting approvers is disabled on the source project2196 has no effect - project developers and above, as well as the author, can update the approvers2197 when overwriting approvers is enabled on the target project2198 allows project developers and above, as well as the author, to update the approvers2199 allows project developers and above2200 to approve the merge requests2201 for a merge request on a protected branch2202 when the reporter nor the group is added2203 is expected not to be allowed :approve_merge_request2204 when a group-level approval rule exists2205 when the merge request targets the protected branch2206 when the reporter is not a group member2207 is expected not to be allowed :approve_merge_request2208 when the reporter is a group member2209 is expected to be allowed :approve_merge_request2210 when the reporter has permission for a different protected branch2211 does not allow approval of the merge request2212 when the protected branch name is a wildcard2213 when the reporter has permission for the wildcarded branch2214 does allows approval of the merge request2215 when the reporter does not have permission for the wildcarded branch2216 does allows approval of the merge request2217 when checking for namespace whether exceeding storage limit2218 when namespace does exceeds storage limit2219 does not allow few policies for all users including maintainer2220 when namespace does not exceeds storage limit2221 does not lock basic policies for any user2222 provide_status_check_response2223 role: :guest, licensed: false, allowed: false2224 is expected to be disallowed :provide_status_check_response2225 role: :reporter, licensed: false, allowed: false2226 is expected to be disallowed :provide_status_check_response2227 role: :developer, licensed: false, allowed: false2228 is expected to be disallowed :provide_status_check_response2229 role: :maintainer, licensed: false, allowed: false2230 is expected to be disallowed :provide_status_check_response2231 role: :owner, licensed: false, allowed: false2232 is expected to be disallowed :provide_status_check_response2233 role: :admin, licensed: false, allowed: false2234 is expected to be disallowed :provide_status_check_response2235 role: :guest, licensed: true, allowed: false2236 is expected to be disallowed :provide_status_check_response2237 role: :reporter, licensed: true, allowed: false2238 is expected to be disallowed :provide_status_check_response2239 role: :developer, licensed: true, allowed: true2240 is expected to be allowed :provide_status_check_response2241 role: :maintainer, licensed: true, allowed: true2242 is expected to be allowed :provide_status_check_response2243 role: :owner, licensed: true, allowed: true2244 is expected to be allowed :provide_status_check_response2245 role: :admin, licensed: true, allowed: true2246 is expected to be allowed :provide_status_check_response2247 create_merge_request_approval_rules2248 coverage_license_enabled: false, report_approver_license_enabled: false, allowed: false2249 is expected to be disallowed :create_merge_request_approval_rules2250 coverage_license_enabled: true, report_approver_license_enabled: true, allowed: true2251 is expected to be allowed :create_merge_request_approval_rules2252 coverage_license_enabled: false, report_approver_license_enabled: true, allowed: true2253 is expected to be allowed :create_merge_request_approval_rules2254 coverage_license_enabled: true, report_approver_license_enabled: false, allowed: true2255 is expected to be allowed :create_merge_request_approval_rules2256GitlabSubscription2257 is expected to delegate #exclude_guests? to the #namespace object2258 default values2259 defaults start_date to the current date2260 validations2261 is expected to validate that :seats cannot be empty/falsy2262 is expected to validate that :start_date cannot be empty/falsy2263 is expected to validate that :namespace_id is case-sensitively unique2264 associations2265 is expected to belong to namespace required: false2266 is expected to belong to hosted_plan required: false2267 scopes2268 .with_hosted_plan2269 scopes to the plan2270 #calculate_seats_in_use2271 returns count of members2272 also counts users from subgroups2273 does not count duplicated members2274 does not count blocked members2275 with free_user_cap2276 does not count awaiting members2277 with guest members2278 with a ultimate plan2279 excludes these members2280 with other plans2281 excludes these members2282 excludes these members2283 when subscription is for a User2284 always returns 1 seat2285 #calculate_seats_owed2286 with a free plan2287 does not update max_seats_used2288 with a trial plan2289 does not update max_seats_used2290 with a paid plan2291 calculates the number of owed seats2292 #seats_remaining2293 when there are more seats used than available in the subscription2294 returns zero2295 when seats used equals seats in subscription2296 returns zero2297 when there are seats left in the subscription2298 returns the seat count remaining from the max seats used2299 when max seat data has not yet been generated for the subscription2300 returns the seat count of the subscription2301 #refresh_seat_attributes!2302 when current seats in use is lower than recorded max_seats_used2303 does not increase max_seats_used2304 when current seats in use is higher than seats and max_seats_used2305 increases seats and max_seats_used2306 #seats_in_use2307 with a paid hosted plan2308 returns the previously calculated seats in use2309 when seats in use is 02310 returns 0 too2311 with a trial plan2312 returns the current seats in use2313 behaves like a disabled feature2314 when feature flag is disabled2315 returns the previously calculated seats in use2316 with a free plan2317 returns the current seats in use2318 behaves like a disabled feature2319 when feature flag is disabled2320 returns the previously calculated seats in use2321 #expired?2322 when end_date is expired2323 is expected to equal true2324 when end_date is not expired2325 is expected to equal false2326 when end_date is nil2327 is expected to equal false2328 #has_a_paid_hosted_plan?2329 plan_name: "bronze", seats: 0, result: false2330 returns true if subscription has a paid hosted plan2331 plan_name: "bronze", seats: 1, result: true2332 returns true if subscription has a paid hosted plan2333 plan_name: "premium", seats: 1, result: true2334 returns true if subscription has a paid hosted plan2335 #upgradable?2336 behaves like upgradable lower plan2337 has_a_paid_hosted_plan: false, expired: false, result: false2338 returns true if subscription is upgradable2339 has_a_paid_hosted_plan: true, expired: false, result: true2340 returns true if subscription is upgradable2341 has_a_paid_hosted_plan: true, expired: true, result: false2342 returns true if subscription is upgradable2343 has_a_paid_hosted_plan: false, expired: true, result: false2344 returns true if subscription is upgradable2345 behaves like upgradable lower plan2346 has_a_paid_hosted_plan: false, expired: false, result: false2347 returns true if subscription is upgradable2348 has_a_paid_hosted_plan: true, expired: false, result: true2349 returns true if subscription is upgradable2350 has_a_paid_hosted_plan: true, expired: true, result: false2351 returns true if subscription is upgradable2352 has_a_paid_hosted_plan: false, expired: true, result: false2353 returns true if subscription is upgradable2354 behaves like upgradable lower plan2355 has_a_paid_hosted_plan: false, expired: false, result: false2356 returns true if subscription is upgradable2357 has_a_paid_hosted_plan: true, expired: false, result: true2358 returns true if subscription is upgradable2359 has_a_paid_hosted_plan: true, expired: true, result: false2360 returns true if subscription is upgradable2361 has_a_paid_hosted_plan: false, expired: true, result: false2362 returns true if subscription is upgradable2363 behaves like upgradable lower plan2364 has_a_paid_hosted_plan: false, expired: false, result: false2365 returns true if subscription is upgradable2366 has_a_paid_hosted_plan: true, expired: false, result: true2367 returns true if subscription is upgradable2368 has_a_paid_hosted_plan: true, expired: true, result: false2369 returns true if subscription is upgradable2370 has_a_paid_hosted_plan: false, expired: true, result: false2371 returns true if subscription is upgradable2372 behaves like upgradable lower plan2373 has_a_paid_hosted_plan: false, expired: false, result: false2374 returns true if subscription is upgradable2375 has_a_paid_hosted_plan: true, expired: false, result: true2376 returns true if subscription is upgradable2377 has_a_paid_hosted_plan: true, expired: true, result: false2378 returns true if subscription is upgradable2379 has_a_paid_hosted_plan: false, expired: true, result: false2380 returns true if subscription is upgradable2381 behaves like upgradable lower plan2382 has_a_paid_hosted_plan: false, expired: false, result: false2383 returns true if subscription is upgradable2384 has_a_paid_hosted_plan: true, expired: false, result: true2385 returns true if subscription is upgradable2386 has_a_paid_hosted_plan: true, expired: true, result: false2387 returns true if subscription is upgradable2388 has_a_paid_hosted_plan: false, expired: true, result: false2389 returns true if subscription is upgradable2390 behaves like upgradable lower plan2391 has_a_paid_hosted_plan: false, expired: false, result: false2392 returns true if subscription is upgradable2393 has_a_paid_hosted_plan: true, expired: false, result: true2394 returns true if subscription is upgradable2395 has_a_paid_hosted_plan: true, expired: true, result: false2396 returns true if subscription is upgradable2397 has_a_paid_hosted_plan: false, expired: true, result: false2398 returns true if subscription is upgradable2399 behaves like top plan2400 has_a_paid_hosted_plan: false, expired: false2401 returns false2402 has_a_paid_hosted_plan: true, expired: false2403 returns false2404 has_a_paid_hosted_plan: true, expired: true2405 returns false2406 has_a_paid_hosted_plan: false, expired: true2407 returns false2408 behaves like top plan2409 has_a_paid_hosted_plan: false, expired: false2410 returns false2411 has_a_paid_hosted_plan: true, expired: false2412 returns false2413 has_a_paid_hosted_plan: true, expired: true2414 returns false2415 has_a_paid_hosted_plan: false, expired: true2416 returns false2417 behaves like top plan2418 has_a_paid_hosted_plan: false, expired: false2419 returns false2420 has_a_paid_hosted_plan: true, expired: false2421 returns false2422 has_a_paid_hosted_plan: true, expired: true2423 returns false2424 has_a_paid_hosted_plan: false, expired: true2425 returns false2426 callbacks2427 has all attributes listed in the subscription history table2428 after_commit :index_namespace2429 indexes the namespace2430 when seats is 02431 does not index the namespace2432 when it is a trial2433 indexes the namespace2434 when seats is zero2435 indexes the namespace2436 when in free plan2437 does not index the namespace2438 when not ::Gitlab.com?2439 does not index the namespace2440 when the plan has expired2441 does not index the namespace2442 when it is a free plan2443 does not index the namespace2444 before_update2445 logs previous state to gitlab subscription history2446 when max_seats_used has changed2447 updates the max_seats_used_changed_at2448 when max_seats_used has not changed2449 does not change the max_seats_used_changed_at2450 when start and end dates change2451 when start_date is after the old end_date2452 resets seats attributes2453 when the end_date was nil2454 resets seats attributes2455 when start_date is not after the old end_date2456 does not reset seats attributes2457 when only one date is changed2458 does not reset seats attributes2459 when no dates are changed2460 does not reset seats attributes2461 after_destroy_commit2462 logs previous state to gitlab subscription history2463 after_save2464 when plan changes2465 with initial free plan2466 is a new free plan2467 changes from free plan to paid plan2468 when exclude_from_free_user_cap set to true2469 does not prevent sharing outside hierarchy2470 with :free_user_cap feature flag disabled2471 is a new free plan2472 changes from free plan to paid plan2473 with initial paid plan2474 is a new paid plan2475 changes from paid plan to free plan2476 changes from paid plan to paid plan with default setting2477 changes from paid plan to paid plan with non-default setting2478 with :free_user_cap feature flag disabled2479 is a new paid plan2480 changes from paid plan to free plan2481 .yield_long_expired_indexed_namespaces2482 yields ElasticsearchIndexedNamespace that belong to subscriptions that expired over a week ago2483 when in a trial2484 #trial_extended_or_reactivated?2485 trial_extension_type: nil, extended_or_reactivated: false2486 is expected to equal false2487 trial_extension_type: 1, extended_or_reactivated: true2488 is expected to equal true2489 trial_extension_type: 2, extended_or_reactivated: true2490 is expected to equal true2491 #trial_days_remaining2492 at the beginning of a trial2493 is expected to eq 302494 in the middle of a trial2495 is expected to eq 152496 at the end of a trial2497 is expected to eq 02498 #trial_duration2499 for a default trial duration2500 is expected to eq 302501 for a custom trial duration2502 is expected to eq 102503 #trial_days_used2504 at the beginning of a trial2505 is expected to eq 02506 in the middle of a trial2507 is expected to eq 152508 at the end of a trial2509 is expected to eq 302510 #trial_percentage_complete2511 at the beginning of a trial2512 is expected to eq 0.02513 in the middle of a trial2514 is expected to eq 50.02515 at the end of a trial2516 is expected to eq 100.02517 rounding2518 by default2519 rounds to 2 decimal places2520 with custom rounding options2521 rounds to the given number of decimal places2522 #legacy?2523 when a subscription was purchased before the EoA rollout date2524 is expected to be truthy2525 when a subscription was purchased on the EoA rollout date2526 is expected to be falsey2527 when a subscription was purchased after the EoA rollout date2528 is expected to be falsey2529SAST.gitlab-ci.yml2530 the created pipeline2531 when project has no license2532 when SAST_DISABLED=12533 includes no jobs2534 when SAST_EXPERIMENTAL_FEATURES is disabled for iOS projects2535 includes no jobs2536 by default2537 language detection2538 Android2539 creates a pipeline with the expected jobs2540 Android2541 creates a pipeline with the expected jobs2542 Android2543 creates a pipeline with the expected jobs2544 Android2545 creates a pipeline with the expected jobs2546 Android2547 creates a pipeline with the expected jobs2548 Apex2549 creates a pipeline with the expected jobs2550 C2551 creates a pipeline with the expected jobs2552 C++2553 creates a pipeline with the expected jobs2554 C#2555 creates a pipeline with the expected jobs2556 Elixir2557 creates a pipeline with the expected jobs2558 Golang2559 creates a pipeline with the expected jobs2560 Groovy2561 creates a pipeline with the expected jobs2562 iOS2563 creates a pipeline with the expected jobs2564 iOS2565 creates a pipeline with the expected jobs2566 Java2567 creates a pipeline with the expected jobs2568 Java with MobSF2569 creates a pipeline with the expected jobs2570 Java without MobSF2571 creates a pipeline with the expected jobs2572 Javascript2573 creates a pipeline with the expected jobs2574 JSX2575 creates a pipeline with the expected jobs2576 Javascript Node2577 creates a pipeline with the expected jobs2578 HTML2579 creates a pipeline with the expected jobs2580 Kubernetes Manifests2581 creates a pipeline with the expected jobs2582 Multiple languages2583 creates a pipeline with the expected jobs2584 PHP2585 creates a pipeline with the expected jobs2586 Python2587 creates a pipeline with the expected jobs2588 Ruby2589 creates a pipeline with the expected jobs2590 Scala2591 creates a pipeline with the expected jobs2592 Typescript2593 creates a pipeline with the expected jobs2594 Typescript JSX2595 creates a pipeline with the expected jobs2596 Visual Basic2597 creates a pipeline with the expected jobs2598 when setting image tag dynamically2599 security-code-scan-sast2600 creates a build with the expected tag2601 security-code-scan-sast2602 creates a build with the expected tag2603CI YML Templates2604 that support autodevops2605 template_name: "5-Minute-Production-App.gitlab-ci.yml"2606 are valid with default stages2607 require default stages to be included2608 template_name: "Android.gitlab-ci.yml"2609 are valid with default stages2610 require default stages to be included2611 template_name: "Android-Fastlane.gitlab-ci.yml"2612 are valid with default stages2613 require default stages to be included2614 template_name: "Auto-DevOps.gitlab-ci.yml"2615 are valid with default stages2616 require default stages to be included2617 template_name: "Bash.gitlab-ci.yml"2618 are valid with default stages2619 require default stages to be included2620 template_name: "C++.gitlab-ci.yml"2621 are valid with default stages2622 require default stages to be included2623 template_name: "Chef.gitlab-ci.yml"2624 are valid with default stages2625 require default stages to be included2626 template_name: "Clojure.gitlab-ci.yml"2627 are valid with default stages2628 require default stages to be included2629 template_name: "Code-Quality.gitlab-ci.yml"2630 are valid with default stages2631 require default stages to be included2632 template_name: "Composer.gitlab-ci.yml"2633 are valid with default stages2634 require default stages to be included2635 template_name: "Crystal.gitlab-ci.yml"2636 are valid with default stages2637 require default stages to be included2638 template_name: "Dart.gitlab-ci.yml"2639 are valid with default stages2640 require default stages to be included2641 template_name: "Deploy-ECS.gitlab-ci.yml"2642 are valid with default stages2643 require default stages to be included2644 template_name: "Django.gitlab-ci.yml"2645 are valid with default stages2646 require default stages to be included2647 template_name: "Docker.gitlab-ci.yml"2648 are valid with default stages2649 require default stages to be included2650 template_name: "Elixir.gitlab-ci.yml"2651 are valid with default stages2652 require default stages to be included2653 template_name: "Flutter.gitlab-ci.yml"2654 are valid with default stages2655 require default stages to be included2656 template_name: "Getting-Started.gitlab-ci.yml"2657 are valid with default stages2658 require default stages to be included2659 template_name: "Go.gitlab-ci.yml"2660 are valid with default stages2661 require default stages to be included2662 template_name: "Gradle.gitlab-ci.yml"2663 are valid with default stages2664 require default stages to be included2665 template_name: "Grails.gitlab-ci.yml"2666 are valid with default stages2667 require default stages to be included2668 template_name: "Indeni.Cloudrail.gitlab-ci.yml"2669 are valid with default stages2670 require default stages to be included2671 template_name: "Julia.gitlab-ci.yml"2672 are valid with default stages2673 require default stages to be included2674 template_name: "Kaniko.gitlab-ci.yml"2675 are valid with default stages2676 require default stages to be included2677 template_name: "LaTeX.gitlab-ci.yml"2678 are valid with default stages2679 require default stages to be included2680 template_name: "Laravel.gitlab-ci.yml"2681 are valid with default stages2682 require default stages to be included2683 template_name: "MATLAB.gitlab-ci.yml"2684 are valid with default stages2685 require default stages to be included2686 template_name: "Maven.gitlab-ci.yml"2687 are valid with default stages2688 require default stages to be included2689 template_name: "Mono.gitlab-ci.yml"2690 are valid with default stages2691 require default stages to be included2692 template_name: "Nodejs.gitlab-ci.yml"2693 are valid with default stages2694 require default stages to be included2695 template_name: "OpenShift.gitlab-ci.yml"2696 are valid with default stages2697 require default stages to be included2698 template_name: "PHP.gitlab-ci.yml"2699 are valid with default stages2700 require default stages to be included2701 template_name: "Packer.gitlab-ci.yml"2702 are valid with default stages2703 require default stages to be included2704 template_name: "Python.gitlab-ci.yml"2705 are valid with default stages2706 require default stages to be included2707 template_name: "Qualys-IaC-Security.gitlab-ci.yml"2708 are valid with default stages2709 require default stages to be included2710 template_name: "Ruby.gitlab-ci.yml"2711 are valid with default stages2712 require default stages to be included2713 template_name: "Rust.gitlab-ci.yml"2714 are valid with default stages2715 require default stages to be included2716 template_name: "Scala.gitlab-ci.yml"2717 are valid with default stages2718 require default stages to be included2719 template_name: "Swift.gitlab-ci.yml"2720 are valid with default stages2721 require default stages to be included2722 template_name: "Terraform.gitlab-ci.yml"2723 are valid with default stages2724 require default stages to be included2725 template_name: "dotNET.gitlab-ci.yml"2726 are valid with default stages2727 require default stages to be included2728 template_name: "dotNET-Core.gitlab-ci.yml"2729 are valid with default stages2730 require default stages to be included2731 template_name: "iOS-Fastlane.gitlab-ci.yml"2732 are valid with default stages2733 require default stages to be included2734 template_name: "liquibase.gitlab-ci.yml"2735 are valid with default stages2736 require default stages to be included2737 template_name: "npm.gitlab-ci.yml"2738 are valid with default stages2739 require default stages to be included2740 template_name: "Pages/Brunch.gitlab-ci.yml"2741 are valid with default stages2742 require default stages to be included2743 template_name: "Pages/Doxygen.gitlab-ci.yml"2744 are valid with default stages2745 require default stages to be included2746 template_name: "Pages/Gatsby.gitlab-ci.yml"2747 are valid with default stages2748 require default stages to be included2749 template_name: "Pages/HTML.gitlab-ci.yml"2750 are valid with default stages2751 require default stages to be included2752 template_name: "Pages/Harp.gitlab-ci.yml"2753 are valid with default stages2754 require default stages to be included2755 template_name: "Pages/Hexo.gitlab-ci.yml"2756 are valid with default stages2757 require default stages to be included2758 template_name: "Pages/Hugo.gitlab-ci.yml"2759 are valid with default stages2760 require default stages to be included2761 template_name: "Pages/Hyde.gitlab-ci.yml"2762 are valid with default stages2763 require default stages to be included2764 template_name: "Pages/JBake.gitlab-ci.yml"2765 are valid with default stages2766 require default stages to be included2767 template_name: "Pages/Jekyll.gitlab-ci.yml"2768 are valid with default stages2769 require default stages to be included2770 template_name: "Pages/Jigsaw.gitlab-ci.yml"2771 are valid with default stages2772 require default stages to be included2773 template_name: "Pages/Lektor.gitlab-ci.yml"2774 are valid with default stages2775 require default stages to be included2776 template_name: "Pages/Metalsmith.gitlab-ci.yml"2777 are valid with default stages2778 require default stages to be included2779 template_name: "Pages/Middleman.gitlab-ci.yml"2780 are valid with default stages2781 require default stages to be included2782 template_name: "Pages/Nanoc.gitlab-ci.yml"2783 are valid with default stages2784 require default stages to be included2785 template_name: "Pages/Octopress.gitlab-ci.yml"2786 are valid with default stages2787 require default stages to be included2788 template_name: "Pages/Pelican.gitlab-ci.yml"2789 are valid with default stages2790 require default stages to be included2791 template_name: "Pages/SwaggerUI.gitlab-ci.yml"2792 are valid with default stages2793 require default stages to be included2794 template_name: "Verify/Accessibility.gitlab-ci.yml"2795 are valid with default stages2796 require default stages to be included2797 template_name: "Verify/Browser-Performance.gitlab-ci.yml"2798 are valid with default stages2799 require default stages to be included2800 template_name: "Verify/FailFast.gitlab-ci.yml"2801 are valid with default stages2802 require default stages to be included2803 template_name: "Verify/Load-Performance-Testing.gitlab-ci.yml"2804 are valid with default stages2805 require default stages to be included2806 template_name: "Security/Container-Scanning.gitlab-ci.yml"2807 are valid with default stages2808 require default stages to be included2809 template_name: "Security/Coverage-Fuzzing.gitlab-ci.yml"2810 are valid with default stages2811 require default stages to be included2812 template_name: "Security/DAST-On-Demand-API-Scan.gitlab-ci.yml"2813 are valid with default stages2814 require default stages to be included2815 template_name: "Security/DAST-On-Demand-Scan.gitlab-ci.yml"2816 are valid with default stages2817 require default stages to be included2818 template_name: "Security/DAST-Runner-Validation.gitlab-ci.yml"2819 are valid with default stages2820 require default stages to be included2821 template_name: "Security/Dependency-Scanning.gitlab-ci.yml"2822 are valid with default stages2823 require default stages to be included2824 template_name: "Security/License-Scanning.gitlab-ci.yml"2825 are valid with default stages2826 require default stages to be included2827 template_name: "Security/SAST.gitlab-ci.yml"2828 are valid with default stages2829 require default stages to be included2830 template_name: "Security/SAST-IaC.gitlab-ci.yml"2831 are valid with default stages2832 require default stages to be included2833 template_name: "Security/Secret-Detection.gitlab-ci.yml"2834 are valid with default stages2835 require default stages to be included2836 template_name: "Security/Secure-Binaries.gitlab-ci.yml"2837 are valid with default stages2838 require default stages to be included2839 that do not support autodevops2840 when DAST API template2841 with default stages2842 is expected not to be valid2843 with defined stages2844 is expected to be valid2845 require default stages to be included2846 when API Fuzzing template2847 with default stages2848 is expected not to be valid2849 with defined stages2850 is expected to be valid2851 require default stages to be included2852Projects::UpdateService#execute2853 returns an error result when record cannot be updated2854 calls remove_import_data if mirror was disabled in previous change2855 shared runners2856 when shared runners are on2857 disables shared runners2858 when user has valid credit card2859 disables shared runners2860 when shared runners are off2861 when user has valid credit card2862 enables shared runners2863 when user does not have valid credit card2864 does not enable shared runners2865 repository mirror2866 sets mirror attributes2867 does not touch mirror_user_id for non-mirror changes2868 forbids non-admins from setting mirror_user_id explicitly2869 allows admins to set mirror_user_id2870 forces an import job2871 audit events2872 #name2873 when licensed2874 does not log audit event if operation fails2875 when operation succeeds2876 logs an audit event2877 logs the audit event info2878 when not licensed2879 does not log audit event2880 #path2881 when licensed2882 does not log audit event if operation fails2883 when operation succeeds2884 logs an audit event2885 logs the audit event info2886 when not licensed2887 does not log audit event2888 #default_branch2889 when licensed2890 does not log audit event if operation fails2891 when operation succeeds2892 logs an audit event2893 logs the audit event info2894 when not licensed2895 does not log audit event2896 #visibility2897 when licensed2898 does not log audit event if operation fails2899 when operation succeeds2900 logs an audit event2901 logs the audit event info2902 when not licensed2903 does not log audit event2904 triggering wiki Geo syncs2905 on a Geo primary2906 when enabling a wiki2907 creates a RepositoryUpdatedEvent2908 when we update project but not enabling a wiki2909 when the wiki is disabled2910 does not create a RepositoryUpdatedEvent2911 when the wiki was already enabled2912 does not create a RepositoryUpdatedEvent2913 not on a Geo node2914 does not create a RepositoryUpdatedEvent when enabling a wiki2915 repository_size_limit assignment as Bytes2916 when param present2917 converts from MB to Bytes2918 when param not present2919 assign nil value2920 when there are merge requests in merge train2921 when merge pipelines option is disabled2922 drops all merge request in the train2923 when merge pipelines option stays enabled2924 does not drop all merge request in the train2925 custom compliance frameworks2926 when current_user has :admin_compliance_framework ability2927 updates the framework2928 unassigns a framework from a project2929 when current_user does not have :admin_compliance_framework ability2930 does not set a framework2931 visibility changes2932 visibility_level: 20, new_visibility_level: 102933 sets `project_settings.legacy_open_source_license_available` to false2934 visibility_level: 20, new_visibility_level: 02935 sets `project_settings.legacy_open_source_license_available` to false2936 visibility_level: 10, new_visibility_level: 202937 sets `project_settings.legacy_open_source_license_available` to false2938 visibility_level: 10, new_visibility_level: 02939 sets `project_settings.legacy_open_source_license_available` to false2940 visibility_level: 0, new_visibility_level: 202941 sets `project_settings.legacy_open_source_license_available` to false2942 visibility_level: 0, new_visibility_level: 102943 sets `project_settings.legacy_open_source_license_available` to false2944MergeRequests::PushOptionsHandlerService2945 `assign` push option2946 behaves like with a new branch2947 adds an error to the service2948 behaves like a service that does not create a merge request2949 is expected not to change `MergeRequest.count`2950 behaves like when coupled with the `create` push option2951 behaves like a service that can create a merge request2952 creates a merge request with the correct target branch2953 when project has been forked2954 sets the correct source and target project2955 behaves like a service that can change assignees of a merge request2956 changes assignee count2957 behaves like with an existing branch but no open MR2958 adds an error to the service2959 behaves like a service that does not create a merge request2960 is expected not to change `MergeRequest.count`2961 behaves like when coupled with the `create` push option2962 behaves like a service that can create a merge request2963 creates a merge request with the correct target branch2964 when project has been forked2965 sets the correct source and target project2966 behaves like a service that can change assignees of a merge request2967 changes assignee count2968 behaves like with an existing branch that has a merge request open2969 behaves like a service that does not create a merge request2970 is expected not to change `MergeRequest.count`2971 behaves like a service that can change assignees of a merge request2972 changes assignee count2973 `unassign` push option2974 behaves like with a new branch2975 adds an error to the service2976 behaves like a service that does not create a merge request2977 is expected not to change `MergeRequest.count`2978 behaves like when coupled with the `create` push option2979 behaves like a service that can create a merge request2980 creates a merge request with the correct target branch2981 when project has been forked2982 sets the correct source and target project2983 behaves like a service that can change assignees of a merge request2984 changes assignee count2985 behaves like with an existing branch but no open MR2986 adds an error to the service2987 behaves like a service that does not create a merge request2988 is expected not to change `MergeRequest.count`2989 behaves like when coupled with the `create` push option2990 behaves like a service that can create a merge request2991 creates a merge request with the correct target branch2992 when project has been forked2993 sets the correct source and target project2994 behaves like a service that can change assignees of a merge request2995 changes assignee count2996 behaves like with an existing branch that has a merge request open2997 behaves like a service that does not create a merge request2998 is expected not to change `MergeRequest.count`2999 behaves like a service that can change assignees of a merge request3000 changes assignee count3001Gitlab::Elastic::BulkIndexer3002 #process3003 returns self3004 does not send a bulk request per call3005 sends the action and source in the same request3006 sends a bulk request before adding an item that exceeds the bulk limit3007 #flush3008 completes a bulk3009 fails documents that elasticsearch refuses to accept3010 fails all documents on exception3011 fails a document correctly on exception after adding an item that exceeded the bulk limit3012 indexing an issue3013 adds the issue to the index3014 reindexes an unchanged issue3015 reindexes a changed issue3016 deletes the issue from the index if DocumentShouldBeDeletedFromIndexException is raised3017 deleting an issue3018 removes the issue from the index3019 succeeds even if the issue is not present3020ApprovalRules::ParamsFilteringService3021 #execute3022 create3023 behaves like assigning_users_and_groups3024 user can update approvers3025 only assigns eligible users and groups3026 user cannot update approvers3027 deletes the approval_rules_attributes from params3028 empty project approval rule3029 adds empty rule3030 inapplicable user defined rules3031 when multiple_approval_rules feature is available3032 adds inapplicable user defined rules3033 when multiple_approval_rules feature is not available3034 does not add inapplicable user defined rules3035 any approver rule3036 sets rule type for the rules attributes3037 any approver rule from a project rule3038 and the project rule has hidden groups3039 sets rule type for the rules attributes3040 update3041 behaves like assigning_users_and_groups3042 user can update approvers3043 only assigns eligible users and groups3044 user cannot update approvers3045 deletes the approval_rules_attributes from params3046 inapplicable user defined rules3047 does not add inapplicable user defined rules3048 when reset_approval_rules_to_defaults is true3049 when multiple_approval_rules feature is available3050 adds inapplicable user defined rules3051 when multiple_approval_rules feature is not available3052 does not add inapplicable user defined rules3053 with remove_hidden_groups being true3054 behaves like assigning_users_and_groups3055 user can update approvers3056 only assigns eligible users and groups3057 user cannot update approvers3058 deletes the approval_rules_attributes from params3059Ci::Minutes::TrackLiveConsumptionService3060 #execute3061 when build is not running3062 behaves like returns early3063 returns an error response3064 when runner is not of instance type3065 behaves like returns early3066 returns an error response3067 when cost factor is not enabled for build3068 behaves like returns early3069 returns an error response3070 when namespace has unlimited minutes3071 behaves like returns early3072 returns an error response3073 when build has not been tracked recently3074 considers the current consumption as zero3075 when build has been tracked recently3076 behaves like limit not exceeded3077 does not drop the build3078 when current consumption exceeds the limit but not the grace period3079 behaves like limit not exceeded3080 does not drop the build3081 when current consumption exceeds the limit and the grace period3082 behaves like limit exceeded3083 drops the build3084 logs event3085 when namespace is on a trial hosted plan3086 behaves like limit exceeded3087 drops the build3088 logs event3089 when namespace is on a paid plan3090 behaves like limit exceeded3091 drops the build3092 logs event3093 #live_consumption3094 when build has not been tracked3095 is expected to be zero3096 when build has been tracked once3097 returns the consumption since last update3098 when build has been tracked multiple times3099 accumulates the consumption over different runs3100MergeRequestWidgetEntity3101 avoids N+1 queries3102 has vulnerability feedback paths3103 has can_read_vulnerability_feedback property3104 has discover project security path3105 has pipeline id3106 test report artifacts3107 json_entry: :browser_performance, artifact_type: :browser_performance, exposures: [:degradation_threshold, :head_path, :base_path]3108 when feature is available3109 with new report artifacts3110 has data entry3111 without artifacts3112 does not have data entry3113 json_entry: :browser_performance, artifact_type: :performance, exposures: [:degradation_threshold, :head_path, :base_path]3114 when feature is available3115 with new report artifacts3116 has data entry3117 without artifacts3118 does not have data entry3119 json_entry: :load_performance, artifact_type: :load_performance, exposures: [:head_path, :base_path]3120 when feature is available3121 with new report artifacts3122 has data entry3123 without artifacts3124 does not have data entry3125 degradation_threshold3126 with browser_performance artifact3127 when head pipeline's browser performance build has the threshold variable defined3128 returns the value of the variable3129 when head pipeline's browser performance build has no threshold variable defined3130 returns nil3131 with performance artifact3132 when head pipeline's browser performance build has the threshold variable defined3133 returns the value of the variable3134 when head pipeline's browser performance build has no threshold variable defined3135 returns nil3136 #license_scanning3137 when report artifact is defined3138 is included3139 #settings_path should not be included for developers3140 when feature is not licensed3141 is not included3142 when user is maintainer3143 #settings_path should be included for maintainers3144 when a report artifact is produced from a forked project3145 is expected to include :license_scanning3146 #managed_licenses_path3147 is a path for target project3148 with fork3149 is a path for target project3150 #can_read_vulnerabilities3151 when security dashboard feature is available3152 is set to true3153 when security dashboard feature is not available3154 is set to false3155 #can_read_vulnerability_feedback3156 when user has permissions to read vulnerability feedback3157 is set to true3158 when user has no permissions to read vulnerability feedback3159 is set to false3160 blocking merge requests3161 feature disabled3162 does not have the blocking_merge_requests member3163 feature enabled3164 shows the blocking merge request if visible3165 hides the blocking merge request if not visible3166 does not count a merged and hidden blocking MR3167Geo::DesignRepositorySyncService3168 behaves like geo base sync execution3169 #execute3170 when can acquire exclusive lease3171 executes the synchronization3172 when exclusive lease is not acquired3173 is does not execute synchronization3174 behaves like geo base sync fetch3175 #sync_repository3176 tells registry that sync will start now3177 #fetch_repository3178 cleans up temporary repository3179 syncs the HEAD ref3180 with existing repository3181 fetches repository from geo node3182 with a never synced repository3183 clones repository from geo node3184 #execute3185 returns the lease when succeed3186 returns the lease when sync fail3187 does not fetch project repository if cannot obtain a lease3188 voids the failure message when it succeeds after an error3189 execute repository cache expiration3190 with existing repository3191 fetches project repository with JWT credentials3192 rescues when Gitlab::Shell::Error is raised3193 rescues exception when Gitlab::Git::Repository::NoRepository is raised3194 increases retry count when Gitlab::Git::Repository::NoRepository is raised3195 marks sync as successful if no repository found3196 marks resync as true after a failure3197 with a never synced repository3198 clones project repository with JWT credentials3199 behaves like sync retries use the snapshot RPC3200 snapshot synchronization method3201 does not attempt to snapshot for initial sync3202 does not attempt to snapshot for ordinary retries3203 registry is ready to be snapshotted3204 attempts to snapshot3205 attempts to clone if snapshotting raises an exception3206 #expire_repository_caches3207 expires repository caches3208 race condition when RepositoryUpdatedEvent was processed during a sync3209 reschedules the sync3210 when the repository is redownloaded3211 with geo_use_clone_on_first_sync flag disabled3212 creates a new repository and fetches with JWT credentials3213 cleans temporary repo after redownload3214 with geo_use_clone_on_first_sync flag enabled3215 clones a new repository with JWT credentials3216 cleans temporary repo after redownload3217EE::NamespacesHelper3218 #ci_minutes_progress_bar3219 shows a green bar if percent is 03220 shows a green bar if percent is lower than 703221 shows a yellow bar if percent is 703222 shows a yellow bar if percent is higher than 70 and lower than 953223 shows a red bar if percent is 953224 shows a red bar if percent is higher than 100 and caps the value to 1003225 #ci_minutes_report3226 rendering monthly minutes report3227 when ci minutes usage is not enabled3228 and the namespace is eligible for unlimited3229 returns Unlimited for the limit section3230 and the namespace is not eligible for unlimited3231 returns Not supported for the limit section3232 when it's limited3233 returns the proper values for used and limit sections3234 rendering purchased minutes report3235 when extra minutes are assigned3236 when minutes used is higher than monthly minutes limit3237 returns the proper values for used and limit sections3238 when minutes used is lower than monthly minutes limit3239 returns the proper values for used and limit sections3240 when extra minutes are not assigned3241 returns the proper values for used and limit sections3242 #temporary_storage_increase_visible?3243 when enforce_namespace_storage_limit setting enabled3244 when current_user is admin of namespace3245 is expected to eq true3246 when feature flag is disabled3247 is expected to eq false3248 when current_user is not the admin of namespace3249 is expected to eq false3250 when enforce_namespace_storage_limit setting disabled3251 when current_user is admin of namespace3252 is expected to eq false3253 #buy_additional_minutes_path3254 is expected to eq "/-/subscriptions/buy_minutes?selected_group=1001"3255 when called for a personal namespace3256 returns the default purchase3257 when called from a subgroup3258 returns the selected group id as the parent group3259 #buy_storage_path3260 is expected to eq "/-/subscriptions/buy_storage?selected_group=1004"3261 when called from a subgroup3262 returns the buy URL with the parent group id3263 when called for a personal namespace3264 returns the default purchase3265 #buy_storage_url3266 is expected to eq "http://test.host/-/subscriptions/buy_storage?selected_group=1007"3267 when called from a subgroup3268 returns the buy URL with the parent group id3269 when called for a personal namespace3270 returns the default purchase3271 #buy_addon_target_attr3272 is expected to eq "_self"3273 when called for a personal namespace3274 returns _blank3275 #show_minute_limit_banner?3276 on dot com3277 feature_flag_enabled: true, has_guest_access: true, free_plan: true, user_dismissed_banner: false, should_show_banner: true3278 shows the banner if required3279 feature_flag_enabled: false, has_guest_access: true, free_plan: true, user_dismissed_banner: true, should_show_banner: false3280 shows the banner if required3281 feature_flag_enabled: false, has_guest_access: false, free_plan: true, user_dismissed_banner: true, should_show_banner: false3282 shows the banner if required3283 feature_flag_enabled: false, has_guest_access: false, free_plan: false, user_dismissed_banner: true, should_show_banner: false3284 shows the banner if required3285 feature_flag_enabled: false, has_guest_access: false, free_plan: false, user_dismissed_banner: false, should_show_banner: false3286 shows the banner if required3287 feature_flag_enabled: false, has_guest_access: true, free_plan: false, user_dismissed_banner: true, should_show_banner: false3288 shows the banner if required3289 feature_flag_enabled: false, has_guest_access: false, free_plan: false, user_dismissed_banner: true, should_show_banner: false3290 shows the banner if required3291 feature_flag_enabled: true, has_guest_access: true, free_plan: true, user_dismissed_banner: true, should_show_banner: false3292 shows the banner if required3293 feature_flag_enabled: true, has_guest_access: true, free_plan: false, user_dismissed_banner: false, should_show_banner: false3294 shows the banner if required3295 feature_flag_enabled: true, has_guest_access: false, free_plan: false, user_dismissed_banner: false, should_show_banner: false3296 shows the banner if required3297 feature_flag_enabled: true, has_guest_access: true, free_plan: false, user_dismissed_banner: true, should_show_banner: false3298 shows the banner if required3299 feature_flag_enabled: true, has_guest_access: false, free_plan: false, user_dismissed_banner: true, should_show_banner: false3300 shows the banner if required3301 not dot com3302 when feature flag is enabled for a free project and user has not dismissed callout3303 does not show banner3304 #pipeline_usage_app_data3305 when gitlab sass3306 with reset_date present3307 behaves like returns a hash with proper SaaS data3308 matches the returned hash3309 with reset_date not present3310 behaves like returns a hash with proper SaaS data3311 matches the returned hash3312 when gitlab self managed3313 returns a hash without SaaS data3314 #storage_usage_app_data3315 when purchase_storage_link_enabled? is true3316 returns a hash with storage data3317 when purchase_storage_link_enabled? is false3318 returns a hash with storage data3319MergeRequests::ApprovalService3320 #execute3321 with invalid approval3322 does not create an approval note3323 does not mark pending todos as done3324 with valid approval3325 creates an approval note3326 marks pending todos as done3327 resets the cache for approvals3328 creates approve MR event3329 sends the audit streaming event3330 with remaining approvals3331 fires an approval webhook3332 does not send an email3333 with required approvals3334 fires an approved webhook3335 sends an email3336 approvals metrics calculation3337 when code_review_analytics project feature is available3338 schedules RefreshApprovalsData3339 when code_review_analytics is not available3340 does not schedule for RefreshApprovalsData3341 when project requires force auth for approval3342 when password not specified3343 does not update the approvals3344 when incorrect password is specified3345 does not update the approvals3346 when correct password is specified3347 approves the merge request3348DashboardOperationsProjectEntity3349 the project supports the ops dashboard3350 has all required fields3351 does not have optional fields3352 when there is a pipeline3353 has the last pipeline field3354 when there is an upstream status3355 has the triggered_by pipeline field3356 when there is a downstream status3357 has the triggered pipeline field3358 when there are multiple downstream statuses3359 has the downstream pipeline field3360 when there are both an upstream and downstream pipelines3361 has the upstream pipeline field3362 has the downstream pipeline field3363 the project does not support the ops dashboard3364 has the expected fields3365 the user has permission to upgrade plan3366 shows the profile upgrade path3367 the user has permission to upgrade group3368 shows the group upgrade path3369StatusPage::MarkForPublicationService3370 #execute3371 when license is not available3372 behaves like does not track the incident3373 is expected not to change `::StatusPage::PublishedIncident.count`3374 is expected not to change `issue.notes.count`3375 returns the exepected error state3376 when status page does not exist3377 behaves like does not track the incident3378 is expected not to change `::StatusPage::PublishedIncident.count`3379 is expected not to change `issue.notes.count`3380 returns the exepected error state3381 when status page is disabled3382 behaves like does not track the incident3383 is expected not to change `::StatusPage::PublishedIncident.count`3384 is expected not to change `issue.notes.count`3385 returns the exepected error state3386 when status page is enabled3387 when issue is publishable3388 is expected to change `::StatusPage::PublishedIncident.count` by 13389 is expected to change `issue.notes.count` by 13390 is expected to be success3391 increments the publish counter3392 when issue is confidential3393 behaves like does not track the incident3394 is expected not to change `::StatusPage::PublishedIncident.count`3395 is expected not to change `issue.notes.count`3396 returns the exepected error state3397 when issue is already published3398 behaves like does not track the incident3399 is expected not to change `::StatusPage::PublishedIncident.count`3400 is expected not to change `issue.notes.count`3401 returns the exepected error state3402 when user is not logged in3403 behaves like does not track the incident3404 is expected not to change `::StatusPage::PublishedIncident.count`3405 is expected not to change `issue.notes.count`3406 returns the exepected error state3407 when user does not have permissions3408 behaves like does not track the incident3409 is expected not to change `::StatusPage::PublishedIncident.count`3410 is expected not to change `issue.notes.count`3411 returns the exepected error state3412 when an error occurs3413 is expected not to change `::StatusPage::PublishedIncident.count`3414 is expected not to change `issue.notes.count`3415 returns the exepected error state and reports the error to sentry3416List3417 relationships3418 is expected to belong to user required: false3419 is expected to belong to milestone required: false3420 is expected to belong to iteration required: false3421 validations3422 is expected to validate that :max_issue_count looks like an integer greater than or equal to 03423 is expected to validate that :max_issue_weight looks like an integer greater than or equal to 03424 is expected to validate that :limit_metric is either ‹nil›, ‹"all_metrics"›, ‹"issue_count"›, or ‹"issue_weights"›3425 when it is an assignee type3426 is expected to be destroyable3427 is expected to be movable3428 validations3429 is expected to validate that :user cannot be empty/falsy3430 #title3431 returns the username as title3432 when it is a milestone type3433 is expected to be destroyable3434 is expected to be movable3435 validations3436 is expected to validate that :milestone cannot be empty/falsy3437 is invalid when feature is not available3438 #title3439 returns the milestone title3440 when it is an iteration type3441 is expected to be destroyable3442 is expected to be movable3443 validations3444 is expected to validate that :iteration cannot be empty/falsy3445 is invalid when feature is not available3446 #title3447 returns the iteration cadence and period as title3448 #wip_limits_available?3449 with enabled wip_limits3450 returns the expected values3451 with disabled wip_limits3452 returns the expected values3453Gitlab::Geo::LogCursor::Events::RepositoryUpdatedEvent3454 #process3455 when the associated shard is healthy3456 schedules a Geo::ProjectSyncWorker3457 behaves like RepositoryUpdatedEvent3458 creates a new project registry if it does not exist3459 when outside selective sync3460 does not create a new project registry3461 when we have an event source3462 when event source is a repository3463 sets resync_repository to true3464 resets the repository verification fields3465 sets resync_repository_was_scheduled_at to the scheduled time3466 when the event source is a wiki3467 sets resync_wiki to true3468 resets the wiki repository verification fields3469 sets resync_wiki_was_scheduled_at to the scheduled time3470 enqueues the job with the proper args3471 enqueues wiki sync3472 passes correct options3473 enqueues repository sync3474 passes correct options3475 behaves like logs event source info3476 logs `job_id` and `event_id3477 when associated shard is unhealthy3478 does not schedule a Geo::ProjectSyncWorker job3479 behaves like RepositoryUpdatedEvent3480 creates a new project registry if it does not exist3481 when outside selective sync3482 does not create a new project registry3483 when we have an event source3484 when event source is a repository3485 sets resync_repository to true3486 resets the repository verification fields3487 sets resync_repository_was_scheduled_at to the scheduled time3488 when the event source is a wiki3489 sets resync_wiki to true3490 resets the wiki repository verification fields3491 sets resync_wiki_was_scheduled_at to the scheduled time3492Gitlab::Ci::Reports::Security::Finding3493 #initialize3494 when both all params are given3495 initializes an instance3496 when attribute compare_key is missing3497 raises an error3498 when attribute identifiers is missing3499 raises an error3500 when attribute location is missing3501 raises an error3502 when attribute metadata_version is missing3503 raises an error3504 when attribute name is missing3505 raises an error3506 when attribute original_data is missing3507 raises an error3508 when attribute report_type is missing3509 raises an error3510 when attribute scanner is missing3511 raises an error3512 when attribute uuid is missing3513 raises an error3514 delegation3515 delegates attribute file_path to location3516 delegates attribute start_line to location3517 delegates attribute end_line to location3518 #to_hash3519 returns expected hash3520 #primary_identifier3521 returns the first identifier3522 #update_location3523 assigns the new location and returns it3524 assigns the old location3525 #unsafe?3526 severity: "critical", levels: ["critical", "high"], report_types: ["dast"], unsafe?: true3527 is expected to equal true3528 severity: "high", levels: ["critical", "high"], report_types: ["dast", "sast"], unsafe?: true3529 is expected to equal true3530 severity: "high", levels: ["critical", "high"], report_types: ["container_scanning"], unsafe?: false3531 is expected to equal false3532 severity: "medium", levels: ["critical", "high"], report_types: ["dast"], unsafe?: false3533 is expected to equal false3534 severity: "low", levels: ["critical", "high"], report_types: ["dast"], unsafe?: false3535 is expected to equal false3536 severity: "info", levels: ["critical", "high"], report_types: ["dast"], unsafe?: false3537 is expected to equal false3538 severity: "unknown", levels: [], report_types: ["dast"], unsafe?: false3539 is expected to equal false3540 #eql?3541 vulnerability_finding_signatures_enabled: true3542 when the primary_identifier is nil3543 does not raise an exception3544 when the other finding has same `report_type`3545 when the other finding has same primary identifier fingerprint3546 when the other finding has same location signature3547 is expected to equal true3548 when the other finding does not have same location signature3549 is expected to equal false3550 when the other finding does not have same primary identifier fingerprint3551 when the other finding has same location signature3552 is expected to equal false3553 when the other finding does not have same location signature3554 is expected to equal false3555 when the other finding does not have same `report_type`3556 when the other finding has same primary identifier fingerprint3557 when the other finding has same location signature3558 is expected to equal false3559 when the other finding does not have same location signature3560 is expected to equal false3561 when the other finding does not have same primary identifier fingerprint3562 when the other finding has same location signature3563 is expected to equal false3564 when the other finding does not have same location signature3565 is expected to equal false3566 vulnerability_finding_signatures_enabled: false3567 when the primary_identifier is nil3568 does not raise an exception3569 when the other finding has same `report_type`3570 when the other finding has same primary identifier fingerprint3571 when the other finding has same location signature3572 is expected to equal true3573 when the other finding does not have same location signature3574 is expected to equal false3575 when the other finding does not have same primary identifier fingerprint3576 when the other finding has same location signature3577 is expected to equal false3578 when the other finding does not have same location signature3579 is expected to equal false3580 when the other finding does not have same `report_type`3581 when the other finding has same primary identifier fingerprint3582 when the other finding has same location signature3583 is expected to equal false3584 when the other finding does not have same location signature3585 is expected to equal false3586 when the other finding does not have same primary identifier fingerprint3587 when the other finding has same location signature3588 is expected to equal false3589 when the other finding does not have same location signature3590 is expected to equal false3591 #valid?3592 when the scanner is missing3593 is expected to be falsey3594 when there is no identifier3595 is expected to be falsey3596 when the location is missing3597 is expected to be falsey3598 when the uuid is missing3599 is expected to be falsey3600 when all required attributes present3601 is expected to be truthy3602 #keys3603 is expected to contain exactly "cc8d7d8e-1e64-5cbb-800f-5d79e9cdfcb9", #<Gitlab::Ci::Reports::Security::FindingKey:0x00007f7e3a209008 @location_fingerprint="8e509ac62752a3d9330f31e89a000c95b942e73c", @identifier_fingerprint="5848739446034d982ef7beece3bb19bff4044ffb">, #<Gitlab::Ci::Reports::Security::FindingKey:0x00007f7e3a202e10 @location_fingerprint="8e509ac62752a3d9330f31e89a000c95b942e73c", @identifier_fingerprint="5848739446034d982ef7beece3bb19bff4044ffb">, #<Gitlab::Ci::Reports::Security::FindingKey:0x00007f7e3a200cf0 @location_fingerprint="f32b67c7e26342af42efabc674d441dca0a281c5", @identifier_fingerprint="5848739446034d982ef7beece3bb19bff4044ffb">, and #<Gitlab::Ci::Reports::Security::FindingKey:0x00007f7e3a1fab70 @location_fingerprint="f32b67c7e26342af42efabc674d441dca0a281c5", @identifier_fingerprint="5848739446034d982ef7beece3bb19bff4044ffb">3604 #hash3605 with vulnerability_finding_signatures enabled3606 returns the expected hash with no signatures3607 returns the expected hash with signatures3608 without vulnerability_finding_signatures enabled3609 returns the expected hash3610 #scanner_order_to3611 when the scanner of the receiver is nil3612 when the scanner of the other is nil3613 is expected to equal 13614 when the scanner of the other is not nil3615 is expected to equal 13616 when the scanner of the receiver is not nil3617 when the scanner of the other is nil3618 is expected to equal -13619 when the scanner of the other is not nil3620 compares two scanners3621 #<=>3622 is expected to eq [#<Gitlab::Ci::Reports::Security::Finding:0x00007f7e36f2bc30 @compare_key="a", @confidence=:medium, @..._finding_signatures_enabled=false, @project_fingerprint="2022699924e21aad89e1df0a59c227aa6e9234fe">]3623 #location_fingerprint3624 when the signatures feature is enabled3625 when the signatures are empty3626 is expected to eq "8e509ac62752a3d9330f31e89a000c95b942e73c"3627 when the signatures are not empty3628 is expected to eq "43f7aa390f1a0265fc2de7010133951c0718a67e"3629 when the signatures feature is not enabled3630 when the signatures are empty3631 is expected to eq "8e509ac62752a3d9330f31e89a000c95b942e73c"3632 when the signatures are not empty3633 is expected to eq "8e509ac62752a3d9330f31e89a000c95b942e73c"3634Geo::TerraformStateVersionRegistryFinder3635 behaves like a framework registry finder3636 #execute3637 when user cannot read all Geo3638 is expected to be empty3639 when user can read all Geo3640 when admin mode is disabled3641 is expected to be empty3642 when admin mode is enabled3643 with an ids param3644 returns specified registries3645 without an ids param3646 returns all registries3647Ci::PipelinePresenter3648 #failure_reason3649 when pipeline has failure reason3650 represents a failure reason sentence3651 when pipeline does not have failure reason3652 returns nil3653 #expose_security_dashboard?3654 with developer3655 when features are available3656 calls latest_report_artifacts once3657 when there is an artifact of a right type3658 is expected to be truthy3659 when there is an artifact of a wrong type3660 is expected to be falsey3661 when there is no found artifact3662 is expected to be falsey3663 when all features are available3664 does not increase the number of queries3665 calls latest_report_artifacts once3666 when features are disabled3667 when there is an artifact of a right type3668 is expected to be falsey3669 with reporter3670 is expected to be falsey3671 #downloadable_path_for_report_type3672 with browser_performance artifact3673 when feature is available3674 returns the downloadable path3675 when feature is not available3676 doesn't return the downloadable path3677 when user is not authorized3678 doesn't return the downloadable path3679 with load_performance artifact3680 when feature is available3681 returns the downloadable path3682 when feature is not available3683 doesn't return the downloadable path3684 when user is not authorized3685 doesn't return the downloadable path3686 with license_scanning artifact3687 when feature is available3688 returns the downloadable path3689 when feature is not available3690 doesn't return the downloadable path3691 when user is not authorized3692 doesn't return the downloadable path3693 #degradation_threshold3694 when feature is available3695 returns the degradation threshold3696 when feature is not available3697 doesn't return the degradation threshold3698 when user is not authorized3699 doesn't return the degradation threshold3700 #retryable?3701 with pipeline for merge train3702 is expected to equal false3703 with branch pipeline3704 is expected to equal true3705StatusPage::TriggerPublishService3706 #execute3707 invalid action3708 raises an argument error and does not process3709 triggered by issue3710 changes: {:weight=>23}, shared_example_name: "no trigger status page publish"3711 does not trigger status page publish service3712 changes: {:title=>"changed"}, shared_example_name: "trigger status page publish"3713 triggers status page publish3714 changes: {:description=>"changed"}, shared_example_name: "trigger status page publish"3715 triggers status page publish3716 changes: {:confidential=>true}, shared_example_name: "trigger status page publish"3717 triggers status page publish3718 without changes3719 does not trigger status page publish service3720 with init action3721 triggers status page publish3722 when a confidential issue changes3723 does not trigger status page publish service3724 when a non-published issue changes3725 does not trigger status page publish service3726 when closing an issue3727 triggers status page publish3728 when reopening an issue3729 triggers status page publish3730 triggered by note3731 for issues3732 without changes3733 does not trigger status page publish service3734 when changed3735 triggers status page publish3736 when destroyed3737 triggers status page publish3738 as system note3739 does not trigger status page publish service3740 without recognized emoji3741 when changed3742 does not trigger status page publish service3743 when destroyed3744 triggers status page publish3745 for merge requests3746 when changed3747 does not trigger status page publish service3748 triggered by award emoji3749 for notes on issues3750 triggers status page publish3751 without recognized emoji3752 does not trigger status page publish service3753 for issues3754 does not trigger status page publish service3755 for notes on merge requests3756 does not trigger status page publish service3757 triggered by unsupported type3758 for some abitary type3759 raises ArgumentError3760 with eligable triggered_by3761 when eligable3762 triggers status page publish3763 when status page is missing3764 does not trigger status page publish service3765 when status page is not enabled3766 does not trigger status page publish service3767 when license is not available3768 does not trigger status page publish service3769 when user cannot publish status page3770 does not trigger status page publish service3771Vulnerabilities::FindingSerializer3772 #represent3773 when used without pagination3774 created a not paginated serializer3775 when a single object is being serialized3776 serializers the vulnerability finding object3777 when multiple objects are being serialized3778 serializers the array of vulnerability finding object3779 when used with pagination3780 created a paginated serializer3781 when resource is not paginatable3782 when a single vulnerability finding object is being serialized3783 raises error3784 when resource is paginatable relation3785 when a single vulnerability finding object is present in relation3786 serializes vulnerability finding relation3787 when multiple vulnerability finding objects are being serialized3788 serializes appropriate number of objects3789 append relevant headers3790Gitlab::Ci::Parsers::Security::Formatters::DependencyList3791 #format3792 with secure dependency3793 with top-level dependency3794 formats the dependency3795 with dependency path included3796 formats the dependency3797 without dependency path3798 formats the dependency3799 with vulnerable dependency3800 merge vulnerabilities data3801 packager3802 packager: "bundler", expected: "Ruby (Bundler)"3803 substitutes with right values3804 packager: "yarn", expected: "JavaScript (Yarn)"3805 substitutes with right values3806 packager: "npm", expected: "JavaScript (npm)"3807 substitutes with right values3808 packager: "pip", expected: "Python (pip)"3809 substitutes with right values3810 packager: "maven", expected: "Java (Maven)"3811 substitutes with right values3812 packager: "composer", expected: "PHP (Composer)"3813 substitutes with right values3814 packager: "conan", expected: "C/C++ (Conan)"3815 substitutes with right values3816 packager: "sbt", expected: "Scala (Sbt)"3817 substitutes with right values3818 packager: "nuget", expected: "C# (Nuget)"3819 substitutes with right values3820 packager: "go", expected: "Go (Go modules)"3821 substitutes with right values3822 packager: "gradle", expected: "Java (Gradle)"3823 substitutes with right values3824 packager: "pipenv", expected: "Python (Pipenv)"3825 substitutes with right values3826 packager: "setuptools", expected: "Python (Setuptools)"3827 substitutes with right values3828 packager: "", expected: ""3829 substitutes with right values3830DastSiteToken3831 associations3832 is expected to belong to project required: false3833 validations3834 is expected to be valid3835 is expected to validate that :project_id cannot be empty/falsy3836 is expected to validate that the length of :token is at most 2553837 is expected to validate that the length of :url is at most 2553838 is expected to validate that :token cannot be empty/falsy3839 is expected to validate that :url cannot be empty/falsy3840 is expected to validate that :token is case-sensitively unique3841 is expected to validate that :url is case-sensitively unique within the scope of :project_id3842 behaves like dast url addressable3843 includes UrlAddressable3844 when the url is not public3845 is valid3846 #dast_site3847 when dast_site exists3848 finds the associated dast_site3849 when dast_site does not exist3850 returns nil3851Gitlab::ImportExport::Group::TreeSaver3852 saves the group tree into a json object3853 saves successfully3854 saves the milestone data when there are boards with predefined milestones3855 saves the milestone data when there are boards with persisted milestones3856 epics relation3857 saves top level epics3858 saves parent of epic3859 saves epic notes3860 saves epic events3861 saves epic's note events3862 saves epic's award emojis3863 saves epic's note award emojis3864 saves epic labels3865 boards relation3866 saves top level boards3867 saves board assignee3868 saves board labels3869 saves board lists3870Gitlab::GitAccessWiki3871 group wiki access3872 #push_access_check3873 when user can :create_wiki3874 is expected not to raise Exception3875 when in a read-only GitLab instance3876 does not give access to upload wiki code3877 when group is read-only3878 does not allow push and allows pull access3879 when the group is renamed3880 enqueues a redirected message for pushing3881 when user cannot :create_wiki3882 is expected to raise Gitlab::GitAccess::ForbiddenError with "You are not allowed to write to this group's wiki."3883 #check_download_access!3884 the user has at least reporter access3885 when wiki feature is enabled3886 gives access to download wiki code3887 when the wiki repository does not exist3888 behaves like not-found git access3889 prevents access3890 when wiki feature is disabled3891 behaves like forbidden git access3892 prevents access3893 the user does not have access3894 behaves like not-found git access3895 prevents access3896 when actor is geo3897 gives access to download wiki code3898 the group is public3899 gives access to download wiki code3900 when wiki feature is disabled3901 behaves like forbidden git access3902 prevents access3903 when in a read-only GitLab instance3904 behaves like git access for a read-only GitLab instance3905 denies push access3906 for a Geo setup3907 that is incorrectly set up3908 denies push access with primary present3909 that is correctly set up3910 for a git clone/pull3911 attempts to proxy to the primary3912 for a git push3913 attempts to proxy to the primary3914 when wiki is disabled3915 allows code download for geo3916Geo::ProjectHousekeepingService3917 #execute3918 executes housekeeping when conditions are fulfilled3919 does not execute housekeeping when conditions are not fulfilled3920 resets counter when syncs_since_gc > gc_period3921 task type3922 goes through all three housekeeping tasks, executing only the highest task when there is overlap3923 new repository3924 runs gc for a new repository3925 non-new repository3926 does not run gc for a non-new repository3927 do_housekeeping3928 enqueues a sidekiq job3929 does not create object pool3930 when no lease can be obtained3931 does not enqueue a job3932 does not reset syncs_since_gc3933 #needed?3934 when the count is low enough3935 when the count is high enough3936 when its a new repository3937 #increment!3938 increments the syncs_since_gc counter3939 #registry3940 returns a Geo::ProjectRegistry linked to current project3941 #create_object_pool_on_secondary3942 creates the object pool when source project repository exists3943 doesn't create the object pool when the object pool exists3944 doesn't create the object pool when the source project repository doesn't exist3945EE::AllowedEmailDomains::UpdateService3946 #execute3947 as a normal user3948 for a group that has no email domain restriction3949 with valid domains3950 does not build new allowed_email_domain records3951 registers an error3952 as a group owner3953 for a group that has no email domain restriction3954 with valid domains3955 builds new allowed_email_domain records3956 builds new allowed_email_domain records with the provided domains3957 for a group that already has email domain restriction3958 with empty domain3959 marks all existing allowed_email_domain records for destruction3960 with valid domains3961 with an entirely new set of domains3962 each domain in the list is unique3963 builds new allowed_email_domain records with all of the specified domains3964 behaves like removes all existing allowed_email_domain records3965 marks all the existing allowed_email_domain records for destruction3966 list has space around the names of domains3967 builds new allowed_email_domain records with all of the specified domains without spaces around them3968 behaves like removes all existing allowed_email_domain records3969 marks all the existing allowed_email_domain records for destruction3970 domains in the list repeats3971 builds new allowed_email_domain records with only the unique domains among the specified domains3972 behaves like removes all existing allowed_email_domain records3973 marks all the existing allowed_email_domain records for destruction3974 replacing one of the existing domains with another3975 marks the allowed_email_domain record of the replaced domain for destruction3976 retains the allowed_email_domain record of the other existing domain3977 builds a new allowed_email_domain record with the newly specified domain3978Groups::CreateService#execute3979 audit events3980 when licensed3981 does not log audit event if operation fails3982 when operation succeeds3983 logs an audit event3984 logs the audit event info3985 when not licensed3986 does not log audit event3987 repository_size_limit assignment as Bytes3988 when param present3989 assign repository_size_limit as Bytes3990 when param not present3991 assign nil value3992 updating protected params3993 as an admin3994 updates the attributes3995 as a regular user3996 ignores the attributes3997 creating group push rule3998 when feature is available3999 when there are push rules settings4000 uses the configured push rules settings4001 when there are not push rules settings4002 is not creating the group push rule4003 when feature not is available4004 ignores the group push rule4005 when create_event is true4006 enqueues a create event worker4007 when user can not create a group4008 doesn't enqueue a create event worker4009 when create_event is NOT true4010 doesn't enqueue a create event worker4011 require_verification_for_namespace_creation experiment conversion tracking4012 tracks a "finish_create_group" event with the correct context and payload4013 when group has not been persisted4014 does not track a "finish_create_group" event4015 when created group is a sub-group4016 does not track a "finish_create_group" event4017ResourceWeightEvent4018 behaves like a resource event4019 importable4020 is expected to respond to #importing?4021 is expected to respond to #imported?4022 validations4023 is expected not to allow :user to be ‹nil›4024 when importing4025 is expected to allow :user to be ‹nil›4026 associations4027 is expected to belong to user required: false4028 .created_after4029 returns the expected events4030 returns no events if time is after last record time4031 behaves like a resource event for issues4032 associations4033 is expected to belong to issue required: false4034 .by_issue4035 returns the expected records for an issue with events4036 returns the expected records for an issue with no events4037 .by_issue_ids4038 returns the expected events4039 .by_created_at_earlier_or_equal_to4040 returns the expected events4041 returns the expected events4042 validations4043 is expected not to allow :issue to be ‹nil›4044 is expected to allow :weight to be ‹nil›4045 associations4046 is expected to belong to issue required: false4047 .by_issue4048 returns the expected records for an issue with events4049 returns the expected records for an issue with no events4050 .created_after4051 returns the expected events4052 returns no events if time is after last record time4053 #discussion_id4054 returns the expected id4055Security::StoreScanService4056 .execute4057 delegates the call to an instance of `Security::StoreScanService`4058 #execute4059 creates a succeeded security scan4060 when the `vulnerability_finding_signatures` licensed feature is available4061 calls `Security::OverrideUuidsService` with security report to re-calculate the finding UUIDs4062 when the `vulnerability_finding_signatures` licensed feature is not available4063 does not call `Security::OverrideUuidsService`4064 when the report has some errors4065 does not call the `Security::StoreFindingsMetadataService` and returns false4066 sets the status of the scan as `report_error`4067 when the report is produced by a failed job4068 does not call the `Security::StoreFindingsMetadataService` and sets the security scan as `job_failed`4069 when storing the findings raises an error4070 marks the security scan as `preparation_failed` and tracks the error4071 when the report is produced by a retried job4072 does not call the `Security::StoreFindingsMetadataService` and sets the security scan as non latest4073 when the report does not have any errors4074 calls the `Security::StoreFindingsMetadataService` to store findings4075 when the report has no warnings4076 does not store an empty array4077 when the report has some warnings4078 calls the `Security::StoreFindingsMetadataService` to store findings4079 stores the warnings4080 when the security scan already exists for the artifact4081 does not create a new security scan4082 when the `deduplicate` param is set as false4083 does not change the deduplicated flag of duplicated finding4084 does not change the deduplicated flag of unique finding4085 when the `deduplicate` param is set as true4086 when the `StoreFindingsMetadataService` returns success4087 does not run the re-deduplicate logic4088 when the `StoreFindingsMetadataService` returns error4089 does not change the deduplicated flag of duplicated finding from false4090 sets the deduplicated flag of unique finding as true4091 when the security scan does not exist for the artifact4092 creates a new security scan4093 when the `deduplicate` param is set as false4094 sets the deduplicated flag of duplicated finding as false4095 sets the deduplicated flag of unique finding as true4096 when the `deduplicate` param is set as true4097 sets the deduplicated flag of duplicated finding false4098 sets the deduplicated flag of unique finding as true4099Vulnerabilities::Export4100 is expected to define :format as an enum backed by an integer4101 associations4102 is expected to belong to project required: false4103 is expected to belong to group required: false4104 is expected to belong to author class_name => User required: true4105 validations4106 is expected to validate that :status cannot be empty/falsy4107 is expected to validate that :format cannot be empty/falsy4108 is expected not to validate that :file cannot be empty/falsy4109 when export is finished4110 is expected to validate that :file cannot be empty/falsy4111 presence of both project and group4112 when the project is present4113 when the group is present4114 is expected to include "Project & Group can not be assigned at the same time"4115 when the group is not present4116 is expected not to include "Project & Group can not be assigned at the same time"4117 when the project is not present4118 when the group is present4119 is expected not to include "Project & Group can not be assigned at the same time"4120 when the group is not present4121 is expected not to include "Project & Group can not be assigned at the same time"4122 #status4123 when the export is new4124 is expected to have attributes {:status => "created"}4125 when the export starts4126 is expected to have attributes {:started_at => 2022-07-04 08:58:21.000000000 +0000, :status => "running"}4127 when the export is running4128 and it finishes4129 is expected to have attributes {:finished_at => 2022-07-04 08:58:22.000000000 +0000, :status => "finished"}4130 and it fails4131 is expected to have attributes {:finished_at => 2022-07-04 08:58:23.000000000 +0000, :status => "failed"}4132 #exportable4133 when the export has project assigned4134 is expected to eq #<Project id: namespace1106/project1113>>4135 when the export does not have project assigned4136 when the export has group assigned4137 is expected to eq #<Group id: @group228>4138 when the export does not have group assigned4139 is expected to eq #<InstanceDouble(InstanceSecurityDashboard) (anonymous)>4140 #exportable=4141 when the exportable is a Project4142 changes the exportable of the export to given project4143 when the exportable is a Group4144 changes the exportable of the export to given group4145 when the exportable is an InstanceSecurityDashboard4146 changes the exportable of the export to security dashboard of the author4147 when the exportable is a String4148 raises an exception4149 #completed?4150 when status is created4151 is expected not to be completed4152 when status is running4153 is expected not to be completed4154 when status is finished4155 is expected to be completed4156 when status is failed4157 is expected to be completed4158Ci::BuildRunnerPresenter4159 #secrets_configuration4160 build has no secrets4161 returns empty hash4162 build has secrets4163 Vault server URL4164 VAULT_SERVER_URL CI variable is present4165 returns the URL4166 VAULT_SERVER_URL CI variable is not present4167 returns nil4168 Vault auth role4169 VAULT_AUTH_ROLE CI variable is present4170 contains the auth role4171 VAULT_AUTH_ROLE CI variable is not present4172 skips the auth role4173 Vault auth path4174 VAULT_AUTH_PATH CI variable is present4175 contains user defined auth path4176 VAULT_AUTH_PATH CI variable is not present4177 contains the default auth path4178 Vault namespace4179 VAULT_NAMESPACE CI variable is present4180 contains user defined namespace4181 VAULT_NAMESPACE CI variable is not present4182 returns nil4183 File variable configuration4184 contains the file configuration directive4185Gitlab::Auth::Saml::User4186 #save4187 account exists on server4188 admin/auditor groups4189 marks the user as admin when the user is in the configured group4190 does not mark the user as admin when the user is not in the configured group4191 demotes from admin if not in the configured group4192 does not demote from admin if not configured4193 skips admin if not configured4194 marks the user as auditor when the user is in the configured group4195 does not mark the user as auditor when the user is not in the configured group4196 demotes from auditor if not in the configured group4197 does not demote from auditor if not configured4198 skips auditor if not configured4199 no account exists on server4200 required groups4201 not defined4202 lets anyone in4203 are defined4204 lets members in4205 unblocks already blocked members4206 does not unblock manually blocked members4207 does not allow non-members4208 blocks non-members4209 behaves like finding user when user cap is set4210 when a sign-up user cap has been set4211 when the user cap has been reached4212 does not activate the user4213 when the user cap has not been reached4214 when the user can be activated based on user cap4215 activates the user4216 when the query behind .user_cap_reached? times out4217 does not activate the user4218 when the user cannot be activated based on user cap4219 does not activate the user4220Projects::RestoreService4221 restoring project4222 marks project as not hidden, unarchived and not marked for deletion4223 when the original project path is not taken4224 renames the project back to its original path4225 renames the project back to its original name4226 when the original project name has been taken4227 renames the project back to its original path with a suffix4228 renames the project back to its original name with a suffix4229 uses the same suffix for both the path and name4230 when the original project path does not contain the -deleted- suffix4231 renames the project back to its original path4232 renames the project back to its original name4233 restoring project already in process of removal4234 does not allow to restore4235 audit events4236 saves audit event4237Security::Ingestion::Tasks::IngestVulnerabilityFlags4238 #execute4239 creates new records and updates the existing ones4240 deletes the old records4241 behaves like bulk insertable task4242 when the validation fails4243 can generate error messages correctly4244Security::Ingestion::IngestReportService4245 #execute4246 calls IngestReportSliceService for each slice of findings and accumulates the return values4247 when ingesting a slice of vulnerabilities fails4248 tracks the exception4249 captures the error and sets the processing error for security scan record4250 accumulates the return value of only the succeeded executions4251Elastic::Latest::ProjectWikiClassProxy4252 names elasticsearch queries4253 #elastic_search_as_wiki_page4254 returns FoundWikiPage4255CiCd::SetupProject4256 sets up pull mirroring on the project4257 disables some features4258 when import_url is blank4259 doesn't update the project4260 #setup_external_service4261 when import_type is missing4262 does not invoke the service class4263 when importer doesn't require extra setup4264 does not invoke the service class4265 whem importer requires extra setup4266 invokes the custom service class4267Mutations::IncidentManagement::OncallRotation::Create4268 #resolve4269 user has access to project4270 when OncallRotation::CreateService responds with success4271 returns the on-call rotation with no errors4272 with endsAt arg4273 returns the on-call rotation with no errors4274 when endsAt is nil4275 returns the on-call rotation with no errors4276 when OncallRotations::CreateService responds with an error4277 returns errors4278 with active period times given4279 returns the on-call rotation with no errors4280 saves the on-call rotation with active period times4281 hours rotation length unit4282 returns errors4283 end time is before start time4284 saves the on-call rotation with active period times4285 invalid time given4286 raises an error4287 error cases4288 user cannot be found4289 raises an error4290 project path incorrect4291 raises an error4292 duplicate participants4293 raises an error4294 schedule does not exist4295 raises an error4296 too many users4297 raises an error4298 when resource is not accessible to the user4299 raises an error4300IncidentManagement::OncallSchedules::UpdateService4301 #execute4302 when the current_user is anonymous4303 behaves like error response4304 has an informative message4305 when the current_user does not have permissions to update on-call schedules4306 behaves like error response4307 has an informative message4308 when feature is not available4309 behaves like error response4310 has an informative message4311 when an on-call schedule witht the same name already exists4312 behaves like error response4313 has an informative message4314 with valid params4315 successfully creates an on-call schedule4316 schedule has a rotation4317 behaves like updates the rotation active periods4318 updates the rotation active periods with new timezone4319 from non-overnight shifts to overnight4320 behaves like updates the rotation active periods4321 updates the rotation active periods with new timezone4322 from overnight shifts to non-overnight4323 behaves like updates the rotation active periods4324 updates the rotation active periods with new timezone4325 new timezone has non-whole-hour change4326 behaves like updates the rotation active periods4327 updates the rotation active periods with new timezone4328 new timezone but same offset4329 updates the timezone4330 does not update the active period times4331 timezone is not changed4332 does not update rotations4333 error updating4334 behaves like error response4335 has an informative message4336compliance_management/compliance_framework/_project_settings.html.haml4337 shows the section description4338 group has compliance frameworks4339 includes a dropdown including that framework4340 shows the submit button4341 user is group maintainer4342 shows the no permissions text4343 disables the dropdown4344 hides the submit button4345 group has no compliance frameworks4346 renders the empty state4347 hides the submit button4348 user is group maintainer4349 renders the empty state4350 hides the submit button4351Commits::CreateService4352 #execute4353 when the repository size limit has been exceeded4354 raises an error4355 when the namespace storage limit has been exceeded4356 raises an error4357 with a subgroup project4358 raises an error4359Gitlab::Elastic::Client4360 .build4361 without credentials4362 makes unsigned requests4363 does not set request timeout in transport4364 with typhoeus adapter for keep-alive connections4365 sets typhoeus as the adapter4366 when use_typhoeus_elasticsearch_adapter FeatureFlag is disabled4367 uses the net/http adapter4368 cached client when FeatureFlag changes4369 successfully changes adapter from net/http to typhoeus4370 with client_request_timeout in config4371 sets request timeout in transport4372 with retry_on_failure4373 retry_on_failure: nil, client_retry: 04374 sets retry in transport4375 retry_on_failure: false, client_retry: 04376 sets retry in transport4377 retry_on_failure: true, client_retry: true4378 sets retry in transport4379 retry_on_failure: 10, client_retry: 104380 sets retry in transport4381 with AWS IAM static credentials4382 signs_requests4383 .resolve_aws_credentials4384 when the AWS IAM static credentials are valid4385 returns credentials from static credentials without making an HTTP request4386 when the AWS IAM static credentials are invalid4387 when aws sdk provides credentials4388 return the credentials4389 when aws sdk does not provide credentials4390 return the credentials4391 when Aws::CredentialProviderChain returns unset credentials4392 returns nil4393 .aws_credential_provider4394 when Aws::CredentialProviderChain returns set credentials4395 returns credentials4396 when Aws::CredentialProviderChain returns nil4397 returns nil4398VulnerabilityExports::CreateService4399 #execute4400 when security dashboard feature is disabled4401 raises an "access denied" error4402 when security dashboard feature is enabled4403 does not raise an "access denied" error4404 creates new Vulnerabilities::Export4405 schedules ::VulnerabilityExports::ExportWorker background job4406 returns new Vulnerabilities::Export with project and format assigned4407EE::SubscribableBannerHelper4408 #renew_subscription_path4409 does not raise error if available project is not persisted4410 does not raise error if entity is not available4411 #gitlab_subscription_or_license4412 when instance variable true4413 when should_check_namespace_plan is true4414 when a project exists4415 behaves like when a subscription exists4416 returns a decorator4417 when a group exists4418 behaves like when a subscription exists4419 returns a decorator4420 when should_check_namespace_plan is false4421 returns the current license4422 when instance variable false4423 returns the current license4424 with a future dated license4425 returns the current license4426 #gitlab_subscription_message_or_license_message4427 when instance variable true4428 when should_check_namespace_plan is true4429 when a project is present4430 behaves like subscription message4431 calls Gitlab::ExpiringSubscriptionMessage and SubscriptionPresenter if is Gitlab.com?4432 when a group is present4433 behaves like subscription message4434 calls Gitlab::ExpiringSubscriptionMessage and SubscriptionPresenter if is Gitlab.com?4435 when should_check_namespace_plan is false4436 calls Gitlab::ExpiringSubscriptionMessage to get expiring message4437 when instance variable false4438 returns the license message4439 #display_subscription_banner!4440 sets @display_subscription_banner to true4441 #link_to_button_style4442 return correct link with path and track property4443Mutations::DastSiteProfiles::Update4444 is expected to require graphql authorizations :create_on_demand_dast_scan4445 #resolve4446 when on demand scan feature is enabled4447 when the user can run a dast scan4448 calls the dast_site_profile update service4449 updates the dast_site_profile4450 returns the complete dast_site_profile4451 when secret variables already exist4452 when the arguments are omitted4453 does not delete the secret variable4454 when the arguments are empty strings4455 deletes secret variables4456 when variable creation fails4457 returns an error and the dast_site_profile4458 when the feature flag dast_api_scanner is disabled4459 does not update the scan_method and uses the default value according to the target_type4460MergeRequests::UpdateAssigneesService4461 execute4462 when the parameters are valid4463 when using sentinel values4464 removes all assignees4465 the assignee_ids parameter is the empty list4466 removes all assignees4467 the assignee_ids parameter contains both zeros and valid IDs4468 ignores 0 IDs4469ElasticDeleteProjectWorker4470 deletes a project with all nested objects and clears the index_status4471Gitlab::IpRestriction::Enforcer4472 #allows_current_ip?4473 behaves like ip_restriction4474 without restriction4475 is expected to be truthy4476 with restriction4477 address is within one of the ranges4478 is expected to be truthy4479 address is outside all of the ranges4480 is expected to be falsey4481 global allowlist feature is enabled4482 global ranges are set4483 is expected to be truthy4484 global ranges are not set4485 is expected to be falsey4486 group_ip_restriction feature is disabled4487 is expected to be truthy4488 when usage ping is enabled4489 when usage_ping_features_enabled is enabled4490 behaves like ip_restriction4491 without restriction4492 is expected to be truthy4493 with restriction4494 address is within one of the ranges4495 is expected to be truthy4496 address is outside all of the ranges4497 is expected to be falsey4498 global allowlist feature is enabled4499 global ranges are set4500 is expected to be truthy4501 global ranges are not set4502 is expected to be falsey4503 when usage_ping_features_enabled is disabled4504 is expected to be truthy4505 when usage ping is disabled4506 is expected to be truthy4507Geo::ProjectRegistryStatusFinder4508 #all_projects4509 returns all registries4510 #synced_projects4511 returns only synced registry4512 #pending_projects4513 returns only pending registry4514 #failed_projects4515 returns only failed registry4516EE::PersonalAccessTokensHelper4517 #personal_access_token_expiration_policy_enabled?4518 with `personal_access_token_expiration_policy` licensed4519 when the current user belongs to a managed group4520 when the managed group has a PAT expiry policy4521 is expected to be truthy4522 when the managed group does not have a PAT expiry setting4523 behaves like instance level PAT expiry setting4524 the instance has an expiry setting4525 is expected to be truthy4526 the instance does not have an expiry setting4527 is expected to be falsey4528 when the current user does not belong to a managed group4529 behaves like instance level PAT expiry setting4530 the instance has an expiry setting4531 is expected to be truthy4532 the instance does not have an expiry setting4533 is expected to be falsey4534 with `personal_access_token_expiration_policy` not licensed4535 when the current user belongs to a managed group4536 when the managed group has a PAT expiry policy4537 is expected to be falsey4538 when the managed group does not have a PAT expiry setting4539 behaves like instance level PAT expiry setting4540 the instance has an expiry setting4541 is expected to be falsey4542 the instance does not have an expiry setting4543 is expected to be falsey4544 when the current user does not belong to a managed group4545 behaves like instance level PAT expiry setting4546 the instance has an expiry setting4547 is expected to be falsey4548 the instance does not have an expiry setting4549 is expected to be falsey4550 #personal_access_token_max_expiry_date4551 when the current user belongs to a managed group4552 when the managed group has a PAT expiry policy4553 is expected to within one second of 2022-07-14 09:00:01 UTC4554 when the managed group does not have a PAT expiry setting4555 behaves like instance level PAT expiry setting4556 the instance has an expiry setting4557 is expected to within one second of 2022-07-24 09:00:02 UTC4558 the instance does not have an expiry setting4559 is expected to be nil4560 when the current user does not belong to a managed group4561 behaves like instance level PAT expiry setting4562 the instance has an expiry setting4563 is expected to within one second of 2022-07-24 09:00:02 UTC4564 the instance does not have an expiry setting4565 is expected to be nil4566 #personal_access_token_expiration_policy_licensed?4567 behaves like feature availability4568 when feature is licensed4569 is expected to be truthy4570 with `personal_access_token_expiration_policy` not licensed4571 is expected to be falsey4572 #token_expiry_banner_message4573 when user has an expiring token requiring rotation4574 is expected to eq "At least one of your Personal Access Tokens will expire soon. %{generate_new}"4575 when user has an expired token requiring rotation4576 is expected to eq "At least one of your Personal Access Tokens is expired. %{generate_new}"4577Types::IncidentManagement::OncallRotationDateInputType4578 accepts date and time4579 behaves like invalid date format4580 like YYYY-MM-DD4581 raises an argument error4582 behaves like invalid date format4583 like 20000-12-034584 raises an argument error4585 behaves like invalid date format4586 like 192312024587 raises an argument error4588 behaves like invalid date format4589 like 1923-2-024590 raises an argument error4591 behaves like invalid date format4592 like 1923-02-24593 raises an argument error4594 behaves like invalid time format4595 like 99:994596 raises an argument error4597 behaves like invalid time format4598 like 23:604599 raises an argument error4600 behaves like invalid time format4601 like 24:594602 raises an argument error4603 behaves like invalid time format4604 like 123:004605 raises an argument error4606 behaves like invalid time format4607 like 00:994608 raises an argument error4609 behaves like invalid time format4610 like 00:0004611 raises an argument error4612 behaves like invalid time format4613 like 07254614 raises an argument error4615 behaves like invalid parsed datetime4616 like 1923-39-024617 raises an argument error4618 behaves like invalid parsed datetime4619 like 2021-02-304620 raises an argument error4621UpdateMaxSeatsUsedForGitlabComSubscriptionsWorker4622 #perform4623 where the DB is read-only4624 does not update seat columns4625 when the DB is not read-only4626 with a free plan4627 persists seat attributes after refresh_seat_attributes! for only paid plans4628 with a trial plan4629 persists seat attributes after refresh_seat_attributes! for only paid plans4630 with a paid plan4631 persists seat attributes after refresh_seat_attributes4632 when the max_seat_used does not increase4633 does not change the max_seats_used or max_seats_used_changed_at4634 when all subscriptions have max_seats_used_changed_at set to nil4635 does not change the max_seats_used_changed_at4636 when a statement timeout exception is thrown for a subscription4637 catches and logs the exception4638 successfully updates remaining subscriptions4639 .last_enqueue_time4640 returns last_enqueue_time from the cron job instance4641 when job is not found4642 returns nil4643ProtectedEnvironments::BaseService#execute4644 #sanitized_params4645 with group container4646 with group-based access control4647 filters out inappropriate group id4648 with invited groups4649 includes invited groups4650 with delete flag4651 contains inappropriate group id for deleting it4652 with user-based access control4653 filters out inappropriate user ids4654 with delete flag4655 contains inappropriate user ids for deleting it4656Auth::ProvisionedUsersFinder4657 #execute4658 #base_scope4659 when provisioning_group param is not passed4660 raises provisioning group error4661 when provisioning_group param is passed4662 returns provisioned_user4663 #by_search4664 filters by search4665NamespaceLimit4666 is expected to belong to namespace required: false4667 #temporary_storage_increase_enabled?4668 when date is not set4669 is expected to eq false4670 when temporary storage increase end date is today4671 is expected to eq true4672 when feature is disabled4673 is expected to eq false4674 when temporary storage increase end date is exceeded4675 is expected to eq false4676 #eligible_for_temporary_storage_increase?4677 when usage ratio is above the threshold4678 is expected to eq true4679 when feature flag :temporary_storage_increase disabled4680 is expected to eq false4681 when feature flag :namespace_storage_limit disabled4682 is expected to eq false4683 when feature flag :namespace_storage_limit disabled4684 is expected to eq true4685 when usage ratio is below the threshold4686 is expected to eq false4687 when feature flag :namespace_storage_limit disabled4688 is expected to eq false4689 validations4690 is expected to validate that :namespace cannot be empty/falsy4691 namespace_is_root_namespace4692 when associated namespace is root4693 is expected to be valid4694 when associated namespace is not root4695 is invalid4696 temporary_storage_increase_set_once4697 when temporary_storage_increase_ends_on was nil4698 can be set4699 when temporary_storage_increase_ends_on is already set4700 can not be set again4701 temporary_storage_increase_eligibility4702 when storage usage is above threshold4703 is expected to be valid4704 when feature flag :namespace_storage_limit disabled4705 is expected to be valid4706 when storage usage is below threshold4707 is invalid4708 when feature flag :namespace_storage_limit disabled4709 is invalid4710DastSite4711 associations4712 is expected to belong to project required: false4713 is expected to belong to dast_site_validation required: false4714 is expected to have many dast_site_profiles4715 validations4716 is expected to be valid4717 is expected to validate that the length of :url is at most 2554718 is expected to validate that :url is case-sensitively unique within the scope of :project_id4719 is expected to validate that :project_id cannot be empty/falsy4720 behaves like dast url addressable4721 includes UrlAddressable4722 when the url is not public4723 is valid4724 when the project_id and dast_site_token.project_id do not match4725 is not valid4726 callbacks4727 when there is a related site token4728 ensures it and associated site validations cleaned up on destroy4729InstanceSecurityDashboardPolicy4730 read_instance_security_dashboard4731 when the user is not logged in4732 is expected not to be allowed :read_instance_security_dashboard and :read_security_resource4733 when the user is logged in4734 is expected to be allowed :read_instance_security_dashboard and :read_security_resource4735 create_vulnerability_export4736 when the user is not logged in4737 is expected not to be allowed :create_vulnerability_export4738 when the user is logged in4739 is expected to be allowed :create_vulnerability_export4740 read_cluster4741 when the user is not logged in4742 is expected not to be allowed :read_cluster4743 when the user is logged in4744 is expected to be allowed :read_cluster4745DependencyEntity4746 #as_json4747 when all required features available4748 with developer4749 includes license info and vulnerabilities4750 with reporter4751 includes license info and not vulnerabilities4752 when all required features are unavailable4753 does not include licenses and vulnerabilities4754 when there is no dependency path attributes4755 correctly represent location4756Gitlab::Analytics::CycleAnalytics::StageEvents::MergeRequestFirstCommitAt4757 behaves like value stream analytics event4758 is expected to be a kind of String4759 is expected to be a kind of Symbol4760 is expected to include ApplicationRecord(abstract)4761 is expected to respond to #timestamp_projection4762 is expected to respond to #html_description4763 is expected to be a kind of Array4764 #apply_query_customization4765 expects an ActiveRecord::Relation object as argument and returns a modified version of it4766 #hash_code4767 returns a hash that uniquely identifies an event4768 does not differ when the same object is built with the same params4769 behaves like LEFT JOIN-able value stream analytics event4770 can use the event as LEFT JOIN4771 when looking at the record with data4772 contains the timestamp expression4773 when looking at the record without data4774 returns nil for the timestamp expression4775Dast::ProfileSchedulePolicy4776 behaves like a dast on-demand scan policy4777 dast on-demand policies4778 when a user does not have access to the project4779 is expected to be disallowed :create_on_demand_dast_scan and :read_on_demand_dast_scan4780 when the user is a guest4781 is expected to be disallowed :create_on_demand_dast_scan and :read_on_demand_dast_scan4782 when the user is a reporter4783 is expected to be disallowed :create_on_demand_dast_scan and :read_on_demand_dast_scan4784 when the user is a developer4785 is expected to be allowed :create_on_demand_dast_scan and :read_on_demand_dast_scan4786 when the user is a maintainer4787 is expected to be allowed :create_on_demand_dast_scan and :read_on_demand_dast_scan4788 when the user is an owner4789 is expected to be allowed :create_on_demand_dast_scan and :read_on_demand_dast_scan4790 when the user is allowed4791 when on demand scan licensed feature is not available4792 is expected to be disallowed :create_on_demand_dast_scan and :read_on_demand_dast_scan4793Integrations::Github::RemoteProject4794 #api_url4795 uses github.com API endpoint4796 when git repo mirror URL is used4797 excludes auth token set as username4798 for a custom host4799 is extracted from the url4800 #owner4801 is extracted from the url4802 #repository_name4803 is extracted from the url4804 when https git URL is used4805 doesn't include '.git' at the end4806 when project sub-route accidentally used4807 ignores the sub-route4808NewEpicWorker4809 #perform4810 when an epic not found4811 does not call Services4812 logs an error4813 when a user not found4814 does not call Services4815 logs an error4816 with a user4817 when the new epic author is not confirmed4818 behaves like a new epic where the current user cannot trigger notifications4819 does not create a notification for the mentioned user4820 when the new epic author is blocked4821 behaves like a new epic where the current user cannot trigger notifications4822 does not create a notification for the mentioned user4823 when the new epic author is a ghost4824 behaves like a new epic where the current user cannot trigger notifications4825 does not create a notification for the mentioned user4826 when everything is ok4827 creates an event4828 user watches group4829 creates a notification for watcher4830 mention4831 creates a notification for the mentioned user4832Elastic::IndexingControlService4833 .initialize4834 raises an exception when passed wrong worker4835 .add_to_waiting_queue!4836 calls an instance method4837 .has_jobs_in_waiting_queue?4838 calls an instance method4839 .resume_processing!4840 calls an instance method4841 .queue_size4842 reports the queue size4843 #add_to_waiting_queue!4844 adds a job to the set4845 adds only one unique job to the set4846 only stores `project` context information4847 #has_jobs_in_waiting_queue?4848 checks set existence4849 #resume_processing!4850 puts jobs back into the queue and respects order4851 drops a set after execution4852 concurrent changes to different queues4853 allows to use queues independently of each other4854Mutations::Security::CiConfiguration::ConfigureContainerScanning4855 is expected to require graphql authorizations :push_code4856 #resolve4857 generates an error if the resource is not accessible to the user4858 when user does not have enough permissions4859 generates an error4860 when user is a maintainer of a different project4861 generates an error4862 when the user does not have permission to create a new branch4863 returns an array of errors4864 when the user can create a merge request4865 when service successfully generates a path to create a new merge request4866 returns a success path4867 when service can not generate any path to create a new merge request4868 returns an array of errors4869DashboardHelper4870 #dashboard_nav_links4871 operations dashboard link4872 when the feature is available on the license4873 and the user is authenticated4874 is included in the nav4875 and the user is not authenticated4876 is not included in the nav4877 when the feature is not available on the license4878 is not included in the nav4879 environments dashboard link4880 and the feature is available on the license4881 and the user is authenticated4882 is included in the nav4883 and the user is not authenticated4884 is not included in the nav4885 and the feature is not available on the license4886 is not included in the nav4887 security dashboard link4888 and the feature is available on the license4889 and the user is authenticated4890 is included in the nav4891 and the user is not authenticated4892 is not included in the nav4893 when the feature is not available on the license4894 is not included in the nav4895 .has_start_trial?4896 has_license: false, current_user: :admin, output: true4897 is expected to eq true4898 has_license: false, current_user: :user, output: false4899 is expected to eq false4900 has_license: true, current_user: :admin, output: false4901 is expected to eq false4902 has_license: true, current_user: :user, output: false4903 is expected to eq false4904IncidentManagement::IssuableResourceLinksFinder4905 #execute4906 when feature is available4907 when user has permissions4908 returns issuable resource links4909 when incident is nil4910 is expected to eq #<ActiveRecord::Relation []>4911 when user has no permissions4912 is expected to eq #<ActiveRecord::Relation []>4913 when feature flag is disabled4914 is expected to eq #<ActiveRecord::Relation []>4915 when feature is not available4916 is expected to eq #<ActiveRecord::Relation []>4917EpicIssuePresenter4918 #group_epic_issue_path4919 returns correct path4920 returns nil without proper permission4921gitlab:license namespace rake tasks4922 load4923 works when no license to be installed4924 when GITLAB_LICENSE_FILE env variable is set4925 fails when the file does not exist4926 when the file does exist4927 and contains a valid license4928 succeeds in adding the license4929 but does not contain a valid license4930 fails to add the license4931 but contains an expired license4932 fails to add the license4933 when GITLAB_LICENSE_FILE env variable is not set4934 when default valid license file does exist4935 succeeds in adding the license4936 running in mode verbose4937 when default valid license file does not exist4938 outputs a the help message4939Geo::GroupWikiRepositoryRegistryFinder4940 behaves like a framework registry finder4941 #execute4942 when user cannot read all Geo4943 is expected to be empty4944 when user can read all Geo4945 when admin mode is disabled4946 is expected to be empty4947 when admin mode is enabled4948 with an ids param4949 returns specified registries4950 without an ids param4951 returns all registries4952Secret-Detection.gitlab-ci.yml4953 the created pipeline4954 when project has no license4955 when SECRET_DETECTION_DISABLED=14956 includes no jobs4957 when branch pipeline4958 creates a pipeline with the expected jobs4959 when MR pipeline4960 creates a pipeline with the expected jobs4961IncidentManagement::IssuableEscalationStatuses::BuildService4962 behaves like initializes new escalation status with expected attributes4963 is expected to have attributes {:escalations_started_at => nil, :id => nil, :issue_id => 251, :policy_id => nil, :status_event => nil}4964 with associated alert4965 behaves like initializes new escalation status with expected attributes4966 is expected to have attributes {:escalations_started_at => nil, :id => nil, :issue_id => 251, :policy_id => nil, :status_event => :acknowledge}4967 with escalation policy4968 behaves like initializes new escalation status with expected attributes4969 is expected to have attributes {:escalations_started_at => 2022-07-04 09:00:52.655336000 +0000, :id => nil, :issue_id => 251, :policy_id => 2, :status_event => :acknowledge}4970 with escalation policies feature unavailable4971 behaves like initializes new escalation status with expected attributes4972 is expected to have attributes {:escalations_started_at => nil, :id => nil, :issue_id => 251, :policy_id => nil, :status_event => :acknowledge}4973Gitlab::ComplianceManagement::Violations::ApprovedByInsufficientUsers4974 #execute4975 when merge request is approved by sufficient number of users4976 does not create a ComplianceViolation4977 when merge request is approved by insufficient number of users4978 creates a ComplianceViolation4979 when the merge requests merge user is within metrics4980 creates a ComplianceViolation4981 when the merge request does not have a merge user4982 does not create a ComplianceViolation4983Namespaces::FreeUserCap::AlertComponent4984 when user is authorized to see alert4985 when limit has been reached4986 has content for the alert4987 renders all the expected tracking items4988 when alert has been dismissed4989 with a fresh dismissal4990 does not render the alert4991 when limit has not been reached4992 does not render the alert4993 when user is not authorized to see alert4994 does not render the alert4995 when user does not exist4996 does not render the alert4997AllowedEmailDomain4998 relations4999 is expected to belong to group required: false5000 .domain_names5001 returns the array of domain names5002 validations5003 is expected to validate that :domain cannot be empty/falsy5004 is expected to validate that :group_id cannot be empty/falsy5005 #valid domain5006 valid domain5007 succeeds5008 invalid domain5009 fails5010 domain from excluded list5011 fails5012 #allow_root_group_only5013 top-level group5014 succeeds5015 subgroup5016 fails5017 #email_matches_domain?5018 with matching domain5019 returns true5020 with not matching domain5021 returns false5022 #email_domain5023 returns formatted domain5024Dora::ChangeFailureRateMetric5025 #data_queries5026 for production environment5027 returns number of incidents opened at given date5028 inherits data queries from DeploymentFrequency metric5029 for non-production environment5030 returns no queries5031Security::Ingestion::Tasks::IngestIdentifiers5032 #execute5033 creates new records and updates the existing ones5034 sets the identifier_ids for the finding_map object5035 behaves like bulk insertable task5036 when the validation fails5037 can generate error messages correctly5038Mutations::IncidentManagement::OncallSchedule::Destroy5039 is expected to require graphql authorizations :admin_incident_management_oncall_schedule5040 #resolve5041 user has access to project5042 when OncallSchedules::DestroyService responds with success5043 returns the on-call schedule with no errors5044 when OncallSchedules::DestroyService responds with an error5045 returns errors5046 when resource is not accessible to the user5047 raises an error5048EE::RegistrationsHelper5049 #shuffled_registration_objective_options5050 has values that match all UserDetail registration objective keys5051 "other" is always the last option5052 #registration_verification_enabled?5053 when experiment is candidate5054DEPRECATION WARNING: publish_to_database is deprecated and should not be used for reporting anymore (called from block in registration_verification_enabled? at /builds/gitlab-org/gitlab/ee/app/helpers/ee/registrations_helper.rb:16)5055 is expected to eq true5056 when experiment is control5057DEPRECATION WARNING: publish_to_database is deprecated and should not be used for reporting anymore (called from block in registration_verification_enabled? at /builds/gitlab-org/gitlab/ee/app/helpers/ee/registrations_helper.rb:16)5058 is expected to be falsey5059 behaves like tracks assignment and records the subject5060DEPRECATION WARNING: publish_to_database is deprecated and should not be used for reporting anymore (called from block in registration_verification_enabled? at /builds/gitlab-org/gitlab/ee/app/helpers/ee/registrations_helper.rb:16)5061 tracks the assignment5062DEPRECATION WARNING: publish_to_database is deprecated and should not be used for reporting anymore (called from block in registration_verification_enabled? at /builds/gitlab-org/gitlab/ee/app/helpers/ee/registrations_helper.rb:16)5063 records the subject5064 #registration_verification_data5065 with `learn_gitlab_project_id` parameter present5066 return expected data5067 with `project_id` parameter present5068 return expected data5069 with `offer_trial` parameter present5070 return expected data5071 with no relevant parameters present5072 return expected data5073 #credit_card_verification_data5074 returns the expected data5075LearnGitlabHelper5076 #learn_gitlab_data5077 when in the new action URLs experiment5078 for trial- and subscription-related actions5079 when namespace plans are not enabled5080DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.5081Falling back to an asset that may be in the public folder.5082This behavior is deprecated and will be removed.5083To bypass the asset pipeline and preserve this behavior,5084use the `skip_pipeline: true` option.5085 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5086DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.5087Falling back to an asset that may be in the public folder.5088This behavior is deprecated and will be removed.5089To bypass the asset pipeline and preserve this behavior,5090use the `skip_pipeline: true` option.5091 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5092DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.5093Falling back to an asset that may be in the public folder.5094This behavior is deprecated and will be removed.5095To bypass the asset pipeline and preserve this behavior,5096use the `skip_pipeline: true` option.5097 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5098DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.5099Falling back to an asset that may be in the public folder.5100This behavior is deprecated and will be removed.5101To bypass the asset pipeline and preserve this behavior,5102use the `skip_pipeline: true` option.5103 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5104DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.5105Falling back to an asset that may be in the public folder.5106This behavior is deprecated and will be removed.5107To bypass the asset pipeline and preserve this behavior,5108use the `skip_pipeline: true` option.5109 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5110DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.5111Falling back to an asset that may be in the public folder.5112This behavior is deprecated and will be removed.5113To bypass the asset pipeline and preserve this behavior,5114use the `skip_pipeline: true` option.5115 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5116DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.5117Falling back to an asset that may be in the public folder.5118This behavior is deprecated and will be removed.5119To bypass the asset pipeline and preserve this behavior,5120use the `skip_pipeline: true` option.5121 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5122DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.5123Falling back to an asset that may be in the public folder.5124This behavior is deprecated and will be removed.5125To bypass the asset pipeline and preserve this behavior,5126use the `skip_pipeline: true` option.5127 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5128DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.5129Falling back to an asset that may be in the public folder.5130This behavior is deprecated and will be removed.5131To bypass the asset pipeline and preserve this behavior,5132use the `skip_pipeline: true` option.5133 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5134 provides the default URLs5135 when namespace plans are enabled5136 when namespace has free or no subscription5137DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.5138Falling back to an asset that may be in the public folder.5139This behavior is deprecated and will be removed.5140To bypass the asset pipeline and preserve this behavior,5141use the `skip_pipeline: true` option.5142 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5143DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.5144Falling back to an asset that may be in the public folder.5145This behavior is deprecated and will be removed.5146To bypass the asset pipeline and preserve this behavior,5147use the `skip_pipeline: true` option.5148 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5149DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.5150Falling back to an asset that may be in the public folder.5151This behavior is deprecated and will be removed.5152To bypass the asset pipeline and preserve this behavior,5153use the `skip_pipeline: true` option.5154 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5155DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.5156Falling back to an asset that may be in the public folder.5157This behavior is deprecated and will be removed.5158To bypass the asset pipeline and preserve this behavior,5159use the `skip_pipeline: true` option.5160 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5161DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.5162Falling back to an asset that may be in the public folder.5163This behavior is deprecated and will be removed.5164To bypass the asset pipeline and preserve this behavior,5165use the `skip_pipeline: true` option.5166 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5167DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.5168Falling back to an asset that may be in the public folder.5169This behavior is deprecated and will be removed.5170To bypass the asset pipeline and preserve this behavior,5171use the `skip_pipeline: true` option.5172 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5173DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.5174Falling back to an asset that may be in the public folder.5175This behavior is deprecated and will be removed.5176To bypass the asset pipeline and preserve this behavior,5177use the `skip_pipeline: true` option.5178 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5179DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.5180Falling back to an asset that may be in the public folder.5181This behavior is deprecated and will be removed.5182To bypass the asset pipeline and preserve this behavior,5183use the `skip_pipeline: true` option.5184 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5185DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.5186Falling back to an asset that may be in the public folder.5187This behavior is deprecated and will be removed.5188To bypass the asset pipeline and preserve this behavior,5189use the `skip_pipeline: true` option.5190 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5191 provides URLs to start a trial to namespace admins5192DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.5193Falling back to an asset that may be in the public folder.5194This behavior is deprecated and will be removed.5195To bypass the asset pipeline and preserve this behavior,5196use the `skip_pipeline: true` option.5197 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5198DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.5199Falling back to an asset that may be in the public folder.5200This behavior is deprecated and will be removed.5201To bypass the asset pipeline and preserve this behavior,5202use the `skip_pipeline: true` option.5203 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5204DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.5205Falling back to an asset that may be in the public folder.5206This behavior is deprecated and will be removed.5207To bypass the asset pipeline and preserve this behavior,5208use the `skip_pipeline: true` option.5209 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5210DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.5211Falling back to an asset that may be in the public folder.5212This behavior is deprecated and will be removed.5213To bypass the asset pipeline and preserve this behavior,5214use the `skip_pipeline: true` option.5215 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5216DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.5217Falling back to an asset that may be in the public folder.5218This behavior is deprecated and will be removed.5219To bypass the asset pipeline and preserve this behavior,5220use the `skip_pipeline: true` option.5221 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5222DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.5223Falling back to an asset that may be in the public folder.5224This behavior is deprecated and will be removed.5225To bypass the asset pipeline and preserve this behavior,5226use the `skip_pipeline: true` option.5227 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5228DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.5229Falling back to an asset that may be in the public folder.5230This behavior is deprecated and will be removed.5231To bypass the asset pipeline and preserve this behavior,5232use the `skip_pipeline: true` option.5233 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5234DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.5235Falling back to an asset that may be in the public folder.5236This behavior is deprecated and will be removed.5237To bypass the asset pipeline and preserve this behavior,5238use the `skip_pipeline: true` option.5239 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5240DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.5241Falling back to an asset that may be in the public folder.5242This behavior is deprecated and will be removed.5243To bypass the asset pipeline and preserve this behavior,5244use the `skip_pipeline: true` option.5245 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5246 provides URLs to Gitlab docs to namespace non-admins5247 when namespace has paid subscription5248DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.5249Falling back to an asset that may be in the public folder.5250This behavior is deprecated and will be removed.5251To bypass the asset pipeline and preserve this behavior,5252use the `skip_pipeline: true` option.5253 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5254DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.5255Falling back to an asset that may be in the public folder.5256This behavior is deprecated and will be removed.5257To bypass the asset pipeline and preserve this behavior,5258use the `skip_pipeline: true` option.5259 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5260DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.5261Falling back to an asset that may be in the public folder.5262This behavior is deprecated and will be removed.5263To bypass the asset pipeline and preserve this behavior,5264use the `skip_pipeline: true` option.5265 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5266DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.5267Falling back to an asset that may be in the public folder.5268This behavior is deprecated and will be removed.5269To bypass the asset pipeline and preserve this behavior,5270use the `skip_pipeline: true` option.5271 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5272DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.5273Falling back to an asset that may be in the public folder.5274This behavior is deprecated and will be removed.5275To bypass the asset pipeline and preserve this behavior,5276use the `skip_pipeline: true` option.5277 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5278DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.5279Falling back to an asset that may be in the public folder.5280This behavior is deprecated and will be removed.5281To bypass the asset pipeline and preserve this behavior,5282use the `skip_pipeline: true` option.5283 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5284DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.5285Falling back to an asset that may be in the public folder.5286This behavior is deprecated and will be removed.5287To bypass the asset pipeline and preserve this behavior,5288use the `skip_pipeline: true` option.5289 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5290DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.5291Falling back to an asset that may be in the public folder.5292This behavior is deprecated and will be removed.5293To bypass the asset pipeline and preserve this behavior,5294use the `skip_pipeline: true` option.5295 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5296DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.5297Falling back to an asset that may be in the public folder.5298This behavior is deprecated and will be removed.5299To bypass the asset pipeline and preserve this behavior,5300use the `skip_pipeline: true` option.5301 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5302 provides URLs to Gitlab docs to namespace admins5303DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.5304Falling back to an asset that may be in the public folder.5305This behavior is deprecated and will be removed.5306To bypass the asset pipeline and preserve this behavior,5307use the `skip_pipeline: true` option.5308 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5309DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.5310Falling back to an asset that may be in the public folder.5311This behavior is deprecated and will be removed.5312To bypass the asset pipeline and preserve this behavior,5313use the `skip_pipeline: true` option.5314 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5315DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.5316Falling back to an asset that may be in the public folder.5317This behavior is deprecated and will be removed.5318To bypass the asset pipeline and preserve this behavior,5319use the `skip_pipeline: true` option.5320 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5321DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.5322Falling back to an asset that may be in the public folder.5323This behavior is deprecated and will be removed.5324To bypass the asset pipeline and preserve this behavior,5325use the `skip_pipeline: true` option.5326 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5327DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.5328Falling back to an asset that may be in the public folder.5329This behavior is deprecated and will be removed.5330To bypass the asset pipeline and preserve this behavior,5331use the `skip_pipeline: true` option.5332 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5333DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.5334Falling back to an asset that may be in the public folder.5335This behavior is deprecated and will be removed.5336To bypass the asset pipeline and preserve this behavior,5337use the `skip_pipeline: true` option.5338 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5339DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.5340Falling back to an asset that may be in the public folder.5341This behavior is deprecated and will be removed.5342To bypass the asset pipeline and preserve this behavior,5343use the `skip_pipeline: true` option.5344 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5345DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.5346Falling back to an asset that may be in the public folder.5347This behavior is deprecated and will be removed.5348To bypass the asset pipeline and preserve this behavior,5349use the `skip_pipeline: true` option.5350 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5351DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.5352Falling back to an asset that may be in the public folder.5353This behavior is deprecated and will be removed.5354To bypass the asset pipeline and preserve this behavior,5355use the `skip_pipeline: true` option.5356 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:38)5357 provides URLs to Gitlab docs to namespace non-admins5358Mutations::Vulnerabilities::Confirm5359 #resolve5360 when the user can confirm the vulnerability5361 when user doe not have access to the project5362 raises an error5363 when user has access to the project5364 returns the Confirmed vulnerability5365Geo::ContainerRepositoryUpdatedEventStore5366 #create5367 behaves like a Geo event store5368 when running on a secondary node5369 does not create an event5370 when running on a primary node5371 does not create an event if there are no secondary nodes5372 creates an event5373 when file subject is not on local store5374 creates an event (PENDING: No file subject defined, skipping)5375 when running on a primary node5376 refers to a container repository5377 logs an error message when event creation fail5378Projects::HashedStorage::MigrateAttachmentsService5379 #execute5380 on success5381 returns true5382 creates a Geo::HashedStorageAttachmentsEvent5383 on failure5384 does not create a Geo event when skipped5385 does not create a Geo event on failure5386UserSerializer5387 with merge_request_iid5388 without approval_rules5389 behaves like user without applicable_approval_rules5390 returns a user without applicable_approval_rules5391 with approval_rules5392 with merge request approval rules5393 returns users with merge request approval rules5394 without merge request approval rules5395 returns users with project approval rules5396 without merge_request_iid5397 wsee/spec/serializers/ee/user_serializer_spec.rbthout approval_rules5398 behaves like user without applicable_approval_rules5399 returns a user without applicable_approval_rules5400 with approval_rules5401 returns users with applicable_approval_rules5402 with target_branch5403 returns users with applicable_approval_rules5404 with unknown target_branch5405 returns users with applicable_approval_rules5406DastSiteValidationsFinder5407 #execute5408 returns all dast_site_validation_validations most recent first5409 filtering by most_recent5410 returns the matching dast_site_validations5411 allows the results to be easily re-ordered5412 filtering by project_id5413 returns the matching dast_site_validations5414 when url_base is for a different project5415 returns an empty relation5416 filtering by url_base5417 returns the matching dast_site_validations5418 filtering by *5419 returns the matching dast_site_validations5420EE::NamespaceUserCapReachedAlertHelper5421 #display_namespace_user_cap_reached_alert?5422 with a non persisted namespace5423 is expected to eq false5424 with a persisted namespace5425 returns true when the user cap is reached for a user who can admin the namespace5426 returns false when the user cap is reached for a user who cannot admin the namespace5427 does not trigger reactive caching if there is no user cap set5428 returns false when the user cap feature is unavailable5429Gitlab::SidekiqConfig5430 .workers5431 includes EE workers5432 .worker_queues5433 includes EE queues5434 .expand_queues5435 expands queue namespaces to concrete queue names5436 lets concrete queue names pass through5437 lets unknown queues pass through5438 .workers_for_all_queues_yml5439 returns a tuple with EE workers second5440 .all_queues_yml_outdated?5441 returns true if the YAML file does not match the application code5442 returns false if the YAML file matches the application code5443Ci::RetryPipelineService5444 when the namespace is out of CI minutes5445 retries the builds with available runners5446 when user is not allowed to retry pipeline because of missing credit card5447 returns an error5448BoardAssignee5449 relationships5450 is expected to belong to board required: false5451 is expected to belong to assignee class_name => User required: false5452 validations5453 is expected to validate that :board cannot be empty/falsy5454 is expected to validate that :assignee cannot be empty/falsy5455projects/show5456 when free plan limit alert is present5457 renders the alert partial5458BlobHelper5459 #licenses_for_select5460 returns Group licenses when enabled5461 returns Instance licenses when enabled5462 returns no Group or Instance licenses when disabled5463EE::GraphHelper5464 #should_render_dora_charts5465 when serving the project-level DORA page5466 behaves like #should_render_dora_charts for a specific type of container5467 behaves like returns true5468 is expected to equal true5469 when the feature is not available5470 behaves like returns false5471 is expected to equal false5472 when the user does not have permission5473 behaves like returns false5474 is expected to equal false5475 when serving the group-level DORA page5476 behaves like #should_render_dora_charts for a specific type of container5477 behaves like returns true5478 is expected to equal true5479 when the feature is not available5480 behaves like returns false5481 is expected to equal false5482 when the user does not have permission5483 behaves like returns false5484 is expected to equal false5485 #should_render_quality_summary5486 when licensed feature is available5487 when feature flag is enabled5488 is expected to eq true5489 when feature flag is disabled5490 is expected to eq false5491 when licensed feature is not available5492 is expected to eq false5493Groups::GroupMembersHelper5494 .group_member_select_options5495 returns an options hash with skip_ldap5496 #group_members_app_data5497 adds `ldap_override_path`5498 adds `can_export_members`5499 adds `export_csv_path`5500 adds `can_filter_by_enterprise`5501 #group_member_header_subtext5502 can_admin_member: true, enforce_free_user_cap: true, subtext: enforcement_subtext5503 contains expected text5504 can_admin_member: true, enforce_free_user_cap: false, subtext: standard_subtext5505 contains expected text5506 can_admin_member: false, enforce_free_user_cap: true, subtext: standard_subtext5507 contains expected text5508 can_admin_member: false, enforce_free_user_cap: false, subtext: standard_subtext5509 contains expected text5510Geo::ContainerRepositoryRegistryFinder5511 behaves like a registry finder5512 responds to registry finder methods5513 #registry_count5514 counts registries5515 #synced_count5516 counts registries that has been synced5517 #failed_count5518 counts registries that sync has failed5519 #find_registries_never_attempted_sync5520 returns registries that have never been synced5521 excludes except_ids5522 #find_registries_needs_sync_again5523 returns registries for that have failed to sync5524 excludes except_ids5525Licenses::DestroyService5526 raises an error if license is nil5527 raises an error if the user is not an admin5528 when admin mode is enabled5529 behaves like license destroy5530 destroys a license5531 behaves like clear future subscriptions application setting5532 clears the future_subscriptions application setting5533 with cloud license5534 behaves like license destroy5535 destroys a license5536 behaves like clear future subscriptions application setting5537 clears the future_subscriptions application setting5538 with an active license that is not the current one5539 does not clear the future_subscriptions application setting5540 behaves like license destroy5541 destroys a license5542 when admin mode is disabled5543 raises not allowed error5544Geo::DesignRepositorySyncWorker5545 #perform5546 runs DesignRepositorySyncService5547 logs error when repository does not exist5548Groups::UpdateRepositoryStorageService5549 #execute5550 when the move succeeds5551 moves the repository to the new storage and unmarks the repository as read-only5552 when the filesystems are the same5553 updates the database without trying to move the repostory5554 when the move fails5555 unmarks the repository as read-only without updating the repository storage5556 when the cleanup fails5557 sets the correct state5558 when the checksum does not match5559 unmarks the repository as read-only without updating the repository storage5560 when the repository move is finished5561 is idempotent5562 when the repository move is failed5563 is idempotent5564NamespaceStatistics5565 #refresh!5566 when no option is passed5567 updates the wiki size5568 behaves like creates the namespace statistics5569 is expected to receive save!(*(any args)) 1 time5570 when wiki_size option is passed5571 updates the wiki size5572 behaves like creates the namespace statistics5573 is expected to receive save!(*(any args)) 1 time5574 #update_storage_size5575 adds wiki_size to the storage_size5576 #update_wiki_size5577 when group_wikis feature is not enabled5578 does not update the wiki size5579 when group_wikis feature is enabled5580 updates the wiki size5581 when namespace does not belong to a group5582 does not update the wiki size5583MergeTrains::CheckStatusService5584 #execute5585 when there is at least one merge request on the train5586 when new revision is included in merge train history5587 does not outdate the merge train pipeline5588 when new revision is not included in merge train history5589 outdates the merge train pipeline5590 when there are no merge requests on train5591 does not raise error5592 when merge train is disabled on the project5593 does not check history5594AwardEmojiPolicy5595 when the user cannot read the epic5596 is expected not to be allowed :read_emoji5597 when the user can read the epic5598 is expected to be allowed :read_emoji5599AlertManagement::HttpIntegrationsFinder5600 #execute5601 empty params5602 is expected to contain exactly #<AlertManagement::HttpIntegration id: 1, created_at: "2022-07-04 09:01:42.834582723 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>, #<AlertManagement::HttpIntegration id: 2, created_at: "2022-07-04 09:01:42.841458612 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>, and #<AlertManagement::HttpIntegration id: 3, created_at: "2022-07-04 09:01:42.849650952 +0000", updated_...tifier: "c8cc7ac2", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>5603 endpoint_identifier given5604 is expected to contain exactly #<AlertManagement::HttpIntegration id: 1, created_at: "2022-07-04 09:01:42.834582723 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil> and #<AlertManagement::HttpIntegration id: 2, created_at: "2022-07-04 09:01:42.841458612 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>5605 but unknown5606 is expected to be empty5607 but blank5608 is expected to contain exactly #<AlertManagement::HttpIntegration id: 1, created_at: "2022-07-04 09:01:42.834582723 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>, #<AlertManagement::HttpIntegration id: 2, created_at: "2022-07-04 09:01:42.841458612 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>, and #<AlertManagement::HttpIntegration id: 3, created_at: "2022-07-04 09:01:42.849650952 +0000", updated_...tifier: "c8cc7ac2", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>5609 active param given5610 is expected to contain exactly #<AlertManagement::HttpIntegration id: 1, created_at: "2022-07-04 09:01:42.834582723 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil> and #<AlertManagement::HttpIntegration id: 3, created_at: "2022-07-04 09:01:42.849650952 +0000", updated_...tifier: "c8cc7ac2", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>5611 but blank5612 is expected to contain exactly #<AlertManagement::HttpIntegration id: 1, created_at: "2022-07-04 09:01:42.834582723 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>, #<AlertManagement::HttpIntegration id: 2, created_at: "2022-07-04 09:01:42.841458612 +0000", updated_...entifier: "abc123", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>, and #<AlertManagement::HttpIntegration id: 3, created_at: "2022-07-04 09:01:42.849650952 +0000", updated_...tifier: "c8cc7ac2", name: "DataDog", payload_example: {}, payload_attribute_mapping: {}, token: nil>5613Geo::RepositoryRenamedEvent5614 relationships5615 is expected to belong to project required: false5616 validations5617 is expected to validate that :project cannot be empty/falsy5618 is expected to validate that :repository_storage_name cannot be empty/falsy5619 is expected to validate that :old_path_with_namespace cannot be empty/falsy5620 is expected to validate that :new_path_with_namespace cannot be empty/falsy5621 is expected to validate that :old_wiki_path_with_namespace cannot be empty/falsy5622 is expected to validate that :new_wiki_path_with_namespace cannot be empty/falsy5623 is expected to validate that :old_path cannot be empty/falsy5624 is expected to validate that :new_path cannot be empty/falsy5625Users::BuildService5626 #execute5627 with an admin user5628 allowed params5629 with identity5630 sets all allowed attributes5631 with scim identity5632 passes allowed attributes to both scim and saml identity5633 marks the user as provisioned by group5634 smartcard authentication enabled5635 smartcard params5636 sets smartcard identity attributes5637 missing smartcard params5638 works as expected5639 user signup cap5640 when user signup cap is set5641 sets the user state to blocked_pending_approval5642 when user signup cap is not set5643 does not set the user state to blocked_pending_approval5644AddNamespaceAncestryIdsToIssuesMapping5645 behaves like a deprecated Advanced Search migration5646 #migrate5647 logs a message and halts the migration5648 #completed?5649 returns false5650 #obsolete?5651 returns true5652ComplianceManagement::ComplianceFramework::GroupSettingsHelper5653 #show_compliance_frameworks?5654 the user has permission5655 is expected to equal true5656 the user does not have permission5657 group is not a subgroup5658 is expected to equal false5659 #compliance_frameworks_list_data5660 returns the correct data5661 group is a subgroup5662 contains the root ancestor as group_path5663 does not contain the add_framework_path or edit_framework_path keys5664 #compliance_frameworks_form_data5665 the user has pipeline configuration permission5666 behaves like returns the correct data5667 does not contain a framework ID5668 with a framework ID5669 is expected to contain exactly [:framework_id, 12345], [:group_path, "group324"], [:group_edit_path, "/groups/group324/-/edit#js-compliance-frameworks-settings"], [:graphql_field_name, "ComplianceManagement::Framework"], and [:pipeline_configuration_full_path_enabled, "[true]"]5670 the user does not have pipeline configuration permission5671 behaves like returns the correct data5672 does not contain a framework ID5673 with a framework ID5674 is expected to contain exactly [:framework_id, 12345], [:group_path, "group324"], [:group_edit_path, "/groups/group324/-/edit#js-compliance-frameworks-settings"], [:graphql_field_name, "ComplianceManagement::Framework"], and [:pipeline_configuration_full_path_enabled, "[false]"]5675 group is a subgroup5676 returns the root ancestor full path as group_path5677LicensesListSerializer5678 #to_json5679 is expected to match schema "licenses_list" and {:dir=>"ee"}5680Namespaces::FreeUserCap5681 .trimming_enabled?5682 when free_user_cap_data_remediation_job is disabled5683 is expected to equal false5684 when :free_user_cap_data_remediation_job is enabled5685 is expected to equal true5686 .group_sharing_remediation_enabled?5687 when :free_user_cap_group_sharing_remediation is disabled5688 is expected to equal false5689 when :free_user_cap_group_sharing_remediation is enabled5690 is expected to equal true5691 .enforce_preview_or_standard?5692 enforce_preview: true, enforce_standard: true, result: true5693 is expected to equal true5694 enforce_preview: true, enforce_standard: false, result: true5695 is expected to equal true5696 enforce_preview: false, enforce_standard: true, result: true5697 is expected to equal true5698 enforce_preview: false, enforce_standard: false, result: false5699 is expected to equal false5700Gitlab::Prometheus::Queries::AdditionalMetricsEnvironmentQuery5701 queries using specific time5702 with custom metrics5703 without common metrics5704 return group data for custom metric5705 with common metrics5706 return group data for custom metric5707Gitlab::CodeOwners::ReferenceExtractor5708 #emails5709 includes all mentioned email adresses5710 #names5711 includes all mentioned usernames and groupnames5712 #references5713 includes all user-references once5714Gitlab::StatusPage::Storage::S3MultipartUpload5715 #call5716 when sucessful5717 completes5718 with more than one part5719 completes5720 when fails5721 on upload part5722 aborts the upload and raises an error5723 on complete_multipart_upload5724 aborts the upload and raises an error5725MergeRequests::BaseService5726 fires the correct number of compliance hooks5727 #filter_params5728 filter users and groups5729 calls ParamsFilteringService5730ApprovalRules::GroupFinder5731 when with inaccessible groups5732 returns groups5733 when without inaccessible groups5734 returns groups5735Geo::CacheInvalidationEvent5736 validations5737 is expected to validate that :key cannot be empty/falsy5738Routing::PseudonymizationHelper5739 when url has params to mask5740 when project/insights page is loaded5741 behaves like masked url5742 generates masked page url5743 when groups/insights page is loaded5744 behaves like masked url5745 generates masked page url5746 when severity, sortBy, sortDesc is present5747 behaves like masked url5748 generates masked page url5749 when glm_content and gml_source is present5750 behaves like masked url5751 generates masked page url5752Geo::VerificationTimeoutWorker5753 uses a Geo queue5754 perform5755 secondary node5756 fails timed out records on secondary5757 idempotent behaviour5758 is labeled as idempotent5759 performs multiple times sequentially without raising an exception5760 calls fail_verification_timeouts5761Milestones::DestroyService5762 #execute5763 with an existing merge request5764 manually queues MergeRequests::SyncCodeOwnerApprovalRulesWorker jobs5765Gitlab::Pagination::Keyset::SimpleOrderBuilder5766 when ordering by a CASE expression and id5767 does not raise error5768 does not support this ordering5769PathLocks::UnlockService5770 unlocks path5771 raises exception if user has no permissions5772Gitlab::Ci::Pipeline::Chain::Validate::SecurityOrchestrationPolicy5773 #perform5774 when security policies feature is not licensed5775 does not return warning5776 when security policies feature is licensed5777 when policy file is missing5778 returns warning5779 when policy file is present5780 when policy file is invalid5781 returns warning5782 when policy file is valid5783 does not return warning5784ProtectedBranches::UpdateService5785 #execute5786 with invalid params5787 does not add a security audit event entry5788 with valid params5789 adds security audit event entries5790Gitlab::Prometheus::MetricGroup5791 .for_project5792 for current project5793 returns metrics for given project and common ones5794 for other project5795 returns metrics only common ones5796EE::IncidentManagement::ProjectIncidentManagementSetting5797 Validations5798 validate SLA settings5799 #sla_timer_minutes5800 sla_timer is disabled5801 is expected not to validate that :sla_timer_minutes cannot be empty/falsy5802 sla_timer is enabled5803 is expected to validate that :sla_timer_minutes looks like a number greater than or equal to 155804 is expected to validate that :sla_timer_minutes looks like a number less than or equal to 5259495805IncidentManagement::OncallScheduleEntity5806 .as_json5807 includes oncall schdule attributes5808Resolvers::VulnerabilitiesCountPerDayResolver5809 #resolve5810 fetches historical vulnerability data from the start date to the end date5811AuditEventEntity5812 .as_json5813 includes audit event attributes5814 @presenter5815 is only set once5816Gitlab::Auth::Ldap::Adapter5817 includes the EE module5818 #groups5819 searches with the proper options5820 returns a group object if search returns a result5821 #filter_search5822 searches with the proper options5823 errors out with an invalid filter5824 #user_by_certificate_assertion5825 searches with the proper options5826 return value5827 returns a person object5828 returns correct attributes5829Gitlab::Geo::LogCursor::EventLogs5830 #fetch_in_batches5831 when there are no event_logs5832 does not yield a group of events5833 when there are event logs5834 when there is no event_log_state5835 does not yield a group of events5836 when there is already an event_log_state5837 saves last event as last processed after yielding5838 yields a group of events5839KerberosSpnegoHelper5840 #spnego_credentials!5841 with successful remote call5842 with Kerberos service_principal_name present5843 behaves like a method that decodes a spnego token5844 decodes the given spnego token5845 when gss_result is not true5846 behaves like a method that decodes a spnego token5847 decodes the given spnego token5848 with Kerberos service_principal_name missing5849 behaves like a method that decodes a spnego token5850 decodes the given spnego token5851 when the remote call fails5852 fails to authenticate and logs an error5853Mutations::Boards::EpicBoards::EpicMoveList5854 arguments5855 is expected to have graphql arguments :boardId, :epicId, :fromListId, :toListId, :moveBeforeId, and :moveAfterId5856 #resolve5857 when user does not have permissions5858 does not allow the move5859 when everything is ok5860 moves the epic to another list5861MergeRequests::Mergeability::CheckDeniedPoliciesService5862 #execute5863 when the merge request has denied policies5864 returns a check result with status failed5865 when the merge request does not have denied policies5866 returns a check result with status success5867 #skip?5868 returns false5869 #cacheable?5870 returns false5871Gitlab::Auth::OAuth::AuthHash5872 #uid5873 contains a kerberos realm5874 preserves the canonical uid5875 does not contain a kerberos realm5876 canonicalizes uid with kerberos realm5877Gitlab::Graphql::Aggregations::Epics::LazyLinksAggregate5878 behaves like issuable lazy links aggregate5879 #initialize5880 adds the issuable_id to the `blocked` lazy state by default5881 #links_aggregate5882 when link_type is `blocked`5883 behaves like block provided5884WARNING: An expectation of `:do_thing` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/support/shared_examples/lib/gitlab/graphql/issuables_lazy_links_aggregate_shared_examples.rb:39:in `block (4 levels) in <top (required)>'.5885 calls the block5886 behaves like the record has already been loaded5887 does not make the query again5888 behaves like the record has not been loaded5889 clears the pending IDs5890 when link_type is `blocking`5891 behaves like block provided5892WARNING: An expectation of `:do_thing` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/support/shared_examples/lib/gitlab/graphql/issuables_lazy_links_aggregate_shared_examples.rb:39:in `block (4 levels) in <top (required)>'.5893 calls the block5894 behaves like the record has already been loaded5895 does not make the query again5896 behaves like the record has not been loaded5897 clears the pending IDs5898Groups::DeployTokens::CreateService5899 #execute5900 when the deploy token is valid5901 creates an audit event5902 when the deploy token is invalid5903 creates an audit event5904MergeRequests::HandleAssigneesChangeService5905 #execute5906 schedules for analytics metric update5907 when code_review_analytics is not available5908 does not schedule for analytics metric update5909BulkImports::Common::Pipelines::WikiPipeline5910 #run5911 behaves like wiki pipeline imports a wiki for an entity5912 #run5913 when wiki exists5914 imports new wiki into destination project5915 when wiki does not exist5916 does not import wiki5917trials/_skip_trial.html.haml5918 without glm_source5919 is expected to have text "Skip Trial"5920 with glm_source of about.gitlab.com5921 is expected to have text "Skip Trial"5922 with glm_source of gitlab.com5923 is expected to have text "Go back to GitLab"5924ProtectedEnvironments::Entity5925 #as_json5926 includes the exposed fields5927Geo::SyncTimeoutCronWorker5928 uses a cronjob queue5929 #perform5930 calls fail_sync_timeouts5931LdapFilterValidator5932 #validates_each5933 adds a message when the filter is not valid5934 has no errors when is valid5935GitlabSubscriptions::ExtendReactivateTrialService5936 #execute5937 trial is extended/reactivated successfully5938 returns success: true5939 error while extending/reactivating the trial5940 returns success: false with errors5941Types::Geo::PackageFileRegistryType5942 has the expected fields (other than those included in RegistryType)5943 behaves like a Geo registry type5944 is expected to require graphql authorizations :read_geo_registry5945 has the expected fields5946Gitlab::Vulnerabilities::Parser5947 .fabricate5948 with standard categories5949 returns a Standard Vulnerability5950 with container scanning as category5951 returns a Scanning Vulnerability5952 with cluster image scanning as category5953 returns a Scanning Vulnerability5954 with an invalid category5955 raises an exception5956Types::Ci::PipelineType5957 is expected to eq "Pipeline"5958 includes the ee specific fields5959Types::IncidentManagement::OncallParticipantType5960 is expected to eq "OncallParticipantType"5961 exposes the expected fields5962GitlabSubscriptions::CreateHandRaiseLeadService5963 #execute5964 hand raise lead call is made successfully5965 returns success: true5966 error while creating hand raise lead call is made successful5967 returns success: false with errors5968Types::VulnerabilityDetails::CommitType5969 is expected to have graphql fields :name, :description, :fieldName, and :value5970MigrateMergeRequestsToSeparateIndex5971 behaves like a deprecated Advanced Search migration5972 #migrate5973 logs a message and halts the migration5974 #completed?5975 returns false5976 #obsolete?5977 returns true5978shared/access_tokens/_table.html.haml5979 with tokens5980 shows the token expiry notification5981Types::WorkItems::TypeType5982 is expected to eq "WorkItemType"5983 is expected to have graphql fields :id, :icon_name, and :name5984 is expected to require graphql authorizations :read_work_item_type5985MigrateIssuesToSeparateIndex5986 behaves like a deprecated Advanced Search migration5987 #migrate5988 logs a message and halts the migration5989 #completed?5990 returns false5991 #obsolete?5992 returns true5993Types::EpicSortEnum5994 is expected to eq "EpicSort"5995 exposes all the existing epic sort orders5996Gitlab::Console5997 .welcome!5998 when running in the Rails console5999 prints a welcome message6000Types::VulnerableProjectsByGradeType6001 is expected to have graphql fields "grade", "count", and "projects"6002 is expected to eq "VulnerableProjectsByGrade"6003PreventForkingHelper6004 calls proper ability method6005Gitlab::Geo::LogHelpers6006 Sidekiq context6007 does not log empty job_id when running outside of job6008 logs sidekiq_context6009Types::Ci::CodeQualityDegradationType6010 is expected to have graphql fields :description, :fingerprint, :severity, :path, and :line6011Geo::UploadState6012 is expected to belong to upload required: false inverse_of => upload_state6013Knapsack report was generated. Preview:6014{6015 "ee/spec/lib/gitlab/ci/templates/dependency_scanning_gitlab_ci_yaml_spec.rb": 368.82810216600046,6016 "ee/spec/models/epic_issue_spec.rb": 191.2844605399987,6017 "ee/spec/models/ee/user_spec.rb": 124.24313629799872,6018 "ee/spec/lib/gitlab/ci/templates/sast_latest_gitlab_ci_yaml_spec.rb": 104.18830661499669,6019 "ee/spec/services/elastic/process_bookkeeping_service_spec.rb": 99.31683893000081,6020 "ee/spec/policies/environment_policy_spec.rb": 72.67300920900016,6021 "ee/spec/policies/merge_request_policy_spec.rb": 81.08393018900097,6022 "ee/spec/models/gitlab_subscription_spec.rb": 36.22824501499781,6023 "ee/spec/lib/gitlab/ci/templates/sast_gitlab_ci_yaml_spec.rb": 48.24459300499802,6024 "ee/spec/lib/ee/gitlab/ci/templates/templates_spec.rb": 18.013327417000255,6025 "ee/spec/services/projects/update_service_spec.rb": 48.312350242998946,6026 "ee/spec/services/merge_requests/push_options_handler_service_spec.rb": 36.50281995600017,6027 "ee/spec/lib/gitlab/elastic/bulk_indexer_spec.rb": 37.50325667599827,6028 "ee/spec/services/approval_rules/params_filtering_service_spec.rb": 30.86824893100129,6029 "ee/spec/services/ci/minutes/track_live_consumption_service_spec.rb": 18.730927905002318,6030 "ee/spec/serializers/merge_request_widget_entity_spec.rb": 23.179384140003094,6031 "ee/spec/services/geo/design_repository_sync_service_spec.rb": 18.210376016999362,6032 "ee/spec/helpers/ee/namespaces_helper_spec.rb": 16.187858429999324,6033 "ee/spec/services/merge_requests/approval_service_spec.rb": 29.057209102000343,6034 "ee/spec/serializers/dashboard_operations_project_entity_spec.rb": 27.008172857000318,6035 "ee/spec/services/status_page/mark_for_publication_service_spec.rb": 10.557209473001421,6036 "ee/spec/models/ee/list_spec.rb": 14.2635772729991,6037 "ee/spec/lib/gitlab/geo/log_cursor/events/repository_updated_event_spec.rb": 12.854494491999503,6038 "ee/spec/lib/gitlab/ci/reports/security/finding_spec.rb": 2.0745800219992816,6039 "ee/spec/finders/geo/terraform_state_version_registry_finder_spec.rb": 13.922913676000462,6040 "ee/spec/presenters/ci/pipeline_presenter_spec.rb": 11.449474233999354,6041 "ee/spec/services/status_page/trigger_publish_service_spec.rb": 10.811330707998422,6042 "ee/spec/serializers/vulnerabilities/finding_serializer_spec.rb": 16.711463946998265,6043 "ee/spec/lib/gitlab/ci/parsers/security/formatters/dependency_list_spec.rb": 10.596215648998623,6044 "ee/spec/models/dast_site_token_spec.rb": 8.45919446300104,6045 "ee/spec/lib/ee/gitlab/import_export/group/tree_saver_spec.rb": 10.549538133996975,6046 "ee/spec/lib/gitlab/git_access_wiki_spec.rb": 7.101065288999962,6047 "ee/spec/services/geo/project_housekeeping_service_spec.rb": 7.750321264997183,6048 "ee/spec/services/ee/allowed_email_domains/update_service_spec.rb": 6.9499842149998585,6049 "ee/spec/services/groups/create_service_spec.rb": 9.432894585999748,6050 "ee/spec/models/resource_weight_event_spec.rb": 4.3414452060023905,6051 "ee/spec/services/security/store_scan_service_spec.rb": 4.485412711001118,6052 "ee/spec/models/vulnerabilities/export_spec.rb": 4.311571618000016,6053 "ee/spec/presenters/ci/build_runner_presenter_spec.rb": 6.990894480000861,6054 "ee/spec/lib/gitlab/auth/saml/user_spec.rb": 4.9198668979988724,6055 "ee/spec/services/projects/restore_service_spec.rb": 11.159919412999443,6056 "ee/spec/services/security/ingestion/tasks/ingest_vulnerability_flags_spec.rb": 7.547135814002104,6057 "ee/spec/services/security/ingestion/ingest_report_service_spec.rb": 6.894246370000474,6058 "ee/spec/lib/elastic/latest/project_wiki_class_proxy_spec.rb": 7.652562444000068,6059 "ee/spec/services/ci_cd/setup_project_spec.rb": 4.795836239001801,6060 "ee/spec/graphql/mutations/incident_management/oncall_rotation/create_spec.rb": 3.399701140002435,6061 "ee/spec/services/incident_management/oncall_schedules/update_service_spec.rb": 4.234861346001708,6062 "ee/spec/views/compliance_management/compliance_framework/_project_settings.html.haml_spec.rb": 5.208543968001322,6063 "ee/spec/services/ee/commits/create_service_spec.rb": 3.7337982169992756,6064 "ee/spec/lib/gitlab/elastic/client_spec.rb": 0.698746639998717,6065 "ee/spec/services/vulnerability_exports/create_service_spec.rb": 4.5296504860016285,6066 "ee/spec/helpers/ee/subscribable_banner_helper_spec.rb": 2.6890243510024447,6067 "ee/spec/graphql/mutations/dast_site_profiles/update_spec.rb": 4.765140543000598,6068 "ee/spec/services/ee/merge_requests/update_assignees_service_spec.rb": 3.3636216429986234,6069 "ee/spec/workers/elastic_delete_project_worker_spec.rb": 7.278479701002652,6070 "ee/spec/lib/ee/gitlab/ip_restriction/enforcer_spec.rb": 2.4155938579970098,6071 "ee/spec/finders/geo/project_registry_status_finder_spec.rb": 4.3132908289990155,6072 "ee/spec/helpers/ee/personal_access_tokens_helper_spec.rb": 1.1709791229986877,6073 "ee/spec/graphql/types/incident_management/oncall_rotation_date_input_type_spec.rb": 0.5069901090027997,6074 "ee/spec/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker_spec.rb": 1.9537904749995505,6075 "ee/spec/services/protected_environments/base_service_spec.rb": 4.330133286999626,6076 "ee/spec/finders/auth/provisioned_users_finder_spec.rb": 2.363366384000983,6077 "ee/spec/models/ee/namespace_limit_spec.rb": 1.0359493459982332,6078 "ee/spec/models/dast_site_spec.rb": 3.3612842639995506,6079 "ee/spec/policies/instance_security_dashboard_policy_spec.rb": 2.1561868239987234,6080 "ee/spec/serializers/dependency_entity_spec.rb": 4.17587616200035,6081 "ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/merge_request_first_commit_at_spec.rb": 2.7246336770003836,6082 "ee/spec/policies/dast/profile_schedule_policy_spec.rb": 3.727320886999223,6083 "ee/spec/models/integrations/github/remote_project_spec.rb": 0.3365350860003673,6084 "ee/spec/workers/new_epic_worker_spec.rb": 3.5143495480006095,6085 "ee/spec/services/elastic/indexing_control_service_spec.rb": 0.7440677459999279,6086 "ee/spec/graphql/mutations/security/ci_configuration/configure_container_scanning_spec.rb": 3.209222117999161,6087 "ee/spec/helpers/ee/dashboard_helper_spec.rb": 1.120194128001458,6088 "ee/spec/finders/incident_management/issuable_resource_links_finder_spec.rb": 1.5945250799995847,6089 "ee/spec/presenters/epic_issue_presenter_spec.rb": 3.4269019670027774,6090 "ee/spec/tasks/gitlab/license_rake_spec.rb": 2.9447092650007107,6091 "ee/spec/finders/geo/group_wiki_repository_registry_finder_spec.rb": 2.916856928000925,6092 "ee/spec/lib/gitlab/ci/templates/secret_detection_latest_gitlab_ci_yaml_spec.rb": 3.356586943998991,6093 "ee/spec/services/ee/incident_management/issuable_escalation_statuses/build_service_spec.rb": 0.8387716450015432,6094 "ee/spec/lib/gitlab/compliance_management/violations/approved_by_insufficient_users_spec.rb": 4.9309184170015214,6095 "ee/spec/components/namespaces/free_user_cap/alert_component_spec.rb": 1.9242979070004367,6096 "ee/spec/models/allowed_email_domain_spec.rb": 1.6920326610015763,6097 "ee/spec/models/dora/change_failure_rate_metric_spec.rb": 1.706206378999923,6098 "ee/spec/services/security/ingestion/tasks/ingest_identifiers_spec.rb": 2.426024846998189,6099 "ee/spec/graphql/mutations/incident_management/oncall_schedule/destroy_spec.rb": 1.3217882079989067,6100 "ee/spec/helpers/ee/registrations_helper_spec.rb": 1.2221408069999598,6101 "ee/spec/helpers/ee/learn_gitlab_helper_spec.rb": 1.1477095349982847,6102 "ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb": 3.704159199998685,6103 "ee/spec/services/geo/container_repository_updated_event_store_spec.rb": 2.728916936997848,6104 "ee/spec/services/projects/hashed_storage/migrate_attachments_service_spec.rb": 2.580584141996951,6105 "ee/spec/serializers/ee/user_serializer_spec.rb": 2.5265858070015383,6106 "ee/spec/finders/dast_site_validations_finder_spec.rb": 1.4952877499999886,6107 "ee/spec/helpers/ee/namespace_user_cap_reached_alert_helper_spec.rb": 1.9049085100014054,6108 "ee/spec/lib/gitlab/sidekiq_config_spec.rb": 0.7361465670001053,6109 "ee/spec/services/ci/retry_pipeline_service_spec.rb": 2.267375342999003,6110 "ee/spec/models/board_assignee_spec.rb": 0.2293567870001425,6111 "ee/spec/views/projects/show.html.haml_spec.rb": 1.1684358729980886,6112 "ee/spec/helpers/ee/blob_helper_spec.rb": 1.307440428998234,6113 "ee/spec/helpers/ee/graph_helper_spec.rb": 1.0796151119975548,6114 "ee/spec/helpers/ee/groups/group_members_helper_spec.rb": 1.4809160820004763,6115 "ee/spec/finders/geo/container_repository_registry_finder_spec.rb": 1.2957601800007978,6116 "ee/spec/services/licenses/destroy_service_spec.rb": 1.7318102870012808,6117 "ee/spec/workers/geo/design_repository_sync_worker_spec.rb": 0.6550351539990515,6118 "ee/spec/services/groups/update_repository_storage_service_spec.rb": 1.5308931669969752,6119 "ee/spec/models/ee/namespace_statistics_spec.rb": 1.0692810529981216,6120 "ee/spec/services/merge_trains/check_status_service_spec.rb": 2.2209772179994616,6121 "ee/spec/policies/award_emoji_policy_spec.rb": 1.2630213239972363,6122 "ee/spec/finders/ee/alert_management/http_integrations_finder_spec.rb": 1.1247235970004112,6123 "ee/spec/models/geo/repository_renamed_event_spec.rb": 0.6076497590001964,6124 "ee/spec/services/ee/users/build_service_spec.rb": 0.6008824700002151,6125 "ee/spec/elastic/migrate/20210910094600_add_namespace_ancestry_ids_to_issues_mapping_spec.rb": 0.2294473870024376,6126 "ee/spec/helpers/compliance_management/compliance_framework/group_settings_helper_spec.rb": 0.9304822169979161,6127 "ee/spec/serializers/licenses_list_serializer_spec.rb": 1.4734192120013176,6128 "ee/spec/models/namespaces/free_user_cap_spec.rb": 0.9190547289981623,6129 "ee/spec/lib/gitlab/prometheus/queries/additional_metrics_environment_query_spec.rb": 2.8907495210005436,6130 "ee/spec/lib/gitlab/code_owners/reference_extractor_spec.rb": 0.24838236499999766,6131 "ee/spec/lib/gitlab/status_page/storage/s3_multipart_upload_spec.rb": 0.3319373570011521,6132 "ee/spec/services/ee/merge_requests/base_service_spec.rb": 2.6680311919990345,6133 "ee/spec/finders/approval_rules/group_finder_spec.rb": 1.3740815329983889,6134 "ee/spec/models/geo/cache_invalidation_event_spec.rb": 0.12397643799704383,6135 "ee/spec/helpers/routing/pseudonymization_helper_spec.rb": 0.8376472859999922,6136 "ee/spec/workers/geo/verification_timeout_worker_spec.rb": 0.9381932559990673,6137 "ee/spec/services/milestones/destroy_service_spec.rb": 2.479443011001422,6138 "ee/spec/lib/gitlab/pagination/keyset/simple_order_builder_spec.rb": 0.2590891740001098,6139 "ee/spec/services/path_locks/unlock_service_spec.rb": 1.5668548030007514,6140 "ee/spec/lib/ee/gitlab/ci/pipeline/chain/validate/security_orchestration_policy_spec.rb": 1.284586241999932,6141 "ee/spec/services/ee/protected_branches/update_service_spec.rb": 1.0165017380022618,6142 "ee/spec/lib/ee/gitlab/prometheus/metric_group_spec.rb": 1.5103977190010482,6143 "ee/spec/models/ee/incident_management/project_incident_management_setting_spec.rb": 1.3014210500004992,6144 "ee/spec/serializers/incident_management/oncall_schedule_entity_spec.rb": 0.9028905699997267,6145 "ee/spec/graphql/resolvers/vulnerabilities_count_per_day_resolver_spec.rb": 1.0272656170018308,6146 "ee/spec/serializers/audit_event_entity_spec.rb": 0.596212309999828,6147 "ee/spec/lib/gitlab/auth/ldap/adapter_spec.rb": 0.42415152799731004,6148 "ee/spec/lib/gitlab/geo/log_cursor/event_logs_spec.rb": 0.5188006179996592,6149 "ee/spec/helpers/kerberos_spnego_helper_spec.rb": 0.2587454339991382,6150 "ee/spec/graphql/mutations/boards/epic_boards/epic_move_list_spec.rb": 1.3423099259998708,6151 "ee/spec/services/merge_requests/mergeability/check_denied_policies_service_spec.rb": 0.3400638559978688,6152 "ee/spec/lib/gitlab/auth/o_auth/auth_hash_spec.rb": 0.1899615910006105,6153 "ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_links_aggregate_spec.rb": 0.4020997389998229,6154 "ee/spec/services/ee/groups/deploy_tokens/create_service_spec.rb": 0.42648784699849784,6155 "ee/spec/services/ee/merge_requests/handle_assignees_change_service_spec.rb": 1.5990089400002034,6156 "ee/spec/lib/bulk_imports/common/pipelines/wiki_pipeline_spec.rb": 0.902967340000032,6157 "ee/spec/views/trials/_skip_trial.html.haml_spec.rb": 0.24286962599944673,6158 "ee/spec/serializers/protected_environments/entity_spec.rb": 0.48043261199927656,6159 "ee/spec/workers/geo/sync_timeout_cron_worker_spec.rb": 0.2730198120007117,6160 "ee/spec/validators/ldap_filter_validator_spec.rb": 0.2198604380027973,6161 "ee/spec/services/gitlab_subscriptions/extend_reactivate_trial_service_spec.rb": 0.38408843200159026,6162 "ee/spec/graphql/types/geo/package_file_registry_type_spec.rb": 0.16969697300010012,6163 "ee/spec/lib/gitlab/vulnerabilities/parser_spec.rb": 0.46326078299898654,6164 "ee/spec/graphql/types/ci/pipeline_type_spec.rb": 0.2933703800008516,6165 "ee/spec/graphql/types/incident_management/oncall_participant_type_spec.rb": 0.2932240410009399,6166 "ee/spec/services/gitlab_subscriptions/create_hand_raise_lead_service_spec.rb": 0.1970489000013913,6167 "ee/spec/graphql/types/vulnerability_details/commit_type_spec.rb": 0.24447424500249326,6168 "ee/spec/elastic/migrate/20210429154500_migrate_merge_requests_to_separate_index_spec.rb": 0.5133375789991987,6169 "ee/spec/views/shared/access_tokens/_table.html.haml_spec.rb": 0.4831566120010393,6170 "ee/spec/graphql/types/work_items/type_spec.rb": 0.20559617999970214,6171 "ee/spec/elastic/migrate/20201123123400_migrate_issues_to_separate_index_spec.rb": 0.21335628800079576,6172 "ee/spec/graphql/types/epic_sort_enum_spec.rb": 0.23464071600028547,6173 "ee/spec/lib/gitlab/console_spec.rb": 0.1528647440027271,6174 "ee/spec/graphql/types/vulnerable_projects_by_grade_type_spec.rb": 0.24566663499717833,6175 "ee/spec/helpers/prevent_forking_helper_spec.rb": 0.20493107899892493,6176 "ee/spec/lib/gitlab/geo/log_helpers_spec.rb": 0.10058088900041184,6177 "ee/spec/graphql/types/ci/code_quality_degradation_type_spec.rb": 0.188901100998919,6178 "ee/spec/models/geo/upload_state_spec.rb": 0.072455882997019226179}6180Knapsack global time execution for tests: 30m 33s6181Pending: (Failures listed here are expected and do not affect your suite's status)6182 1) Geo::ContainerRepositoryUpdatedEventStore#create behaves like a Geo event store when running on a primary node when file subject is not on local store creates an event6183 # No file subject defined, skipping6184 # ./ee/spec/support/shared_examples/services/geo_event_store_shared_examples.rb:366185Finished in 30 minutes 37 seconds (files took 1 minute 18.05 seconds to load)61862442 examples, 0 failures, 1 pending6187RSpec exited with 0.6188No examples to retry, congrats!6190Not uploading cache ruby-gems-debian-bullseye-ruby-2.7-10 due to policy6191Not uploading cache gitaly-ruby-gems-debian-bullseye-ruby-2.7-10 due to policy6193Uploading artifacts...6194coverage/: found 5 matching files and directories 6195crystalball/: found 2 matching files and directories 6196deprecations/: found 10 matching files and directories 6197knapsack/: found 3 matching files and directories 6198rspec/: found 8 matching files and directories 6199WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory 6200log/*.log: found 18 matching files and directories 6201WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/2673683123/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com6202WARNING: Retrying... context=artifacts-uploader error=request redirected6203Uploading artifacts as "archive" to coordinator... 201 Created id=2673683123 responseStatus=201 Created token=xA_uFPwX6204Uploading artifacts...6205rspec/junit_rspec.xml: found 1 matching files and directories 6206WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/2673683123/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com6207WARNING: Retrying... context=artifacts-uploader error=request redirected6208Uploading artifacts as "junit" to coordinator... 201 Created id=2673683123 responseStatus=201 Created token=xA_uFPwX6210Job succeeded