Commit 2833c8bd6de28472bf1b4ea9ce434780e638b323

Authored by Caio Salgado + Alessandro Palmeira
Committed by Paulo Meireles
1 parent 23b96c3d

[Mezuro] Added new test to module_result_test.rb

plugins/mezuro/lib/kalibro/module_result.rb
@@ -4,6 +4,7 @@ class Kalibro::ModuleResult < Kalibro::Model @@ -4,6 +4,7 @@ class Kalibro::ModuleResult < Kalibro::Model
4 4
5 def self.find_by_project_name_and_module_name_and_date(project_name, module_name, date) 5 def self.find_by_project_name_and_module_name_and_date(project_name, module_name, date)
6 response = request( 6 response = request(
  7 + 'ModuleResult',
7 :get_module_result, 8 :get_module_result,
8 { 9 {
9 :project_name => project_name, 10 :project_name => project_name,
@@ -13,8 +14,9 @@ class Kalibro::ModuleResult < Kalibro::Model @@ -13,8 +14,9 @@ class Kalibro::ModuleResult < Kalibro::Model
13 new response 14 new response
14 end 15 end
15 16
16 - def self.all_module_results(project_name, module_name) 17 + def self.all_by_project_name_and_module_name(project_name, module_name)
17 response = request( 18 response = request(
  19 + 'ModuleResult',
18 :get_result_history, 20 :get_result_history,
19 { 21 {
20 :project_name => project_name, 22 :project_name => project_name,
@@ -48,22 +50,11 @@ class Kalibro::ModuleResult < Kalibro::Model @@ -48,22 +50,11 @@ class Kalibro::ModuleResult < Kalibro::Model
48 array = value.kind_of?(Array) ? value : [value] 50 array = value.kind_of?(Array) ? value : [value]
49 array.each.collect { |element| to_entity(element) } 51 array.each.collect { |element| to_entity(element) }
50 end 52 end
51 - 53 +
52 def self.to_entity(value) 54 def self.to_entity(value)
53 value.kind_of?(Hash) ? new(value) : value 55 value.kind_of?(Hash) ? new(value) : value
54 end 56 end
55 -  
56 - def self.client  
57 - endpoint = 'ModuleResult'  
58 - service_address = YAML.load_file("#{RAILS_ROOT}/plugins/mezuro/service.yaml")  
59 - Savon::Client.new("#{service_address}#{endpoint}Endpoint/?wsdl")  
60 - end  
61 -  
62 - def self.request(action, request_body = nil)  
63 - response = client.request(:kalibro, action) { soap.body = request_body }  
64 - response.to_hash["#{action}_response".to_sym]  
65 - end  
66 - 57 +
67 def self.date_with_milliseconds(date) 58 def self.date_with_milliseconds(date)
68 milliseconds = "." + (date.sec_fraction * 60 * 60 * 24 * 1000).to_s 59 milliseconds = "." + (date.sec_fraction * 60 * 60 * 24 * 1000).to_s
69 date.to_s[0..18] + milliseconds + date.to_s[19..-1] 60 date.to_s[0..18] + milliseconds + date.to_s[19..-1]
plugins/mezuro/test/unit/kalibro/module_result_test.rb
@@ -9,7 +9,7 @@ class ModuleResultTest < ActiveSupport::TestCase @@ -9,7 +9,7 @@ class ModuleResultTest < ActiveSupport::TestCase
9 @module_result = ModuleResultFixtures.module_result 9 @module_result = ModuleResultFixtures.module_result
10 end 10 end
11 should 'create module result' do 11 should 'create module result' do
12 - assert_equal @module_result.date, Kalibro::ModuleResult.new(@hash).date 12 + assert_equal @module_result.date.to_s , Kalibro::ModuleResult.new(@hash).date.to_s
13 end 13 end
14 14
15 should 'convert module result to hash' do 15 should 'convert module result to hash' do
@@ -21,8 +21,17 @@ class ModuleResultTest < ActiveSupport::TestCase @@ -21,8 +21,17 @@ class ModuleResultTest < ActiveSupport::TestCase
21 date = DateTime.parse(date_string) 21 date = DateTime.parse(date_string)
22 request_body = {:project_name => 'Qt-Calculator', :module_name => 'main', :date => date_string} 22 request_body = {:project_name => 'Qt-Calculator', :module_name => 'main', :date => date_string}
23 response = {:module_result => @hash} 23 response = {:module_result => @hash}
24 - Kalibro::ModuleResult.expects(:request).with(:get_module_result, request_body).returns(response)  
25 - assert_equal @module_result, Kalibro::ModuleResult.find_module_result('Qt-Calculator', 'main', date) 24 + Kalibro::ModuleResult.expects(:request).with('ModuleResult',:get_module_result, request_body).returns(response)
  25 + assert_equal @module_result.grade, Kalibro::ModuleResult.find_by_project_name_and_module_name_and_date('Qt-Calculator', 'main', date).grade
  26 + end
  27 +
  28 + should 'find all module results' do
  29 + request_body = {:project_name => 'Qt-Calculator', :module_name => 'main'}
  30 + response = {:module_result => @hash}
  31 + Kalibro::ModuleResult.expects(:request).with('ModuleResult',:get_result_history, request_body).returns(response)
  32 + response_array = Kalibro::ModuleResult.all_by_project_name_and_module_name('Qt-Calculator', 'main')
  33 + assert_equal [@module_result].class, response_array.class
  34 + assert_equal @module_result.grade, response_array[0].grade
26 end 35 end
27 36
28 end 37 end