class Magnesium::TestLink
Public Class Methods
find_build(prefix)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 163 def self.find_build(prefix) begin @testplan_id = self.find_testplan(prefix) result = self.query("select id from builds where testplan_id in (#{@testplan_id})") result.each do |row| row.map{|k,v| return v if k == "id"} end #rescue #Show.error #ensure end end
find_execution_type()
click to toggle source
# File lib/magnesium/support/testlink.rb, line 216 def self.find_execution_type() #1:manul, 2:auto return 2 end
find_max_id(table)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 200 def self.find_max_id(table) begin result = self.query("select max(id) from #{table}") result.each do |row| row.map {|k,v| return v} end #rescue #Show.error #ensure end end
find_max_step_number(id)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 113 def self.find_max_step_number(id) begin result = self.query("select max(step_number) from tcsteps where id in (select id from nodes_hierarchy where parent_id = #{id} and node_type_id =9)") return result #rescue #Show.error end end
find_path(prefix,caseno)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 53 def self.find_path(prefix,caseno) begin @tc_id = self.find_tcase(prefix,caseno) puts @tc_id result = self.query("select file_path from attachments where fk_id = #{@tc_id}") result.each do |row| row.map {|k,v| return v} end #rescue #Show.error #puts 'findpath' #ensure end end
find_platform_id()
click to toggle source
# File lib/magnesium/support/testlink.rb, line 212 def self.find_platform_id() return 0 end
find_root(id)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 68 def self.find_root(id) begin result = self.query("select parent_id,id from nodes_hierarchy where id = #{id}") result.each do |row| row.map do |k,v| @parent_id = v if k == "parent_id" @id =v if k == "id" end end unless @parent_id.nil? self.find_root(@parent_id) else return @id end #rescue #Show.error #ensure end end
find_step_action(id)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 102 def self.find_step_action(id) begin result = self.query("select actions from tcsteps where id in (select id from nodes_hierarchy where parent_id = #{id} and node_type_id = 9) order by step_number") #puts result return result #rescue #Show.error #ensure end end
find_step_result(id)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 122 def self.find_step_result(id) begin self.find_max_step_number(id).each do |row| row.map do |k,v| result = self.query("select expected_results from tcsteps where id in (select id from nodes_hierarchy where parent_id = #{id} and node_type_id = 9) and step_number = #{v}") #puts result return result #puts v end end #rescue #Show.error #ensure end end
find_tcase(prefix,caseno)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 31 def self.find_tcase(prefix,caseno) begin result = self.query("select id from testprojects where prefix = '#{prefix}'") result.each do |row| row.map {|k,v| @tp_id = v if k == "id"} end #puts @tp_id result = self.query("select tcase_id from tcases_active where tc_external_id = #{caseno}") result.each do |row| row.map do |k,v| @tc_id = v if self.find_root(v)==@tp_id end end return @tc_id #rescue #Show.error #ensure end end
find_tcversion_id(caseno)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 176 def self.find_tcversion_id(caseno) begin result = self.query("select id from tcversions where tc_external_id = #{caseno}") result.each do |row| row.map {|k,v| return v if k == "id"} end #rescue #Show.error #ensure end end
find_tcversion_number(caseno)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 188 def self.find_tcversion_number(caseno) begin result = self.query("select version from tcversions where tc_external_id = #{caseno}") result.each do |row| row.map {|k,v| return v if k == "version"} end #rescue #Show.error #ensure end end
find_tester(login)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 151 def self.find_tester(login) begin result = self.query("select id from users where login = '#{login}'") result.each do |row| row.map {|k,v| return v if k == "id"} end #rescue #Show.error #ensure end end
find_testplan(prefix)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 139 def self.find_testplan(prefix) begin result = self.query("select id from testplans where testproject_id in (select id from testprojects where prefix = '#{prefix}')") result.each do |row| row.map {|k,v| return v if k == "id"} end #rescue #Show.error #ensure end end
find_version(id)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 89 def self.find_version(id) begin result = self.query("select id from nodes_hierarchy where parent_id = #{id} and node_type_id = 4") result.each do |row| row.map {|k,v| return v if k == "id"} end #rescue #Show.error #ensure end end
query(sql)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 7 def self.query(sql)#connection #begin @client = Mysql2::Client.new(:host=>Config.config["testlink"]["host"], :username=>Config.config["testlink"]["db_account"], :password=>Config.config["testlink"]["db_pwd"], :database=>Config.config["testlink"]["database"]) #return client #rescue # error # puts 'connect' #ensure #end #end #def self.query(sql) #begin #client = connection result = @client.query(sql) return result #rescue # error #ensure #client.close #if ok #end end
set_result(prefix,caseno,login,status,notes)
click to toggle source
# File lib/magnesium/support/testlink.rb, line 221 def self.set_result(prefix,caseno,login,status,notes) begin @id = self.find_max_id("executions").to_i+1 @build_id = self.find_build(prefix) @tester_id = self.find_tester(login) @testplan_id = self.find_testplan(prefix) @tcversion_id = self.find_tcversion_id(caseno) @tcversion_number = self.find_tcversion_number(caseno) @platform_id = self.find_platform_id @execution_type = self.find_execution_type execute = self.query("insert into executions values(#{@id},#{@build_id},#{@tester_id},now(),'#{status}',#{@testplan_id},#{@tcversion_id},#{@tcversion_number},#{@platform_id},#{@execution_type},'#{notes}')") #rescue #Show.error #ensure end end