summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomasz Maczukin <tomasz@maczukin.pl>2016-01-13 12:16:27 +0100
committerTomasz Maczukin <tomasz@maczukin.pl>2016-01-13 12:20:59 +0100
commitd44653da1f74c2c15fe7ec3f8aa9b16563ffebd6 (patch)
tree21c24d4e528adf4ff9e9526f85418ea5800b0138
parente0ec69d919cb44194e76034f2324ec0d4f5f1df6 (diff)
downloadgitlab-ce-d44653da1f74c2c15fe7ec3f8aa9b16563ffebd6.tar.gz
Add some fixes after review
-rw-r--r--app/models/ci/trigger.rb4
-rw-r--r--lib/api/entities.rb8
-rw-r--r--lib/api/triggers.rb11
-rw-r--r--spec/requests/api/triggers_spec.rb12
4 files changed, 16 insertions, 19 deletions
diff --git a/app/models/ci/trigger.rb b/app/models/ci/trigger.rb
index 23516709a41..3328459c4c5 100644
--- a/app/models/ci/trigger.rb
+++ b/app/models/ci/trigger.rb
@@ -32,6 +32,10 @@ module Ci
trigger_requests.last
end
+ def last_used
+ last_trigger_request.try(:created_at)
+ end
+
def short_token
token[0...10]
end
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index 37c483b45ec..1108277aabf 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -367,13 +367,7 @@ module API
end
class Trigger < Grape::Entity
- expose :token, :created_at, :updated_at, :deleted_at
- expose :last_used do |repo_obj, _options|
- if repo_obj.respond_to?(:last_trigger_request)
- request = repo_obj.last_trigger_request
- request.created_at if request
- end
- end
+ expose :token, :created_at, :updated_at, :deleted_at, :last_used
end
end
end
diff --git a/lib/api/triggers.rb b/lib/api/triggers.rb
index 25bb8aef20b..5e4964f446c 100644
--- a/lib/api/triggers.rb
+++ b/lib/api/triggers.rb
@@ -73,10 +73,10 @@ module API
authenticate!
authorize_admin_project
- triggers = user_project.triggers.where(token: params[:token])
- return not_found!('Trigger') if triggers.empty?
+ trigger = user_project.triggers.find_by(token: params[:token].to_s)
+ return not_found!('Trigger') unless trigger
- present triggers.first, with: Entities::Trigger
+ present trigger, with: Entities::Trigger
end
# Create trigger
@@ -89,8 +89,7 @@ module API
authenticate!
authorize_admin_project
- trigger = user_project.triggers.new
- trigger.save
+ trigger = user_project.triggers.create
present trigger, with: Entities::Trigger
end
@@ -106,7 +105,7 @@ module API
authenticate!
authorize_admin_project
- trigger = user_project.triggers.where(token: params[:token]).first
+ trigger = user_project.triggers.find_by(token: params[:token].to_s)
return not_found!('Trigger') unless trigger
trigger.destroy
diff --git a/spec/requests/api/triggers_spec.rb b/spec/requests/api/triggers_spec.rb
index e8d89426ec0..2a86b60bc4d 100644
--- a/spec/requests/api/triggers_spec.rb
+++ b/spec/requests/api/triggers_spec.rb
@@ -105,7 +105,7 @@ describe API::API do
end
end
- context 'unauthentikated user' do
+ context 'unauthenticated user' do
it 'should not return triggers list' do
get api("/projects/#{project.id}/triggers")
@@ -123,7 +123,7 @@ describe API::API do
expect(json_response).to be_a(Hash)
end
- it 'should responde with 404 Not Found if requesting non-existing trigger' do
+ it 'should respond with 404 Not Found if requesting non-existing trigger' do
get api("/projects/#{project.id}/triggers/abcdef012345", user)
expect(response.status).to eq(404)
@@ -138,7 +138,7 @@ describe API::API do
end
end
- context 'unauthentikated user' do
+ context 'unauthenticated user' do
it 'should not return triggers list' do
get api("/projects/#{project.id}/triggers/#{trigger.token}")
@@ -167,7 +167,7 @@ describe API::API do
end
end
- context 'unauthentikated user' do
+ context 'unauthenticated user' do
it 'should not create trigger' do
post api("/projects/#{project.id}/triggers")
@@ -185,7 +185,7 @@ describe API::API do
expect(response.status).to eq(200)
end
- it 'should responde with 404 Not Found if requesting non-existing trigger' do
+ it 'should respond with 404 Not Found if requesting non-existing trigger' do
delete api("/projects/#{project.id}/triggers/abcdef012345", user)
expect(response.status).to eq(404)
@@ -200,7 +200,7 @@ describe API::API do
end
end
- context 'unauthentikated user' do
+ context 'unauthenticated user' do
it 'should not delete trigger' do
delete api("/projects/#{project.id}/triggers/#{trigger.token}")