class TestrailHelper::Client

Public Class Methods

new(params = {}) click to toggle source
# File lib/testrail_helper.rb, line 10
def initialize(params = {})
  @client = TestRail::APIClient.new(params[:url])
  @client.user = params[:username]
  @client.password = params[:password]
  @client
end

Public Instance Methods

add_plan_entry(plan_id, params={}) click to toggle source
# File lib/testrail_helper.rb, line 155
def add_plan_entry(plan_id, params={})
  uri = "add_plan_entry/#{plan_id}"
  @client.send_post(uri, params)
end
create_test_plan(project_id, params={}) click to toggle source
# File lib/testrail_helper.rb, line 150
def create_test_plan(project_id, params={})
  uri = "add_plan/#{project_id}"
  @client.send_post(uri, params)
end
filter_by_fields_and(list, params={}) click to toggle source
# File lib/testrail_helper.rb, line 46
def filter_by_fields_and(list, params={})
  @master_list = list
  @temp_list = []
  h = params.map
  h.each do |par|
    puts par
    @master_list.each do |x|
      puts x
      if x.fetch(par[0].to_s) == par[1]
        @temp_list << x
      end
    end
    @master_list = @temp_list
    @temp_list = []
  end
  @master_list
end
filter_by_fields_or(list, params={}) click to toggle source
# File lib/testrail_helper.rb, line 64
def filter_by_fields_or(list, params={})
  @temp_list = list
  h = params.map
  h.each do |par|
    puts par
    @master_list.each do |x|
      puts x
      if x.fetch(par[0].to_s) == par[1]
        @temp_list << x
      end
    end
  end
  @master_list = @temp_list.uniq
  @master_list
end
get_all_active_users() click to toggle source
# File lib/testrail_helper.rb, line 94
def get_all_active_users
  puts "getting all active_users"
  uri = "get_users"
  users = @client.send_get(uri)
  active_users = []
  users.each do |x|
    active_users << x if x.fetch('is_active') == true
  end
  active_users
end
get_all_test_cases_in_section(params={}) click to toggle source
# File lib/testrail_helper.rb, line 17
def get_all_test_cases_in_section(params={})
  uri = "get_cases/#{params[:section_id]}&suite_id=#{params[:suite_id]}"
  uri = uri + "&priority_id=#{params[:priority]}" if params[:priority]
  @client.send_get(uri)
end
get_all_users() click to toggle source
# File lib/testrail_helper.rb, line 88
def get_all_users
  puts "getting all users"
  uri = "get_users"
  @client.send_get(uri)
end
get_plan(plan_id) click to toggle source
# File lib/testrail_helper.rb, line 41
def get_plan(plan_id)
  uri = "get_plan/#{plan_id}"
  @client.send_get(uri)
end
get_results_for_run(run_id) click to toggle source
# File lib/testrail_helper.rb, line 140
def get_results_for_run(run_id)
  uri = "get_results_for_run/#{run_id}"
  @client.send_get(uri)
end
get_run_info(run_id) click to toggle source
# File lib/testrail_helper.rb, line 31
def get_run_info(run_id)
  uri = "get_run/#{run_id}"
  @client.send_get(uri)
end
get_sections(project_id, suite_id) click to toggle source
# File lib/testrail_helper.rb, line 145
def get_sections(project_id, suite_id)
  uri = "get_sections/#{project_id}&suite_id=#{suite_id}"
  @client.send_get(uri)
end
get_test_cases(params={}) click to toggle source
# File lib/testrail_helper.rb, line 23
def get_test_cases(params={})
  uri = "get_cases/#{params[:project_id]}&suite_id=#{params[:project_id]}"
  uri = uri + "&suite_id=#{params[:suite_id]}" if params[:suite_id]
  uri = uri + "&section_id=#{params[:section_id]}" if params[:section_id]
  uri = uri + "&priority_id=#{params[:priority_id]}" if params[:priority_id]
  @client.send_get(uri)
end
get_test_plan(plan_id) click to toggle source
# File lib/testrail_helper.rb, line 129
def get_test_plan(plan_id)
  uri = "get_plan/#{plan_id}"
  @client.send_get(uri)
end
get_test_run(run_id) click to toggle source
# File lib/testrail_helper.rb, line 135
def get_test_run(run_id)
  uri = "get_run/#{run_id}"
  @client.send_get(uri)
end
get_tests(run_id) click to toggle source
# File lib/testrail_helper.rb, line 36
def get_tests(run_id)
  uri = "get_tests/#{run_id}"
  @client.send_get(uri)
end
get_title(case_id) click to toggle source
# File lib/testrail_helper.rb, line 117
def get_title(case_id)
  puts "getting title"
  uri = "get_case/#{case_id}"
  @client.send_get(uri)
end
get_user(user_id) click to toggle source
# File lib/testrail_helper.rb, line 105
def get_user(user_id)
  puts "getting title"
  uri = "get_user/#{user_id}"
  @client.send_get(uri)
end
get_user_by_email(email) click to toggle source
# File lib/testrail_helper.rb, line 111
def get_user_by_email(email)
  puts "getting title"
  uri = "get_user_by_email&email=#{email}"
  @client.send_get(uri)
end
update_test_case(case_id, params={}) click to toggle source
# File lib/testrail_helper.rb, line 80
def update_test_case(case_id, params={})
  puts "updating"
  params.merge({title:get_title(case_id)})
  puts params
  uri = "update_case/#{case_id}"
  puts @client.send_post(uri, params)
end
write_to_file(list, filename) click to toggle source
# File lib/testrail_helper.rb, line 123
def write_to_file(list, filename)
  File.open(filename, "w+") do |f|
    list.each { |element| f.puts(element) }
  end
end