class Casica::Client
Public Class Methods
new(token:)
click to toggle source
# File lib/casica/client.rb, line 3 def initialize(token:) @token = token end
Public Instance Methods
create_story(project_id:, attributes: {})
click to toggle source
# File lib/casica/client.rb, line 19 def create_story(project_id:, attributes: {}) api(:post, "/projects/#{project_id}/stories", story: attributes) end
create_task(project_id:, story_serial_num:, attributes: {})
click to toggle source
# File lib/casica/client.rb, line 35 def create_task(project_id:, story_serial_num:, attributes: {}) api(:post, "/projects/#{project_id}/stories/#{story_serial_num}/tasks", task: attributes) end
destroy_story(project_id:, story_serial_num:)
click to toggle source
# File lib/casica/client.rb, line 27 def destroy_story(project_id:, story_serial_num:) api(:delete, "/projects/#{project_id}/stories/#{story_serial_num}") end
destroy_task(project_id:, story_serial_num:, task_serial_num:)
click to toggle source
# File lib/casica/client.rb, line 43 def destroy_task(project_id:, story_serial_num:, task_serial_num:) api(:delete, "/projects/#{project_id}/stories/#{story_serial_num}/tasks/#{task_serial_num}") end
projects()
click to toggle source
# File lib/casica/client.rb, line 7 def projects api(:get, '/projects') end
stories(project_id:)
click to toggle source
# File lib/casica/client.rb, line 11 def stories(project_id:) api(:get, "/projects/#{project_id}/stories") end
tasks(project_id:, story_serial_num:)
click to toggle source
# File lib/casica/client.rb, line 15 def tasks(project_id:, story_serial_num:) api(:get, "/projects/#{project_id}/stories/#{story_serial_num}/tasks") end
update_story(project_id:, story_serial_num:, attributes: {})
click to toggle source
# File lib/casica/client.rb, line 23 def update_story(project_id:, story_serial_num:, attributes: {}) api(:patch, "/projects/#{project_id}/stories/#{story_serial_num}", story: attributes) end
update_story_status(project_id:, from_status:, to_status:)
click to toggle source
# File lib/casica/client.rb, line 31 def update_story_status(project_id:, from_status:, to_status:) api(:patch, "/projects/#{project_id}/stories/statuses", status: { from_status: from_status, to_status: to_status }) end
update_task(project_id:, story_serial_num:, task_serial_num:, attributes: {})
click to toggle source
# File lib/casica/client.rb, line 39 def update_task(project_id:, story_serial_num:, task_serial_num:, attributes: {}) api(:patch, "/projects/#{project_id}/stories/#{story_serial_num}/tasks/#{task_serial_num}", task: attributes) end
update_task_status(project_id:, from_status:, to_status:)
click to toggle source
# File lib/casica/client.rb, line 47 def update_task_status(project_id:, from_status:, to_status:) api(:patch, "/projects/#{project_id}/tasks/statuses", status: { from_status: from_status, to_status: to_status }) end
Private Instance Methods
api(method, path, args = nil)
click to toggle source
# File lib/casica/client.rb, line 53 def api(method, path, args = nil) Casica::Response.new(request.send(:request, method, path, args)).response end
request()
click to toggle source
# File lib/casica/client.rb, line 57 def request @request ||= Casica::Request.new(token: @token) end