Class: Magnesium::TestLink
- Inherits:
-
Object
- Object
- Magnesium::TestLink
- Defined in:
- lib/magnesium/support/testlink.rb
Class Method Summary collapse
- .find_build(prefix) ⇒ Object
- .find_execution_type ⇒ Object
- .find_max_id(table) ⇒ Object
- .find_max_step_number(id) ⇒ Object
- .find_path(prefix, caseno) ⇒ Object
- .find_platform_id ⇒ Object
- .find_root(id) ⇒ Object
- .find_step_action(id) ⇒ Object
- .find_step_result(id) ⇒ Object
- .find_tcase(prefix, caseno) ⇒ Object
- .find_tcversion_id(caseno) ⇒ Object
- .find_tcversion_number(caseno) ⇒ Object
- .find_tester(login) ⇒ Object
- .find_testplan(prefix) ⇒ Object
- .find_version(id) ⇒ Object
-
.query(sql) ⇒ Object
connection.
- .set_result(prefix, caseno, login, status, notes) ⇒ Object
Class Method Details
.find_build(prefix) ⇒ Object
163 164 165 166 167 168 169 170 171 172 173 174 |
# 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 ⇒ Object
216 217 218 219 |
# File 'lib/magnesium/support/testlink.rb', line 216 def self.find_execution_type() #1:manul, 2:auto return 2 end |
.find_max_id(table) ⇒ Object
200 201 202 203 204 205 206 207 208 209 210 |
# 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) ⇒ Object
113 114 115 116 117 118 119 120 |
# 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) ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# 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 ⇒ Object
212 213 214 |
# File 'lib/magnesium/support/testlink.rb', line 212 def self.find_platform_id() return 0 end |
.find_root(id) ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# 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) ⇒ Object
102 103 104 105 106 107 108 109 110 111 |
# 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) ⇒ Object
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# 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) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# 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) ⇒ Object
176 177 178 179 180 181 182 183 184 185 186 |
# 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) ⇒ Object
188 189 190 191 192 193 194 195 196 197 198 |
# 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) ⇒ Object
151 152 153 154 155 156 157 158 159 160 161 |
# 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) ⇒ Object
139 140 141 142 143 144 145 146 147 148 149 |
# 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) ⇒ Object
89 90 91 92 93 94 95 96 97 98 99 |
# 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) ⇒ Object
connection
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# 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) ⇒ Object
221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 |
# 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 |