rspec integration pg12 10/10
Passed Started
by
@gitlab-bot

🤖 GitLab Bot 🤖
1Running with gitlab-runner 15.1.0~beta.20.g62206bb2 (62206bb2)2 on blue-1.private.runners-manager.gitlab.com/gitlab.com/gitlab-org 1zzGUpzq3 feature flags: FF_USE_FASTZIP:true6Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 ...7Starting service postgres:12 ...8Pulling docker image postgres:12 ...9Using docker image sha256:ac3b8cd6a8b42e839456256bc514d6230b5a2538c738b3d522e1384a2a172b96 for postgres:12 with digest postgres@sha256:e6ffad42c91a4d5a29257a27ac4e160c3ae7196696b37bf2e80410024ed95951 ...10Starting service redis:6.0-alpine ...11Pulling docker image redis:6.0-alpine ...12Using docker image sha256:09401fed2a421bf0019f96dcec70c85f82ec7b76beb1ae589547b0dc302d6b76 for redis:6.0-alpine with digest redis@sha256:217a9db40a914cc3f6206a143a4d750da0607500cc013a147a4979e08e40beff ...13Waiting for services to be up and running (timeout 30 seconds)...14Authenticating with credentials from job payload (GitLab Registry)15Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 ...16Using docker image sha256:1c23a0bd0711f9f7944305c4b25ce8e4301c16167671a7873aad77579270806d for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12@sha256:d0052322332df372b949caf19e910c0ce6859c1e7ed29ff609ebec91b1dead87 ...18Running on runner-1zzgupzq-project-278964-concurrent-0 via runner-1zzgupzq-private-1656406197-c6830002...20$ eval "$CI_PRE_CLONE_SCRIPT"21Fetching changes with git depth set to 20...22Initialized empty Git repository in /builds/gitlab-org/gitlab/.git/23Created fresh repository.24remote: Enumerating objects: 113684, done. 25remote: Counting objects: 100% (113684/113684), done. 26remote: Compressing objects: 100% (80120/80120), done. 27remote: Total 113684 (delta 47013), reused 73436 (delta 29194), pack-reused 0 28Receiving objects: 100% (113684/113684), 107.95 MiB | 30.42 MiB/s, done.29Resolving deltas: 100% (47013/47013), done.31 * [new ref] refs/pipelines/574770947 -> refs/pipelines/57477094732Checking out f470b997 as refs/merge-requests/90613/merge...33Skipping Git submodules setup34$ git remote set-url origin "${CI_REPOSITORY_URL}"36Checking cache for ruby-gems-debian-bullseye-ruby-2.7-10...37cache.zip is up to date 38Successfully extracted cache39Checking cache for gitaly-ruby-gems-debian-bullseye-ruby-2.7-10...40cache.zip is up to date 41Successfully extracted cache43Downloading artifacts for compile-test-assets (2649391517)...44Downloading artifacts from coordinator... ok id=2649391517 responseStatus=200 OK token=X4E91iY545Downloading artifacts for detect-tests (2649391533)...46Downloading artifacts from coordinator... ok id=2649391533 responseStatus=200 OK token=X4E91iY547Downloading artifacts for retrieve-tests-metadata (2649391540)...48Downloading artifacts from coordinator... ok id=2649391540 responseStatus=200 OK token=X4E91iY549Downloading artifacts for setup-test-env (2649391527)...50Downloading artifacts from coordinator... ok id=2649391527 responseStatus=200 OK token=X4E91iY552Using docker image sha256:1c23a0bd0711f9f7944305c4b25ce8e4301c16167671a7873aad77579270806d for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-101-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.17-node-16.14-postgresql-12@sha256:d0052322332df372b949caf19e910c0ce6859c1e7ed29ff609ebec91b1dead87 ...53$ echo $FOSS_ONLY54$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb55$ export GOPATH=$CI_PROJECT_DIR/.go56$ mkdir -p $GOPATH57$ source scripts/utils.sh58$ source scripts/prepare_build.sh593.2.3360Bundler version 2.2.3361Successfully installed bundler-2.3.15621 gem installed63production:development64Settings are listed in order of priority. The top value will be used.65clean66Set for your local app (/builds/gitlab-org/gitlab/.bundle/config): true67frozen68Set via BUNDLE_FROZEN: true69install_flags70Set via BUNDLE_INSTALL_FLAGS: "--jobs=$(nproc) --retry=3 --quiet"71path72Set for your local app (/builds/gitlab-org/gitlab/.bundle/config): "/builds/gitlab-org/gitlab/vendor"73without74Set via BUNDLE_WITHOUT: [:production, :development]75$ bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check76Don't run Bundler as root. Bundler can ask for sudo if it is needed, and77installing your bundle as root will break this application for all non-root78users on this machine.79The Gemfile's dependencies are satisfied80==> 'bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check' succeeded in 2 seconds.81$ bundle pristine pg82Installing pg 1.3.5 with native extensions83==> 'bundle pristine pg' succeeded in 9 seconds.84Using decomposed database config (config/database.yml.decomposed-postgresql)85$ setup_db_user_only86CREATE ROLE87GRANT88==> 'setup_db_user_only' succeeded in 0 seconds.89$ bundle exec rake db:drop db:create db:schema:load db:migrate90Dropped database 'gitlabhq_test'91Dropped database 'gitlabhq_test_ci'92Dropped database 'gitlabhq_geo_test'93Created database 'gitlabhq_test'94Created database 'gitlabhq_test_ci'95Created database 'gitlabhq_geo_test'96==> 'bundle exec rake db:drop db:create db:schema:load db:migrate' succeeded in 39 seconds.97$ setup_db_praefect98SELECT pg_catalog.set_config('search_path', '', false);99CREATE DATABASE praefect_test ENCODING 'UTF8';100==> 'setup_db_praefect' succeeded in 0 seconds.101$ run_timed_command "gem install knapsack --no-document"102$ gem install knapsack --no-document103Successfully installed knapsack-4.0.01041 gem installed105==> 'gem install knapsack --no-document' succeeded in 0 seconds.106$ run_timed_command "scripts/gitaly-test-spawn"107$ scripts/gitaly-test-spawn108find: ‘/builds/gitlab-org/gitlab/tmp/tests/gitaly/cmd’: No such file or directory109Don't run Bundler as root. Bundler can ask for sudo if it is needed, and110installing your bundle as root will break this application for all non-root111users on this machine.112Using abstract_type 0.0.7113Using concurrent-ruby 1.1.10114Using i18n 1.10.0115Using minitest 5.15.0116Using tzinfo 2.0.4117Using zeitwerk 2.5.4118Using activesupport 6.1.4.7119Using builder 3.2.4120Using erubi 1.10.0121Using mini_portile2 2.8.0122Using racc 1.6.0123Using nokogiri 1.13.6 (x86_64-linux)124Using rails-dom-testing 2.0.3125Using crass 1.0.6126Using loofah 2.16.0127Using rails-html-sanitizer 1.4.2128Using actionview 6.1.4.7129Using rack 2.2.3130Using rack-test 1.1.0131Using actionpack 6.1.4.7132Using ice_nine 0.11.2133Using thread_safe 0.3.6134Using memoizable 0.4.2135Using adamantium 0.2.0136Using public_suffix 4.0.6137Using addressable 2.7.0138Using ast 2.4.2139Using binding_ninja 0.2.3140Using bundler 2.3.15141Using charlock_holmes 0.7.7142Using coderay 1.1.2143Using equalizer 0.0.11144Using concord 0.1.5145Using diff-lcs 1.3146Using dotenv 2.7.6147Using escape_utils 1.2.1148Using factory_bot 5.0.2149Using multipart-post 2.1.1150Using faraday 1.0.1151Using ffi 1.15.3152Using json 2.5.1153Using gemojione 3.3.0154Using mini_mime 1.0.2155Using rugged 1.2.0156Using github-linguist 7.12.1157Using github-markup 1.7.0158Using mime-types-data 3.2020.1104159Using mime-types 3.3.1160Using gitlab-gollum-rugged_adapter 0.4.4.4.gitlab.1161Using rouge 3.27.0162Using sanitize 6.0.0163Using stringex 2.8.5164Using gitlab-gollum-lib 4.2.7.10.gitlab.2165Using google-protobuf 3.19.1 (x86_64-linux)166Using googleapis-common-protos-types 1.3.0167Using grpc 1.42.0 (x86_64-linux)168Using opentracing 0.5.0169Using thrift 0.15.0170Using jaeger-client 1.1.0171Using pg_query 2.1.1172Using redis 4.4.0173Using gitlab-labkit 0.21.2174Using rubyzip 2.3.2175Using thor 1.1.0176Using tomlrb 2.0.1177Using with_env 1.1.0178Using rexml 3.2.5179Using xml-simple 1.1.9180Using gitlab-license_finder 6.14.2.1181Using gitlab-markup 1.7.1182Using grpc-tools 1.42.0183Using sawyer 0.8.2184Using octokit 4.20.0185Using reverse_markdown 1.4.0186Using licensee 9.14.1187Using method_source 0.9.2188Using msgpack 1.3.3189Using optimist 3.0.1190Using parallel 1.19.2191Using parser 3.0.3.2192Using procto 0.0.3193Using unparser 0.4.7194Using proc_to_ast 0.1.0195Using pry 0.12.2196Using rainbow 3.0.0197Using rbtrace 0.4.14198Using rdoc 6.3.2199Using regexp_parser 1.8.1200Using rspec-support 3.8.0201Using rspec-core 3.8.0202Using rspec-expectations 3.8.3203Using rspec-mocks 3.8.0204Using rspec 3.8.0205Using rspec-parameterized 0.4.2206Using rubocop-ast 0.2.0207Using ruby-progressbar 1.10.1208Using unicode-display_width 1.7.0209Using rubocop 0.86.0210Using sentry-raven 3.0.4211Using timecop 0.9.1212Bundle complete! 22 Gemfile dependencies, 100 gems now installed.213Gems in the groups 'production' and 'development' were not installed.214Bundled gems are installed into `/builds/gitlab-org/gitlab/vendor/gitaly-ruby`215Checking gitaly-ruby Gemfile...216Checking gitaly-ruby bundle...217The Gemfile's dependencies are satisfied218Trying to connect to gitaly: .......................................... OK219Trying to connect to gitaly2: ............................................................. OK220Starting Praefect with in-memory election strategyTrying to connect to praefect: ........ OK221==> 'scripts/gitaly-test-spawn' succeeded in 13 seconds.222$ source ./scripts/rspec_helpers.sh223$ rspec_paralellized_job "--tag ~quarantine --tag ~level:migration"224SKIP_FLAKY_TESTS_AUTOMATICALLY: true225RETRY_FAILED_TESTS_IN_NEW_PROCESS: true226KNAPSACK_GENERATE_REPORT: true227FLAKY_RSPEC_GENERATE_REPORT: true228KNAPSACK_TEST_FILE_PATTERN: spec/{commands,controllers,mailers,requests}{,/**/}*_spec.rb229KNAPSACK_LOG_LEVEL: debug230KNAPSACK_REPORT_PATH: knapsack/rspec_integration_pg12_10_10_report.json231FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json232FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec_integration_pg12_10_10_report.json233NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec_integration_pg12_10_10_report.json234SKIPPED_FLAKY_TESTS_REPORT_PATH: rspec/flaky/skipped_flaky_tests_rspec_integration_pg12_10_10_report.txt235RETRIED_TESTS_REPORT_PATH: rspec/flaky/retried_tests_rspec_integration_pg12_10_10_report.txt236CRYSTALBALL: 237Knapsack node specs:238spec/requests/api/ci/pipelines_spec.rb239spec/requests/api/nuget_project_packages_spec.rb240spec/requests/api/branches_spec.rb241spec/controllers/admin/application_settings_controller_spec.rb242spec/controllers/projects/clusters_controller_spec.rb243spec/requests/api/helpers_spec.rb244spec/requests/users_controller_spec.rb245spec/requests/api/release/links_spec.rb246spec/controllers/autocomplete_controller_spec.rb247spec/requests/api/ci/runner/jobs_trace_spec.rb248spec/controllers/projects/releases_controller_spec.rb249spec/mailers/emails/merge_requests_spec.rb250spec/controllers/projects/merge_requests/drafts_controller_spec.rb251spec/requests/api/debian_group_packages_spec.rb252spec/requests/api/graphql/mutations/namespace/package_settings/update_spec.rb253spec/controllers/projects/blob_controller_spec.rb254spec/controllers/projects/snippets_controller_spec.rb255spec/controllers/projects/web_ide_terminals_controller_spec.rb256spec/requests/api/unleash_spec.rb257spec/controllers/projects/commits_controller_spec.rb258spec/requests/api/protected_tags_spec.rb259spec/requests/api/feature_flags_spec.rb260spec/controllers/projects/tags_controller_spec.rb261spec/requests/api/graphql/metrics/dashboard_query_spec.rb262spec/controllers/projects/labels_controller_spec.rb263spec/requests/api/graphql/packages/nuget_spec.rb264spec/controllers/concerns/metrics_dashboard_spec.rb265spec/requests/api/graphql_spec.rb266spec/requests/api/graphql/mutations/award_emojis/add_spec.rb267spec/commands/sidekiq_cluster/cli_spec.rb268spec/requests/api/graphql/mutations/snippets/destroy_spec.rb269spec/controllers/projects/badges_controller_spec.rb270spec/requests/api/metrics/dashboard/annotations_spec.rb271spec/requests/projects/google_cloud/deployments_controller_spec.rb272spec/controllers/projects/alerting/notifications_controller_spec.rb273spec/controllers/admin/runners_controller_spec.rb274spec/requests/api/graphql/ci/runners_spec.rb275spec/requests/api/graphql/mutations/container_repository/destroy_tags_spec.rb276spec/requests/api/graphql/project/cluster_agents_spec.rb277spec/controllers/groups/shared_projects_controller_spec.rb278spec/controllers/admin/ci/variables_controller_spec.rb279spec/controllers/import/bitbucket_server_controller_spec.rb280spec/controllers/projects/error_tracking_controller_spec.rb281spec/requests/projects/merge_requests/creations_spec.rb282spec/requests/api/graphql/mutations/notes/destroy_spec.rb283spec/requests/admin/background_migrations_controller_spec.rb284spec/controllers/admin/spam_logs_controller_spec.rb285spec/controllers/projects/environments/prometheus_api_controller_spec.rb286spec/requests/api/group_avatar_spec.rb287spec/requests/api/graphql/query_spec.rb288spec/controllers/concerns/internal_redirect_spec.rb289spec/requests/api/graphql/mutations/merge_requests/set_milestone_spec.rb290spec/requests/projects/merge_requests/content_spec.rb291spec/controllers/projects/security/configuration_controller_spec.rb292spec/controllers/projects/usage_quotas_controller_spec.rb293spec/requests/groups/harbor/repositories_controller_spec.rb294spec/requests/api/internal/workhorse_spec.rb295spec/requests/api/graphql/custom_emoji_query_spec.rb296spec/requests/api/appearance_spec.rb297spec/requests/api/graphql/mutations/clusters/agents/delete_spec.rb298spec/requests/api/admin/sidekiq_spec.rb299spec/requests/api/graphql/snippets_spec.rb300spec/requests/api/ci/runner/runners_reset_spec.rb301spec/requests/admin/impersonation_tokens_controller_spec.rb302spec/requests/api/graphql/project/repository/blobs_spec.rb303spec/requests/api/graphql/user/group_member_query_spec.rb304spec/controllers/projects/product_analytics_controller_spec.rb305spec/requests/api/graphql/ci/template_spec.rb306spec/requests/api/internal/mail_room_spec.rb307spec/controllers/projects/packages/infrastructure_registry_controller_spec.rb308spec/requests/api/graphql/project/terraform/states_spec.rb309spec/requests/api/graphql/group/recent_issue_boards_query_spec.rb310spec/requests/api/graphql/mutations/user_preferences/update_spec.rb311spec/controllers/users/unsubscribes_controller_spec.rb312spec/requests/api/graphql/mutations/release_asset_links/update_spec.rb313spec/requests/api/graphql/mutations/ci/job_unschedule_spec.rb314spec/controllers/admin/plan_limits_controller_spec.rb315spec/requests/api/graphql/ci/job_artifacts_spec.rb316spec/requests/api/graphql/mutations/alert_management/alerts/update_alert_status_spec.rb317spec/controllers/concerns/boards_responses_spec.rb318spec/controllers/admin/gitaly_servers_controller_spec.rb319Filter specs:320Running specs:321Running all node tests without filter322spec/requests/api/ci/pipelines_spec.rb323spec/requests/api/nuget_project_packages_spec.rb324spec/requests/api/branches_spec.rb325spec/controllers/admin/application_settings_controller_spec.rb326spec/controllers/projects/clusters_controller_spec.rb327spec/requests/api/helpers_spec.rb328spec/requests/users_controller_spec.rb329spec/requests/api/release/links_spec.rb330spec/controllers/autocomplete_controller_spec.rb331spec/requests/api/ci/runner/jobs_trace_spec.rb332spec/controllers/projects/releases_controller_spec.rb333spec/mailers/emails/merge_requests_spec.rb334spec/controllers/projects/merge_requests/drafts_controller_spec.rb335spec/requests/api/debian_group_packages_spec.rb336spec/requests/api/graphql/mutations/namespace/package_settings/update_spec.rb337spec/controllers/projects/blob_controller_spec.rb338spec/controllers/projects/snippets_controller_spec.rb339spec/controllers/projects/web_ide_terminals_controller_spec.rb340spec/requests/api/unleash_spec.rb341spec/controllers/projects/commits_controller_spec.rb342spec/requests/api/protected_tags_spec.rb343spec/requests/api/feature_flags_spec.rb344spec/controllers/projects/tags_controller_spec.rb345spec/requests/api/graphql/metrics/dashboard_query_spec.rb346spec/controllers/projects/labels_controller_spec.rb347spec/requests/api/graphql/packages/nuget_spec.rb348spec/controllers/concerns/metrics_dashboard_spec.rb349spec/requests/api/graphql_spec.rb350spec/requests/api/graphql/mutations/award_emojis/add_spec.rb351spec/commands/sidekiq_cluster/cli_spec.rb352spec/requests/api/graphql/mutations/snippets/destroy_spec.rb353spec/controllers/projects/badges_controller_spec.rb354spec/requests/api/metrics/dashboard/annotations_spec.rb355spec/requests/projects/google_cloud/deployments_controller_spec.rb356spec/controllers/projects/alerting/notifications_controller_spec.rb357spec/controllers/admin/runners_controller_spec.rb358spec/requests/api/graphql/ci/runners_spec.rb359spec/requests/api/graphql/mutations/container_repository/destroy_tags_spec.rb360spec/requests/api/graphql/project/cluster_agents_spec.rb361spec/controllers/groups/shared_projects_controller_spec.rb362spec/controllers/admin/ci/variables_controller_spec.rb363spec/controllers/import/bitbucket_server_controller_spec.rb364spec/controllers/projects/error_tracking_controller_spec.rb365spec/requests/projects/merge_requests/creations_spec.rb366spec/requests/api/graphql/mutations/notes/destroy_spec.rb367spec/requests/admin/background_migrations_controller_spec.rb368spec/controllers/admin/spam_logs_controller_spec.rb369spec/controllers/projects/environments/prometheus_api_controller_spec.rb370spec/requests/api/group_avatar_spec.rb371spec/requests/api/graphql/query_spec.rb372spec/controllers/concerns/internal_redirect_spec.rb373spec/requests/api/graphql/mutations/merge_requests/set_milestone_spec.rb374spec/requests/projects/merge_requests/content_spec.rb375spec/controllers/projects/security/configuration_controller_spec.rb376spec/controllers/projects/usage_quotas_controller_spec.rb377spec/requests/groups/harbor/repositories_controller_spec.rb378spec/requests/api/internal/workhorse_spec.rb379spec/requests/api/graphql/custom_emoji_query_spec.rb380spec/requests/api/appearance_spec.rb381spec/requests/api/graphql/mutations/clusters/agents/delete_spec.rb382spec/requests/api/admin/sidekiq_spec.rb383spec/requests/api/graphql/snippets_spec.rb384spec/requests/api/ci/runner/runners_reset_spec.rb385spec/requests/admin/impersonation_tokens_controller_spec.rb386spec/requests/api/graphql/project/repository/blobs_spec.rb387spec/requests/api/graphql/user/group_member_query_spec.rb388spec/controllers/projects/product_analytics_controller_spec.rb389spec/requests/api/graphql/ci/template_spec.rb390spec/requests/api/internal/mail_room_spec.rb391spec/controllers/projects/packages/infrastructure_registry_controller_spec.rbKnapsack report generator started!392DEPRECATION WARNING: /builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/activerecord-6.1.4.7/lib/active_record/connection_adapters/postgresql_adapter.rb:78: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call393/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/pg-1.3.5/lib/pg.rb:68: warning: The called method `connect' is defined here394 (called from new_client at /builds/gitlab-org/gitlab/config/initializers/00_connection_logger.rb:21)395WARNING: Shared example group 'returns a valid json search response' has been previously defined at:396 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335397...and you are now defining it at:398 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335399The new definition will overwrite the original one.400WARNING: Shared example group 'returns a valid json search response' has been previously defined at:401 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335402...and you are now defining it at:403 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335404The new definition will overwrite the original one.405WARNING: Shared example group 'returns a valid json search response' has been previously defined at:406 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335407...and you are now defining it at:408 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335409The new definition will overwrite the original one.410WARNING: Shared example group 'returns a valid json search response' has been previously defined at:411 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335412...and you are now defining it at:413 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335414The new definition will overwrite the original one.415WARNING: Shared example group 'returns a valid json search response' has been previously defined at:416 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335417...and you are now defining it at:418 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:335419The new definition will overwrite the original one.420WARNING: Shared example group 'returns a valid nuget download versions json response' has been previously defined at:421 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250422...and you are now defining it at:423 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250424The new definition will overwrite the original one.425WARNING: Shared example group 'returns a valid nuget download versions json response' has been previously defined at:426 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250427...and you are now defining it at:428 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250429The new definition will overwrite the original one.430WARNING: Shared example group 'returns a valid nuget download versions json response' has been previously defined at:431 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250432...and you are now defining it at:433 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250434The new definition will overwrite the original one.435WARNING: Shared example group 'returns a valid nuget download versions json response' has been previously defined at:436 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250437...and you are now defining it at:438 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250439The new definition will overwrite the original one.440WARNING: Shared example group 'returns a valid nuget download versions json response' has been previously defined at:441 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250442...and you are now defining it at:443 /builds/gitlab-org/gitlab/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb:250444The new definition will overwrite the original one.445Run options: exclude {:quarantine=>true, :level=>"migration"}446==> /builds/gitlab-org/gitlab/tmp/tests/gitlab-test_bare set up in 0.040510998 seconds...447Test environment set up in 0.489790055 seconds448API::Ci::Pipelines449 GET /projects/:id/pipelines450 behaves like pipelines visibility table451 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200452 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))453 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :guest, response_status: 200454 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))455 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200456 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))457 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :developer, response_status: 200458 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))459 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200460 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))461 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: nil, response_status: 404462 is expected to match (a hash including "message")463 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :non_member, response_status: 404464 is expected to match (a hash including "message")465 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :guest, response_status: 200466 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))467 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200468 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))469 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :developer, response_status: 200470 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))471 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200472 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))473 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200474 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))475 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :guest, response_status: 200476 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))477 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200478 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))479 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :developer, response_status: 200480 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))481 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200482 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))483 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: nil, response_status: 404484 is expected to match (a hash including "message")485 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :non_member, response_status: 404486 is expected to match (a hash including "message")487 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :guest, response_status: 403488 is expected to match (a hash including "message")489 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200490 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))491 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :developer, response_status: 200492 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))493 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200494 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))495 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200496 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))497 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :guest, response_status: 200498 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))499 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200500 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))501 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :developer, response_status: 200502 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))503 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200504 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))505 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: nil, response_status: 404506 is expected to match (a hash including "message")507 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :non_member, response_status: 404508 is expected to match (a hash including "message")509 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :guest, response_status: 200510 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))511 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200512 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))513 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :developer, response_status: 200514 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))515 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200516 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))517 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200518 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))519 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :guest, response_status: 200520 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))521 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200522 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))523 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :developer, response_status: 200524 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))525 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200526 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))527 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: nil, response_status: 404528 is expected to match (a hash including "message")529 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :non_member, response_status: 404530 is expected to match (a hash including "message")531 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :guest, response_status: 403532 is expected to match (a hash including "message")533 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200534 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))535 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :developer, response_status: 200536 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))537 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200538 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))539 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200540 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))541 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :guest, response_status: 200542 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))543 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200544 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))545 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :developer, response_status: 200546 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))547 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200548 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))549 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: nil, response_status: 404550 is expected to match (a hash including "message")551 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :non_member, response_status: 200552 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))553 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :guest, response_status: 200554 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))555 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200556 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))557 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :developer, response_status: 200558 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))559 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200560 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))561 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200562 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))563 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :guest, response_status: 200564 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))565 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200566 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))567 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :developer, response_status: 200568 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))569 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200570 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))571 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: nil, response_status: 404572 is expected to match (a hash including "message")573 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :non_member, response_status: 403574 is expected to match (a hash including "message")575 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :guest, response_status: 403576 is expected to match (a hash including "message")577 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200578 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))579 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :developer, response_status: 200580 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))581 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200582 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))583 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200584 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))585 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :guest, response_status: 200586 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))587 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200588 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))589 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :developer, response_status: 200590 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))591 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200592 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))593 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: nil, response_status: 404594 is expected to match (a hash including "message")595 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :non_member, response_status: 403596 is expected to match (a hash including "message")597 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :guest, response_status: 200598 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))599 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200600 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))601 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :developer, response_status: 200602 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))603 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200604 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))605 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200606 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))607 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :guest, response_status: 200608 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))609 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200610 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))611 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :developer, response_status: 200612 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))613 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200614 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))615 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: nil, response_status: 404616 is expected to match (a hash including "message")617 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :non_member, response_status: 403618 is expected to match (a hash including "message")619 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :guest, response_status: 403620 is expected to match (a hash including "message")621 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200622 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))623 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :developer, response_status: 200624 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))625 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200626 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))627 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200628 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))629 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :guest, response_status: 200630 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))631 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200632 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))633 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :developer, response_status: 200634 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))635 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200636 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))637 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: nil, response_status: 200638 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))639 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :non_member, response_status: 200640 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))641 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :guest, response_status: 200642 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))643 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200644 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))645 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :developer, response_status: 200646 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))647 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200648 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))649 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200650 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))651 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :guest, response_status: 200652 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))653 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200654 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))655 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :developer, response_status: 200656 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))657 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200658 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))659 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: nil, response_status: 403660 is expected to match (a hash including "message")661 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :non_member, response_status: 403662 is expected to match (a hash including "message")663 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :guest, response_status: 403664 is expected to match (a hash including "message")665 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200666 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))667 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :developer, response_status: 200668 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))669 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200670 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))671 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200672 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))673 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :guest, response_status: 200674 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))675 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200676 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))677 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :developer, response_status: 200678 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))679 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200680 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))681 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: nil, response_status: 403682 is expected to match (a hash including "message")683 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :non_member, response_status: 403684 is expected to match (a hash including "message")685 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :guest, response_status: 200686 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))687 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200688 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))689 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :developer, response_status: 200690 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))691 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200692 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))693 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200694 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))695 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :guest, response_status: 200696 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))697 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200698 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))699 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :developer, response_status: 200700 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))701 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200702 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))703 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: nil, response_status: 403704 is expected to match (a hash including "message")705 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :non_member, response_status: 403706 is expected to match (a hash including "message")707 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :guest, response_status: 403708 is expected to match (a hash including "message")709 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200710 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))711 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :developer, response_status: 200712 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))713 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200714 is expected to match (a collection containing exactly (a hash including "sha", "ref", "status", "web_url", and {"id" => 1}))715 authorized user716 returns project pipelines717 keys in the response718 includes pipeline source719 when parameter is passed720 when scope is running721 returns matched pipelines722 when scope is pending723 returns matched pipelines724 when scope is finished725 returns matched pipelines726 when scope is branches or tags727 when scope is branches728 returns matched pipelines729 when scope is tags730 returns matched pipelines731 when scope is invalid732 returns bad_request733 when status is created734 returns matched pipelines735 when status is waiting_for_resource736 returns matched pipelines737 when status is preparing738 returns matched pipelines739 when status is pending740 returns matched pipelines741 when status is running742 returns matched pipelines743 when status is success744 returns matched pipelines745 when status is failed746 returns matched pipelines747 when status is canceled748 returns matched pipelines749 when status is skipped750 returns matched pipelines751 when status is manual752 returns matched pipelines753 when status is scheduled754 returns matched pipelines755 when status is invalid756 returns bad_request757 when ref is specified758 when ref exists759 returns matched pipelines760 when ref does not exist761 returns empty762 when username is specified763 when username exists764 returns matched pipelines765 when username does not exist766 returns empty767 when yaml_errors is specified768 when yaml_errors is true769 returns matched pipelines770 when yaml_errors is false771 returns matched pipelines772 when yaml_errors is invalid773 returns bad_request774 when updated_at filters are specified775 returns pipelines with last update date in specified datetime range776 when order_by and sort are specified777 when order_by user_id778 when sort parameter is valid779 sorts as user_id: :desc780 when sort parameter is invalid781 returns bad_request782 when order_by is invalid783 returns bad_request784 when a source is specified785 returns matched pipelines786 when source is invalid787 returns bad_request788 unauthorized user789 does not return project pipelines790 GET /projects/:id/pipelines/:pipeline_id/jobs791 authorized user792 returns pipeline jobs793 returns correct values794 returns pipeline data795 avoids N+1 queries796 behaves like a job with artifacts and trace797 with artifacts and trace798 returns artifacts and trace data799 filter jobs with one scope element800 is expected to all match (a hash including {"duration" => (be nil), "queued_duration" => (be >= 0.0)})801 when filtering to only running jobs802 is expected to all match (a hash including {"duration" => (be >= 0.0), "queued_duration" => (be >= 0.0)})803 filter jobs with hash804 is expected to respond with numeric status code bad_request805 filter jobs with array of scope elements806 is expected to be a kind of Array807 respond 400 when scope contains invalid state808 is expected to respond with numeric status code bad_request809 jobs in different pipelines810 excludes jobs from other pipelines811 pipeline has retried jobs812 does not return retried jobs by default813 when include_retried is false814 does not return retried jobs815 when include_retried is true816 returns retried jobs817 no pipeline is found818 does not return jobs819 unauthorized user820 when user is not logged in821 does not return jobs822 when user is guest823 does not return jobs824 GET /projects/:id/pipelines/:pipeline_id/bridges825 authorized user826 returns pipeline bridges827 returns correct values828 returns pipeline data829 returns downstream pipeline data830 avoids N+1 queries831 filter bridges832 with one scope element833 skip_before_request834 with array of scope elements835 skip_before_request836 respond 400 when scope contains invalid state837 in an array838 is expected to respond with numeric status code bad_request839 in a hash840 is expected to respond with numeric status code bad_request841 in a string842 is expected to respond with numeric status code bad_request843 bridges in different pipelines844 excludes bridges from other pipelines845 no pipeline is found846 does not return bridges847 unauthorized user848 when user is not logged in849 does not return bridges850 when user is guest851 does not return bridges852 when user has no read_build access for project853 does not return bridges854 POST /projects/:id/pipeline855 authorized user856 with gitlab-ci.yml857 creates and returns a new pipeline858 fails when using an invalid ref859 variables given860 creates and returns a new pipeline using the given variables861 using variables conditions862 creates and returns a new pipeline using the given variables863 condition unmatch864 doesn't create a job865 without gitlab-ci.yml866 without auto devops enabled867 fails to create pipeline868 unauthorized user869 does not create pipeline870 GET /projects/:id/pipelines/:pipeline_id871 behaves like pipelines visibility table872 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200873 is expected to match (match response schema "public_api/v4/pipeline/detail")874 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :guest, response_status: 200875 is expected to match (match response schema "public_api/v4/pipeline/detail")876 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200877 is expected to match (match response schema "public_api/v4/pipeline/detail")878 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :developer, response_status: 200879 is expected to match (match response schema "public_api/v4/pipeline/detail")880 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200881 is expected to match (match response schema "public_api/v4/pipeline/detail")882 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: nil, response_status: 404883 is expected to match (a hash including "message")884 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :non_member, response_status: 404885 is expected to match (a hash including "message")886 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :guest, response_status: 200887 is expected to match (match response schema "public_api/v4/pipeline/detail")888 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200889 is expected to match (match response schema "public_api/v4/pipeline/detail")890 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :developer, response_status: 200891 is expected to match (match response schema "public_api/v4/pipeline/detail")892 visibility_level: :private, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200893 is expected to match (match response schema "public_api/v4/pipeline/detail")894 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200895 is expected to match (match response schema "public_api/v4/pipeline/detail")896 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :guest, response_status: 200897 is expected to match (match response schema "public_api/v4/pipeline/detail")898 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200899 is expected to match (match response schema "public_api/v4/pipeline/detail")900 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :developer, response_status: 200901 is expected to match (match response schema "public_api/v4/pipeline/detail")902 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200903 is expected to match (match response schema "public_api/v4/pipeline/detail")904 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: nil, response_status: 404905 is expected to match (a hash including "message")906 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :non_member, response_status: 404907 is expected to match (a hash including "message")908 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :guest, response_status: 403909 is expected to match (a hash including "message")910 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200911 is expected to match (match response schema "public_api/v4/pipeline/detail")912 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :developer, response_status: 200913 is expected to match (match response schema "public_api/v4/pipeline/detail")914 visibility_level: :private, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200915 is expected to match (match response schema "public_api/v4/pipeline/detail")916 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200917 is expected to match (match response schema "public_api/v4/pipeline/detail")918 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :guest, response_status: 200919 is expected to match (match response schema "public_api/v4/pipeline/detail")920 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200921 is expected to match (match response schema "public_api/v4/pipeline/detail")922 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :developer, response_status: 200923 is expected to match (match response schema "public_api/v4/pipeline/detail")924 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200925 is expected to match (match response schema "public_api/v4/pipeline/detail")926 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: nil, response_status: 404927 is expected to match (a hash including "message")928 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :non_member, response_status: 404929 is expected to match (a hash including "message")930 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :guest, response_status: 200931 is expected to match (match response schema "public_api/v4/pipeline/detail")932 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200933 is expected to match (match response schema "public_api/v4/pipeline/detail")934 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :developer, response_status: 200935 is expected to match (match response schema "public_api/v4/pipeline/detail")936 visibility_level: :private, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200937 is expected to match (match response schema "public_api/v4/pipeline/detail")938 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200939 is expected to match (match response schema "public_api/v4/pipeline/detail")940 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :guest, response_status: 200941 is expected to match (match response schema "public_api/v4/pipeline/detail")942 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200943 is expected to match (match response schema "public_api/v4/pipeline/detail")944 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :developer, response_status: 200945 is expected to match (match response schema "public_api/v4/pipeline/detail")946 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200947 is expected to match (match response schema "public_api/v4/pipeline/detail")948 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: nil, response_status: 404949 is expected to match (a hash including "message")950 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :non_member, response_status: 404951 is expected to match (a hash including "message")952 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :guest, response_status: 403953 is expected to match (a hash including "message")954 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200955 is expected to match (match response schema "public_api/v4/pipeline/detail")956 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :developer, response_status: 200957 is expected to match (match response schema "public_api/v4/pipeline/detail")958 visibility_level: :private, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 200959 is expected to match (match response schema "public_api/v4/pipeline/detail")960 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :non_member, response_status: 200961 is expected to match (match response schema "public_api/v4/pipeline/detail")962 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :guest, response_status: 200963 is expected to match (match response schema "public_api/v4/pipeline/detail")964 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :reporter, response_status: 200965 is expected to match (match response schema "public_api/v4/pipeline/detail")966 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :developer, response_status: 200967 is expected to match (match response schema "public_api/v4/pipeline/detail")968 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 200969 is expected to match (match response schema "public_api/v4/pipeline/detail")970 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: nil, response_status: 404971 is expected to match (a hash including "message")972 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :non_member, response_status: 200973 is expected to match (match response schema "public_api/v4/pipeline/detail")974 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :guest, response_status: 200975 is expected to match (match response schema "public_api/v4/pipeline/detail")976 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :reporter, response_status: 200977 is expected to match (match response schema "public_api/v4/pipeline/detail")978 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :developer, response_status: 200979 is expected to match (match response schema "public_api/v4/pipeline/detail")980 visibility_level: :internal, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 200981 is expected to match (match response schema "public_api/v4/pipeline/detail")982 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :non_member, response_status: 200983 is expected to match (match response schema "public_api/v4/pipeline/detail")984 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :guest, response_status: 200985 is expected to match (match response schema "public_api/v4/pipeline/detail")986 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :reporter, response_status: 200987 is expected to match (match response schema "public_api/v4/pipeline/detail")988 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :developer, response_status: 200989 is expected to match (match response schema "public_api/v4/pipeline/detail")990 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 200991 is expected to match (match response schema "public_api/v4/pipeline/detail")992 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: nil, response_status: 404993 is expected to match (a hash including "message")994 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :non_member, response_status: 403995 is expected to match (a hash including "message")996 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :guest, response_status: 403997 is expected to match (a hash including "message")998 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :reporter, response_status: 200999 is expected to match (match response schema "public_api/v4/pipeline/detail")1000 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :developer, response_status: 2001001 is expected to match (match response schema "public_api/v4/pipeline/detail")1002 visibility_level: :internal, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 2001003 is expected to match (match response schema "public_api/v4/pipeline/detail")1004 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :non_member, response_status: 2001005 is expected to match (match response schema "public_api/v4/pipeline/detail")1006 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :guest, response_status: 2001007 is expected to match (match response schema "public_api/v4/pipeline/detail")1008 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :reporter, response_status: 2001009 is expected to match (match response schema "public_api/v4/pipeline/detail")1010 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :developer, response_status: 2001011 is expected to match (match response schema "public_api/v4/pipeline/detail")1012 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 2001013 is expected to match (match response schema "public_api/v4/pipeline/detail")1014 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: nil, response_status: 4041015 is expected to match (a hash including "message")1016 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :non_member, response_status: 4031017 is expected to match (a hash including "message")1018 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :guest, response_status: 2001019 is expected to match (match response schema "public_api/v4/pipeline/detail")1020 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :reporter, response_status: 2001021 is expected to match (match response schema "public_api/v4/pipeline/detail")1022 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :developer, response_status: 2001023 is expected to match (match response schema "public_api/v4/pipeline/detail")1024 visibility_level: :internal, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 2001025 is expected to match (match response schema "public_api/v4/pipeline/detail")1026 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :non_member, response_status: 2001027 is expected to match (match response schema "public_api/v4/pipeline/detail")1028 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :guest, response_status: 2001029 is expected to match (match response schema "public_api/v4/pipeline/detail")1030 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :reporter, response_status: 2001031 is expected to match (match response schema "public_api/v4/pipeline/detail")1032 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :developer, response_status: 2001033 is expected to match (match response schema "public_api/v4/pipeline/detail")1034 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 2001035 is expected to match (match response schema "public_api/v4/pipeline/detail")1036 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: nil, response_status: 4041037 is expected to match (a hash including "message")1038 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :non_member, response_status: 4031039 is expected to match (a hash including "message")1040 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :guest, response_status: 4031041 is expected to match (a hash including "message")1042 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :reporter, response_status: 2001043 is expected to match (match response schema "public_api/v4/pipeline/detail")1044 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :developer, response_status: 2001045 is expected to match (match response schema "public_api/v4/pipeline/detail")1046 visibility_level: :internal, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 2001047 is expected to match (match response schema "public_api/v4/pipeline/detail")1048 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :non_member, response_status: 2001049 is expected to match (match response schema "public_api/v4/pipeline/detail")1050 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :guest, response_status: 2001051 is expected to match (match response schema "public_api/v4/pipeline/detail")1052 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :reporter, response_status: 2001053 is expected to match (match response schema "public_api/v4/pipeline/detail")1054 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :developer, response_status: 2001055 is expected to match (match response schema "public_api/v4/pipeline/detail")1056 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 2001057 is expected to match (match response schema "public_api/v4/pipeline/detail")1058 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: nil, response_status: 2001059 is expected to match (match response schema "public_api/v4/pipeline/detail")1060 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :non_member, response_status: 2001061 is expected to match (match response schema "public_api/v4/pipeline/detail")1062 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :guest, response_status: 2001063 is expected to match (match response schema "public_api/v4/pipeline/detail")1064 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :reporter, response_status: 2001065 is expected to match (match response schema "public_api/v4/pipeline/detail")1066 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :developer, response_status: 2001067 is expected to match (match response schema "public_api/v4/pipeline/detail")1068 visibility_level: :public, builds_access_level: :enabled, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 2001069 is expected to match (match response schema "public_api/v4/pipeline/detail")1070 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :non_member, response_status: 2001071 is expected to match (match response schema "public_api/v4/pipeline/detail")1072 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :guest, response_status: 2001073 is expected to match (match response schema "public_api/v4/pipeline/detail")1074 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :reporter, response_status: 2001075 is expected to match (match response schema "public_api/v4/pipeline/detail")1076 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :developer, response_status: 2001077 is expected to match (match response schema "public_api/v4/pipeline/detail")1078 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 2001079 is expected to match (match response schema "public_api/v4/pipeline/detail")1080 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: nil, response_status: 4031081 is expected to match (a hash including "message")1082 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :non_member, response_status: 4031083 is expected to match (a hash including "message")1084 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :guest, response_status: 4031085 is expected to match (a hash including "message")1086 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :reporter, response_status: 2001087 is expected to match (match response schema "public_api/v4/pipeline/detail")1088 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :developer, response_status: 2001089 is expected to match (match response schema "public_api/v4/pipeline/detail")1090 visibility_level: :public, builds_access_level: :enabled, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 2001091 is expected to match (match response schema "public_api/v4/pipeline/detail")1092 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :non_member, response_status: 2001093 is expected to match (match response schema "public_api/v4/pipeline/detail")1094 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :guest, response_status: 2001095 is expected to match (match response schema "public_api/v4/pipeline/detail")1096 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :reporter, response_status: 2001097 is expected to match (match response schema "public_api/v4/pipeline/detail")1098 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :developer, response_status: 2001099 is expected to match (match response schema "public_api/v4/pipeline/detail")1100 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: true, user_role: :maintainer, response_status: 2001101 is expected to match (match response schema "public_api/v4/pipeline/detail")1102 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: nil, response_status: 4031103 is expected to match (a hash including "message")1104 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :non_member, response_status: 4031105 is expected to match (a hash including "message")1106 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :guest, response_status: 2001107 is expected to match (match response schema "public_api/v4/pipeline/detail")1108 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :reporter, response_status: 2001109 is expected to match (match response schema "public_api/v4/pipeline/detail")1110 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :developer, response_status: 2001111 is expected to match (match response schema "public_api/v4/pipeline/detail")1112 visibility_level: :public, builds_access_level: :private, public_builds: true, is_admin: false, user_role: :maintainer, response_status: 2001113 is expected to match (match response schema "public_api/v4/pipeline/detail")1114 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :non_member, response_status: 2001115 is expected to match (match response schema "public_api/v4/pipeline/detail")1116 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :guest, response_status: 2001117 is expected to match (match response schema "public_api/v4/pipeline/detail")1118 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :reporter, response_status: 2001119 is expected to match (match response schema "public_api/v4/pipeline/detail")1120 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :developer, response_status: 2001121 is expected to match (match response schema "public_api/v4/pipeline/detail")1122 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: true, user_role: :maintainer, response_status: 2001123 is expected to match (match response schema "public_api/v4/pipeline/detail")1124 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: nil, response_status: 4031125 is expected to match (a hash including "message")1126 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :non_member, response_status: 4031127 is expected to match (a hash including "message")1128 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :guest, response_status: 4031129 is expected to match (a hash including "message")1130 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :reporter, response_status: 2001131 is expected to match (match response schema "public_api/v4/pipeline/detail")1132 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :developer, response_status: 2001133 is expected to match (match response schema "public_api/v4/pipeline/detail")1134 visibility_level: :public, builds_access_level: :private, public_builds: false, is_admin: false, user_role: :maintainer, response_status: 2001135 is expected to match (match response schema "public_api/v4/pipeline/detail")1136 authorized user1137 exposes known attributes1138 returns project pipeline1139 returns 404 when it does not exist1140 with coverage1141 exposes the coverage1142 unauthorized user1143 does not return a project pipeline1144 when pipeline is a dangling pipeline1145 returns the specified pipeline1146 GET /projects/:id/pipelines/latest1147 authorized user1148 default repository branch1149 gets the latest pipleine1150 ref parameter1151 gets the latest pipleine1152 unauthorized user1153 does not return a project pipeline1154 GET /projects/:id/pipelines/:pipeline_id/variables1155 user is a mantainer1156 returns pipeline variables empty1157 with variables1158 returns pipeline variables1159 user is a developer1160 pipeline created by the developer user1161 returns pipeline variables1162 pipeline created is not created by the developer user1163 does not return pipeline variables1164 user is not a project member1165 does not return pipeline variables1166 DELETE /projects/:id/pipelines/:pipeline_id1167 authorized user1168 destroys the pipeline1169 returns 404 when it does not exist1170 does not log an audit event1171 when the pipeline has jobs1172 destroys associated jobs1173 when project is undergoing stats refresh1174 behaves like preventing request because of ongoing project stats refresh1175 logs about the rejected request1176 returns 409 error1177 does not delete the pipeline1178 unauthorized user1179 when user is not member1180 returns a 4041181 when user is developer1182 returns a 4031183 POST /projects/:id/pipelines/:pipeline_id/retry1184 authorized user1185 retries failed builds1186 unauthorized user1187 does not return a project pipeline1188 handles errors1189 returns error1190 POST /projects/:id/pipelines/:pipeline_id/cancel1191 authorized user1192 retries failed builds1193 user without proper access rights1194 rejects the action1195 GET /projects/:id/pipelines/:pipeline_id/test_report1196 authorized user1197 when pipeline does not have a test report1198 returns an empty test report1199 when pipeline has a test report1200 returns the test report1201 when pipeline has corrupt test reports1202 returns a suite_error1203 unauthorized user1204 does not return project pipelines1205 GET /projects/:id/pipelines/:pipeline_id/test_report_summary1206 authorized user1207 when pipeline does not have a test report summary1208 returns an empty test report summary1209 when pipeline has a test report summary1210 returns the test report summary1211 unauthorized user1212 does not return project pipelines1213API::NugetProjectPackages1214 GET /api/v4/projects/:id/packages/nuget1215 behaves like handling nuget service requests1216 with valid target1217 personal token1218 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1219 behaves like process nuget service index request1220 for user type developer1221 returns a valid json response1222 behaves like returning response status1223 returns success1224 behaves like a package tracking event1225 creates a gitlab tracking event cli_metadata1226 with invalid format1227 behaves like rejects nuget packages access1228 for user type anonymous1229 behaves like returning response status1230 returns not_found1231 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1232 behaves like process nuget service index request1233 for user type guest1234 returns a valid json response1235 behaves like returning response status1236 returns success1237 behaves like a package tracking event1238 creates a gitlab tracking event cli_metadata1239 with invalid format1240 behaves like rejects nuget packages access1241 for user type anonymous1242 behaves like returning response status1243 returns not_found1244 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1245 behaves like rejects nuget packages access1246 for user type developer1247 has the correct response header1248 behaves like returning response status1249 returns unauthorized1250 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1251 behaves like rejects nuget packages access1252 for user type guest1253 has the correct response header1254 behaves like returning response status1255 returns unauthorized1256 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1257 behaves like process nuget service index request1258 for user type developer1259 returns a valid json response1260 behaves like returning response status1261 returns success1262 behaves like a package tracking event1263 creates a gitlab tracking event cli_metadata1264 with invalid format1265 behaves like rejects nuget packages access1266 for user type anonymous1267 behaves like returning response status1268 returns not_found1269 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1270 behaves like process nuget service index request1271 for user type guest1272 returns a valid json response1273 behaves like returning response status1274 returns success1275 behaves like a package tracking event1276 creates a gitlab tracking event cli_metadata1277 with invalid format1278 behaves like rejects nuget packages access1279 for user type anonymous1280 behaves like returning response status1281 returns not_found1282 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1283 behaves like rejects nuget packages access1284 for user type developer1285 has the correct response header1286 behaves like returning response status1287 returns unauthorized1288 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1289 behaves like rejects nuget packages access1290 for user type guest1291 has the correct response header1292 behaves like returning response status1293 returns unauthorized1294 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1295 behaves like process nuget service index request1296 for user type anonymous1297 returns a valid json response1298 behaves like returning response status1299 returns success1300 behaves like a package tracking event1301 creates a gitlab tracking event cli_metadata1302 with invalid format1303 behaves like rejects nuget packages access1304 for user type anonymous1305 behaves like returning response status1306 returns not_found1307 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1308 behaves like process nuget service index request1309 for user type developer1310 returns a valid json response1311 behaves like returning response status1312 returns success1313 behaves like a package tracking event1314 creates a gitlab tracking event cli_metadata1315 with invalid format1316 behaves like rejects nuget packages access1317 for user type anonymous1318 behaves like returning response status1319 returns not_found1320 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden1321 behaves like rejects nuget packages access1322 for user type guest1323 behaves like returning response status1324 returns forbidden1325 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1326 behaves like rejects nuget packages access1327 for user type developer1328 has the correct response header1329 behaves like returning response status1330 returns unauthorized1331 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1332 behaves like rejects nuget packages access1333 for user type guest1334 has the correct response header1335 behaves like returning response status1336 returns unauthorized1337 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1338 behaves like rejects nuget packages access1339 for user type developer1340 behaves like returning response status1341 returns not_found1342 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1343 behaves like rejects nuget packages access1344 for user type guest1345 behaves like returning response status1346 returns not_found1347 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1348 behaves like rejects nuget packages access1349 for user type developer1350 has the correct response header1351 behaves like returning response status1352 returns unauthorized1353 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1354 behaves like rejects nuget packages access1355 for user type guest1356 has the correct response header1357 behaves like returning response status1358 returns unauthorized1359 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1360 behaves like rejects nuget packages access1361 for user type anonymous1362 has the correct response header1363 behaves like returning response status1364 returns unauthorized1365 with job token1366 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1367 behaves like process nuget service index request1368 for user type developer1369 returns a valid json response1370 behaves like returning response status1371 returns success1372 behaves like a package tracking event1373 creates a gitlab tracking event cli_metadata1374 with invalid format1375 behaves like rejects nuget packages access1376 for user type anonymous1377 behaves like returning response status1378 returns not_found1379 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1380 behaves like process nuget service index request1381 for user type guest1382 returns a valid json response1383 behaves like returning response status1384 returns success1385 behaves like a package tracking event1386 creates a gitlab tracking event cli_metadata1387 with invalid format1388 behaves like rejects nuget packages access1389 for user type anonymous1390 behaves like returning response status1391 returns not_found1392 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1393 behaves like rejects nuget packages access1394 for user type developer1395 has the correct response header1396 behaves like returning response status1397 returns unauthorized1398 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1399 behaves like rejects nuget packages access1400 for user type guest1401 has the correct response header1402 behaves like returning response status1403 returns unauthorized1404 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1405 behaves like process nuget service index request1406 for user type developer1407 returns a valid json response1408 behaves like returning response status1409 returns success1410 behaves like a package tracking event1411 creates a gitlab tracking event cli_metadata1412 with invalid format1413 behaves like rejects nuget packages access1414 for user type anonymous1415 behaves like returning response status1416 returns not_found1417 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1418 behaves like process nuget service index request1419 for user type guest1420 returns a valid json response1421 behaves like returning response status1422 returns success1423 behaves like a package tracking event1424 creates a gitlab tracking event cli_metadata1425 with invalid format1426 behaves like rejects nuget packages access1427 for user type anonymous1428 behaves like returning response status1429 returns not_found1430 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1431 behaves like rejects nuget packages access1432 for user type developer1433 has the correct response header1434 behaves like returning response status1435 returns unauthorized1436 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1437 behaves like rejects nuget packages access1438 for user type guest1439 has the correct response header1440 behaves like returning response status1441 returns unauthorized1442 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1443 behaves like process nuget service index request1444 for user type anonymous1445 returns a valid json response1446 behaves like returning response status1447 returns success1448 behaves like a package tracking event1449 creates a gitlab tracking event cli_metadata1450 with invalid format1451 behaves like rejects nuget packages access1452 for user type anonymous1453 behaves like returning response status1454 returns not_found1455 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget service index request", expected_status: :success1456 behaves like process nuget service index request1457 for user type developer1458 returns a valid json response1459 behaves like returning response status1460 returns success1461 behaves like a package tracking event1462 creates a gitlab tracking event cli_metadata1463 with invalid format1464 behaves like rejects nuget packages access1465 for user type anonymous1466 behaves like returning response status1467 returns not_found1468 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden1469 behaves like rejects nuget packages access1470 for user type guest1471 behaves like returning response status1472 returns forbidden1473 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1474 behaves like rejects nuget packages access1475 for user type developer1476 has the correct response header1477 behaves like returning response status1478 returns unauthorized1479 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1480 behaves like rejects nuget packages access1481 for user type guest1482 has the correct response header1483 behaves like returning response status1484 returns unauthorized1485 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1486 behaves like rejects nuget packages access1487 for user type developer1488 behaves like returning response status1489 returns not_found1490 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1491 behaves like rejects nuget packages access1492 for user type guest1493 behaves like returning response status1494 returns not_found1495 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1496 behaves like rejects nuget packages access1497 for user type developer1498 has the correct response header1499 behaves like returning response status1500 returns unauthorized1501 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1502 behaves like rejects nuget packages access1503 for user type guest1504 has the correct response header1505 behaves like returning response status1506 returns unauthorized1507 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1508 behaves like rejects nuget packages access1509 for user type anonymous1510 has the correct response header1511 behaves like returning response status1512 returns unauthorized1513 behaves like deploy token for package GET requests1514 with deploy token headers1515 valid token1516 behaves like returning response status1517 returns success1518 invalid token1519 behaves like returning response status1520 returns unauthorized1521 behaves like rejects nuget access with unknown target id1522 with an unknown target1523 as anonymous1524 behaves like rejects nuget packages access1525 for user type anonymous1526 has the correct response header1527 behaves like returning response status1528 returns unauthorized1529 as authenticated user1530 behaves like rejects nuget packages access1531 for user type anonymous1532 behaves like returning response status1533 returns not_found1534 behaves like rejects nuget access with invalid target id1535 with a target id with invalid integers1536 id: "/../", status: :bad_request1537 behaves like rejects nuget packages access1538 for user type anonymous1539 behaves like returning response status1540 returns bad_request1541 id: "", status: :not_found1542 behaves like rejects nuget packages access1543 for user type anonymous1544 behaves like returning response status1545 returns not_found1546 id: "%20", status: :bad_request1547 behaves like rejects nuget packages access1548 for user type anonymous1549 behaves like returning response status1550 returns bad_request1551 id: "%2e%2e%2f", status: :bad_request1552 behaves like rejects nuget packages access1553 for user type anonymous1554 behaves like returning response status1555 returns bad_request1556 id: "NaN", status: :bad_request1557 behaves like rejects nuget packages access1558 for user type anonymous1559 behaves like returning response status1560 returns bad_request1561 id: 1253, status: :unauthorized1562 behaves like rejects nuget packages access1563 for user type anonymous1564 has the correct response header1565 behaves like returning response status1566 returns unauthorized1567 id: "anything25", status: :bad_request1568 behaves like rejects nuget packages access1569 for user type anonymous1570 behaves like returning response status1571 returns bad_request1572 GET /api/v4/projects/:id/packages/nuget/metadata/*package_name/index1573 behaves like handling nuget metadata requests with package name1574 with valid target1575 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget metadata request at package name level", expected_status: :success1576 behaves like process nuget metadata request at package name level1577 for user type developer1578 behaves like returning response status1579 returns success1580 behaves like returning nuget metadata json response with json schema1581 returns a valid json response1582 with invalid format1583 behaves like rejects nuget packages access1584 for user type anonymous1585 behaves like returning response status1586 returns not_found1587 with lower case package name1588 behaves like returning response status1589 returns success1590 behaves like returning nuget metadata json response with json schema1591 returns a valid json response1592 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process nuget metadata request at package name level", expected_status: :success1593 behaves like process nuget metadata request at package name level1594 for user type guest1595 behaves like returning response status1596 returns success1597 behaves like returning nuget metadata json response with json schema1598 returns a valid json response1599 with invalid format1600 behaves like rejects nuget packages access1601 for user type anonymous1602 behaves like returning response status1603 returns not_found1604 with lower case package name1605 behaves like returning response status1606 returns success1607 behaves like returning nuget metadata json response with json schema1608 returns a valid json response1609 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1610 behaves like rejects nuget packages access1611 for user type developer1612 has the correct response header1613 behaves like returning response status1614 returns unauthorized1615 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1616 behaves like rejects nuget packages access1617 for user type guest1618 has the correct response header1619 behaves like returning response status1620 returns unauthorized1621 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process nuget metadata request at package name level", expected_status: :success1622 behaves like process nuget metadata request at package name level1623 for user type developer1624 behaves like returning response status1625 returns success1626 behaves like returning nuget metadata json response with json schema1627 returns a valid json response1628 with invalid format1629 behaves like rejects nuget packages access1630 for user type anonymous1631 behaves like returning response status1632 returns not_found1633 with lower case package name1634 behaves like returning response status1635 returns success1636 behaves like returning nuget metadata json response with json schema1637 returns a valid json response1638 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process nuget metadata request at package name level", expected_status: :success1639 behaves like process nuget metadata request at package name level1640 for user type guest1641 behaves like returning response status1642 returns success1643 behaves like returning nuget metadata json response with json schema1644 returns a valid json response1645 with invalid format1646 behaves like rejects nuget packages access1647 for user type anonymous1648 behaves like returning response status1649 returns not_found1650 with lower case package name1651 behaves like returning response status1652 returns success1653 behaves like returning nuget metadata json response with json schema1654 returns a valid json response1655 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1656 behaves like rejects nuget packages access1657 for user type developer1658 has the correct response header1659 behaves like returning response status1660 returns unauthorized1661 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1662 behaves like rejects nuget packages access1663 for user type guest1664 has the correct response header1665 behaves like returning response status1666 returns unauthorized1667 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process nuget metadata request at package name level", expected_status: :success1668 behaves like process nuget metadata request at package name level1669 for user type anonymous1670 behaves like returning response status1671 returns success1672 behaves like returning nuget metadata json response with json schema1673 returns a valid json response1674 with invalid format1675 behaves like rejects nuget packages access1676 for user type anonymous1677 behaves like returning response status1678 returns not_found1679 with lower case package name1680 behaves like returning response status1681 returns success1682 behaves like returning nuget metadata json response with json schema1683 returns a valid json response1684 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget metadata request at package name level", expected_status: :success1685 behaves like process nuget metadata request at package name level1686 for user type developer1687 behaves like returning response status1688 returns success1689 behaves like returning nuget metadata json response with json schema1690 returns a valid json response1691 with invalid format1692 behaves like rejects nuget packages access1693 for user type anonymous1694 behaves like returning response status1695 returns not_found1696 with lower case package name1697 behaves like returning response status1698 returns success1699 behaves like returning nuget metadata json response with json schema1700 returns a valid json response1701 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden1702 behaves like rejects nuget packages access1703 for user type guest1704 behaves like returning response status1705 returns forbidden1706 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1707 behaves like rejects nuget packages access1708 for user type developer1709 has the correct response header1710 behaves like returning response status1711 returns unauthorized1712 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1713 behaves like rejects nuget packages access1714 for user type guest1715 has the correct response header1716 behaves like returning response status1717 returns unauthorized1718 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1719 behaves like rejects nuget packages access1720 for user type developer1721 behaves like returning response status1722 returns not_found1723 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1724 behaves like rejects nuget packages access1725 for user type guest1726 behaves like returning response status1727 returns not_found1728 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1729 behaves like rejects nuget packages access1730 for user type developer1731 has the correct response header1732 behaves like returning response status1733 returns unauthorized1734 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1735 behaves like rejects nuget packages access1736 for user type guest1737 has the correct response header1738 behaves like returning response status1739 returns unauthorized1740 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1741 behaves like rejects nuget packages access1742 for user type anonymous1743 has the correct response header1744 behaves like returning response status1745 returns unauthorized1746 behaves like deploy token for package GET requests1747 with deploy token headers1748 valid token1749 behaves like returning response status1750 returns success1751 invalid token1752 behaves like returning response status1753 returns unauthorized1754 behaves like rejects nuget access with unknown target id1755 with an unknown target1756 as anonymous1757 behaves like rejects nuget packages access1758 for user type anonymous1759 has the correct response header1760 behaves like returning response status1761 returns unauthorized1762 as authenticated user1763 behaves like rejects nuget packages access1764 for user type anonymous1765 behaves like returning response status1766 returns not_found1767 behaves like rejects nuget access with invalid target id1768 with a target id with invalid integers1769 id: "/../", status: :bad_request1770 behaves like rejects nuget packages access1771 for user type anonymous1772 behaves like returning response status1773 returns bad_request1774 id: "", status: :not_found1775 behaves like rejects nuget packages access1776 for user type anonymous1777 behaves like returning response status1778 returns not_found1779 id: "%20", status: :bad_request1780 behaves like rejects nuget packages access1781 for user type anonymous1782 behaves like returning response status1783 returns bad_request1784 id: "%2e%2e%2f", status: :bad_request1785 behaves like rejects nuget packages access1786 for user type anonymous1787 behaves like returning response status1788 returns bad_request1789 id: "NaN", status: :bad_request1790 behaves like rejects nuget packages access1791 for user type anonymous1792 behaves like returning response status1793 returns bad_request1794 id: 1253, status: :unauthorized1795 behaves like rejects nuget packages access1796 for user type anonymous1797 has the correct response header1798 behaves like returning response status1799 returns unauthorized1800 id: "anything25", status: :bad_request1801 behaves like rejects nuget packages access1802 for user type anonymous1803 behaves like returning response status1804 returns bad_request1805 GET /api/v4/projects/:id/packages/nuget/metadata/*package_name/*package_version1806 behaves like handling nuget metadata requests with package name and package version1807 with valid target1808 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget metadata request at package name and package version level", expected_status: :success1809 behaves like process nuget metadata request at package name and package version level1810 for user type developer1811 behaves like returning response status1812 returns success1813 behaves like returning nuget metadata json response with json schema1814 returns a valid json response1815 with invalid format1816 behaves like rejects nuget packages access1817 for user type anonymous1818 behaves like returning response status1819 returns not_found1820 with lower case package name1821 behaves like returning response status1822 returns success1823 behaves like returning nuget metadata json response with json schema1824 returns a valid json response1825 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process nuget metadata request at package name and package version level", expected_status: :success1826 behaves like process nuget metadata request at package name and package version level1827 for user type guest1828 behaves like returning response status1829 returns success1830 behaves like returning nuget metadata json response with json schema1831 returns a valid json response1832 with invalid format1833 behaves like rejects nuget packages access1834 for user type anonymous1835 behaves like returning response status1836 returns not_found1837 with lower case package name1838 behaves like returning response status1839 returns success1840 behaves like returning nuget metadata json response with json schema1841 returns a valid json response1842 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1843 behaves like rejects nuget packages access1844 for user type developer1845 has the correct response header1846 behaves like returning response status1847 returns unauthorized1848 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1849 behaves like rejects nuget packages access1850 for user type guest1851 has the correct response header1852 behaves like returning response status1853 returns unauthorized1854 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process nuget metadata request at package name and package version level", expected_status: :success1855 behaves like process nuget metadata request at package name and package version level1856 for user type developer1857 behaves like returning response status1858 returns success1859 behaves like returning nuget metadata json response with json schema1860 returns a valid json response1861 with invalid format1862 behaves like rejects nuget packages access1863 for user type anonymous1864 behaves like returning response status1865 returns not_found1866 with lower case package name1867 behaves like returning response status1868 returns success1869 behaves like returning nuget metadata json response with json schema1870 returns a valid json response1871 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process nuget metadata request at package name and package version level", expected_status: :success1872 behaves like process nuget metadata request at package name and package version level1873 for user type guest1874 behaves like returning response status1875 returns success1876 behaves like returning nuget metadata json response with json schema1877 returns a valid json response1878 with invalid format1879 behaves like rejects nuget packages access1880 for user type anonymous1881 behaves like returning response status1882 returns not_found1883 with lower case package name1884 behaves like returning response status1885 returns success1886 behaves like returning nuget metadata json response with json schema1887 returns a valid json response1888 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1889 behaves like rejects nuget packages access1890 for user type developer1891 has the correct response header1892 behaves like returning response status1893 returns unauthorized1894 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1895 behaves like rejects nuget packages access1896 for user type guest1897 has the correct response header1898 behaves like returning response status1899 returns unauthorized1900 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process nuget metadata request at package name and package version level", expected_status: :success1901 behaves like process nuget metadata request at package name and package version level1902 for user type anonymous1903 behaves like returning response status1904 returns success1905 behaves like returning nuget metadata json response with json schema1906 returns a valid json response1907 with invalid format1908 behaves like rejects nuget packages access1909 for user type anonymous1910 behaves like returning response status1911 returns not_found1912 with lower case package name1913 behaves like returning response status1914 returns success1915 behaves like returning nuget metadata json response with json schema1916 returns a valid json response1917 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget metadata request at package name and package version level", expected_status: :success1918 behaves like process nuget metadata request at package name and package version level1919 for user type developer1920 behaves like returning response status1921 returns success1922 behaves like returning nuget metadata json response with json schema1923 returns a valid json response1924 with invalid format1925 behaves like rejects nuget packages access1926 for user type anonymous1927 behaves like returning response status1928 returns not_found1929 with lower case package name1930 behaves like returning response status1931 returns success1932 behaves like returning nuget metadata json response with json schema1933 returns a valid json response1934 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden1935 behaves like rejects nuget packages access1936 for user type guest1937 behaves like returning response status1938 returns forbidden1939 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1940 behaves like rejects nuget packages access1941 for user type developer1942 has the correct response header1943 behaves like returning response status1944 returns unauthorized1945 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1946 behaves like rejects nuget packages access1947 for user type guest1948 has the correct response header1949 behaves like returning response status1950 returns unauthorized1951 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1952 behaves like rejects nuget packages access1953 for user type developer1954 behaves like returning response status1955 returns not_found1956 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found1957 behaves like rejects nuget packages access1958 for user type guest1959 behaves like returning response status1960 returns not_found1961 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1962 behaves like rejects nuget packages access1963 for user type developer1964 has the correct response header1965 behaves like returning response status1966 returns unauthorized1967 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1968 behaves like rejects nuget packages access1969 for user type guest1970 has the correct response header1971 behaves like returning response status1972 returns unauthorized1973 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized1974 behaves like rejects nuget packages access1975 for user type anonymous1976 has the correct response header1977 behaves like returning response status1978 returns unauthorized1979 behaves like deploy token for package GET requests1980 with deploy token headers1981 valid token1982 behaves like returning response status1983 returns success1984 invalid token1985 behaves like returning response status1986 returns unauthorized1987 behaves like rejects nuget access with unknown target id1988 with an unknown target1989 as anonymous1990 behaves like rejects nuget packages access1991 for user type anonymous1992 has the correct response header1993 behaves like returning response status1994 returns unauthorized1995 as authenticated user1996 behaves like rejects nuget packages access1997 for user type anonymous1998 behaves like returning response status1999 returns not_found2000 behaves like rejects nuget access with invalid target id2001 with a target id with invalid integers2002 id: "/../", status: :bad_request2003 behaves like rejects nuget packages access2004 for user type anonymous2005 behaves like returning response status2006 returns bad_request2007 id: "", status: :not_found2008 behaves like rejects nuget packages access2009 for user type anonymous2010 behaves like returning response status2011 returns not_found2012 id: "%20", status: :bad_request2013 behaves like rejects nuget packages access2014 for user type anonymous2015 behaves like returning response status2016 returns bad_request2017 id: "%2e%2e%2f", status: :bad_request2018 behaves like rejects nuget packages access2019 for user type anonymous2020 behaves like returning response status2021 returns bad_request2022 id: "NaN", status: :bad_request2023 behaves like rejects nuget packages access2024 for user type anonymous2025 behaves like returning response status2026 returns bad_request2027 id: 1253, status: :unauthorized2028 behaves like rejects nuget packages access2029 for user type anonymous2030 has the correct response header2031 behaves like returning response status2032 returns unauthorized2033 id: "anything25", status: :bad_request2034 behaves like rejects nuget packages access2035 for user type anonymous2036 behaves like returning response status2037 returns bad_request2038 GET /api/v4/projects/:id/packages/nuget/query2039 behaves like handling nuget search requests2040 with valid target2041 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget search request", expected_status: :success2042 behaves like process nuget search request2043 for user type developer2044 behaves like returns a valid json search response2045 returns a valid json response2046 behaves like returning response status2047 returns success2048 behaves like a package tracking event2049 creates a gitlab tracking event search_package2050 with skip set to 22051 behaves like returns a valid json search response2052 returns a valid json response2053 behaves like returning response status2054 returns success2055 with take set to 22056 behaves like returns a valid json search response2057 returns a valid json response2058 behaves like returning response status2059 returns success2060 without prereleases2061 behaves like returns a valid json search response2062 returns a valid json response2063 behaves like returning response status2064 returns success2065 with empty search term2066 behaves like returns a valid json search response2067 returns a valid json response2068 behaves like returning response status2069 returns success2070 with nil search term2071 behaves like returns a valid json search response2072 returns a valid json response2073 behaves like returning response status2074 returns success2075 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process nuget search request", expected_status: :success2076 behaves like process nuget search request2077 for user type guest2078 behaves like returns a valid json search response2079 returns a valid json response2080 behaves like returning response status2081 returns success2082 behaves like a package tracking event2083 creates a gitlab tracking event search_package2084 with skip set to 22085 behaves like returns a valid json search response2086 returns a valid json response2087 behaves like returning response status2088 returns success2089 with take set to 22090 behaves like returns a valid json search response2091 returns a valid json response2092 behaves like returning response status2093 returns success2094 without prereleases2095 behaves like returns a valid json search response2096 returns a valid json response2097 behaves like returning response status2098 returns success2099 with empty search term2100 behaves like returns a valid json search response2101 returns a valid json response2102 behaves like returning response status2103 returns success2104 with nil search term2105 behaves like returns a valid json search response2106 returns a valid json response2107 behaves like returning response status2108 returns success2109 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2110 behaves like rejects nuget packages access2111 for user type developer2112 has the correct response header2113 behaves like returning response status2114 returns unauthorized2115 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2116 behaves like rejects nuget packages access2117 for user type guest2118 has the correct response header2119 behaves like returning response status2120 returns unauthorized2121 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process nuget search request", expected_status: :success2122 behaves like process nuget search request2123 for user type developer2124 behaves like returns a valid json search response2125 returns a valid json response2126 behaves like returning response status2127 returns success2128 behaves like a package tracking event2129 creates a gitlab tracking event search_package2130 with skip set to 22131 behaves like returns a valid json search response2132 returns a valid json response2133 behaves like returning response status2134 returns success2135 with take set to 22136 behaves like returns a valid json search response2137 returns a valid json response2138 behaves like returning response status2139 returns success2140 without prereleases2141 behaves like returns a valid json search response2142 returns a valid json response2143 behaves like returning response status2144 returns success2145 with empty search term2146 behaves like returns a valid json search response2147 returns a valid json response2148 behaves like returning response status2149 returns success2150 with nil search term2151 behaves like returns a valid json search response2152 returns a valid json response2153 behaves like returning response status2154 returns success2155 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process nuget search request", expected_status: :success2156 behaves like process nuget search request2157 for user type guest2158 behaves like returns a valid json search response2159 returns a valid json response2160 behaves like returning response status2161 returns success2162 behaves like a package tracking event2163 creates a gitlab tracking event search_package2164 with skip set to 22165 behaves like returns a valid json search response2166 returns a valid json response2167 behaves like returning response status2168 returns success2169 with take set to 22170 behaves like returns a valid json search response2171 returns a valid json response2172 behaves like returning response status2173 returns success2174 without prereleases2175 behaves like returns a valid json search response2176 returns a valid json response2177 behaves like returning response status2178 returns success2179 with empty search term2180 behaves like returns a valid json search response2181 returns a valid json response2182 behaves like returning response status2183 returns success2184 with nil search term2185 behaves like returns a valid json search response2186 returns a valid json response2187 behaves like returning response status2188 returns success2189 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2190 behaves like rejects nuget packages access2191 for user type developer2192 has the correct response header2193 behaves like returning response status2194 returns unauthorized2195 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2196 behaves like rejects nuget packages access2197 for user type guest2198 has the correct response header2199 behaves like returning response status2200 returns unauthorized2201 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process nuget search request", expected_status: :success2202 behaves like process nuget search request2203 for user type anonymous2204 behaves like returns a valid json search response2205 returns a valid json response2206 behaves like returning response status2207 returns success2208 behaves like a package tracking event2209 creates a gitlab tracking event search_package2210 with skip set to 22211 behaves like returns a valid json search response2212 returns a valid json response2213 behaves like returning response status2214 returns success2215 with take set to 22216 behaves like returns a valid json search response2217 returns a valid json response2218 behaves like returning response status2219 returns success2220 without prereleases2221 behaves like returns a valid json search response2222 returns a valid json response2223 behaves like returning response status2224 returns success2225 with empty search term2226 behaves like returns a valid json search response2227 returns a valid json response2228 behaves like returning response status2229 returns success2230 with nil search term2231 behaves like returns a valid json search response2232 returns a valid json response2233 behaves like returning response status2234 returns success2235 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget search request", expected_status: :success2236 behaves like process nuget search request2237 for user type developer2238 behaves like returns a valid json search response2239 returns a valid json response2240 behaves like returning response status2241 returns success2242 behaves like a package tracking event2243 creates a gitlab tracking event search_package2244 with skip set to 22245 behaves like returns a valid json search response2246 returns a valid json response2247 behaves like returning response status2248 returns success2249 with take set to 22250 behaves like returns a valid json search response2251 returns a valid json response2252 behaves like returning response status2253 returns success2254 without prereleases2255 behaves like returns a valid json search response2256 returns a valid json response2257 behaves like returning response status2258 returns success2259 with empty search term2260 behaves like returns a valid json search response2261 returns a valid json response2262 behaves like returning response status2263 returns success2264 with nil search term2265 behaves like returns a valid json search response2266 returns a valid json response2267 behaves like returning response status2268 returns success2269 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden2270 behaves like rejects nuget packages access2271 for user type guest2272 behaves like returning response status2273 returns forbidden2274 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2275 behaves like rejects nuget packages access2276 for user type developer2277 has the correct response header2278 behaves like returning response status2279 returns unauthorized2280 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2281 behaves like rejects nuget packages access2282 for user type guest2283 has the correct response header2284 behaves like returning response status2285 returns unauthorized2286 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2287 behaves like rejects nuget packages access2288 for user type developer2289 behaves like returning response status2290 returns not_found2291 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2292 behaves like rejects nuget packages access2293 for user type guest2294 behaves like returning response status2295 returns not_found2296 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2297 behaves like rejects nuget packages access2298 for user type developer2299 has the correct response header2300 behaves like returning response status2301 returns unauthorized2302 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2303 behaves like rejects nuget packages access2304 for user type guest2305 has the correct response header2306 behaves like returning response status2307 returns unauthorized2308 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2309 behaves like rejects nuget packages access2310 for user type anonymous2311 has the correct response header2312 behaves like returning response status2313 returns unauthorized2314 behaves like deploy token for package GET requests2315 with deploy token headers2316 valid token2317 behaves like returning response status2318 returns success2319 invalid token2320 behaves like returning response status2321 returns unauthorized2322 behaves like rejects nuget access with unknown target id2323 with an unknown target2324 as anonymous2325 behaves like rejects nuget packages access2326 for user type anonymous2327 has the correct response header2328 behaves like returning response status2329 returns unauthorized2330 as authenticated user2331 behaves like rejects nuget packages access2332 for user type anonymous2333 behaves like returning response status2334 returns not_found2335 behaves like rejects nuget access with invalid target id2336 with a target id with invalid integers2337 id: "/../", status: :bad_request2338 behaves like rejects nuget packages access2339 for user type anonymous2340 behaves like returning response status2341 returns bad_request2342 id: "", status: :not_found2343 behaves like rejects nuget packages access2344 for user type anonymous2345 behaves like returning response status2346 returns not_found2347 id: "%20", status: :bad_request2348 behaves like rejects nuget packages access2349 for user type anonymous2350 behaves like returning response status2351 returns bad_request2352 id: "%2e%2e%2f", status: :bad_request2353 behaves like rejects nuget packages access2354 for user type anonymous2355 behaves like returning response status2356 returns bad_request2357 id: "NaN", status: :bad_request2358 behaves like rejects nuget packages access2359 for user type anonymous2360 behaves like returning response status2361 returns bad_request2362 id: 1253, status: :unauthorized2363 behaves like rejects nuget packages access2364 for user type anonymous2365 has the correct response header2366 behaves like returning response status2367 returns unauthorized2368 id: "anything25", status: :bad_request2369 behaves like rejects nuget packages access2370 for user type anonymous2371 behaves like returning response status2372 returns bad_request2373 GET /api/v4/projects/:id/packages/nuget/download/*package_name/index2374 with valid target2375 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget download versions request", expected_status: :success2376 behaves like process nuget download versions request2377 for user type developer2378 behaves like returning response status2379 returns success2380 behaves like returns a valid nuget download versions json response2381 returns a valid json response2382 with invalid format2383 behaves like rejects nuget packages access2384 for user type anonymous2385 behaves like returning response status2386 returns not_found2387 with lower case package name2388 behaves like returning response status2389 returns success2390 behaves like returns a valid nuget download versions json response2391 returns a valid json response2392 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process nuget download versions request", expected_status: :success2393 behaves like process nuget download versions request2394 for user type guest2395 behaves like returning response status2396 returns success2397 behaves like returns a valid nuget download versions json response2398 returns a valid json response2399 with invalid format2400 behaves like rejects nuget packages access2401 for user type anonymous2402 behaves like returning response status2403 returns not_found2404 with lower case package name2405 behaves like returning response status2406 returns success2407 behaves like returns a valid nuget download versions json response2408 returns a valid json response2409 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2410 behaves like rejects nuget packages access2411 for user type developer2412 has the correct response header2413 behaves like returning response status2414 returns unauthorized2415 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2416 behaves like rejects nuget packages access2417 for user type guest2418 has the correct response header2419 behaves like returning response status2420 returns unauthorized2421 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process nuget download versions request", expected_status: :success2422 behaves like process nuget download versions request2423 for user type developer2424 behaves like returning response status2425 returns success2426 behaves like returns a valid nuget download versions json response2427 returns a valid json response2428 with invalid format2429 behaves like rejects nuget packages access2430 for user type anonymous2431 behaves like returning response status2432 returns not_found2433 with lower case package name2434 behaves like returning response status2435 returns success2436 behaves like returns a valid nuget download versions json response2437 returns a valid json response2438 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process nuget download versions request", expected_status: :success2439 behaves like process nuget download versions request2440 for user type guest2441 behaves like returning response status2442 returns success2443 behaves like returns a valid nuget download versions json response2444 returns a valid json response2445 with invalid format2446 behaves like rejects nuget packages access2447 for user type anonymous2448 behaves like returning response status2449 returns not_found2450 with lower case package name2451 behaves like returning response status2452 returns success2453 behaves like returns a valid nuget download versions json response2454 returns a valid json response2455 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2456 behaves like rejects nuget packages access2457 for user type developer2458 has the correct response header2459 behaves like returning response status2460 returns unauthorized2461 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2462 behaves like rejects nuget packages access2463 for user type guest2464 has the correct response header2465 behaves like returning response status2466 returns unauthorized2467 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process nuget download versions request", expected_status: :success2468 behaves like process nuget download versions request2469 for user type anonymous2470 behaves like returning response status2471 returns success2472 behaves like returns a valid nuget download versions json response2473 returns a valid json response2474 with invalid format2475 behaves like rejects nuget packages access2476 for user type anonymous2477 behaves like returning response status2478 returns not_found2479 with lower case package name2480 behaves like returning response status2481 returns success2482 behaves like returns a valid nuget download versions json response2483 returns a valid json response2484 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget download versions request", expected_status: :success2485 behaves like process nuget download versions request2486 for user type developer2487 behaves like returning response status2488 returns success2489 behaves like returns a valid nuget download versions json response2490 returns a valid json response2491 with invalid format2492 behaves like rejects nuget packages access2493 for user type anonymous2494 behaves like returning response status2495 returns not_found2496 with lower case package name2497 behaves like returning response status2498 returns success2499 behaves like returns a valid nuget download versions json response2500 returns a valid json response2501 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden2502 behaves like rejects nuget packages access2503 for user type guest2504 behaves like returning response status2505 returns forbidden2506 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2507 behaves like rejects nuget packages access2508 for user type developer2509 has the correct response header2510 behaves like returning response status2511 returns unauthorized2512 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2513 behaves like rejects nuget packages access2514 for user type guest2515 has the correct response header2516 behaves like returning response status2517 returns unauthorized2518 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2519 behaves like rejects nuget packages access2520 for user type developer2521 behaves like returning response status2522 returns not_found2523 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2524 behaves like rejects nuget packages access2525 for user type guest2526 behaves like returning response status2527 returns not_found2528 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2529 behaves like rejects nuget packages access2530 for user type developer2531 has the correct response header2532 behaves like returning response status2533 returns unauthorized2534 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2535 behaves like rejects nuget packages access2536 for user type guest2537 has the correct response header2538 behaves like returning response status2539 returns unauthorized2540 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2541 behaves like rejects nuget packages access2542 for user type anonymous2543 has the correct response header2544 behaves like returning response status2545 returns unauthorized2546 behaves like deploy token for package GET requests2547 with deploy token headers2548 valid token2549 behaves like returning response status2550 returns success2551 invalid token2552 behaves like returning response status2553 returns unauthorized2554 behaves like rejects nuget access with unknown target id2555 with an unknown target2556 as anonymous2557 behaves like rejects nuget packages access2558 for user type anonymous2559 has the correct response header2560 behaves like returning response status2561 returns unauthorized2562 as authenticated user2563 behaves like rejects nuget packages access2564 for user type anonymous2565 behaves like returning response status2566 returns not_found2567 behaves like rejects nuget access with invalid target id2568 with a target id with invalid integers2569 id: "/../", status: :bad_request2570 behaves like rejects nuget packages access2571 for user type anonymous2572 behaves like returning response status2573 returns bad_request2574 id: "", status: :not_found2575 behaves like rejects nuget packages access2576 for user type anonymous2577 behaves like returning response status2578 returns not_found2579 id: "%20", status: :bad_request2580 behaves like rejects nuget packages access2581 for user type anonymous2582 behaves like returning response status2583 returns bad_request2584 id: "%2e%2e%2f", status: :bad_request2585 behaves like rejects nuget packages access2586 for user type anonymous2587 behaves like returning response status2588 returns bad_request2589 id: "NaN", status: :bad_request2590 behaves like rejects nuget packages access2591 for user type anonymous2592 behaves like returning response status2593 returns bad_request2594 id: 1253, status: :unauthorized2595 behaves like rejects nuget packages access2596 for user type anonymous2597 has the correct response header2598 behaves like returning response status2599 returns unauthorized2600 id: "anything25", status: :bad_request2601 behaves like rejects nuget packages access2602 for user type anonymous2603 behaves like returning response status2604 returns bad_request2605 GET /api/v4/projects/:id/packages/nuget/download/*package_name/*package_version/*package_filename2606 with valid target2607 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget download content request", expected_status: :success2608 behaves like process nuget download content request2609 for user type developer2610 returns a valid package archive2611 behaves like returning response status2612 returns success2613 behaves like a package tracking event2614 creates a gitlab tracking event pull_package2615 with invalid format2616 behaves like rejects nuget packages access2617 for user type anonymous2618 behaves like returning response status2619 returns not_found2620 with symbol package2621 returns a valid package archive2622 behaves like a package tracking event2623 creates a gitlab tracking event pull_symbol_package2624 with lower case package name2625 returns a valid package archive2626 behaves like returning response status2627 returns success2628 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "process nuget download content request", expected_status: :success2629 behaves like process nuget download content request2630 for user type guest2631 returns a valid package archive2632 behaves like returning response status2633 returns success2634 behaves like a package tracking event2635 creates a gitlab tracking event pull_package2636 with invalid format2637 behaves like rejects nuget packages access2638 for user type anonymous2639 behaves like returning response status2640 returns not_found2641 with symbol package2642 returns a valid package archive2643 behaves like a package tracking event2644 creates a gitlab tracking event pull_symbol_package2645 with lower case package name2646 returns a valid package archive2647 behaves like returning response status2648 returns success2649 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2650 behaves like rejects nuget packages access2651 for user type developer2652 has the correct response header2653 behaves like returning response status2654 returns unauthorized2655 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2656 behaves like rejects nuget packages access2657 for user type guest2658 has the correct response header2659 behaves like returning response status2660 returns unauthorized2661 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "process nuget download content request", expected_status: :success2662 behaves like process nuget download content request2663 for user type developer2664 returns a valid package archive2665 behaves like returning response status2666 returns success2667 behaves like a package tracking event2668 creates a gitlab tracking event pull_package2669 with invalid format2670 behaves like rejects nuget packages access2671 for user type anonymous2672 behaves like returning response status2673 returns not_found2674 with symbol package2675 returns a valid package archive2676 behaves like a package tracking event2677 creates a gitlab tracking event pull_symbol_package2678 with lower case package name2679 returns a valid package archive2680 behaves like returning response status2681 returns success2682 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "process nuget download content request", expected_status: :success2683 behaves like process nuget download content request2684 for user type guest2685 returns a valid package archive2686 behaves like returning response status2687 returns success2688 behaves like a package tracking event2689 creates a gitlab tracking event pull_package2690 with invalid format2691 behaves like rejects nuget packages access2692 for user type anonymous2693 behaves like returning response status2694 returns not_found2695 with symbol package2696 returns a valid package archive2697 behaves like a package tracking event2698 creates a gitlab tracking event pull_symbol_package2699 with lower case package name2700 returns a valid package archive2701 behaves like returning response status2702 returns success2703 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2704 behaves like rejects nuget packages access2705 for user type developer2706 has the correct response header2707 behaves like returning response status2708 returns unauthorized2709 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2710 behaves like rejects nuget packages access2711 for user type guest2712 has the correct response header2713 behaves like returning response status2714 returns unauthorized2715 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "process nuget download content request", expected_status: :success2716 behaves like process nuget download content request2717 for user type anonymous2718 returns a valid package archive2719 behaves like returning response status2720 returns success2721 behaves like a package tracking event2722 creates a gitlab tracking event pull_package2723 with invalid format2724 behaves like rejects nuget packages access2725 for user type anonymous2726 behaves like returning response status2727 returns not_found2728 with symbol package2729 returns a valid package archive2730 behaves like a package tracking event2731 creates a gitlab tracking event pull_symbol_package2732 with lower case package name2733 returns a valid package archive2734 behaves like returning response status2735 returns success2736 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget download content request", expected_status: :success2737 behaves like process nuget download content request2738 for user type developer2739 returns a valid package archive2740 behaves like returning response status2741 returns success2742 behaves like a package tracking event2743 creates a gitlab tracking event pull_package2744 with invalid format2745 behaves like rejects nuget packages access2746 for user type anonymous2747 behaves like returning response status2748 returns not_found2749 with symbol package2750 returns a valid package archive2751 behaves like a package tracking event2752 creates a gitlab tracking event pull_symbol_package2753 with lower case package name2754 returns a valid package archive2755 behaves like returning response status2756 returns success2757 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden2758 behaves like rejects nuget packages access2759 for user type guest2760 behaves like returning response status2761 returns forbidden2762 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2763 behaves like rejects nuget packages access2764 for user type developer2765 has the correct response header2766 behaves like returning response status2767 returns unauthorized2768 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2769 behaves like rejects nuget packages access2770 for user type guest2771 has the correct response header2772 behaves like returning response status2773 returns unauthorized2774 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2775 behaves like rejects nuget packages access2776 for user type developer2777 behaves like returning response status2778 returns not_found2779 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2780 behaves like rejects nuget packages access2781 for user type guest2782 behaves like returning response status2783 returns not_found2784 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2785 behaves like rejects nuget packages access2786 for user type developer2787 has the correct response header2788 behaves like returning response status2789 returns unauthorized2790 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2791 behaves like rejects nuget packages access2792 for user type guest2793 has the correct response header2794 behaves like returning response status2795 returns unauthorized2796 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2797 behaves like rejects nuget packages access2798 for user type anonymous2799 has the correct response header2800 behaves like returning response status2801 returns unauthorized2802 behaves like deploy token for package GET requests2803 with deploy token headers2804 valid token2805 behaves like returning response status2806 returns success2807 invalid token2808 behaves like returning response status2809 returns unauthorized2810 behaves like rejects nuget access with unknown target id2811 with an unknown target2812 as anonymous2813 behaves like rejects nuget packages access2814 for user type anonymous2815 has the correct response header2816 behaves like returning response status2817 returns unauthorized2818 as authenticated user2819 behaves like rejects nuget packages access2820 for user type anonymous2821 behaves like returning response status2822 returns not_found2823 behaves like rejects nuget access with invalid target id2824 with a target id with invalid integers2825 id: "/../", status: :bad_request2826 behaves like rejects nuget packages access2827 for user type anonymous2828 behaves like returning response status2829 returns bad_request2830 id: "", status: :not_found2831 behaves like rejects nuget packages access2832 for user type anonymous2833 behaves like returning response status2834 returns not_found2835 id: "%20", status: :bad_request2836 behaves like rejects nuget packages access2837 for user type anonymous2838 behaves like returning response status2839 returns bad_request2840 id: "%2e%2e%2f", status: :bad_request2841 behaves like rejects nuget packages access2842 for user type anonymous2843 behaves like returning response status2844 returns bad_request2845 id: "NaN", status: :bad_request2846 behaves like rejects nuget packages access2847 for user type anonymous2848 behaves like returning response status2849 returns bad_request2850 id: 1253, status: :unauthorized2851 behaves like rejects nuget packages access2852 for user type anonymous2853 has the correct response header2854 behaves like returning response status2855 returns unauthorized2856 id: "anything25", status: :bad_request2857 behaves like rejects nuget packages access2858 for user type anonymous2859 behaves like returning response status2860 returns bad_request2861 PUT /api/v4/projects/:id/packages/nuget/authorize2862 behaves like nuget authorize upload endpoint2863 with valid project2864 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget workhorse authorization", expected_status: :success2865 behaves like process nuget workhorse authorization2866 for user type developer2867 has the proper content type2868 behaves like returning response status2869 returns success2870 with a request that bypassed gitlab-workhorse2871 behaves like returning response status2872 returns forbidden2873 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden2874 behaves like rejects nuget packages access2875 for user type guest2876 behaves like returning response status2877 returns forbidden2878 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2879 behaves like rejects nuget packages access2880 for user type developer2881 has the correct response header2882 behaves like returning response status2883 returns unauthorized2884 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2885 behaves like rejects nuget packages access2886 for user type guest2887 has the correct response header2888 behaves like returning response status2889 returns unauthorized2890 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden2891 behaves like rejects nuget packages access2892 for user type developer2893 behaves like returning response status2894 returns forbidden2895 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden2896 behaves like rejects nuget packages access2897 for user type guest2898 behaves like returning response status2899 returns forbidden2900 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2901 behaves like rejects nuget packages access2902 for user type developer2903 has the correct response header2904 behaves like returning response status2905 returns unauthorized2906 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2907 behaves like rejects nuget packages access2908 for user type guest2909 has the correct response header2910 behaves like returning response status2911 returns unauthorized2912 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2913 behaves like rejects nuget packages access2914 for user type anonymous2915 has the correct response header2916 behaves like returning response status2917 returns unauthorized2918 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget workhorse authorization", expected_status: :success2919 behaves like process nuget workhorse authorization2920 for user type developer2921 has the proper content type2922 behaves like returning response status2923 returns success2924 with a request that bypassed gitlab-workhorse2925 behaves like returning response status2926 returns forbidden2927 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden2928 behaves like rejects nuget packages access2929 for user type guest2930 behaves like returning response status2931 returns forbidden2932 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2933 behaves like rejects nuget packages access2934 for user type developer2935 has the correct response header2936 behaves like returning response status2937 returns unauthorized2938 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2939 behaves like rejects nuget packages access2940 for user type guest2941 has the correct response header2942 behaves like returning response status2943 returns unauthorized2944 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2945 behaves like rejects nuget packages access2946 for user type developer2947 behaves like returning response status2948 returns not_found2949 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found2950 behaves like rejects nuget packages access2951 for user type guest2952 behaves like returning response status2953 returns not_found2954 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2955 behaves like rejects nuget packages access2956 for user type developer2957 has the correct response header2958 behaves like returning response status2959 returns unauthorized2960 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2961 behaves like rejects nuget packages access2962 for user type guest2963 has the correct response header2964 behaves like returning response status2965 returns unauthorized2966 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized2967 behaves like rejects nuget packages access2968 for user type anonymous2969 has the correct response header2970 behaves like returning response status2971 returns unauthorized2972 behaves like deploy token for package uploads2973 with deploy token headers2974 valid token2975 behaves like returning response status2976 returns success2977 invalid token2978 behaves like returning response status2979 returns unauthorized2980 behaves like job token for package uploads2981 with job token headers2982 valid token2983 behaves like returning response status2984 returns success2985 invalid token2986 behaves like returning response status2987 returns unauthorized2988 invalid user2989 behaves like returning response status2990 returns unauthorized2991 behaves like rejects nuget access with unknown target id2992 with an unknown target2993 as anonymous2994 behaves like rejects nuget packages access2995 for user type anonymous2996 has the correct response header2997 behaves like returning response status2998 returns unauthorized2999 as authenticated user3000 behaves like rejects nuget packages access3001 for user type anonymous3002 behaves like returning response status3003 returns not_found3004 behaves like rejects nuget access with invalid target id3005 with a target id with invalid integers3006 id: "/../", status: :bad_request3007 behaves like rejects nuget packages access3008 for user type anonymous3009 behaves like returning response status3010 returns bad_request3011 id: "", status: :not_found3012 behaves like rejects nuget packages access3013 for user type anonymous3014 behaves like returning response status3015 returns not_found3016 id: "%20", status: :bad_request3017 behaves like rejects nuget packages access3018 for user type anonymous3019 behaves like returning response status3020 returns bad_request3021 id: "%2e%2e%2f", status: :bad_request3022 behaves like rejects nuget packages access3023 for user type anonymous3024 behaves like returning response status3025 returns bad_request3026 id: "NaN", status: :bad_request3027 behaves like rejects nuget packages access3028 for user type anonymous3029 behaves like returning response status3030 returns bad_request3031 id: 1253, status: :unauthorized3032 behaves like rejects nuget packages access3033 for user type anonymous3034 has the correct response header3035 behaves like returning response status3036 returns unauthorized3037 id: "anything25", status: :bad_request3038 behaves like rejects nuget packages access3039 for user type anonymous3040 behaves like returning response status3041 returns bad_request3042 PUT /api/v4/projects/:id/packages/nuget3043 behaves like nuget upload endpoint3044 with valid project3045 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget upload", expected_status: :created3046 behaves like process nuget upload3047 for user type developer3048 with object storage disabled3049 without a file from workhorse3050 behaves like returning response status3051 returns bad_request3052 with correct params3053 behaves like package workhorse uploads3054 without a workhorse header3055 logs an error3056 behaves like returning response status3057 returns forbidden3058 behaves like creates nuget package files3059 creates package files3060 behaves like a package tracking event3061 creates a gitlab tracking event push_package3062 with object storage enabled3063 and direct upload enabled3064 behaves like creates nuget package files3065 creates package files3066 with invalid remote_id: 1231233067 behaves like returning response status3068 returns forbidden3069 with invalid remote_id: ../../1231233070 behaves like returning response status3071 returns forbidden3072 with crafted package.path param3073 does not create a package file3074 behaves like returning response status3075 returns bad_request3076 and direct upload disabled3077 and background upload disabled3078 behaves like creates nuget package files3079 creates package files3080 and background upload enabled3081 behaves like creates nuget package files3082 creates package files3083 behaves like background upload schedules a file migration3084 background upload enabled3085 schedules migration of file to object storage3086 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3087 behaves like rejects nuget packages access3088 for user type guest3089 behaves like returning response status3090 returns forbidden3091 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3092 behaves like rejects nuget packages access3093 for user type developer3094 has the correct response header3095 behaves like returning response status3096 returns unauthorized3097 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3098 behaves like rejects nuget packages access3099 for user type guest3100 has the correct response header3101 behaves like returning response status3102 returns unauthorized3103 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3104 behaves like rejects nuget packages access3105 for user type developer3106 behaves like returning response status3107 returns forbidden3108 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3109 behaves like rejects nuget packages access3110 for user type guest3111 behaves like returning response status3112 returns forbidden3113 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3114 behaves like rejects nuget packages access3115 for user type developer3116 has the correct response header3117 behaves like returning response status3118 returns unauthorized3119 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3120 behaves like rejects nuget packages access3121 for user type guest3122 has the correct response header3123 behaves like returning response status3124 returns unauthorized3125 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3126 behaves like rejects nuget packages access3127 for user type anonymous3128 has the correct response header3129 behaves like returning response status3130 returns unauthorized3131 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget upload", expected_status: :created3132 behaves like process nuget upload3133 for user type developer3134 with object storage disabled3135 without a file from workhorse3136 behaves like returning response status3137 returns bad_request3138 with correct params3139 behaves like package workhorse uploads3140 without a workhorse header3141 logs an error3142 behaves like returning response status3143 returns forbidden3144 behaves like creates nuget package files3145 creates package files3146 behaves like a package tracking event3147 creates a gitlab tracking event push_package3148 with object storage enabled3149 and direct upload enabled3150 behaves like creates nuget package files3151 creates package files3152 with invalid remote_id: 1231233153 behaves like returning response status3154 returns forbidden3155 with invalid remote_id: ../../1231233156 behaves like returning response status3157 returns forbidden3158 with crafted package.path param3159 does not create a package file3160 behaves like returning response status3161 returns bad_request3162 and direct upload disabled3163 and background upload disabled3164 behaves like creates nuget package files3165 creates package files3166 and background upload enabled3167 behaves like creates nuget package files3168 creates package files3169 behaves like background upload schedules a file migration3170 background upload enabled3171 schedules migration of file to object storage3172 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3173 behaves like rejects nuget packages access3174 for user type guest3175 behaves like returning response status3176 returns forbidden3177 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3178 behaves like rejects nuget packages access3179 for user type developer3180 has the correct response header3181 behaves like returning response status3182 returns unauthorized3183 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3184 behaves like rejects nuget packages access3185 for user type guest3186 has the correct response header3187 behaves like returning response status3188 returns unauthorized3189 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found3190 behaves like rejects nuget packages access3191 for user type developer3192 behaves like returning response status3193 returns not_found3194 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found3195 behaves like rejects nuget packages access3196 for user type guest3197 behaves like returning response status3198 returns not_found3199 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3200 behaves like rejects nuget packages access3201 for user type developer3202 has the correct response header3203 behaves like returning response status3204 returns unauthorized3205 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3206 behaves like rejects nuget packages access3207 for user type guest3208 has the correct response header3209 behaves like returning response status3210 returns unauthorized3211 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3212 behaves like rejects nuget packages access3213 for user type anonymous3214 has the correct response header3215 behaves like returning response status3216 returns unauthorized3217 behaves like deploy token for package uploads3218 with deploy token headers3219 valid token3220 behaves like returning response status3221 returns success3222 invalid token3223 behaves like returning response status3224 returns unauthorized3225 behaves like job token for package uploads3226 with job token headers3227 valid token3228 creates a package with build info3229 behaves like returning response status3230 returns success3231 invalid token3232 behaves like returning response status3233 returns unauthorized3234 invalid user3235 behaves like returning response status3236 returns unauthorized3237 behaves like rejects nuget access with unknown target id3238 with an unknown target3239 as anonymous3240 behaves like rejects nuget packages access3241 for user type anonymous3242 has the correct response header3243 behaves like returning response status3244 returns unauthorized3245 as authenticated user3246 behaves like rejects nuget packages access3247 for user type anonymous3248 behaves like returning response status3249 returns not_found3250 behaves like rejects nuget access with invalid target id3251 with a target id with invalid integers3252 id: "/../", status: :bad_request3253 behaves like rejects nuget packages access3254 for user type anonymous3255 behaves like returning response status3256 returns bad_request3257 id: "", status: :not_found3258 behaves like rejects nuget packages access3259 for user type anonymous3260 behaves like returning response status3261 returns not_found3262 id: "%20", status: :bad_request3263 behaves like rejects nuget packages access3264 for user type anonymous3265 behaves like returning response status3266 returns bad_request3267 id: "%2e%2e%2f", status: :bad_request3268 behaves like rejects nuget packages access3269 for user type anonymous3270 behaves like returning response status3271 returns bad_request3272 id: "NaN", status: :bad_request3273 behaves like rejects nuget packages access3274 for user type anonymous3275 behaves like returning response status3276 returns bad_request3277 id: 1253, status: :unauthorized3278 behaves like rejects nuget packages access3279 for user type anonymous3280 has the correct response header3281 behaves like returning response status3282 returns unauthorized3283 id: "anything25", status: :bad_request3284 behaves like rejects nuget packages access3285 for user type anonymous3286 behaves like returning response status3287 returns bad_request3288 file size above maximum limit3289 behaves like returning response status3290 returns bad_request3291 PUT /api/v4/projects/:id/packages/nuget/symbolpackage/authorize3292 behaves like nuget authorize upload endpoint3293 with valid project3294 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget workhorse authorization", expected_status: :success3295 behaves like process nuget workhorse authorization3296 for user type developer3297 has the proper content type3298 behaves like returning response status3299 returns success3300 with a request that bypassed gitlab-workhorse3301 behaves like returning response status3302 returns forbidden3303 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3304 behaves like rejects nuget packages access3305 for user type guest3306 behaves like returning response status3307 returns forbidden3308 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3309 behaves like rejects nuget packages access3310 for user type developer3311 has the correct response header3312 behaves like returning response status3313 returns unauthorized3314 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3315 behaves like rejects nuget packages access3316 for user type guest3317 has the correct response header3318 behaves like returning response status3319 returns unauthorized3320 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3321 behaves like rejects nuget packages access3322 for user type developer3323 behaves like returning response status3324 returns forbidden3325 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3326 behaves like rejects nuget packages access3327 for user type guest3328 behaves like returning response status3329 returns forbidden3330 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3331 behaves like rejects nuget packages access3332 for user type developer3333 has the correct response header3334 behaves like returning response status3335 returns unauthorized3336 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3337 behaves like rejects nuget packages access3338 for user type guest3339 has the correct response header3340 behaves like returning response status3341 returns unauthorized3342 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3343 behaves like rejects nuget packages access3344 for user type anonymous3345 has the correct response header3346 behaves like returning response status3347 returns unauthorized3348 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget workhorse authorization", expected_status: :success3349 behaves like process nuget workhorse authorization3350 for user type developer3351 has the proper content type3352 behaves like returning response status3353 returns success3354 with a request that bypassed gitlab-workhorse3355 behaves like returning response status3356 returns forbidden3357 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3358 behaves like rejects nuget packages access3359 for user type guest3360 behaves like returning response status3361 returns forbidden3362 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3363 behaves like rejects nuget packages access3364 for user type developer3365 has the correct response header3366 behaves like returning response status3367 returns unauthorized3368 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3369 behaves like rejects nuget packages access3370 for user type guest3371 has the correct response header3372 behaves like returning response status3373 returns unauthorized3374 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found3375 behaves like rejects nuget packages access3376 for user type developer3377 behaves like returning response status3378 returns not_found3379 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found3380 behaves like rejects nuget packages access3381 for user type guest3382 behaves like returning response status3383 returns not_found3384 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3385 behaves like rejects nuget packages access3386 for user type developer3387 has the correct response header3388 behaves like returning response status3389 returns unauthorized3390 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3391 behaves like rejects nuget packages access3392 for user type guest3393 has the correct response header3394 behaves like returning response status3395 returns unauthorized3396 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3397 behaves like rejects nuget packages access3398 for user type anonymous3399 has the correct response header3400 behaves like returning response status3401 returns unauthorized3402 behaves like deploy token for package uploads3403 with deploy token headers3404 valid token3405 behaves like returning response status3406 returns success3407 invalid token3408 behaves like returning response status3409 returns unauthorized3410 behaves like job token for package uploads3411 with job token headers3412 valid token3413 behaves like returning response status3414 returns success3415 invalid token3416 behaves like returning response status3417 returns unauthorized3418 invalid user3419 behaves like returning response status3420 returns unauthorized3421 behaves like rejects nuget access with unknown target id3422 with an unknown target3423 as anonymous3424 behaves like rejects nuget packages access3425 for user type anonymous3426 has the correct response header3427 behaves like returning response status3428 returns unauthorized3429 as authenticated user3430 behaves like rejects nuget packages access3431 for user type anonymous3432 behaves like returning response status3433 returns not_found3434 behaves like rejects nuget access with invalid target id3435 with a target id with invalid integers3436 id: "/../", status: :bad_request3437 behaves like rejects nuget packages access3438 for user type anonymous3439 behaves like returning response status3440 returns bad_request3441 id: "", status: :not_found3442 behaves like rejects nuget packages access3443 for user type anonymous3444 behaves like returning response status3445 returns not_found3446 id: "%20", status: :bad_request3447 behaves like rejects nuget packages access3448 for user type anonymous3449 behaves like returning response status3450 returns bad_request3451 id: "%2e%2e%2f", status: :bad_request3452 behaves like rejects nuget packages access3453 for user type anonymous3454 behaves like returning response status3455 returns bad_request3456 id: "NaN", status: :bad_request3457 behaves like rejects nuget packages access3458 for user type anonymous3459 behaves like returning response status3460 returns bad_request3461 id: 1253, status: :unauthorized3462 behaves like rejects nuget packages access3463 for user type anonymous3464 has the correct response header3465 behaves like returning response status3466 returns unauthorized3467 id: "anything25", status: :bad_request3468 behaves like rejects nuget packages access3469 for user type anonymous3470 behaves like returning response status3471 returns bad_request3472 PUT /api/v4/projects/:id/packages/nuget/symbolpackage3473 behaves like nuget upload endpoint3474 with valid project3475 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget upload", expected_status: :created3476 behaves like process nuget upload3477 for user type developer3478 with object storage disabled3479 without a file from workhorse3480 behaves like returning response status3481 returns bad_request3482 with correct params3483 behaves like package workhorse uploads3484 without a workhorse header3485 logs an error3486 behaves like returning response status3487 returns forbidden3488 behaves like creates nuget package files3489 creates package files3490 behaves like a package tracking event3491 creates a gitlab tracking event push_symbol_package3492 with object storage enabled3493 and direct upload enabled3494 behaves like creates nuget package files3495 creates package files3496 with invalid remote_id: 1231233497 behaves like returning response status3498 returns forbidden3499 with invalid remote_id: ../../1231233500 behaves like returning response status3501 returns forbidden3502 with crafted package.path param3503 does not create a package file3504 behaves like returning response status3505 returns bad_request3506 and direct upload disabled3507 and background upload disabled3508 behaves like creates nuget package files3509 creates package files3510 and background upload enabled3511 behaves like creates nuget package files3512 creates package files3513 behaves like background upload schedules a file migration3514 background upload enabled3515 schedules migration of file to object storage3516 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3517 behaves like rejects nuget packages access3518 for user type guest3519 behaves like returning response status3520 returns forbidden3521 visibility_level: "PUBLIC", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3522 behaves like rejects nuget packages access3523 for user type developer3524 has the correct response header3525 behaves like returning response status3526 returns unauthorized3527 visibility_level: "PUBLIC", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3528 behaves like rejects nuget packages access3529 for user type guest3530 has the correct response header3531 behaves like returning response status3532 returns unauthorized3533 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3534 behaves like rejects nuget packages access3535 for user type developer3536 behaves like returning response status3537 returns forbidden3538 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3539 behaves like rejects nuget packages access3540 for user type guest3541 behaves like returning response status3542 returns forbidden3543 visibility_level: "PUBLIC", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3544 behaves like rejects nuget packages access3545 for user type developer3546 has the correct response header3547 behaves like returning response status3548 returns unauthorized3549 visibility_level: "PUBLIC", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3550 behaves like rejects nuget packages access3551 for user type guest3552 has the correct response header3553 behaves like returning response status3554 returns unauthorized3555 visibility_level: "PUBLIC", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3556 behaves like rejects nuget packages access3557 for user type anonymous3558 has the correct response header3559 behaves like returning response status3560 returns unauthorized3561 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: true, shared_examples_name: "process nuget upload", expected_status: :created3562 behaves like process nuget upload3563 for user type developer3564 with object storage disabled3565 without a file from workhorse3566 behaves like returning response status3567 returns bad_request3568 with correct params3569 behaves like package workhorse uploads3570 without a workhorse header3571 logs an error3572 behaves like returning response status3573 returns forbidden3574 behaves like creates nuget package files3575 creates package files3576 behaves like a package tracking event3577 creates a gitlab tracking event push_symbol_package3578 with object storage enabled3579 and direct upload enabled3580 behaves like creates nuget package files3581 creates package files3582 with invalid remote_id: 1231233583 behaves like returning response status3584 returns forbidden3585 with invalid remote_id: ../../1231233586 behaves like returning response status3587 returns forbidden3588 with crafted package.path param3589 does not create a package file3590 behaves like returning response status3591 returns bad_request3592 and direct upload disabled3593 and background upload disabled3594 behaves like creates nuget package files3595 creates package files3596 and background upload enabled3597 behaves like creates nuget package files3598 creates package files3599 behaves like background upload schedules a file migration3600 background upload enabled3601 schedules migration of file to object storage3602 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :forbidden3603 behaves like rejects nuget packages access3604 for user type guest3605 behaves like returning response status3606 returns forbidden3607 visibility_level: "PRIVATE", user_role: :developer, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3608 behaves like rejects nuget packages access3609 for user type developer3610 has the correct response header3611 behaves like returning response status3612 returns unauthorized3613 visibility_level: "PRIVATE", user_role: :guest, member: true, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3614 behaves like rejects nuget packages access3615 for user type guest3616 has the correct response header3617 behaves like returning response status3618 returns unauthorized3619 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found3620 behaves like rejects nuget packages access3621 for user type developer3622 behaves like returning response status3623 returns not_found3624 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :not_found3625 behaves like rejects nuget packages access3626 for user type guest3627 behaves like returning response status3628 returns not_found3629 visibility_level: "PRIVATE", user_role: :developer, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3630 behaves like rejects nuget packages access3631 for user type developer3632 has the correct response header3633 behaves like returning response status3634 returns unauthorized3635 visibility_level: "PRIVATE", user_role: :guest, member: false, user_token: false, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3636 behaves like rejects nuget packages access3637 for user type guest3638 has the correct response header3639 behaves like returning response status3640 returns unauthorized3641 visibility_level: "PRIVATE", user_role: :anonymous, member: false, user_token: true, shared_examples_name: "rejects nuget packages access", expected_status: :unauthorized3642 behaves like rejects nuget packages access3643 for user type anonymous3644 has the correct response header3645 behaves like returning response status3646 returns unauthorized3647 behaves like deploy token for package uploads3648 with deploy token headers3649 valid token3650 behaves like returning response status3651 returns success3652 invalid token3653 behaves like returning response status3654 returns unauthorized3655 behaves like job token for package uploads3656 with job token headers3657 valid token3658 creates a package with build info3659 behaves like returning response status3660 returns success3661 invalid token3662 behaves like returning response status3663 returns unauthorized3664 invalid user3665 behaves like returning response status3666 returns unauthorized3667 behaves like rejects nuget access with unknown target id3668 with an unknown target3669 as anonymous3670 behaves like rejects nuget packages access3671 for user type anonymous3672 has the correct response header3673 behaves like returning response status3674 returns unauthorized3675 as authenticated user3676 behaves like rejects nuget packages access3677 for user type anonymous3678 behaves like returning response status3679 returns not_found3680 behaves like rejects nuget access with invalid target id3681 with a target id with invalid integers3682 id: "/../", status: :bad_request3683 behaves like rejects nuget packages access3684 for user type anonymous3685 behaves like returning response status3686 returns bad_request3687 id: "", status: :not_found3688 behaves like rejects nuget packages access3689 for user type anonymous3690 behaves like returning response status3691 returns not_found3692 id: "%20", status: :bad_request3693 behaves like rejects nuget packages access3694 for user type anonymous3695 behaves like returning response status3696 returns bad_request3697 id: "%2e%2e%2f", status: :bad_request3698 behaves like rejects nuget packages access3699 for user type anonymous3700 behaves like returning response status3701 returns bad_request3702 id: "NaN", status: :bad_request3703 behaves like rejects nuget packages access3704 for user type anonymous3705 behaves like returning response status3706 returns bad_request3707 id: 1253, status: :unauthorized3708 behaves like rejects nuget packages access3709 for user type anonymous3710 has the correct response header3711 behaves like returning response status3712 returns unauthorized3713 id: "anything25", status: :bad_request3714 behaves like rejects nuget packages access3715 for user type anonymous3716 behaves like returning response status3717 returns bad_request3718 file size above maximum limit3719 behaves like returning response status3720 returns bad_request3721API::Branches3722 GET /projects/:id/repository/branches3723 when search parameter is passed3724 and branch exists3725 returns correct branches3726 and branch does not exist3727 returns an empty array3728 when sort parameter is passed3729 sorts branches3730 when sort value is not supported3731 behaves like 400 response3732 returns 4003733 when unauthenticated and project is public3734 behaves like repository branches3735 with branch_list_keyset_pagination feature off3736 with offset pagination params3737 returns the repository branches3738 determines only a limited number of merged branch names3739 merge status matches reality on paginated input3740 recovers pagination headers from cache between consecutive requests3741 with gitaly pagination params3742 merge status matches reality on paginated input3743 with branch_list_keyset_pagination feature on3744 with keyset pagination option3745 with gitaly pagination params3746 returns the repository branches3747 determines only a limited number of merged branch names3748 merge status matches reality on paginated input3749 with offset pagination params3750 ignores legacy pagination params3751 when repository is disabled3752 behaves like 404 response3753 returns 4043754 when unauthenticated and project is private3755 behaves like 404 response3756 returns 4043757 when authenticated as a maintainer3758 does not submit N+1 DB queries3759 behaves like repository branches3760 with branch_list_keyset_pagination feature off3761 with offset pagination params3762 returns the repository branches3763 determines only a limited number of merged branch names3764 merge status matches reality on paginated input3765 recovers pagination headers from cache between consecutive requests3766 with gitaly pagination params3767 merge status matches reality on paginated input3768 with branch_list_keyset_pagination feature on3769 with keyset pagination option3770 with gitaly pagination params3771 returns the repository branches3772 determines only a limited number of merged branch names3773 merge status matches reality on paginated input3774 with offset pagination params3775 ignores legacy pagination params3776 when repository is disabled3777 behaves like 404 response3778 returns 4043779 requesting with the escaped project full path3780 behaves like repository branches3781 with branch_list_keyset_pagination feature off3782 with offset pagination params3783 returns the repository branches3784 determines only a limited number of merged branch names3785 merge status matches reality on paginated input3786 recovers pagination headers from cache between consecutive requests3787 with gitaly pagination params3788 merge status matches reality on paginated input3789 with branch_list_keyset_pagination feature on3790 with keyset pagination option3791 with gitaly pagination params3792 returns the repository branches3793 determines only a limited number of merged branch names3794 merge status matches reality on paginated input3795 with offset pagination params3796 ignores legacy pagination params3797 when repository is disabled3798 behaves like 404 response3799 returns 4043800 when authenticated as a guest3801 behaves like 403 response3802 returns 4033803 GET /projects/:id/repository/branches/:branch3804 when unauthenticated and project is public3805 returns that the current user cannot push3806 behaves like repository branch3807 returns the repository branch3808 HEAD request3809 returns 204 No Content3810 returns 404 Not Found3811 when branch does not exist3812 behaves like 404 response3813 returns 4043814 when the branch refname is invalid3815 behaves like 400 response3816 returns 4003817 when repository is disabled3818 behaves like 404 response3819 returns 4043820 when repository does not exist3821 behaves like 404 response3822 returns 4043823 when unauthenticated and project is private3824 behaves like 404 response3825 returns 4043826 when authenticated as a maintainer3827 returns that the current user can push3828 behaves like repository branch3829 returns the repository branch3830 HEAD request3831 returns 204 No Content3832 returns 404 Not Found3833 when branch does not exist3834 behaves like 404 response3835 returns 4043836 when the branch refname is invalid3837 behaves like 400 response3838 returns 4003839 when repository is disabled3840 behaves like 404 response3841 returns 4043842 when repository does not exist3843 behaves like 404 response3844 returns 4043845 when branch contains a dot3846 behaves like repository branch3847 returns the repository branch3848 HEAD request3849 returns 204 No Content3850 returns 404 Not Found3851 when branch does not exist3852 behaves like 404 response3853 returns 4043854 when the branch refname is invalid3855 behaves like 400 response3856 returns 4003857 when repository is disabled3858 behaves like 404 response3859 returns 4043860 when repository does not exist3861 behaves like 404 response3862 returns 4043863 when branch contains dot txt3864 behaves like repository branch3865 returns the repository branch3866 HEAD request3867 returns 204 No Content3868 returns 404 Not Found3869 when branch does not exist3870 behaves like 404 response3871 returns 4043872 when the branch refname is invalid3873 behaves like 400 response3874 returns 4003875 when repository is disabled3876 behaves like 404 response3877 returns 4043878 when repository does not exist3879 behaves like 404 response3880 returns 4043881 when branch contains a slash3882 behaves like 404 response3883 returns 4043884 when branch contains an escaped slash3885 behaves like repository branch3886 returns the repository branch3887 HEAD request3888 returns 204 No Content3889 returns 404 Not Found3890 when branch does not exist3891 behaves like 404 response3892 returns 4043893 when the branch refname is invalid3894 behaves like 400 response3895 returns 4003896 when repository is disabled3897 behaves like 404 response3898 returns 4043899 when repository does not exist3900 behaves like 404 response3901 returns 4043902 requesting with the escaped project full path3903 behaves like repository branch3904 returns the repository branch3905 HEAD request3906 returns 204 No Content3907 returns 404 Not Found3908 when branch does not exist3909 behaves like 404 response3910 returns 4043911 when the branch refname is invalid3912 behaves like 400 response3913 returns 4003914 when repository is disabled3915 behaves like 404 response3916 returns 4043917 when repository does not exist3918 behaves like 404 response3919 returns 4043920 when branch contains a dot3921 behaves like repository branch3922 returns the repository branch3923 HEAD request3924 returns 204 No Content3925 returns 404 Not Found3926 when branch does not exist3927 behaves like 404 response3928 returns 4043929 when the branch refname is invalid3930 behaves like 400 response3931 returns 4003932 when repository is disabled3933 behaves like 404 response3934 returns 4043935 when repository does not exist3936 behaves like 404 response3937 returns 4043938 when authenticated as a developer and branch is protected3939 returns that the current user cannot push3940 behaves like repository branch3941 returns the repository branch3942 HEAD request3943 returns 204 No Content3944 returns 404 Not Found3945 when branch does not exist3946 behaves like 404 response3947 returns 4043948 when the branch refname is invalid3949 behaves like 400 response3950 returns 4003951 when repository is disabled3952 behaves like 404 response3953 returns 4043954 when repository does not exist3955 behaves like 404 response3956 returns 4043957 when authenticated as a guest3958 behaves like 403 response3959 returns 4033960 PUT /projects/:id/repository/branches/:branch/protect3961 when unauthenticated and project is private3962 behaves like 404 response3963 returns 4043964 when authenticated as a guest3965 behaves like 403 response3966 returns 4033967 when authenticated as a maintainer3968 when a protected branch doesn't already exist3969 behaves like repository new protected branch3970 protects a single branch3971 protects a single branch and developers can push3972 protects a single branch and developers can merge3973 protects a single branch and developers can push and merge3974 when branch does not exist3975 behaves like 404 response3976 returns 4043977 when the branch refname is invalid3978 behaves like 400 response3979 returns 4003980 when repository is disabled3981 behaves like 404 response3982 returns 4043983 when branch contains a dot3984 behaves like repository new protected branch3985 protects a single branch3986 protects a single branch and developers can push3987 protects a single branch and developers can merge3988 protects a single branch and developers can push and merge3989 when branch does not exist3990 behaves like 404 response3991 returns 4043992 when the branch refname is invalid3993 behaves like 400 response3994 returns 4003995 when repository is disabled3996 behaves like 404 response3997 returns 4043998 when branch contains a slash3999 behaves like 404 response4000 returns 4044001 when branch contains an escaped slash4002 behaves like repository new protected branch4003 protects a single branch4004 protects a single branch and developers can push4005 protects a single branch and developers can merge4006 protects a single branch and developers can push and merge4007 when branch does not exist4008 behaves like 404 response4009 returns 4044010 when the branch refname is invalid4011 behaves like 400 response4012 returns 4004013 when repository is disabled4014 behaves like 404 response4015 returns 4044016 requesting with the escaped project full path4017 behaves like repository new protected branch4018 protects a single branch4019 protects a single branch and developers can push4020 protects a single branch and developers can merge4021 protects a single branch and developers can push and merge4022 when branch does not exist4023 behaves like 404 response4024 returns 4044025 when the branch refname is invalid4026 behaves like 400 response4027 returns 4004028 when repository is disabled4029 behaves like 404 response4030 returns 4044031 when branch contains a dot4032 behaves like repository new protected branch4033 protects a single branch4034 protects a single branch and developers can push4035 protects a single branch and developers can merge4036 protects a single branch and developers can push and merge4037 when branch does not exist4038 behaves like 404 response4039 returns 4044040 when the branch refname is invalid4041 behaves like 400 response4042 returns 4004043 when repository is disabled4044 behaves like 404 response4045 returns 4044046 when protected branch already exists4047 when developers can push and merge4048 updates that a developer cannot push or merge4049 when developers cannot push or merge4050 updates that a developer can push and merge4051 PUT /projects/:id/repository/branches/:branch/unprotect4052 when unauthenticated and project is private4053 behaves like 404 response4054 returns 4044055 when authenticated as a guest4056 behaves like 403 response4057 returns 4034058 when authenticated as a maintainer4059 when a protected branch doesn't already exist4060 behaves like repository unprotected branch4061 unprotects a single branch4062 when branch does not exist4063 behaves like 404 response4064 returns 4044065 when the branch refname is invalid4066 behaves like 400 response4067 returns 4004068 when repository is disabled4069 behaves like 404 response4070 returns 4044071 when branch contains a dot4072 behaves like repository unprotected branch4073 unprotects a single branch4074 when branch does not exist4075 behaves like 404 response4076 returns 4044077 when the branch refname is invalid4078 behaves like 400 response4079 returns 4004080 when repository is disabled4081 behaves like 404 response4082 returns 4044083 when branch contains a slash4084 behaves like 404 response4085 returns 4044086 when branch contains an escaped slash4087 behaves like repository unprotected branch4088 unprotects a single branch4089 when branch does not exist4090 behaves like 404 response4091 returns 4044092 when the branch refname is invalid4093 behaves like 400 response4094 returns 4004095 when repository is disabled4096 behaves like 404 response4097 returns 4044098 requesting with the escaped project full path4099 behaves like repository unprotected branch4100 unprotects a single branch4101 when branch does not exist4102 behaves like 404 response4103 returns 4044104 when the branch refname is invalid4105 behaves like 400 response4106 returns 4004107 when repository is disabled4108 behaves like 404 response4109 returns 4044110 when branch contains a dot4111 behaves like repository unprotected branch4112 unprotects a single branch4113 when branch does not exist4114 behaves like 404 response4115 returns 4044116 when the branch refname is invalid4117 behaves like 400 response4118 returns 4004119 when repository is disabled4120 behaves like 404 response4121 returns 4044122 POST /projects/:id/repository/branches4123 returns 400 if branch name is invalid4124 returns 400 if branch already exists4125 returns 400 if ref name is invalid4126 when unauthenticated and project is private4127 behaves like 404 response4128 returns 4044129 when authenticated as a guest4130 behaves like 403 response4131 returns 4034132 when authenticated as a maintainer4133 when a protected branch doesn't already exist4134 behaves like repository new branch4135 creates a new branch4136 when repository is disabled4137 behaves like 404 response4138 returns 4044139 requesting with the escaped project full path4140 behaves like repository new branch4141 creates a new branch4142 when repository is disabled4143 behaves like 404 response4144 returns 4044145 DELETE /projects/:id/repository/branches/:branch4146 removes branch4147 removes a branch with dots in the branch name4148 returns 404 if branch not exists4149 when the branch refname is invalid4150 behaves like 400 response4151 returns 4004152 behaves like 412 response4153 for a modified ressource4154 returns 412 with a JSON error4155 for an unmodified ressource4156 returns 204 with an empty body4157 DELETE /projects/:id/repository/merged_branches4158 returns 202 with json body4159 returns a 403 error if guest4160Admin::ApplicationSettingsController4161 GET #integrations4162 when GitLab.com4163 returns 4044164 when not GitLab.com4165 renders correct template4166 GET #usage_data with no access4167 returns 4044168 GET #usage_data4169 returns HTML data4170/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH4171/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here4172 returns JSON data4173 when there are recent ServicePing reports4174 attempts to use prerecorded data4175 when there are NO recent ServicePing reports4176/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH4177/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here4178 calculates data on the fly4179 usage data counter4180/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH4181/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here4182 incremented when json generated4183/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH4184/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here4185 not incremented when html format requested4186 PUT #update4187 updates the require_admin_approval_after_user_signup setting4188 updates the password_authentication_enabled_for_git setting4189 updates the default_project_visibility for string value4190 update the restricted levels for string values4191 updates the restricted_visibility_levels when empty array is passed4192 updates the receive_max_input_size setting4193 updates the default_project_creation for string value4194 updates minimum_password_length setting4195 updates repository_storages_weighted setting4196 updates kroki_formats setting4197 updates default_branch_name setting4198 updates admin_mode setting4199 updates valid_runner_registrars setting4200 personal access token prefix settings4201 with valid prefix4202 updates personal_access_token_prefix setting4203 with blank prefix4204 updates personal_access_token_prefix setting4205 with too long prefix4206 does not update personal_access_token_prefix setting4207 with invalid characters prefix4208 does not update personal_access_token_prefix setting4209 external policy classification settings4210 updates settings when the feature is available4211 verify panel actions4212 behaves like renders correct panels4213 renders correct action on error4214 redirects to same panel on success4215 behaves like renders correct panels4216 renders correct action on error4217 redirects to same panel on success4218 behaves like renders correct panels4219 renders correct action on error4220 redirects to same panel on success4221 behaves like renders correct panels4222 renders correct action on error4223 redirects to same panel on success4224 behaves like renders correct panels4225 renders correct action on error4226 redirects to same panel on success4227 behaves like renders correct panels4228 renders correct action on error4229 redirects to same panel on success4230 behaves like renders correct panels4231 renders correct action on error4232 redirects to same panel on success4233 EKS integration4234 updates EKS settings4235 secret access key is blank4236 does not update the secret key4237 user_email_lookup_limit aliasing4238 when search_rate_limit is specified4239 updates search_rate_limit with correct value4240 when search_rate_limit is not specified4241 applies user_email_lookup_limit value to search_rate_limit4242 pipeline creation rate limiting4243 updates pipeline_limit_per_project_user_sha setting4244 PUT #reset_registration_token4245 resets runner registration token4246 redirects the user to admin runners page4247 GET #lets_encrypt_terms_of_service4248 redirects the user to the terms of service page4249 GET #service_usage_data4250 assigns truthy value if there are recent ServicePing reports in database4251 assigns truthy value if there are recent ServicePing reports in cache4252 assigns falsey value if there are NO recent ServicePing reports4253Projects::ClustersController4254 GET index4255 functionality4256 when project has one or more clusters4257 lists available clusters and renders html4258 lists available clusters with json serializer4259 sets the polling interval header for json requests4260 feature flag is disabled4261 does not list any clusters4262 when page is specified4263 redirects to the page4264 displays cluster list for associated page4265 when project does not have a cluster4266 returns an empty state page4267 security4268 is allowed for admin when admin mode enabled4269 is disabled for admin when admin mode disabled4270 is expected to be allowed for owner. Expected: 200,201,204,302 Got: 2004271 is expected to be allowed for maintainer. Expected: 200,201,204,302 Got: 2004272 is expected to be allowed for developer. Expected: 200,201,204,302 Got: 2004273 is expected to be denied for reporter. Expected: 401,404 Got: 4044274 is expected to be denied for guest. Expected: 401,404 Got: 4044275 is expected to be denied for user. Expected: 401,404 Got: 4044276 is expected to be denied for external. Expected: 401,404 Got: 4044277 GET #prometheus_proxy4278 behaves like metrics dashboard prometheus api proxy4279 with valid requests4280 with success result4281 returns prometheus response4282 with nil query4283 does not raise error4284 with nil result4285 returns 204 no_content4286 with 404 result4287 returns body4288 with error result4289 with http_status4290 sets the http response status code4291 without http_status4292 returns bad_request4293 with inappropriate requests4294 without correct permissions4295 returns 4044296 with invalid proxyable id4297 returns 4044298 with anonymous user4299 redirects to signin page4300 behaves like GET #metrics_dashboard for dashboard4301 returns correct dashboard4302 behaves like GET #metrics_dashboard correctly formatted response4303 returns a json object with the correct keys4304 POST create for existing cluster4305 feature flag is disabled4306 responds with :not_found4307 functionality4308 when creates a cluster4309 creates a new cluster4310 when creates a RBAC-enabled cluster4311 creates a new cluster4312 when creates a user-managed cluster4313 creates a new user-managed cluster4314 security4315 is allowed for admin when admin mode enabled4316 is disabled for admin when admin mode disabled4317 is expected to be allowed for owner. Expected: 200,201,204,302 Got: 3024318 is expected to be allowed for maintainer. Expected: 200,201,204,302 Got: 3024319 is expected to be denied for developer. Expected: 401,404 Got: 4044320 is expected to be denied for reporter. Expected: 401,404 Got: 4044321 is expected to be denied for guest. Expected: 401,404 Got: 4044322 is expected to be denied for user. Expected: 401,404 Got: 4044323 is expected to be denied for external. Expected: 401,404 Got: 4044324 DELETE clear cluster cache4325 deletes the namespaces associated with the cluster4326 feature flag is disabled4327 responds with :not_found4328 security4329 is allowed for admin when admin mode enabled4330 is disabled for admin when admin mode disabled4331 is expected to be allowed for owner. Expected: 200,201,204,302 Got: 3024332 is expected to be allowed for maintainer. Expected: 200,201,204,302 Got: 3024333 is expected to be denied for developer. Expected: 401,404 Got: 4044334 is expected to be denied for reporter. Expected: 401,404 Got: 4044335 is expected to be denied for guest. Expected: 401,404 Got: 4044336 is expected to be denied for user. Expected: 401,404 Got: 4044337 is expected to be denied for external. Expected: 401,404 Got: 4044338 GET cluster_status4339 feature flag is disabled4340 responds with :not_found4341 functionality4342 responds with matching schema4343 invokes schedule_status_update on each application4344 security4345 is allowed for admin when admin mode enabled4346 is disabled for admin when admin mode disabled4347 is expected to be allowed for owner. Expected: 200,201,204,302 Got: 2004348 is expected to be allowed for maintainer. Expected: 200,201,204,302 Got: 2004349 is expected to be denied for developer. Expected: 401,404 Got: 4044350 is expected to be denied for reporter. Expected: 401,404 Got: 4044351 is expected to be denied for guest. Expected: 401,404 Got: 4044352 is expected to be denied for user. Expected: 401,404 Got: 4044353 is expected to be denied for external. Expected: 401,404 Got: 4044354 GET show4355 feature flag is disabled4356 responds with :not_found4357 functionality4358 renders view4359 renders integration tab view4360 security4361 is allowed for admin when admin mode enabled4362 is disabled for admin when admin mode disabled4363 is expected to be allowed for owner. Expected: 200,201,204,302 Got: 2004364 is expected to be allowed for maintainer. Expected: 200,201,204,302 Got: 2004365 is expected to be allowed for developer. Expected: 200,201,204,302 Got: 2004366 is expected to be denied for reporter. Expected: 401,404 Got: 4044367 is expected to be denied for guest. Expected: 401,404 Got: 4044368 is expected to be denied for user. Expected: 401,404 Got: 4044369 is expected to be denied for external. Expected: 401,404 Got: 4044370 PUT update4371 updates and redirects back to show page4372 feature flag is disabled4373 responds with :not_found4374 when format is json4375 when changing parameters4376 when valid parameters are used4377 updates and redirects back to show page4378 when invalid parameters are used4379 rejects changes4380 security4381 is allowed for admin when admin mode enabled4382 is disabled for admin when admin mode disabled4383 is expected to be allowed for owner. Expected: 200,201,204,302 Got: 3024384 is expected to be allowed for maintainer. Expected: 200,201,204,302 Got: 3024385 is expected to be denied for developer. Expected: 401,404 Got: 4044386 is expected to be denied for reporter. Expected: 401,404 Got: 4044387 is expected to be denied for guest. Expected: 401,404 Got: 4044388 is expected to be denied for user. Expected: 401,404 Got: 4044389 is expected to be denied for external. Expected: 401,404 Got: 4044390 DELETE destroy4391 feature flag is disabled4392 responds with :not_found4393 functionality4394 when cluster is provided by GCP4395 when cluster is created4396 destroys and redirects back to clusters list4397 when cluster is being created4398 destroys and redirects back to clusters list4399 when cluster is provided by user4400 destroys and redirects back to clusters list4401 security4402 is allowed for admin when admin mode enabled4403 is disabled for admin when admin mode disabled4404 is expected to be allowed for owner. Expected: 200,201,204,302 Got: 3024405 is expected to be allowed for maintainer. Expected: 200,201,204,302 Got: 3024406 is expected to be denied for developer. Expected: 401,404 Got: 4044407 is expected to be denied for reporter. Expected: 401,404 Got: 4044408 is expected to be denied for guest. Expected: 401,404 Got: 4044409 is expected to be denied for user. Expected: 401,404 Got: 4044410 is expected to be denied for external. Expected: 401,404 Got: 4044411 no project_id param4412 does not respond to any action without project_id param4413API::Helpers4414 .current_user4415 Warden authentication4416 with invalid credentials4417 GET request4418 is expected to be nil4419 with valid credentials4420 GET request4421 is expected to eq #<User id:1071 @user827>4422 sets the environment with data of the current user4423 HEAD request4424 is expected to eq #<User id:1071 @user827>4425 when user should have 2fa enabled4426 when 2fa is not enabled4427 is expected to be nil4428 when 2fa is enabled4429 is expected to eq #<User id:1071 @user827>4430 PUT request4431 without CSRF token4432 is expected to be nil4433 with CSRF token4434 is expected to eq #<User id:1071 @user827>4435 POST request4436 without CSRF token4437 is expected to be nil4438 with CSRF token4439 is expected to eq #<User id:1071 @user827>4440 DELETE request4441 without CSRF token4442 is expected to be nil4443 with CSRF token4444 is expected to eq #<User id:1071 @user827>4445 when authenticating using a user's personal access tokens4446 returns a 401 response for an invalid token4447 returns a 403 response for a user without access4448 returns a 403 response for a user who is blocked4449 sets current_user4450 does not allow tokens without the appropriate scope4451 does not allow revoked tokens4452 does not allow expired tokens4453 when terms are enforced4454 returns a 403 when a user has not accepted the terms4455 sets the current user when the user accepted the terms4456 when impersonation is disabled4457 does not allow impersonation tokens4458 when authenticating using a job token4459 when route is allowed to be authenticated4460 returns a 401 response for an invalid token4461 returns a 401 response for a job that's not running4462 returns a 403 response for a user without access4463 returns a 403 response for a user who is blocked4464 sets current_user4465 when route is not allowed to be authenticated4466 sets current_user to nil4467 .handle_api_exception4468 does not report a MethodNotAllowed exception to Sentry4469 does report RuntimeError to Sentry4470 with a personal access token given4471 does not raise an additional exception because of missing `request`4472 .authenticate_non_get!4473 method is HEAD4474 does not raise an error4475 method is GET4476 does not raise an error4477 method is POST4478 calls authenticate!4479 method is PUT4480 calls authenticate!4481 method is PATCH4482 calls authenticate!4483 method is DELETE4484 calls authenticate!4485 .authenticate!4486 current_user is nil4487 returns a 401 response4488 current_user is present4489 does not raise an error4490 sudo4491 using an OAuth token4492 behaves like sudo4493 when admin4494 when token has sudo scope4495 when user exists4496 when using header4497 when providing username4498 behaves like successful sudo4499 sets current_user4500 sets sudo?4501 when providing username (case insensitive)4502 behaves like successful sudo4503 sets current_user4504 sets sudo?4505 when providing user ID4506 behaves like successful sudo4507 sets current_user4508 sets sudo?4509 when using param4510 when providing username4511 behaves like successful sudo4512 sets current_user4513 sets sudo?4514 when providing username (case insensitive)4515 behaves like successful sudo4516 sets current_user4517 sets sudo?4518 when providing user ID4519 behaves like successful sudo4520 sets current_user4521 sets sudo?4522 when user does not exist4523 raises an error4524 when token does not have sudo scope4525 raises an error4526 when not admin4527 raises an error4528 using a personal access token4529 passed as param4530 behaves like sudo4531 when admin4532 when token has sudo scope4533 when user exists4534 when using header4535 when providing username4536 behaves like successful sudo4537 sets current_user4538 sets sudo?4539 when providing username (case insensitive)4540 behaves like successful sudo4541 sets current_user4542 sets sudo?4543 when providing user ID4544 behaves like successful sudo4545 sets current_user4546 sets sudo?4547 when using param4548 when providing username4549 behaves like successful sudo4550 sets current_user4551 sets sudo?4552 when providing username (case insensitive)4553 behaves like successful sudo4554 sets current_user4555 sets sudo?4556 when providing user ID4557 behaves like successful sudo4558 sets current_user4559 sets sudo?4560 when user does not exist4561 raises an error4562 when token does not have sudo scope4563 raises an error4564 when not admin4565 raises an error4566 passed as header4567 behaves like sudo4568 when admin4569 when token has sudo scope4570 when user exists4571 when using header4572 when providing username4573 behaves like successful sudo4574 sets current_user4575 sets sudo?4576 when providing username (case insensitive)4577 behaves like successful sudo4578 sets current_user4579 sets sudo?4580 when providing user ID4581 behaves like successful sudo4582 sets current_user4583 sets sudo?4584 when using param4585 when providing username4586 behaves like successful sudo4587 sets current_user4588 sets sudo?4589 when providing username (case insensitive)4590 behaves like successful sudo4591 sets current_user4592 sets sudo?4593 when providing user ID4594 behaves like successful sudo4595 sets current_user4596 sets sudo?4597 when user does not exist4598 raises an error4599 when token does not have sudo scope4600 raises an error4601 when not admin4602 raises an error4603 using warden authentication4604 raises an error4605UsersController4606 GET #show4607 when the user exists and has public visibility4608 when logged in4609 behaves like renders the show template4610 renders the show template4611 when logged out4612 behaves like renders the show template4613 renders the show template4614 when public visibility level is restricted4615 when logged out4616 redirects to login page4617 when logged in4618 behaves like renders the show template4619 renders the show template4620 when a user by that username does not exist4621 when logged out4622 redirects to login page4623 when logged in4624 renders 4044625 requested in json format4626 returns 404 with deprecation message4627 GET /users/:username (deprecated user top)4628 redirects to /user14629 GET #activity4630 when the user exists and has public visibility4631 when logged in4632 behaves like renders the show template4633 renders the show template4634 when logged out4635 behaves like renders the show template4636 renders the show template4637 when public visibility level is restricted4638 when logged out4639 redirects to login page4640 when logged in4641 behaves like renders the show template4642 renders the show template4643 when a user by that username does not exist4644 when logged out4645 redirects to login page4646 when logged in4647 renders 4044648 requested in json format4649 loads events4650 hides events if the user cannot read cross project4651 hides events if the user has a private profile4652 GET #ssh_keys4653 non existent user4654 does not generally work4655 user with no keys4656 responds the empty body with text/plain content type4657 user with keys4658 while signed in4659 behaves like renders all public keys4660 renders all non-deploy keys terminated with a new line with text/plain content type without the comment key4661 when logged out4662 behaves like renders all public keys4663 renders all non-deploy keys terminated with a new line with text/plain content type without the comment key4664 when public visibility is restricted4665 redirects to sign in4666 GET #gpg_keys4667 non existent user4668 does not generally work4669 user with no keys4670 responds the empty body with text/plain content type4671 user with keys4672 while signed in4673 behaves like renders all verified GPG keys4674 renders all verified keys terminated with a new line with text/plain content type4675 when logged out4676 behaves like renders all verified GPG keys4677 renders all verified keys terminated with a new line with text/plain content type4678 when revoked4679 while signed in4680 behaves like doesn't render revoked keys4681 doesn't render revoked keys4682 when logged out4683 behaves like doesn't render revoked keys4684 doesn't render revoked keys4685 GET #calendar4686 for user4687 with public profile4688 renders calendar4689 with private profile4690 does not render calendar4691 forked project4692 includes forked projects4693 GET #calendar_activities4694 renders activities on the specified day4695 for user4696 with public profile4697 renders calendar_activities4698 avoids N+1 queries4699 with private profile4700 does not render calendar_activities4701 external authorization4702 behaves like disabled when using an external authorization service4703 works when the feature is not enabled4704 renders a 404 with a message when the feature is enabled4705 GET #contributed4706 format: html4707 with public profile4708 behaves like renders contributed projects4709 renders contributed projects4710 does not list projects aimed for deletion4711 with private profile4712 returns 4044713 with a user that has the ability to read private profiles4714 behaves like renders contributed projects4715 renders contributed projects4716 does not list projects aimed for deletion4717 format: json4718 with public profile4719 behaves like renders contributed projects4720 renders contributed projects4721 does not list projects aimed for deletion4722 with private profile4723 returns 4044724 with a user that has the ability to read private profiles4725 behaves like renders contributed projects4726 renders contributed projects4727 does not list projects aimed for deletion4728 GET #starred4729 format: html4730 with public profile4731 behaves like renders starred projects4732 renders starred projects4733 does not list projects aimed for deletion4734 with private profile4735 returns 4044736 with a user that has the ability to read private profiles4737 behaves like renders starred projects4738 renders starred projects4739 does not list projects aimed for deletion4740 format: json4741 with public profile4742 behaves like renders starred projects4743 renders starred projects4744 does not list projects aimed for deletion4745 with private profile4746 returns 4044747 with a user that has the ability to read private profiles4748 behaves like renders starred projects4749 renders starred projects4750 does not list projects aimed for deletion4751 GET #snippets4752 format html4753 renders snippets page4754 format json4755 response with snippets json data4756 external authorization4757 behaves like disabled when using an external authorization service4758 works when the feature is not enabled4759 renders a 404 with a message when the feature is enabled4760 GET #exists4761 when user exists4762 returns JSON indicating the user exists4763 when the casing is different4764 returns JSON indicating the user exists4765 when the user does not exist4766 will not show a signup page if registration is disabled4767 returns JSON indicating the user does not exist4768 when a user changed their username4769 returns JSON indicating a user by that username does not exist4770 when the rate limit has been reached4771 returns status 429 Too Many Requests4772 #ensure_canonical_path4773 for a GET request4774 when requesting users at the root path4775 when requesting the canonical path4776 with exactly matching casing4777 responds with success4778 with different casing4779 redirects to the correct casing4780 when requesting a redirected path4781 behaves like redirects to the canonical path4782 redirects to the canonical path4783 when the old path is a substring of the scheme or host4784 behaves like redirects to the canonical path4785 redirects to the canonical path4786 when the old path is substring of users4787 behaves like redirects to the canonical path4788 redirects to the canonical path4789 when requesting users under the /users path4790 when requesting the canonical path4791 with exactly matching casing4792 responds with success4793 with different casing4794 redirects to the correct casing4795 when requesting a redirected path4796 behaves like redirects to the canonical path4797 redirects to the canonical path4798 when the old path is a substring of the scheme or host4799 behaves like redirects to the canonical path4800 redirects to the canonical path4801 when the old path is substring of users4802 behaves like redirects to the canonical path4803 redirects to the canonical path4804 token authentication4805 behaves like authenticates sessionless user for the request spec4806 show atom4807 when the 'private_token' param is populated with the personal access token4808 when valid token4809 when resource is public4810 authenticates user and returns response with ok status4811 when user with expired password4812 does not authenticate user and returns response with ok status4813 when the personal access token has no api scope4814 when resource is public4815 does not authenticate user and returns response with ok status4816 when invalid token4817 when resource is public4818 does not authenticate user and returns response with ok status4819 when the 'PRIVATE-TOKEN' header is populated with the personal access token4820 when valid token4821 when resource is public4822 authenticates user and returns response with ok status4823 when user with expired password4824 does not authenticate user and returns response with ok status4825 when the personal access token has no api scope4826 when resource is public4827 does not authenticate user and returns response with ok status4828 when invalid token4829 when resource is public4830 does not authenticate user and returns response with ok status4831 when the 'feed_token' param is populated with the feed token4832 when valid token4833 when resource is public4834 authenticates user and returns response with ok status4835 when user with expired password4836 does not authenticate user and returns response with ok status4837 when invalid token4838 when resource is public4839 does not authenticate user and returns response with ok status4840API::Release::Links4841 GET /projects/:id/releases/:tag_name/assets/links4842 when there are two release links4843 returns 200 HTTP status4844 returns release links ordered by created_at4845 matches response schema4846 when using JOB-TOKEN auth4847 returns releases links4848 when release does not exist4849 behaves like 404 response4850 returns 4044851 when user is not a project member4852 behaves like 404 response4853 returns 4044854 when project is public4855 allows the request4856 when project is public and the repository is private4857 behaves like 403 response4858 returns 4034859 when the release does not exists4860 behaves like 403 response4861 returns 4034862 GET /projects/:id/releases/:tag_name/assets/links/:link_id4863 returns 200 HTTP status4864 returns a link entry4865 matches response schema4866 when using JOB-TOKEN auth4867 returns releases link4868 when specified tag is not found in the project4869 behaves like 404 response4870 returns 4044871 when user is not a project member4872 behaves like 404 response4873 returns 4044874 when project is public4875 allows the request4876 #direct_asset_url4877 when filepath is provided4878 is expected to eq "http://localhost/namespace688/project688/-/releases/v0.1/downloads/bin/bigfile.exe"4879 when filepath is not provided4880 is expected to eq "https://google.com/-/jobs/140463678/artifacts/download"4881 POST /projects/:id/releases/:tag_name/assets/links4882 accepts the request4883 creates a new release4884 matches response schema4885 when using JOB-TOKEN auth4886 creates a new release link4887 with protected tag4888 when user has access to the protected tag4889 accepts the request4890 when user does not have access to the protected tag4891 forbids the request4892 when name is empty4893 behaves like 400 response4894 returns 4004895 when user is a reporter4896 behaves like 403 response4897 returns 4034898 when user is not a project member4899 forbids the request4900 when project is public4901 forbids the request4902 when the same link already exists4903 behaves like 400 response4904 returns 4004905 PUT /projects/:id/releases/:tag_name/assets/links/:link_id4906 accepts the request4907 updates the name4908 does not update the url4909 matches response schema4910 when using JOB-TOKEN auth4911 updates the release link4912 with protected tag4913 when user has access to the protected tag4914 accepts the request4915 when user does not have access to the protected tag4916 forbids the request4917 when params is empty4918 does not allow the request4919 when there are no corresponding release link4920 behaves like 404 response4921 returns 4044922 when user is a reporter4923 behaves like 403 response4924 returns 4034925 when user is not a project member4926 behaves like 404 response4927 returns 4044928 when project is public4929 behaves like 403 response4930 returns 4034931 DELETE /projects/:id/releases/:tag_name/assets/links/:link_id4932 accepts the request4933 destroys the release link4934 matches response schema4935 when using JOB-TOKEN auth4936 deletes the release link4937 with protected tag4938 when user has access to the protected tag4939 accepts the request4940 when user does not have access to the protected tag4941 forbids the request4942 when there are no corresponding release link4943 behaves like 404 response4944 returns 4044945 when user is a reporter4946 behaves like 403 response4947 returns 4034948 when user is not a project member4949 behaves like 404 response4950 returns 4044951 when project is public4952 behaves like 403 response4953 returns 4034954AutocompleteController4955 GET users4956 project members4957 GET #users with project ID4958 returns the project members4959 GET #users with unknown project4960 is expected to respond with numeric status code not_found4961 group members4962 GET #users with group ID4963 returns the group members4964 GET #users with unknown group ID4965 is expected to respond with numeric status code not_found4966 non-member login for public project4967 GET #users with project ID4968 returns the project members and non-members4969 all users4970 is expected to be a kind of Array4971 is expected to eq 34972 user order4973 shows exact matches first4974 limited users per page4975 is expected to be a kind of Array4976 is expected to eq 204977 unauthenticated user4978 GET #users with public project4979 is expected to be a kind of Array4980 is expected to eq 24981 GET #users with project4982 is expected to respond with numeric status code not_found4983 GET #users with unknown project4984 is expected to respond with numeric status code not_found4985 GET #users with inaccessible group4986 is expected to respond with numeric status code not_found4987 GET #users with no project4988 is expected to be a kind of Array4989 is expected to be empty4990 GET #users with todo filter4991 gives an array of users4992 author of issuable included4993 authenticated4994 includes the author4995 rejects non existent user ids4996 without authenticating4997 returns empty result4998 skip_users parameter included4999 skips the user IDs passed5000 merge_request_iid parameter included5001 includes can_merge option to users5002 behaves like rate limited endpoint5003 when rate limiter enabled5004 logs request and declines it when endpoint called more than the threshold5005 when rate limiter is disabled5006 does not log request and does not block the request5007 GET projects5008 authorized projects5009 GET #projects with project ID5010 returns projects5011 authorized projects and search5012 GET #projects with project ID and search5013 returns projects5014 authorized projects apply limit5015 GET #projects with project ID5016 returns projects5017 authorized projects without admin_issue ability5018 GET #projects with project ID5019 returns no projects5020 GET award_emojis5021 unauthorized user5022 returns empty json5023 sign in as user without award emoji5024 returns empty json5025 sign in as user with award emoji5026 returns json sorted by name count5027 GET deploy_keys_with_owners5028 unauthorized user5029 returns a not found response5030 when the user who can read the project is logged in5031 renders the deploy key in a json payload, with its owner5032 and they cannot read the project5033 returns a not found response5034 with an unknown project5035 returns a not found response5036 and the user cannot read the owner of the key5037 returns a payload without owner5038 Get merge_request_target_branches5039 anonymous user5040 returns empty json5041 user without any accessible merge requests5042 returns empty json5043 user with an accessible merge request but no scope5044 params: {}5045 returns an error5046 params: {:group_id=>" "}5047 returns an error5048 params: {:project_id=>" "}5049 returns an error5050 params: {:group_id=>" ", :project_id=>" "}5051 returns an error5052 user with an accessible merge request by project5053 returns json5054 user with an accessible merge request by group5055 returns json5056API::Ci::Runner5057 /api/v4/jobs5058 PATCH /api/v4/jobs/:id/trace5059 updates runner info5060 behaves like API::CI::Runner application context metadata5061 contains correct context metadata5062 when request is valid5063 gets correct response5064 when job has been updated recently5065 is expected not to change `job.updated_at`5066 changes the job's trace5067 when Runner makes a force-patch5068 is expected not to change `job.updated_at`5069 doesn't change the build.trace5070 when job was not updated recently5071 is expected to change `job.updated_at`5072 changes the job.trace5073 when Runner makes a force-patch5074 is expected to change `job.updated_at`5075 doesn't change the job.trace5076 when project for the build has been deleted5077 responds with forbidden5078 when trace is patched5079 has valid trace5080 when job is cancelled5081 when trace is patched5082 returns Forbidden5083 when redis data are flushed5084 has empty trace5085 when we perform partial patch5086 returns an error5087 when we resend full trace5088 succeeds with updating trace5089 when concurrent update of trace is happening5090 returns that operation conflicts5091 when the job is canceled5092 receives status in header5093 when build trace is being watched5094 returns X-GitLab-Trace-Update-Interval as 35095 when build trace is not being watched5096 returns the interval in X-GitLab-Trace-Update-Interval5097 when job does not exist anymore5098 returns 403 Forbidden5099 when Runner makes a force-patch5100 gets correct response5101 when content-range start is too big5102 gets 416 error response with range headers5103 when content-range start is too small5104 gets 416 error response with range headers5105 when Content-Range header is missing5106 is expected to respond with numeric status code bad_request5107 when job has been errased5108 is expected to respond with numeric status code forbidden5109 when the job log is too big5110 returns 403 Forbidden5111Projects::ReleasesController5112 GET #index5113 as html5114 returns a text/html content_type5115 behaves like common access controls5116 renders a 2005117 when the project is private5118 when user is a developer5119 renders a 200 for a logged in developer5120 when user is an external user5121 renders a 404 when logged in but not in the project5122 when the project is private and the user is not logged in5123 returns a redirect5124 as json5125 returns an application/json content_type5126 returns the project's releases as JSON, ordered by released_at5127 behaves like common access controls5128 renders a 2005129 when the project is private5130 when user is a developer5131 renders a 200 for a logged in developer5132 when user is an external user5133 renders a 404 when logged in but not in the project5134 when the project is private and the user is not logged in5135 returns a redirect5136 GET #new5137 is expected to be denied for reporter. Expected: 401,404 Got: 4045138 is expected to be allowed for developer. Expected: 200,201,204,302 Got: 2005139 GET #edit5140 behaves like successful request5141 renders a 2005142 when tag name contains slash5143 is accesible at a URL encoded path5144 behaves like successful request5145 renders a 2005146 when release does not exist5147 behaves like not found5148 renders 4045149 when user is a reporter5150 behaves like not found5151 renders 4045152 GET #show5153 behaves like successful request5154 renders a 2005155 when tag name contains slash5156 is accesible at a URL encoded path5157 behaves like successful request5158 renders a 2005159 when release does not exist5160 behaves like not found5161 renders 4045162 when user is a guest5163 behaves like successful request5164 renders a 2005165 when user is an external user for the project5166 behaves like not found5167 GET #latest_permalink5168 when user is a guest5169 proceeds with the redirect5170 when user is an external user for the project5171 behaves like not found5172 when there are no releases for the project5173 behaves like not found5174 multiple releases5175 redirects to the latest release5176 suffix path redirection5177 redirects to the latest release with suffix path and format5178 suffix path abuse5179 raises attack error5180 url parameters5181 carries over query parameters without order_by parameter in the redirect5182 order_by parameter5183 invalid parameter5184 behaves like redirects to latest release ordered by using released_at5185 is expected to redirect to "/namespace816/project844/-/releases/latest"5186 valid parameter5187 behaves like redirects to latest release ordered by using released_at5188 is expected to redirect to "/namespace817/project845/-/releases/latest"5189Emails::MergeRequests5190 #new_mention_in_merge_request_email5191 has the correct subject and body5192 #merge_request_unmergeable_email5193 is sent as the merge request author5194 has the correct subject and body5195 behaves like an answer to an existing thread with reply-by-email enabled5196 has X-GitLab-Project headers5197 has X-GitLab-*-ID header5198 has X-GitLab-*-IID header if model has iid defined5199 has X-GitLab-Project headers5200 has X-GitLab-*-ID header5201 has X-GitLab-*-IID header if model has iid defined5202 has the characteristics of a threaded reply5203 when reply-by-email is enabled with incoming address with %{key}5204 has a Reply-To header5205 when reply-by-email is enabled with incoming address without %{key}5206 has X-GitLab-Project headers5207 has X-GitLab-*-ID header5208 has X-GitLab-*-IID header if model has iid defined5209 has the characteristics of a threaded reply5210 has a Reply-To header5211 behaves like a multiple recipients email5212 is sent to the given recipient5213 behaves like it should show Gmail Actions View Merge request link5214 is expected to have body including "View Merge request"5215 behaves like it should have Gmail Actions links5216 is expected to have body including "ViewAction"5217 behaves like an unsubscribeable thread5218 has a List-Unsubscribe header in the correct format, and a body link5219 behaves like an unsubscribeable thread with incoming address without %{key}5220 has a List-Unsubscribe header in the correct format, and a body link5221 behaves like appearance header and footer enabled5222 contains header and footer5223 behaves like appearance header and footer not enabled5224 does not contain header and footer5225 #closed_merge_request_email5226 is sent as the author5227 has the correct subject and body5228 behaves like an answer to an existing thread with reply-by-email enabled5229 has X-GitLab-Project headers5230 has X-GitLab-*-ID header5231 has X-GitLab-*-IID header if model has iid defined5232 has X-GitLab-Project headers5233 has X-GitLab-*-ID header5234 has X-GitLab-*-IID header if model has iid defined5235 has the characteristics of a threaded reply5236 when reply-by-email is enabled with incoming address with %{key}5237 has a Reply-To header5238 when reply-by-email is enabled with incoming address without %{key}5239 has X-GitLab-Project headers5240 has X-GitLab-*-ID header5241 has X-GitLab-*-IID header if model has iid defined5242 has the characteristics of a threaded reply5243 has a Reply-To header5244 behaves like it should show Gmail Actions View Merge request link5245 is expected to have body including "View Merge request"5246 behaves like it should have Gmail Actions links5247 is expected to have body including "ViewAction"5248 behaves like an unsubscribeable thread5249 has a List-Unsubscribe header in the correct format, and a body link5250 behaves like an unsubscribeable thread with incoming address without %{key}5251 has a List-Unsubscribe header in the correct format, and a body link5252 behaves like appearance header and footer enabled5253 contains header and footer5254 behaves like appearance header and footer not enabled5255 does not contain header and footer5256 #merged_merge_request_email5257 is sent as the merge author5258 has the correct subject and body5259 behaves like a multiple recipients email5260 is sent to the given recipient5261 behaves like an answer to an existing thread with reply-by-email enabled5262 has X-GitLab-Project headers5263 has X-GitLab-*-ID header5264 has X-GitLab-*-IID header if model has iid defined5265 has X-GitLab-Project headers5266 has X-GitLab-*-ID header5267 has X-GitLab-*-IID header if model has iid defined5268 has the characteristics of a threaded reply5269 when reply-by-email is enabled with incoming address with %{key}5270 has a Reply-To header5271 when reply-by-email is enabled with incoming address without %{key}5272 has X-GitLab-Project headers5273 has X-GitLab-*-ID header5274 has X-GitLab-*-IID header if model has iid defined5275 has the characteristics of a threaded reply5276 has a Reply-To header5277 behaves like it should show Gmail Actions View Merge request link5278 is expected to have body including "View Merge request"5279 behaves like it should have Gmail Actions links5280 is expected to have body including "ViewAction"5281 behaves like an unsubscribeable thread5282 has a List-Unsubscribe header in the correct format, and a body link5283 behaves like an unsubscribeable thread with incoming address without %{key}5284 has a List-Unsubscribe header in the correct format, and a body link5285 behaves like appearance header and footer enabled5286 contains header and footer5287 behaves like appearance header and footer not enabled5288 does not contain header and footer5289 #merge_request_status_email5290 is sent as the author5291 has the correct subject and body5292 behaves like an answer to an existing thread with reply-by-email enabled5293 has X-GitLab-Project headers5294 has X-GitLab-*-ID header5295 has X-GitLab-*-IID header if model has iid defined5296 has X-GitLab-Project headers5297 has X-GitLab-*-ID header5298 has X-GitLab-*-IID header if model has iid defined5299 has the characteristics of a threaded reply5300 when reply-by-email is enabled with incoming address with %{key}5301 has a Reply-To header5302 when reply-by-email is enabled with incoming address without %{key}5303 has X-GitLab-Project headers5304 has X-GitLab-*-ID header5305 has X-GitLab-*-IID header if model has iid defined5306 has the characteristics of a threaded reply5307 has a Reply-To header5308 behaves like it should show Gmail Actions View Merge request link5309 is expected to have body including "View Merge request"5310 behaves like it should have Gmail Actions links5311 is expected to have body including "ViewAction"5312 behaves like an unsubscribeable thread5313 has a List-Unsubscribe header in the correct format, and a body link5314 behaves like an unsubscribeable thread with incoming address without %{key}5315 has a List-Unsubscribe header in the correct format, and a body link5316 behaves like appearance header and footer enabled5317 contains header and footer5318 behaves like appearance header and footer not enabled5319 does not contain header and footer5320 #merge_when_pipeline_succeeds_email5321 has required details5322 #approved_merge_request_email5323 has the correct body5324 #unapproved_merge_request_email5325 has the correct body5326 #resolved_all_discussions_email5327 includes the name of the resolver5328 #merge_requests_csv_email5329 is expected to eq "project846 | Exported merge requests"5330 is expected to contain exactly "notifications@example.com"5331 is expected to have text "Your CSV export of 10 merge requests from project"5332 is expected to have text "Your CSV export of 10 merge requests from project"5333 when truncated5334 is expected to have text "attachment has been truncated to avoid exceeding the maximum allowed attachment size of 15 MB."5335Projects::MergeRequests::DraftsController5336 GET #index5337 list merge request draft notes for current user5338 POST #create5339 creates a draft note5340 creates draft note with position5341 creates a draft note with quick actions5342 without permissions5343 does not allow draft note creation5344 in a thread5345 creates draft note as a reply5346 creates a draft note that will resolve a thread5347 cannot create more than one draft note per thread5348 commit_id is present5349 value is a commit sha5350 creates the draft note with commit ID5351 value is "undefined"5352 creates the draft note with nil commit ID5353 PUT #update5354 updates the draft5355 without permissions5356 does not allow editing draft note belonging to someone else5357 POST #publish5358 publishes draft notes with position5359 does nothing if there are no draft notes5360 publishes a draft note with quick actions and applies them5361 publishes all draft notes for an MR5362 can publish just a single draft note5363 without permissions5364 when note belongs to someone else5365 behaves like action that does not allow publishing draft note5366 does not allow publishing draft note5367 when merge request discussion is locked5368 behaves like action that does not allow publishing draft note5369 does not allow publishing draft note5370 when PublishService errors5371 returns message and 500 response5372 when publishing drafts in a thread5373 resolves a thread if the draft note resolves it5374 unresolves a thread if the draft note unresolves it5375 publish with note5376 when feature flag is disabled5377 does not create note5378 when feature flag is enabled5379 creates note5380 does not create note when note param is empty5381 DELETE #destroy5382 destroys the draft note when ID is given5383 without permissions5384 does not allow destroying a draft note belonging to someone else5385 without permissions5386 does not allow editing draft note belonging to someone else5387 DELETE #discard5388 deletes all DraftNotes belonging to a user in a Merge Request5389 without permissions5390 does not destroys a draft note belonging to someone else5391API::DebianGroupPackages5392 with invalid parameter5393 behaves like Debian packages GET request5394 returns bad_request and expected body5395 GET groups/:id/-/packages/debian/dists/*distribution/Release.gpg5396 behaves like Debian packages read endpoint5397 with valid container5398 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/5399 behaves like Debian packages GET request5400 returns success and expected body5401 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/5402 behaves like Debian packages GET request5403 returns success and expected body5404 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/5405 behaves like Debian packages GET request5406 returns success and expected body5407 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5408 behaves like Debian packages GET request5409 returns unauthorized5410 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/5411 behaves like Debian packages GET request5412 returns success and expected body5413 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5414 behaves like Debian packages GET request5415 returns unauthorized5416 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5417 behaves like Debian packages GET request5418 returns forbidden5419 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5420 behaves like Debian packages GET request5421 returns not_found5422 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5423 behaves like Debian packages GET request5424 returns unauthorized5425 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5426 behaves like Debian packages GET request5427 returns unauthorized5428 behaves like rejects Debian access with unknown container id5429 with an unknown container5430 as anonymous5431 behaves like Debian packages GET request5432 returns unauthorized5433 as authenticated user5434 behaves like Debian packages GET request5435 returns not_found5436 GET groups/:id/-/packages/debian/dists/*distribution/Release5437 behaves like Debian packages read endpoint5438 with valid container5439 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/5440 behaves like Debian packages GET request5441 returns success and expected body5442 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/5443 behaves like Debian packages GET request5444 returns success and expected body5445 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/5446 behaves like Debian packages GET request5447 returns success and expected body5448 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5449 behaves like Debian packages GET request5450 returns unauthorized5451 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/5452 behaves like Debian packages GET request5453 returns success and expected body5454 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5455 behaves like Debian packages GET request5456 returns unauthorized5457 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5458 behaves like Debian packages GET request5459 returns forbidden5460 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5461 behaves like Debian packages GET request5462 returns not_found5463 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5464 behaves like Debian packages GET request5465 returns unauthorized5466 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5467 behaves like Debian packages GET request5468 returns unauthorized5469 behaves like rejects Debian access with unknown container id5470 with an unknown container5471 as anonymous5472 behaves like Debian packages GET request5473 returns unauthorized5474 as authenticated user5475 behaves like Debian packages GET request5476 returns not_found5477 GET groups/:id/-/packages/debian/dists/*distribution/InRelease5478 behaves like Debian packages read endpoint5479 with valid container5480 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/5481 behaves like Debian packages GET request5482 returns success and expected body5483 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/5484 behaves like Debian packages GET request5485 returns success and expected body5486 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/5487 behaves like Debian packages GET request5488 returns success and expected body5489 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5490 behaves like Debian packages GET request5491 returns unauthorized5492 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/5493 behaves like Debian packages GET request5494 returns success and expected body5495 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5496 behaves like Debian packages GET request5497 returns unauthorized5498 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5499 behaves like Debian packages GET request5500 returns forbidden5501 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5502 behaves like Debian packages GET request5503 returns not_found5504 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5505 behaves like Debian packages GET request5506 returns unauthorized5507 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5508 behaves like Debian packages GET request5509 returns unauthorized5510 behaves like rejects Debian access with unknown container id5511 with an unknown container5512 as anonymous5513 behaves like Debian packages GET request5514 returns unauthorized5515 as authenticated user5516 behaves like Debian packages GET request5517 returns not_found5518 GET groups/:id/-/packages/debian/dists/*distribution/:component/binary-:architecture/Packages5519 behaves like Debian packages read endpoint5520 with valid container5521 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/5522 behaves like Debian packages GET request5523 returns success and expected body5524 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/5525 behaves like Debian packages GET request5526 returns success and expected body5527 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/5528 behaves like Debian packages GET request5529 returns success and expected body5530 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5531 behaves like Debian packages GET request5532 returns unauthorized5533 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/5534 behaves like Debian packages GET request5535 returns success and expected body5536 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5537 behaves like Debian packages GET request5538 returns unauthorized5539 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5540 behaves like Debian packages GET request5541 returns forbidden5542 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5543 behaves like Debian packages GET request5544 returns not_found5545 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5546 behaves like Debian packages GET request5547 returns unauthorized5548 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5549 behaves like Debian packages GET request5550 returns unauthorized5551 behaves like rejects Debian access with unknown container id5552 with an unknown container5553 as anonymous5554 behaves like Debian packages GET request5555 returns unauthorized5556 as authenticated user5557 behaves like Debian packages GET request5558 returns not_found5559 GET groups/:id/-/packages/debian/pool/:codename/:project_id/:letter/:package_name/:package_version/:file_name5560 file_name: "sample_1.2.3~alpha2.tar.xz", success_body: /^.7zXZ/5561 behaves like Debian packages read endpoint5562 with valid container5563 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/5564 behaves like Debian packages GET request5565 returns success and expected body5566 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/5567 behaves like Debian packages GET request5568 returns success and expected body5569 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/5570 behaves like Debian packages GET request5571 returns success and expected body5572 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5573 behaves like Debian packages GET request5574 returns unauthorized5575 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/5576 behaves like Debian packages GET request5577 returns success and expected body5578 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5579 behaves like Debian packages GET request5580 returns unauthorized5581 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5582 behaves like Debian packages GET request5583 returns forbidden5584 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5585 behaves like Debian packages GET request5586 returns not_found5587 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5588 behaves like Debian packages GET request5589 returns unauthorized5590 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5591 behaves like Debian packages GET request5592 returns unauthorized5593 behaves like rejects Debian access with unknown container id5594 with an unknown container5595 as anonymous5596 behaves like Debian packages GET request5597 returns unauthorized5598 as authenticated user5599 behaves like Debian packages GET request5600 returns not_found5601 file_name: "sample_1.2.3~alpha2.dsc", success_body: /^Format: 3.0 \(native\)/5602 behaves like Debian packages read endpoint5603 with valid container5604 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/5605 behaves like Debian packages GET request5606 returns success and expected body5607 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/5608 behaves like Debian packages GET request5609 returns success and expected body5610 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/5611 behaves like Debian packages GET request5612 returns success and expected body5613 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5614 behaves like Debian packages GET request5615 returns unauthorized5616 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/5617 behaves like Debian packages GET request5618 returns success and expected body5619 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5620 behaves like Debian packages GET request5621 returns unauthorized5622 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5623 behaves like Debian packages GET request5624 returns forbidden5625 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5626 behaves like Debian packages GET request5627 returns not_found5628 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5629 behaves like Debian packages GET request5630 returns unauthorized5631 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5632 behaves like Debian packages GET request5633 returns unauthorized5634 behaves like rejects Debian access with unknown container id5635 with an unknown container5636 as anonymous5637 behaves like Debian packages GET request5638 returns unauthorized5639 as authenticated user5640 behaves like Debian packages GET request5641 returns not_found5642 file_name: "libsample0_1.2.3~alpha2_amd64.deb", success_body: /^!<arch>/5643 behaves like Debian packages read endpoint5644 with valid container5645 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5646 behaves like Debian packages GET request5647 returns success and expected body5648 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5649 behaves like Debian packages GET request5650 returns success and expected body5651 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5652 behaves like Debian packages GET request5653 returns success and expected body5654 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5655 behaves like Debian packages GET request5656 returns unauthorized5657 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5658 behaves like Debian packages GET request5659 returns success and expected body5660 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5661 behaves like Debian packages GET request5662 returns unauthorized5663 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5664 behaves like Debian packages GET request5665 returns forbidden5666 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5667 behaves like Debian packages GET request5668 returns not_found5669 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5670 behaves like Debian packages GET request5671 returns unauthorized5672 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5673 behaves like Debian packages GET request5674 returns unauthorized5675 behaves like rejects Debian access with unknown container id5676 with an unknown container5677 as anonymous5678 behaves like Debian packages GET request5679 returns unauthorized5680 as authenticated user5681 behaves like Debian packages GET request5682 returns not_found5683 file_name: "sample-udeb_1.2.3~alpha2_amd64.udeb", success_body: /^!<arch>/5684 behaves like Debian packages read endpoint5685 with valid container5686 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5687 behaves like Debian packages GET request5688 returns success and expected body5689 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5690 behaves like Debian packages GET request5691 returns success and expected body5692 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5693 behaves like Debian packages GET request5694 returns success and expected body5695 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5696 behaves like Debian packages GET request5697 returns unauthorized5698 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/5699 behaves like Debian packages GET request5700 returns success and expected body5701 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5702 behaves like Debian packages GET request5703 returns unauthorized5704 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5705 behaves like Debian packages GET request5706 returns forbidden5707 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5708 behaves like Debian packages GET request5709 returns not_found5710 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5711 behaves like Debian packages GET request5712 returns unauthorized5713 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5714 behaves like Debian packages GET request5715 returns unauthorized5716 behaves like rejects Debian access with unknown container id5717 with an unknown container5718 as anonymous5719 behaves like Debian packages GET request5720 returns unauthorized5721 as authenticated user5722 behaves like Debian packages GET request5723 returns not_found5724 file_name: "sample_1.2.3~alpha2_amd64.buildinfo", success_body: /Build-Tainted-By/5725 behaves like Debian packages read endpoint5726 with valid container5727 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/5728 behaves like Debian packages GET request5729 returns success and expected body5730 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/5731 behaves like Debian packages GET request5732 returns success and expected body5733 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/5734 behaves like Debian packages GET request5735 returns success and expected body5736 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5737 behaves like Debian packages GET request5738 returns unauthorized5739 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/5740 behaves like Debian packages GET request5741 returns success and expected body5742 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5743 behaves like Debian packages GET request5744 returns unauthorized5745 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5746 behaves like Debian packages GET request5747 returns forbidden5748 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5749 behaves like Debian packages GET request5750 returns not_found5751 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5752 behaves like Debian packages GET request5753 returns unauthorized5754 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5755 behaves like Debian packages GET request5756 returns unauthorized5757 behaves like rejects Debian access with unknown container id5758 with an unknown container5759 as anonymous5760 behaves like Debian packages GET request5761 returns unauthorized5762 as authenticated user5763 behaves like Debian packages GET request5764 returns not_found5765 file_name: "sample_1.2.3~alpha2_amd64.changes", success_body: /urgency=medium/5766 behaves like Debian packages read endpoint5767 with valid container5768 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/5769 behaves like Debian packages GET request5770 returns success and expected body5771 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/5772 behaves like Debian packages GET request5773 returns success and expected body5774 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/5775 behaves like Debian packages GET request5776 returns success and expected body5777 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5778 behaves like Debian packages GET request5779 returns unauthorized5780 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/5781 behaves like Debian packages GET request5782 returns success and expected body5783 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil5784 behaves like Debian packages GET request5785 returns unauthorized5786 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil5787 behaves like Debian packages GET request5788 returns forbidden5789 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil5790 behaves like Debian packages GET request5791 returns not_found5792 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5793 behaves like Debian packages GET request5794 returns unauthorized5795 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil5796 behaves like Debian packages GET request5797 returns unauthorized5798 behaves like rejects Debian access with unknown container id5799 with an unknown container5800 as anonymous5801 behaves like Debian packages GET request5802 returns unauthorized5803 as authenticated user5804 behaves like Debian packages GET request5805 returns not_found5806Updating the package settings5807 post graphql mutation5808 with existing package settings5809 user_role: :maintainer, shared_examples_name: "accepting the mutation request updating the package settings"5810 behaves like accepting the mutation request updating the package settings5811 behaves like updating the namespace package setting attributes5812 updates the namespace package setting5813 behaves like not creating the namespace package setting5814 doesn't create the namespace package setting5815 behaves like returning a success5816 returns the updated package settings5817 behaves like returning response status5818 returns success5819 behaves like rejecting invalid regex5820 for field mavenDuplicateExceptionRegex5821 returns an error5822 behaves like returning response status5823 returns success5824 behaves like not creating the namespace package setting5825 doesn't create the namespace package setting5826 user_role: :developer, shared_examples_name: "denying the mutation request"5827 behaves like denying the mutation request5828 returns no response5829 behaves like not creating the namespace package setting5830 doesn't create the namespace package setting5831 behaves like returning response status5832 returns success5833 user_role: :reporter, shared_examples_name: "denying the mutation request"5834 behaves like denying the mutation request5835 returns no response5836 behaves like not creating the namespace package setting5837 doesn't create the namespace package setting5838 behaves like returning response status5839 returns success5840 user_role: :guest, shared_examples_name: "denying the mutation request"5841 behaves like denying the mutation request5842 returns no response5843 behaves like not creating the namespace package setting5844 doesn't create the namespace package setting5845 behaves like returning response status5846 returns success5847 user_role: :anonymous, shared_examples_name: "denying the mutation request"5848 behaves like denying the mutation request5849 returns no response5850 behaves like not creating the namespace package setting5851 doesn't create the namespace package setting5852 behaves like returning response status5853 returns success5854 without existing package settings5855 user_role: :maintainer, shared_examples_name: "accepting the mutation request creating the package settings"5856 behaves like accepting the mutation request creating the package settings5857 behaves like creating the namespace package setting5858 creates a new package setting5859 saves the settings5860 behaves like returning a success5861 returns the updated package settings5862 behaves like returning response status5863 returns success5864 behaves like returning a success5865 returns the updated package settings5866 behaves like returning response status5867 returns success5868 behaves like rejecting invalid regex5869 for field mavenDuplicateExceptionRegex5870 returns an error5871 behaves like returning response status5872 returns success5873 behaves like not creating the namespace package setting5874 doesn't create the namespace package setting5875 user_role: :developer, shared_examples_name: "denying the mutation request"5876 behaves like denying the mutation request5877 returns no response5878 behaves like not creating the namespace package setting5879 doesn't create the namespace package setting5880 behaves like returning response status5881 returns success5882 user_role: :reporter, shared_examples_name: "denying the mutation request"5883 behaves like denying the mutation request5884 returns no response5885 behaves like not creating the namespace package setting5886 doesn't create the namespace package setting5887 behaves like returning response status5888 returns success5889 user_role: :guest, shared_examples_name: "denying the mutation request"5890 behaves like denying the mutation request5891 returns no response5892 behaves like not creating the namespace package setting5893 doesn't create the namespace package setting5894 behaves like returning response status5895 returns success5896 user_role: :anonymous, shared_examples_name: "denying the mutation request"5897 behaves like denying the mutation request5898 returns no response5899 behaves like not creating the namespace package setting5900 doesn't create the namespace package setting5901 behaves like returning response status5902 returns success5903Projects::BlobController5904 GET show5905 with file path5906 valid branch, valid file5907 is expected to respond with 2005908 valid branch, invalid file5909 redirects5910 invalid branch, valid file5911 is expected to respond with 4045912 renamed default branch, valid file5913 is expected to redirect to "/namespace855/project882/-/blob/master/README.md"5914 renamed default branch, invalid file5915 is expected to redirect to "/namespace856/project883/-/blob/master/invalid-path.rb"5916 binary file5917 is expected to respond with 2005918 Markdown file5919 is expected to respond with 2005920 with file path and JSON format5921 valid branch, valid file5922 is expected to have key "raw_path"5923 with viewer=none5924 is expected to have key "raw_path"5925 with tree path5926 redirect to tree5927 redirects5928 GET diff5929 when essential params are missing5930 renders nothing5931 when essential params are present5932 when rendering for commit5933 renders the diff content5934 when rendering for merge request5935 renders diff context lines Gitlab::Diff::Line array5936 handles full being true5937 GET edit5938 anonymous5939 redirects to sign in and returns5940 as guest5941 redirects to blob show5942 as developer5943 redirects to blob show5944 as maintainer5945 redirects to blob show5946 PUT update5947 redirects to blob5948 ?from_merge_request_iid5949 redirects to MR diff5950 when user doesn't have access5951 redirects to blob5952 when user has forked project5953 when editing on the fork5954 redirects to blob5955 when editing on the original repository5956 redirects to forked project new merge request5957 behaves like tracking unique hll events5958 tracks unique event5959 DELETE destroy5960 for a file in a subdirectory5961 redirects to the sub directory5962 when a validation failure occurs5963 redirects to a valid page5964 if deleted file is the last one in a subdirectory5965 redirects to the project root5966 when deleting a file in a branch other than master5967 redirects to the project root of the branch5968 POST preview5969 is successful5970 POST create5971 redirects to blob5972 behaves like tracking unique hll events5973 tracks unique event5974Projects::SnippetsController5975 GET #index5976 fetches snippet counts via the snippet count service5977 behaves like paginated collection5978DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)5979 renders a page number that is not ouf of range5980DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)5981 redirects to last_page if page number is larger than number of pages5982DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)5983 does not redirect to external sites when provided a host field5984 behaves like snippets sort order5985 when no sort param is provided5986 calls SnippetsFinder with updated_at sort option5987 when sort param is provided5988 calls SnippetsFinder with the given sort param5989 behaves like snippets views5990 when rendered5991DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)5992DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)5993DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)5994 avoids N+1 database queries5995 when the project snippet is private5996 when anonymous5997DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)5998 does not include the private snippet5999 when signed in as the author6000DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)6001 renders the snippet6002 when signed in as a project member6003DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from snippet_counts at /builds/gitlab-org/gitlab/app/services/snippets/count_service.rb:73)6004 renders the snippet6005 POST #mark_as_spam6006 updates the snippet6007 GET #show6008 when the project snippet is private6009 when anonymous6010 responds with status 4046011 when signed in as the author6012 behaves like successful response6013 renders the snippet6014 when signed in as a project member6015 behaves like successful response6016 renders the snippet6017 when the project snippet does not exist6018 when anonymous6019 responds with status 4046020 when signed in6021 responds with status 4046022 when the project snippet is public6023 when attempting to access from a different project route6024 responds with status 4046025 GET #raw6026 when the project snippet is private6027 when anonymous6028 responds with status 4046029 when signed in as the author6030 behaves like successful response6031 renders the snippet6032 when signed in as a project member6033 behaves like successful response6034 renders the snippet6035 when the project snippet does not exist6036 when anonymous6037 responds with status 4046038 when signed in6039 responds with status 4046040 when the project snippet is public6041 when attempting to access from a different project route6042 responds with status 4046043 GET #show for embeddable content6044 when snippet is private6045 responds with status 4046046 when snippet is public6047 renders the blob from the repository6048 does not show the blobs expanded by default6049 when param expanded is set6050 shows all blobs expanded6051 when the project is private6052 when snippet is public6053 responds with status 4046054 GET #raw6055 when repository is empty6056 CRLF line ending6057 returns LF line endings by default6058 when line_ending parameter present6059 does not convert line endings6060 when repository is not empty6061 sends the blob6062 behaves like project cache control headers6063 when project is public6064 returns cache_control public header to true6065 when project is private6066 returns cache_control public header to true6067 when project is internal6068 returns cache_control public header to true6069 behaves like content disposition headers6070 sets content disposition to inline6071 when inline param is false6072 sets content disposition to attachment6073Projects::WebIdeTerminalsController6074 GET show6075 behaves like terminal access rights6076 with admin6077 when admin mode is enabled6078 returns 2006079 when admin mode is disabled6080 returns 4046081 with owner6082 returns 2006083 with maintainer6084 returns 2006085 with developer6086 returns 4046087 with reporter6088 returns 4046089 with guest6090 returns 4046091 with non member6092 returns 4046093 behaves like when pipeline is not from a webide source6094 with admin6095 returns 4046096 POST check_config6097 behaves like terminal access rights6098 with admin6099 when admin mode is enabled6100 returns 2006101 when admin mode is disabled6102 returns 4046103 with owner6104 returns 2006105 with maintainer6106 returns 2006107 with developer6108 returns 4046109 with reporter6110 returns 4046111 with guest6112 returns 4046113 with non member6114 returns 4046115 when invalid config file6116 returns 4226117 POST create6118 when terminal job is created successfully6119 increases the web ide terminal counter6120 access rights6121 behaves like terminal access rights6122 with admin6123 when admin mode is enabled6124 returns 2006125 when admin mode is disabled6126 returns 4046127 with owner6128 returns 2006129 with maintainer6130 returns 2006131 with developer6132 returns 4046133 with reporter6134 returns 4046135 with guest6136 returns 4046137 with non member6138 returns 4046139 when branch does not exist6140 returns 4006141 behaves like web ide terminal usage counter6142 does not increase6143 when there is an error creating the job6144 returns 4006145 behaves like web ide terminal usage counter6146 does not increase6147 when the current build is nil6148 returns 4006149 behaves like web ide terminal usage counter6150 does not increase6151 POST cancel6152 behaves like terminal access rights6153 with admin6154 when admin mode is enabled6155 returns 2006156 when admin mode is disabled6157 returns 4046158 with owner6159 returns 2006160 with maintainer6161 returns 2006162 with developer6163 returns 4046164 with reporter6165 returns 4046166 with guest6167 returns 4046168 with non member6169 returns 4046170 behaves like when pipeline is not from a webide source6171 with admin6172 returns 4046173 when job is not cancelable6174 returns 4226175 POST retry6176 behaves like terminal access rights6177 with admin6178 when admin mode is enabled6179 returns 2006180 when admin mode is disabled6181 returns 4046182 with owner6183 returns 2006184 with maintainer6185 returns 2006186 with developer6187 returns 4046188 with reporter6189 returns 4046190 with guest6191 returns 4046192 with non member6193 returns 4046194 behaves like when pipeline is not from a webide source6195 with admin6196 returns 4046197 when job is not retryable6198 returns 4226199 when job is cancelled6200 returns 2006201 when job fails6202 returns 2006203 when job is successful6204 returns 2006205API::Unleash6206 GET /feature_flags/unleash/:project_id/features6207 behaves like authenticated request6208 when using instance id6209 responds with OK6210 when repository is disabled6211 responds with forbidden6212 when repository is private6213 responds with OK6214 when using header6215 responds with OK6216 when using bogus instance id6217 responds with unauthorized6218 when using not existing project6219 responds with unauthorized6220 with version 2 feature flags6221 does not return a flag without any strategies6222 returns a flag with a default strategy6223 returns a flag with a userWithId strategy6224 returns a flag with multiple strategies6225 returns only flags matching the environment scope6226 returns only strategies matching the environment scope6227 returns only flags for the given project6228 returns all strategies with a matching scope6229 returns a strategy with more than one matching scope6230 returns a disabled flag with a matching scope6231 returns a userWithId strategy for a gitlabUserList strategy6232 GET /feature_flags/unleash/:project_id/client/features6233 behaves like authenticated request6234 when using instance id6235 responds with OK6236 when repository is disabled6237 responds with forbidden6238 when repository is private6239 responds with OK6240 when using header6241 responds with OK6242 when using bogus instance id6243 responds with unauthorized6244 when using not existing project6245 responds with unauthorized6246 with version 2 feature flags6247 does not return a flag without any strategies6248 returns a flag with a default strategy6249 returns a flag with a userWithId strategy6250 returns a flag with multiple strategies6251 returns only flags matching the environment scope6252 returns only strategies matching the environment scope6253 returns only flags for the given project6254 returns all strategies with a matching scope6255 returns a strategy with more than one matching scope6256 returns a disabled flag with a matching scope6257 returns a userWithId strategy for a gitlabUserList strategy6258 POST /feature_flags/unleash/:project_id/client/register6259 behaves like authenticated request6260 when using instance id6261 responds with OK6262 when repository is disabled6263 responds with forbidden6264 when repository is private6265 responds with OK6266 when using header6267 responds with OK6268 when using bogus instance id6269 responds with unauthorized6270 when using not existing project6271 responds with unauthorized6272 POST /feature_flags/unleash/:project_id/client/metrics6273 behaves like authenticated request6274 when using instance id6275 responds with OK6276 when repository is disabled6277 responds with forbidden6278 when repository is private6279 responds with OK6280 when using header6281 responds with OK6282 when using bogus instance id6283 responds with unauthorized6284 when using not existing project6285 responds with unauthorized6286Projects::CommitsController6287 signed in6288 GET commits_root6289 no ref is provided6290 redirects to the default branch of the project6291 GET show6292 with file path6293 valid branch, valid file6294 is expected to respond with 2006295 valid branch, invalid file6296 is expected to respond with 4046297 invalid branch, valid file6298 is expected to respond with 4046299 branch with invalid format, valid file6300 is expected to respond with 4046301 with an invalid limit6302 uses the default limit6303 when limit is a hash6304 uses the default limit6305 when the ref name ends in .atom6306 when the ref does not exist with the suffix6307 renders as atom6308 renders summary with type=html6309 when the ref exists with the suffix6310 renders as HTML6311 when the ref does not exist6312 returns 404 page6313 with markdown cache6314 preloads markdown cache for commits6315 GET /commits/:id/signatures6316 valid branch6317 is expected to respond with 2006318 invalid branch format6319 is expected to respond with 4046320API::ProtectedTags6321 GET /projects/:id/protected_tags6322 when authenticated as a maintainer6323 behaves like protected tags6324 returns the protected tags6325 when authenticated as a guest6326 behaves like 403 response6327 returns 4036328 GET /projects/:id/protected_tags/:tag6329 when authenticated as a maintainer6330 behaves like protected tag6331 returns the protected tag6332 when protected tag does not exist6333 behaves like 404 response6334 returns 4046335 when protected tag contains a wildcard6336 behaves like protected tag6337 returns the protected tag6338 when protected tag does not exist6339 behaves like 404 response6340 returns 4046341 when authenticated as a guest6342 behaves like 403 response6343 returns 4036344 POST /projects/:id/protected_tags6345 when authenticated as a maintainer6346 protects a single tag with maintainers can create tags6347 protects a single tag with developers can create tags6348 protects a single tag with no one can create tags6349 returns a 422 error if the same tag is protected twice6350 returns 201 if the same tag is proteted on different projects6351 when tag has a wildcard in its name6352 protects multiple tags with a wildcard in the name6353 when authenticated as a guest6354 returns a 403 error if guest6355 DELETE /projects/:id/protected_tags/unprotect/:tag6356 unprotects a single tag6357 returns 404 if tag does not exist6358 behaves like 412 response6359 for a modified ressource6360 returns 412 with a JSON error6361 for an unmodified ressource6362 returns 204 with an empty body6363 when tag has a wildcard in its name6364 unprotects a wildcard tag6365API::FeatureFlags6366 GET /projects/:id/feature_flags6367 when there are two feature flags6368 returns feature flags ordered by name6369 returns the legacy flag version6370 does not have N+1 problem6371 behaves like check user permission6372 when user is reporter6373 forbids the request6374 with version 2 feature flags6375 returns the feature flags6376 GET /projects/:id/feature_flags/:name6377 when there is a feature flag6378 returns a feature flag entry6379 behaves like check user permission6380 when user is reporter6381 forbids the request6382 with a version 2 feature_flag6383 returns the feature flag6384 POST /projects/:id/feature_flags6385 creates a new feature flag6386 defaults to a version 2 (new) feature flag6387 returns version6388 behaves like check user permission6389 when user is reporter6390 forbids the request6391 when there is a feature flag with the same name already6392 fails to create a new feature flag6393 when creating a version 2 feature flag6394 creates a new feature flag6395 creates a new feature flag that is inactive6396 creates a new feature flag with strategies6397 creates a new feature flag with gradual rollout strategy with scopes6398 creates a new feature flag with flexible rollout strategy with scopes6399 when given invalid parameters6400 responds with a 400 when given an invalid version6401 PUT /projects/:id/feature_flags/:name6402 with a version 2 feature flag6403 returns a 404 if the feature flag does not exist6404 forbids a request for a reporter6405 returns an error for an invalid update of gradual rollout6406 returns an error for an invalid update of flexible rollout6407 updates the feature flag6408 updates the flag active value6409 updates the feature flag name6410 ignores a provided version parameter6411 returns the feature flag json6412 updates an existing feature flag strategy to be gradual rollout strategy6413 updates an existing feature flag strategy to be flexible rollout strategy6414 adds a new gradual rollout strategy to a feature flag6415 adds a new gradual flexible strategy to a feature flag6416 deletes a feature flag strategy6417 updates an existing feature flag scope6418 deletes an existing feature flag scope6419 DELETE /projects/:id/feature_flags/:name6420 destroys the feature flag6421 returns version6422 with a version 2 feature flag6423 destroys the flag6424Projects::TagsController6425 GET index6426 returns the tags for the page6427 returns releases matching those tags6428 default sort for tags6429 sorts tags by recently updated6430 when Gitaly is unavailable6431 format: :html6432 returns 503 status code6433 format: :atom6434 returns 503 status code6435 @tag_pipeline_status6436 when no pipelines exist6437 is empty6438 when multiple tags exist6439 all relevant commit statuses are received6440 when a tag has multiple pipelines6441 chooses the latest to determine status6442 GET show6443 valid tag6444 is expected to respond with 2006445 invalid tag6446 is expected to respond with 4046447 POST #create6448 creates tag6449 when release description is set6450 creates tag and release6451 passes the last pipeline for evidence creation6452 DELETE #destroy6453 deletes tag and redirects to tags path6454Getting Metrics Dashboard6455 with metrics_dashboard_exhaustive_validations feature flag off6456 for anonymous user6457 requested dashboard is available6458 returns nil6459 behaves like a working graphql query6460 returns a successful response6461 for user with developer access6462 requested dashboard is available6463 returns metrics dashboard6464 behaves like a working graphql query6465 returns a successful response6466 invalid dashboard6467DEPRECATION WARNING: Enumerating ActiveModel::Errors as a hash has been deprecated.6468In Rails 6.1, `errors` is an array of Error objects,6469therefore it should be accessed by a block with a single block6470parameter like this:6471person.errors.each do |error|6472 attribute = error.attribute6473 message = error.message6474end6475You are passing a block expecting two parameters,6476so the old hash behavior is simulated. As this is deprecated,6477this will result in an ArgumentError in Rails 6.2.6478 (called from map at /builds/gitlab-org/gitlab/app/models/performance_monitoring/prometheus_dashboard.rb:63)6479 returns metrics dashboard6480 empty dashboard6481DEPRECATION WARNING: Enumerating ActiveModel::Errors as a hash has been deprecated.6482In Rails 6.1, `errors` is an array of Error objects,6483therefore it should be accessed by a block with a single block6484parameter like this:6485person.errors.each do |error|6486 attribute = error.attribute6487 message = error.message6488end6489You are passing a block expecting two parameters,6490so the old hash behavior is simulated. As this is deprecated,6491this will result in an ArgumentError in Rails 6.2.6492 (called from map at /builds/gitlab-org/gitlab/app/models/performance_monitoring/prometheus_dashboard.rb:63)6493 returns metrics dashboard6494 requested dashboard can not be found6495 returns nil6496 behaves like a working graphql query6497 returns a successful response6498 with metrics_dashboard_exhaustive_validations feature flag on6499 for anonymous user6500 requested dashboard is available6501 returns nil6502 behaves like a working graphql query6503 returns a successful response6504 for user with developer access6505 requested dashboard is available6506 returns metrics dashboard6507 behaves like a working graphql query6508 returns a successful response6509 invalid dashboard6510 returns metrics dashboard6511 empty dashboard6512 returns metrics dashboard6513 requested dashboard can not be found6514 returns nil6515 behaves like a working graphql query6516 returns a successful response6517Projects::LabelsController6518 GET #index6519 @prioritized_labels6520 does not include labels without priority6521 is sorted by priority, then label title6522 @labels6523 is sorted by label title6524 does not include labels with priority6525 does not include group labels when project does not belong to a group6526 with subgroups6527 returns ancestor group labels6528 with views rendered6529 avoids N+1 queries6530 POST #generate6531 personal project6532 creates labels6533 project belonging to a group6534 creates labels6535 POST #toggle_subscription6536 allows user to toggle subscription on project labels6537 allows user to toggle subscription on group labels6538 POST #promote6539 not group reporters6540 denies access6541 group reporter6542 gives access6543 promotes the label6544 renders label name without parsing it as HTML6545 service raising InvalidRecord6546 returns to label list6547 #ensure_canonical_path6548 for a GET request6549 when requesting the canonical path6550 non-show path6551 with exactly matching casing6552 does not redirect6553 with different casing6554 redirects to the correct casing6555 when requesting a redirected path6556 redirects to the canonical path6557 with an AJAX request6558 redirects to the canonical path but does not set flash message6559 with JSON format6560 redirects to the canonical path but does not set flash message6561 for a non-GET request6562 when requesting the canonical path with different casing6563 does not 4046564 does not redirect to the correct casing6565 when requesting a redirected path6566 returns not found6567nuget package details6568DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6569DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6570 has the correct metadata6571DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6572DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6573 has dependency links6574DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6575DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6576 avoids N+1 queries6577 behaves like a package detail6578 behaves like a working graphql query6579DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6580DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6581 returns a successful response6582 behaves like matching the package details schema6583DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6584DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6585 matches the JSON schema6586 with pipelines6587 behaves like a working graphql query6588DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6589DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6590 returns a successful response6591 behaves like matching the package details schema6592DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6593DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6594 matches the JSON schema6595 behaves like a package with files6596DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6597DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6598 has the right amount of files6599DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6600DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6601 has the basic package files data6602 with package files pending destruction6603DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6604DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.6605 does not return them6606MetricsDashboard6607 GET #metrics_dashboard6608 when no parameters are provided6609 returns an error json_response6610 when params are provided6611 returns the specified dashboard6612 when the params are in an alternate format6613 returns the specified dashboard6614 when environment for dashboard is available6615 returns the specified dashboard6616 when dashboard path includes encoded characters6617 decodes dashboard path6618 when parameters are provided and the list of all dashboards is required6619 returns a dashboard in addition to the list of dashboards6620 in all_dashboard list6621 includes project_blob_path only for project dashboards6622 allows editing only for project dashboards6623 includes out_of_the_box_dashboard key6624 project permissions6625 can_collaborate: false, system_can_edit: false, project_can_edit: false6626 sets can_edit appropriately6627 can_collaborate: true, system_can_edit: false, project_can_edit: true6628 sets can_edit appropriately6629 starred dashboards6630 adds starred dashboard information and sorts the list6631GraphQL6632 logging6633 with no variables6634 behaves like logging a graphql query6635 logs a query with the expected params6636 does not instantiate any query analyzers6637 with variables6638 behaves like logging a graphql query6639 logs a query with the expected params6640 does not instantiate any query analyzers6641 when there is an error in the logger6642 logs the exception in Sentry and continues with the request6643 when executing mutations6644 with POST6645 succeeds6646 with variables6647 succeeds6648 with GET6649 fails6650 with variables6651 fails6652 when executing queries6653 with POST6654 succeeds6655 with GET6656 succeeds6657 when selecting a query by operation name6658 with POST6659 succeeds when selecting the query6660 succeeds when selecting the mutation6661 with GET6662 succeeds when selecting the query6663 fails when selecting the mutation6664 when batching mutations and queries6665 with POST6666 succeeds6667 with GET6668 fails with a helpful error message6669 with invalid variables6670 returns an error6671 authentication6672 allows access to public data without authentication6673 does not authenticate a user with an invalid CSRF6674 authenticates a user with a valid session token6675 with token authentication6676 authenticates users with a PAT6677 prevents access by deactived users6678 when user with expired password6679 does not authenticate user6680 when password expiration is not applicable6681 when ldap user6682 authenticates user6683 when the personal access token has no api scope6684 does not log the user in6685 testing for Gitaly calls6686 behaves like a working graphql query6687 returns a successful response6688 when Gitaly is called6689 logs a warning that the 'calls_gitaly' field declaration is missing6690 resolver complexity6691 when fetching single resource6692 processes the query6693 when fetching too many resources6694 returns an error6695 complexity limits6696 unauthenticated user6697 raises a complexity error6698 authenticated user6699 does not raise an error as it uses the `AUTHENTICATED_MAX_COMPLEXITY`6700 keyset pagination6701 when new_graphql_keyset_pagination feature flag is off6702 paginates datetimes correctly when they have millisecond data6703 when new_graphql_keyset_pagination feature flag is on6704 paginates datetimes correctly when they have millisecond data6705Adding an AwardEmoji6706 when the user does not have permission6707 behaves like a mutation that does not create an AwardEmoji6708 is expected not to change `AwardEmoji.count`6709 behaves like a mutation that returns a top-level access error6710 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"6711 when the user has permission6712 when the given awardable is not an Awardable6713 behaves like a mutation that does not create an AwardEmoji6714 is expected not to change `AwardEmoji.count`6715 behaves like a mutation that returns top-level errors6716 is expected to include /was provided invalid value for awardableId/6717 when the given awardable is an Awardable but still cannot be awarded an emoji6718 behaves like a mutation that does not create an AwardEmoji6719 is expected not to change `AwardEmoji.count`6720 behaves like a mutation that returns top-level errors6721 is expected to contain exactly "You cannot award emoji to this resource."6722 when the given awardable is an Awardable6723 creates an emoji6724 returns the emoji6725 marking Todos as done6726 type: :issue, expectation: true6727 is expected to eq true6728 type: :merge_request, expectation: true6729 is expected to eq true6730 type: :project_snippet, expectation: false6731 is expected to eq false6732 for notes6733 regular Notes6734 marks the Todo as done6735 PersonalSnippet Notes6736 does not mark the Todo as done6737 when there were active record validation errors6738 returns an empty awardEmoji6739 behaves like a mutation that does not create an AwardEmoji6740 is expected not to change `AwardEmoji.count`6741 behaves like a mutation that returns errors in the response6742 is expected to contain exactly "Error 1" and "Error 2"6743Gitlab::SidekiqCluster::CLI6744 #run6745 without any arguments6746 raises CommandError6747 with arguments6748 starts the Sidekiq workers6749 allows the special * selector6750 raises an error when the arguments contain newlines6751 with --negate flag6752 starts Sidekiq workers for all queues in all_queues.yml except the ones in argv6753 with --max-concurrency flag6754 starts Sidekiq workers for specified queues with a max concurrency6755 with --min-concurrency flag6756 starts Sidekiq workers for specified queues with a min concurrency6757 with --timeout flag6758 when given6759 when not given6760 with --list-queues flag6761 errors when given --list-queues and --dryrun6762 prints out a list of queues in alphabetical order6763 queue namespace expansion6764 starts Sidekiq workers for all queues in all_queues.yml with a namespace in argv6765 with --queue-selector6766 expands multiple queue groups correctly6767 allows the special * selector6768 errors when the selector matches no queues6769 errors on an invalid query multiple queue groups correctly6770 memory-bound queues6771 expands queues by attributes6772 works when negated6773 memory- or CPU-bound queues6774 expands queues by attributes6775 works when negated6776 high urgency CI queues6777 expands queues by attributes6778 works when negated6779 CPU-bound high urgency CI queues6780 expands queues by attributes6781 works when negated6782 CPU-bound high urgency non-CI queues6783 expands queues by attributes6784 works when negated6785 CI and SCM queues6786 expands queues by attributes6787 works when negated6788 metrics server6789 starting the server6790 without --dryrun6791 wipes the metrics directory before starting workers6792 when sidekiq_exporter is not set up6793 does not start a sidekiq metrics server6794 with missing sidekiq_exporter setting6795 does not start a sidekiq metrics server6796 does not throw an error6797 when sidekiq_exporter is disabled6798 does not start a sidekiq metrics server6799 when sidekiq_exporter is enabled6800 starts the metrics server6801 when a PID is specified6802 writes the PID to a file6803 when no PID is specified6804 does not write a PID6805 with --dryrun set6806bundle exec sidekiq -c2 -etest -t25 -gqueues:foo -r/builds/gitlab-org/gitlab -qfoo,16807 does not start the server6808 supervising the cluster6809 stops the entire process cluster if one of the workers has been terminated6810 restarts the metrics server when it is down6811Destroying a Snippet6812 PersonalSnippet6813 behaves like graphql delete actions6814 when the user does not have permission6815 does not destroy the Snippet6816 behaves like a mutation that returns top-level errors6817 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"6818 when the user has permission6819 destroys the Snippet6820 returns an empty Snippet6821 when a bad gid is given6822 returns an error6823 does not destroy the Snippet6824 does not destroy the Project6825 behaves like when the snippet is not found6826 behaves like a mutation that returns top-level errors6827 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"6828 ProjectSnippet6829 when the author is not a member of the project6830 returns an an error6831 when the author is a member of the project6832 behaves like graphql delete actions6833 when the user does not have permission6834 does not destroy the Snippet6835 behaves like a mutation that returns top-level errors6836 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"6837 when the user has permission6838 destroys the Snippet6839 returns an empty Snippet6840 when a bad gid is given6841 returns an error6842 does not destroy the Snippet6843 does not destroy the Project6844 when the snippet project feature is disabled6845 returns an an error6846 behaves like when the snippet is not found6847 behaves like a mutation that returns top-level errors6848 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"6849Projects::BadgesController6850 #pipeline6851 behaves like a badge resource6852 format6853 renders the `flat` badge layout by default6854 when style param is set to `flat`6855 renders the `flat` badge layout6856 when style param is set to an invalid type6857 renders the `flat` (default) badge layout6858 when style param is set to `flat-square`6859 renders the `flat-square` badge layout6860 behaves like customization6861 when key_text param is used6862 sets custom key text6863 when key_width param is used6864 sets custom key width6865 behaves like when pipelines are public6866 behaves like renders badge irrespective of project access levels6867 when project is public6868 returns the pipeline badge to unauthenticated users6869 when project is restricted6870 returns the pipeline badge to guest users6871 behaves like when pipelines are not public6872 when project is public6873 returns 404 to unauthenticated users6874 when project is restricted to the user6875 defaults to project permissions6876 with ignore_skipped param6877 returns skipped badge if set to false6878 does not return skipped badge if set to true6879 #coverage6880 behaves like a badge resource6881 format6882 renders the `flat` badge layout by default6883 when style param is set to `flat`6884 renders the `flat` badge layout6885 when style param is set to an invalid type6886 renders the `flat` (default) badge layout6887 when style param is set to `flat-square`6888 renders the `flat-square` badge layout6889 behaves like customization6890 when key_text param is used6891 sets custom key text6892 when key_width param is used6893 sets custom key width6894 behaves like when pipelines are public6895 behaves like renders badge irrespective of project access levels6896 when project is public6897 returns the coverage badge to unauthenticated users6898 when project is restricted6899 returns the coverage badge to guest users6900 behaves like when pipelines are not public6901 when project is public6902 returns 404 to unauthenticated users6903 when project is restricted to the user6904 defaults to project permissions6905 #release6906 behaves like a badge resource6907 format6908 renders the `flat` badge layout by default6909 when style param is set to `flat`6910 renders the `flat` badge layout6911 when style param is set to an invalid type6912 renders the `flat` (default) badge layout6913 when style param is set to `flat-square`6914 renders the `flat-square` badge layout6915 behaves like customization6916 when key_text param is used6917 sets custom key text6918 when key_width param is used6919 sets custom key width6920 behaves like renders badge irrespective of project access levels6921 when project is public6922 returns the release badge to unauthenticated users6923 when project is restricted6924 returns the release badge to guest users6925API::Metrics::Dashboard::Annotations6926 environment6927 behaves like POST /:source_type/:id/metrics_dashboard/annotations6928 with :source_type == environments6929 with correct permissions6930 with valid parameters6931 creates a new annotation6932 with invalid parameters6933 returns error messsage6934 with undeclared params6935 filters out undeclared params6936 with special characers in dashboard_path in request body6937 with escaped characters6938 behaves like special characters unescaped6939 unescapes the dashboard_path6940 with unescaped characers6941 behaves like special characters unescaped6942 unescapes the dashboard_path6943 without correct permissions6944 returns error message6945 group cluster6946 behaves like POST /:source_type/:id/metrics_dashboard/annotations6947 with :source_type == clusters6948 with correct permissions6949 with valid parameters6950 creates a new annotation6951 with invalid parameters6952 returns error messsage6953 with undeclared params6954 filters out undeclared params6955 with special characers in dashboard_path in request body6956 with escaped characters6957 behaves like special characters unescaped6958 unescapes the dashboard_path6959 with unescaped characers6960 behaves like special characters unescaped6961 unescapes the dashboard_path6962 without correct permissions6963 returns error message6964 project cluster6965 behaves like POST /:source_type/:id/metrics_dashboard/annotations6966 with :source_type == clusters6967 with correct permissions6968 with valid parameters6969 creates a new annotation6970 with invalid parameters6971 returns error messsage6972 with undeclared params6973 filters out undeclared params6974 with special characers in dashboard_path in request body6975 with escaped characters6976 behaves like special characters unescaped6977 unescapes the dashboard_path6978 with unescaped characers6979 behaves like special characters unescaped6980 unescapes the dashboard_path6981 without correct permissions6982 returns error message6983Projects::GoogleCloud::DeploymentsController6984 Routes must be restricted behind Google OAuth26985 when a public request is made6986 returns not found on GET request6987 when unauthorized members make requests6988 returns not found on GET request6989 when authorized members make requests6990 redirects on GET request6991 Authorized GET project/-/google_cloud/deployments/cloud_run6992 redirects to google_cloud home on enable service error6993 redirects to gcp_error6994 GCP_PROJECT_IDs are defined6995 redirects to google_cloud home on generate pipeline error6996 redirects to create merge request form6997 Authorized GET project/-/google_cloud/deployments/cloud_storage6998 renders placeholder6999Projects::Alerting::NotificationsController7000 POST #create7001 with generic alert payload7002 behaves like process alert payload7003 when notification service succeeds7004 responds with the alert data7005 does not pass excluded parameters to the notify service7006 when notification service fails7007 responds with the service response7008 with bearer token7009 when set7010 behaves like a working token7011 extracts token7012 with a corresponding integration7013 with integration parameters specified7014 the integration is active7015 extracts and finds the integration7016 when the integration is inactive7017 does not find an integration7018 without integration parameters specified7019 extracts and finds the legacy integration7020 with basic auth token7021 behaves like a working token7022 extracts token7023 with a corresponding integration7024 with integration parameters specified7025 the integration is active7026 extracts and finds the integration7027 when the integration is inactive7028 does not find an integration7029 without integration parameters specified7030 extracts and finds the legacy integration7031 when inextractable token7032 passes nil for a non-bearer token7033 when missing token7034 passes nil7035 with Prometheus alert payload7036 behaves like process alert payload7037 when notification service succeeds7038 responds with the alert data7039 does not pass excluded parameters to the notify service7040 when notification service fails7041 responds with the service response7042 with bearer token7043 when set7044 behaves like a working token7045 extracts token7046 with a corresponding integration7047 with integration parameters specified7048 the integration is active7049 extracts and finds the integration7050 when the integration is inactive7051 does not find an integration7052 without integration parameters specified7053 extracts and finds the legacy integration7054 with basic auth token7055 behaves like a working token7056 extracts token7057 with a corresponding integration7058 with integration parameters specified7059 the integration is active7060 extracts and finds the integration7061 when the integration is inactive7062 does not find an integration7063 without integration parameters specified7064 extracts and finds the legacy integration7065 when inextractable token7066 passes nil for a non-bearer token7067 when missing token7068 passes nil7069Admin::RunnersController7070 #index7071 renders index template7072 #show7073 shows a runner show page7074 #edit7075 shows a runner edit page7076 shows 404 for unknown runner7077 avoids N+1 queries7078 #update7079 with update succeeding7080 updates the runner and ticks the queue7081 with update failing7082 does not update runner or tick the queue7083 #destroy7084 destroys the runner7085 #resume7086 marks the runner as active and ticks the queue7087 #pause7088 marks the runner as inactive and ticks the queue7089 GET #runner_setup_scripts7090 renders the setup scripts7091 renders errors if they occur7092Query.runners7093 Query.runners7094 runner_type is INSTANCE_TYPE and status is ACTIVE7095 behaves like a working graphql query returning expected runner7096 returns expected runner7097 behaves like a working graphql query7098 returns a successful response7099 runner_type is PROJECT_TYPE and status is NEVER_CONTACTED7100 behaves like a working graphql query returning expected runner7101DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7102DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7103 returns expected runner7104 behaves like a working graphql query7105DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7106DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7107 returns a successful response7108 runner_type is PROJECT_TYPE and status is NEVER_CONTACTED7109 behaves like a working graphql query returning expected runner7110DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7111DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7112 returns expected runner7113 behaves like a working graphql query7114DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7115DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7116 returns a successful response7117 pagination7118 when sorted by contacted_at ascending7119 behaves like sorted paginated query7120 behaves like requires variables7121 shared example requires variables to be set7123 when sorting7124 sorts correctly7125 when paginating7126 paginates correctly7127 when sorted by created_at7128 behaves like sorted paginated query7129 behaves like requires variables7130 shared example requires variables to be set7132 when sorting7133 sorts correctly7134 when paginating7135 paginates correctly7136Group.runners7137 edges7138 contains custom edge information7139Destroying a container repository tags7140 post graphql mutation7141 with valid id7142 user_role: :maintainer, shared_examples_name: "destroying the container repository tags"7143 behaves like destroying the container repository tags7144 destroys the container repository tags7145 behaves like returning response status7146 returns success7147 user_role: :developer, shared_examples_name: "destroying the container repository tags"7148 behaves like destroying the container repository tags7149 destroys the container repository tags7150 behaves like returning response status7151 returns success7152 user_role: :reporter, shared_examples_name: "denying the mutation request"7153 behaves like denying the mutation request7154 does not destroy the container repository tags7155 behaves like returning response status7156 returns success7157 user_role: :guest, shared_examples_name: "denying the mutation request"7158 behaves like denying the mutation request7159 does not destroy the container repository tags7160 behaves like returning response status7161 returns success7162 user_role: :anonymous, shared_examples_name: "denying the mutation request"7163 behaves like denying the mutation request7164 does not destroy the container repository tags7165 behaves like returning response status7166 returns success7167 with invalid id7168 behaves like denying the mutation request7169 does not destroy the container repository tags7170 behaves like returning response status7171 returns success7172 with too many tags7173 returns too many tags error7174 with service error7175 returns an error7176 does not create a package event7177Project.cluster_agents7178DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7179DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7180DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7181DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7182DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7183DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7184 can retrieve cluster agents7185 selecting page info7186 can paginate cluster agents7187 selecting tokens7188 can select tokens in last_used_at order7189 does not suffer from N+1 performance issues7190 selecting connections7191 can retrieve connections and agent metadata7192 selecting activity events7193 retrieves activity event details7194Groups::SharedProjectsController7195 GET #index7196 returns only projects shared with the group7197 allows filtering shared projects7198 allows sorting projects7199 does not include archived projects7200Admin::Ci::VariablesController7201 GET #show7202 when signed in as admin7203 renders the variables as json7204 has only one variable7205 when signed in as regular user7206 returns 4047207 PATCH #update7208 when signed in as admin7209 with invalid new variable parameters7210 does not update the existing variable7211 does not create the new variable7212 returns a bad request response7213 with duplicate new variable parameters7214 does not update the existing variable7215 does not create the new variable7216 returns a bad request response7217 with valid new variable parameters7218 updates the existing variable7219 creates the new variable7220 returns a successful response7221 has all variables in response7222 with a deleted variable7223 destroys the variable7224 returns a successful response7225 has all variables in response7226 with missing variable7227 returns not found response7228 for variables of type file7229 creates new variable of type file7230 when signed in as regular user7231 returns 4047232Import::BitbucketServerController7233 GET new7234 shows the input form7235 POST create7236 returns the new project7237 returns an error when an invalid project key is used7238 returns an error when an invalid repository slug is used7239 returns an error when the project cannot be found7240 returns an error when the project cannot be saved7241 returns an error when the server can't be contacted7242 with project key with tildes7243 successfully creates a project7244 behaves like project import rate limiter7245 when limit exceeds7246 notifies and redirects user7247 POST configure7248 clears out existing session7249 sets the session variables7250 passes namespace_id to status page if provided7251 GET status7252 returns invalid repos7253 redirects to connection form if session is missing auth data7254 behaves like import controller status7255 returns variables for json request7256 when filtering7257 passes filter param to bitbucket client7258Projects::ErrorTrackingController7259 GET #index7260 html7261 renders index with 200 status code7262 with insufficient permissions7263 returns 4047264 with an anonymous user7265 redirects to sign-in page7266 format json7267 with no data7268 returns no data7269 with extra params7270 when service result is successful7271 returns a list of errors7272 behaves like sets the polling header7273 is expected to eq "1000"7274 without extra params7275 when service result is successful7276 returns a list of errors7277 when service result is erroneous7278 without http_status7279 returns 400 with message7280 with explicit http_status7281 returns http_status with message7282 GET #issue_details7283 format json7284 with no data7285 returns no data7286 behaves like sets the polling header7287 is expected to eq "1000"7288 when service result is successful7289 returns an error7290 behaves like sets the polling header7291 is expected to eq "1000"7292 when service result is erroneous7293 without http_status7294 returns 400 with message7295 with explicit http_status7296 returns http_status with message7297 PUT #update7298 format json7299 when update result is successful7300 returns a success7301 when update result is erroneous7302 returns 400 with message7303merge requests creations7304 GET /:namespace/:project/merge_requests/new7305 avoids N+1 DB queries even with forked projects7306Destroying a Note7307 when the user does not have permission7308 does not destroy the Note7309 behaves like a mutation that returns a top-level access error7310 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"7311 when the user has permission7312 destroys the Note7313 returns an empty Note7314 behaves like a Note mutation when the given resource id is not for a Note7315 behaves like a mutation that returns top-level errors7316 is expected to include /does not represent an instance of Note/7317Admin::BackgroundMigrationsController7318 GET #show7319 when the migration is valid7320 fetches the migration7321 returns failed jobs7322 when the migration does not exist7323 returns not found7324 GET #index7325 when no database is provided7326 uses the default connection7327 returns default database records7328 when multiple database is enabled7329 when CI database is provided7330 uses CI database connection7331 returns CI database records7332 POST #retry7333 redirects the user to the admin migrations page7334 retries the migration7335 when the migration is not failed7336 keeps the same migration status7337Admin::SpamLogsController7338 #index7339 lists all spam logs7340 #destroy7341 removes only the spam log when removing log7342 removes user and their spam logs when removing the user7343 #mark_as_ham7344 submits the log as ham7345Projects::Environments::PrometheusApiController7346 GET #prometheus_proxy7347 behaves like metrics dashboard prometheus api proxy7348 with valid requests7349 with success result7350 returns prometheus response7351 with nil query7352 does not raise error7353 with nil result7354 returns 204 no_content7355 with 404 result7356 returns body7357 with error result7358 with http_status7359 sets the http response status code7360 without http_status7361 returns bad_request7362 with inappropriate requests7363 without correct permissions7364 returns 4047365 with invalid proxyable id7366 returns 4047367 with variables7368 replaces variables with values7369 with invalid variables7370 returns 4007371 with anonymous user7372 redirects to signin page7373API::GroupAvatar7374 GET /groups/:id/avatar7375 when the group is public7376 retrieves the avatar successfully7377 when the avatar is in the object storage7378 redirects to the file in the object storage7379 when the group does not have avatar7380 returns :not_found7381 when the group is a subgroup7382 returns :ok7383 when the group is private7384 when the user is not authenticated7385 returns :not_found7386 when the the group user is authenticated7387 and have access to the group7388 retrieves the avatar successfully7389 and does not have access to the group7390 returns :not_found7391Query7392 gitpodEnabled field7393 When Gitpod is enabled for the application7394 is expected to include {"gitpodEnabled" => true}7395 When Gitpod is disabled for the application7396 is expected to include {"gitpodEnabled" => false}7397 .designManagement7398 .version7399 fetches the expected data7400 behaves like a working graphql query7401 returns a successful response7402 behaves like a query that needs authorization7403 the current user is not able to read designs7404 does not retrieve the record7405 raises an error7406 .designAtVersion7407 behaves like a working graphql query7408DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7409 returns a successful response7410 behaves like a query that needs authorization7411 the current user is not able to read designs7412 does not retrieve the record7413 raises an error7414 the current user is able to read designs7415DEPRECATION WARNING: using BatchLoader.for in GraphQL is deprecated. Use BatchLoader::GraphQL.for instead or return BatchLoader::GraphQL.wrap from your resolver.7416 fetches the expected data, including the correct associations7417InternalRedirect7418 #safe_redirect_path7419 input: "Hello world" being invalid7420 returns nil7421 input: "//example.com/hello/world" being invalid7422 returns nil7423 input: "https://example.com/hello/world" being invalid7424 returns nil7425 input: "not-starting-with-a-slash\n/starting/with/slash" being invalid7426 returns nil7427 input: "/hello/world" being valid7428 returns the path7429 returns the path with querystring and fragment7430 input: "/-/ide/project/path" being valid7431 returns the path7432 returns the path with querystring and fragment7433 #safe_redirect_path_for_url7434 input: "Hello world" being invalid7435 returns nil7436 input: "http://example.com/hello/world" being invalid7437 returns nil7438 input: "http://test.host:3000/hello/world" being invalid7439 returns nil7440 input: "http://test.host/hello/world" being on the same host7441 returns the path7442 returns the path with querystring and fragment7443 #sanitize_redirect7444 returns `nil` for invalid paths7445 returns `nil` for invalid urls7446 returns input for valid paths7447 returns path for valid urls7448 #host_allowed?7449 allows URI with the same host and port7450 rejects URI with other host7451 rejects URI with other port7452Setting milestone of a merge request7453 returns an error if the user is not allowed to update the merge request7454 sets the merge request milestone7455 when passing milestone_id nil as input7456 removes the merge request milestone7457merge request content spec7458 GET cached_widget7459 behaves like cached widget request7460 avoids N+1 queries when multiple job artifacts are present7461 with non_public_artifacts disabled7462 behaves like cached widget request7463 avoids N+1 queries when multiple job artifacts are present7464Projects::Security::ConfigurationController7465 GET show7466 when user has guest access7467 denies access7468 when user has developer access7469 grants access7470 responds with configuration data json7471 with feature flag unify_security_configuration turned off7472 responds with empty configuration data json7473Projects::UsageQuotasController7474 GET #index7475 when user does not have read_usage_quotas permission7476 renders not_found7477 when user has read_usage_quotas permission7478 renders index with 200 status code7479Groups::Harbor::RepositoriesController7480 GET #index7481 with harbor registry feature flag enabled7482 behaves like responds with 200 status7483 renders the index template7484 with harbor registry feature flag disabled7485 behaves like responds with 404 status7486 returns 4047487 GET #show7488 with harbor registry feature flag enabled7489 behaves like responds with 200 status7490 renders the index template7491 with harbor registry feature flag disabled7492 behaves like responds with 404 status7493 returns 4047494API::Internal::Workhorse7495 /authorize_upload7496 without workhorse internal header7497 is expected to respond with numeric status code forbidden7498 with workhorse internal header7499 is expected to respond with numeric status code unauthorized7500 as a logged in user7501 is expected to respond with numeric status code success7502 returns the temp upload path7503getting custom emoji within namespace7504 Query CustomEmoji on Group7505 returns emojis when authorised7506 returns nil when unauthorised7507API::Appearance Appearance7508 GET /application/appearance7509 as a non-admin user7510 returns 4037511 as an admin user7512 returns appearance7513 PUT /application/appearance7514 as a non-admin user7515 returns 4037516 as an admin user7517 instance basics7518 allows updating the settings7519 system header and footer7520 allows updating the settings7521 fails on invalid color values7522 with message_font_color7523 with message_background_color7524 instance logos7525 allows updating the image files7526 fails on invalid color images7527 with string instead of file7528 with .svg file instead of .png7529Delete a cluster agent7530 without project permissions7531 does not delete cluster agent7532 behaves like a mutation that returns top-level errors7533 is expected to contain exactly "The resource that you are attempting to access does not exist or you don't have permission to perform this action"7534 with project permissions7535 deletes a cluster agent7536API::Admin::Sidekiq7537 DELETE /admin/sidekiq/queues/:queue_name7538 when the user is not an admin7539 returns a 4037540 when the user is an admin7541 valid request7542 returns info about the deleted jobs7543 when no required params are provided7544 returns a 4007545 when the queue does not exist7546 returns a 4047547snippets7548 querying for all fields7549 can successfully query for snippets and their blobs7550API::Ci::Runner7551 POST /runners/reset_authentication_token7552 current token provided7553 resets authentication token when token doesn't have an expiration7554 resets authentication token when token is not expired7555 does not reset authentication token when token is expired7556 wrong current token provided7557 does not reset authentication token7558Admin::ImpersonationTokensController7559 when impersonation is disabled7560 shows error page for index page7561 responds with 404 for create action7562 responds with 404 for revoke action7563getting blobs in a project repository7564 returns the blob7565GroupMember7566 behaves like a working graphql query7567 returns a successful response7568 behaves like a working membership object query7569 contains edge to expected project7570 contains correct access level7571Projects::ProductAnalyticsController7572 GET #index7573 renders index with 200 status code7574 with an anonymous user7575 redirects to sign-in page7576 feature flag disabled7577 returns not found7578 GET #test7579 renders test with 200 status code7580 GET #setup7581 renders setup with 200 status code7582 GET #graphs7583 renders graphs with 200 status code7584 feature flag disabled7585 returns not found7586Querying CI template7587 when the template exists7588 returns correct data7589 behaves like a working graphql query7590 returns a successful response7591 when the template does not exist7592 returns correct data7593 behaves like a working graphql query7594 returns a successful response7595API::Internal::MailRoom7596 POST /internal/mail_room/*mailbox_type7597 handle incoming_email successfully7598 schedules a EmailReceiverWorker job with raw email content7599 handle service_desk_email successfully7600 schedules a ServiceDeskEmailReceiverWorker job with raw email content7601 email content exceeds limit7602 responds with 400 bad request and replies with a failure message7603 not authenticated7604 responds with 401 Unauthorized7605 wrong token authentication7606 responds with 401 Unauthorized7607 wrong mailbox type authentication7608 responds with 401 Unauthorized7609 not supported mailbox type7610 responds with 401 Unauthorized7611 not enabled mailbox type7612 responds with 401 Unauthorized7613 handle invalid utf-8 email content7614 schedules a EmailReceiverWorker job with email content encoded to utf-8 forcefully7615 handle text/plain request content type7616 schedules a EmailReceiverWorker job with email content encoded to utf-8 forcefully7617Projects::Packages::InfrastructureRegistryController7618 GET #index7619 behaves like returning response status7620 returns ok7621 when the packages registry is not available7622 behaves like returning response status7623 returns not_found7624 GET #show7625 behaves like returning response status7626 returns ok7627 when the packages registry is not available7628 behaves like returning response status7629 returns not_found7630query terraform states7631 returns terraform state data7632 returns count of terraform states7633 unauthorized users7634 is expected to be nil7635getting group recent issue boards7636 behaves like querying a GraphQL type recent boards7637 Get list of recently visited boards7638 when the request is correct7639 returns recent boards for user successfully7640 behaves like a working graphql query7641 returns a successful response7642 when requests has errors7643 when there are no recently visited boards7644 returns empty result7645Mutations::UserPreferences::Update7646 when user has no existing preference7647 creates the user preference record7648 when user has existing preference7649 updates the existing value7650Users::UnsubscribesController7651 show7652 responds with success7653 behaves the same if email address isn't known in the system7654 create7655 unsubscribes the connected user7656 behaves the same if email address isn't known in the system7657Updating an existing release asset link7658 updates and existing release asset link and returns the updated link7659JobUnschedule7660 returns an error if the user is not allowed to unschedule the job7661 unschedules a job7662Admin::PlanLimitsController7663 POST create7664 with an authenticated admin user7665 updates the plan limits7666 without admin access7667 returns `not_found`7668Query.project(fullPath).pipelines.jobs.artifacts7669 returns the fields for the artifacts7670Setting the status of an alert7671 updates the status of the alert7672BoardsResponses7673 #serialize_as_json7674 serializes properly7675Admin::GitalyServersController7676 #index7677 shows the gitaly servers page7678Knapsack report was generated. Preview:7679{7680 "spec/requests/api/ci/pipelines_spec.rb": 248.14534560599986,7681 "spec/requests/api/nuget_project_packages_spec.rb": 244.14657997999984,7682 "spec/requests/api/branches_spec.rb": 157.74668992099942,7683 "spec/controllers/admin/application_settings_controller_spec.rb": 255.3866505699998,7684 "spec/controllers/projects/clusters_controller_spec.rb": 133.8328262210007,7685 "spec/requests/api/helpers_spec.rb": 68.53669078500025,7686 "spec/requests/users_controller_spec.rb": 74.87679720300002,7687 "spec/requests/api/release/links_spec.rb": 85.86993204400005,7688 "spec/controllers/autocomplete_controller_spec.rb": 59.7204000189995,7689 "spec/requests/api/ci/runner/jobs_trace_spec.rb": 36.56568246699953,7690 "spec/controllers/projects/releases_controller_spec.rb": 43.73993563100066,7691 "spec/mailers/emails/merge_requests_spec.rb": 25.140952227000525,7692 "spec/controllers/projects/merge_requests/drafts_controller_spec.rb": 40.93282500700025,7693 "spec/requests/api/debian_group_packages_spec.rb": 21.650244870999813,7694 "spec/requests/api/graphql/mutations/namespace/package_settings/update_spec.rb": 16.7084081109997,7695 "spec/controllers/projects/blob_controller_spec.rb": 35.07926352499999,7696 "spec/controllers/projects/snippets_controller_spec.rb": 22.405712470999788,7697 "spec/controllers/projects/web_ide_terminals_controller_spec.rb": 18.011995872000625,7698 "spec/requests/api/unleash_spec.rb": 8.562828670000272,7699 "spec/controllers/projects/commits_controller_spec.rb": 26.64082227900053,7700 "spec/requests/api/protected_tags_spec.rb": 17.76066176599943,7701 "spec/requests/api/feature_flags_spec.rb": 8.773528448999969,7702 "spec/controllers/projects/tags_controller_spec.rb": 16.57478219800032,7703 "spec/requests/api/graphql/metrics/dashboard_query_spec.rb": 14.41357908199916,7704 "spec/controllers/projects/labels_controller_spec.rb": 21.40592972400009,7705 "spec/requests/api/graphql/packages/nuget_spec.rb": 13.029983594999976,7706 "spec/controllers/concerns/metrics_dashboard_spec.rb": 9.873394021000422,7707 "spec/requests/api/graphql_spec.rb": 10.436199280000437,7708 "spec/requests/api/graphql/mutations/award_emojis/add_spec.rb": 10.62410034000004,7709 "spec/commands/sidekiq_cluster/cli_spec.rb": 2.6459620280002127,7710 "spec/requests/api/graphql/mutations/snippets/destroy_spec.rb": 10.621317940000154,7711 "spec/controllers/projects/badges_controller_spec.rb": 9.916848288000438,7712 "spec/requests/api/metrics/dashboard/annotations_spec.rb": 10.572729092999907,7713 "spec/requests/projects/google_cloud/deployments_controller_spec.rb": 7.106857237999975,7714 "spec/controllers/projects/alerting/notifications_controller_spec.rb": 3.055813384999965,7715 "spec/controllers/admin/runners_controller_spec.rb": 4.234226833000321,7716 "spec/requests/api/graphql/ci/runners_spec.rb": 5.367264952000369,7717 "spec/requests/api/graphql/mutations/container_repository/destroy_tags_spec.rb": 5.652209847000449,7718 "spec/requests/api/graphql/project/cluster_agents_spec.rb": 4.942021824999756,7719 "spec/controllers/groups/shared_projects_controller_spec.rb": 5.615899057999741,7720 "spec/controllers/admin/ci/variables_controller_spec.rb": 4.26363885200044,7721 "spec/controllers/import/bitbucket_server_controller_spec.rb": 4.960118294000495,7722 "spec/controllers/projects/error_tracking_controller_spec.rb": 3.251315174999945,7723 "spec/requests/projects/merge_requests/creations_spec.rb": 5.365290832000028,7724 "spec/requests/api/graphql/mutations/notes/destroy_spec.rb": 5.013979880999614,7725 "spec/requests/admin/background_migrations_controller_spec.rb": 5.563618311999562,7726 "spec/controllers/admin/spam_logs_controller_spec.rb": 2.948920552000345,7727 "spec/controllers/projects/environments/prometheus_api_controller_spec.rb": 3.8040855250001187,7728 "spec/requests/api/group_avatar_spec.rb": 2.8523363379999864,7729 "spec/requests/api/graphql/query_spec.rb": 4.358416285999738,7730 "spec/controllers/concerns/internal_redirect_spec.rb": 0.9409859890001826,7731 "spec/requests/api/graphql/mutations/merge_requests/set_milestone_spec.rb": 5.707854994000627,7732 "spec/requests/projects/merge_requests/content_spec.rb": 4.990914192000673,7733 "spec/controllers/projects/security/configuration_controller_spec.rb": 3.2617520450003212,7734 "spec/controllers/projects/usage_quotas_controller_spec.rb": 2.9452848919991084,7735 "spec/requests/groups/harbor/repositories_controller_spec.rb": 2.678874946000178,7736 "spec/requests/api/internal/workhorse_spec.rb": 0.8268853359995774,7737 "spec/requests/api/graphql/custom_emoji_query_spec.rb": 3.5101895920006427,7738 "spec/requests/api/appearance_spec.rb": 1.130406758999925,7739 "spec/requests/api/graphql/mutations/clusters/agents/delete_spec.rb": 2.8483191569994233,7740 "spec/requests/api/admin/sidekiq_spec.rb": 0.9704832580000584,7741 "spec/requests/api/graphql/snippets_spec.rb": 2.7550437620002413,7742 "spec/requests/api/ci/runner/runners_reset_spec.rb": 0.7211894109996138,7743 "spec/requests/admin/impersonation_tokens_controller_spec.rb": 1.5788666449998345,7744 "spec/requests/api/graphql/project/repository/blobs_spec.rb": 1.0703495230000044,7745 "spec/requests/api/graphql/user/group_member_query_spec.rb": 1.1467785480008388,7746 "spec/controllers/projects/product_analytics_controller_spec.rb": 1.6622812010000416,7747 "spec/requests/api/graphql/ci/template_spec.rb": 1.3829501560003337,7748 "spec/requests/api/internal/mail_room_spec.rb": 0.8966324009998061,7749 "spec/controllers/projects/packages/infrastructure_registry_controller_spec.rb": 1.7493768260001161,7750 "spec/requests/api/graphql/project/terraform/states_spec.rb": 1.6383325630004038,7751 "spec/requests/api/graphql/group/recent_issue_boards_query_spec.rb": 1.4349859629992352,7752 "spec/requests/api/graphql/mutations/user_preferences/update_spec.rb": 0.7330393799993544,7753 "spec/controllers/users/unsubscribes_controller_spec.rb": 1.0147019259993613,7754 "spec/requests/api/graphql/mutations/release_asset_links/update_spec.rb": 1.1178319500004363,7755 "spec/requests/api/graphql/mutations/ci/job_unschedule_spec.rb": 1.475722649999625,7756 "spec/controllers/admin/plan_limits_controller_spec.rb": 0.5795478890004233,7757 "spec/requests/api/graphql/ci/job_artifacts_spec.rb": 0.8662953940001898,7758 "spec/requests/api/graphql/mutations/alert_management/alerts/update_alert_status_spec.rb": 0.9104347710008369,7759 "spec/controllers/concerns/boards_responses_spec.rb": 0.6681121239998902,7760 "spec/controllers/admin/gitaly_servers_controller_spec.rb": 0.3737128200000377761}7762Knapsack global time execution for tests: 31m 52s7763Finished in 31 minutes 56 seconds (files took 1 minute 12.26 seconds to load)77642818 examples, 0 failures7765RSpec exited with 0.7766No examples to retry, congrats!7768Not uploading cache ruby-gems-debian-bullseye-ruby-2.7-10 due to policy7769Not uploading cache gitaly-ruby-gems-debian-bullseye-ruby-2.7-10 due to policy7771Uploading artifacts...7772coverage/: found 5 matching files and directories 7773crystalball/: found 2 matching files and directories 7774deprecations/: found 13 matching files and directories 7775knapsack/: found 3 matching files and directories 7776rspec/: found 8 matching files and directories 7777WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory 7778log/*.log: found 17 matching files and directories 7779WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/2649391776/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com7780WARNING: Retrying... context=artifacts-uploader error=request redirected7781Uploading artifacts as "archive" to coordinator... 201 Created id=2649391776 responseStatus=201 Created token=X4E91iY57782Uploading artifacts...7783rspec/junit_rspec.xml: found 1 matching files and directories 7784WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/2649391776/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com7785WARNING: Retrying... context=artifacts-uploader error=request redirected7786Uploading artifacts as "junit" to coordinator... 201 Created id=2649391776 responseStatus=201 Created token=X4E91iY57788Job succeeded