rspec integration pg10 5/8
Passed Started
by
@gitlab-bot

🤖 GitLab Bot 🤖
1Running with gitlab-runner 12.8.0 (1b659122)2 on docker-auto-scale-com 8a6210b8 3 Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6.5-golang-1.12-git-2.24-lfs-2.9-chrome-73.0-node-12.x-yarn-1.21-postgresql-10-graphicsmagick-1.3.34 ...
00:06
4Starting service postgres:10.12 ...5Pulling docker image postgres:10.12 ...6Using docker image sha256:538942384eafa3c7d4b5b4965e0deb3c533d2b67c05e1e0931711936ab6c041b for postgres:10.12 ...7Starting service redis:alpine ...8Pulling docker image redis:alpine ...9Using docker image sha256:b68707e68547e636f2544e9283f02beed46d536f644573c8b35c368f9abbe078 for redis:alpine ...10Waiting for services to be up and running...11Authenticating with credentials from job payload (GitLab Registry)12Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6.5-golang-1.12-git-2.24-lfs-2.9-chrome-73.0-node-12.x-yarn-1.21-postgresql-10-graphicsmagick-1.3.34 ...13Using docker image sha256:5ffa057c8d08e11f766903b20f5529ee11747bb31366aad4bd8536ec33c89845 for registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6.5-golang-1.12-git-2.24-lfs-2.9-chrome-73.0-node-12.x-yarn-1.21-postgresql-10-graphicsmagick-1.3.34 ... 14 Running on runner-8a6210b8-project-278964-concurrent-0 via runner-8a6210b8-gsrm-1583375184-9533d6f7...
00:01
16Downloading archived master...17Connecting to storage.googleapis.com (172.217.204.128:443)18gitlab.tar.gz 24% |******* | 206M 0:00:03 ETA19gitlab.tar.gz 65% |******************** | 549M 0:00:01 ETA20gitlab.tar.gz 100% |********************************| 845M 0:00:00 ETA21Extracting tarball into /builds/gitlab-org/gitlab...22Fetching changes with git depth set to 20...23Reinitialized existing Git repository in /builds/gitlab-org/gitlab/.git/24Created fresh repository.26 * [new ref] refs/pipelines/123433062 -> refs/pipelines/12343306227 * [new branch] master -> origin/master28Checking out 2e08c928 as master...29Skipping Git submodules setup31Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/debian-stretch-ruby-2.6.5-pg9.6-node-12.x-3 32Successfully extracted cache34Downloading artifacts from coordinator... ok id=460116507 responseStatus=200 OK token=QUYyHTsa35Downloading artifacts for retrieve-tests-metadata (460116515)...36Downloading artifacts from coordinator... ok id=460116515 responseStatus=200 OK token=wqtvmKyQ37Downloading artifacts for setup-test-env (460116509)...38Downloading artifacts from coordinator... ok id=460116509 responseStatus=200 OK token=sAvRzHNN39WARNING: tmp/tests/gitlab-shell/.gitlab_shell_secret: chmod tmp/tests/gitlab-shell/.gitlab_shell_secret: no such file or directory (suppressing repeats) 41$ date42Thu Mar 5 04:26:43 UTC 202043$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb44$ export GOPATH=$CI_PROJECT_DIR/.go45$ mkdir -p $GOPATH46$ source scripts/utils.sh47$ source scripts/prepare_build.sh48Bundler version 1.17.249Warning: the running version of Bundler (1.17.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.50The Gemfile's dependencies are satisfied51Successfully installed knapsack-1.18.0521 gem installed53CREATE ROLE54GRANT55Dropped database 'gitlabhq_test'56Created database 'gitlabhq_test'57Dropped database 'gitlabhq_geo_test'58Created database 'gitlabhq_geo_test'59$ date60Thu Mar 5 04:27:39 UTC 202061$ source scripts/rspec_helpers.sh62$ rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"63KNAPSACK_TEST_FILE_PATTERN: spec/{controllers,mailers,requests}{,/**/}*_spec.rb64Checking gitaly-ruby Gemfile...65Checking gitaly-ruby bundle...66Warning: the running version of Bundler (1.17.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.67The Gemfile's dependencies are satisfied68Trying to connect to gitaly: ....... OK69RSpec's reporter has already been initialized with #<IO:<STDERR>> as the deprecation stream, so your change to `deprecation_stream` will be ignored. You should configure it earlier for it to take effect, or use the `--deprecation-out` CLI option. (Called from /builds/gitlab-org/gitlab/spec/support/rspec.rb:10:in `block in <top (required)>')70Knapsack report generator started!71Run options:72 include {:focus=>true}73 exclude {:quarantine=>true, :geo=>true, :level=>"migration"}74All examples were filtered out; ignoring {:focus=>true}75==> Setting up Gitaly...76 Gitaly set up in 0.035752148 seconds...77==> Setting up GitLab Elasticsearch Indexer...78 GitLab Elasticsearch Indexer set up in 0.000178657 seconds...79GroupsController80 GET #show81 behaves like details view82 is expected to render template groups/show83 as atom84 is expected to render template groups/show85 assigns events for all the projects in the group86 GET #details87 behaves like details view88 is expected to render template groups/show89 as atom90 is expected to render template groups/show91 assigns events for all the projects in the group92 GET edit93 sets the badge API endpoint94 GET #new95 when creating subgroups96 and can_create_group is true97 and logged in as Admin98 behaves like member with ability to create subgroups99 renders the new page100 and logged in as Owner101 behaves like member with ability to create subgroups102 renders the new page103 and logged in as Maintainer104 behaves like member with ability to create subgroups105 renders the new page106 and logged in as Guest107 behaves like member without ability to create subgroups108 renders the 404 page109 and logged in as Developer110 behaves like member without ability to create subgroups111 renders the 404 page112 and can_create_group is false113 and logged in as Admin114 behaves like member with ability to create subgroups115 renders the new page116 and logged in as Owner117 behaves like member with ability to create subgroups118 renders the new page119 and logged in as Maintainer120 behaves like member with ability to create subgroups121 renders the new page122 and logged in as Guest123 behaves like member without ability to create subgroups124 renders the 404 page125 and logged in as Developer126 behaves like member without ability to create subgroups127 renders the 404 page128 GET #activity129 as json130 includes events from all projects in group and subgroups131 when user has no permission to see the event132 filters out invisible event133 POST #create134 allows creating a group135 authorization136 allows an admin to create a group137 when creating subgroups138 and can_create_group is true139 and logged in as Owner140 creates the subgroup141 and logged in as Developer142 renders the new template143 and can_create_group is false144 and logged in as Owner145 creates the subgroup146 and logged in as Developer147 renders the new template148 when creating a top level group149 and can_create_group is enabled150 creates the Group151 and can_create_group is disabled152 does not create the Group153 GET #index154 as a user155 redirects to Groups Dashboard156 as a guest157 redirects to Explore Groups158 GET #issues159 sorting by votes160 sorts most popular issues161 sorts least popular issues162 searching163 works with popularity sort164 works with priority sort165 works with label priority sort166 GET #merge_requests167 sorting by votes168 sorts most popular merge requests169 sorts least popular merge requests170 DELETE #destroy171 as another user172 returns 404173 as the group owner174 schedules a group destroy175 redirects to the root path176 PUT update177 updates the path successfully178 does not update the path on error179 updates the project_creation_level successfully180 updates the default_branch_protection successfully181 when a project inside the group has container repositories182 does allow the group to be renamed183 does not allow to path of the group to be changed184 #ensure_canonical_path185 for a GET request186 when requesting groups at the root path187 when requesting the canonical path with different casing188 redirects to the correct casing189 when requesting a redirected path190 redirects to the canonical path191 when the old group path is a substring of the scheme or host192 does not modify the requested host193 when the old group path is substring of groups194 does not modify the /groups part of the path195 when requesting groups under the /groups path196 when requesting the canonical path197 non-show path198 with exactly matching casing199 does not redirect200 with different casing201 redirects to the correct casing202 show path203 with exactly matching casing204 does not redirect205 with different casing206 redirects to the correct casing at the root path207 when requesting a redirected path208 redirects to the canonical path209 when the old group path is a substring of the scheme or host210 does not modify the requested host211 when the old group path is substring of groups212 does not modify the /groups part of the path213 when the old group path is substring of groups plus the new path214 does not modify the /groups part of the path215 for a POST request216 when requesting the canonical path with different casing217 does not 404218 does not redirect to the correct casing219 when requesting a redirected path220 returns not found221 for a DELETE request222 when requesting the canonical path with different casing223 does not 404224 does not redirect to the correct casing225 when requesting a redirected path226 returns not found227 PUT transfer228 when transferring to a subgroup goes right229 returns a notice230 redirects to the new path231 when converting to a root group goes right232 returns a notice233 redirects to the new path234 When the transfer goes wrong235 returns an alert236 redirects to the current path237 when the user is not allowed to transfer the group238 is denied239 transferring when a project has container images240 does not allow the group to be transferred241 token authentication242 behaves like authenticates sessionless user243 when the 'personal_access_token' param is populated with the personal access token244 logs the user in245 does not log the user in if page is public246 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token247 logs the user in248 behaves like authenticates sessionless user249 when the 'personal_access_token' param is populated with the personal access token250 logs the user in251 does not log the user in if page is public252 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token253 logs the user in254 behaves like authenticates sessionless user255 when the 'personal_access_token' param is populated with the personal access token256 logs the user in257 does not log the user in if page is public258 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token259 logs the user in260 external authorization261 with external authorization service enabled262 GET #show263 is successful264 does not allow other formats265 GET #edit266 is successful267 GET #new268 is successful269 GET #index270 is successful271 POST #create272 creates a group273 PUT #update274 updates a group275 DELETE #destroy276 deletes the group277 GET #activity278 behaves like disabled when using an external authorization service279 works when the feature is not enabled280 renders a 404 with a message when the feature is enabled281 GET #issues282 behaves like disabled when using an external authorization service283 works when the feature is not enabled284 renders a 404 with a message when the feature is enabled285 GET #merge_requests286 behaves like disabled when using an external authorization service287 works when the feature is not enabled288 renders a 404 with a message when the feature is enabled289Ldap::OmniauthCallbacksController290DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)291 allows sign in292DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)293 respects remember me checkbox294 with sign in prevented295 does not allow sign in296 with 2FA297DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)298 passes remember_me to the Devise view299 access denied300DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)301 warns the user302DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)303 doesn't authenticate user304 sign up305DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)306 is allowed307Git HTTP requests308 User with no identities309 when the project doesn't exist310 when namespace doesn't exist311 behaves like pulls require Basic HTTP Authentication312 when no credentials are provided313 responds to downloads with status 401 Unauthorized (no project existence information leak)314 when only username is provided315 responds to downloads with status 401 Unauthorized316 when username and password are provided317 when authentication fails318 responds to downloads with status 401 Unauthorized319 when authentication succeeds320 does not respond to downloads with status 401 Unauthorized321 behaves like pushes require Basic HTTP Authentication322 when no credentials are provided323 responds to uploads with status 401 Unauthorized (no project existence information leak)324 when only username is provided325 responds to uploads with status 401 Unauthorized326 when username and password are provided327 when authentication fails328 responds to uploads with status 401 Unauthorized329 when authentication succeeds330 does not respond to uploads with status 401 Unauthorized331 when authenticated332 rejects downloads and uploads with 404 Not Found333 when namespace exists334 when authenticated335 creates a new project under the existing namespace336DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from append_info_to_payload at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:151)337 rejects push with 422 Unprocessable Entity when project is invalid338 behaves like project path without .git suffix339 GET info/refs340 when no params are added341 redirects to the .git suffix version342 when the upload-pack service is requested343 redirects to the .git suffix version344 when the receive-pack service is requested345 redirects to the .git suffix version346 when the params are anything else347 redirects to the sign-in page348 POST git-upload-pack349 fails to find a route350 POST git-receive-pack351 fails to find a route352 when requesting the Wiki353 when the project is public354 behaves like pushes require Basic HTTP Authentication355 when no credentials are provided356 responds to uploads with status 401 Unauthorized (no project existence information leak)357 when only username is provided358 responds to uploads with status 401 Unauthorized359 when username and password are provided360 when authentication fails361 responds to uploads with status 401 Unauthorized362 when authentication succeeds363 does not respond to uploads with status 401 Unauthorized364 when unauthenticated365 responds to pulls with the wiki's repo366 behaves like pulls are allowed367 allows pulls368 when authenticated369 and as a developer on the team370 but the repo is disabled371 behaves like pulls are allowed372 allows pulls373 behaves like pushes are allowed374 allows pushes375 and not on the team376 rejects pushes with 403 Forbidden377 behaves like pulls are allowed378 allows pulls379 when the project is private380 behaves like pulls require Basic HTTP Authentication381 when no credentials are provided382 responds to downloads with status 401 Unauthorized (no project existence information leak)383 when only username is provided384 responds to downloads with status 401 Unauthorized385 when username and password are provided386 when authentication fails387 responds to downloads with status 401 Unauthorized388 when authentication succeeds389 does not respond to downloads with status 401 Unauthorized390 behaves like pushes require Basic HTTP Authentication391 when no credentials are provided392 responds to uploads with status 401 Unauthorized (no project existence information leak)393 when only username is provided394 responds to uploads with status 401 Unauthorized395 when username and password are provided396 when authentication fails397 responds to uploads with status 401 Unauthorized398 when authentication succeeds399 does not respond to uploads with status 401 Unauthorized400 when authenticated401 and as a developer on the team402 but the repo is disabled403 allows clones404 pushes are allowed405 and not on the team406 rejects clones with 404 Not Found407 rejects pushes with 404 Not Found408 when the project exists409 when the project is public410 behaves like pushes require Basic HTTP Authentication411 when no credentials are provided412 responds to uploads with status 401 Unauthorized (no project existence information leak)413 when only username is provided414 responds to uploads with status 401 Unauthorized415 when username and password are provided416 when authentication fails417 responds to uploads with status 401 Unauthorized418 when authentication succeeds419 does not respond to uploads with status 401 Unauthorized420 when not authenticated421 behaves like pulls are allowed422 allows pulls423 when authenticated424 as a developer on the team425 behaves like pulls are allowed426 allows pulls427 behaves like pushes are allowed428 allows pushes429 but git-receive-pack over HTTP is disabled in config430 rejects pushes with 403 Forbidden431 but git-upload-pack over HTTP is disabled in config432 rejects pushes with 403 Forbidden433 and not a member of the team434 rejects pushes with 403 Forbidden435 behaves like pulls are allowed436 allows pulls437 when merge requests are open that allow maintainer access438 behaves like pushes are allowed439 allows pushes440 when the request is not from gitlab-workhorse441 raises an exception442 when the repo is public443 but the repo is disabled444 behaves like pulls require Basic HTTP Authentication445 when no credentials are provided446 responds to downloads with status 401 Unauthorized (no project existence information leak)447 when only username is provided448 responds to downloads with status 401 Unauthorized449 when username and password are provided450 when authentication fails451 responds to downloads with status 401 Unauthorized452 when authentication succeeds453 does not respond to downloads with status 401 Unauthorized454 behaves like pushes require Basic HTTP Authentication455 when no credentials are provided456 responds to uploads with status 401 Unauthorized (no project existence information leak)457 when only username is provided458 responds to uploads with status 401 Unauthorized459 when username and password are provided460 when authentication fails461 responds to uploads with status 401 Unauthorized462 when authentication succeeds463 does not respond to uploads with status 401 Unauthorized464 but the repo is enabled465 behaves like pulls are allowed466 allows pulls467 but only project members are allowed468 behaves like pulls require Basic HTTP Authentication469 when no credentials are provided470 responds to downloads with status 401 Unauthorized (no project existence information leak)471 when only username is provided472 responds to downloads with status 401 Unauthorized473 when username and password are provided474 when authentication fails475 responds to downloads with status 401 Unauthorized476 when authentication succeeds477 does not respond to downloads with status 401 Unauthorized478 behaves like pushes require Basic HTTP Authentication479 when no credentials are provided480 responds to uploads with status 401 Unauthorized (no project existence information leak)481 when only username is provided482 responds to uploads with status 401 Unauthorized483 when username and password are provided484 when authentication fails485 responds to uploads with status 401 Unauthorized486 when authentication succeeds487 does not respond to uploads with status 401 Unauthorized488 and the user requests a redirected path489 downloads get status 200 for redirects490 when the project is private491 behaves like pulls require Basic HTTP Authentication492 when no credentials are provided493 responds to downloads with status 401 Unauthorized (no project existence information leak)494 when only username is provided495 responds to downloads with status 401 Unauthorized496 when username and password are provided497 when authentication fails498 responds to downloads with status 401 Unauthorized499 when authentication succeeds500 does not respond to downloads with status 401 Unauthorized501 behaves like pushes require Basic HTTP Authentication502 when no credentials are provided503 responds to uploads with status 401 Unauthorized (no project existence information leak)504 when only username is provided505 responds to uploads with status 401 Unauthorized506 when username and password are provided507 when authentication fails508 responds to uploads with status 401 Unauthorized509 when authentication succeeds510 does not respond to uploads with status 401 Unauthorized511 when username and password are provided512 when authentication fails513 when the user is IP banned514 responds with status 403515 when authentication succeeds516 when the user has access to the project517 when the user is blocked518 rejects pulls with 401 Unauthorized519 rejects pulls with 401 Unauthorized for unknown projects (no project existence information leak)520 when the user isn't blocked521 resets the IP in Rack Attack on download522 resets the IP in Rack Attack on upload523 updates the user last activity524 when an oauth token is provided525 behaves like pulls are allowed526 allows pulls527 behaves like pushes are allowed528 allows pushes529 when user has 2FA enabled530 when username and password are provided531 rejects pulls with personal access token error message532 rejects the push attempt with personal access token error message533 when username and personal access token are provided534 rejects the push attempt for read_repository scope535 accepts the push attempt for write_repository scope536 accepts the pull attempt for read_repository scope537 accepts the pull attempt for api scope538 accepts the push attempt for api scope539 behaves like pulls are allowed540 allows pulls541 behaves like pushes are allowed542 allows pushes543 when internal auth is disabled544 rejects pulls with personal access token error message545 rejects pushes with personal access token error message546 when LDAP is configured547 does not display the personal access token error message548 when blank password attempts follow a valid login549 repeated attempts followed by successful attempt550 and the user requests a redirected path551 downloads get status 200552 uploads get status 404 with "project was moved" message553 when the user doesn't have access to the project554 pulls get status 404555 uploads get status 404556 when a gitlab ci token is provided557 when build created by system is authenticated558 rejects pushes with 403 Forbidden559 rejects pulls for other project with 404 Not Found560 behaves like pulls are allowed561 allows pulls562 and build created by563 administrator564 downloads from other project get status 403565 behaves like can download code only566 rejects pushes with 403 Forbidden567 behaves like pulls are allowed568 allows pulls569 when the repo does not exist570 rejects pulls with 404 Not Found571 regular user572 downloads from other project get status 404573 behaves like can download code only574 rejects pushes with 403 Forbidden575 behaves like pulls are allowed576 allows pulls577 when the repo does not exist578 rejects pulls with 404 Not Found579 behaves like project path without .git suffix580 GET info/refs581 when no params are added582 redirects to the .git suffix version583 when the upload-pack service is requested584 redirects to the .git suffix version585 when the receive-pack service is requested586 redirects to the .git suffix version587 when the params are anything else588 redirects to the sign-in page589 POST git-upload-pack590 fails to find a route591 POST git-receive-pack592 fails to find a route593 retrieving an info/refs file594 when the file exists595 returns the file596 when the file does not exist597 redirects598 User with LDAP identity599 behaves like pulls require Basic HTTP Authentication600 when no credentials are provided601 responds to downloads with status 401 Unauthorized (no project existence information leak)602 when only username is provided603 responds to downloads with status 401 Unauthorized604 when username and password are provided605 when authentication fails606 responds to downloads with status 401 Unauthorized607 when authentication succeeds608 does not respond to downloads with status 401 Unauthorized609 behaves like pushes require Basic HTTP Authentication610 when no credentials are provided611 responds to uploads with status 401 Unauthorized (no project existence information leak)612 when only username is provided613 responds to uploads with status 401 Unauthorized614 when username and password are provided615 when authentication fails616 responds to uploads with status 401 Unauthorized617 when authentication succeeds618 does not respond to uploads with status 401 Unauthorized619 when authentication succeeds620 when the project doesn't exist621 responds with status 404 Not Found622 when the project exists623 and the user is on the team624 responds with status 200625 behaves like pulls are allowed626 allows pulls627 behaves like pushes are allowed628 allows pushes629 when terms are enforced630 blocks git access when the user did not accept terms631 when the user accepted the terms632 allows clones633 behaves like pulls are allowed634 allows pulls635 behaves like pushes are allowed636 allows pushes637 from CI638 behaves like pulls are allowed639 allows pulls640ProjectsController641 GET new642 with an authenticated user643 when namespace_id param is present644 when user has access to the namespace645 renders the template646 when user does not have access to the namespace647 responds with status 404648 GET index649 as a user650 redirects to root page651 as a guest652 redirects to Explore page653 GET #activity as JSON654 when user has permission to see the event655 returns count656 when user has no permission to see the event657 filters out invisible event658 filters out invisible event when calculating the count659 GET show660 user not project member661 user does not have access to project662 does not initialize notification setting663 user has access to project664 and does not have notification setting665 initializes notification as disabled666 and has notification setting667 shows current notification setting668 when project repository is disabled669 shows wiki homepage670 shows issues list page if wiki is disabled671 shows customize workflow page if wiki and issues are disabled672 shows activity if enabled by user673 when the storage is not available674DEPRECATION WARNING: render file: should be given the absolute path to a file (called from render at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:123)675 renders a 503676 project with empty repo677 with readme view set678 renders the empty project view679 with activity view set680 renders the empty project view681 with files view set682 renders the empty project view683 project with broken repo684 with readme view set685 renders the empty project view686 with activity view set687 renders the empty project view688 with files view set689 renders the empty project view690 rendering default project view691 renders the activity view692 renders the files view693 renders the readme view694 when the url contains .atom695 expects an error creating the project696 when the project is pending deletions697 renders a 404 error698 redirection from http://someproject.git699 redirects to project page (format.html)700 when the project is forked and has a repository701 does not increase the number of queries when the project is forked702 lfs_blob_ids instance variable703 with vue tree view enabled704 is not set705 with vue tree view disabled706 is set707 GET edit708 allows an admin user to access the page709 sets the badge API endpoint710 POST #archive711 for a user with the ability to archive a project712 archives the project713 redirects to projects path714 for a user that does not have the ability to archive a project715 does not archive the project716 returns 404717 POST #unarchive718 for a user with the ability to unarchive a project719 unarchives the project720 redirects to projects path721 for a user that does not have the ability to unarchive a project722 does not unarchive the project723 returns 404724 #housekeeping725 when authenticated as owner726 forces a full garbage collection727 when authenticated as developer728 does not execute housekeeping729 #update730 hashed storage731 behaves like updating a project732 updates Fast Forward Merge attributes733 does not update namespace734 when only renaming a project path735 sets the repository to the right path after a rename736 when project has container repositories with tags737 does not allow to rename the project738 legacy storage739 behaves like updating a project740 updates Fast Forward Merge attributes741 does not update namespace742 when only renaming a project path743 sets the repository to the right path after a rename744 when project has container repositories with tags745 does not allow to rename the project746 as maintainer747 behaves like unauthorized when external service denies access748 allows access when the authorization service allows it749 allows access when the authorization service denies it750 updates when the service allows access751 does not update when the service rejects access752 #transfer753 updates namespace754 when new namespace is empty755 project namespace is not changed756 #destroy757 redirects to the dashboard758 when the project is forked759 closes all related merge requests760 PUT #new_issuable_address for issue761 has http status 200762 changes the user incoming email token763 changes projects new issue address764 PUT #new_issuable_address for merge request765 has http status 200766 changes the user incoming email token767 changes projects new merge request address768 POST #toggle_star769 toggles star if user is signed in770 does nothing if user is not signed in771 DELETE remove_fork772 does nothing if user is not signed in773 when signed in774 with forked project775 removes fork from project776 when project not forked777 does nothing if project was not forked778 GET refs779 gets a list of branches and tags780 gets a list of branches, tags and commits781 when preferred language is Japanese782 gets a list of branches, tags and commits783 when private project784 as a guest785 renders forbidden786 POST #preview_markdown787 renders json in a correct format788 when not authorized789 returns 404790 state filter on references791 renders JSON body with state filter for issues792 renders JSON body with state filter for MRs793 when path parameter is provided794 renders JSON body with image links expanded795 #ensure_canonical_path796 for a GET request797 when requesting the canonical path798 with exactly matching casing799 loads the project800 with different casing801 redirects to the normalized path802 when requesting a redirected path803 redirects to the canonical path804 redirects to the canonical path (testing non-show action)805 for a POST request806 when requesting the canonical path with different casing807 does not 404808 does not redirect to the correct casing809 when requesting a redirected path810 returns not found811 for a DELETE request812 when requesting the canonical path with different casing813 does not 404814 does not redirect to the correct casing815 when requesting a redirected path816 returns not found817 project export818 #export819 when project export is enabled820 returns 302821 when project export is disabled822 returns 404823 when the endpoint receives requests above the limit824 prevents requesting project export825 #download_export826 object storage enabled827 when project export is enabled828 returns 302829 when project export is disabled830 returns 404831 when the endpoint receives requests above the limit832 prevents requesting project export833 #remove_export834 when project export is enabled835 returns 302836 when project export is disabled837 returns 404838 #generate_new_export839 when project export is enabled840 returns 302841 when project export is disabled842 returns 404843 when the endpoint receives requests above the limit844 prevents requesting project export845 private project with token authentication846 behaves like authenticates sessionless user847 doesn't log the user in otherwise848 when the 'personal_access_token' param is populated with the personal access token849 logs the user in850 when the personal access token has no api scope851 does not log the user in852 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token853 logs the user in854 public project with token authentication855 behaves like authenticates sessionless user856 when the 'personal_access_token' param is populated with the personal access token857 logs the user in858 does not log the user in if page is public859 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token860 logs the user in861 GET resolve862 with an authenticated user863 gives 404 for non-existing project864 when user has access to the project865 behaves like resolvable endpoint866 redirects to the project page867 when user has no access to the project868 gives 404 for existing project869 non authenticated user870 gives 404 for private project871 with a public project872 behaves like resolvable endpoint873 redirects to the project page874API::Helpers875 .current_user876 Warden authentication877 with invalid credentials878 GET request879 is expected to be nil880 with valid credentials881 GET request882 is expected to eq #<User id:1050 @user1049>883 sets the environment with data of the current user884 HEAD request885 is expected to eq #<User id:1052 @user1051>886 PUT request887 without CSRF token888 is expected to be nil889 with CSRF token890 is expected to eq #<User id:1054 @user1053>891 POST request892 without CSRF token893 is expected to be nil894 with CSRF token895 is expected to eq #<User id:1056 @user1055>896 DELETE request897 without CSRF token898 is expected to be nil899 with CSRF token900 is expected to eq #<User id:1058 @user1057>901 when authenticating using a user's personal access tokens902 returns a 401 response for an invalid token903 returns a 403 response for a user without access904 returns a 403 response for a user who is blocked905 sets current_user906 does not allow tokens without the appropriate scope907 does not allow revoked tokens908 does not allow expired tokens909 when terms are enforced910 returns a 403 when a user has not accepted the terms911 sets the current user when the user accepted the terms912 when impersonation is disabled913 does not allow impersonation tokens914 .handle_api_exception915 does not report a MethodNotAllowed exception to Sentry916 does report RuntimeError to Sentry917 with a personal access token given918 does not raise an additional exception because of missing `request`919 extra information920 sends the params, excluding confidential values921 .authenticate_non_get!922 method is HEAD923 does not raise an error924 method is GET925 does not raise an error926 method is POST927 calls authenticate!928 method is PUT929 calls authenticate!930 method is PATCH931 calls authenticate!932 method is DELETE933 calls authenticate!934 .authenticate!935 current_user is nil936 returns a 401 response937 current_user is present938 does not raise an error939 sudo940 using an OAuth token941 behaves like sudo942 when admin943 when token has sudo scope944 when user exists945 when using header946 when providing username947 behaves like successful sudo948 sets current_user949 sets sudo?950 when providing username (case insensitive)951 behaves like successful sudo952 sets current_user953 sets sudo?954 when providing user ID955 behaves like successful sudo956 sets current_user957 sets sudo?958 when using param959 when providing username960 behaves like successful sudo961 sets current_user962 sets sudo?963 when providing username (case insensitive)964 behaves like successful sudo965 sets current_user966 sets sudo?967 when providing user ID968 behaves like successful sudo969 sets current_user970 sets sudo?971 when user does not exist972 raises an error973 when token does not have sudo scope974 raises an error975 when not admin976 raises an error977 using a personal access token978 passed as param979 behaves like sudo980 when admin981 when token has sudo scope982 when user exists983 when using header984 when providing username985 behaves like successful sudo986 sets current_user987 sets sudo?988 when providing username (case insensitive)989 behaves like successful sudo990 sets current_user991 sets sudo?992 when providing user ID993 behaves like successful sudo994 sets current_user995 sets sudo?996 when using param997 when providing username998 behaves like successful sudo999 sets current_user1000 sets sudo?1001 when providing username (case insensitive)1002 behaves like successful sudo1003 sets current_user1004 sets sudo?1005 when providing user ID1006 behaves like successful sudo1007 sets current_user1008 sets sudo?1009 when user does not exist1010 raises an error1011 when token does not have sudo scope1012 raises an error1013 when not admin1014 raises an error1015 passed as header1016 behaves like sudo1017 when admin1018 when token has sudo scope1019 when user exists1020 when using header1021 when providing username1022 behaves like successful sudo1023 sets current_user1024 sets sudo?1025 when providing username (case insensitive)1026 behaves like successful sudo1027 sets current_user1028 sets sudo?1029 when providing user ID1030 behaves like successful sudo1031 sets current_user1032 sets sudo?1033 when using param1034 when providing username1035 behaves like successful sudo1036 sets current_user1037 sets sudo?1038 when providing username (case insensitive)1039 behaves like successful sudo1040 sets current_user1041 sets sudo?1042 when providing user ID1043 behaves like successful sudo1044 sets current_user1045 sets sudo?1046 when user does not exist1047 raises an error1048 when token does not have sudo scope1049 raises an error1050 when not admin1051 raises an error1052 using warden authentication1053 raises an error1054API::Repositories1055 GET /projects/:id/repository/tree1056 when unauthenticated and project is public1057 behaves like repository tree1058 returns the repository tree1059 when ref does not exist1060 behaves like 404 response1061 returns 4041062 when repository is disabled1063 behaves like 403 response1064 returns 4031065 with recursive=11066 returns recursive project paths tree1067 when repository is disabled1068 behaves like 403 response1069 returns 4031070 when ref does not exist1071 behaves like 404 response1072 returns 4041073 when unauthenticated and project is private1074 behaves like 404 response1075 returns 4041076 when authenticated as a developer1077 behaves like repository tree1078 returns the repository tree1079 when ref does not exist1080 behaves like 404 response1081 returns 4041082 when repository is disabled1083 behaves like 403 response1084 returns 4031085 with recursive=11086 returns recursive project paths tree1087 when repository is disabled1088 behaves like 403 response1089 returns 4031090 when ref does not exist1091 behaves like 404 response1092 returns 4041093 when authenticated as a guest1094 behaves like 403 response1095 returns 4031096 GET /projects/:id/repository/blobs/:sha1097 when unauthenticated and project is public1098 behaves like repository blob1099 returns blob attributes as json1100 when sha does not exist1101 behaves like 404 response1102 returns 4041103 when repository is disabled1104 behaves like 403 response1105 returns 4031106 when unauthenticated and project is private1107 behaves like 404 response1108 returns 4041109 when authenticated as a developer1110 behaves like repository blob1111 returns blob attributes as json1112 when sha does not exist1113 behaves like 404 response1114 returns 4041115 when repository is disabled1116 behaves like 403 response1117 returns 4031118 when authenticated as a guest1119 behaves like 403 response1120 returns 4031121 GET /projects/:id/repository/blobs/:sha/raw1122 when unauthenticated and project is public1123 behaves like repository raw blob1124 returns the repository raw blob1125 sets inline content disposition by default1126 when sha does not exist1127 behaves like 404 response1128 returns 4041129 when repository is disabled1130 behaves like 403 response1131 returns 4031132 when unauthenticated and project is private1133 behaves like 404 response1134 returns 4041135 when authenticated as a developer1136 behaves like repository raw blob1137 returns the repository raw blob1138 sets inline content disposition by default1139 when sha does not exist1140 behaves like 404 response1141 returns 4041142 when repository is disabled1143 behaves like 403 response1144 returns 4031145 when authenticated as a guest1146 behaves like 403 response1147 returns 4031148 GET /projects/:id/repository/archive(.:format)?:sha1149 when unauthenticated and project is public1150 behaves like repository archive1151 returns the repository archive1152 returns the repository archive archive.zip1153 returns the repository archive archive.tar.bz21154 rate limits user when thresholds hit1155 when sha does not exist1156 behaves like 404 response1157 returns 4041158 when unauthenticated and project is private1159 behaves like 404 response1160 returns 4041161 when authenticated as a developer1162 behaves like repository archive1163 returns the repository archive1164 returns the repository archive archive.zip1165 returns the repository archive archive.tar.bz21166 rate limits user when thresholds hit1167 when sha does not exist1168 behaves like 404 response1169 returns 4041170 when authenticated as a guest1171 behaves like 403 response1172 returns 4031173 GET /projects/:id/repository/compare1174 when unauthenticated and project is public1175 behaves like repository compare1176 compares branches1177 compares branches with explicit merge-base mode1178 compares branches with explicit straight mode1179 compares tags1180 compares commits1181 compares commits in reverse order1182 compares same refs1183 returns an empty string when the diff overflows1184 returns a 404 when from ref is unknown1185 returns a 404 when to ref is unknown1186 when unauthenticated and project is private1187 behaves like 404 response1188 returns 4041189 when authenticated as a developer1190 behaves like repository compare1191 compares branches1192 compares branches with explicit merge-base mode1193 compares branches with explicit straight mode1194 compares tags1195 compares commits1196 compares commits in reverse order1197 compares same refs1198 returns an empty string when the diff overflows1199 returns a 404 when from ref is unknown1200 returns a 404 when to ref is unknown1201 when authenticated as a guest1202 behaves like 403 response1203 returns 4031204 GET /projects/:id/repository/contributors1205 when unauthenticated and project is public1206 behaves like repository contributors1207 returns valid data1208 using sorting1209 by commits desc1210 returns the repository contribuors sorted by commits desc1211 by name desc1212 returns the repository contribuors sorted by name asc case insensitive1213 when unauthenticated and project is private1214 behaves like 404 response1215 returns 4041216 when authenticated as a developer1217 behaves like repository contributors1218 returns valid data1219 using sorting1220 by commits desc1221 returns the repository contribuors sorted by commits desc1222 by name desc1223 returns the repository contribuors sorted by name asc case insensitive1224 when authenticated as a guest1225 behaves like 403 response1226 returns 4031227 Links header contains working URLs when no `order_by` nor `sort` is given1228 returns `Link` header that includes URLs with default value for `order_by` & `sort`1229 GET :id/repository/merge_base1230 when unauthenticated and project is public1231 behaves like merge base1232 returns the common ancestor1233 when unauthenticated and project is private1234 behaves like 404 response1235 returns 4041236 when authenticated as a developer1237 behaves like merge base1238 returns the common ancestor1239 when authenticated as a guest1240 behaves like 403 response1241 returns 4031242 when passing refs that do not exist1243 behaves like 400 response1244 returns 4001245 when passing refs that do not have a merge base1246 behaves like 404 response1247 returns 4041248 when not enough refs are passed1249 renders a bad request error1250Emails::Profile1251 for new users, the email1252 contains the password text1253 includes a link for user to set password1254 explains the reset link expiration1255 behaves like an email sent from GitLab1256 has the characteristics of an email sent from GitLab1257 behaves like a new user email1258 is sent to the new user with the correct subject and body1259 behaves like it should not have Gmail Actions links1260 is expected not to have body including "ViewAction"1261 behaves like a user cannot unsubscribe through footer link1262 does not have a List-Unsubscribe header or a body link1263 for users that signed up, the email1264 does not contain the new user's password1265 behaves like an email sent from GitLab1266 has the characteristics of an email sent from GitLab1267 behaves like a new user email1268 is sent to the new user with the correct subject and body1269 behaves like it should not have Gmail Actions links1270 is expected not to have body including "ViewAction"1271 behaves like a user cannot unsubscribe through footer link1272 does not have a List-Unsubscribe header or a body link1273 user added ssh key1274 is sent to the new user1275 has the correct subject1276 contains the new ssh key title1277 includes a link to ssh keys page1278 behaves like an email sent from GitLab1279 has the characteristics of an email sent from GitLab1280 behaves like it should not have Gmail Actions links1281 is expected not to have body including "ViewAction"1282 behaves like a user cannot unsubscribe through footer link1283 does not have a List-Unsubscribe header or a body link1284 with SSH key that does not exist1285 is expected not to raise Exception1286 user added gpg key1287 is sent to the new user1288 has the correct subject1289 contains the new gpg key title1290 includes a link to gpg keys page1291 behaves like an email sent from GitLab1292 has the characteristics of an email sent from GitLab1293 behaves like it should not have Gmail Actions links1294 is expected not to have body including "ViewAction"1295 behaves like a user cannot unsubscribe through footer link1296 does not have a List-Unsubscribe header or a body link1297 with GPG key that does not exist1298 is expected not to raise Exception1299 user personal access token is about to expire1300 is sent to the user1301 has the correct subject1302 mentions the access tokens will expire1303 includes a link to personal access tokens page1304 includes the email reason1305 behaves like an email sent from GitLab1306 has the characteristics of an email sent from GitLab1307 behaves like it should not have Gmail Actions links1308 is expected not to have body including "ViewAction"1309 behaves like a user cannot unsubscribe through footer link1310 does not have a List-Unsubscribe header or a body link1311 with User does not exist1312 is expected not to raise Exception1313Projects::ReleasesController1314 GET #index1315 as html1316DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/releases_controller_spec.rb:84)1317 returns a text/html content_type1318 behaves like common access controls1319 renders a 2001320 when the project is private1321 when user is a developer1322 renders a 200 for a logged in developer1323 when user is an external user1324 renders a 404 when logged in but not in the project1325 when the project is private and the user is not logged in1326 returns a redirect1327 as json1328DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/releases_controller_spec.rb:102)1329 returns an application/json content_type1330 returns the project's releases as JSON, ordered by released_at1331 behaves like common access controls1332 renders a 2001333 when the project is private1334 when user is a developer1335 renders a 200 for a logged in developer1336 when user is an external user1337 renders a 404 when logged in but not in the project1338 when the project is private and the user is not logged in1339 returns a redirect1340 GET #edit1341 behaves like successful request1342 renders a 2001343 when tag name contains slash1344 is accesible at a URL encoded path1345 behaves like successful request1346 renders a 2001347 when release does not exist1348 behaves like not found1349 renders 4041350 when user is a reporter1351 behaves like not found1352 renders 4041353 GET #show1354 behaves like successful request1355 renders a 2001356 when tag name contains slash1357 is accesible at a URL encoded path1358 behaves like successful request1359 renders a 2001360 when feature flag `release_show_page` is disabled1361 behaves like not found1362 renders 4041363 when release does not exist1364 behaves like not found1365 renders 4041366 GET #downloads1367 valid filepath1368 redirects to the asset direct link1369 invalid filepath1370 is not found1371 ignores filepath extension1372 redirects to the asset direct link1373 GET #evidence1374 when the user is a developer1375 returns the correct evidence summary as a json1376 when the release was created before evidence existed1377 returns an empty json1378 when the user is a guest for the project1379 when the project is private1380 behaves like not found1381 renders 4041382 when the project is public1383 behaves like successful request1384 renders a 2001385 when release is associated to a milestone which includes an issue1386 when user is non-project member1387 behaves like safely expose evidence1388 behaves like does not show the issue in evidence1389 is expected to eq true1390 when the issue is confidential1391 behaves like does not show the issue in evidence1392 is expected to eq true1393 when the user is the author of the confidential issue1394 behaves like does not show the issue in evidence1395 is expected to eq true1396 when project is private1397 behaves like evidence not found1398 is expected to respond with numeric status code not_found1399 when project restricts the visibility of issues to project members only1400 behaves like evidence not found1401 is expected to respond with numeric status code not_found1402 when user is auditor1403 behaves like safely expose evidence1404 behaves like does not show the issue in evidence1405 is expected to eq true1406 when the issue is confidential1407 behaves like does not show the issue in evidence1408 is expected to eq true1409 when the user is the author of the confidential issue1410 behaves like does not show the issue in evidence1411 is expected to eq true1412 when project is private1413 behaves like evidence not found1414 is expected to respond with numeric status code not_found1415 when project restricts the visibility of issues to project members only1416 behaves like evidence not found1417 is expected to respond with numeric status code not_found1418 when external authorization control is enabled1419 behaves like evidence not found1420 is expected to respond with numeric status code not_found1421Private Project Pages Access1422 Project should be private1423 #private?1424 is expected to be truthy1425 GET /projects/:id/pages_access1426 access depends on the level1427 pages_access_level: 0, with_user: "admin", expected_result: 4031428 correct return value1429 pages_access_level: 0, with_user: "owner", expected_result: 4031430 correct return value1431 pages_access_level: 0, with_user: "master", expected_result: 4031432 correct return value1433 pages_access_level: 0, with_user: "developer", expected_result: 4031434 correct return value1435 pages_access_level: 0, with_user: "reporter", expected_result: 4031436 correct return value1437 pages_access_level: 0, with_user: "guest", expected_result: 4031438 correct return value1439 pages_access_level: 0, with_user: "user", expected_result: 4041440 correct return value1441 pages_access_level: 0, with_user: nil, expected_result: 4041442 correct return value1443 pages_access_level: 30, with_user: "admin", expected_result: 2001444 correct return value1445 pages_access_level: 30, with_user: "owner", expected_result: 2001446 correct return value1447 pages_access_level: 30, with_user: "master", expected_result: 2001448 correct return value1449 pages_access_level: 30, with_user: "developer", expected_result: 2001450 correct return value1451 pages_access_level: 30, with_user: "reporter", expected_result: 2001452 correct return value1453 pages_access_level: 30, with_user: "guest", expected_result: 2001454 correct return value1455 pages_access_level: 30, with_user: "user", expected_result: 4041456 correct return value1457 pages_access_level: 30, with_user: nil, expected_result: 4041458 correct return value1459 pages_access_level: 20, with_user: "admin", expected_result: 2001460 correct return value1461 pages_access_level: 20, with_user: "owner", expected_result: 2001462 correct return value1463 pages_access_level: 20, with_user: "master", expected_result: 2001464 correct return value1465 pages_access_level: 20, with_user: "developer", expected_result: 2001466 correct return value1467 pages_access_level: 20, with_user: "reporter", expected_result: 2001468 correct return value1469 pages_access_level: 20, with_user: "guest", expected_result: 2001470 correct return value1471 pages_access_level: 20, with_user: "user", expected_result: 4041472 correct return value1473 pages_access_level: 20, with_user: nil, expected_result: 4041474 correct return value1475 pages_access_level: 10, with_user: "admin", expected_result: 2001476 correct return value1477 pages_access_level: 10, with_user: "owner", expected_result: 2001478 correct return value1479 pages_access_level: 10, with_user: "master", expected_result: 2001480 correct return value1481 pages_access_level: 10, with_user: "developer", expected_result: 2001482 correct return value1483 pages_access_level: 10, with_user: "reporter", expected_result: 2001484 correct return value1485 pages_access_level: 10, with_user: "guest", expected_result: 2001486 correct return value1487 pages_access_level: 10, with_user: "user", expected_result: 4041488 correct return value1489 pages_access_level: 10, with_user: nil, expected_result: 4041490 correct return value1491API::ProjectContainerRepositories1492 GET /projects/:id/registry/repositories1493 behaves like rejected container repository access1494 for guest1495 returns forbidden1496 behaves like rejected container repository access1497 for anonymous1498 returns not_found1499 behaves like a gitlab tracking event1500 creates a gitlab tracking event list_repositories1501 behaves like returns repositories for allowed users1502 for reporter1503 returns a list of repositories1504 returns a matching schema1505 with tags param1506 returns a list of repositories and their tags1507 returns a matching schema1508 DELETE /projects/:id/registry/repositories/:repository_id1509 behaves like rejected container repository access1510 for developer1511 returns forbidden1512 behaves like rejected container repository access1513 for anonymous1514 returns not_found1515 behaves like a gitlab tracking event1516 creates a gitlab tracking event delete_repository1517 for maintainer1518 schedules removal of repository1519 GET /projects/:id/registry/repositories/:repository_id/tags1520 behaves like rejected container repository access1521 for guest1522 returns forbidden1523 behaves like rejected container repository access1524 for anonymous1525 returns not_found1526 for reporter1527 returns a list of tags1528 returns a matching schema1529 behaves like a gitlab tracking event1530 creates a gitlab tracking event list_tags1531 DELETE /projects/:id/registry/repositories/:repository_id/tags1532 disallowed1533 behaves like rejected container repository access1534 for developer1535 returns forbidden1536 behaves like rejected container repository access1537 for anonymous1538 returns not_found1539 behaves like a gitlab tracking event1540 creates a gitlab tracking event delete_tag_bulk1541 for maintainer1542 without required parameters1543 returns bad request1544 without name_regex1545 returns bad request1546 passes all declared parameters1547 schedules cleanup of tags repository1548 called multiple times in one hour1549 returns 400 with an error message1550 executes service only for the first time1551 with deprecated name_regex param1552 schedules cleanup of tags repository1553 GET /projects/:id/registry/repositories/:repository_id/tags/:tag_name1554 behaves like rejected container repository access1555 for guest1556 returns forbidden1557 behaves like rejected container repository access1558 for anonymous1559 returns not_found1560 for reporter1561 returns a details of tag1562 returns a matching schema1563 DELETE /projects/:id/registry/repositories/:repository_id/tags/:tag_name1564 behaves like rejected container repository access1565 for reporter1566 returns forbidden1567 behaves like rejected container repository access1568 for anonymous1569 returns not_found1570 for developer1571 when there are multiple tags1572 properly removes tag1573 when there's only one tag1574 properly removes tag1575Projects::MilestonesController1576 behaves like milestone tabs1577 #merge_requests1578 as html1579 redirects to milestone#show1580 as json1581 renders the merge requests tab template to a string1582 #participants1583 as html1584 redirects to milestone#show1585 as json1586 renders the participants tab template to a string1587 #labels1588 as html1589 redirects to milestone#show1590 as json1591 renders the labels tab template to a string1592 #show1593DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (3 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/milestones_controller_spec.rb:34)1594 shows milestone page1595DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (3 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/milestones_controller_spec.rb:41)1596 returns milestone json1597 #index1598 as html1599 queries only projects milestones1600 searches milestones by title when search_title is given1601 renders paginated milestones without missing or duplicates1602 as json1603 with a single group ancestor1604 queries projects milestones and groups milestones1605 with nested groups1606 queries projects milestones and all ancestors milestones1607 #destroy1608 removes milestone1609 #promote1610 when user does not have permission to promote milestone1611 renders 4041612 #labels1613 as json1614DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (5 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/milestones_controller_spec.rb:198)1615 does not render labels of private issues if user has no access1616DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (5 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/milestones_controller_spec.rb:209)1617 does render labels of private issues if user has access1618 promotion succeeds1619 shows group milestone1620 renders milestone name without parsing it as HTML1621 when user cannot admin group milestones1622 renders 4041623 #participants1624 when guest user1625 when issue is not confidential1626DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (5 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/milestones_controller_spec.rb:271)1627 shows milestone participants1628 when issue is confidential1629DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (5 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/projects/milestones_controller_spec.rb:286)1630 shows no milestone participants1631Projects::MergeRequests::ConflictsController1632 GET show1633 when the conflicts cannot be resolved in the UI1634 returns a 200 status code1635 returns JSON with a message1636 with valid conflicts1637 matches the schema1638 includes meta info about the MR1639 includes each file that has conflicts1640 splits files into sections with lines1641 has unique section IDs across files1642 GET conflict_for_path1643 when the conflicts cannot be resolved in the UI1644 returns a 404 status code1645 when the file does not exist cannot be resolved in the UI1646 returns a 404 status code1647 with an existing file1648 returns a 200 status code1649 returns the file in JSON format1650 POST resolve_conflicts1651 with valid params1652 creates a new commit on the branch1653 returns an OK response1654 when sections are missing1655 returns a 400 error1656 has a message with the name of the first missing section1657 does not create a new commit1658 when files are missing1659 returns a 400 error1660 has a message with the name of the missing file1661 does not create a new commit1662 when a file has identical content to the conflict1663 returns a 400 error1664 has a message with the path of the problem file1665 does not create a new commit1666API::DeployKeys1667 GET /deploy_keys1668 when unauthenticated1669 returns authentication error1670 when authenticated as non-admin user1671 returns a 403 error1672 when authenticated as admin1673 returns all deploy keys1674 GET /projects/:id/deploy_keys1675 returns array of ssh keys1676 GET /projects/:id/deploy_keys/:key_id1677 returns a single key1678 returns 404 Not Found with invalid ID1679 POST /projects/:id/deploy_keys1680 does not create an invalid ssh key1681 does not create a key without title1682 creates new ssh key1683 returns an existing ssh key when attempting to add a duplicate1684 joins an existing ssh key to a new project1685 accepts can_push parameter1686 PUT /projects/:id/deploy_keys/:key_id1687 with non-admin1688 does not update a public deploy key1689 with admin1690 public deploy key attached to project1691 updates the title of the deploy key1692 updates can_push of deploy_keys_project1693 private deploy key1694 updates the title of the deploy key1695 updates can_push of deploy_keys_project1696 invalid title1697 does not update the title of the deploy key1698 with admin as project maintainer1699 public deploy key attached to project1700 updates the title of the deploy key1701 updates can_push of deploy_keys_project1702 with maintainer1703 public deploy key attached to project1704 does not update the title of the deploy key1705 updates can_push of deploy_keys_project1706 DELETE /projects/:id/deploy_keys/:key_id1707 removes existing key from project1708 returns 404 Not Found with invalid ID1709 when the deploy key is public1710 does not delete the deploy key1711 when the deploy key is not public1712 when the deploy key is only used by this project1713 deletes the deploy key1714 when the deploy key is used by other projects1715 does not delete the deploy key1716 behaves like 412 response1717 for a modified ressource1718 returns 412 with a JSON error1719 for an unmodified ressource1720 returns 204 with an empty body1721 POST /projects/:id/deploy_keys/:key_id/enable1722 when the user can admin the project1723 enables the key1724 when authenticated as non-admin user1725 returns a 404 error1726Projects::DiscussionsController1727 GET show1728 when user is not authorized to read the MR1729 returns 4041730 when user is authorized to read the MR1731 returns status 2001732 returns status 404 if MR does not exists1733 when user is authorized but note is LegacyDiffNote1734 returns status 2001735 POST resolve1736 when the user is not authorized to resolve the discussion1737 returns status 4041738 when the user is authorized to resolve the discussion1739 when the discussion is not resolvable1740 returns status 4041741 when the discussion is resolvable1742 resolves the discussion1743 sends notifications if all discussions are resolved1744 returns the name of the resolving user1745 returns status 2001746 renders discussion with serializer1747 diff discussion1748 returns truncated diff lines1749 DELETE unresolve1750 when the user is not authorized to resolve the discussion1751 returns status 4041752 when the user is authorized to resolve the discussion1753 when the discussion is not resolvable1754 returns status 4041755 when the discussion is resolvable1756 unresolves the discussion1757 returns status 2001758 when vue_mr_discussions cookie is present1759 renders discussion with serializer1760API::ProtectedBranches1761 GET /projects/:id/protected_branches1762 when authenticated as a maintainer1763 when search param is not present1764 behaves like protected branches1765 returns the protected branches1766 when search param is present1767 behaves like protected branches1768 returns the protected branches1769 when authenticated as a guest1770 behaves like 403 response1771 returns 4031772 GET /projects/:id/protected_branches/:branch1773 when authenticated as a maintainer1774 behaves like protected branch1775 returns the protected branch1776 when protected branch does not exist1777 behaves like 404 response1778 returns 4041779 when protected branch contains a wildcard1780 behaves like protected branch1781 returns the protected branch1782 when protected branch does not exist1783 behaves like 404 response1784 returns 4041785 when protected branch contains a period1786 behaves like protected branch1787 returns the protected branch1788 when protected branch does not exist1789 behaves like 404 response1790 returns 4041791 when authenticated as a guest1792 behaves like 403 response1793 returns 4031794 POST /projects/:id/protected_branches1795 when authenticated as a maintainer1796 protects a single branch1797 protects a single branch and developers can push1798 protects a single branch and developers can merge1799 protects a single branch and developers can push and merge1800 protects a single branch and no one can push1801 protects a single branch and no one can merge1802 protects a single branch and no one can push or merge1803 returns a 409 error if the same branch is protected twice1804 when branch has a wildcard in its name1805 protects multiple branches with a wildcard in the name1806 when a policy restricts rule deletion1807 prevents deletion of the protected branch rule1808 when authenticated as a guest1809 returns a 403 error if guest1810 DELETE /projects/:id/protected_branches/unprotect/:branch1811 unprotects a single branch1812 returns 404 if branch does not exist1813 behaves like 412 response1814 for a modified ressource1815 returns 412 with a JSON error1816 for an unmodified ressource1817 returns 204 with an empty body1818 when a policy restricts rule deletion1819 prevents deletion of the protected branch rule1820 when branch has a wildcard in its name1821 unprotects a wildcard branch1822API::ProjectHooks ProjectHooks1823 GET /projects/:id/hooks1824 authorized user1825 returns project hooks1826 unauthorized user1827 does not access project hooks1828 GET /projects/:id/hooks/:hook_id1829 authorized user1830 returns a project hook1831 returns a 404 error if hook id is not available1832 unauthorized user1833 does not access an existing hook1834 POST /projects/:id/hooks1835 adds hook to project1836 adds the token without including it in the response1837 returns a 400 error if url not given1838 returns a 422 error if url not valid1839 returns a 422 error if branch filter is not valid1840 PUT /projects/:id/hooks/:hook_id1841 updates an existing project hook1842 adds the token without including it in the response1843 returns 404 error if hook id not found1844 returns 400 error if url is not given1845 returns a 422 error if url is not valid1846 DELETE /projects/:id/hooks/:hook_id1847 deletes hook from project1848 returns a 404 error when deleting non existent hook1849 returns a 404 error if hook id not given1850 returns a 404 if a user attempts to delete project hooks they do not own1851 behaves like 412 response1852 for a modified ressource1853 returns 412 with a JSON error1854 for an unmodified ressource1855 returns 204 with an empty body1856UsersController1857 GET #show1858 with rendered views1859 when logged in1860 renders the show template1861 when logged out1862 renders the show template1863 when public visibility level is restricted1864 when logged out1865 redirects to login page1866 when logged in1867 renders show1868 when a user by that username does not exist1869 when logged out1870 redirects to login page1871 when logged in1872 renders 4041873 json with events1874 loads events1875 hides events if the user cannot read cross project1876 hides events if the user has a private profile1877 GET #calendar1878 for user1879 with public profile1880 renders calendar1881 with private profile1882 does not render calendar1883 forked project1884 includes forked projects1885 GET #calendar_activities1886 assigns @calendar_date1887 for user1888 with public profile1889 renders calendar_activities1890 avoids N+1 queries1891 with private profile1892 does not render calendar_activities1893 external authorization1894 behaves like disabled when using an external authorization service1895 works when the feature is not enabled1896 renders a 404 with a message when the feature is enabled1897 GET #contributed1898 with public profile1899 renders contributed projects1900 with private profile1901 does not render contributed projects1902 GET #snippets1903 format html1904 renders snippets page1905 format json1906 response with snippets json data1907 external authorization1908 behaves like disabled when using an external authorization service1909 works when the feature is not enabled1910 renders a 404 with a message when the feature is enabled1911 GET #exists1912 when user exists1913 returns JSON indicating the user exists1914 when the casing is different1915 returns JSON indicating the user exists1916 when the user does not exist1917 returns JSON indicating the user does not exist1918 when a user changed their username1919 returns JSON indicating a user by that username does not exist1920 GET #suggests1921 when user exists1922 returns JSON indicating the user exists and a suggestion1923 when the casing is different1924 returns JSON indicating the user exists and a suggestion1925 when the user does not exist1926 returns JSON indicating the user does not exist1927 when a user changed their username1928 returns JSON indicating a user by that username does not exist1929 #ensure_canonical_path1930 for a GET request1931 when requesting users at the root path1932 when requesting the canonical path1933 with exactly matching casing1934 responds with success1935 with different casing1936 redirects to the correct casing1937 when requesting a redirected path1938 redirects to the canonical path1939 when the old path is a substring of the scheme or host1940 does not modify the requested host1941 when the old path is substring of users1942 redirects to the canonical path1943 when requesting users under the /users path1944 when requesting the canonical path1945 with exactly matching casing1946 responds with success1947 with different casing1948 redirects to the correct casing1949 when requesting a redirected path1950 redirects to the canonical path1951 when the old path is a substring of the scheme or host1952 does not modify the requested host1953 when the old path is substring of users1954 does not modify the /users part of the path1955 token authentication1956 behaves like authenticates sessionless user1957 when the 'personal_access_token' param is populated with the personal access token1958 logs the user in1959 does not log the user in if page is public1960 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token1961 logs the user in1962Projects::VariablesController1963 GET #show1964 renders the variables as json1965 has only one variable1966 PATCH #update1967 with invalid new variable parameters1968 does not update the existing variable1969 does not create the new variable1970 returns a bad request response1971 with duplicate new variable parameters1972 does not update the existing variable1973 does not create the new variable1974 returns a bad request response1975 with valid new variable parameters1976 updates the existing variable1977 creates the new variable1978 returns a successful response1979 has all variables in response1980 with a deleted variable1981 destroys the variable1982 returns a successful response1983 has all variables in response1984 for variables of type file1985 creates new variable of type file1986 with environment scope1987 with same key and different environment scope1988 does not update the existing variable1989 creates the new variable1990 returns a successful response including all variables1991 with same key and same environment scope1992 does not update the existing variable1993 does not create the new variable1994 returns a bad request response1995SearchController1996 GET #show1997 finds issue comments1998 behaves like when the user cannot read cross project1999 blocks access without a project_id2000 allows access with a project_id2001 still allows accessing the search page2002 behaves like with external authorization service enabled2003 renders a 403 when no project is given2004 renders a 200 when a project was set2005 uses the right partials depending on scope2006 partial: "_blob", scope: :blobs2007 is expected to render template search/results/_blob2008 partial: "_wiki_blob", scope: :wiki_blobs2009 is expected to render template search/results/_wiki_blob2010 partial: "_commit", scope: :commits2011 is expected to render template search/results/_commit2012 global search2013 omits pipeline status from load2014 check search term length2015 string_name: :chars_under_limit, expectation: :not_to_set_flash2016 is expected not to should set flash[:alert]2017 string_name: :chars_over_limit, expectation: :set_chars_flash2018 is expected to should set flash[:alert] to a value matching /characters/2019 string_name: :terms_under_limit, expectation: :not_to_set_flash2020 is expected not to should set flash[:alert]2021 string_name: :terms_over_limit, expectation: :set_terms_flash2022 is expected to should set flash[:alert] to a value matching /terms/2023 on restricted projects2024 doesn't expose comments on merge_requests2025 doesn't expose comments on snippets2026 when signed out2027 doesn't expose comments on issues2028 GET #count2029 returns the result count for the given term and scope2030 raises an error if search term is missing2031 raises an error if search scope is missing2032 behaves like when the user cannot read cross project2033 blocks access without a project_id2034 allows access with a project_id2035 behaves like with external authorization service enabled2036 renders a 403 when no project is given2037 renders a 200 when a project was set2038 GET #autocomplete2039 behaves like when the user cannot read cross project2040 blocks access without a project_id2041 allows access with a project_id2042 behaves like with external authorization service enabled2043 renders a 403 when no project is given2044 renders a 200 when a project was set2045Projects::ServicesController2046 #test2047 when can_test? returns false2048 renders 4042049 when validations fail2050 returns error messages in JSON response2051 success2052 returns success2053 with empty project2054 returns success2055 with chat notification service2056 returns success2057 when service is configured for the first time2058 persist the object2059 creates the ServiceHook object2060 failure2061 returns success status code and the error message2062 PUT #update2063 as HTML2064 when param `active` is set to true2065 activates the service and redirects to integrations paths2066 when param `active` is set to false2067 does not activate the service but saves the settings2068 when activating Jira service from a template2069 activate Jira service from template2070 as JSON2071 when update succeeds2072 returns JSON response with no errors2073 when update fails2074DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from append_info_to_payload at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:151)2075 returns JSON response with errors2076 Prometheus service2077 feature flag :settings_operations_prometheus_service is enabled2078 redirects user back to edit page with alert2079 does not modify service2080 feature flag :settings_operations_prometheus_service is disabled2081 modifies service2082 GET #edit2083 Jira service2084 with approved services2085 renders edit page2086 Prometheus service2087 feature flag :settings_operations_prometheus_service is enabled2088 renders deprecation warning notice2089 feature flag :settings_operations_prometheus_service is disabled2090 does not render deprecation warning notice2091Projects::TagsController2092 GET index2093 returns the tags for the page2094 returns releases matching those tags2095 GET show2096 valid tag2097 is expected to respond with 2002098 invalid tag2099 is expected to respond with 4042100 private project with token authentication2101 behaves like authenticates sessionless user2102 doesn't log the user in otherwise2103 when the 'personal_access_token' param is populated with the personal access token2104 logs the user in2105 when the personal access token has no api scope2106 does not log the user in2107 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token2108 logs the user in2109 public project with token authentication2110 behaves like authenticates sessionless user2111 when the 'personal_access_token' param is populated with the personal access token2112 logs the user in2113 does not log the user in if page is public2114 when the 'PERSONAL_ACCESS_TOKEN' header is populated with the personal access token2115 logs the user in2116API::Boards2117 behaves like group and project boards2118 avoids N+1 queries2119 GET /projects/:id/boards2120 when unauthenticated2121 returns authentication error2122 when authenticated2123 returns the issue boards2124 GET /projects/:id/boards/:board_id2125 get a single board by id2126 GET /projects/:id/boards/:board_id/lists2127 returns issue board lists2128 returns 404 if board not found2129 GET /projects/:id/boards/:board_id/lists/:list_id2130 returns a list2131 returns 404 if list not found2132 POST /projects/:id/boards/lists2133 creates a new issue board list for labels2134 returns 400 when creating a new list if label_id is invalid2135 returns 403 for members with guest role2136 PUT /projects/:id/boards/:board_id/lists/:list_id to update only position2137 updates a list2138 returns 404 error if list id not found2139 returns 403 for members with guest role2140 DELETE /projects/:id/boards/lists/:list_id2141 rejects a non member from deleting a list2142 rejects a user with guest role from deleting a list2143 returns 404 error if list id not found2144 when the user is parent owner2145 deletes the list if an admin requests it2146 behaves like 412 response2147 for a modified ressource2148 returns 412 with a JSON error2149 for an unmodified ressource2150 returns 204 with an empty body2151 POST /projects/:id/boards/lists2152 creates a new issue board list for group labels2153 creates a new board list for ancestor group labels2154 POST /groups/:id/boards/lists2155 creates a new board list for ancestor group labels2156OpenID Connect requests2157 Application without OpenID scope2158 token response does not include an ID token2159 userinfo response is unauthorized2160 Application with OpenID scope2161 token response includes an ID token2162 UserInfo payload2163 includes all user information and group memberships2164 does not include any unknown claims2165 includes email and email_verified claims2166 has public email in email claim2167 has false in email_verified claim2168 ID token payload2169 includes the subject claims2170 includes the GitLab root URL2171 includes the time of the last authentication2172 does not include any unknown properties2173 when user is blocked2174 redirects to login page2175 when user is ldap_blocked2176 redirects to login page2177 OpenID configuration information2178 correctly returns the configuration2179 Application with OpenID and email scopes2180 token response includes an ID token2181 UserInfo payload2182 includes the email and email_verified claims2183 has private email in email claim2184 has true in email_verified claim2185OmniauthCallbacksController2186 omniauth2187 a deactivated user2188DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2189 allows sign in2190DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2191 activates the user2192DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2193 shows reactivation flash message after logging in2194 when the user is on the last sign in attempt2195 when using a form based provider2196 locks the user when sign in fails2197 when using a button based provider2198 does not lock the user when sign in fails2199 when sign in fails2200 calls through to the failure handler2201 when a redirect fragment is provided2202 when a redirect url is stored2203DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2204 redirects with fragment2205 when a redirect url with a fragment is stored2206DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2207 redirects with the new fragment2208 when no redirect url is stored2209DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2210 does not redirect with the fragment2211 strategies2212 github2213DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2214 allows sign in2215 when user has no linked provider2216 links identity2217 and is not allowed to link the provider2218 returns 4032219 sign up2220DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2221 is allowed2222 when OAuth is disabled2223 prevents login via POST2224 shows warning when attempting login2225 allows linking the disabled provider2226 sign up2227DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2228 is prevented2229 auth02230 does not allow sign in without extern_uid2231 salesforce2232 without verified email2233 does not allow sign in2234 with verified email2235DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2236 allows sign in2237 #saml2238 sign up2239DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2240 denies login if sign up is enabled, but block_auto_created_users is set2241DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2242 accepts login if sign up is enabled2243DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:86)2244 denies login if sign up is not enabled2245 with GitLab initiated request2246 when worth two factors2247 expects user to be signed_in2248 when not worth two factors2249 expects user to provide second factor2250 with IdP initiated request2251 lets the user know their account isn't linked yet2252 redirects to profile account page2253 doesn't link a new identity to the user2254 enable admin mode2255 user and admin mode requested by the same user2256 with a regular user2257 cannot be enabled2258 with an admin user2259 when requested first2260 can be enabled2261 when not requested first2262 cannot be enabled2263 user and admin mode requested by different users2264 with a regular user2265 cannot be enabled2266 with an admin user2267 when requested first2268 cannot be enabled2269 when not requested first2270 cannot be enabled2271API::MergeRequestDiffs MergeRequestDiffs2272 GET /projects/:id/merge_requests/:merge_request_iid/versions2273 returns 200 for a valid merge request2274 returns a 404 when merge_request id is used instead of the iid2275 returns a 404 when merge_request_iid not found2276 GET /projects/:id/merge_requests/:merge_request_iid/versions/:version_id2277 returns a 200 for a valid merge request2278 returns a 404 when merge_request id is used instead of the iid2279 returns a 404 when merge_request version_id is not found2280 returns a 404 when merge_request_iid is not found2281Adding an AwardEmoji2282 when the user does not have permission2283 behaves like a mutation that does not create an AwardEmoji2284 is expected not to change `AwardEmoji.count`2285 behaves like a mutation that returns top-level errors2286 is expected to eq ["The resource that you are attempting to access does not exist or you don't have permission to perform this action"]2287 when the user has permission2288 when the given awardable is not an Awardable2289 behaves like a mutation that does not create an AwardEmoji2290 is expected not to change `AwardEmoji.count`2291 behaves like a mutation that returns top-level errors2292 is expected to eq ["Cannot award emoji to this resource"]2293 when the given awardable is an Awardable but still cannot be awarded an emoji2294 behaves like a mutation that does not create an AwardEmoji2295 is expected not to change `AwardEmoji.count`2296 behaves like a mutation that returns top-level errors2297 is expected to eq ["Cannot award emoji to this resource"]2298 when the given awardable an Awardable2299 creates an emoji2300 returns the emoji2301 marking Todos as done2302 type: :issue, expectation: true2303 is expected to eq true2304 type: :merge_request, expectation: true2305 is expected to eq true2306 type: :project_snippet, expectation: false2307 is expected to eq false2308 for notes2309 regular Notes2310 marks the Todo as done2311 PersonalSnippet Notes2312 does not mark the Todo as done2313 when there were active record validation errors2314 returns an empty awardEmoji2315 behaves like a mutation that does not create an AwardEmoji2316 is expected not to change `AwardEmoji.count`2317 behaves like a mutation that returns errors in the response2318 is expected to eq ["Error 1", "Error 2"]2319Projects::TodosController2320 Issues2321 POST create2322 behaves like project todos actions2323 behaves like todos actions2324 when authorized2325 creates todo2326 returns todo path and pending count2327 when not authorized for project/group2328 does not create todo for resource that user has no access to2329 does not create todo when user is not logged in2330 when not authorized for resource2331 doesn't create todo2332 Merge Requests2333 POST create2334 behaves like project todos actions2335 behaves like todos actions2336 when authorized2337 creates todo2338 returns todo path and pending count2339 when not authorized for project/group2340 does not create todo for resource that user has no access to2341 does not create todo when user is not logged in2342 when not authorized for resource2343 doesn't create todo2344API::GroupVariables2345 GET /groups/:id/variables2346 authorized user with proper permissions2347 returns group variables2348 authorized user with invalid permissions2349 does not return group variables2350 unauthorized user2351 does not return group variables2352 GET /groups/:id/variables/:key2353 authorized user with proper permissions2354 returns group variable details2355 responds with 404 Not Found if requesting non-existing variable2356 authorized user with invalid permissions2357 does not return group variable details2358 unauthorized user2359 does not return group variable details2360 POST /groups/:id/variables2361 authorized user with proper permissions2362 creates variable2363 creates variable with optional attributes2364 does not allow to duplicate variable key2365 authorized user with invalid permissions2366 does not create variable2367 unauthorized user2368 does not create variable2369 PUT /groups/:id/variables/:key2370 authorized user with proper permissions2371 updates variable data2372 responds with 404 Not Found if requesting non-existing variable2373 authorized user with invalid permissions2374 does not update variable2375 unauthorized user2376 does not update variable2377 DELETE /groups/:id/variables/:key2378 authorized user with proper permissions2379 deletes variable2380 responds with 404 Not Found if requesting non-existing variable2381 behaves like 412 response2382 for a modified ressource2383 returns 412 with a JSON error2384 for an unmodified ressource2385 returns 204 with an empty body2386 authorized user with invalid permissions2387 does not delete variable2388 unauthorized user2389 does not delete variable2390Projects::Ci::LintsController2391 GET #show2392 with enough privileges2393 is expected to be successful2394 renders show page2395 retrieves project2396 without enough privileges2397 responds with 4042398 POST #create2399 with a valid gitlab-ci.yml2400 is expected to be successful2401 render show page2402 retrieves project2403 with an invalid gitlab-ci.yml2404 assigns errors2405 without enough privileges2406 responds with 4042407AcmeChallengesController2408 #show2409 with right domain and token2410 renders acme challenge file content2411 when domain is invalid2412 renders not found2413 when token is invalid2414 renders not found2415API::DeployTokens2416 GET /deploy_tokens2417 when unauthenticated2418 is expected to respond with numeric status code unauthorized2419 when authenticated as non-admin user2420 is expected to respond with numeric status code forbidden2421 when authenticated as admin2422 is expected to respond with numeric status code ok2423 returns all deploy tokens2424 GET /projects/:id/deploy_tokens2425 when unauthenticated2426 is expected to respond with numeric status code not_found2427 when authenticated as non-admin user2428 is expected to respond with numeric status code forbidden2429 when authenticated as maintainer2430 is expected to respond with numeric status code ok2431 returns all deploy tokens for the project2432 does not return deploy tokens for other projects2433API::Settings Settings2434 GET /application/settings2435 returns application settings2436 PUT /application/settings2437 supports legacy performance_bar_allowed_group_id2438 supports legacy performance_bar_enabled2439 supports legacy allow_local_requests_from_hooks_and_services2440 custom repository storage type set in the config2441 updates application settings2442 external policy classification settings2443 includes the attributes in the API2444 allows updating the settings2445 snowplow tracking settings2446 includes the attributes in the API2447 allows updating the settings2448 missing snowplow_collector_hostname value when snowplow_enabled is true2449 returns a blank parameter error message2450 handles validation errors2451 EKS integration settings2452 includes attributes in the API2453 does not include sensitive attributes in the API2454 allows updating the settings2455 EKS integration is enabled but params are blank2456 does not update the settings2457 missing plantuml_url value when plantuml_enabled is true2458 returns a blank parameter error message2459 asset_proxy settings2460 updates application settings2461 allows a string for asset_proxy_whitelist2462 domain_blacklist settings2463 rejects domain_blacklist_enabled when domain_blacklist is empty2464 allows array for domain_blacklist2465 allows a string for domain_blacklist2466 missing sourcegraph_url value when sourcegraph_enabled is true2467 returns a blank parameter error message2468GroupTree2469 GET #index2470 filters groups2471 for subgroups2472 only renders root groups when no parent was given2473 contains only the subgroup when a parent was given2474 allows filtering for subgroups and includes the parents for rendering2475 does not include groups the user does not have access to2476 preloads parents regardless of pagination2477 json content2478 shows groups as json2479 nested groups2480 expands the tree when filtering2481API::Internal::Pages2482 GET /internal/pages2483 feature flag disabled2484 responds with 404 Not Found2485 feature flag enabled2486 not authenticated2487 responds with 401 Unauthorized2488 authenticated2489 domain does not exist2490 responds with 204 no content2491 serverless domain2492 without a knative ingress gateway IP2493 responds with 204 no content2494 with a knative ingress gateway IP2495 responds with proxy configuration2496 custom domain2497 when there are no pages deployed for the related project2498 responds with 204 No Content2499 when there are pages deployed for the related project2500 domain lookup is case insensitive2501 responds with the correct domain configuration2502 namespaced domain2503 regular project2504 responds with the correct domain configuration2505 group root project2506 responds with the correct domain configuration2507API::NotificationSettings2508 GET /notification_settings2509 returns global notification settings for the current user2510 PUT /notification_settings2511 updates global notification settings for the current user2512 PUT /notification_settings2513 fails on non-user email address2514 GET /groups/:id/notification_settings2515 returns group level notification settings for the current user2516 PUT /groups/:id/notification_settings2517 updates group level notification settings for the current user2518 GET /projects/:id/notification_settings2519 returns project level notification settings for the current user2520 PUT /projects/:id/notification_settings2521 updates project level notification settings for the current user2522 PUT /projects/:id/notification_settings2523 fails on invalid level2524Import::BitbucketServerController2525 GET new2526 shows the input form2527 POST create2528 returns the new project2529DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from append_info_to_payload at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:151)2530 returns an error when an invalid project key is used2531DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from append_info_to_payload at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:151)2532 returns an error when an invalid repository slug is used2533DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from append_info_to_payload at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:151)2534 returns an error when the project cannot be found2535DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from append_info_to_payload at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:151)2536 returns an error when the project cannot be saved2537DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from append_info_to_payload at /builds/gitlab-org/gitlab/app/controllers/application_controller.rb:151)2538 returns an error when the server can't be contacted2539 with project key with tildes2540 successfully creates a project2541 behaves like project import rate limiter2542 when limit exceeds2543 notifies and redirects user2544 POST configure2545 clears out existing session2546 sets the session variables2547 GET status2548 assigns repository categories2549 when filtering2550 passes filter param to bitbucket client2551 GET jobs2552 returns a list of imported projects2553getting a repository in a project2554 returns repository2555 as a non-authorized user2556 returns nil2557 when the repository is only accessible to members2558 returns a repository for the owner2559 returns nil for the repository for other users2560 returns nil for the repository for other users2561ProjectUnauthorized2562 .on_routable_not_found2563 renders a 200 when the service allows access to the project2564 renders a 403 when the service denies access to the project2565 renders a 404 when the user cannot see the project at all2566Projects::FindFileController2567 GET #show2568 valid branch2569 is expected to respond with 2002570 invalid branch2571 is expected to respond with 4042572 GET #list2573 valid branch2574 returns an array of file path list2575 invalid branch2576 responds with status 4042577API::SystemHooks2578 GET /hooks2579 when no user2580 returns authentication error2581 when not an admin2582 returns forbidden error2583 when authenticated as admin2584 returns an array of hooks2585 POST /hooks2586 creates new hook2587 responds with 400 if url not given2588 responds with 400 if url is invalid2589 does not create new hook without url2590 sets default values for events2591 sets explicit values for events2592 GET /hooks/:id2593 returns hook by id2594 returns 404 on failure2595 DELETE /hooks/:id2596 deletes a hook2597 returns 404 if the system hook does not exist2598 behaves like 412 response2599 for a modified ressource2600 returns 412 with a JSON error2601 for an unmodified ressource2602 returns 204 with an empty body2603Setting Due Date of an issue2604 returns an error if the user is not allowed to update the issue2605 updates the issue due date2606 when passing due date without a date value2607 returns internal server error2608EnforcesAdminAuthentication2609 feature flag :user_mode_in_session is enabled2610 authenticate_admin!2611 as an admin2612 renders redirect for re-authentication and does not set admin mode2613 when admin mode is active2614 renders ok2615 as a user2616 renders a 4042617 does not set admin mode2618 feature flag :user_mode_in_session is disabled2619 authenticate_admin!2620 as an admin2621 allows direct access to page2622 does not set admin mode2623 as a user2624 renders a 4042625 does not set admin mode2626Dashboard::GroupsController2627 renders group trees2628 #index2629 only includes projects the user is a member of2630 works when the external authorization service is enabled2631 when rendering an expanded hierarchy with public groups you are not a member of2632 renders only groups the user is a member of when searching hierarchy correctly2633Requests on a read-only node2634 mutations2635 disallows the query2636 does not destroy the Note2637 read-only queries2638 allows the query2639Setting an issue as confidential2640 returns an error if the user is not allowed to update the issue2641 updates the issue confidentiality2642Getting Grafana Integration2643 with grafana integration data2644 without project admin permissions2645 is expected to equal nil2646 behaves like a working graphql query2647 returns a successful response2648 with project admin permissions2649 is expected to eql "************************************************"2650 is expected to eql "https://grafana.example.com"2651 is expected to eql "2020-03-05T04:45:16Z"2652 is expected to eql "2020-03-05T04:45:16Z"2653 behaves like a working graphql query2654 returns a successful response2655Groups::MilestonesController2656 N+1 DB queries2657 GET #index2658 avoids N+1 database queries2659 GET #show2660DEPRECATION WARNING: ActiveSupport::Multibyte::Unicode#normalize is deprecated and will be removed from Rails 6.1. Use String#unicode_normalize(:nfc) instead. (called from safe_title at /builds/gitlab-org/gitlab/app/models/milestone.rb:272)2661DEPRECATION WARNING: ActiveSupport::Multibyte::Unicode#downcase is deprecated and will be removed from Rails 6.1. Use String methods directly. (called from safe_title at /builds/gitlab-org/gitlab/app/models/milestone.rb:272)2662DEPRECATION WARNING: ActiveSupport::Multibyte::Unicode#normalize is deprecated and will be removed from Rails 6.1. Use String#unicode_normalize(:nfc) instead. (called from safe_title at /builds/gitlab-org/gitlab/app/models/milestone.rb:272)2663DEPRECATION WARNING: ActiveSupport::Multibyte::Unicode#downcase is deprecated and will be removed from Rails 6.1. Use String methods directly. (called from safe_title at /builds/gitlab-org/gitlab/app/models/milestone.rb:272)2664 avoids N+1 database queries2665Profiles::KeysController2666 #get_keys2667 non existent user2668 does not generally work2669 user with no keys2670 does generally work2671 renders all keys separated with a new line2672DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/profiles/keys_controller_spec.rb:32)2673 responds with text/plain content type2674 user with keys2675 does generally work2676 renders all non deploy keys separated with a new line2677 does not render the comment of the key2678DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/profiles/keys_controller_spec.rb:68)2679 responds with text/plain content type2680Projects::ServiceHookLogsController2681 GET #show2682 is expected to be successful2683 POST #retry2684 executes the hook and redirects to the service form2685File uploads2686 POST /:namespace/:project/create/:branch2687 redirects to blob2688Projects::ErrorTracking::ProjectsController2689 GET #index2690 with insufficient permissions2691 returns 4042692 with an anonymous user2693 redirects to sign-in page2694 with authorized user2695 service result is successful2696 returns a list of projects2697 service result is erroneous2698 without http_status2699 returns 400 with message2700 with explicit http_status2701 returns http_status with message2702HealthCheckController2703 GET #index2704 when services are up but accessed from outside whitelisted ips2705DEPRECATION WARNING: render file: should be given the absolute path to a file (called from render_404 at /builds/gitlab-org/gitlab/app/controllers/concerns/requires_whitelisted_monitoring_client.rb:38)2706 returns a not found page2707 when services are accessed with token2708DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (5 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:37)2709 supports passing the token in the header2710DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (5 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:44)2711 supports passing the token in query params2712 when services are up and accessed from whitelisted ips2713DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:58)2714 supports successful plaintext response2715DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:65)2716 supports successful json response2717DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:73)2718 supports successful xml response2719DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:81)2720 supports successful responses for specific checks2721 when a service is down but NO access token2722DEPRECATION WARNING: render file: should be given the absolute path to a file (called from render_404 at /builds/gitlab-org/gitlab/app/controllers/concerns/requires_whitelisted_monitoring_client.rb:38)2723 returns a not found page2724 when a service is down and an endpoint is accessed from whitelisted ip2725DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:105)2726 supports failure plaintext response2727DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:113)2728 supports failure json response2729DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:122)2730 supports failure xml response2731DEPRECATION WARNING: Rails 6.1 will return Content-Type header without modification. If you want just the MIME type, please use `#media_type` instead. (called from block (4 levels) in <top (required)> at /builds/gitlab-org/gitlab/spec/controllers/health_check_controller_spec.rb:131)2732 supports failure responses for specific checks2733ContinueParams2734 returns an empty hash if params are not present2735 cleans up any params that are not allowed2736 does not allow cross host redirection2737 allows redirecting to a path with querystring2738Groups::AvatarsController2739 removes avatar from DB calling destroy2740 works when external authorization service is enabled2741Projects::Alerting::NotificationsController2742 POST #create2743 when notification service succeeds2744 responds with ok2745 does not pass excluded parameters to the notify service2746 when notification service fails2747 responds with the service response2748 bearer token2749 when set2750 extracts bearer token2751 pass nil if cannot extract a non-bearer token2752 when missing2753 passes nil2754Admin::AppearancesController2755 POST #create2756 creates appearance with footer and header message2757 when enabling header and footer in email2758 creates appearance with enabled flag2759 PUT #update2760 updates appearance with footer and header message2761 when enabling header and footer in email2762 updates appearance with enabled flag2763Oauth::TokenInfoController2764 #show2765 when the user is not authenticated2766 responds with a 4012767 when the request is valid2768 responds with the token info2769 when the doorkeeper_token is not recognised2770 responds with a 4012771 when the token is expired2772 responds with a 4012773 when the token is revoked2774 responds with a 4012775Projects::Environments::SampleMetricsController2776 GET #query2777 when the file is not found2778 returns a 4042779 when the sample data is found2780 returns JSON with a message and a 200 status code2781PasswordsController2782 #check_password_authentication_available2783 when password authentication is disabled for the web interface and Git2784 prevents a password reset2785 when reset email belongs to an ldap user2786 prevents a password reset2787Sessions2788 authentication2789 logout does not require a csrf token2790Multiplexed queries2791 returns responses for multiple queries2792 returns error and data combinations2793Knapsack report was generated. Preview:2794{2795 "spec/controllers/groups_controller_spec.rb": 185.84178686141968,2796 "spec/controllers/ldap/omniauth_callbacks_controller_spec.rb": 88.89768290519714,2797 "spec/requests/git_http_spec.rb": 76.02121329307556,2798 "spec/controllers/projects_controller_spec.rb": 60.93278527259827,2799 "spec/requests/api/helpers_spec.rb": 55.89404106140137,2800 "spec/requests/api/repositories_spec.rb": 40.50556039810181,2801 "spec/mailers/emails/profile_spec.rb": 31.99557614326477,2802 "spec/controllers/projects/releases_controller_spec.rb": 34.3224663734436,2803 "spec/requests/api/pages/private_access_spec.rb": 18.12226629257202,2804 "spec/requests/api/project_container_repositories_spec.rb": 13.899507761001587,2805 "spec/controllers/projects/milestones_controller_spec.rb": 20.076881408691406,2806 "spec/controllers/projects/merge_requests/conflicts_controller_spec.rb": 16.460622310638428,2807 "spec/requests/api/deploy_keys_spec.rb": 16.75981378555298,2808 "spec/controllers/projects/discussions_controller_spec.rb": 15.419198274612427,2809 "spec/requests/api/protected_branches_spec.rb": 13.133575201034546,2810 "spec/requests/api/project_hooks_spec.rb": 10.933320045471191,2811 "spec/controllers/users_controller_spec.rb": 10.644109010696411,2812 "spec/controllers/projects/variables_controller_spec.rb": 10.181498765945435,2813 "spec/controllers/search_controller_spec.rb": 10.253281116485596,2814 "spec/controllers/projects/services_controller_spec.rb": 10.010131359100342,2815 "spec/controllers/projects/tags_controller_spec.rb": 6.9965643882751465,2816 "spec/requests/api/boards_spec.rb": 6.612775564193726,2817 "spec/requests/openid_connect_spec.rb": 6.910392761230469,2818 "spec/controllers/omniauth_callbacks_controller_spec.rb": 5.750666618347168,2819 "spec/requests/api/merge_request_diffs_spec.rb": 5.948364734649658,2820 "spec/requests/api/graphql/mutations/award_emojis/add_spec.rb": 4.70503830909729,2821 "spec/controllers/projects/todos_controller_spec.rb": 4.802347183227539,2822 "spec/requests/api/group_variables_spec.rb": 4.091923952102661,2823 "spec/controllers/projects/ci/lints_controller_spec.rb": 3.8792409896850586,2824 "spec/controllers/acme_challenges_controller_spec.rb": 1.7502660751342773,2825 "spec/requests/api/deploy_tokens_spec.rb": 3.8303778171539307,2826 "spec/requests/api/settings_spec.rb": 3.1257452964782715,2827 "spec/controllers/concerns/group_tree_spec.rb": 3.433211326599121,2828 "spec/requests/api/internal/pages_spec.rb": 3.014983892440796,2829 "spec/requests/api/notification_settings_spec.rb": 2.456962823867798,2830 "spec/controllers/import/bitbucket_server_controller_spec.rb": 1.7872745990753174,2831 "spec/requests/api/graphql/project/repository_spec.rb": 2.047837257385254,2832 "spec/controllers/concerns/project_unauthorized_spec.rb": 2.552795171737671,2833 "spec/controllers/projects/find_file_controller_spec.rb": 2.4834024906158447,2834 "spec/requests/api/system_hooks_spec.rb": 1.7011113166809082,2835 "spec/requests/api/graphql/mutations/issues/set_due_date_spec.rb": 1.890699863433838,2836 "spec/controllers/concerns/enforces_admin_authentication_spec.rb": 1.352677583694458,2837 "spec/controllers/dashboard/groups_controller_spec.rb": 0.8626763820648193,2838 "spec/requests/api/graphql/read_only_spec.rb": 1.771723985671997,2839 "spec/requests/api/graphql/mutations/issues/set_confidential_spec.rb": 1.157670259475708,2840 "spec/requests/api/graphql/project/grafana_integration_spec.rb": 0.9267246723175049,2841 "spec/requests/groups/milestones_controller_spec.rb": 4.123774290084839,2842 "spec/controllers/profiles/keys_controller_spec.rb": 0.9561750888824463,2843 "spec/controllers/projects/service_hook_logs_controller_spec.rb": 0.8506739139556885,2844 "spec/requests/projects/uploads_spec.rb": 0.49771785736083984,2845 "spec/controllers/projects/error_tracking/projects_controller_spec.rb": 0.9230797290802002,2846 "spec/controllers/health_check_controller_spec.rb": 0.5486152172088623,2847 "spec/controllers/concerns/continue_params_spec.rb": 0.46878695487976074,2848 "spec/controllers/groups/avatars_controller_spec.rb": 0.5026798248291016,2849 "spec/controllers/projects/alerting/notifications_controller_spec.rb": 0.15850496292114258,2850 "spec/controllers/admin/appearances_controller_spec.rb": 0.7799999713897705,2851 "spec/controllers/oauth/token_info_controller_spec.rb": 0.36115002632141113,2852 "spec/controllers/projects/environments/sample_metrics_controller_spec.rb": 0.2610361576080322,2853 "spec/controllers/passwords_controller_spec.rb": 0.12530827522277832,2854 "spec/requests/sessions_spec.rb": 0.1222386360168457,2855 "spec/requests/api/graphql/multiplexed_queries_spec.rb": 0.081748485565185552856}2857Knapsack global time execution for tests: 13m 56s2858Finished in 16 minutes 59 seconds (files took 1 minute 0.22 seconds to load)28591244 examples, 0 failures2860Thu Mar 5 04:45:51 UTC 20202863coverage/: found 5 matching files 2864knapsack/: found 6 matching files 2865rspec_flaky/: found 4 matching files 2866rspec_profiling/: found 2 matching files 2867WARNING: tmp/capybara/: no matching files 2868tmp/memory_test/: found 2 matching files 2869junit_rspec.xml: found 1 matching files 2870Uploading artifacts to coordinator... ok id=460116674 responseStatus=201 Created token=9Tq_cQs82871Uploading artifacts...2872junit_rspec.xml: found 1 matching files 2873Uploading artifacts to coordinator... ok id=460116674 responseStatus=201 Created token=9Tq_cQs82874Job succeeded