Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-05-17 19:05:49 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-05-17 19:05:49 +0300
commit43a25d93ebdabea52f99b05e15b06250cd8f07d7 (patch)
treedceebdc68925362117480a5d672bcff122fb625b /spec/requests/api/deploy_tokens_spec.rb
parent20c84b99005abd1c82101dfeff264ac50d2df211 (diff)
Add latest changes from gitlab-org/gitlab@16-0-stable-eev16.0.0-rc42
Diffstat (limited to 'spec/requests/api/deploy_tokens_spec.rb')
-rw-r--r--spec/requests/api/deploy_tokens_spec.rb45
1 files changed, 28 insertions, 17 deletions
diff --git a/spec/requests/api/deploy_tokens_spec.rb b/spec/requests/api/deploy_tokens_spec.rb
index 4efe49e843f..c0e36bf03bf 100644
--- a/spec/requests/api/deploy_tokens_spec.rb
+++ b/spec/requests/api/deploy_tokens_spec.rb
@@ -2,7 +2,7 @@
require 'spec_helper'
-RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
+RSpec.describe API::DeployTokens, :aggregate_failures, feature_category: :continuous_delivery do
let_it_be(:user) { create(:user) }
let_it_be(:creator) { create(:user) }
let_it_be(:project) { create(:project, creator_id: creator.id) }
@@ -17,26 +17,25 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
describe 'GET /deploy_tokens' do
subject do
- get api('/deploy_tokens', user)
+ get api('/deploy_tokens', user, admin_mode: admin_mode)
response
end
- context 'when unauthenticated' do
- let(:user) { nil }
+ let_it_be(:admin_mode) { false }
- it { is_expected.to have_gitlab_http_status(:unauthorized) }
+ it_behaves_like 'GET request permissions for admin mode' do
+ let(:path) { '/deploy_tokens' }
end
- context 'when authenticated as non-admin user' do
- let(:user) { creator }
+ context 'when unauthenticated' do
+ let(:user) { nil }
- it { is_expected.to have_gitlab_http_status(:forbidden) }
+ it { is_expected.to have_gitlab_http_status(:unauthorized) }
end
context 'when authenticated as admin' do
let(:user) { create(:admin) }
-
- it { is_expected.to have_gitlab_http_status(:ok) }
+ let_it_be(:admin_mode) { true }
it 'returns all deploy tokens' do
subject
@@ -57,7 +56,7 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
context 'and active=true' do
it 'only returns active deploy tokens' do
- get api('/deploy_tokens?active=true', user)
+ get api('/deploy_tokens?active=true', user, admin_mode: true)
token_ids = json_response.map { |token| token['id'] }
expect(response).to have_gitlab_http_status(:ok)
@@ -73,8 +72,10 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
end
describe 'GET /projects/:id/deploy_tokens' do
+ let(:path) { "/projects/#{project.id}/deploy_tokens" }
+
subject do
- get api("/projects/#{project.id}/deploy_tokens", user)
+ get api(path, user)
response
end
@@ -134,8 +135,10 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
end
describe 'GET /projects/:id/deploy_tokens/:token_id' do
+ let(:path) { "/projects/#{project.id}/deploy_tokens/#{deploy_token.id}" }
+
subject do
- get api("/projects/#{project.id}/deploy_tokens/#{deploy_token.id}", user)
+ get api(path, user)
response
end
@@ -183,8 +186,10 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
end
describe 'GET /groups/:id/deploy_tokens' do
+ let(:path) { "/groups/#{group.id}/deploy_tokens" }
+
subject do
- get api("/groups/#{group.id}/deploy_tokens", user)
+ get api(path, user)
response
end
@@ -241,8 +246,10 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
end
describe 'GET /groups/:id/deploy_tokens/:token_id' do
+ let(:path) { "/groups/#{group.id}/deploy_tokens/#{group_deploy_token.id}" }
+
subject do
- get api("/groups/#{group.id}/deploy_tokens/#{group_deploy_token.id}", user)
+ get api(path, user)
response
end
@@ -290,8 +297,10 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
end
describe 'DELETE /projects/:id/deploy_tokens/:token_id' do
+ let(:path) { "/projects/#{project.id}/deploy_tokens/#{deploy_token.id}" }
+
subject do
- delete api("/projects/#{project.id}/deploy_tokens/#{deploy_token.id}", user)
+ delete api(path, user)
response
end
@@ -455,8 +464,10 @@ RSpec.describe API::DeployTokens, feature_category: :continuous_delivery do
end
describe 'DELETE /groups/:id/deploy_tokens/:token_id' do
+ let(:path) { "/groups/#{group.id}/deploy_tokens/#{group_deploy_token.id}" }
+
subject do
- delete api("/groups/#{group.id}/deploy_tokens/#{group_deploy_token.id}", user)
+ delete api(path, user)
response
end