Modify ApiHelpers
spec to adhere to the Four-Phase test style.
- Use whitespace to separate the setup, expectation and teardown phases.
This commit is contained in:
parent
dc95bcbb16
commit
fc7a5a3806
1 changed files with 12 additions and 0 deletions
|
@ -97,20 +97,26 @@ describe API::Helpers, api: true do
|
||||||
it "returns nil for an invalid token" do
|
it "returns nil for an invalid token" do
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = 'invalid token'
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = 'invalid token'
|
||||||
allow_any_instance_of(self.class).to receive(:doorkeeper_guard){ false }
|
allow_any_instance_of(self.class).to receive(:doorkeeper_guard){ false }
|
||||||
|
|
||||||
expect(current_user).to be_nil
|
expect(current_user).to be_nil
|
||||||
end
|
end
|
||||||
|
|
||||||
it "returns nil for a user without access" do
|
it "returns nil for a user without access" do
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = user.private_token
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = user.private_token
|
||||||
allow_any_instance_of(Gitlab::UserAccess).to receive(:allowed?).and_return(false)
|
allow_any_instance_of(Gitlab::UserAccess).to receive(:allowed?).and_return(false)
|
||||||
|
|
||||||
expect(current_user).to be_nil
|
expect(current_user).to be_nil
|
||||||
end
|
end
|
||||||
|
|
||||||
it "leaves user as is when sudo not specified" do
|
it "leaves user as is when sudo not specified" do
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = user.private_token
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = user.private_token
|
||||||
|
|
||||||
expect(current_user).to eq(user)
|
expect(current_user).to eq(user)
|
||||||
|
|
||||||
clear_env
|
clear_env
|
||||||
|
|
||||||
params[API::APIGuard::PRIVATE_TOKEN_PARAM] = user.private_token
|
params[API::APIGuard::PRIVATE_TOKEN_PARAM] = user.private_token
|
||||||
|
|
||||||
expect(current_user).to eq(user)
|
expect(current_user).to eq(user)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -124,12 +130,14 @@ describe API::Helpers, api: true do
|
||||||
|
|
||||||
it "returns nil for an invalid token" do
|
it "returns nil for an invalid token" do
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = 'invalid token'
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = 'invalid token'
|
||||||
|
|
||||||
expect(current_user).to be_nil
|
expect(current_user).to be_nil
|
||||||
end
|
end
|
||||||
|
|
||||||
it "returns nil for a user without access" do
|
it "returns nil for a user without access" do
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
||||||
allow_any_instance_of(Gitlab::UserAccess).to receive(:allowed?).and_return(false)
|
allow_any_instance_of(Gitlab::UserAccess).to receive(:allowed?).and_return(false)
|
||||||
|
|
||||||
expect(current_user).to be_nil
|
expect(current_user).to be_nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -137,6 +145,7 @@ describe API::Helpers, api: true do
|
||||||
personal_access_token = create(:personal_access_token, user: user, scopes: ['read_user'])
|
personal_access_token = create(:personal_access_token, user: user, scopes: ['read_user'])
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
||||||
allow_access_with_scope('write_user')
|
allow_access_with_scope('write_user')
|
||||||
|
|
||||||
expect(current_user).to be_nil
|
expect(current_user).to be_nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -145,18 +154,21 @@ describe API::Helpers, api: true do
|
||||||
expect(current_user).to eq(user)
|
expect(current_user).to eq(user)
|
||||||
clear_env
|
clear_env
|
||||||
params[API::APIGuard::PRIVATE_TOKEN_PARAM] = personal_access_token.token
|
params[API::APIGuard::PRIVATE_TOKEN_PARAM] = personal_access_token.token
|
||||||
|
|
||||||
expect(current_user).to eq(user)
|
expect(current_user).to eq(user)
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'does not allow revoked tokens' do
|
it 'does not allow revoked tokens' do
|
||||||
personal_access_token.revoke!
|
personal_access_token.revoke!
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
||||||
|
|
||||||
expect(current_user).to be_nil
|
expect(current_user).to be_nil
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'does not allow expired tokens' do
|
it 'does not allow expired tokens' do
|
||||||
personal_access_token.update_attributes!(expires_at: 1.day.ago)
|
personal_access_token.update_attributes!(expires_at: 1.day.ago)
|
||||||
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
env[API::APIGuard::PRIVATE_TOKEN_HEADER] = personal_access_token.token
|
||||||
|
|
||||||
expect(current_user).to be_nil
|
expect(current_user).to be_nil
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue