class Assembla::Client::Spaces::SpaceTools::MergeRequests

Constants

VALID_PARAMS_NAMES
VALID_REQUEST_PARAM_VALUES

Public Instance Methods

comments(*args) { |el| ... } click to toggle source

@example api.spaces.space_tools.space_tools.merge_requests.comments ‘project1’, ‘git’, 7

# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 90
def comments(*args)
  arguments(args, required: [:space, :space_tool, :id])
  response = get_request api_uri(arguments, :comments), arguments.params
  return response unless block_given?
  response.each { |el| yield el }
end
create(*args) click to toggle source

@example api.spaces.space_tools.merge_requests.create ‘project1’, ‘git’,

merge_request: { title: 'Mobile App V2' }
# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 25
def create(*args)
  arguments(args, required: [:space, :space_tool]) do
    permit VALID_PARAMS_NAMES, recursive: true
    assert_required %w[ title source_symbol target_symbol ]
    assert_values VALID_REQUEST_PARAM_VALUES
  end

  post_request api_uri(arguments), arguments.params
end
edit(*args) click to toggle source

@example api.spaces.space_tools.merge_requests.edit ‘project1’, ‘git’, 7,

merge_request: { description: 'in-production #tickets' }
# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 45
def edit(*args)
  arguments(args, required: [:space, :space_tool, :id]) do
    permit VALID_PARAMS_NAMES , recursive: true
    assert_values VALID_REQUEST_PARAM_VALUES
  end

  put_request api_uri(arguments), arguments.params
end
get(*args) click to toggle source

@example api.spaces.space_tools.merge_requests.get ‘project1’, ‘git’, 7

# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 37
def get(*args)
  arguments(args, required: [:space, :space_tool, :id])
  get_request api_uri(arguments), arguments.params
end
ignore(*args) click to toggle source

Ignore merge request by ID @example api.spaces.space_tools.merge_requests.ignore ‘project1’, ‘git’, 7

# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 57
def ignore(*args)
  arguments(args, required: [:space, :space_tool, :id])
  put_request api_uri(arguments, :ignore), arguments.params
end
list(*args) { |el| ... } click to toggle source

@example api.spaces.space_tools.space_tools.merge_requests.list ‘project1’, ‘git’

# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 72
def list(*args)
  arguments(args, required: [:space, :space_tool])
  response = get_request api_uri(arguments), arguments.params
  return response unless block_given?
  response.each { |el| yield el }
end
merge(*args) click to toggle source

Merge MR by ID @example api.spaces.space_tools.merge_requests.merge ‘project1’, ‘git’, 7

# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 65
def merge(*args)
  arguments(args, required: [:space, :space_tool, :id])
  put_request api_uri(arguments, :merge_and_close), arguments.params
end
tickets(*args) { |el| ... } click to toggle source

@example api.spaces.space_tools.space_tools.merge_requests.tickets ‘project1’, ‘git’, 7

# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 81
def tickets(*args)
  arguments(args, required: [:space, :space_tool, :id])
  response = get_request api_uri(arguments, :tickets), arguments.params
  return response unless block_given?
  response.each { |el| yield el }
end

Private Instance Methods

api_uri(arguments, method = nil) click to toggle source
# File lib/assembla_api/client/spaces/space_tools/merge_requests.rb, line 98
def api_uri(arguments, method = nil)
  uri = "/spaces/#{arguments.space}/space_tools/#{arguments.space_tool}/merge_requests"
  uri += "/" + arguments['id'].to_s if arguments['id']
  uri += "/" + method.to_s if method
  uri
end