Skip to content
Snippets Groups Projects
Commit 49c8bf4e authored by Tomasz Maczukin's avatar Tomasz Maczukin
Browse files

Add create feature to triggers API

parent f0060743
No related branches found
No related tags found
1 merge request!2286Add triggers API
Pipeline #
Loading
@@ -62,6 +62,22 @@ module API
Loading
@@ -62,6 +62,22 @@ module API
present triggers, with: Entities::Trigger present triggers, with: Entities::Trigger
end end
   
# Create trigger
#
# Parameters:
# id (required) - The ID of a project
# Example Request:
# POST /projects/:id/triggers
post ':id/triggers' do
authenticate!
authorize_admin_project
trigger = user_project.triggers.new
trigger.save
present trigger, with: Entities::Trigger
end
# Delete trigger # Delete trigger
# #
# Parameters: # Parameters:
Loading
Loading
Loading
@@ -115,6 +115,35 @@ describe API::API do
Loading
@@ -115,6 +115,35 @@ describe API::API do
end end
end end
   
describe 'POST /projects/:id/triggets' do
context 'authenticated user with valid permissions' do
it 'should create trigger' do
expect do
post api("/projects/#{project.id}/triggers", user)
end.to change{project.triggers.count}.by(1)
expect(response.status).to eq(201)
expect(json_response).to be_a(Hash)
end
end
context 'authenticated user with invalid permissions' do
it 'should not create trigger' do
post api("/projects/#{project.id}/triggers", user2)
expect(response.status).to eq(403)
end
end
context 'unauthentikated user' do
it 'should not create trigger' do
post api("/projects/#{project.id}/triggers")
expect(response.status).to eq(401)
end
end
end
describe 'DELETE /projects/:id/triggets/:trigger_id' do describe 'DELETE /projects/:id/triggets/:trigger_id' do
context 'authenticated user with valid permissions' do context 'authenticated user with valid permissions' do
it 'should delete trigger' do it 'should delete trigger' do
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment