rspec integration pg13 5/12
Passed Started
by
@rkadam3

Rajendra Kadam
1Running with gitlab-runner 15.9.0~beta.115.g598a7c91 (598a7c91)2 on green-2.shared-gitlab-org.runners-manager.gitlab.com/default 8zCxmpPt, system ID: s_130a96ce9e653 feature flags: FF_NETWORK_PER_BUILD:true, FF_USE_FASTZIP:true, FF_USE_IMPROVED_URL_MASKING:true6Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.19-rust-1.65-node-16.14-postgresql-13:rubygems-3.4-git-2.36-lfs-2.9-chrome-109-yarn-1.22-graphicsmagick-1.3.36 ...7Starting service postgres:13 ...8Pulling docker image postgres:13 ...9Using docker image sha256:ab3945c8cf7160ed1381efd47c6a203ba9a84fc7327a17e4a389601eb3738b3b for postgres:13 with digest postgres@sha256:67edfda7deeecfda8e40c9b00818eae76573a9e9466ba7edbc536662d128173b ...10Starting service redis:6.2-alpine ...11Pulling docker image redis:6.2-alpine ...12Using docker image sha256:a9a47a706682d445577bb5da7328f0faaa0863a5742a315c829faa461dfc23ae for redis:6.2-alpine with digest redis@sha256:317575f05099ea47b1f2855b1bb6e068b52847bfa19b87014d88d57f82d4b8f0 ...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-3.0.patched-golang-1.19-rust-1.65-node-16.14-postgresql-13:rubygems-3.4-git-2.36-lfs-2.9-chrome-109-yarn-1.22-graphicsmagick-1.3.36 ...16Using docker image sha256:552b81110cdd830e05d17c8e7365f72e1dd96842217d7225636cb55a75777ea7 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.19-rust-1.65-node-16.14-postgresql-13:rubygems-3.4-git-2.36-lfs-2.9-chrome-109-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.19-rust-1.65-node-16.14-postgresql-13@sha256:a386dd1acb1341f710f3c3c320984f70512694bcfec8cb1c771365058ac7c475 ...18Running on runner-8zcxmppt-project-278964-concurrent-0 via runner-8zcxmppt-shared-gitlab-org-1681892861-0df5fbac...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: 127066, done. 25remote: Counting objects: 100% (127066/127066), done. 26remote: Compressing objects: 100% (84263/84263), done. 27remote: Total 127066 (delta 52059), reused 86943 (delta 37888), pack-reused 0 28Receiving objects: 100% (127066/127066), 122.40 MiB | 33.85 MiB/s, done.29Resolving deltas: 100% (52059/52059), done.31 * [new ref] refs/pipelines/841847819 -> refs/pipelines/84184781932 * [new branch] master -> origin/master33Checking out e2ff33c5 as detached HEAD (ref is master)...34Skipping Git submodules setup35$ git remote set-url origin "${CI_REPOSITORY_URL}"37Checking cache for ruby-gems-debian-bullseye-ruby-3.0-16...38cache.zip is up to date 39Successfully extracted cache41Downloading artifacts for compile-test-assets (4139146271)...42Downloading artifacts from coordinator... ok host=storage.googleapis.com id=4139146271 responseStatus=200 OK token=64_sfoiR43Downloading artifacts for retrieve-tests-metadata (4139146276)...44Downloading artifacts from coordinator... ok host=storage.googleapis.com id=4139146276 responseStatus=200 OK token=64_sfoiR45Downloading artifacts for setup-test-env (4139146274)...46Downloading artifacts from coordinator... ok host=storage.googleapis.com id=4139146274 responseStatus=200 OK token=64_sfoiR48Using docker image sha256:552b81110cdd830e05d17c8e7365f72e1dd96842217d7225636cb55a75777ea7 for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.19-rust-1.65-node-16.14-postgresql-13:rubygems-3.4-git-2.36-lfs-2.9-chrome-109-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-3.0.patched-golang-1.19-rust-1.65-node-16.14-postgresql-13@sha256:a386dd1acb1341f710f3c3c320984f70512694bcfec8cb1c771365058ac7c475 ...49$ echo $FOSS_ONLY50$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb51$ export GOPATH=$CI_PROJECT_DIR/.go52$ mkdir -p $GOPATH53$ source scripts/utils.sh54$ source scripts/prepare_build.sh709Using decomposed database config (config/database.yml.decomposed-postgresql)710Geo DB won't be set up.711$ setup_db_user_only712CREATE ROLE713GRANT714==> 'setup_db_user_only' succeeded in 0 seconds.715$ bundle exec rake db:drop db:create db:schema:load db:migrate gitlab:db:lock_writes716Dropped database 'gitlabhq_test'717Dropped database 'gitlabhq_test_ci'718Created database 'gitlabhq_test'719Created database 'gitlabhq_test_ci'720main: == [advisory_lock_connection] object_id: 273740, pg_backend_pid: 100721main: == [advisory_lock_connection] object_id: 273740, pg_backend_pid: 100722ci: == [advisory_lock_connection] object_id: 273820, pg_backend_pid: 102723ci: == [advisory_lock_connection] object_id: 273820, pg_backend_pid: 102724==> 'bundle exec rake db:drop db:create db:schema:load db:migrate gitlab:db:lock_writes' succeeded in 52 seconds.725$ setup_db_praefect726SELECT pg_catalog.set_config('search_path', '', false);727CREATE DATABASE praefect_test ENCODING 'UTF8';728==> 'setup_db_praefect' succeeded in 0 seconds.729$ source ./scripts/rspec_helpers.sh730$ run_timed_command "gem install knapsack --no-document"731$ gem install knapsack --no-document732Successfully installed knapsack-4.0.07331 gem installed734==> 'gem install knapsack --no-document' succeeded in 1 seconds.735$ echo -e "\e[0Ksection_start:`date +%s`:gitaly-test-spawn[collapsed=true]\r\e[0KStarting Gitaly"744$ rspec_paralellized_job "--tag ~quarantine --tag ~level:background_migration"745SKIP_FLAKY_TESTS_AUTOMATICALLY: false746RETRY_FAILED_TESTS_IN_NEW_PROCESS: true747KNAPSACK_GENERATE_REPORT: true748FLAKY_RSPEC_GENERATE_REPORT: true749KNAPSACK_TEST_FILE_PATTERN: spec/{commands,controllers,mailers,requests}{,/**/}*_spec.rb750KNAPSACK_LOG_LEVEL: debug751KNAPSACK_REPORT_PATH: knapsack/rspec_integration_pg13_5_12_report.json752FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json753FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec_integration_pg13_5_12_report.json754NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec_integration_pg13_5_12_report.json755SKIPPED_FLAKY_TESTS_REPORT_PATH: rspec/flaky/skipped_flaky_tests_rspec_integration_pg13_5_12_report.txt756CRYSTALBALL: 757Knapsack node specs:758spec/requests/api/projects_spec.rb759spec/requests/api/discussions_spec.rb760spec/requests/api/debian_project_packages_spec.rb761spec/controllers/projects/notes_controller_spec.rb762spec/requests/api/ci/triggers_spec.rb763spec/controllers/admin/clusters_controller_spec.rb764spec/controllers/projects/jobs_controller_spec.rb765spec/requests/api/project_container_repositories_spec.rb766spec/controllers/projects/compare_controller_spec.rb767spec/controllers/projects/commits_controller_spec.rb768spec/requests/api/graphql/ci/runner_spec.rb769spec/commands/metrics_server/metrics_server_spec.rb770spec/requests/api/pages/public_access_spec.rb771spec/controllers/import/github_controller_spec.rb772spec/requests/api/graphql/mutations/container_expiration_policy/update_spec.rb773spec/controllers/groups/dependency_proxy_for_containers_controller_spec.rb774spec/controllers/projects/artifacts_controller_spec.rb775spec/controllers/projects/web_ide_terminals_controller_spec.rb776spec/controllers/projects/settings/integrations_controller_spec.rb777spec/requests/api/graphql/project/alert_management/alerts_spec.rb778spec/controllers/import/gitlab_controller_spec.rb779spec/requests/api/graphql/boards/board_list_issues_query_spec.rb780spec/requests/projects/tags_controller_spec.rb781spec/requests/ide_controller_spec.rb782spec/controllers/projects/design_management/designs/raw_images_controller_spec.rb783spec/requests/api/graphql/packages/nuget_spec.rb784spec/controllers/projects/settings/repository_controller_spec.rb785spec/controllers/projects/registry/repositories_controller_spec.rb786spec/controllers/projects/hooks_controller_spec.rb787spec/requests/api/broadcast_messages_spec.rb788spec/requests/api/resource_state_events_spec.rb789spec/requests/api/graphql/mutations/merge_requests/set_labels_spec.rb790spec/requests/api/graphql/group/dependency_proxy_group_setting_spec.rb791spec/controllers/projects/runners_controller_spec.rb792spec/controllers/import/bitbucket_server_controller_spec.rb793spec/requests/api/graphql/mutations/metrics/dashboard/annotations/create_spec.rb794spec/requests/api/admin/plan_limits_spec.rb795spec/requests/api/graphql/current_user/groups_query_spec.rb796spec/requests/api/graphql/project/error_tracking/sentry_errors_request_spec.rb797spec/requests/projects/google_cloud/configuration_controller_spec.rb798spec/requests/api/appearance_spec.rb799spec/requests/api/graphql/subscriptions/notes/created_spec.rb800spec/requests/api/graphql/ci/pipeline_schedules_spec.rb801spec/requests/api/graphql/ci/job_spec.rb802spec/controllers/users/terms_controller_spec.rb803spec/controllers/projects/mattermosts_controller_spec.rb804spec/requests/api/graphql/notes/synthetic_note_resolver_spec.rb805spec/requests/api/graphql/group/data_transfer_spec.rb806spec/requests/api/import_bitbucket_server_spec.rb807spec/controllers/projects/grafana_api_controller_spec.rb808spec/requests/sessions_spec.rb809spec/requests/api/graphql/mutations/ci/pipeline_schedule_update_spec.rb810spec/controllers/profiles/emails_controller_spec.rb811spec/controllers/jira_connect/branches_controller_spec.rb812spec/controllers/groups/settings/repository_controller_spec.rb813spec/requests/api/graphql/ci/config_variables_spec.rb814spec/requests/profiles/notifications_controller_spec.rb815spec/requests/projects/hook_logs_controller_spec.rb816spec/requests/api/graphql/ci/manual_variables_spec.rb817spec/controllers/concerns/kas_cookie_spec.rb818spec/requests/api/graphql/project/base_service_spec.rb819spec/requests/api/graphql/mutations/alert_management/http_integration/create_spec.rb820spec/requests/oauth/tokens_controller_spec.rb821spec/requests/api/graphql/mutations/design_management/update_spec.rb822spec/requests/api/graphql/mutations/release_asset_links/update_spec.rb823spec/controllers/acme_challenges_controller_spec.rb824spec/requests/api/graphql/mutations/issues/link_alerts_spec.rb825spec/requests/api/graphql/project/alert_management/alert/metrics_dashboard_url_spec.rb826spec/requests/admin/version_check_controller_spec.rb827spec/requests/api/users_preferences_spec.rb828spec/mailers/emails/groups_spec.rb829spec/requests/admin/users_controller_spec.rb830spec/controllers/concerns/spammable_actions/captcha_check/json_format_actions_support_spec.rb831spec/requests/api/api_guard/admin_mode_middleware_spec.rb832spec/requests/jira_connect/oauth_callbacks_controller_spec.rb833Filter specs:834Running specs:835Running all node tests without filter836spec/requests/api/projects_spec.rb837spec/requests/api/discussions_spec.rb838spec/requests/api/debian_project_packages_spec.rb839spec/controllers/projects/notes_controller_spec.rb840spec/requests/api/ci/triggers_spec.rb841spec/controllers/admin/clusters_controller_spec.rb842spec/controllers/projects/jobs_controller_spec.rb843spec/requests/api/project_container_repositories_spec.rb844spec/controllers/projects/compare_controller_spec.rb845spec/controllers/projects/commits_controller_spec.rb846spec/requests/api/graphql/ci/runner_spec.rb847spec/commands/metrics_server/metrics_server_spec.rb848spec/requests/api/pages/public_access_spec.rb849spec/controllers/import/github_controller_spec.rb850spec/requests/api/graphql/mutations/container_expiration_policy/update_spec.rb851spec/controllers/groups/dependency_proxy_for_containers_controller_spec.rb852spec/controllers/projects/artifacts_controller_spec.rb853spec/controllers/projects/web_ide_terminals_controller_spec.rb854spec/controllers/projects/settings/integrations_controller_spec.rb855spec/requests/api/graphql/project/alert_management/alerts_spec.rb856spec/controllers/import/gitlab_controller_spec.rb857spec/requests/api/graphql/boards/board_list_issues_query_spec.rb858spec/requests/projects/tags_controller_spec.rb859spec/requests/ide_controller_spec.rb860spec/controllers/projects/design_management/designs/raw_images_controller_spec.rb861spec/requests/api/graphql/packages/nuget_spec.rb862spec/controllers/projects/settings/repository_controller_spec.rb863spec/controllers/projects/registry/repositories_controller_spec.rb864spec/controllers/projects/hooks_controller_spec.rb865spec/requests/api/broadcast_messages_spec.rb866spec/requests/api/resource_state_events_spec.rb867spec/requests/api/graphql/mutations/merge_requests/set_labels_spec.rb868spec/requests/api/graphql/group/dependency_proxy_group_setting_spec.rb869spec/controllers/projects/runners_controller_spec.rb870spec/controllers/import/bitbucket_server_controller_spec.rb871spec/requests/api/graphql/mutations/metrics/dashboard/annotations/create_spec.rb872spec/requests/api/admin/plan_limits_spec.rb873spec/requests/api/graphql/current_user/groups_query_spec.rb874spec/requests/api/graphql/project/error_tracking/sentry_errors_request_spec.rb875spec/requests/projects/google_cloud/configuration_controller_spec.rb876spec/requests/api/appearance_spec.rb877spec/requests/api/graphql/subscriptions/notes/created_spec.rb878spec/requests/api/graphql/ci/pipeline_schedules_spec.rb879spec/requests/api/graphql/ci/job_spec.rb880spec/controllers/users/terms_controller_spec.rb881spec/controllers/projects/mattermosts_controller_spec.rb882spec/requests/api/graphql/notes/synthetic_note_resolver_spec.rb883spec/requests/api/graphql/group/data_transfer_spec.rb884spec/requests/api/import_bitbucket_server_spec.rb885spec/controllers/projects/grafana_api_controller_spec.rb886spec/requests/sessions_spec.rb887spec/requests/api/graphql/mutations/ci/pipeline_schedule_update_spec.rb888spec/controllers/profiles/emails_controller_spec.rb889spec/controllers/jira_connect/branches_controller_spec.rb890spec/controllers/groups/settings/repository_controller_spec.rb891spec/requests/api/graphql/ci/config_variables_spec.rb892spec/requests/profiles/notifications_controller_spec.rb893spec/requests/projects/hook_logs_controller_spec.rb894spec/requests/api/graphql/ci/manual_variables_spec.rb895spec/controllers/concerns/kas_cookie_spec.rb896spec/requests/api/graphql/project/base_service_spec.rb897spec/requests/api/graphql/mutations/alert_management/http_integration/create_spec.rb898spec/requests/oauth/tokens_controller_spec.rb899spec/requests/api/graphql/mutations/design_management/update_spec.rb900spec/requests/api/graphql/mutations/release_asset_links/update_spec.rb901spec/controllers/acme_challenges_controller_spec.rb902spec/requests/api/graphql/mutations/issues/link_alerts_spec.rb903spec/requests/api/graphql/project/alert_management/alert/metrics_dashboard_url_spec.rbKnapsack report generator started!904warning: parser/current is loading parser/ruby30, which recognizes 3.0.5-compliant syntax, but you are running 3.0.6.906WARNING: Shared example group 'rejecting the invalid regex' has been previously defined at:907 /builds/gitlab-org/gitlab/spec/requests/api/project_container_repositories_spec.rb:317908...and you are now defining it at:909 /builds/gitlab-org/gitlab/spec/requests/api/project_container_repositories_spec.rb:317910The new definition will overwrite the original one.911Run options: exclude {:quarantine=>true, :level=>"background_migration"}912Test environment set up in 0.703993135 seconds913API::Projects914 GET /projects915 when unauthenticated916 behaves like projects response917 returns an array of projects918 returns the proper security headers919 behaves like projects response without N + 1 queries920 avoids N + 1 queries921 when authenticated as regular user922 is expected to eq false923 includes various project feature fields924 includes correct value of container_registry_enabled925 includes project topics926 includes open_issues_count927 does not include projects marked for deletion928 does not include open_issues_count if issues are disabled929 does not include statistics by default930 includes statistics if requested931 does not include license by default932 does not include license if requested933 behaves like projects response934 returns an array of projects935 returns the proper security headers936 behaves like projects response without N + 1 queries937 avoids N + 1 queries938 when projects_preloader_fix is disabled939DEPRECATION WARNING: Invalid Feature Flag projects_preloader_fix stubbed (called from each at /builds/gitlab-org/gitlab/spec/support/helpers/stub_feature_flags.rb:39)940 is expected to eq false941 when some projects are in a group942 behaves like projects response without N + 1 queries943 avoids N + 1 queries944 filter by topic (column topic_list)945 returns no projects946 returns matching project for a single topic947 returns matching project for multiple topics948 returns no projects if project match only some topic949 ignores topic if it is empty950 filter by topic_id951 with id of assigned topic952 behaves like projects response953 returns an array of projects954 returns the proper security headers955 with id of unassigned topic956 behaves like projects response957 returns an array of projects958 returns the proper security headers959 with non-existing topic id960 behaves like projects response961 returns an array of projects962 returns the proper security headers963 with empty topic id964 behaves like projects response965 returns an array of projects966 returns the proper security headers967 and with_issues_enabled=true968 only returns projects with issues enabled969 when external issue tracker is enabled970 includes open_issues_count971 does not include open_issues_count if issues are disabled972 and with simple=true973 returns a simplified version of all the projects974 and using archived975 returns archived projects976 returns non-archived projects977 returns every project978 filter by updated_at979 returns projects sorted by updated_at980 behaves like projects response981 returns an array of projects982 returns the proper security headers983 when filtering by updated_at and sorting by a different column984 returns an error985 and using search986 behaves like projects response987 returns an array of projects988 returns the proper security headers989 and using search and search_namespaces is true990 behaves like projects response991 returns an array of projects992 returns the proper security headers993 and using id_after994 behaves like projects response995 returns an array of projects996 returns the proper security headers997 regression: empty string is ignored998 behaves like projects response999 returns an array of projects1000 returns the proper security headers1001 and using id_before1002 behaves like projects response1003 returns an array of projects1004 returns the proper security headers1005 regression: empty string is ignored1006 behaves like projects response1007 returns an array of projects1008 returns the proper security headers1009 and using both id_after and id_before1010 behaves like projects response1011 returns an array of projects1012 returns the proper security headers1013 and membership=true1014 behaves like projects response1015 returns an array of projects1016 returns the proper security headers1017 and using the visibility filter1018 filters based on private visibility param1019 filters based on internal visibility param1020 filters based on public visibility param1021 and using the programming language filter1022 filters case-insensitively by programming language1023 and using sorting1024 returns the correct order when sorted by id1025 and with owned=true1026 returns an array of projects the user owns1027 when admin creates a project1028 does not list as owned project for admin1029 and with starred=true1030 returns the starred projects viewable by the user1031 and with all query parameters1032 including owned filter1033 returns only projects that satisfy all query parameters1034 including membership filter1035 returns only projects that satisfy all query parameters1036 and with min_access_level1037 returns an array of projects the user has at least developer access1038 and imported=true1039 returns only imported projects owned by current user1040 does not expose import credentials1041 when authenticated as a different user1042 behaves like projects response1043 returns an array of projects1044 returns the proper security headers1045 and with_issues_enabled=true1046 does not return private issue projects1047 when authenticated as admin1048 behaves like projects response1049 returns an array of projects1050 returns the proper security headers1051 with default created_at desc order1052 orders by id desc instead1053 sorting1054 by project statistics1055 sorting by repository_size1056 admin user1057 when sorting by repository_size ascendingly1058 returns a properly sorted list of projects1059 when sorting by repository_size descendingly1060 returns a properly sorted list of projects1061 non-admin user1062 returns projects ordered normally1063 sorting by storage_size1064 admin user1065 when sorting by storage_size ascendingly1066 returns a properly sorted list of projects1067 when sorting by storage_size descendingly1068 returns a properly sorted list of projects1069 non-admin user1070 returns projects ordered normally1071 sorting by wiki_size1072 admin user1073 when sorting by wiki_size ascendingly1074 returns a properly sorted list of projects1075 when sorting by wiki_size descendingly1076 returns a properly sorted list of projects1077 non-admin user1078 returns projects ordered normally1079 sorting by packages_size1080 admin user1081 when sorting by packages_size ascendingly1082 returns a properly sorted list of projects1083 when sorting by packages_size descendingly1084 returns a properly sorted list of projects1085 non-admin user1086 returns projects ordered normally1087 by similarity1088 returns non-public items based ordered by similarity1089 when `search` parameter is not given1090 returns items ordered by created_at descending1091 when called anonymously1092 returns items ordered by created_at descending1093 filtering by repository_storage1094 admin user1095 behaves like projects response1096 returns an array of projects1097 returns the proper security headers1098 non-admin user1099 behaves like projects response1100 returns an array of projects1101 returns the proper security headers1102 with keyset pagination1103 headers and records1104 includes a pagination header with link to the next page1105 contains only the first project with per_page = 11106 still includes a link if the end has reached and there is no more data after this page1107 does not include a next link when the page does not have any records1108 returns an empty array when the page does not have any records1109 responds with 501 if order_by is different from id1110 with descending sorting1111 includes a pagination header with link to the next page1112 contains only the last project with per_page = 11113 retrieving the full relation1114 returns all projects1115 with forked projects1116 avoids N+1 queries1117 when service desk is enabled1118 avoids N+1 queries1119 rate limiting1120 when the user is signed in1121 behaves like does not log request and does not block the request1122 is expected not to receive error(*(any args)) 0 times1123 when the user is not signed in1124 behaves like rate limited endpoint1125 when rate limiter enabled1126 logs request and declines it when endpoint called more than the threshold1127 when rate limiter is disabled1128 does not log request and does not block the request1129 when the feature flag `rate_limit_for_unauthenticated_projects_api_access` is disabled1130 when the user is not signed in1131 behaves like does not log request and does not block the request1132 is expected not to receive error(*(any args)) 0 times1133 when the user is signed in1134 behaves like does not log request and does not block the request1135 is expected not to receive error(*(any args)) 0 times1136 POST /projects1137 creates new project without path but with name and returns 2011138 creates new project without name but with path and returns 2011139 creates new project with name and path and returns 2011140 creates last project before reaching project limit1141 does not create new project without name or path and returns 4001142 assigns attributes to project1143 assigns container_registry_enabled to project1144 assigns container_registry_enabled to project1145 creates a project using a template1146 returns 400 for an invalid template1147 disallows creating a project with an import_url and template1148 disallows creating a project with an import_url when git import source is disabled1149 allows creating a project without an import_url when git import source is disabled1150 disallows creating a project with an import_url that is not reachable1151 creates a project with an import_url that is valid1152 sets a project as public1153 sets a project as internal1154 sets a project as private1155 creates a new project initialized with a README.md1156 sets tag list to a project (deprecated)1157 sets topics to a project1158 uploads avatar for project a project1159 sets a project as not allowing outdated diff discussions to automatically resolve1160 sets a project as allowing outdated diff discussions to automatically resolve1161 sets a project as not removing source branches1162 sets a project as removing source branches1163 sets a project as allowing merge even if build fails1164 sets a project as allowing merge only if merge_when_pipeline_succeeds1165 sets a project as not allowing merge when pipeline is skipped1166 sets a project as allowing merge when pipeline is skipped1167 sets a project as allowing merge even if discussions are unresolved1168 sets a project as allowing merge if only_allow_merge_if_all_discussions_are_resolved is nil1169 sets a project as allowing merge only if all discussions are resolved1170 sets a project as enabling auto close referenced issues1171 sets a project as disabling auto close referenced issues1172 sets the merge method of a project to rebase merge1173 rejects invalid values for merge_method1174 ignores import_url when it is nil1175 maximum number of projects reached1176 does not create new project and respond with 4031177 behaves like create project with default branch parameter1178 creates project with provided default branch name1179 when branch name is empty1180 creates project with a default project branch name1181 when initialize with readme is not set1182 creates project with a default project branch name1183 when a visibility level is restricted1184 does not allow a non-admin to use a restricted visibility level1185 allows an admin to override restricted visibility settings1186 GET /users/:user_id/projects/1187 returns error when user not found1188 returns projects filtered by user id1189 includes container_registry_access_level1190 returns projects filtered by username1191 returns projects filtered by minimal access level1192 filter by updated_at1193 returns only projects updated on the given timeframe1194 and using id_after1195 only returns projects with id_after filter given1196 returns both projects without a id_after filter1197 and using id_before1198 only returns projects with id_before filter given1199 returns both projects without a id_before filter1200 and using both id_before and id_after1201 only returns projects with id matching the range1202 and using an admin to search1203 returns users projects when authenticated as admin1204 and using the programming language filter1205 filters case-insensitively by programming language1206 GET /users/:user_id/starred_projects/1207 returns error when user not found1208 with a public profile1209 returns projects filtered by user1210 filter by updated_at1211 returns only projects updated on the given timeframe1212 with a private profile1213 user does not have access to view the private profile1214 returns no projects1215 user has access to view the private profile1216 returns projects filtered by user1217 POST /projects/user/:id1218 creates new project without path but with name and return 2011219 creates new project with name and path and returns 2011220 responds with 400 on failure and not project1221 sets container_registry_enabled1222 assigns attributes to project1223 sets a project as public1224 sets a project as internal1225 sets a project as private1226 sets a project as not allowing outdated diff discussions to automatically resolve1227 sets a project as allowing outdated diff discussions to automatically resolve1228 sets a project as not removing source branches1229 sets a project as removing source branches1230 sets a project as allowing merge even if build fails1231 sets a project as allowing merge only if pipeline succeeds1232 sets a project as not allowing merge when pipeline is skipped1233 sets a project as allowing merge when pipeline is skipped1234 sets a project as allowing merge even if discussions are unresolved1235 sets a project as allowing merge only if all discussions are resolved1236 behaves like POST request permissions for admin mode1237 behaves like when admin1238 behaves like makes request1239 returns1240 behaves like makes request1241 returns1242 behaves like when user1243 returns1244 behaves like makes request1245 returns1246 behaves like create project with default branch parameter1247 creates project with provided default branch name1248 when branch name is empty1249 creates project with a default project branch name1250 when initialize with readme is not set1251 creates project with a default project branch name1252 container_registry_enabled1253 container_registry_enabled: true, container_registry_access_level: 201254 setting container_registry_enabled also sets container_registry_access_level1255 container_registry_enabled: false, container_registry_access_level: 01256 setting container_registry_enabled also sets container_registry_access_level1257 container_registry_access_level1258 container_registry_access_level: "enabled", container_registry_enabled: true1259 setting container_registry_access_level also sets container_registry_enabled1260 container_registry_access_level: "private", container_registry_enabled: true1261 setting container_registry_access_level also sets container_registry_enabled1262 container_registry_access_level: "disabled", container_registry_enabled: false1263 setting container_registry_access_level also sets container_registry_enabled1264 POST /projects/:id/uploads/authorize1265 with authorized user1266 returns 2001267 with unauthorized user1268 returns 4041269 with exempted project1270 returns 2001271 with no Workhorse headers1272 returns 4031273 POST /projects/:id/uploads1274 uploads the file and returns its info1275 does not leave the temporary file in place after uploading, even when the tempfile reaper does not run1276 with exempted project1277 behaves like capped upload attachments1278 limits the upload to 1 GB1279 logs a warning if file exceeds attachment size1280 GET /projects/:id/groups1281 behaves like GET request permissions for admin mode1282 behaves like when admin1283 behaves like makes request1284 returns1285 behaves like makes request1286 returns1287 behaves like when user1288 returns1289 behaves like makes request1290 returns1291 when unauthenticated1292 does not return groups for private projects1293 for public projects1294 behaves like successful groups response1295 returns an array of groups1296 when authenticated as user1297 when user does not have access to the project1298 does not return groups1299 when user has access to the project1300 behaves like successful groups response1301 returns an array of groups1302 when search by root group name1303 behaves like successful groups response1304 returns an array of groups1305 with_shared option is on1306 behaves like successful groups response1307 returns an array of groups1308 when shared_min_access_level is set1309 behaves like successful groups response1310 returns an array of groups1311 when shared_visible_only is on1312 behaves like successful groups response1313 returns an array of groups1314 when search by shared group name1315 behaves like successful groups response1316 returns an array of groups1317 when skip_groups is set1318 behaves like successful groups response1319 returns an array of groups1320 when authenticated as admin1321 behaves like successful groups response1322 returns an array of groups1323 GET /project/:id/share_locations1324 behaves like GET request permissions for admin mode1325 behaves like when admin1326 behaves like makes request1327 returns1328 behaves like makes request1329 returns1330 behaves like when user1331 returns1332 behaves like makes request1333 returns1334 when unauthenticated1335 does not return the groups for the given project1336 when authenticated1337 when user is not the owner of the project1338 does not return the groups1339 when user is the owner of the project1340 with default search1341 behaves like successful groups response1342 returns an array of groups1343 when searching by group name1344 searching by group name1345 behaves like successful groups response1346 returns an array of groups1347 searching by full group path1348 behaves like successful groups response1349 returns an array of groups1350 when authenticated as admin1351 without share_with_group_lock1352 behaves like successful groups response1353 returns an array of groups1354 with share_with_group_lock1355 behaves like successful groups response1356 returns an array of groups1357 GET /projects/:id1358 exposes service desk attributes1359 behaves like GET request permissions for admin mode1360 behaves like when admin1361 behaves like makes request1362 returns1363 behaves like makes request1364 returns1365 behaves like when user1366 returns1367 behaves like makes request1368 returns1369 when unauthenticated1370 does not return private projects1371 returns public projects1372 the project is a public fork1373 hides details of a public fork parent1374 and the project has a private repository1375 hides protected attributes of private repositories if user is not a member1376 exposes protected attributes of private repositories if user is a member1377 when authenticated as an admin1378 returns a project by id1379 exposes all necessary attributes1380 when authenticated as a regular user1381 returns a project by id1382 returns a group link with expiration date1383 returns a project by path name1384 returns a 404 error if not found1385 returns a 404 error if user is not a member1386 handles users with dots1387 exposes namespace fields1388 does not include license fields by default1389 includes license fields when requested1390 does not include statistics by default1391 includes statistics if requested1392 includes import_error if user can admin project1393 does not include import_error if user cannot admin project1394 returns 404 when project is marked for deletion1395 and the project has a private repository1396 does not include statistics if user is not a member1397 includes statistics if user is a member1398 includes statistics also when repository is disabled1399 links exposure1400 exposes related resources full URIs1401 filters related URIs when their feature is not enabled1402 the project is a fork1403 shows details of a visible fork parent1404 hides details of a hidden fork parent1405 permissions1406 all projects1407 contains permission information1408 personal project1409 sets project access and returns 2001410 group project1411 sets the owner and return 2001412 nested group project1413 sets group access and return 2001414 with various access levels across nested groups1415 sets the maximum group access and return 2001416 when project belongs to a group namespace1417 returns group web_url and avatar_url1418 when project belongs to a user namespace1419 returns user web_url and avatar_url1420 behaves like storing arguments in the application context for the API1421 places the expected params in the application context1422 repository_storage attribute1423 when authenticated as an admin1424 returns repository_storage attribute1425 when authenticated as a regular user1426 does not return repository_storage attribute1427 when project is shared to multiple groups1428 avoids N+1 queries1429 GET /projects/:id/users1430 behaves like GET request permissions for admin mode1431 behaves like when admin1432 behaves like makes request1433 returns1434 behaves like makes request1435 returns1436 behaves like when user1437 returns1438 behaves like makes request1439 returns1440 when unauthenticated1441 behaves like project users response1442 returns the project users1443 when authenticated1444 returns a 404 error if not found1445 returns a 404 error if user is not a member1446 filters out users listed in skip_users1447 valid request1448 behaves like project users response1449 returns the project users1450 fork management1451 POST /projects/:id/fork/:forked_from_id1452 refreshes the forks count cache1453 behaves like POST request permissions for admin mode1454 behaves like when admin1455 behaves like makes request1456 returns1457 behaves like makes request1458 returns1459 behaves like when user1460 returns1461 behaves like makes request1462 returns1463 user is a developer1464 denies project to be forked from an existing project1465 user is maintainer1466 allows project to be forked from an existing project1467 fails without permission from forked_from project1468 denies project to be forked from a private project1469 user is admin1470 allows project to be forked from an existing project1471 allows project to be forked from a private project1472 refreshes the forks count cachce1473 fails if forked_from project which does not exist1474 fails with 409 if already forked1475 DELETE /projects/:id/fork1476 is not visible to users outside group1477 when users belong to project group1478 is forbidden to non-owner users1479 is idempotent if not forked1480 for a forked project1481 makes forked project unforked1482 behaves like DELETE request permissions for admin mode1483 behaves like when admin1484 behaves like makes request1485 returns1486 behaves like makes request1487 returns1488 behaves like when user1489 returns1490 behaves like makes request1491 returns1492 behaves like 412 response1493 for a modified ressource1494 returns 412 with a JSON error1495 for an unmodified ressource1496 returns 204 with an empty body1497 GET /projects/:id/forks1498 for a forked project1499 for a user that can access the forks1500 returns the forks1501 filter by updated_at1502 returns only forks updated on the given timeframe1503 for a user that cannot access the forks1504 returns an empty array1505 for a non-forked project1506 returns an empty array1507 POST /projects/:id/share1508 shares project with group1509 updates project authorization1510 returns a 400 error when group id is not given1511 returns a 400 error when access level is not given1512 returns a 400 error when sharing is disabled1513 returns a 404 error when user cannot read group1514 returns a 404 error when group does not exist1515 returns a 400 error when wrong params passed1516 returns a 400 error when the project-group share is created with an OWNER access level1517 returns a 409 error when link is not saved1518 DELETE /projects/:id/share/:group_id1519 returns a 400 when group id is not an integer1520 returns a 404 error when group link does not exist1521 returns a 404 error when project does not exist1522 for a valid group1523 returns 204 when deleting a group share1524 updates project authorization1525 behaves like 412 response1526 for a modified ressource1527 returns 412 with a JSON error1528 for an unmodified ressource1529 returns 204 with an empty body1530 POST /projects/:id/import_project_members/:project_id1531 records the query1532 returns 200 when it successfully imports members from another project1533 returns 404 if the source project does not exist1534 returns 404 if the target project members cannot be administered by the requester1535 returns 404 if the source project members cannot be viewed by the requester1536 returns 403 if the source project members cannot be administered by the requester1537 returns 422 if the import failed for valid projects1538 PUT /projects/:id1539 sets container_registry_access_level1540 sets container_registry_enabled1541 sets security_and_compliance_access_level1542 sets operations_access_level1543 sets analytics_access_level1544 sets releases_access_level1545 sets environments_access_level1546 sets feature_flags_access_level1547 sets infrastructure_access_level1548 sets monitor_access_level1549 returns 400 when nothing sent1550 behaves like PUT request permissions for admin mode1551 behaves like when admin1552 behaves like makes request1553 returns1554 behaves like makes request1555 returns1556 behaves like when user1557 returns1558 behaves like makes request1559 returns1560 updating packages_enabled attribute1561 is enabled by default1562 disables project packages feature1563 when unauthenticated1564 returns authentication error1565 when authenticated as project owner1566 updates visibility_level1567 updates visibility_level from public to private1568 does not update visibility_level if it is restricted1569 does not update name to existing name1570 updates request_access_enabled1571 updates path & name to existing path & name in different namespace1572 updates default_branch1573 updates jobs_enabled1574 updates builds_access_level1575 updates pages_access_level1576 updates emails_disabled1577 updates build_git_strategy1578 rejects to update build_git_strategy when build_git_strategy is invalid1579 updates merge_method1580 rejects to update merge_method when merge_method is invalid1581 updates restrict_user_defined_variables1582 updates auto_devops_deploy_strategy1583 updates auto_devops_enabled1584 updates topics using tag_list (deprecated)1585 updates topics1586 updates enforce_auth_checks_on_uploads1587 updates squash_option1588 does not update an invalid squash_option1589 with changes to the avatar1590 uploads avatar to project without an avatar1591 uploads and changes avatar to project with an avatar1592 uploads and changes avatar to project among other changes1593 removes avatar from project with an avatar1594 when authenticated as project maintainer1595 updates path1596 updates other attributes1597 does not update path to existing path1598 updates name1599 does not update visibility_level1600 updates container_expiration_policy1601 doesn't update container_expiration_policy with invalid regex1602 doesn't update container_expiration_policy with invalid keep_n1603 when authenticated as project developer1604 does not update other attributes1605 when authenticated as the admin1606 ignores visibility level restrictions1607 when updating repository storage1608 as a user1609 returns 200 but does not change repository_storage1610 as an admin1611 returns 400 when repository storage is unknown1612 returns 200 when repository storage has changed1613 when updating service desk1614 returns 2001615 enables the service_desk1616 when updating keep latest artifact1617 returns 2001618 enables keep_latest_artifact1619 attribute mr_default_target_self1620 is by default set to false1621 for a non-forked project1622 is not exposed1623 is not possible to update1624 for a forked project1625 updates to true1626 POST /projects/:id/archive1627 on an unarchived project1628 archives the project1629 on an archived project1630 remains archived1631 user without archiving rights to the project1632 rejects the action1633 POST /projects/:id/unarchive1634 on an unarchived project1635 remains unarchived1636 on an archived project1637 unarchives the project1638 user without archiving rights to the project1639 rejects the action1640 POST /projects/:id/star1641 on an unstarred project1642 stars the project1643 on a starred project1644 does not modify the star count1645 POST /projects/:id/unstar1646 on a starred project1647 unstars the project1648 on an unstarred project1649 does not modify the star count1650 GET /projects/:id/starrers1651 returns not_found(404) for not existing project1652 public project without user1653 returns only starrers with a public profile1654 behaves like project starrers response1655 returns an array of starrers1656 returns the proper security headers1657 public project with user with private profile1658 returns current user with a private profile1659 behaves like project starrers response1660 returns an array of starrers1661 returns the proper security headers1662 private project1663 with unauthorized user1664 returns not_found for existing but unauthorized project1665 without user1666 returns not_found for existing but unauthorized project1667 GET /projects/:id/languages1668 with an authorized user1669 returns not_found(404) for not existing project1670 behaves like languages and percentages JSON response1671 when the languages haven't been detected yet1672 returns expected language values1673 when the languages were detected before1674 returns the detection from the database1675 with not authorized user1676 returns not_found for existing but unauthorized project1677 without user1678 returns not_found for existing but unauthorized project1679 behaves like languages and percentages JSON response1680 when the languages haven't been detected yet1681 returns expected language values1682 when the languages were detected before1683 returns the detection from the database1684 DELETE /projects/:id1685 behaves like DELETE request permissions for admin mode1686 behaves like when admin1687 behaves like makes request1688 returns1689 behaves like makes request1690 returns1691 behaves like when user1692 returns1693 behaves like makes request1694 returns1695 when authenticated as user1696 removes project1697 does not remove a project if not an owner1698 does not remove a non existing project1699 does not remove a project not attached to user1700 behaves like 412 response1701 for a modified ressource1702 returns 412 with a JSON error1703 for an unmodified ressource1704 returns 204 with an empty body1705 when authenticated as admin1706 removes any existing project1707 does not remove a non existing project1708 behaves like 412 response1709 for a modified ressource1710 returns 412 with a JSON error1711 for an unmodified ressource1712 returns 204 with an empty body1713 POST /projects/:id/fork1714 behaves like POST request permissions for admin mode1715 behaves like when admin1716 behaves like makes request1717 returns1718 behaves like makes request1719 returns1720 behaves like when user1721 returns1722 behaves like makes request1723 returns1724 when authenticated1725 forks if user has sufficient access to project1726 forks if user is admin1727 fails on missing project access for the project to fork1728 fails if forked project exists in the user namespace1729 fails if project to fork from does not exist1730 forks with explicit own user namespace id1731 forks with explicit own user name as namespace1732 forks to another user when admin1733 fails if trying to fork to another user when not admin1734 fails if trying to fork to non-existent namespace1735 forks to owned group1736 forks to owned subgroup1737 fails to fork to not owned group1738 forks to not owned group when admin1739 accepts a path for the target project1740 fails to fork if path is already taken1741 accepts custom parameters for the target project1742 fails to fork if name is already taken1743 forks to the same namespace with alternative path and name1744 fails to fork to the same namespace without alternative path and name1745 fails to fork with an unknown visibility level1746 when namespace_id is specified1747 and namespace_id is specified alone1748 behaves like forking to specified namespace_id1749 forks to specified namespace_id1750 and namespace_id and namespace are both specified1751 behaves like forking to specified namespace_id1752 forks to specified namespace_id1753 and namespace_id and namespace_path are both specified1754 behaves like forking to specified namespace_id1755 forks to specified namespace_id1756 when namespace_path is specified1757 and namespace_path is specified alone1758 behaves like forking to specified namespace_path1759 forks to specified namespace_path1760 and namespace_path and namespace are both specified1761 behaves like forking to specified namespace_path1762 forks to specified namespace_path1763 when unauthenticated1764 returns authentication error1765 forking disabled1766 denies project to be forked1767 POST /projects/:id/housekeeping1768 when authenticated as owner1769 starts the housekeeping process1770 logs an audit event1771 when requesting prune1772 triggers a prune1773 when requesting an unsupported task1774 responds with bad_request1775 when housekeeping lease is taken1776 returns conflict1777 when authenticated as developer1778 returns forbidden error1779 when unauthenticated1780 returns authentication error1781 POST /projects/:id/repository_size1782 when authenticated as owner1783 starts the housekeeping process1784 when authenticated as developer1785 returns forbidden error1786 when unauthenticated1787 returns authentication error1788 PUT /projects/:id/transfer1789 when authenticated as owner1790 transfers the project to the new namespace1791 fails when transferring to a non owned namespace1792 fails when transferring to an unknown namespace1793 fails on missing namespace1794 when authenticated as developer1795 target namespace allows developers to create projects1796 fails transferring the project to the target namespace1797 GET /projects/:id/transfer_locations1798 when the user has rights to transfer the project1799 returns 2001800 includes groups where the user has permissions to transfer a project to1801 does not include groups where the user doesn not have permissions to transfer a project1802 with search1803 includes groups where the user has permissions to transfer a project to1804 group shares1805 only includes groups arising from group shares where the user has permission to transfer a project to1806 when the user does not have permissions to transfer the project1807 returns 4031808 GET /projects/:id/storage1809 returns project storage data when user is admin1810 does not return project storage data when user is not admin1811 responds with a 401 for unauthenticated users trying to access a non-existent project id1812 responds with a 403 for non-admin users trying to access a non-existent project id1813 behaves like GET request permissions for admin mode1814 behaves like when admin1815 behaves like makes request1816 returns1817 behaves like makes request1818 returns1819 behaves like when user1820 returns1821 behaves like makes request1822 returns1823 when unauthenticated1824 does not return project storage data1825 behaves like custom attributes endpoints1826 GET /projects with custom attributes filter1827 with an unauthorized user1828 does not filter by custom attributes1829 with an authorized user1830 filters by custom attributes1831 GET /projects with custom attributes1832 with an unauthorized user1833 does not include custom attributes1834 with an authorized user1835 does not include custom attributes by default1836 includes custom attributes if requested1837 GET /projects/:id with custom attributes1838 with an unauthorized user1839 does not include custom attributes1840 with an authorized user1841 does not include custom attributes by default1842 includes custom attributes if requested1843 GET /projects/:id/custom_attributes1844 with an unauthorized user1845 behaves like an unauthorized API user1846 is expected to eq 4031847 with an authorized user1848 returns all custom attributes1849 GET /projects/:id/custom_attributes/:key1850 with an unauthorized user1851 behaves like an unauthorized API user1852 is expected to eq 4031853 with an authorized user1854 returns a single custom attribute1855 PUT /projects/:id/custom_attributes/:key1856 with an unauthorized user1857 behaves like an unauthorized API user1858 is expected to eq 4031859 with an authorized user1860 creates a new custom attribute1861 updates an existing custom attribute1862 DELETE /projects/:id/custom_attributes/:key1863 with an unauthorized user1864 behaves like an unauthorized API user1865 is expected to eq 4031866 with an authorized user1867 deletes an existing custom attribute1868API::Discussions1869 when discussions have cross-reference system notes1870 behaves like with cross-reference system notes1871 returns only the note that the user should see1872 avoids Git calls and N+1 SQL queries1873 when noteable is an Issue1874 behaves like discussions API1875 GET /projects/:id/issues/:noteable_id/discussions1876 returns an array of discussions1877 returns a 404 error when noteable id not found1878 returns 404 when not authorized1879 GET /projects/:id/issues/:noteable_id/discussions/:discussion_id1880 returns a discussion by id1881 returns a 404 error if discussion not found1882 POST /projects/:id/issues/:noteable_id/discussions1883 creates a new note1884 returns a 400 bad request error if body not given1885 returns a 401 unauthorized error if user not authenticated1886 tracks a Notes::CreateService event1887 when an admin or owner makes the request1888 accepts the creation date to be set1889 when user does not have access to read the discussion1890 responds with 4041891 when a project is public with private repo access1892 when user is not a team member of private repo1893 creating a new note1894 raises 404 error1895 fetching a discussion1896 raises 404 error1897 POST /projects/:id/issues/:noteable_id/discussions/:discussion_id/notes1898 adds a new note to the discussion1899 returns a 400 bad request error if body not given1900 when the discussion is an individual note1901 creates a new discussion1902 PUT /projects/:id/issues/:noteable_id/discussions/:discussion_id/notes/:note_id1903 returns modified note1904 returns a 404 error when note id not found1905 returns a 400 bad request error if body not given1906 DELETE /projects/:id/issues/:noteable_id/discussions/:discussion_id/notes/:note_id1907 deletes a note1908 returns a 404 error when note id not found1909 behaves like 412 response1910 for a modified ressource1911 returns 412 with a JSON error1912 for an unmodified ressource1913 returns 204 with an empty body1914 when noteable is a WorkItem1915 behaves like discussions API1916 GET /projects/:id/issues/:noteable_id/discussions1917 returns an array of discussions1918 returns a 404 error when noteable id not found1919 returns 404 when not authorized1920 GET /projects/:id/issues/:noteable_id/discussions/:discussion_id1921 returns a discussion by id1922 returns a 404 error if discussion not found1923 POST /projects/:id/issues/:noteable_id/discussions1924 creates a new note1925 returns a 400 bad request error if body not given1926 returns a 401 unauthorized error if user not authenticated1927 tracks a Notes::CreateService event1928 when an admin or owner makes the request1929 accepts the creation date to be set1930 when user does not have access to read the discussion1931 responds with 4041932 when a project is public with private repo access1933 when user is not a team member of private repo1934 creating a new note1935 raises 404 error1936 fetching a discussion1937 raises 404 error1938 POST /projects/:id/issues/:noteable_id/discussions/:discussion_id/notes1939 adds a new note to the discussion1940 returns a 400 bad request error if body not given1941 when the discussion is an individual note1942 creates a new discussion1943 PUT /projects/:id/issues/:noteable_id/discussions/:discussion_id/notes/:note_id1944 returns modified note1945 returns a 404 error when note id not found1946 returns a 400 bad request error if body not given1947 DELETE /projects/:id/issues/:noteable_id/discussions/:discussion_id/notes/:note_id1948 deletes a note1949 returns a 404 error when note id not found1950 behaves like 412 response1951 for a modified ressource1952 returns 412 with a JSON error1953 for an unmodified ressource1954 returns 204 with an empty body1955 with work item without notes widget1956 when fetching discussions1957 returns 4041958 when single fetching discussion by discussion_id1959 returns 4041960 when trying to create a new discussion1961 returns 4041962 when trying to create a new comment on a discussion1963 returns 4041964 when trying to update a new comment on a discussion1965 returns 4041966 when deleting a note1967 returns 4041968 when noteable is a Snippet1969 behaves like discussions API1970 GET /projects/:id/snippets/:noteable_id/discussions1971 returns an array of discussions1972 returns a 404 error when noteable id not found1973 returns 404 when not authorized1974 GET /projects/:id/snippets/:noteable_id/discussions/:discussion_id1975 returns a discussion by id1976 returns a 404 error if discussion not found1977 POST /projects/:id/snippets/:noteable_id/discussions1978 creates a new note1979 returns a 400 bad request error if body not given1980 returns a 401 unauthorized error if user not authenticated1981 tracks a Notes::CreateService event1982 when an admin or owner makes the request1983 accepts the creation date to be set1984 when user does not have access to read the discussion1985 responds with 4041986 when a project is public with private repo access1987 when user is not a team member of private repo1988 creating a new note1989 raises 404 error1990 fetching a discussion1991 raises 404 error1992 POST /projects/:id/snippets/:noteable_id/discussions/:discussion_id/notes1993 adds a new note to the discussion1994 returns a 400 bad request error if body not given1995 when the discussion is an individual note1996 returns 400 bad request1997 PUT /projects/:id/snippets/:noteable_id/discussions/:discussion_id/notes/:note_id1998 returns modified note1999 returns a 404 error when note id not found2000 returns a 400 bad request error if body not given2001 DELETE /projects/:id/snippets/:noteable_id/discussions/:discussion_id/notes/:note_id2002 deletes a note2003 returns a 404 error when note id not found2004 behaves like 412 response2005 for a modified ressource2006 returns 412 with a JSON error2007 for an unmodified ressource2008 returns 204 with an empty body2009 when noteable is a Merge Request2010 behaves like discussions API2011 GET /projects/:id/merge_requests/:noteable_id/discussions2012 returns an array of discussions2013 returns a 404 error when noteable id not found2014 returns 404 when not authorized2015 GET /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id2016 returns a discussion by id2017 returns a 404 error if discussion not found2018 POST /projects/:id/merge_requests/:noteable_id/discussions2019 creates a new note2020 returns a 400 bad request error if body not given2021 returns a 401 unauthorized error if user not authenticated2022 tracks a Notes::CreateService event2023 when an admin or owner makes the request2024 accepts the creation date to be set2025 when user does not have access to read the discussion2026 responds with 4042027 when a project is public with private repo access2028 when user is not a team member of private repo2029 creating a new note2030 raises 404 error2031 fetching a discussion2032 raises 404 error2033 POST /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id/notes2034 adds a new note to the discussion2035 returns a 400 bad request error if body not given2036 when the discussion is an individual note2037 creates a new discussion2038 PUT /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id/notes/:note_id2039 returns modified note2040 returns a 404 error when note id not found2041 returns a 400 bad request error if body not given2042 DELETE /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id/notes/:note_id2043 deletes a note2044 returns a 404 error when note id not found2045 behaves like 412 response2046 for a modified ressource2047 returns 412 with a JSON error2048 for an unmodified ressource2049 returns 204 with an empty body2050 behaves like diff discussions API2051 GET /projects/:id/merge_requests/:noteable_id/discussions2052 includes diff discussions2053 GET /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id2054 returns a discussion by id2055 POST /projects/:id/merge_requests/:noteable_id/discussions2056 creates a new diff note2057 when position is invalid2058 returns a 400 bad request error when position is not plausible2059 returns a 400 bad request error when the position is not valid for this discussion2060 POST /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id/notes2061 adds a new note to the diff discussion2062 behaves like resolvable discussions API2063 PUT /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id2064 resolves discussion if resolved is true2065 unresolves discussion if resolved is false2066 returns a 400 bad request error if resolved parameter is not passed2067 returns a 401 unauthorized error if user is not authenticated2068 returns a 403 error if user resolves discussion of someone else2069 when user does not have access to read the discussion2070 responds with 4042071 PUT /projects/:id/merge_requests/:noteable_id/discussions/:discussion_id/notes/:note_id2072 returns resolved note when resolved parameter is true2073 returns a 404 error when note id not found2074 returns a 400 bad request error if neither body nor resolved parameter is given2075 returns a 403 error if user resolves note of someone else2076 when position is for a previous commit on the merge request2077 returns a 400 bad request error because the line_code is old2078 when a commit parameter is given2079 creates the discussion on that commit within the merge request2080 when noteable is a Commit2081 behaves like discussions API2082 GET /projects/:id/repository/commits/:noteable_id/discussions2083 returns an array of discussions2084 returns a 404 error when noteable id not found2085 returns 404 when not authorized2086 GET /projects/:id/repository/commits/:noteable_id/discussions/:discussion_id2087 returns a discussion by id2088 returns a 404 error if discussion not found2089 POST /projects/:id/repository/commits/:noteable_id/discussions2090 creates a new note2091 returns a 400 bad request error if body not given2092 returns a 401 unauthorized error if user not authenticated2093 tracks a Notes::CreateService event2094 when an admin or owner makes the request2095 accepts the creation date to be set2096 when user does not have access to read the discussion2097 responds with 4042098 when a project is public with private repo access2099 when user is not a team member of private repo2100 creating a new note2101 raises 404 error2102 fetching a discussion2103 raises 404 error2104 POST /projects/:id/repository/commits/:noteable_id/discussions/:discussion_id/notes2105 adds a new note to the discussion2106 returns a 400 bad request error if body not given2107 when the discussion is an individual note2108 returns 400 bad request2109 PUT /projects/:id/repository/commits/:noteable_id/discussions/:discussion_id/notes/:note_id2110 returns modified note2111 returns a 404 error when note id not found2112 returns a 400 bad request error if body not given2113 DELETE /projects/:id/repository/commits/:noteable_id/discussions/:discussion_id/notes/:note_id2114 deletes a note2115 returns a 404 error when note id not found2116 behaves like 412 response2117 for a modified ressource2118 returns 412 with a JSON error2119 for an unmodified ressource2120 returns 204 with an empty body2121 behaves like diff discussions API2122 GET /projects/:id/repository/commits/:noteable_id/discussions2123 includes diff discussions2124 GET /projects/:id/repository/commits/:noteable_id/discussions/:discussion_id2125 returns a discussion by id2126 POST /projects/:id/repository/commits/:noteable_id/discussions2127 creates a new diff note2128 when position is invalid2129 returns a 400 bad request error when position is not plausible2130 returns a 400 bad request error when the position is not valid for this discussion2131 POST /projects/:id/repository/commits/:noteable_id/discussions/:discussion_id/notes2132 adds a new note to the diff discussion2133API::DebianProjectPackages2134 with invalid parameter2135 behaves like Debian packages GET request2136 returns bad_request and expected body2137 behaves like not a Debian package tracking event2138 behaves like not a package tracking event2139 does not create a gitlab tracking event2140 GET projects/:id/packages/debian/dists/*distribution/Release.gpg2141 behaves like Debian packages read endpoint2142 with valid container2143 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/2144 behaves like Debian packages GET request2145 returns success and expected body2146 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/2147 behaves like Debian packages GET request2148 returns success and expected body2149 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/2150 behaves like Debian packages GET request2151 returns success and expected body2152 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2153 behaves like Debian packages GET request2154 returns unauthorized2155 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNATURE-----/2156 behaves like Debian packages GET request2157 returns success and expected body2158 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2159 behaves like Debian packages GET request2160 returns unauthorized2161 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2162 behaves like Debian packages GET request2163 returns forbidden2164 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2165 behaves like Debian packages GET request2166 returns not_found2167 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2168 behaves like Debian packages GET request2169 returns unauthorized2170 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2171 behaves like Debian packages GET request2172 returns unauthorized2173 behaves like rejects Debian access with unknown container id2174 with an unknown container2175 as anonymous2176 behaves like Debian packages GET request2177 returns unauthorized2178 as authenticated user2179 behaves like Debian packages GET request2180 returns not_found2181 behaves like not a Debian package tracking event2182 behaves like not a package tracking event2183 does not create a gitlab tracking event2184 behaves like accept GET request on private project with access to package registry for everyone2185 behaves like Debian packages GET request2186 returns success2187 GET projects/:id/packages/debian/dists/*distribution/Release2188 behaves like Debian packages read endpoint2189 with valid container2190 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/2191 behaves like Debian packages GET request2192 returns success and expected body2193 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/2194 behaves like Debian packages GET request2195 returns success and expected body2196 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/2197 behaves like Debian packages GET request2198 returns success and expected body2199 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2200 behaves like Debian packages GET request2201 returns unauthorized2202 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Codename: fixture-distribution\n$/2203 behaves like Debian packages GET request2204 returns success and expected body2205 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2206 behaves like Debian packages GET request2207 returns unauthorized2208 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2209 behaves like Debian packages GET request2210 returns forbidden2211 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2212 behaves like Debian packages GET request2213 returns not_found2214 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2215 behaves like Debian packages GET request2216 returns unauthorized2217 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2218 behaves like Debian packages GET request2219 returns unauthorized2220 behaves like rejects Debian access with unknown container id2221 with an unknown container2222 as anonymous2223 behaves like Debian packages GET request2224 returns unauthorized2225 as authenticated user2226 behaves like Debian packages GET request2227 returns not_found2228 behaves like a Debian package tracking event2229 behaves like a package tracking event2230 creates a gitlab tracking event list_package2231 behaves like accept GET request on private project with access to package registry for everyone2232 behaves like Debian packages GET request2233 returns success2234 GET projects/:id/packages/debian/dists/*distribution/InRelease2235 behaves like Debian packages read endpoint2236 with valid container2237 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/2238 behaves like Debian packages GET request2239 returns success and expected body2240 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/2241 behaves like Debian packages GET request2242 returns success and expected body2243 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/2244 behaves like Debian packages GET request2245 returns success and expected body2246 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2247 behaves like Debian packages GET request2248 returns unauthorized2249 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^-----BEGIN PGP SIGNED MESSAGE-----/2250 behaves like Debian packages GET request2251 returns success and expected body2252 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2253 behaves like Debian packages GET request2254 returns unauthorized2255 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2256 behaves like Debian packages GET request2257 returns forbidden2258 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2259 behaves like Debian packages GET request2260 returns not_found2261 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2262 behaves like Debian packages GET request2263 returns unauthorized2264 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2265 behaves like Debian packages GET request2266 returns unauthorized2267 behaves like rejects Debian access with unknown container id2268 with an unknown container2269 as anonymous2270 behaves like Debian packages GET request2271 returns unauthorized2272 as authenticated user2273 behaves like Debian packages GET request2274 returns not_found2275 behaves like a Debian package tracking event2276 behaves like a package tracking event2277 creates a gitlab tracking event list_package2278 behaves like accept GET request on private project with access to package registry for everyone2279 behaves like Debian packages GET request2280 returns success2281 GET projects/:id/packages/debian/dists/*distribution/:component/binary-:architecture/Packages2282 behaves like Debian packages index endpoint2283 behaves like Debian packages read endpoint2284 with valid container2285 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/2286 behaves like Debian packages GET request2287 returns success and expected body2288 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/2289 behaves like Debian packages GET request2290 returns success and expected body2291 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/2292 behaves like Debian packages GET request2293 returns success and expected body2294 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2295 behaves like Debian packages GET request2296 returns unauthorized2297 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete Packages file/2298 behaves like Debian packages GET request2299 returns success and expected body2300 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2301 behaves like Debian packages GET request2302 returns unauthorized2303 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2304 behaves like Debian packages GET request2305 returns forbidden2306 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2307 behaves like Debian packages GET request2308 returns not_found2309 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2310 behaves like Debian packages GET request2311 returns unauthorized2312 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2313 behaves like Debian packages GET request2314 returns unauthorized2315 behaves like rejects Debian access with unknown container id2316 with an unknown container2317 as anonymous2318 behaves like Debian packages GET request2319 returns unauthorized2320 as authenticated user2321 behaves like Debian packages GET request2322 returns not_found2323 when no ComponentFile is found2324 behaves like Debian packages read endpoint2325 with valid container2326 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2327 behaves like Debian packages GET request2328 returns no_content and expected body2329 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2330 behaves like Debian packages GET request2331 returns no_content and expected body2332 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2333 behaves like Debian packages GET request2334 returns no_content and expected body2335 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2336 behaves like Debian packages GET request2337 returns unauthorized2338 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2339 behaves like Debian packages GET request2340 returns no_content and expected body2341 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2342 behaves like Debian packages GET request2343 returns unauthorized2344 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2345 behaves like Debian packages GET request2346 returns forbidden2347 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2348 behaves like Debian packages GET request2349 returns not_found2350 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2351 behaves like Debian packages GET request2352 returns unauthorized2353 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2354 behaves like Debian packages GET request2355 returns unauthorized2356 behaves like rejects Debian access with unknown container id2357 with an unknown container2358 as anonymous2359 behaves like Debian packages GET request2360 returns unauthorized2361 as authenticated user2362 behaves like Debian packages GET request2363 returns not_found2364 behaves like a Debian package tracking event2365 behaves like a package tracking event2366 creates a gitlab tracking event list_package2367 behaves like accept GET request on private project with access to package registry for everyone2368 behaves like Debian packages GET request2369 returns success2370 GET projects/:id/packages/debian/dists/*distribution/:component/binary-:architecture/Packages.gz2371 behaves like Debian packages read endpoint2372 with valid container2373 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2374 behaves like Debian packages GET request2375 returns not_found and expected body2376 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2377 behaves like Debian packages GET request2378 returns not_found and expected body2379 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2380 behaves like Debian packages GET request2381 returns not_found and expected body2382 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2383 behaves like Debian packages GET request2384 returns unauthorized2385 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2386 behaves like Debian packages GET request2387 returns not_found and expected body2388 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2389 behaves like Debian packages GET request2390 returns unauthorized2391 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2392 behaves like Debian packages GET request2393 returns forbidden2394 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2395 behaves like Debian packages GET request2396 returns not_found2397 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2398 behaves like Debian packages GET request2399 returns unauthorized2400 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2401 behaves like Debian packages GET request2402 returns unauthorized2403 behaves like rejects Debian access with unknown container id2404 with an unknown container2405 as anonymous2406 behaves like Debian packages GET request2407 returns unauthorized2408 as authenticated user2409 behaves like Debian packages GET request2410 returns not_found2411 behaves like not a Debian package tracking event2412 behaves like not a package tracking event2413 does not create a gitlab tracking event2414 GET projects/:id/packages/debian/dists/*distribution/:component/binary-:architecture/by-hash/SHA256/:file_sha2562415 behaves like Debian packages index sha256 endpoint2416 behaves like Debian packages read endpoint2417 with valid container2418 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2419 behaves like Debian packages GET request2420 returns success and expected body2421 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2422 behaves like Debian packages GET request2423 returns success and expected body2424 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2425 behaves like Debian packages GET request2426 returns success and expected body2427 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2428 behaves like Debian packages GET request2429 returns unauthorized2430 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2431 behaves like Debian packages GET request2432 returns success and expected body2433 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2434 behaves like Debian packages GET request2435 returns unauthorized2436 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2437 behaves like Debian packages GET request2438 returns forbidden2439 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2440 behaves like Debian packages GET request2441 returns not_found2442 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2443 behaves like Debian packages GET request2444 returns unauthorized2445 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2446 behaves like Debian packages GET request2447 returns unauthorized2448 behaves like rejects Debian access with unknown container id2449 with an unknown container2450 as anonymous2451 behaves like Debian packages GET request2452 returns unauthorized2453 as authenticated user2454 behaves like Debian packages GET request2455 returns not_found2456 with empty checksum2457 behaves like Debian packages read endpoint2458 with valid container2459 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2460 behaves like Debian packages GET request2461 returns no_content and expected body2462 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2463 behaves like Debian packages GET request2464 returns no_content and expected body2465 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2466 behaves like Debian packages GET request2467 returns no_content and expected body2468 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2469 behaves like Debian packages GET request2470 returns unauthorized2471 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2472 behaves like Debian packages GET request2473 returns no_content and expected body2474 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2475 behaves like Debian packages GET request2476 returns unauthorized2477 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2478 behaves like Debian packages GET request2479 returns forbidden2480 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2481 behaves like Debian packages GET request2482 returns not_found2483 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2484 behaves like Debian packages GET request2485 returns unauthorized2486 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2487 behaves like Debian packages GET request2488 returns unauthorized2489 behaves like rejects Debian access with unknown container id2490 with an unknown container2491 as anonymous2492 behaves like Debian packages GET request2493 returns unauthorized2494 as authenticated user2495 behaves like Debian packages GET request2496 returns not_found2497 when ComponentFile is not found2498 behaves like Debian packages read endpoint2499 with valid container2500 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2501 behaves like Debian packages GET request2502 returns not_found and expected body2503 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2504 behaves like Debian packages GET request2505 returns not_found and expected body2506 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2507 behaves like Debian packages GET request2508 returns not_found and expected body2509 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2510 behaves like Debian packages GET request2511 returns unauthorized2512 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2513 behaves like Debian packages GET request2514 returns not_found and expected body2515 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2516 behaves like Debian packages GET request2517 returns unauthorized2518 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2519 behaves like Debian packages GET request2520 returns forbidden2521 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2522 behaves like Debian packages GET request2523 returns not_found2524 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2525 behaves like Debian packages GET request2526 returns unauthorized2527 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2528 behaves like Debian packages GET request2529 returns unauthorized2530 behaves like rejects Debian access with unknown container id2531 with an unknown container2532 as anonymous2533 behaves like Debian packages GET request2534 returns unauthorized2535 as authenticated user2536 behaves like Debian packages GET request2537 returns not_found2538 behaves like a Debian package tracking event2539 behaves like a package tracking event2540 creates a gitlab tracking event list_package2541 behaves like accept GET request on private project with access to package registry for everyone2542 behaves like Debian packages GET request2543 returns success2544 GET projects/:id/packages/debian/dists/*distribution/:component/source/Sources2545 behaves like Debian packages index endpoint2546 behaves like Debian packages read endpoint2547 with valid container2548 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Description: This is an incomplete Sources file$/2549 behaves like Debian packages GET request2550 returns success and expected body2551 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Description: This is an incomplete Sources file$/2552 behaves like Debian packages GET request2553 returns success and expected body2554 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Description: This is an incomplete Sources file$/2555 behaves like Debian packages GET request2556 returns success and expected body2557 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2558 behaves like Debian packages GET request2559 returns unauthorized2560 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Description: This is an incomplete Sources file$/2561 behaves like Debian packages GET request2562 returns success and expected body2563 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2564 behaves like Debian packages GET request2565 returns unauthorized2566 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2567 behaves like Debian packages GET request2568 returns forbidden2569 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2570 behaves like Debian packages GET request2571 returns not_found2572 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2573 behaves like Debian packages GET request2574 returns unauthorized2575 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2576 behaves like Debian packages GET request2577 returns unauthorized2578 behaves like rejects Debian access with unknown container id2579 with an unknown container2580 as anonymous2581 behaves like Debian packages GET request2582 returns unauthorized2583 as authenticated user2584 behaves like Debian packages GET request2585 returns not_found2586 when no ComponentFile is found2587 behaves like Debian packages read endpoint2588 with valid container2589 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2590 behaves like Debian packages GET request2591 returns no_content and expected body2592 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2593 behaves like Debian packages GET request2594 returns no_content and expected body2595 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2596 behaves like Debian packages GET request2597 returns no_content and expected body2598 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2599 behaves like Debian packages GET request2600 returns unauthorized2601 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2602 behaves like Debian packages GET request2603 returns no_content and expected body2604 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2605 behaves like Debian packages GET request2606 returns unauthorized2607 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2608 behaves like Debian packages GET request2609 returns forbidden2610 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2611 behaves like Debian packages GET request2612 returns not_found2613 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2614 behaves like Debian packages GET request2615 returns unauthorized2616 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2617 behaves like Debian packages GET request2618 returns unauthorized2619 behaves like rejects Debian access with unknown container id2620 with an unknown container2621 as anonymous2622 behaves like Debian packages GET request2623 returns unauthorized2624 as authenticated user2625 behaves like Debian packages GET request2626 returns not_found2627 behaves like a Debian package tracking event2628 behaves like a package tracking event2629 creates a gitlab tracking event list_package2630 behaves like accept GET request on private project with access to package registry for everyone2631 behaves like Debian packages GET request2632 returns success2633 GET projects/:id/packages/debian/dists/*distribution/:component/source/by-hash/SHA256/:file_sha2562634 behaves like Debian packages index sha256 endpoint2635 behaves like Debian packages read endpoint2636 with valid container2637 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2638 behaves like Debian packages GET request2639 returns success and expected body2640 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2641 behaves like Debian packages GET request2642 returns success and expected body2643 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2644 behaves like Debian packages GET request2645 returns success and expected body2646 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2647 behaves like Debian packages GET request2648 returns unauthorized2649 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2650 behaves like Debian packages GET request2651 returns success and expected body2652 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2653 behaves like Debian packages GET request2654 returns unauthorized2655 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2656 behaves like Debian packages GET request2657 returns forbidden2658 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2659 behaves like Debian packages GET request2660 returns not_found2661 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2662 behaves like Debian packages GET request2663 returns unauthorized2664 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2665 behaves like Debian packages GET request2666 returns unauthorized2667 behaves like rejects Debian access with unknown container id2668 with an unknown container2669 as anonymous2670 behaves like Debian packages GET request2671 returns unauthorized2672 as authenticated user2673 behaves like Debian packages GET request2674 returns not_found2675 with empty checksum2676 behaves like Debian packages read endpoint2677 with valid container2678 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2679 behaves like Debian packages GET request2680 returns no_content and expected body2681 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2682 behaves like Debian packages GET request2683 returns no_content and expected body2684 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2685 behaves like Debian packages GET request2686 returns no_content and expected body2687 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2688 behaves like Debian packages GET request2689 returns unauthorized2690 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2691 behaves like Debian packages GET request2692 returns no_content and expected body2693 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2694 behaves like Debian packages GET request2695 returns unauthorized2696 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2697 behaves like Debian packages GET request2698 returns forbidden2699 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2700 behaves like Debian packages GET request2701 returns not_found2702 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2703 behaves like Debian packages GET request2704 returns unauthorized2705 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2706 behaves like Debian packages GET request2707 returns unauthorized2708 behaves like rejects Debian access with unknown container id2709 with an unknown container2710 as anonymous2711 behaves like Debian packages GET request2712 returns unauthorized2713 as authenticated user2714 behaves like Debian packages GET request2715 returns not_found2716 when ComponentFile is not found2717 behaves like Debian packages read endpoint2718 with valid container2719 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2720 behaves like Debian packages GET request2721 returns not_found and expected body2722 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2723 behaves like Debian packages GET request2724 returns not_found and expected body2725 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2726 behaves like Debian packages GET request2727 returns not_found and expected body2728 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2729 behaves like Debian packages GET request2730 returns unauthorized2731 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2732 behaves like Debian packages GET request2733 returns not_found and expected body2734 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2735 behaves like Debian packages GET request2736 returns unauthorized2737 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2738 behaves like Debian packages GET request2739 returns forbidden2740 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2741 behaves like Debian packages GET request2742 returns not_found2743 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2744 behaves like Debian packages GET request2745 returns unauthorized2746 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2747 behaves like Debian packages GET request2748 returns unauthorized2749 behaves like rejects Debian access with unknown container id2750 with an unknown container2751 as anonymous2752 behaves like Debian packages GET request2753 returns unauthorized2754 as authenticated user2755 behaves like Debian packages GET request2756 returns not_found2757 behaves like a Debian package tracking event2758 behaves like a package tracking event2759 creates a gitlab tracking event list_package2760 behaves like accept GET request on private project with access to package registry for everyone2761 behaves like Debian packages GET request2762 returns success2763 GET projects/:id/packages/debian/dists/*distribution/:component/debian-installer/binary-:architecture/Packages2764 behaves like Debian packages index endpoint2765 behaves like Debian packages read endpoint2766 with valid container2767 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete D-I Packages file/2768 behaves like Debian packages GET request2769 returns success and expected body2770 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete D-I Packages file/2771 behaves like Debian packages GET request2772 returns success and expected body2773 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete D-I Packages file/2774 behaves like Debian packages GET request2775 returns success and expected body2776 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2777 behaves like Debian packages GET request2778 returns unauthorized2779 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /Description: This is an incomplete D-I Packages file/2780 behaves like Debian packages GET request2781 returns success and expected body2782 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2783 behaves like Debian packages GET request2784 returns unauthorized2785 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2786 behaves like Debian packages GET request2787 returns forbidden2788 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2789 behaves like Debian packages GET request2790 returns not_found2791 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2792 behaves like Debian packages GET request2793 returns unauthorized2794 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2795 behaves like Debian packages GET request2796 returns unauthorized2797 behaves like rejects Debian access with unknown container id2798 with an unknown container2799 as anonymous2800 behaves like Debian packages GET request2801 returns unauthorized2802 as authenticated user2803 behaves like Debian packages GET request2804 returns not_found2805 when no ComponentFile is found2806 behaves like Debian packages read endpoint2807 with valid container2808 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2809 behaves like Debian packages GET request2810 returns no_content and expected body2811 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2812 behaves like Debian packages GET request2813 returns no_content and expected body2814 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2815 behaves like Debian packages GET request2816 returns no_content and expected body2817 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2818 behaves like Debian packages GET request2819 returns unauthorized2820 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2821 behaves like Debian packages GET request2822 returns no_content and expected body2823 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2824 behaves like Debian packages GET request2825 returns unauthorized2826 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2827 behaves like Debian packages GET request2828 returns forbidden2829 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2830 behaves like Debian packages GET request2831 returns not_found2832 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2833 behaves like Debian packages GET request2834 returns unauthorized2835 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2836 behaves like Debian packages GET request2837 returns unauthorized2838 behaves like rejects Debian access with unknown container id2839 with an unknown container2840 as anonymous2841 behaves like Debian packages GET request2842 returns unauthorized2843 as authenticated user2844 behaves like Debian packages GET request2845 returns not_found2846 behaves like a Debian package tracking event2847 behaves like a package tracking event2848 creates a gitlab tracking event list_package2849 behaves like accept GET request on private project with access to package registry for everyone2850 behaves like Debian packages GET request2851 returns success2852 GET projects/:id/packages/debian/dists/*distribution/:component/debian-installer/binary-:architecture/Packages.gz2853 behaves like Debian packages read endpoint2854 with valid container2855 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2856 behaves like Debian packages GET request2857 returns not_found and expected body2858 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2859 behaves like Debian packages GET request2860 returns not_found and expected body2861 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2862 behaves like Debian packages GET request2863 returns not_found and expected body2864 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2865 behaves like Debian packages GET request2866 returns unauthorized2867 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :not_found, expected_body: /Format gz is not supported/2868 behaves like Debian packages GET request2869 returns not_found and expected body2870 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2871 behaves like Debian packages GET request2872 returns unauthorized2873 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2874 behaves like Debian packages GET request2875 returns forbidden2876 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2877 behaves like Debian packages GET request2878 returns not_found2879 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2880 behaves like Debian packages GET request2881 returns unauthorized2882 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2883 behaves like Debian packages GET request2884 returns unauthorized2885 behaves like rejects Debian access with unknown container id2886 with an unknown container2887 as anonymous2888 behaves like Debian packages GET request2889 returns unauthorized2890 as authenticated user2891 behaves like Debian packages GET request2892 returns not_found2893 behaves like not a Debian package tracking event2894 behaves like not a package tracking event2895 does not create a gitlab tracking event2896 GET projects/:id/packages/debian/dists/*distribution/:component/debian-installer/binary-:architecture/by-hash/SHA256/:file_sha2562897 behaves like Debian packages index sha256 endpoint2898 behaves like Debian packages read endpoint2899 with valid container2900 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2901 behaves like Debian packages GET request2902 returns success and expected body2903 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2904 behaves like Debian packages GET request2905 returns success and expected body2906 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2907 behaves like Debian packages GET request2908 returns success and expected body2909 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2910 behaves like Debian packages GET request2911 returns unauthorized2912 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Other SHA256$/2913 behaves like Debian packages GET request2914 returns success and expected body2915 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2916 behaves like Debian packages GET request2917 returns unauthorized2918 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2919 behaves like Debian packages GET request2920 returns forbidden2921 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2922 behaves like Debian packages GET request2923 returns not_found2924 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2925 behaves like Debian packages GET request2926 returns unauthorized2927 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2928 behaves like Debian packages GET request2929 returns unauthorized2930 behaves like rejects Debian access with unknown container id2931 with an unknown container2932 as anonymous2933 behaves like Debian packages GET request2934 returns unauthorized2935 as authenticated user2936 behaves like Debian packages GET request2937 returns not_found2938 with empty checksum2939 behaves like Debian packages read endpoint2940 with valid container2941 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2942 behaves like Debian packages GET request2943 returns no_content and expected body2944 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2945 behaves like Debian packages GET request2946 returns no_content and expected body2947 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2948 behaves like Debian packages GET request2949 returns no_content and expected body2950 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2951 behaves like Debian packages GET request2952 returns unauthorized2953 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :no_content, expected_body: /^$/2954 behaves like Debian packages GET request2955 returns no_content and expected body2956 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2957 behaves like Debian packages GET request2958 returns unauthorized2959 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil2960 behaves like Debian packages GET request2961 returns forbidden2962 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil2963 behaves like Debian packages GET request2964 returns not_found2965 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2966 behaves like Debian packages GET request2967 returns unauthorized2968 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2969 behaves like Debian packages GET request2970 returns unauthorized2971 behaves like rejects Debian access with unknown container id2972 with an unknown container2973 as anonymous2974 behaves like Debian packages GET request2975 returns unauthorized2976 as authenticated user2977 behaves like Debian packages GET request2978 returns not_found2979 when ComponentFile is not found2980 behaves like Debian packages read endpoint2981 with valid container2982 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2983 behaves like Debian packages GET request2984 returns not_found and expected body2985 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2986 behaves like Debian packages GET request2987 returns not_found and expected body2988 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2989 behaves like Debian packages GET request2990 returns not_found and expected body2991 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil2992 behaves like Debian packages GET request2993 returns unauthorized2994 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :not_found, expected_body: /^{"message":"404 Not Found"}$/2995 behaves like Debian packages GET request2996 returns not_found and expected body2997 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil2998 behaves like Debian packages GET request2999 returns unauthorized3000 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3001 behaves like Debian packages GET request3002 returns forbidden3003 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3004 behaves like Debian packages GET request3005 returns not_found3006 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3007 behaves like Debian packages GET request3008 returns unauthorized3009 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3010 behaves like Debian packages GET request3011 returns unauthorized3012 behaves like rejects Debian access with unknown container id3013 with an unknown container3014 as anonymous3015 behaves like Debian packages GET request3016 returns unauthorized3017 as authenticated user3018 behaves like Debian packages GET request3019 returns not_found3020 behaves like a Debian package tracking event3021 behaves like a package tracking event3022 creates a gitlab tracking event list_package3023 behaves like accept GET request on private project with access to package registry for everyone3024 behaves like Debian packages GET request3025 returns success3026 GET projects/:id/packages/debian/pool/:codename/:letter/:package_name/:package_version/:file_name3027 file_name: "sample_1.2.3~alpha2.tar.xz", success_body: /^.7zXZ/3028 behaves like Debian packages read endpoint3029 with valid container3030 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/3031 behaves like Debian packages GET request3032 returns success and expected body3033 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/3034 behaves like Debian packages GET request3035 returns success and expected body3036 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/3037 behaves like Debian packages GET request3038 returns success and expected body3039 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3040 behaves like Debian packages GET request3041 returns unauthorized3042 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^.7zXZ/3043 behaves like Debian packages GET request3044 returns success and expected body3045 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3046 behaves like Debian packages GET request3047 returns unauthorized3048 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3049 behaves like Debian packages GET request3050 returns forbidden3051 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3052 behaves like Debian packages GET request3053 returns not_found3054 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3055 behaves like Debian packages GET request3056 returns unauthorized3057 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3058 behaves like Debian packages GET request3059 returns unauthorized3060 behaves like rejects Debian access with unknown container id3061 with an unknown container3062 as anonymous3063 behaves like Debian packages GET request3064 returns unauthorized3065 as authenticated user3066 behaves like Debian packages GET request3067 returns not_found3068 behaves like a Debian package tracking event3069 behaves like a package tracking event3070 creates a gitlab tracking event pull_package3071 for bumping last downloaded at3072 behaves like bumping the package last downloaded at field3073 bumps last_downloaded_at3074 file_name: "sample_1.2.3~alpha2.dsc", success_body: /^Format: 3.0 \(native\)/3075 behaves like Debian packages read endpoint3076 with valid container3077 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/3078 behaves like Debian packages GET request3079 returns success and expected body3080 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/3081 behaves like Debian packages GET request3082 returns success and expected body3083 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/3084 behaves like Debian packages GET request3085 returns success and expected body3086 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3087 behaves like Debian packages GET request3088 returns unauthorized3089 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^Format: 3.0 \(native\)/3090 behaves like Debian packages GET request3091 returns success and expected body3092 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3093 behaves like Debian packages GET request3094 returns unauthorized3095 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3096 behaves like Debian packages GET request3097 returns forbidden3098 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3099 behaves like Debian packages GET request3100 returns not_found3101 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3102 behaves like Debian packages GET request3103 returns unauthorized3104 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3105 behaves like Debian packages GET request3106 returns unauthorized3107 behaves like rejects Debian access with unknown container id3108 with an unknown container3109 as anonymous3110 behaves like Debian packages GET request3111 returns unauthorized3112 as authenticated user3113 behaves like Debian packages GET request3114 returns not_found3115 behaves like a Debian package tracking event3116 behaves like a package tracking event3117 creates a gitlab tracking event pull_package3118 for bumping last downloaded at3119 behaves like bumping the package last downloaded at field3120 bumps last_downloaded_at3121 file_name: "libsample0_1.2.3~alpha2_amd64.deb", success_body: /^!<arch>/3122 behaves like Debian packages read endpoint3123 with valid container3124 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3125 behaves like Debian packages GET request3126 returns success and expected body3127 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3128 behaves like Debian packages GET request3129 returns success and expected body3130 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3131 behaves like Debian packages GET request3132 returns success and expected body3133 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3134 behaves like Debian packages GET request3135 returns unauthorized3136 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3137 behaves like Debian packages GET request3138 returns success and expected body3139 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3140 behaves like Debian packages GET request3141 returns unauthorized3142 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3143 behaves like Debian packages GET request3144 returns forbidden3145 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3146 behaves like Debian packages GET request3147 returns not_found3148 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3149 behaves like Debian packages GET request3150 returns unauthorized3151 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3152 behaves like Debian packages GET request3153 returns unauthorized3154 behaves like rejects Debian access with unknown container id3155 with an unknown container3156 as anonymous3157 behaves like Debian packages GET request3158 returns unauthorized3159 as authenticated user3160 behaves like Debian packages GET request3161 returns not_found3162 behaves like a Debian package tracking event3163 behaves like a package tracking event3164 creates a gitlab tracking event pull_package3165 for bumping last downloaded at3166 behaves like bumping the package last downloaded at field3167 bumps last_downloaded_at3168 file_name: "sample-udeb_1.2.3~alpha2_amd64.udeb", success_body: /^!<arch>/3169 behaves like Debian packages read endpoint3170 with valid container3171 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3172 behaves like Debian packages GET request3173 returns success and expected body3174 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3175 behaves like Debian packages GET request3176 returns success and expected body3177 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3178 behaves like Debian packages GET request3179 returns success and expected body3180 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3181 behaves like Debian packages GET request3182 returns unauthorized3183 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3184 behaves like Debian packages GET request3185 returns success and expected body3186 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3187 behaves like Debian packages GET request3188 returns unauthorized3189 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3190 behaves like Debian packages GET request3191 returns forbidden3192 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3193 behaves like Debian packages GET request3194 returns not_found3195 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3196 behaves like Debian packages GET request3197 returns unauthorized3198 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3199 behaves like Debian packages GET request3200 returns unauthorized3201 behaves like rejects Debian access with unknown container id3202 with an unknown container3203 as anonymous3204 behaves like Debian packages GET request3205 returns unauthorized3206 as authenticated user3207 behaves like Debian packages GET request3208 returns not_found3209 behaves like a Debian package tracking event3210 behaves like a package tracking event3211 creates a gitlab tracking event pull_package3212 for bumping last downloaded at3213 behaves like bumping the package last downloaded at field3214 bumps last_downloaded_at3215 file_name: "sample-ddeb_1.2.3~alpha2_amd64.ddeb", success_body: /^!<arch>/3216 behaves like Debian packages read endpoint3217 with valid container3218 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3219 behaves like Debian packages GET request3220 returns success and expected body3221 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3222 behaves like Debian packages GET request3223 returns success and expected body3224 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3225 behaves like Debian packages GET request3226 returns success and expected body3227 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3228 behaves like Debian packages GET request3229 returns unauthorized3230 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /^!<arch>/3231 behaves like Debian packages GET request3232 returns success and expected body3233 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3234 behaves like Debian packages GET request3235 returns unauthorized3236 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3237 behaves like Debian packages GET request3238 returns forbidden3239 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3240 behaves like Debian packages GET request3241 returns not_found3242 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3243 behaves like Debian packages GET request3244 returns unauthorized3245 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3246 behaves like Debian packages GET request3247 returns unauthorized3248 behaves like rejects Debian access with unknown container id3249 with an unknown container3250 as anonymous3251 behaves like Debian packages GET request3252 returns unauthorized3253 as authenticated user3254 behaves like Debian packages GET request3255 returns not_found3256 behaves like a Debian package tracking event3257 behaves like a package tracking event3258 creates a gitlab tracking event pull_package3259 for bumping last downloaded at3260 behaves like bumping the package last downloaded at field3261 bumps last_downloaded_at3262 file_name: "sample_1.2.3~alpha2_amd64.buildinfo", success_body: /Build-Tainted-By/3263 behaves like Debian packages read endpoint3264 with valid container3265 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/3266 behaves like Debian packages GET request3267 returns success and expected body3268 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/3269 behaves like Debian packages GET request3270 returns success and expected body3271 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/3272 behaves like Debian packages GET request3273 returns success and expected body3274 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3275 behaves like Debian packages GET request3276 returns unauthorized3277 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /Build-Tainted-By/3278 behaves like Debian packages GET request3279 returns success and expected body3280 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3281 behaves like Debian packages GET request3282 returns unauthorized3283 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3284 behaves like Debian packages GET request3285 returns forbidden3286 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3287 behaves like Debian packages GET request3288 returns not_found3289 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3290 behaves like Debian packages GET request3291 returns unauthorized3292 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3293 behaves like Debian packages GET request3294 returns unauthorized3295 behaves like rejects Debian access with unknown container id3296 with an unknown container3297 as anonymous3298 behaves like Debian packages GET request3299 returns unauthorized3300 as authenticated user3301 behaves like Debian packages GET request3302 returns not_found3303 behaves like a Debian package tracking event3304 behaves like a package tracking event3305 creates a gitlab tracking event pull_package3306 for bumping last downloaded at3307 behaves like bumping the package last downloaded at field3308 bumps last_downloaded_at3309 file_name: "sample_1.2.3~alpha2_amd64.changes", success_body: /urgency=medium/3310 behaves like Debian packages read endpoint3311 with valid container3312 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/3313 behaves like Debian packages GET request3314 returns success and expected body3315 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/3316 behaves like Debian packages GET request3317 returns success and expected body3318 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/3319 behaves like Debian packages GET request3320 returns success and expected body3321 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3322 behaves like Debian packages GET request3323 returns unauthorized3324 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :success, expected_body: /urgency=medium/3325 behaves like Debian packages GET request3326 returns success and expected body3327 visibility_level: :private, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3328 behaves like Debian packages GET request3329 returns unauthorized3330 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3331 behaves like Debian packages GET request3332 returns forbidden3333 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3334 behaves like Debian packages GET request3335 returns not_found3336 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3337 behaves like Debian packages GET request3338 returns unauthorized3339 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3340 behaves like Debian packages GET request3341 returns unauthorized3342 behaves like rejects Debian access with unknown container id3343 with an unknown container3344 as anonymous3345 behaves like Debian packages GET request3346 returns unauthorized3347 as authenticated user3348 behaves like Debian packages GET request3349 returns not_found3350 behaves like a Debian package tracking event3351 behaves like a package tracking event3352 creates a gitlab tracking event pull_package3353 for bumping last downloaded at3354 behaves like bumping the package last downloaded at field3355 bumps last_downloaded_at3356 behaves like accept GET request on private project with access to package registry for everyone3357 behaves like Debian packages GET request3358 returns success3359 PUT projects/:id/packages/debian/:file_name3360 with a deb3361 behaves like Debian packages write endpoint3362 with valid container3363 visibility_level: :public, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3364 behaves like Debian packages upload request3365 creates package files3366 visibility_level: :public, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3367 behaves like Debian packages upload request3368 returns unauthorized3369 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3370 behaves like Debian packages upload request3371 returns forbidden3372 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :forbidden, expected_body: nil3373 behaves like Debian packages upload request3374 returns forbidden3375 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3376 behaves like Debian packages upload request3377 returns unauthorized3378 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3379 behaves like Debian packages upload request3380 returns unauthorized3381 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3382 behaves like Debian packages upload request3383 creates package files3384 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3385 behaves like Debian packages upload request3386 returns forbidden3387 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3388 behaves like Debian packages upload request3389 returns not_found3390 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3391 behaves like Debian packages upload request3392 returns unauthorized3393 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3394 behaves like Debian packages upload request3395 returns unauthorized3396 behaves like rejects Debian access with unknown container id3397 with an unknown container3398 as anonymous3399 behaves like Debian packages GET request3400 returns unauthorized3401 as authenticated user3402 behaves like Debian packages GET request3403 returns not_found3404 behaves like a Debian package tracking event3405 behaves like a package tracking event3406 creates a gitlab tracking event push_package3407 with codename and component3408 behaves like Debian packages write endpoint3409 with valid container3410 visibility_level: :public, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3411 behaves like Debian packages upload request3412 creates package files3413 visibility_level: :public, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3414 behaves like Debian packages upload request3415 returns unauthorized3416 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3417 behaves like Debian packages upload request3418 returns forbidden3419 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :forbidden, expected_body: nil3420 behaves like Debian packages upload request3421 returns forbidden3422 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3423 behaves like Debian packages upload request3424 returns unauthorized3425 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3426 behaves like Debian packages upload request3427 returns unauthorized3428 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3429 behaves like Debian packages upload request3430 creates package files3431 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3432 behaves like Debian packages upload request3433 returns forbidden3434 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3435 behaves like Debian packages upload request3436 returns not_found3437 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3438 behaves like Debian packages upload request3439 returns unauthorized3440 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3441 behaves like Debian packages upload request3442 returns unauthorized3443 behaves like rejects Debian access with unknown container id3444 with an unknown container3445 as anonymous3446 behaves like Debian packages GET request3447 returns unauthorized3448 as authenticated user3449 behaves like Debian packages GET request3450 returns not_found3451 behaves like a Debian package tracking event3452 behaves like a package tracking event3453 creates a gitlab tracking event push_package3454 with codename and without component3455 behaves like Debian packages GET request3456 returns bad_request and expected body3457 behaves like not a Debian package tracking event3458 behaves like not a package tracking event3459 does not create a gitlab tracking event3460 with a buildinfo3461 behaves like Debian packages upload request3462 creates package files3463 behaves like a Debian package tracking event3464 behaves like a package tracking event3465 creates a gitlab tracking event push_package3466 with codename and component3467 behaves like Debian packages upload request3468 returns bad_request and expected body3469 behaves like not a Debian package tracking event3470 behaves like not a package tracking event3471 does not create a gitlab tracking event3472 with a changes file3473 behaves like Debian packages write endpoint3474 with valid container3475 visibility_level: :public, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3476 behaves like Debian packages upload request3477 creates package files3478 visibility_level: :public, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3479 behaves like Debian packages upload request3480 returns unauthorized3481 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3482 behaves like Debian packages upload request3483 returns forbidden3484 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :forbidden, expected_body: nil3485 behaves like Debian packages upload request3486 returns forbidden3487 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3488 behaves like Debian packages upload request3489 returns unauthorized3490 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3491 behaves like Debian packages upload request3492 returns unauthorized3493 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3494 behaves like Debian packages upload request3495 creates package files3496 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3497 behaves like Debian packages upload request3498 returns forbidden3499 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3500 behaves like Debian packages upload request3501 returns not_found3502 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3503 behaves like Debian packages upload request3504 returns unauthorized3505 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3506 behaves like Debian packages upload request3507 returns unauthorized3508 behaves like rejects Debian access with unknown container id3509 with an unknown container3510 as anonymous3511 behaves like Debian packages GET request3512 returns unauthorized3513 as authenticated user3514 behaves like Debian packages GET request3515 returns not_found3516 behaves like a Debian package tracking event3517 behaves like a package tracking event3518 creates a gitlab tracking event push_package3519 PUT projects/:id/packages/debian/:file_name/authorize3520 behaves like Debian packages write endpoint3521 with valid container3522 visibility_level: :public, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3523 behaves like Debian packages upload authorize request3524 authorizes package file upload3525 without a valid token3526 rejects request3527 bypassing gitlab-workhorse3528 rejects request3529 visibility_level: :public, user_type: :developer, auth_method: :private_token, expected_status: :unauthorized, expected_body: nil3530 behaves like Debian packages upload authorize request3531 returns unauthorized3532 visibility_level: :public, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3533 behaves like Debian packages upload authorize request3534 returns forbidden3535 visibility_level: :public, user_type: :not_a_member, auth_method: :basic, expected_status: :forbidden, expected_body: nil3536 behaves like Debian packages upload authorize request3537 returns forbidden3538 visibility_level: :public, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3539 behaves like Debian packages upload authorize request3540 returns unauthorized3541 visibility_level: :public, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3542 behaves like Debian packages upload authorize request3543 returns unauthorized3544 visibility_level: :private, user_type: :developer, auth_method: :basic, expected_status: :created, expected_body: nil3545 behaves like Debian packages upload authorize request3546 authorizes package file upload3547 without a valid token3548 rejects request3549 bypassing gitlab-workhorse3550 rejects request3551 visibility_level: :private, user_type: :guest, auth_method: :basic, expected_status: :forbidden, expected_body: nil3552 behaves like Debian packages upload authorize request3553 returns forbidden3554 visibility_level: :private, user_type: :not_a_member, auth_method: :basic, expected_status: :not_found, expected_body: nil3555 behaves like Debian packages upload authorize request3556 returns not_found3557 visibility_level: :private, user_type: :anonymous, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3558 behaves like Debian packages upload authorize request3559 returns unauthorized3560 visibility_level: :private, user_type: :invalid_token, auth_method: :basic, expected_status: :unauthorized, expected_body: nil3561 behaves like Debian packages upload authorize request3562 returns unauthorized3563 behaves like rejects Debian access with unknown container id3564 with an unknown container3565 as anonymous3566 behaves like Debian packages GET request3567 returns unauthorized3568 as authenticated user3569 behaves like Debian packages GET request3570 returns not_found3571 behaves like not a Debian package tracking event3572 behaves like not a package tracking event3573 does not create a gitlab tracking event3574Projects::NotesController3575 GET index3576 is expected to have request urgency :medium3577 passes last_fetched_at from headers to NotesFinder and MergeIntoNotesService3578 when user notes_filter is present3579 filters system notes by comments3580 returns all notes3581 does not merge label event notes3582 for a discussion note3583 responds with the expected attributes3584 for a diff discussion note3585 responds with the expected attributes3586 for a commit note3587 when displayed on a merge request3588 responds with the expected attributes3589 when displayed on the commit3590 responds with the expected attributes3591 when user cannot read commit3592 renders 4043593 for a regular note3594 responds with the expected attributes3595 with cross-reference system note3596 filters notes that the user should not see3597 does not result in N+1 queries3598 POST create3599 is expected to have request urgency :low3600 making the creation request3601 the project is publically available3602 for HTML3603 returns status 3023604 for JSON3605 returns status 200 for json3606 the note does not have commands_only errors3607 for empty note3608 returns status 422 for json3609 the project is a private project3610 format is3611 returns status 4043612 format is json3613 returns status 4043614 the user is a developer on a private project3615 HTML requests3616 returns status 302 (redirect)3617 JSON requests3618 returns status 2003619 the return_discussion param is set3620 returns discussion JSON when the return_discussion param is set3621 when creating a confidential note3622 when parameter is not provided3623 sets `confidential` and `internal` to `false` in JSON response3624 when is not a confidential note3625 when using the `internal` parameter3626 sets `confidential` and `internal` to `false` in JSON response3627 when using deprecated `confidential` parameter3628 sets `confidential` and `internal` to `false` in JSON response3629 when is a confidential note3630 when using the `internal` parameter3631 sets `confidential` and `internal` to `true` in JSON response3632 when using deprecated `confidential` parameter3633 sets `confidential` and `internal` to `true` in JSON response3634 when `internal` parameter is `true` and `confidential` parameter is `false`3635 uses the `internal` param as source of truth3636 when creating a note with quick actions3637 with commands that return changes3638 includes changes in commands_changes3639 includes command_names3640 with commands that do not return changes3641 does not include changes in commands_changes3642 includes command_names3643 when the internal project prohibits non-members from accessing merge requests3644 prevents a non-member user from creating a note on one of the project's merge requests3645 when the user is a team member3646 can add comments3647 when the request includes a :in_reply_to_discussion_id designed to fool us3648 prevents the request from adding notes to the spoofed discussion3649 returns an error to the user3650 when the public project prohibits non-members from accessing merge requests3651 prevents a non-member user from creating a note on one of the project's merge requests3652 when the user is a team member3653 can add comments3654 when merge_request_diff_head_sha present3655 returns status 302 for html3656 when creating a comment on a commit with SHA1 starting with a large number3657 creates a note successfully3658 when creating a commit comment from an MR fork3659 when the note_project_id is not correct3660 returns a 4043661 when the user has no access to the fork3662 returns a 4043663 when the user has access to the fork3664 is successful3665 creates the note3666 when target_id and noteable_id do not match3667 uses target_id and ignores noteable_id3668 when the merge request discussion is locked3669 when a noteable is not found3670 returns 404 status3671 when a user is a team member3672 returns 302 status for html3673 returns 200 status for json3674 creates a new note3675 when a user is not a team member3676 returns 404 status3677 does not create a new note3678 behaves like create notes request exceeding rate limit3679 allows user in allow-list to create notes, even if the case is different3680 when rate limiter enabled3681 logs request and declines it when endpoint called more than the threshold3682 when rate limiter is disabled3683 does not log request and does not block the request3684 PUT update3685 is expected to have request urgency :low3686 should update the note with a valid issue3687 updates the note3688 doesnt update the note3689 disallows edits when the issue is confidential and the user has guest permissions3690 DELETE destroy3691 is expected to have request urgency :low3692 user is the author of a note3693 returns status 200 for html3694 deletes the note3695 user is not the author of a note3696 returns status 4043697 POST toggle_award_emoji3698 is expected to have request urgency :low3699 toggles the award emoji3700 removes the already awarded emoji3701 marks Todos on the Noteable as done3702 resolving and unresolving3703 POST resolve3704 is expected to have request urgency :low3705 when the user is not authorized to resolve the note3706 returns status 4043707 when the user is authorized to resolve the note3708 when the note is not resolvable3709 returns status 4043710 when the note is resolvable3711 resolves the note3712 sends notifications if all discussions are resolved3713 returns the name of the resolving user3714 returns status 2003715 DELETE unresolve3716 is expected to have request urgency :low3717 when the user is not authorized to resolve the note3718 returns status 4043719 when the user is authorized to resolve the note3720 when the note is not resolvable3721 returns status 4043722 when the note is resolvable3723 unresolves the note3724 returns status 2003725 GET outdated_line_change3726 successfully renders expected JSON response3727 is expected to have request urgency :low3728API::Ci::Triggers3729 POST /projects/:project_id/trigger/pipeline3730 Handles errors3731 returns bad request if token is missing3732 returns not found if project is not found3733 Have a commit3734 creates pipeline3735 stores payload as a variable3736 returns bad request with no pipeline created if there's no commit for that ref3737 Validates variables3738 validates variables to be a hash3739 validates variables needs to be a map of key-valued strings3740 creates trigger request with variables3741 when triggering a pipeline from a trigger token3742 does not leak the presence of project when token is for different project3743 creates builds from the ref given in the URL, not in the body3744 when ref contains a dot3745 creates builds from the ref given in the URL, not in the body3746 adding arguments to the application context3747 when triggering a pipeline from a trigger token3748 behaves like storing arguments in the application context for the API3749 places the expected params in the application context3750 behaves like not executing any extra queries for the application context3751 does not execute more queries than without adding anything to the application context3752 when triggered from another running job3753 when other job is triggered by a user3754 behaves like storing arguments in the application context for the API3755 places the expected params in the application context3756 behaves like not executing any extra queries for the application context3757 does not execute more queries than without adding anything to the application context3758 when other job is triggered by a runner3759 behaves like storing arguments in the application context for the API3760 places the expected params in the application context3761 behaves like not executing any extra queries for the application context3762 does not execute more queries than without adding anything to the application context3763 when is triggered by a pipeline hook3764 does not create a new pipeline3765 GET /projects/:id/triggers3766 authenticated user who can access triggers3767 returns a list of triggers with tokens exposed correctly3768 authenticated user with invalid permissions3769 does not return triggers list3770 unauthenticated user3771 does not return triggers list3772 GET /projects/:id/triggers/:trigger_id3773 authenticated user with valid permissions3774 returns trigger details3775 responds with 404 Not Found if requesting non-existing trigger3776 authenticated user with invalid permissions3777 does not return triggers list3778 unauthenticated user3779 does not return triggers list3780 POST /projects/:id/triggers3781 authenticated user with valid permissions3782 with required parameters3783 creates trigger3784 without required parameters3785 does not create trigger3786 authenticated user with invalid permissions3787 does not create trigger3788 unauthenticated user3789 does not create trigger3790 PUT /projects/:id/triggers/:trigger_id3791 user is maintainer of the project3792 the trigger belongs to user3793 updates description3794 the trigger does not belong to user3795 does not update trigger3796 user is developer of the project3797 the trigger belongs to user3798 does not update trigger3799 the trigger does not belong to user3800 does not update trigger3801 unauthenticated user3802 does not update trigger3803 DELETE /projects/:id/triggers/:trigger_id3804 authenticated user with valid permissions3805 deletes trigger3806 responds with 404 Not Found if requesting non-existing trigger3807 behaves like 412 response3808 for a modified ressource3809 returns 412 with a JSON error3810 for an unmodified ressource3811 returns 204 with an empty body3812 authenticated user with invalid permissions3813 does not delete trigger3814 unauthenticated user3815 does not delete trigger3816Admin::ClustersController3817 GET #index3818 functionality3819 when instance has one or more clusters3820 lists available clusters and displays html3821 lists available clusters and renders json serializer3822 sets the polling interval header for json requests3823 feature flag is disabled3824 responds with :not_found3825 when page is specified3826 redirects to the page3827 displays cluster list for associated page3828 when instance does not have a cluster3829 returns an empty state page3830 security3831 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 2003832 is expected to be denied for user. Expected: 401,404 Got: 4043833 is expected to be denied for external. Expected: 401,404 Got: 4043834 behaves like GET #metrics_dashboard for dashboard3835 returns correct dashboard3836 behaves like GET #metrics_dashboard correctly formatted response3837 returns a json object with the correct keys3838 GET #prometheus_proxy3839 behaves like metrics dashboard prometheus api proxy3840 with valid requests3841 with success result3842 returns prometheus response3843 with nil query3844 does not raise error3845 with nil result3846 returns 204 no_content3847 with 404 result3848 returns body3849 with error result3850 with http_status3851 sets the http response status code3852 without http_status3853 returns bad_request3854 with inappropriate requests3855 without correct permissions3856 returns 4043857 with invalid proxyable id3858 returns 4043859 with anonymous user3860 returns 4043861 POST #create_user3862 feature flag is disabled3863 responds with :not_found3864 functionality3865 when creates a cluster3866 creates a new cluster3867 when creates a RBAC-enabled cluster3868 creates a new cluster3869 security3870 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3023871 is expected to be denied for user. Expected: 401,404 Got: 4043872 is expected to be denied for external. Expected: 401,404 Got: 4043873 DELETE clear cluster cache3874 deletes the namespaces associated with the cluster3875 feature flag is disabled3876 responds with :not_found3877 security3878 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3023879 is expected to be denied for user. Expected: 401,404 Got: 4043880 is expected to be denied for external. Expected: 401,404 Got: 4043881 GET #cluster_status3882 feature flag is disabled3883 responds with :not_found3884 functionality3885 responds with matching schema3886 security3887 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 2003888 is expected to be denied for user. Expected: 401,404 Got: 4043889 is expected to be denied for external. Expected: 401,404 Got: 4043890 GET #show3891 feature flag is disabled3892 responds with :not_found3893 functionality3894 responds successfully3895 renders integration tab view3896 security3897 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 2003898 is expected to be denied for user. Expected: 401,404 Got: 4043899 is expected to be denied for external. Expected: 401,404 Got: 4043900 PUT #update3901 updates and redirects back to show page3902 feature flag is disabled3903 responds with :not_found3904 when domain is invalid3905 does not update cluster attributes3906 when format is json3907 when changing parameters3908 when valid parameters are used3909 updates and redirects back to show page3910 when invalid parameters are used3911 rejects changes3912 security3913 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3023914 is expected to be denied for user. Expected: 401,404 Got: 4043915 is expected to be denied for external. Expected: 401,404 Got: 4043916 DELETE #destroy3917 feature flag is disabled3918 responds with :not_found3919 functionality3920 when cluster is provided by GCP3921 when cluster is created3922 destroys and redirects back to clusters list3923 when cluster is being created3924 destroys and redirects back to clusters list3925 when cluster is provided by user3926 destroys and redirects back to clusters list3927 security3928 is expected to be allowed for admin. Expected: 200,201,204,302 Got: 3023929 is expected to be denied for user. Expected: 401,404 Got: 4043930 is expected to be denied for external. Expected: 401,404 Got: 4043931Projects::JobsController3932 GET index3933 when scope is pending3934 has only pending builds3935 when scope is running3936 has only running jobs3937 when scope is finished3938 has only finished jobs3939 when page is specified3940 when page number is eligible3941 redirects to the page3942 number of queries3943 verifies number of queries3944 GET show3945 when requesting HTML3946 when job exists3947 has a job3948 when job does not exist3949 renders not_found3950 when requesting JSON3951 does not serialize builds in exposed stages3952 exposes the stage the job belongs to3953 when job failed3954 exposes needed information3955 when job is running3956 job is cancelable3957 cancel_path is present with correct redirect3958 with web terminal3959 exposes the terminal path3960 when job has artifacts3961 with not expiry date3962 when artifacts are unlocked3963 exposes needed information3964 when artifacts are locked3965 exposes needed information3966 with expired artifacts3967 when artifacts are unlocked3968 exposes needed information3969 when artifacts are locked3970 exposes needed information3971 when job passed with no trace3972 exposes empty state illustrations3973 with no deployment3974 does not exposes the deployment information3975 with deployment3976 exposes the deployment information3977 when user can edit runner3978 that belongs to the project3979 user can edit runner3980 that belongs to group3981 user can not edit runner3982 that belongs to instance3983 user can not edit runner3984 when no runners are available3985 exposes needed information3986 when no runner is online3987 exposes needed information3988 settings_path3989 when user is developer3990 settings_path is not available3991 when user is maintainer3992 when admin mode is disabled3993 settings_path is not available3994 when admin mode is enabled3995 settings_path is available3996 when no trace is available3997 has_trace is false3998 when job has live trace3999 has_trace is true4000 when has live trace and unarchived artifact4001 has_trace is true4002 when requesting triggered job JSON4003 with no variables4004 exposes trigger information4005 with variables4006 user is a maintainer4007 returns a job_detail4008 exposes trigger information and variables4009 exposes correct variable properties4010 user is not a mantainer4011 returns a job_detail4012 exposes trigger information and variables4013 exposes correct variable properties4014 GET trace.json4015 when job has a trace artifact4016 returns a trace4017 when debug_mode? is enabled4018 with proper permissions on a project4019 returns response ok4020 without proper permissions for debug logging4021 returns response forbidden4022 when job has a live trace4023 behaves like returns trace4024 returns a trace4025 when job has unarchived artifact4026 behaves like returns trace4027 returns a trace4028 when job is running4029 sets being-watched flag for the job4030 when job is not running4031 does not set being-watched flag for the job4032 when job has no traces4033 returns no traces4034 when job has a trace with ANSI sequence and Unicode4035 returns a trace with Unicode4036 when trace artifact is in ObjectStorage4037 when there are no network issues4038 returns a trace4039 when there is a network issue4040 returns a trace4041 POST retry4042 when job is not retryable4043 and the job is a bridge4044 renders unprocessable_entity4045 and the job is a build4046 renders unprocessable_entity4047 when job is retryable4048 and the job is a bridge4049 responds :ok4050 and the job is a build4051 redirects to the retried job page4052 with branch pipeline4053 behaves like retried job has the same attributes4054 creates a new build has the same attributes from the previous build4055 with tag pipeline4056 behaves like retried job has the same attributes4057 creates a new build has the same attributes from the previous build4058 POST play4059 when job is playable4060 redirects to the played job page4061 transits to pending4062 when job variables are specified4063 assigns the job variables4064 when job is bridge4065 redirects to the pipeline page4066 transits to pending4067 when job is not playable4068 renders unprocessable_entity4069 POST cancel4070 when user is authorized to cancel the build4071 when continue url is present4072 when continue to is a safe url4073 redirects to the continue url4074 transits to canceled4075 when continue to is not a safe url4076 redirects to the builds page4077 when continue url is not present4078 when job is cancelable4079 redirects to the builds page4080 transits to canceled4081 when job is not cancelable4082 returns unprocessable_entity4083 when user is not authorized to cancel the build4084 responds with not_found4085 does not transit to canceled4086 POST unschedule4087 when user is authorized to unschedule the build4088 when job is scheduled4089 redirects to the unscheduled job page4090 transits to manual4091 when job is not scheduled4092 renders unprocessable_entity4093 when user is not authorized to unschedule the build4094 responds with not_found4095 does not transit to scheduled4096 POST erase4097 when project is not undergoing stats refresh4098 when job is successful and has artifacts4099 behaves like erases4100 redirects to the erased job page4101 erases artifacts4102 erases trace4103 when job has live trace and unarchived artifact4104 behaves like erases4105 redirects to the erased job page4106 erases artifacts4107 erases trace4108 when job is erased4109 returns unprocessable_entity4110 when user is developer4111 when triggered by same user4112 has successful status4113 when triggered by different user4114 does not have successful status4115 when project is undergoing stats refresh4116 behaves like preventing request because of ongoing project stats refresh4117 logs about the rejected request4118 returns 409 error4119 does not erase artifacts4120 GET raw4121 when job has a trace artifact4122 sets Gitlab-Workhorse-Detect-Content-Type header4123 when CI_DEBUG_TRACE and/or CI_DEBUG_SERVICES are enabled4124 ci_debug_trace: true, ci_debug_services: true4125 with proper permissions for debug logging on a project4126 returns response ok4127 without proper permissions for debug logging on a project4128 returns response forbidden if dev mode enabled4129 ci_debug_trace: true, ci_debug_services: false4130 with proper permissions for debug logging on a project4131 returns response ok4132 without proper permissions for debug logging on a project4133 returns response forbidden if dev mode enabled4134 ci_debug_trace: false, ci_debug_services: true4135 with proper permissions for debug logging on a project4136 returns response ok4137 without proper permissions for debug logging on a project4138 returns response forbidden if dev mode enabled4139 ci_debug_trace: false, ci_debug_services: false4140 with proper permissions for debug logging on a project4141 returns response ok4142 without proper permissions for debug logging on a project4143 returns response forbidden if dev mode enabled4144 when job has a live trace4145 behaves like sends live trace4146 sends a trace file4147 and when job has unarchived artifact4148 behaves like sends live trace4149 sends a trace file4150 when job does not have a trace file4151 returns not_found4152 when the trace artifact is in ObjectStorage4153 redirect to the trace file url4154 GET #terminal4155 when job exists4156 and it has a terminal4157 has a job4158 and does not have a terminal4159 returns not_found4160 when job does not exist4161 renders not_found4162 GET #terminal_websocket_authorize4163 with valid workhorse signature4164 and valid id4165 returns the terminal for the job4166 and invalid id4167 returns 4044168 with invalid workhorse signature4169 aborts with an exception4170 GET #proxy_websocket_authorize4171 converts the url scheme into wss4172 access rights4173 with admin4174 when admin mode is enabled4175 returns 2004176 when admin mode is disabled4177 returns 4044178 with owner4179 returns 2004180 with maintainer4181 returns 2004182 with developer4183 returns 4044184 with reporter4185 returns 4044186 with guest4187 returns 4044188 with non member4189 returns 4044190 when pipeline is not from a webide source4191 with admin4192 returns 4044193 when workhorse signature is valid4194 and the id is valid4195 returns the proxy data for the service running in the job4196 and the id is invalid4197 returns 4044198 with invalid workhorse signature4199 aborts with an exception4200 when feature flag :build_service_proxy is disabled4201 returns 4044202API::ProjectContainerRepositories4203 GET /projects/:id/registry/repositories4204 using API user4205 behaves like rejected container repository access4206 for guest4207 returns forbidden4208 behaves like rejected container repository access4209 for anonymous4210 returns not_found4211 behaves like a package tracking event4212 creates a gitlab tracking event list_repositories4213 behaves like handling network errors with the container registry4214caught error of type Faraday::Error in after callback inside Grape::Middleware::Formatter : 4215 returns a connection error4216 behaves like returns repositories for allowed users4217 for reporter4218 returns a list of repositories4219 returns a matching schema4220 behaves like returns tags for allowed users4221 for reporter4222 with tags param4223 returns a list of repositories and their tags4224 returns a matching schema4225 with tags_count param4226 returns a list of repositories and their tags_count4227 returns a matching schema4228 using job token4229 behaves like rejected container repository access4230 for anonymous4231 returns not_found4232 behaves like a package tracking event4233 creates a gitlab tracking event list_repositories4234 behaves like handling network errors with the container registry4235caught error of type Faraday::Error in after callback inside Grape::Middleware::Formatter : 4236 returns a connection error4237 behaves like returns repositories for allowed users4238 for reporter4239 returns a list of repositories4240 returns a matching schema4241 behaves like returns tags for allowed users4242 for reporter4243 with tags param4244 returns a list of repositories and their tags4245 returns a matching schema4246 with tags_count param4247 returns a list of repositories and their tags_count4248 returns a matching schema4249 behaves like rejected container repository access4250 for maintainer4251 returns forbidden4252 behaves like rejected container repository access4253 for maintainer4254 returns forbidden4255 DELETE /projects/:id/registry/repositories/:repository_id4256 using API user4257 behaves like rejected container repository access4258 for developer4259 returns forbidden4260 behaves like rejected container repository access4261 for anonymous4262 returns not_found4263 behaves like a package tracking event4264 creates a gitlab tracking event delete_repository4265 for maintainer4266 marks the repository as delete_scheduled4267 using job token4268 behaves like rejected container repository access4269 for developer4270 returns forbidden4271 behaves like rejected container repository access4272 for anonymous4273 returns not_found4274 behaves like a package tracking event4275 creates a gitlab tracking event delete_repository4276 for maintainer4277 marks the repository as delete_scheduled4278 behaves like rejected container repository access4279 for maintainer4280 returns forbidden4281 behaves like rejected container repository access4282 for maintainer4283 returns forbidden4284 GET /projects/:id/registry/repositories/:repository_id/tags4285 using API user4286 behaves like rejected container repository access4287 for guest4288 returns forbidden4289 behaves like rejected container repository access4290 for anonymous4291 returns not_found4292 behaves like handling network errors with the container registry4293 returns a connection error4294 for reporter4295 returns a list of tags4296 returns a matching schema4297 behaves like a package tracking event4298 creates a gitlab tracking event list_tags4299 using job token4300 behaves like rejected container repository access4301 for anonymous4302 returns not_found4303 behaves like handling network errors with the container registry4304 returns a connection error4305 for reporter4306 returns a list of tags4307 returns a matching schema4308 behaves like a package tracking event4309 creates a gitlab tracking event list_tags4310 behaves like rejected container repository access4311 for maintainer4312 returns forbidden4313 behaves like rejected container repository access4314 for maintainer4315 returns forbidden4316 DELETE /projects/:id/registry/repositories/:repository_id/tags4317 using API user4318 disallowed4319 behaves like rejected container repository access4320 for developer4321 returns forbidden4322 behaves like rejected container repository access4323 for anonymous4324 returns not_found4325 behaves like a package tracking event4326 creates a gitlab tracking event delete_tag_bulk4327 for maintainer4328 without required parameters4329 returns bad request4330 without name_regex4331 returns bad request4332 passes all declared parameters4333 schedules cleanup of tags repository4334 called multiple times in one hour4335 returns 400 with an error message4336 executes service only for the first time4337 with deprecated name_regex param4338 schedules cleanup of tags repository4339 with invalid regex4340 for name_regex_delete4341 behaves like rejecting the invalid regex4342 does not enqueue a job4343 returns an error message4344 behaves like returning response status4345 returns bad_request4346 for name_regex4347 behaves like rejecting the invalid regex4348 does not enqueue a job4349 returns an error message4350 behaves like returning response status4351 returns bad_request4352 for name_regex_keep4353 behaves like rejecting the invalid regex4354 does not enqueue a job4355 returns an error message4356 behaves like returning response status4357 returns bad_request4358 using job token4359 disallowed4360 behaves like rejected container repository access4361 for developer4362 returns forbidden4363 behaves like rejected container repository access4364 for anonymous4365 returns not_found4366 behaves like a package tracking event4367 creates a gitlab tracking event delete_tag_bulk4368 for maintainer4369 without required parameters4370 returns bad request4371 without name_regex4372 returns bad request4373 passes all declared parameters4374 schedules cleanup of tags repository4375 called multiple times in one hour4376 returns 400 with an error message4377 executes service only for the first time4378 with deprecated name_regex param4379 schedules cleanup of tags repository4380 with invalid regex4381 for name_regex_delete4382 behaves like rejecting the invalid regex4383 does not enqueue a job4384 returns an error message4385 behaves like returning response status4386 returns bad_request4387 for name_regex4388 behaves like rejecting the invalid regex4389 does not enqueue a job4390 returns an error message4391 behaves like returning response status4392 returns bad_request4393 for name_regex_keep4394 behaves like rejecting the invalid regex4395 does not enqueue a job4396 returns an error message4397 behaves like returning response status4398 returns bad_request4399 behaves like rejected container repository access4400 for maintainer4401 returns forbidden4402 behaves like rejected container repository access4403 for maintainer4404 returns forbidden4405 GET /projects/:id/registry/repositories/:repository_id/tags/:tag_name4406 using API user4407 behaves like rejected container repository access4408 for guest4409 returns forbidden4410 behaves like rejected container repository access4411 for anonymous4412 returns not_found4413 for reporter4414 returns a details of tag4415 returns a matching schema4416 using job token4417 behaves like rejected container repository access4418 for anonymous4419 returns not_found4420 for reporter4421 returns a details of tag4422 returns a matching schema4423 behaves like rejected container repository access4424 for maintainer4425 returns forbidden4426 behaves like rejected container repository access4427 for maintainer4428 returns forbidden4429 DELETE /projects/:id/registry/repositories/:repository_id/tags/:tag_name4430 using API user4431 behaves like rejected container repository access4432 for reporter4433 returns forbidden4434 behaves like rejected container repository access4435 for anonymous4436 returns not_found4437 for developer4438 when there are multiple tags4439 properly removes tag4440 when there's only one tag4441 properly removes tag4442 using job token4443 behaves like rejected container repository access4444 for reporter4445 returns forbidden4446 behaves like rejected container repository access4447 for anonymous4448 returns not_found4449 for developer4450 when there are multiple tags4451 properly removes tag4452 when there's only one tag4453 properly removes tag4454 behaves like rejected container repository access4455 for maintainer4456 returns forbidden4457 behaves like rejected container repository access4458 for maintainer4459 returns forbidden4460Projects::CompareController4461 GET index4462 returns successfully4463 with incorrect parameters4464 returns successfully4465 with missing parameters4466 returns successfully4467 GET show4468 when the refs exist in the same project4469 when we set the white space param4470 shows some diffs with ignore whitespace change option4471 when we do not set the white space param4472 sets the diffs and commits ivars4473 when refs have CI::Pipeline4474 avoids N+1 queries4475 when the refs exist in different projects that the user can see4476 shows the diff4477 when comparing missing commits between source and target4478 when comparing them in the other direction4479 the commits are there4480 with straight mode true4481 the commits are empty, but the removed lines are visible as diffs4482 with straight mode false4483 the additional commits are not visible in diffs and commits4484 when the refs exist in different projects but the user cannot see4485 does not show the diff4486 when the source ref does not exist4487 sets empty diff and commit ivars4488 when the target ref does not exist4489 sets empty diff and commit ivars4490 when the target ref is invalid4491 shows a flash message and redirects4492 when the source ref is invalid4493 shows a flash message and redirects4494 when the both refs are invalid4495 shows a flash message and redirects4496 when page is valid4497 only loads blobs in the current page4498 behaves like valid compare page4499 shows the diff4500 when from_ref is HEAD ref4501 behaves like valid compare page4502 shows the diff4503 when to_ref is HEAD ref4504 behaves like valid compare page4505 shows the diff4506 when page is not valid4507 does not return an error4508 GET diff_for_path4509 when the source and target refs exist in the same project4510 when the user has access target the project4511 when the path exists in the diff4512 disables diff notes4513 only renders the diffs for the path given4514 when the path does not exist in the diff4515 returns a 4044516 when the user does not have access target the project4517 returns a 4044518 when the source and target refs exist in different projects and the user can see4519 shows the diff for that path4520 when the source and target refs exist in different projects and the user cannot see4521 does not show the diff for that path4522 when the source ref does not exist4523 returns a 4044524 when the target ref does not exist4525 returns a 4044526 POST create4527 when sending valid params4528 without a from_project_id4529 redirects to the show page4530 with a from_project_id4531 redirects to the show page without interpreting from_project_id4532 when sending invalid params4533 from_ref: "", to_ref: "", from_project_id: "", expected_redirect_params: {}4534 redirects back to the index4535 from_ref: "main", to_ref: "", from_project_id: "", expected_redirect_params: {:from=>"main"}4536 redirects back to the index4537 from_ref: "", to_ref: "main", from_project_id: "", expected_redirect_params: {:to=>"main"}4538 redirects back to the index4539 from_ref: "", to_ref: "", from_project_id: "1", expected_redirect_params: {:from_project_id=>1}4540 redirects back to the index4541 from_ref: "main", to_ref: "", from_project_id: "1", expected_redirect_params: {:from=>"main", :from_project_id=>1}4542 redirects back to the index4543 from_ref: "", to_ref: "main", from_project_id: "1", expected_redirect_params: {:to=>"main", :from_project_id=>1}4544 redirects back to the index4545 from_ref: ["a"], to_ref: ["b"], from_project_id: ["c"], expected_redirect_params: {}4546 redirects back to the index4547 GET signatures4548 when the source and target refs exist4549 when the user has access to the project4550 returns only the commit with a signature4551 when the user has access to the project with straight compare4552 returns only the commit with a signature4553 when the user does not have access to the project4554 returns a 4044555 when the source ref does not exist4556 returns no signatures4557 when the target ref does not exist4558 returns no signatures4559Projects::CommitsController4560 signed in4561 GET commits_root4562 no ref is provided4563 redirects to the default branch of the project4564 GET show4565 loads tags for commits4566 with file path4567 valid branch, valid file4568 is expected to respond with 2004569 HEAD, valid file4570 is expected to respond with 2004571 valid branch, invalid file4572 is expected to respond with 4044573 invalid branch, valid file4574 is expected to respond with 4044575 branch with invalid format, valid file4576 is expected to respond with 4044577 with an invalid limit4578 uses the default limit4579 when limit is a hash4580 uses the default limit4581 when the show_tags_on_commits_view flag is disabled4582 does not load tags4583 when the ref name ends in .atom4584 when the ref does not exist with the suffix4585 renders as atom4586 renders summary with type=html4587 when the ref exists with the suffix4588 renders as HTML4589 when the ref does not exist4590 returns 404 page4591 with markdown cache4592 preloads markdown cache for commits4593 GET /commits/:id/signatures4594 valid branch4595 is expected to respond with 2004596 invalid branch format4597 is expected to respond with 4044598Query.runner(id)4599 for active runner4600 behaves like runner details fetch4601 retrieves expected fields4602 does not execute more queries per runner4603 when tagList is not requested4604 does not retrieve tagList4605 with build running4606 behaves like runner details fetch4607 retrieves expected fields4608 does not execute more queries per runner4609 for project runner4610 locked4611 is_locked: true4612 retrieves correct locked value4613 is_locked: false4614 retrieves correct locked value4615 jobCount4616 retrieves correct jobCount values4617 when JOB_COUNT_LIMIT is in effect4618 retrieves correct capped jobCount values4619 ownerProject4620 retrieves correct ownerProject.id values4621 for inactive runner4622 behaves like runner details fetch4623 retrieves expected fields4624 does not execute more queries per runner4625 for registration type4626 when registered with registration token4627 behaves like runner details fetch4628 retrieves expected fields4629 does not execute more queries per runner4630 when registered with authenticated user4631 behaves like runner details fetch4632 retrieves expected fields4633 does not execute more queries per runner4634 for group runner request4635 retrieves groups field with expected value4636 ephemeralRegisterUrl4637 with an instance runner4638 with registration available4639 behaves like has register url4640 retrieves register url4641 with no registration available4642 behaves like has no register url4643 retrieves no register url4644 with a group runner4645 with registration available4646 behaves like has register url4647 retrieves register url4648 with no group4649 behaves like has no register url4650 retrieves no register url4651 with no registration available4652 behaves like has no register url4653 retrieves no register url4654 with no access4655 behaves like has no register url4656 retrieves no register url4657 for runner with status4658 retrieves status fields with expected values4659 when disable_runner_graphql_legacy_mode is enabled4660 retrieves status fields with expected values4661 for multiple runners4662 requesting projects and counts for projects and jobs4663 retrieves expected fields4664 by regular user4665 on instance runner4666 behaves like retrieval by unauthorized user4667 returns null runner4668 on group runner4669 behaves like retrieval by unauthorized user4670 returns null runner4671 on project runner4672 behaves like retrieval by unauthorized user4673 returns null runner4674 by non-admin user4675 behaves like retrieval with no admin url4676 retrieves expected fields4677 by unauthenticated user4678 behaves like retrieval by unauthorized user4679 returns null runner4680 ephemeralAuthenticationToken4681 with request made by creator4682 with runner created in UI4683 with runner created in last hour4684 with no runner manager registered yet4685 behaves like an ephemeral_authentication_token4686 returns token in ephemeral_authentication_token field4687 with first runner manager already registered4688 behaves like a protected ephemeral_authentication_token4689 returns nil ephemeral_authentication_token4690 with runner created almost too long ago4691 behaves like an ephemeral_authentication_token4692 returns token in ephemeral_authentication_token field4693 with runner created too long ago4694 behaves like a protected ephemeral_authentication_token4695 returns nil ephemeral_authentication_token4696 with runner registered from command line4697 with runner created in last 1 hour4698 behaves like a protected ephemeral_authentication_token4699 returns nil ephemeral_authentication_token4700 when request is made by non-creator of the runner4701 with runner created in UI4702 behaves like a protected ephemeral_authentication_token4703 returns nil ephemeral_authentication_token4704 Query limits with jobs4705 when requesting individual fields4706 field: "detailedStatus { id detailsPath group icon text }"4707 does not execute more queries per job4708 field: "project { id name webUrl }"4709 does not execute more queries per job4710 field: "shortSha"4711 does not execute more queries per job4712 field: "browseArtifactsPath"4713 does not execute more queries per job4714 field: "commitPath"4715 does not execute more queries per job4716 field: "playPath"4717 does not execute more queries per job4718 field: "refPath"4719 does not execute more queries per job4720 field: "webPath"4721 does not execute more queries per job4722 field: "finishedAt"4723 does not execute more queries per job4724 field: "duration"4725 does not execute more queries per job4726 field: "queuedDuration"4727 does not execute more queries per job4728 field: "tags"4729 does not execute more queries per job4730 sorting and pagination4731 with project search term4732 set to empty string4733 with n = 14734 returns paged result4735 behaves like a working graphql query4736 returns a successful response4737 with n = 24738 returns non-paged result4739 set to partial match4740 with n = 14741 returns paged result with no additional pages4742 behaves like a working graphql query4743 returns a successful response4744GitLab metrics server4745 behaves like spawns a server4746 targeting puma when using Golang server is true4747 behaves like serves metrics endpoint4748 serves /metrics endpoint4749 when using Pathname instance as target directory4750 behaves like serves metrics endpoint4751 serves /metrics endpoint4752 behaves like spawns a server4753 targeting puma when using Golang server is false4754 behaves like serves metrics endpoint4755 serves /metrics endpoint4756 when using Pathname instance as target directory4757 behaves like serves metrics endpoint4758 serves /metrics endpoint4759 behaves like spawns a server4760 targeting sidekiq when using Golang server is true4761 behaves like serves metrics endpoint4762 serves /metrics endpoint4763 when using Pathname instance as target directory4764 behaves like serves metrics endpoint4765 serves /metrics endpoint4766 behaves like spawns a server4767 targeting sidekiq when using Golang server is false4768 behaves like serves metrics endpoint4769 serves /metrics endpoint4770 when using Pathname instance as target directory4771 behaves like serves metrics endpoint4772 serves /metrics endpoint4773Public Project Pages Access4774 Project should be public4775 #public?4776 is expected to be truthy4777 GET /projects/:id/pages_access4778 access depends on the level4779 pages_access_level: 0, with_user: "admin", admin_mode: false, expected_result: 4034780 correct return value4781 pages_access_level: 0, with_user: "owner", admin_mode: false, expected_result: 4034782 correct return value4783 pages_access_level: 0, with_user: "master", admin_mode: false, expected_result: 4034784 correct return value4785 pages_access_level: 0, with_user: "developer", admin_mode: false, expected_result: 4034786 correct return value4787 pages_access_level: 0, with_user: "reporter", admin_mode: false, expected_result: 4034788 correct return value4789 pages_access_level: 0, with_user: "guest", admin_mode: false, expected_result: 4034790 correct return value4791 pages_access_level: 0, with_user: "user", admin_mode: false, expected_result: 4034792 correct return value4793 pages_access_level: 0, with_user: nil, admin_mode: false, expected_result: 4034794 correct return value4795 pages_access_level: 30, with_user: "admin", admin_mode: false, expected_result: 2004796 correct return value4797 pages_access_level: 30, with_user: "owner", admin_mode: false, expected_result: 2004798 correct return value4799 pages_access_level: 30, with_user: "master", admin_mode: false, expected_result: 2004800 correct return value4801 pages_access_level: 30, with_user: "developer", admin_mode: false, expected_result: 2004802 correct return value4803 pages_access_level: 30, with_user: "reporter", admin_mode: false, expected_result: 2004804 correct return value4805 pages_access_level: 30, with_user: "guest", admin_mode: false, expected_result: 2004806 correct return value4807 pages_access_level: 30, with_user: "user", admin_mode: false, expected_result: 2004808 correct return value4809 pages_access_level: 30, with_user: nil, admin_mode: false, expected_result: 2004810 correct return value4811 pages_access_level: 20, with_user: "admin", admin_mode: false, expected_result: 2004812 correct return value4813 pages_access_level: 20, with_user: "owner", admin_mode: false, expected_result: 2004814 correct return value4815 pages_access_level: 20, with_user: "master", admin_mode: false, expected_result: 2004816 correct return value4817 pages_access_level: 20, with_user: "developer", admin_mode: false, expected_result: 2004818 correct return value4819 pages_access_level: 20, with_user: "reporter", admin_mode: false, expected_result: 2004820 correct return value4821 pages_access_level: 20, with_user: "guest", admin_mode: false, expected_result: 2004822 correct return value4823 pages_access_level: 20, with_user: "user", admin_mode: false, expected_result: 2004824 correct return value4825 pages_access_level: 20, with_user: nil, admin_mode: false, expected_result: 2004826 correct return value4827 pages_access_level: 10, with_user: "admin", admin_mode: true, expected_result: 2004828 correct return value4829 pages_access_level: 10, with_user: "owner", admin_mode: false, expected_result: 2004830 correct return value4831 pages_access_level: 10, with_user: "master", admin_mode: false, expected_result: 2004832 correct return value4833 pages_access_level: 10, with_user: "developer", admin_mode: false, expected_result: 2004834 correct return value4835 pages_access_level: 10, with_user: "reporter", admin_mode: false, expected_result: 2004836 correct return value4837 pages_access_level: 10, with_user: "guest", admin_mode: false, expected_result: 2004838 correct return value4839 pages_access_level: 10, with_user: "user", admin_mode: false, expected_result: 4034840 correct return value4841 pages_access_level: 10, with_user: nil, admin_mode: false, expected_result: 4034842 correct return value4843Import::GithubController4844 GET new4845 redirects to GitHub for an access token if logged in with GitHub4846 prompts for an access token if GitHub not configured4847 gets authorization url using oauth client4848 behaves like a GitHub-ish import controller: GET new4849 redirects to status if we already have a token4850 renders the :new page if no token is present in session4851 when importing a CI/CD project4852 always prompts for an access token4853 GET callback4854 when auth state param is missing from session4855 reports an error4856 when auth state param is present in session4857 reports an error if state param is invalid4858 when remove_legacy_github_client feature is disabled4859 updates access token if state param is valid4860 includes namespace_id from query params if it is present4861 when remove_legacy_github_client feature is enabled4862 updates access token if state param is valid4863 includes namespace_id from query params if it is present4864 POST personal_access_token4865 behaves like a GitHub-ish import controller: POST personal_access_token4866 updates access token4867 strips access token with spaces4868 passes namespace_id param as query param if it was present4869 GET status4870 with OAuth4871 when OAuth config is missing4872 returns missing config error4873 with invalid access token4874 handles an invalid token4875 when user has few different repos4876 responds with expected high-level structure4877 behaves like calls repos through Clients::Proxy with expected args4878 calls repos list from provider with expected args4879 with namespace_id param4880 when user is allowed to create projects in this namespace4881 provides namespace to the template4882 when user is not allowed to create projects in this namespace4883 renders 4044884 pagination4885 when cursor is specified4886 behaves like calls repos through Clients::Proxy with expected args4887 calls repos list from provider with expected args4888 when relation type params present4889 behaves like calls repos through Clients::Proxy with expected args4890 calls repos list from provider with expected args4891 when organization_login is too long and with ":"4892 behaves like calls repos through Clients::Proxy with expected args4893 calls repos list from provider with expected args4894 when filtering4895 behaves like calls repos through Clients::Proxy with expected args4896 calls repos list from provider with expected args4897 with pagination4898 when before cursor present4899 behaves like calls repos through Clients::Proxy with expected args4900 calls repos list from provider with expected args4901 when after cursor present4902 behaves like calls repos through Clients::Proxy with expected args4903 calls repos list from provider with expected args4904 when user input contains colons and spaces4905 behaves like calls repos through Clients::Proxy with expected args4906 calls repos list from provider with expected args4907 when rate limit threshold is exceeded4908 returns 4294909 POST create4910 behaves like a GitHub-ish import controller: POST create4911 returns 200 response when the project is imported successfully4912 returns 422 response with the base error when the project could not be imported4913 touches the etag cache store4914 when the repository owner is the provider user4915 when the provider user and GitLab user's usernames match4916 takes the current user's namespace4917 when the provider user and GitLab user's usernames don't match4918 takes the current user's namespace4919 when the repository owner is not the provider user4920 when a namespace with the provider user's username already exists4921 when the namespace is owned by the GitLab user4922 takes the existing namespace4923 when the namespace is not owned by the GitLab user4924 creates a project using user's namespace4925 when a namespace with the provider user's username doesn't exist4926 when current user can create namespaces4927 does not create the namespace4928 user has chosen a namespace and name for the project4929 takes the selected namespace and name4930 user has chosen an existing nested namespace and name for the project4931 takes the selected namespace and name4932 user has chosen a non-existent nested namespaces and name for the project4933 does not take the selected namespace and name4934 does not create namespaces4935 user has chosen existent and non-existent nested namespaces and name for the project4936 does not take the selected namespace and name4937 does not create the namespaces4938 does not create a new namespace under the user namespace4939 user can use a group without having permissions to create a group4940 takes the selected namespace and name4941 when user can not create projects in the chosen namespace4942 returns 422 response4943 behaves like project import rate limiter4944 when limit exceeds4945 notifies and redirects user4946 GET realtime_changes4947 includes stats in response4948 behaves like a GitHub-ish import controller: GET realtime_changes4949 sets a Poll-Interval header4950 POST cancel4951 when project import was canceled4952 returns success4953 when project import was not canceled4954 returns error4955 POST cancel_all4956 when import is in progress4957 returns success4958 when there is no imports in progress4959 returns an empty array4960 when there is no projects created by user4961 returns an empty array4962 GET counts4963 returns repos count by type4964Updating the container expiration policy4965 post graphql mutation4966 with existing container expiration policy4967 user_role: :maintainer, shared_examples_name: "accepting the mutation request updating the container expiration policy"4968 behaves like accepting the mutation request updating the container expiration policy4969 behaves like updating the container expiration policy attributes4970 updates the container expiration policy4971 behaves like not creating the container expiration policy4972 doesn't create the container expiration policy4973 behaves like returning a success4974 returns the updated container expiration policy4975 behaves like returning response status4976 returns success4977 behaves like rejecting invalid regex for4978 for field name_regex4979 returns an error4980 behaves like returning response status4981 returns success4982 behaves like not creating the container expiration policy4983 doesn't create the container expiration policy4984 behaves like rejecting invalid regex for4985 for field name_regex_keep4986 returns an error4987 behaves like returning response status4988 returns success4989 behaves like not creating the container expiration policy4990 doesn't create the container expiration policy4991 behaves like rejecting blank name_regex when enabled4992 for blank name_regex4993 returns an error4994 behaves like returning response status4995 returns success4996 behaves like not creating the container expiration policy4997 doesn't create the container expiration policy4998 user_role: :developer, shared_examples_name: "denying the mutation request"4999 behaves like denying the mutation request5000 returns no response5001 behaves like not creating the container expiration policy5002 doesn't create the container expiration policy5003 behaves like returning response status5004 returns success5005 user_role: :reporter, shared_examples_name: "denying the mutation request"5006 behaves like denying the mutation request5007 returns no response5008 behaves like not creating the container expiration policy5009 doesn't create the container expiration policy5010 behaves like returning response status5011 returns success5012 user_role: :guest, shared_examples_name: "denying the mutation request"5013 behaves like denying the mutation request5014 returns no response5015 behaves like not creating the container expiration policy5016 doesn't create the container expiration policy5017 behaves like returning response status5018 returns success5019 user_role: :anonymous, shared_examples_name: "denying the mutation request"5020 behaves like denying the mutation request5021 returns no response5022 behaves like not creating the container expiration policy5023 doesn't create the container expiration policy5024 behaves like returning response status5025 returns success5026 without existing container expiration policy5027 user_role: :maintainer, shared_examples_name: "accepting the mutation request creating the container expiration policy"5028 behaves like accepting the mutation request creating the container expiration policy5029 behaves like creating the container expiration policy5030 behaves like updating the container expiration policy attributes5031 creates a new container expiration policy5032 updates the container expiration policy5033 behaves like returning a success5034 returns the updated container expiration policy5035 behaves like returning response status5036 returns success5037 behaves like returning a success5038 returns the updated container expiration policy5039 behaves like returning response status5040 returns success5041 behaves like rejecting invalid regex for5042 for field name_regex5043 returns an error5044 behaves like returning response status5045 returns success5046 behaves like not creating the container expiration policy5047 doesn't create the container expiration policy5048 behaves like rejecting invalid regex for5049 for field name_regex_keep5050 returns an error5051 behaves like returning response status5052 returns success5053 behaves like not creating the container expiration policy5054 doesn't create the container expiration policy5055 behaves like rejecting blank name_regex when enabled5056 for blank name_regex5057 returns an error5058 behaves like returning response status5059 returns success5060 behaves like not creating the container expiration policy5061 doesn't create the container expiration policy5062 user_role: :developer, shared_examples_name: "denying the mutation request"5063 behaves like denying the mutation request5064 returns no response5065 behaves like not creating the container expiration policy5066 doesn't create the container expiration policy5067 behaves like returning response status5068 returns success5069 user_role: :reporter, shared_examples_name: "denying the mutation request"5070 behaves like denying the mutation request5071 returns no response5072 behaves like not creating the container expiration policy5073 doesn't create the container expiration policy5074 behaves like returning response status5075 returns success5076 user_role: :guest, shared_examples_name: "denying the mutation request"5077 behaves like denying the mutation request5078 returns no response5079 behaves like not creating the container expiration policy5080 doesn't create the container expiration policy5081 behaves like returning response status5082 returns success5083 user_role: :anonymous, shared_examples_name: "denying the mutation request"5084 behaves like denying the mutation request5085 returns no response5086 behaves like not creating the container expiration policy5087 doesn't create the container expiration policy5088 behaves like returning response status5089 returns success5090Groups::DependencyProxyForContainersController5091 GET #manifest5092 feature enabled5093 behaves like without a token5094 is expected to respond with numeric status code unauthorized5095 behaves like without permission5096 with invalid user5097 is expected to respond with numeric status code unauthorized5098 with valid user that does not have access5099 is expected to respond with numeric status code not_found5100 with deploy token from a different group,5101 is expected to respond with numeric status code not_found5102 with revoked deploy token5103 is expected to respond with numeric status code unauthorized5104 with expired deploy token5105 is expected to respond with numeric status code unauthorized5106 with deploy token with insufficient scopes5107 is expected to respond with numeric status code not_found5108 when a group is not found5109 is expected to respond with numeric status code not_found5110 when user is not found5111 is expected to respond with numeric status code unauthorized5112 remote token request fails5113 proxies status from the remote token request5114 remote manifest request fails5115 proxies status from the remote manifest request5116 a valid user5117 behaves like a successful manifest pull5118 sends a file5119 returns Content-Disposition: attachment5120 behaves like a package tracking event5121 creates a gitlab tracking event pull_manifest5122 with workhorse response5123 returns Workhorse send-dependency instructions5124 behaves like with invalid path5125 with invalid image5126 raises an error5127 with invalid tag5128 raises an error5129 a valid deploy token5130 behaves like a successful manifest pull5131 sends a file5132 returns Content-Disposition: attachment5133 pulling from a subgroup5134 behaves like a successful manifest pull5135 sends a file5136 returns Content-Disposition: attachment5137 behaves like not found when disabled5138 feature disabled5139 returns 4045140 GET #blob5141 feature enabled5142 behaves like without a token5143 is expected to respond with numeric status code unauthorized5144 behaves like without permission5145 with invalid user5146 is expected to respond with numeric status code unauthorized5147 with valid user that does not have access5148 is expected to respond with numeric status code not_found5149 with deploy token from a different group,5150 is expected to respond with numeric status code not_found5151 with revoked deploy token5152 is expected to respond with numeric status code unauthorized5153 with expired deploy token5154 is expected to respond with numeric status code unauthorized5155 with deploy token with insufficient scopes5156 is expected to respond with numeric status code not_found5157 when a group is not found5158 is expected to respond with numeric status code not_found5159 when user is not found5160 is expected to respond with numeric status code unauthorized5161 a valid user5162 behaves like a successful blob pull5163 sends a file5164 returns Content-Disposition: attachment5165 behaves like a package tracking event5166 creates a gitlab tracking event pull_blob_from_cache5167 when cache entry does not exist5168 returns Workhorse send-dependency instructions5169 a valid deploy token5170 behaves like a successful blob pull5171 sends a file5172 returns Content-Disposition: attachment5173 pulling from a subgroup5174 behaves like a successful blob pull5175 sends a file5176 returns Content-Disposition: attachment5177 behaves like not found when disabled5178 feature disabled5179 returns 4045180 POST #authorize_upload_blob5181 behaves like without permission5182 with invalid user5183 is expected to respond with numeric status code unauthorized5184 with valid user that does not have access5185 is expected to respond with numeric status code not_found5186 with deploy token from a different group,5187 is expected to respond with numeric status code not_found5188 with revoked deploy token5189 is expected to respond with numeric status code unauthorized5190 with expired deploy token5191 is expected to respond with numeric status code unauthorized5192 with deploy token with insufficient scopes5193 is expected to respond with numeric status code not_found5194 when a group is not found5195 is expected to respond with numeric status code not_found5196 when user is not found5197 is expected to respond with numeric status code unauthorized5198 behaves like authorize action with permission5199 with a valid user5200 sends Workhorse local file instructions5201[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5202[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5203[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5204[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5205[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5206[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5207[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5208[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5209[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5210[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5211[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5212[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5213[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5214[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5215[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5216[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5217[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5218[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5219[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5220[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5221[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5222[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5223[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5224[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5225[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5226[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5227[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5228[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5229[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5230[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5231[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5232[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5233[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5234[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5235[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5236[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5237[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5238[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5239[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5240[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5241[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5242[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5243[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5244[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5245[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5246[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5247[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5248[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5249[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5250[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5251[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5252[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5253[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5254[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5255[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5256[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5257[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5258[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5259[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5260[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5261[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5262[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5263[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5264[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5265[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5266[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5267[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5268[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5269[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5270[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5271[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5272[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5273[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5274[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5275[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5276[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5277[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5278[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5279[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5280[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5281[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5282[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5283[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5284[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5285[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5286[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5287[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5288[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5289[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5290[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5291[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5292[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5293[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5294[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5295[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5296[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5297[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5298[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5299[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5300[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5301[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5302[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5303[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5304[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5305[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5306 sends Workhorse remote object instructions5307 POST #upload_blob5308 behaves like without permission5309 with invalid user5310 is expected to respond with numeric status code unauthorized5311 with valid user that does not have access5312 is expected to respond with numeric status code not_found5313 with deploy token from a different group,5314 is expected to respond with numeric status code not_found5315 with revoked deploy token5316 is expected to respond with numeric status code unauthorized5317 with expired deploy token5318 is expected to respond with numeric status code unauthorized5319 with deploy token with insufficient scopes5320 is expected to respond with numeric status code not_found5321 when a group is not found5322 is expected to respond with numeric status code not_found5323 when user is not found5324 is expected to respond with numeric status code unauthorized5325 with a valid user5326 creates a blob5327 behaves like a package tracking event5328 creates a gitlab tracking event pull_blob5329 behaves like namespace statistics refresh5330 updates namespace statistics5331 POST #authorize_upload_manifest5332 behaves like without permission5333 with invalid user5334 is expected to respond with numeric status code unauthorized5335 with valid user that does not have access5336 is expected to respond with numeric status code not_found5337 with deploy token from a different group,5338 is expected to respond with numeric status code not_found5339 with revoked deploy token5340 is expected to respond with numeric status code unauthorized5341 with expired deploy token5342 is expected to respond with numeric status code unauthorized5343 with deploy token with insufficient scopes5344 is expected to respond with numeric status code not_found5345 when a group is not found5346 is expected to respond with numeric status code not_found5347 when user is not found5348 is expected to respond with numeric status code unauthorized5349 behaves like authorize action with permission5350 with a valid user5351 sends Workhorse local file instructions5352[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5353[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5354[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5355[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5356[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5357[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5358[fog][WARNING] fog: the specified s3 bucket name(dependency_proxy) is not a valid dns name, which will negatively impact performance. For details see: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html5359 sends Workhorse remote object instructions5360 POST #upload_manifest5361 behaves like without permission5362 with invalid user5363 is expected to respond with numeric status code unauthorized5364 with valid user that does not have access5365 is expected to respond with numeric status code not_found5366 with deploy token from a different group,5367 is expected to respond with numeric status code not_found5368 with revoked deploy token5369 is expected to respond with numeric status code unauthorized5370 with expired deploy token5371 is expected to respond with numeric status code unauthorized5372 with deploy token with insufficient scopes5373 is expected to respond with numeric status code not_found5374 when a group is not found5375 is expected to respond with numeric status code not_found5376 when user is not found5377 is expected to respond with numeric status code unauthorized5378 with a valid user5379 behaves like a package tracking event5380 creates a gitlab tracking event pull_manifest5381 behaves like with invalid path5382 with invalid image5383 raises an error5384 with invalid tag5385 raises an error5386 with no existing manifest5387 creates a manifest5388 behaves like namespace statistics refresh5389 updates namespace statistics5390 with existing stale manifest5391 updates the existing manifest5392 behaves like namespace statistics refresh5393 updates namespace statistics5394Projects::ArtifactsController5395 GET index5396 when feature flag is on5397 renders the page with data for the artifacts app5398 when feature flag is off5399 renders no content5400 DELETE destroy5401 deletes the artifact5402 redirects to artifacts index page5403 sets the notice5404 when artifact deletion fails5405 redirects to artifacts index page5406 sets the notice5407 when user is not authorized5408 does not delete the artifact5409 GET download5410 when no file type is supplied5411 sends the artifacts file5412 when artifact is set as private5413 and user is not authoirized5414 returns forbidden5415 and user has access to project5416 downloads5417 when a file type is supplied5418 when an invalid file type is supplied5419 returns 4045420 when codequality file type is supplied5421 when file is stored locally5422 sends the codequality report5423 when file is stored remotely5424 sends the codequality report5425 when proxied5426 sends the codequality report5427 when Google CDN is configured5428 redirects to a Google CDN request5429 when downloading a debug trace5430 when the user does not have update_build permissions5431 denies the user access5432 when the user has update_build permissions5433 sends the trace5434 GET browse5435 when the directory exists5436 renders the browse view5437 when the directory does not exist5438 responds Not Found5439 GET external_file5440 when the file exists5441 renders the file view5442 when the file does not exist5443 responds Not Found5444 GET file5445 when the file is served by GitLab Pages5446 when the file exists5447 renders the file view5448 when the file is served through Rails5449 when the file exists5450 renders the file view5451 when the file does not exist5452 responds Not Found5453 when the project is private5454 does not redirect the request5455 when the project is private and pages access control is enabled5456 renders the file view5457 GET raw5458 when the file exists5459 when using local file storage5460 behaves like a valid file5461 serves the file using workhorse5462 when using remote file storage5463 behaves like a valid file5464 serves the file using workhorse5465 when artifacts archive is missing5466 returns 4045467 fetching an artifact of different type5468 when the artifact is zip5469 behaves like a valid file5470 serves the file using workhorse5471 when the artifact is not zip5472 responds with not found5473 GET latest_succeeded5474 cannot find the job5475 has no such ref5476 behaves like not found5477 is expected to respond with numeric status code not_found5478 has no such job5479 behaves like not found5480 is expected to respond with numeric status code not_found5481 has no path5482 behaves like not found5483 is expected to respond with numeric status code not_found5484 found the job and redirect5485 with regular branch5486 behaves like redirect to the job5487 redirects5488 with branch name containing slash5489 behaves like redirect to the job5490 redirects5491 with branch name and path containing slashes5492 redirects5493 with a failed pipeline on an updated master5494 behaves like redirect to the job5495 redirects5496Projects::WebIdeTerminalsController5497 GET show5498 behaves like terminal access rights5499 with admin5500 when admin mode is enabled5501 returns 2005502 when admin mode is disabled5503 returns 4045504 with owner5505 returns 2005506 with maintainer5507 returns 2005508 with developer5509 returns 4045510 with reporter5511 returns 4045512 with guest5513 returns 4045514 with non member5515 returns 4045516 behaves like when pipeline is not from a webide source5517 with admin5518 returns 4045519 POST check_config5520 behaves like terminal access rights5521 with admin5522 when admin mode is enabled5523 returns 2005524 when admin mode is disabled5525 returns 4045526 with owner5527 returns 2005528 with maintainer5529 returns 2005530 with developer5531 returns 4045532 with reporter5533 returns 4045534 with guest5535 returns 4045536 with non member5537 returns 4045538 when invalid config file5539 returns 4225540 POST create5541 when terminal job is created successfully5542 increases the web ide terminal counter5543 access rights5544 behaves like terminal access rights5545 with admin5546 when admin mode is enabled5547 returns 2005548 when admin mode is disabled5549 returns 4045550 with owner5551 returns 2005552 with maintainer5553 returns 2005554 with developer5555 returns 4045556 with reporter5557 returns 4045558 with guest5559 returns 4045560 with non member5561 returns 4045562 when branch does not exist5563 returns 4005564 behaves like web ide terminal usage counter5565 does not increase5566 when there is an error creating the job5567 returns 4005568 behaves like web ide terminal usage counter5569 does not increase5570 when the current build is nil5571 returns 4005572 behaves like web ide terminal usage counter5573 does not increase5574 POST cancel5575 behaves like terminal access rights5576 with admin5577 when admin mode is enabled5578 returns 2005579 when admin mode is disabled5580 returns 4045581 with owner5582 returns 2005583 with maintainer5584 returns 2005585 with developer5586 returns 4045587 with reporter5588 returns 4045589 with guest5590 returns 4045591 with non member5592 returns 4045593 behaves like when pipeline is not from a webide source5594 with admin5595 returns 4045596 when job is not cancelable5597 returns 4225598 POST retry5599 behaves like terminal access rights5600 with admin5601 when admin mode is enabled5602 returns 2005603 when admin mode is disabled5604 returns 4045605 with owner5606 returns 2005607 with maintainer5608 returns 2005609 with developer5610 returns 4045611 with reporter5612 returns 4045613 with guest5614 returns 4045615 with non member5616 returns 4045617 behaves like when pipeline is not from a webide source5618 with admin5619 returns 4045620 when job is not retryable5621 returns 4225622 when job is cancelled5623 returns 2005624 when job fails5625 returns 2005626 when job is successful5627 returns 2005628Projects::Settings::IntegrationsController5629 behaves like Integrations::Actions5630 GET #edit5631 assigns the integration5632 PUT #update5633 updates the integration with the provided params and redirects to the form5634 when sending a password field5635 updates the integration with the password and other params5636 when sending a blank password field5637 ignores the password field and saves the other params5638 GET index5639 renders index with 200 status code5640 #test5641 renders 404 when the integration is not testable5642 returns success if test is successful5643 returns extra given data if test is successful5644 returns an error response if the test is not successful5645 returns extra given message if the test is not successful5646 returns an error response if a network exception is raised5647 returns error messages in JSON response if validations fail5648 when integration has a webhook5649 returns an error response if the webhook URL is changed to one that is blocked5650 ignores masked webhook param5651 creates an associated web hook record if web hook integration is configured for the first time5652 when the endpoint receives requests above the rate limit5653 prevents making test requests5654 PUT #update5655 as HTML5656 when update fails5657 renders the edit form5658 when param `active` is set to true5659 when redirect_to param is present5660 behaves like integration update5661 redirects to the correct url with a flash message5662 when redirect_to is an external domain5663 behaves like integration update5664 redirects to the correct url with a flash message5665 when redirect_to param is an empty string5666 behaves like integration update5667 redirects to the correct url with a flash message5668 when param `active` is set to false5669 behaves like integration update5670 redirects to the correct url with a flash message5671 when param `inherit_from_id` is set to empty string5672 sets inherit_from_id to nil5673 when param `inherit_from_id` is set to an instance integration5674 ignores submitted params and inherits instance settings5675 when param `inherit_from_id` is set to a group integration5676 ignores submitted params and inherits group settings5677 when param `inherit_from_id` is set to an unrelated group5678 ignores the param and saves the submitted settings5679 with chat notification integration5680 behaves like integration update5681 redirects to the correct url with a flash message5682 with masked token5683 does not update the webhook5684 behaves like integration update5685 redirects to the correct url with a flash message5686 as JSON5687 when update succeeds5688 returns success response5689 when update fails with missing password5690 returns JSON response errors5691 when update fails with invalid URL5692 returns JSON response with errors5693 GET #edit5694 with Jira service5695 with approved services5696 renders edit page5697getting Alert Management Alerts5698 with alert data5699 without project permissions5700 is expected to equal nil5701 behaves like a working graphql query5702 returns a successful response5703 with project permissions5704 is expected to eq 25705 returns the correct properties of the alerts5706 behaves like a working graphql query5707 returns a successful response5708 with iid given5709 is expected to eq 15710 is expected to eq "1"5711 behaves like a working graphql query5712 returns a successful response5713 with statuses given5714 is expected to eq 15715 is expected to eq "2"5716 behaves like a working graphql query5717 returns a successful response5718 sorting data given5719 sorts in the correct order5720 behaves like a working graphql query5721 returns a successful response5722 ascending order5723 sorts in the correct order5724 searching5725 is expected to eq 15726 is expected to eq "1"5727 behaves like a working graphql query5728 returns a successful response5729 unknown criteria5730 is expected to eq 05731 assignee_username5732 is expected to eq "2"5733 behaves like a working graphql query5734 returns a successful response5735Import::GitlabController5736 GET callback5737 updates access token5738 importable_repos should return an array5739 passes namespace_id query param to status if provided5740 GET status5741 redirects to auth if session does not contain access token5742 when session contains access token5743 behaves like import controller status5744 returns variables for json request5745 POST create5746 returns 200 response when the project is imported successfully5747 returns 422 response when the project could not be imported5748 when the repository owner is the GitLab.com user5749 when the GitLab.com user and GitLab server user's usernames match5750 takes the current user's namespace5751 when the GitLab.com user and GitLab server user's usernames don't match5752 takes the current user's namespace5753 when the repository owner is not the GitLab.com user5754 when a namespace with the GitLab.com user's username already exists5755 when the namespace is owned by the GitLab server user5756 takes the existing namespace5757 when the namespace is not owned by the GitLab server user5758 doesn't create a project5759 when a namespace with the GitLab.com user's username doesn't exist5760 when current user can create namespaces5761 creates the namespace5762 takes the new namespace5763 when current user can't create namespaces5764 doesn't create the namespace5765 takes the current user's namespace5766 user has chosen an existing nested namespace for the project5767 takes the selected namespace and name5768 user has chosen a non-existent nested namespaces for the project5769 takes the selected namespace and name5770 creates the namespaces5771 new namespace has the right parent5772 user has chosen existent and non-existent nested namespaces and name for the project5773 takes the selected namespace and name5774 creates the namespaces5775 when user can not create projects in the chosen namespace5776 returns 422 response5777 behaves like project import rate limiter5778 when limit exceeds5779 notifies and redirects user5780get board lists5781 for a project5782 behaves like group and project board list issues query5783 when the user does not have access to the board5784 returns nil5785 when user can read the board5786 can access the issues5787 does not set the relative positions of the issues not being returned5788 when filtering by confidential5789 returns matching issue5790 when filtering by a unioned argument5791 returns correctly filtered issues5792 when feature flag is disabled5793 returns an error5794 for a group5795 behaves like group and project board list issues query5796 when the user does not have access to the board5797 returns nil5798 when user can read the board5799 can access the issues5800 does not set the relative positions of the issues not being returned5801 when filtering by confidential5802 returns matching issue5803 when filtering by a unioned argument5804 returns correctly filtered issues5805 when feature flag is disabled5806 returns an error5807Projects::TagsController5808 token authentication5809 when public project5810 behaves like authenticates sessionless user for the request spec5811 index atom5812 when the 'private_token' param is populated with the personal access token5813 when valid token5814 when resource is public5815 authenticates user and returns response with ok status5816 when user with expired password5817 does not authenticate user and returns response with ok status5818 when the personal access token has no api scope5819 when resource is public5820 does not authenticate user and returns response with ok status5821 when invalid token5822 when resource is public5823 does not authenticate user and returns response with ok status5824 when the 'PRIVATE-TOKEN' header is populated with the personal access token5825 when valid token5826 when resource is public5827 authenticates user and returns response with ok status5828 when user with expired password5829 does not authenticate user and returns response with ok status5830 when the personal access token has no api scope5831 when resource is public5832 does not authenticate user and returns response with ok status5833 when invalid token5834 when resource is public5835 does not authenticate user and returns response with ok status5836 when the 'feed_token' param is populated with the feed token5837 when valid token5838 when resource is public5839 authenticates user and returns response with ok status5840 when user with expired password5841 does not authenticate user and returns response with ok status5842 when invalid token5843 when resource is public5844 does not authenticate user and returns response with ok status5845 when private project5846 behaves like authenticates sessionless user for the request spec5847 index atom5848 when the 'private_token' param is populated with the personal access token5849 when valid token5850 when resource is private5851 authenticates user and returns response with ok status5852 when user with expired password5853 does not return response with ok status5854 when password expiration is not applicable5855 when ldap user5856 authenticates user and returns response with ok status5857 when the personal access token has no api scope5858 when resource is private5859 does not return response with ok status5860 when invalid token5861 when resource is private5862 does not return response with ok status5863 when the 'PRIVATE-TOKEN' header is populated with the personal access token5864 when valid token5865 when resource is private5866 authenticates user and returns response with ok status5867 when user with expired password5868 does not return response with ok status5869 when password expiration is not applicable5870 when ldap user5871 authenticates user and returns response with ok status5872 when the personal access token has no api scope5873 when resource is private5874 does not return response with ok status5875 when invalid token5876 when resource is private5877 does not return response with ok status5878 when the 'feed_token' param is populated with the feed token5879 when valid token5880 when resource is private5881 authenticates user and returns response with ok status5882 when user with expired password5883 does not return response with ok status5884 when password expiration is not applicable5885 when ldap user5886 authenticates user and returns response with ok status5887 when invalid token5888 when resource is private5889 does not return response with ok status5890IdeController5891 # order random5892 #index5893 with /-/ide5894 returns 4045895 with /-/ide/project5896 returns 4045897 with /-/ide/project/:project5898 instantiates project instance var and returns 2005899 behaves like user access rights check5900 when user can read project5901 increases the views counter5902 when user can read project but cannot push code5903 when user does not have fork5904 instantiates fork_info instance var with fork_path and returns 2005905 has nil fork_info if user cannot fork5906 when user has fork5907 instantiates fork_info instance var with ide_path and returns 2005908 when user cannot read project5909 returns 4045910 with /-/ide/project/:project/edit5911 instantiates project instance var and returns 2005912 behaves like user access rights check5913 when user can read project5914 increases the views counter5915 when user can read project but cannot push code5916 when user does not have fork5917 instantiates fork_info instance var with fork_path and returns 2005918 has nil fork_info if user cannot fork5919 when user has fork5920 instantiates fork_info instance var with ide_path and returns 2005921 when user cannot read project5922 returns 4045923 with /-/ide/project/:project/blob5924 instantiates project instance var and returns 2005925 behaves like user access rights check5926 when user can read project5927 increases the views counter5928 when user can read project but cannot push code5929 when user does not have fork5930 instantiates fork_info instance var with fork_path and returns 2005931 has nil fork_info if user cannot fork5932 when user has fork5933 instantiates fork_info instance var with ide_path and returns 2005934 when user cannot read project5935 returns 4045936 with /-/ide/project/:project/tree5937 instantiates project instance var and returns 2005938 behaves like user access rights check5939 when user can read project5940 increases the views counter5941 when user can read project but cannot push code5942 when user does not have fork5943 instantiates fork_info instance var with fork_path and returns 2005944 has nil fork_info if user cannot fork5945 when user has fork5946 instantiates fork_info instance var with ide_path and returns 2005947 when user cannot read project5948 returns 4045949 Snowplow view event5950 is tracked5951 layout5952 ff_state: false, use_legacy_web_ide: false, expect_top_nav: true5953 handles rendering top nav5954 ff_state: false, use_legacy_web_ide: true, expect_top_nav: true5955 handles rendering top nav5956 ff_state: true, use_legacy_web_ide: true, expect_top_nav: true5957 handles rendering top nav5958 ff_state: true, use_legacy_web_ide: false, expect_top_nav: false5959 handles rendering top nav5960 frame-src content security policy5961 adds https://*.vscode-cdn.net in frame-src CSP policy5962Projects::DesignManagement::Designs::RawImagesController5963 GET #show5964 when the design is not an LFS file5965 serves files with `Content-Disposition` header set to attachment plus the filename5966 serves files with Workhorse5967 behaves like project cache control headers5968 when project is public5969 returns cache_control public header to true5970 when project is private5971 returns cache_control public header to true5972 when project is internal5973 returns cache_control public header to true5974 when the user does not have permission5975 is expected to respond with numeric status code not_found5976 when design does not exist5977 is expected to respond with numeric status code not_found5978 sha param5979 is expected not to eq "cc77fae9a0de150b0ebc3ab10611442bf08a5559"5980 when sha is the newest version sha5981 behaves like a successful request for sha5982 is expected to respond with numeric status code ok5983 when sha is the oldest version sha5984 behaves like a successful request for sha5985 is expected to respond with numeric status code ok5986 when sha is nil5987 behaves like a successful request for sha5988 is expected to respond with numeric status code ok5989 when the design is an LFS file5990 serves files with `Content-Disposition: attachment`5991 sets appropriate caching headers5992 behaves like a controller that can serve LFS files5993 when lfs is enabled5994 when the project is linked to the LfsObject5995 serves the file5996 and lfs uses object storage5997 responds with redirect to file5998 sets content disposition5999 when project is not linked to the LfsObject6000 does not serve the file6001 when the project is part of a fork network6002 when the project is the root of the fork network6003 behaves like a controller that correctly serves lfs files within a fork network6004 is expected not to eq #<Project id:831 namespace462/project767>>6005 does not serve the file if no members are linked to the LfsObject6006 serves the file when the fork network root is linked to the LfsObject6007 serves the file when the fork network member is linked to the LfsObject6008 when the project is a downstream member of the fork network6009 behaves like a controller that correctly serves lfs files within a fork network6010 is expected not to eq #<Project id:836 namespace467/project772>>6011 does not serve the file if no members are linked to the LfsObject6012 serves the file when the fork network root is linked to the LfsObject6013 serves the file when the fork network member is linked to the LfsObject6014 when lfs is not enabled6015 delivers ASCII file (PENDING: Calling spec asked to skip testing LFS disabled scenario)6016nuget package details6017 has the correct metadata6018 has dependency links6019 avoids N+1 queries6020 behaves like a package detail6021 behaves like a working graphql query6022 returns a successful response6023 behaves like matching the package details schema6024 matches the JSON schema6025 with pipelines6026 behaves like a working graphql query6027 returns a successful response6028 behaves like matching the package details schema6029 matches the JSON schema6030 behaves like a package with files6031 has the right amount of files6032 has the basic package files data6033 with package files pending destruction6034 does not return them6035Projects::Settings::RepositoryController6036 GET show6037 renders show with 200 status code6038 PUT cleanup6039 enqueues a project cleanup6040 when project cleanup returns an error6041 shows an error6042 POST create_deploy_token6043 a good request6044 creates the deploy token6045 a bad request6046 does not create the deploy token6047 an invalid request6048 raises a validation error6049 PUT update6050 when updating default branch6051 with a good request6052 updates default branch and redirect to project_settings_repository_path6053 with a bad input6054 does not update default branch and shows an alert6055 when updating branch names template from issues6056 with a good request6057 updates issue_branch_template and redirect to project_settings_repository_path6058 with a bad input6059 updates issue_branch_template and redirect to project_settings_repository_path6060Projects::Registry::RepositoriesController6061 when user has access to registry6062 GET #index6063 behaves like renders a list of repositories6064 when root container repository exists6065 does not create root container repository6066 when root container repository is not created6067 when there are tags for this repository6068 creates a root container repository6069 behaves like renders 200 for html and 404 for json6070 successfully renders container repositories6071 returns 404 for request in json format6072 when there is a ContainerRegistry::Path::InvalidRegistryPathError6073 displays a connection error message6074 when there is a Faraday::Error6075 displays a connection error message6076 when there are no tags for this repository6077 does not ensure root container repository6078 behaves like renders 200 for html and 404 for json6079 successfully renders container repositories6080 returns 404 for request in json format6081 when there is a ContainerRegistry::Path::InvalidRegistryPathError6082 displays a connection error message6083 when there is a Faraday::Error6084 displays a connection error message6085 GET #show6086 behaves like renders a list of repositories6087 when root container repository exists6088 does not create root container repository6089 when root container repository is not created6090 when there are tags for this repository6091 creates a root container repository6092 behaves like renders 200 for html and 404 for json6093 successfully renders container repositories6094 returns 404 for request in json format6095 when there is a ContainerRegistry::Path::InvalidRegistryPathError6096 displays a connection error message6097 when there is a Faraday::Error6098 displays a connection error message6099 when there are no tags for this repository6100 does not ensure root container repository6101 behaves like renders 200 for html and 404 for json6102 successfully renders container repositories6103 returns 404 for request in json format6104 when there is a ContainerRegistry::Path::InvalidRegistryPathError6105 displays a connection error message6106 when there is a Faraday::Error6107 displays a connection error message6108 DELETE #destroy6109 when root container repository exists6110 marks the repository as delete_scheduled6111 tracks the event6112 when user does not have access to registry6113 GET #index6114 responds with 4046115 does not ensure root container repository6116Projects::HooksController6117 #index6118 renders index with 200 status code6119 #update6120 adds, updates and deletes URL variables6121 with an existing token6122 does not change a token6123 #edit6124 does not error if the hook cannot be found6125 assigns hook_logs6126 handles when logs are present6127 can paginate logs6128 #create6129 sets all parameters6130 alerts the user if the new hook is invalid6131 DELETE #destroy6132 behaves like Web hook destroyer6133 displays a message about synchronous delete6134 displays a message about async delete6135 displays an error if deletion failed6136 when user does not have permission6137 renders a 4046138 #test6139 when the hook executes successfully6140 informs the user6141 when the hook runs, but fails6142 informs the user6143 when the hook fails completely6144 informs the user6145 when the endpoint receives requests above the limit6146 prevents making test requests6147API::BroadcastMessages6148 GET /broadcast_messages6149 returns an Array of BroadcastMessages6150 GET /broadcast_messages/:id6151 returns the specified message6152 POST /broadcast_messages6153 returns a 401 for anonymous users6154 behaves like POST request permissions for admin mode6155 behaves like when admin6156 behaves like makes request6157 returns6158 behaves like makes request6159 returns6160 behaves like when user6161 returns6162 behaves like makes request6163 returns6164 as an admin6165 requires the `message` parameter6166 defines sane default start and end times6167 accepts a custom background and foreground color6168 accepts target access levels6169 accepts a target path6170 accepts a broadcast type6171 uses default broadcast type6172 errors for invalid broadcast type6173 accepts an active dismissable value6174 PUT /broadcast_messages/:id6175 returns a 401 for anonymous users6176 behaves like PUT request permissions for admin mode6177 behaves like when admin6178 behaves like makes request6179 returns6180 behaves like makes request6181 returns6182 behaves like when user6183 returns6184 behaves like makes request6185 returns6186 as an admin6187 accepts new background and foreground colors6188 accepts new start and end times6189 accepts a new message6190 accepts a new target_access_levels6191 accepts a new target_path6192 accepts a new broadcast_type6193 errors for invalid broadcast type6194 accepts a new dismissable value6195 DELETE /broadcast_messages/:id6196 returns a 401 for anonymous users6197 deletes the broadcast message for admins6198 behaves like DELETE request permissions for admin mode6199 behaves like when admin6200 behaves like makes request6201 returns6202 behaves like makes request6203 returns6204 behaves like when user6205 returns6206 behaves like makes request6207 returns6208 behaves like 412 response6209 for a modified ressource6210 returns 412 with a JSON error6211 for an unmodified ressource6212 returns 204 with an empty body6213API::ResourceStateEvents6214 when eventable is an Issue6215 behaves like resource_state_events API6216 GET /projects/:id/issues/:noteable_id/resource_state_events6217 returns an array of resource state events6218 returns a 404 error when eventable id not found6219 returns 404 when not authorized6220 GET /projects/:id/issues/:noteable_id/resource_state_events/:event_id6221 returns a resource state event by id6222 returns 404 when not authorized6223 returns a 404 error if resource state event not found6224 pagination6225 returns the second page6226 when eventable is a Merge Request6227 behaves like resource_state_events API6228 GET /projects/:id/merge_requests/:noteable_id/resource_state_events6229 returns an array of resource state events6230 returns a 404 error when eventable id not found6231 returns 404 when not authorized6232 GET /projects/:id/merge_requests/:noteable_id/resource_state_events/:event_id6233 returns a resource state event by id6234 returns 404 when not authorized6235 returns a 404 error if resource state event not found6236 pagination6237 returns the second page6238Setting labels of a merge request6239 returns an error if the user is not allowed to update the merge request6240 sets the merge request labels, removing existing ones6241 when passing label_ids empty array as input6242 removes the merge request labels6243 when passing operation_mode as APPEND6244 sets the labels and resets labels to keep the title ordering, without removing others6245 when passing operation_mode as REMOVE6246 removes the labels, without removing others6247getting dependency proxy settings for a group6248 with the settings model created6249 behaves like dependency proxy group setting query6250 behaves like a working graphql query6251 returns a successful response6252 with different permissions6253 group_visibility: :private, role: :maintainer, access_granted: true6254 return the proper response6255 group_visibility: :private, role: :developer, access_granted: false6256 return the proper response6257 group_visibility: :private, role: :reporter, access_granted: false6258 return the proper response6259 group_visibility: :private, role: :guest, access_granted: false6260 return the proper response6261 group_visibility: :private, role: :anonymous, access_granted: false6262 return the proper response6263 group_visibility: :public, role: :maintainer, access_granted: true6264 return the proper response6265 group_visibility: :public, role: :developer, access_granted: false6266 return the proper response6267 group_visibility: :public, role: :reporter, access_granted: false6268 return the proper response6269 group_visibility: :public, role: :guest, access_granted: false6270 return the proper response6271 group_visibility: :public, role: :anonymous, access_granted: false6272 return the proper response6273 without the settings model created6274 behaves like dependency proxy group setting query6275 behaves like a working graphql query6276 returns a successful response6277 with different permissions6278 group_visibility: :private, role: :maintainer, access_granted: true6279 return the proper response6280 group_visibility: :private, role: :developer, access_granted: false6281 return the proper response6282 group_visibility: :private, role: :reporter, access_granted: false6283 return the proper response6284 group_visibility: :private, role: :guest, access_granted: false6285 return the proper response6286 group_visibility: :private, role: :anonymous, access_granted: false6287 return the proper response6288 group_visibility: :public, role: :maintainer, access_granted: true6289 return the proper response6290 group_visibility: :public, role: :developer, access_granted: false6291 return the proper response6292 group_visibility: :public, role: :reporter, access_granted: false6293 return the proper response6294 group_visibility: :public, role: :guest, access_granted: false6295 return the proper response6296 group_visibility: :public, role: :anonymous, access_granted: false6297 return the proper response6298Projects::RunnersController6299 #update6300 updates the runner and ticks the queue6301 #destroy6302 destroys the runner6303 #resume6304 marks the runner as active and ticks the queue6305 #pause6306 marks the runner as inactive and ticks the queue6307 #toggle_shared_runners6308 toggles shared_runners_enabled when the group allows shared runners6309 toggles shared_runners_enabled when the group disallows shared runners but allows overrides6310 does not enable if the group disallows shared runners6311Import::BitbucketServerController6312 GET new6313 shows the input form6314 POST create6315 returns the new project6316 returns an error when an invalid project key is used6317 returns an error when an invalid repository slug is used6318 returns an error when the project cannot be found6319 returns an error when the project cannot be saved6320 returns an error when the server can't be contacted6321 with project key with tildes6322 successfully creates a project6323 behaves like project import rate limiter6324 when limit exceeds6325 notifies and redirects user6326 POST configure6327 clears out existing session6328 sets the session variables6329 passes namespace_id to status page if provided6330 GET status6331 returns invalid repos6332 redirects to connection form if session is missing auth data6333 behaves like import controller status6334 returns variables for json request6335 when filtering6336 passes filter param to bitbucket client6337Mutations::Metrics::Dashboard::Annotations::Create6338 is expected to require graphql authorizations :admin_metrics_dashboard_annotation6339 when annotation source is environment6340 when the user does not have permission6341 does not create the annotation6342 behaves like a mutation that returns top-level errors6343 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"6344 when the user has permission6345 creates the annotation6346 returns the created annotation6347 when environment_id is missing6348 behaves like a mutation that returns top-level errors6349 is expected to contain exactly "Either a cluster or environment global id is required"6350 when environment_id is invalid6351 behaves like an invalid argument to the mutation6352 behaves like a mutation that returns top-level errors6353 is expected to contain exactly (include "invalid value for environmentId")6354 when annotation source is cluster6355 with permission6356 creates the annotation6357 returns the created annotation6358 when cluster_id is missing6359 behaves like a mutation that returns top-level errors6360 is expected to contain exactly "Either a cluster or environment global id is required"6361 without permission6362 does not create the annotation6363 behaves like a mutation that returns top-level errors6364 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"6365 when cluster_id is invalid6366 behaves like an invalid argument to the mutation6367 behaves like a mutation that returns top-level errors6368 is expected to contain exactly (include "invalid value for clusterId")6369 when both environment_id and cluster_id are provided6370 behaves like a mutation that returns top-level errors6371 is expected to contain exactly "Either a cluster or environment global id is required"6372 when environment_id is given an ID of the wrong type6373 behaves like an invalid argument to the mutation6374 behaves like a mutation that returns top-level errors6375 is expected to contain exactly (include "invalid value for environmentId")6376 when cluster_id is given an ID of the wrong type6377 behaves like an invalid argument to the mutation6378 behaves like a mutation that returns top-level errors6379 is expected to contain exactly (include "invalid value for clusterId")6380API::Admin::PlanLimits PlanLimits6381 GET /application/plan_limits6382 behaves like GET request permissions for admin mode6383 behaves like when admin6384 behaves like makes request6385 returns6386 behaves like makes request6387 returns6388 behaves like when user6389 returns6390 behaves like makes request6391 returns6392 as an admin user6393 no params6394 returns plan limits6395 correct plan name in params6396 returns plan limits6397 invalid plan name in params6398 returns validation error6399 PUT /application/plan_limits6400 behaves like PUT request permissions for admin mode6401 behaves like when admin6402 behaves like makes request6403 returns6404 behaves like makes request6405 returns6406 behaves like when user6407 returns6408 behaves like makes request6409 returns6410 as an admin user6411 correct params6412 updates multiple plan limits6413 updates single plan limits6414 empty params6415 fails to update plan limits6416 params with wrong type6417 fails to update plan limits6418 missing plan_name in params6419 fails to update plan limits6420 additional undeclared params6421 updates only declared plan limits6422Query current user groups6423 avoids N+1 queries6424 returns all groups where the user is a direct member6425 behaves like a working graphql query6426 returns a successful response6427 when permission_scope is CREATE_PROJECTS6428 is expected to match [{"id"=>"gid://gitlab/Group/2637", "name"=>"a public maintainer", "path"=>"a-public-maintainer", "fullPath"=>"root-group/a-public-maintainer"}, {"id"=>"gid://gitlab/Group/2638", "name"=>"a public owner", "path"=>"a-public-owner", "fullPath"=>"a-public-owner"}, {"id"=>"gid://gitlab/Group/2635", "name"=>"b private maintainer", "path"=>"b-private-maintainer", "fullPath"=>"root-group/b-private-maintainer"}, {"id"=>"gid://gitlab/Group/2636", "name"=>"c public developer", "path"=>"c-public-developer", "fullPath"=>"c-public-developer"}]6429 when search is provided6430 is expected to match [{"id"=>"gid://gitlab/Group/2637", "name"=>"a public maintainer", "path"=>"a-public-maintainer", "fullPath"=>"root-group/a-public-maintainer"}, {"id"=>"gid://gitlab/Group/2635", "name"=>"b private maintainer", "path"=>"b-private-maintainer", "fullPath"=>"root-group/b-private-maintainer"}]6431 when permission_scope is TRANSFER_PROJECTS6432 is expected to match [{"id"=>"gid://gitlab/Group/2637", "name"=>"a public maintainer", "path"=>"a-public-maintainer", "fullPath"=>"root-group/a-public-maintainer"}, {"id"=>"gid://gitlab/Group/2638", "name"=>"a public owner", "path"=>"a-public-owner", "fullPath"=>"a-public-owner"}, {"id"=>"gid://gitlab/Group/2635", "name"=>"b private maintainer", "path"=>"b-private-maintainer", "fullPath"=>"root-group/b-private-maintainer"}]6433 when search is provided6434 is expected to match [{"id"=>"gid://gitlab/Group/2638", "name"=>"a public owner", "path"=>"a-public-owner", "fullPath"=>"a-public-owner"}]6435 when search is provided6436 is expected to match [{"id"=>"gid://gitlab/Group/2637", "name"=>"a public maintainer", "path"=>"a-public-maintainer", "fullPath"=>"root-group/a-public-maintainer"}, {"id"=>"gid://gitlab/Group/2635", "name"=>"b private maintainer", "path"=>"b-private-maintainer", "fullPath"=>"root-group/b-private-maintainer"}]6437 when searching for a full path (including parent)6438 is expected to match [{"id"=>"gid://gitlab/Group/2635", "name"=>"b private maintainer", "path"=>"b-private-maintainer", "fullPath"=>"root-group/b-private-maintainer"}]6439sentry errors requests6440 getting a detailed sentry error6441 returns a successful response6442 when data is loading via reactive cache6443 is expected to return an empty error6444 when reactive cache returns data6445 is expected to return the frequency correctly6446 behaves like setting sentry error data6447 sets the sentry error data correctly6448 when user does not have permission6449 is expected to return an empty error6450 when sentry api returns an error6451 is expected to handle the error and return nil6452 getting an errors list6453 behaves like a working graphql query6454 returns a successful response6455 when data is loading via reactive cache6456 is expected to return nil6457 when reactive cache returns data6458 is expected to return an array of data6459 sets the pagination correctly6460 is expected to return the frequency correctly6461 behaves like setting sentry error data6462 sets the sentry error data correctly6463 when sentry api itself errors out6464 is expected to handle the error and return nil6465 getting a stack trace6466 behaves like a working graphql query6467 returns a successful response6468 when data is loading via reactive cache6469 is expected to return an empty error6470 when reactive cache returns data6471 behaves like setting stack trace error6472 sets the stack trace data correctly6473 sets the stack trace entry data correctly6474 when user does not have permission6475 is expected to return an empty error6476 when sentry api returns an error6477 is expected to handle the error and return nil6478Projects::GoogleCloud::ConfigurationController6479 when accessed by unauthorized members6480 returns not found on GET request6481 when accessed by authorized members6482 returns successful6483 but gitlab instance is not configured for google oauth26484 returns forbidden6485 but feature flag is disabled6486 returns not found6487 but google oauth2 token is not valid6488 does not return revoke oauth url6489API::Appearance Appearance6490 GET /application/appearance6491 behaves like GET request permissions for admin mode6492 behaves like when admin6493 behaves like makes request6494 returns6495 behaves like makes request6496 returns6497 behaves like when user6498 returns6499 behaves like makes request6500 returns6501 as an admin user6502 returns appearance6503 PUT /application/appearance6504 behaves like PUT request permissions for admin mode6505 behaves like when admin6506 behaves like makes request6507 returns6508 behaves like makes request6509 returns6510 behaves like when user6511 returns6512 behaves like makes request6513 returns6514 as an admin user6515 instance basics6516 allows updating the settings6517 system header and footer6518 allows updating the settings6519 fails on invalid color values6520 with message_font_color6521 with message_background_color6522 instance logos6523 allows updating the image files6524 fails on invalid color images6525 with string instead of file6526 with .svg file instead of .png6527Subscriptions::Notes::Created6528 # order random6529 when user is unauthorized6530 does not receive any data6531 when resource events are triggering note subscription6532 when user is unauthorized6533 does not receive discussion data6534 when user is authorized6535 receives created synthetic note as a discussion6536 when several label events are created6537 receives created synthetic note as a discussion6538 when user is authorized6539 receives created note6540 when a new note is created as a reply6541 receives created note6542 when note is confidential6543 and user has permission to read confidential notes6544 receives created note6545 and replying6546 receives created note6547 and user does not have permission to read confidential notes6548 does not receive note data6549Query.project.pipelineSchedules6550 # order random6551 avoids N+1 queries6552 permissions6553 does not return the edit_path for a pipeline schedule for a user that does not have permissions6554 computed graphql fields6555 returns calculated fields for a pipeline schedule6556 returns the edit_path for a pipeline schedule6557 behaves like a working graphql query6558 returns a successful response6559 variables6560 returns all variables6561 is N+1 safe on the variables level6562 is N+1 safe on the schedules level6563Query.project(fullPath).pipelines.job(id)6564 scalar fields6565 retrieves scalar fields6566 when fetching by name6567 retrieves scalar fields6568 .detailedStatus6569 retrieves detailed status6570 .stage6571 returns appropriate data6572Users::TermsController6573 GET #index6574 when a user is signed in6575 redirects when no terms exist6576 when terms exist6577 shows terms when they exist6578 shows a message when the user already accepted the terms6579 when a user is not signed in6580 when terms exist6581 returns success response6582 when no terms exist6583 redirects6584 POST #accept6585 when a user is signed in6586 saves that the user accepted the terms6587 redirects to a path when specified6588 redirects to the referer when no redirect specified6589 redirecting to another domain6590 is prevented when passing a redirect param6591 is prevented when redirecting to the referer6592 when a user is not signed in6593 redirects to login page6594 POST #decline6595 when a user is signed in6596 stores that the user declined the terms6597 signs out the user6598 when a user is not signed in6599 redirects to login page6600Projects::MattermostsController6601 GET #new6602 accepts the request6603 POST #create6604 no request can be made to mattermost6605 shows the error6606 the request is succesull6607 redirects to the new page6608Query.synthetic_note(noteable_id, sha)6609 # order random6610 when the user does not have access to read the note6611 returns nil6612 when the user has access to read the note6613 returns synthetic note6614 and notes widget is not available6615 returns nil6616group data transfers6617 # order random6618 when user has enough permissions6619 when data_transfer_monitoring_mock_data is NOT enabled6620 returns real results6621 behaves like a working graphql query6622 returns a successful response6623 when data_transfer_monitoring_mock_data is enabled6624 returns mock results6625 behaves like a working graphql query6626 returns a successful response6627 with authorized user but without enough permissions6628 returns empty results6629 behaves like a working graphql query6630 returns a successful response6631 with anonymous access6632 returns no data6633 behaves like a working graphql query6634 returns a successful response6635API::ImportBitbucketServer6636 POST /import/bitbucket_server6637 with no optional parameters6638 rejects requests when Bitbucket Server Importer is disabled6639 returns 201 response when the project is imported successfully6640 with a new project name6641 returns 201 response when the project is imported successfully with a new project name6642 with an invalid URL6643 returns 400 response due to a blocked URL6644 with a new namespace6645 returns 201 response when the project is imported successfully to a new namespace6646 with a private inaccessible namespace6647 returns 401 response when user can not create projects in the chosen namespace6648 with an inaccessible bitbucket server instance6649 raises a connection error6650Projects::GrafanaApiController6651 GET #proxy6652 with a successful result6653 returns a grafana datasource response6654 when the request is still unavailable6655 returns 204 no content6656 when an error has occurred6657 with an error accessing grafana6658 behaves like error response6659 returns service_unavailable6660 with a processing error6661 behaves like error response6662 returns bad_request6663 as guest6664 behaves like not accessible6665 returns 404 Not found6666 as anonymous6667 behaves like not accessible6668 returns 404 Not found6669 on a private project6670 as anonymous6671 behaves like login required6672 redirects to login page6673 as guest6674 behaves like accessible6675 returns non erroneous response6676 GET #metrics_dashboard6677 when the result is still processing6678 returns 204 no content6679 when the result was successful6680 returns the dashboard response6681 when an error has occurred6682 with an error accessing grafana6683 behaves like error response6684 returns service_unavailable6685 with a processing error6686 behaves like error response6687 returns bad_request6688Sessions6689 authentication6690 logout does not require a csrf token6691 about_gitlab_active_user6692 when user signs in6693 sets marketing cookie6694 when user uses remember_me6695 sets marketing cookie6696 when user signs out6697 deletes marketing cookie6698 when user is not using GitLab SaaS6699 does not set marketing cookie6700PipelineScheduleUpdate6701 # order random6702 when unauthorized6703 returns an error6704 when authorized6705 when success6706 is expected to eq "AAA123"6707 when failure6708 when params are invalid6709 is expected to contain exactly "Cron is invalid syntax", "Cron timezone is invalid syntax", "Ref can't be blank", and "Description can't be blank"6710 when params have duplicate variables6711 returns error6712Profiles::EmailsController6713 #create6714 sends an email confirmation6715 when email address is invalid6716 does not send an email confirmation6717 behaves like respects the rate limit6718 after the rate limit is exceeded6719 does not send any email6720 displays an alert6721 #resend_confirmation_instructions6722 resends an email confirmation6723 email does not exist6724 does not send an email confirmation6725 behaves like respects the rate limit6726 after the rate limit is exceeded6727 does not send any email6728 displays an alert6729JiraConnect::BranchesController6730 #new6731 when logged in6732 assigns the suggested branch name6733 ignores missing summary6734 does not set a branch name if key is not passed6735 when not logged in6736 redirects to the login page6737Groups::Settings::RepositoryController6738 POST create_deploy_token6739 a good request6740 creates the deploy token6741 a bad request6742 does not create the deploy token6743 an invalid request6744 raises a validation error6745Query.project(fullPath).ciConfigVariables(ref)6746 # order random6747 when the user is not authorized6748 returns nothing6749 when the user has the correct permissions6750 when the cache is not empty6751 returns the CI variables for the config6752 when the cache is empty6753 returns nothing6754view user notifications6755 GET /-/profile/notifications6756 does not have an N+1 due to an additional groups (with no parent group)6757Projects::HookLogsController6758 # order random6759 behaves like WebHooks::HookLogActions6760 GET #show6761 renders a 200 if the hook exists6762 renders a 404 if the hook does not exist6763 POST #retry6764 executes the hook and redirects to the service form6765 renders a 404 if the hook does not exist6766Query.project(fullPath).pipelines.jobs.manualVariables6767 returns the manual variables for actionable jobs6768 does not fetch job variables for jobs that are not actionable6769 does not fetch job variables for bridges6770KasCookie6771 # order random6772 #set_kas_cookie6773 when user is signed out6774 is expected to be blank6775 when user is signed in6776 sets the KAS cookie6777 when feature flag is disabled6778 is expected to be blank6779 #content_security_policy6780 when feature flag is disabled6781 does not add KAS url to connect-src directives6782 when feature flag is enabled6783 when KAS is on same domain as rails6784 does not add KAS url to CSP connect-src directive6785 when KAS is on subdomain6786 adds KAS url to CSP connect-src directive6787 when KAS tunnel url is configured without trailing slash6788 adds KAS url to CSP connect-src directive with trailing slash6789query Jira service6790 behaves like unauthorized users cannot read services6791 when anonymous user6792 is expected to equal nil6793 when user developer6794 is expected to equal nil6795 when user can access project services6796 retuns list of jira imports6797 behaves like a working graphql query6798 returns a successful response6799Creating a new HTTP Integration6800 behaves like creating a new HTTP integration6801 creates a new integration6802 without required argument project_path6803 behaves like an invalid argument to the mutation6804 behaves like a mutation that returns top-level errors6805 is expected to contain exactly (include "invalid value for projectPath")6806 without required argument active6807 behaves like an invalid argument to the mutation6808 behaves like a mutation that returns top-level errors6809 is expected to contain exactly (include "invalid value for active")6810 without required argument name6811 behaves like an invalid argument to the mutation6812 behaves like a mutation that returns top-level errors6813 is expected to contain exactly (include "invalid value for name")6814Oauth::TokensController6815 POST /oauth/token6816 behaves like cross-origin POST request6817 allows cross-origin requests6818 OPTIONS /oauth/token6819 behaves like CORS preflight OPTIONS request6820 returns 2006821 allows cross-origin requests6822 POST /oauth/revoke6823 returns 2006824 behaves like cross-origin POST request6825 allows cross-origin requests6826 OPTIONS /oauth/revoke6827 behaves like CORS preflight OPTIONS request6828 returns 2006829 allows cross-origin requests6830updating designs6831 # order random6832 updates design6833 when update fails6834 returns an error6835 when the user is not allowed to update designs6836 returns an error6837Updating an existing release asset link6838 updates and existing release asset link and returns the updated link6839AcmeChallengesController6840 #show6841 with right domain and token6842 renders acme challenge file content6843 when domain is invalid6844 renders not found6845 when token is invalid6846 renders not found6847Link alerts to an incident6848 # order random6849 when the user is allowed to update the incident6850 links alerts to the incident6851 when the user is not allowed to update the incident6852 returns an error6853getting Alert Management Alert Assignees6854 with self-managed prometheus payload6855 includes the correct metrics dashboard url6856 with gitlab-managed prometheus payload6857 includes the correct metrics dashboard url6858Admin::VersionCheckController6859 GET #version_check6860 when VersionCheck.response is nil6861 returns nil6862 sets no-cache headers6863 when VersionCheck.response is valid6864 returns the valid data6865 sets proper cache headers6866API::Users6867 PUT /user/preferences/6868 with correct attributes and a logged in user6869 returns a success status and the value has been changed6870 missing a preference6871 returns a bad request status6872 without a logged in user6873 returns an unauthorized status6874 with an unsupported preference6875 returns a bad parameter6876 with an unsupported value6877 returns a bad parameter6878 with an update service failure6879 returns a bad request6880Emails::Groups6881 #group_was_exported_email6882 sends success email6883 #group_was_not_exported_email6884 sends failure email6885Admin::UsersController6886 # order random6887 PUT #block6888 when request format is :json6889 when user was blocked6890 returns 200 and json data with notice6891 when user was not blocked6892 returns 200 and json data with error6893SpammableActions::CaptchaCheck::JsonFormatActionsSupport6894 #with_captcha_check_json_format6895 when spammable.render_recaptcha? is true6896 renders json containing spam_action_response_fields6897 when spammable.render_recaptcha? is false6898 yields to block6899API::APIGuard::AdminModeMiddleware6900 is loaded6901 when there is an exception in the api call6902 resets admin mode6903JiraConnect::OauthCallbacksController6904 GET /-/jira_connect/oauth_callbacks6905 when logged in6906 renders a page prompting the user to close the window6907Knapsack report was generated. Preview:6908{6909 "spec/requests/api/projects_spec.rb": 319.1267392939999,6910 "spec/requests/api/discussions_spec.rb": 206.4753299920003,6911 "spec/requests/api/debian_project_packages_spec.rb": 67.41642821999994,6912 "spec/controllers/projects/notes_controller_spec.rb": 122.48326698300025,6913 "spec/requests/api/ci/triggers_spec.rb": 98.1431270790008,6914 "spec/controllers/admin/clusters_controller_spec.rb": 68.71683855400079,6915 "spec/controllers/projects/jobs_controller_spec.rb": 57.92239978799989,6916 "spec/requests/api/project_container_repositories_spec.rb": 43.7992888230001,6917 "spec/controllers/projects/compare_controller_spec.rb": 42.24747657500029,6918 "spec/controllers/projects/commits_controller_spec.rb": 39.23191107999992,6919 "spec/requests/api/graphql/ci/runner_spec.rb": 34.34868220399949,6920 "spec/commands/metrics_server/metrics_server_spec.rb": 29.477749788000438,6921 "spec/requests/api/pages/public_access_spec.rb": 28.15255590600009,6922 "spec/controllers/import/github_controller_spec.rb": 18.332959942999878,6923 "spec/requests/api/graphql/mutations/container_expiration_policy/update_spec.rb": 15.225879220000024,6924 "spec/controllers/groups/dependency_proxy_for_containers_controller_spec.rb": 14.773603038000147,6925 "spec/controllers/projects/artifacts_controller_spec.rb": 13.947163862999332,6926 "spec/controllers/projects/web_ide_terminals_controller_spec.rb": 16.298998965000465,6927 "spec/controllers/projects/settings/integrations_controller_spec.rb": 13.677330002000417,6928 "spec/requests/api/graphql/project/alert_management/alerts_spec.rb": 14.464959643999464,6929 "spec/controllers/import/gitlab_controller_spec.rb": 14.256320855999547,6930 "spec/requests/api/graphql/boards/board_list_issues_query_spec.rb": 16.576292897000712,6931 "spec/requests/projects/tags_controller_spec.rb": 8.542483426000217,6932 "spec/requests/ide_controller_spec.rb": 10.298116631000084,6933 "spec/controllers/projects/design_management/designs/raw_images_controller_spec.rb": 10.059770746999675,6934 "spec/requests/api/graphql/packages/nuget_spec.rb": 11.85454007699991,6935 "spec/controllers/projects/settings/repository_controller_spec.rb": 9.563669191999907,6936 "spec/controllers/projects/registry/repositories_controller_spec.rb": 6.53066958799991,6937 "spec/controllers/projects/hooks_controller_spec.rb": 7.783146380000289,6938 "spec/requests/api/broadcast_messages_spec.rb": 5.7619741730004534,6939 "spec/requests/api/resource_state_events_spec.rb": 6.211228416000267,6940 "spec/requests/api/graphql/mutations/merge_requests/set_labels_spec.rb": 8.188230777999706,6941 "spec/requests/api/graphql/group/dependency_proxy_group_setting_spec.rb": 6.714485329999661,6942 "spec/controllers/projects/runners_controller_spec.rb": 6.220547904999876,6943 "spec/controllers/import/bitbucket_server_controller_spec.rb": 4.351893484999891,6944 "spec/requests/api/graphql/mutations/metrics/dashboard/annotations/create_spec.rb": 5.117489780000142,6945 "spec/requests/api/admin/plan_limits_spec.rb": 2.6515007110001534,6946 "spec/requests/api/graphql/current_user/groups_query_spec.rb": 3.3470565170000555,6947 "spec/requests/api/graphql/project/error_tracking/sentry_errors_request_spec.rb": 5.2841360749998785,6948 "spec/requests/projects/google_cloud/configuration_controller_spec.rb": 3.9357451380001294,6949 "spec/requests/api/appearance_spec.rb": 2.533849323999675,6950 "spec/requests/api/graphql/subscriptions/notes/created_spec.rb": 5.274052494999523,6951 "spec/requests/api/graphql/ci/pipeline_schedules_spec.rb": 4.640111486000023,6952 "spec/requests/api/graphql/ci/job_spec.rb": 4.5798511339999095,6953 "spec/controllers/users/terms_controller_spec.rb": 2.9957969919996685,6954 "spec/controllers/projects/mattermosts_controller_spec.rb": 2.629760914000144,6955 "spec/requests/api/graphql/notes/synthetic_note_resolver_spec.rb": 2.904225444000076,6956 "spec/requests/api/graphql/group/data_transfer_spec.rb": 3.299235297999985,6957 "spec/requests/api/import_bitbucket_server_spec.rb": 4.134197328000482,6958 "spec/controllers/projects/grafana_api_controller_spec.rb": 2.3705565809996187,6959 "spec/requests/sessions_spec.rb": 2.0545270860002347,6960 "spec/requests/api/graphql/mutations/ci/pipeline_schedule_update_spec.rb": 2.3303200569998808,6961 "spec/controllers/profiles/emails_controller_spec.rb": 1.3317429389999234,6962 "spec/controllers/jira_connect/branches_controller_spec.rb": 0.6803907530002107,6963 "spec/controllers/groups/settings/repository_controller_spec.rb": 1.6142634589996305,6964 "spec/requests/api/graphql/ci/config_variables_spec.rb": 1.7358007720004025,6965 "spec/requests/profiles/notifications_controller_spec.rb": 2.4596173879999697,6966 "spec/requests/projects/hook_logs_controller_spec.rb": 2.336811815999681,6967 "spec/requests/api/graphql/ci/manual_variables_spec.rb": 2.029843728999367,6968 "spec/controllers/concerns/kas_cookie_spec.rb": 2.2056118549999155,6969 "spec/requests/api/graphql/project/base_service_spec.rb": 1.8779827910002496,6970 "spec/requests/api/graphql/mutations/alert_management/http_integration/create_spec.rb": 1.7342812319993754,6971 "spec/requests/oauth/tokens_controller_spec.rb": 0.9107774789999894,6972 "spec/requests/api/graphql/mutations/design_management/update_spec.rb": 1.7509262300000046,6973 "spec/requests/api/graphql/mutations/release_asset_links/update_spec.rb": 1.628081277000092,6974 "spec/controllers/acme_challenges_controller_spec.rb": 1.3836253119998219,6975 "spec/requests/api/graphql/mutations/issues/link_alerts_spec.rb": 1.4417822329996852,6976 "spec/requests/api/graphql/project/alert_management/alert/metrics_dashboard_url_spec.rb": 1.5060947749998377,6977 "spec/requests/admin/version_check_controller_spec.rb": 1.3240145409999968,6978 "spec/requests/api/users_preferences_spec.rb": 0.9894083189992671,6979 "spec/mailers/emails/groups_spec.rb": 1.2058415969995622,6980 "spec/requests/admin/users_controller_spec.rb": 2.055591295999875,6981 "spec/controllers/concerns/spammable_actions/captcha_check/json_format_actions_support_spec.rb": 0.7630141800000274,6982 "spec/requests/api/api_guard/admin_mode_middleware_spec.rb": 0.7066649289999987,6983 "spec/requests/jira_connect/oauth_callbacks_controller_spec.rb": 0.57424425800036266984}6985Knapsack global time execution for tests: 24m 51s6986Pending: (Failures listed here are expected and do not affect your suite's status)6987 1) Projects::DesignManagement::Designs::RawImagesController GET #show behaves like a controller that can serve LFS files when lfs is not enabled delivers ASCII file6988 # Calling spec asked to skip testing LFS disabled scenario6989 # ./spec/support/shared_examples/controllers/repository_lfs_file_load_shared_examples.rb:1526990Finished in 24 minutes 56 seconds (files took 47.43 seconds to load)69912513 examples, 0 failures, 1 pending6992Randomized with seed 652716993[TEST PROF INFO] Time spent in factories: 11:36.536 (46.38% of total time)6994RSpec exited with 0.6995No examples to retry, congrats!6997Not uploading cache ruby-gems-debian-bullseye-ruby-3.0-16 due to policy6999Uploading artifacts...7000coverage/: found 5 matching artifact files and directories 7001WARNING: crystalball/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 7002deprecations/: found 4 matching artifact files and directories 7003knapsack/: found 3 matching artifact files and directories 7004query_recorder/: found 2 matching artifact files and directories 7005rspec/: found 8 matching artifact files and directories 7006WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory (/builds/gitlab-org/gitlab) 7007log/*.log: found 17 matching artifact files and directories 7008WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/4139146407/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com7009WARNING: Retrying... context=artifacts-uploader error=request redirected7010Uploading artifacts as "archive" to coordinator... 201 Created id=4139146407 responseStatus=201 Created token=64_sfoiR7011Uploading artifacts...7012rspec/junit_rspec.xml: found 1 matching artifact files and directories 7013WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/4139146407/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com7014WARNING: Retrying... context=artifacts-uploader error=request redirected7015Uploading artifacts as "junit" to coordinator... 201 Created id=4139146407 responseStatus=201 Created token=64_sfoiR7017Job succeeded