Commit 0d44cd8b217da7ba0f7720b2e0607839e2cc6090
Committed by
Paulo Meireles
1 parent
140932c0
Exists in
staging
and in
42 other branches
[Mezuro] fixed fixtures and moved files
Showing
15 changed files
with
207 additions
and
340 deletions
Show diff stats
plugins/mezuro/lib/kalibro/client/project_result_client.rb
| ... | ... | @@ -1,46 +0,0 @@ |
| 1 | -class Kalibro::Client::ProjectResultClient | |
| 2 | - | |
| 3 | - # TODO test this | |
| 4 | - def self.last_result(project_name) | |
| 5 | - new.last_result(project_name) | |
| 6 | - end | |
| 7 | - | |
| 8 | - def initialize | |
| 9 | - @port = Kalibro::Client::Port.new('ProjectResult') | |
| 10 | - end | |
| 11 | - | |
| 12 | - def has_results_for(project_name) | |
| 13 | - @port.request(:has_results_for, {:project_name => project_name})[:has_results] | |
| 14 | - end | |
| 15 | - | |
| 16 | - def has_results_before(project_name, date) | |
| 17 | - @port.request(:has_results_before, {:project_name => project_name, :date => date})[:has_results] | |
| 18 | - end | |
| 19 | - | |
| 20 | - def has_results_after(project_name, date) | |
| 21 | - @port.request(:has_results_after, {:project_name => project_name, :date => date})[:has_results] | |
| 22 | - end | |
| 23 | - | |
| 24 | - def first_result(project_name) | |
| 25 | - hash = @port.request(:get_first_result_of, {:project_name => project_name})[:project_result] | |
| 26 | - Kalibro::Entities::ProjectResult.from_hash(hash) | |
| 27 | - end | |
| 28 | - | |
| 29 | - def last_result(project_name) | |
| 30 | - hash = @port.request(:get_last_result_of, {:project_name => project_name})[:project_result] | |
| 31 | - Kalibro::Entities::ProjectResult.from_hash(hash) | |
| 32 | - end | |
| 33 | - | |
| 34 | - def first_result_after(project_name, date) | |
| 35 | - request_body = {:project_name => project_name, :date => date} | |
| 36 | - hash = @port.request(:get_first_result_after, request_body)[:project_result] | |
| 37 | - Kalibro::Entities::ProjectResult.from_hash(hash) | |
| 38 | - end | |
| 39 | - | |
| 40 | - def last_result_before(project_name, date) | |
| 41 | - request_body = {:project_name => project_name, :date => date} | |
| 42 | - hash = @port.request(:get_last_result_before, request_body)[:project_result] | |
| 43 | - Kalibro::Entities::ProjectResult.from_hash(hash) | |
| 44 | - end | |
| 45 | - | |
| 46 | -end | |
| 47 | 0 | \ No newline at end of file |
plugins/mezuro/lib/kalibro/entities/module_node.rb
| ... | ... | @@ -1,21 +0,0 @@ |
| 1 | -class Kalibro::Entities::ModuleNode < Kalibro::Entities::Entity | |
| 2 | - | |
| 3 | - attr_accessor :module, :child | |
| 4 | - | |
| 5 | - def module=(value) | |
| 6 | - @module = to_entity(value, Kalibro::Entities::Module) | |
| 7 | - end | |
| 8 | - | |
| 9 | - def child=(value) | |
| 10 | - @child = to_entity_array(value, Kalibro::Entities::ModuleNode) | |
| 11 | - end | |
| 12 | - | |
| 13 | - def children | |
| 14 | - @child | |
| 15 | - end | |
| 16 | - | |
| 17 | - def children=(children) | |
| 18 | - @child = children | |
| 19 | - end | |
| 20 | - | |
| 21 | -end |
plugins/mezuro/lib/kalibro/entities/project_result.rb
| ... | ... | @@ -1,76 +0,0 @@ |
| 1 | -class Kalibro::Entities::ProjectResult < Kalibro::Entities::Entity | |
| 2 | - | |
| 3 | - attr_accessor :project, :date, :load_time, :analysis_time, :source_tree, :collect_time | |
| 4 | - | |
| 5 | - def project=(value) | |
| 6 | - @project = to_entity(value, Kalibro::Entities::Project) | |
| 7 | - end | |
| 8 | - | |
| 9 | - def date=(value) | |
| 10 | - @date = value | |
| 11 | - @date = DateTime.parse(value) if value.is_a?(String) | |
| 12 | - end | |
| 13 | - | |
| 14 | - def load_time=(value) | |
| 15 | - @load_time = value.to_i | |
| 16 | - end | |
| 17 | - | |
| 18 | - def collect_time=(value) | |
| 19 | - @collect_time = value.to_i | |
| 20 | - end | |
| 21 | - | |
| 22 | - def analysis_time=(value) | |
| 23 | - @analysis_time = value.to_i | |
| 24 | - end | |
| 25 | - | |
| 26 | - def source_tree=(value) | |
| 27 | - @source_tree = to_entity(value, Kalibro::Entities::ModuleNode) | |
| 28 | - end | |
| 29 | - | |
| 30 | - def formatted_load_time | |
| 31 | - format_milliseconds(@load_time) | |
| 32 | - end | |
| 33 | - | |
| 34 | - def formatted_analysis_time | |
| 35 | - format_milliseconds(@analysis_time) | |
| 36 | - end | |
| 37 | - | |
| 38 | - def format_milliseconds(value) | |
| 39 | - seconds = value.to_i/1000 | |
| 40 | - hours = seconds/3600 | |
| 41 | - seconds -= hours * 3600 | |
| 42 | - minutes = seconds/60 | |
| 43 | - seconds -= minutes * 60 | |
| 44 | - "#{format(hours)}:#{format(minutes)}:#{format(seconds)}" | |
| 45 | - end | |
| 46 | - | |
| 47 | - def format(amount) | |
| 48 | - ('%2d' % amount).sub(/\s/, '0') | |
| 49 | - end | |
| 50 | - | |
| 51 | - def node_of(module_name) | |
| 52 | - if module_name.nil? or module_name == project.name | |
| 53 | - node = source_tree | |
| 54 | - else | |
| 55 | - node = get_node(module_name) | |
| 56 | - end | |
| 57 | - end | |
| 58 | - | |
| 59 | - def get_node(module_name) | |
| 60 | - path = Kalibro::Entities::Module.parent_names(module_name) | |
| 61 | - parent = @source_tree | |
| 62 | - path.each do |node_name| | |
| 63 | - parent = get_leaf_from(parent, node_name) | |
| 64 | - end | |
| 65 | - return parent | |
| 66 | - end | |
| 67 | - | |
| 68 | - private | |
| 69 | - def get_leaf_from(node, module_name) | |
| 70 | - node.children.each do |child_node| | |
| 71 | - return child_node if child_node.module.name == module_name | |
| 72 | - end | |
| 73 | - nil | |
| 74 | - end | |
| 75 | - | |
| 76 | -end |
plugins/mezuro/lib/kalibro/model.rb
| ... | ... | @@ -64,5 +64,10 @@ class Kalibro::Model |
| 64 | 64 | def self.is_valid?(field) |
| 65 | 65 | field.to_s[0] != '@' and field != :attributes! and (field.to_s =~ /xsi/).nil? |
| 66 | 66 | end |
| 67 | + | |
| 68 | + def self.date_with_milliseconds(date) | |
| 69 | + milliseconds = "." + (date.sec_fraction * 60 * 60 * 24 * 1000).to_s | |
| 70 | + date.to_s[0..18] + milliseconds + date.to_s[19..-1] | |
| 71 | + end | |
| 67 | 72 | |
| 68 | 73 | end | ... | ... |
| ... | ... | @@ -0,0 +1,21 @@ |
| 1 | +class Kalibro::ModuleNode < Kalibro::Model | |
| 2 | + | |
| 3 | + attr_accessor :module, :child | |
| 4 | + | |
| 5 | + def module=(value) | |
| 6 | + @module = Kalibro::Module.to_object value | |
| 7 | + end | |
| 8 | + | |
| 9 | + def child=(value) | |
| 10 | + @child = Kalibro::ModuleNode.to_objects_array value | |
| 11 | + end | |
| 12 | + | |
| 13 | + def children | |
| 14 | + @child | |
| 15 | + end | |
| 16 | + | |
| 17 | + def children=(children) | |
| 18 | + @child = children | |
| 19 | + end | |
| 20 | + | |
| 21 | +end | ... | ... |
plugins/mezuro/lib/kalibro/module_result.rb
| ... | ... | @@ -61,11 +61,4 @@ class Kalibro::ModuleResult < Kalibro::Model |
| 61 | 61 | @compound_metric_with_error = compound_metrics_with_error |
| 62 | 62 | end |
| 63 | 63 | |
| 64 | - private | |
| 65 | - | |
| 66 | - def self.date_with_milliseconds(date) | |
| 67 | - milliseconds = "." + (date.sec_fraction * 60 * 60 * 24 * 1000).to_s | |
| 68 | - date.to_s[0..18] + milliseconds + date.to_s[19..-1] | |
| 69 | - end | |
| 70 | - | |
| 71 | 64 | end | ... | ... |
plugins/mezuro/lib/kalibro/project_result.rb
| ... | ... | @@ -3,35 +3,35 @@ class Kalibro::ProjectResult < Kalibro::Model |
| 3 | 3 | attr_accessor :project, :date, :load_time, :analysis_time, :source_tree, :collect_time |
| 4 | 4 | |
| 5 | 5 | def self.last_result(project_name) |
| 6 | - last_result = request(:get_last_result_of, {:project_name => project_name})[:project_result] | |
| 6 | + last_result = request('ProjectResult', :get_last_result_of, {:project_name => project_name})[:project_result] | |
| 7 | 7 | new last_result |
| 8 | 8 | end |
| 9 | 9 | |
| 10 | 10 | def self.first_result(project_name) |
| 11 | - first_result = request(:get_first_result_of, {:project_name => project_name})[:project_result] | |
| 11 | + first_result = request('ProjectResult',:get_first_result_of, {:project_name => project_name})[:project_result] | |
| 12 | 12 | new first_result |
| 13 | 13 | end |
| 14 | 14 | |
| 15 | 15 | def self.first_result_after(project_name, date) |
| 16 | - first_result_after = request(:get_first_result_after, {:project_name => project_name, :date => date})[:project_result] | |
| 16 | + first_result_after = request('ProjectResult',:get_first_result_after, {:project_name => project_name, :date => date})[:project_result] | |
| 17 | 17 | new first_result_after |
| 18 | 18 | end |
| 19 | 19 | |
| 20 | 20 | def self.last_result_before(project_name, date) |
| 21 | - last_result_before = request(:get_last_result_before, {:project_name => project_name, :date => date})[:project_result] | |
| 21 | + last_result_before = request('ProjectResult',:get_last_result_before, {:project_name => project_name, :date => date})[:project_result] | |
| 22 | 22 | new last_result_before |
| 23 | 23 | end |
| 24 | 24 | |
| 25 | 25 | def self.has_results?(project_name) |
| 26 | - request(:has_results_for, {:project_name => project_name})[:has_results] | |
| 26 | + request('ProjectResult',:has_results_for, {:project_name => project_name})[:has_results] | |
| 27 | 27 | end |
| 28 | 28 | |
| 29 | 29 | def self.has_results_before?(project_name, date) |
| 30 | - request(:has_results_before, {:project_name => project_name, :date => date})[:has_results] | |
| 30 | + request('ProjectResult',:has_results_before, {:project_name => project_name, :date => date})[:has_results] | |
| 31 | 31 | end |
| 32 | 32 | |
| 33 | 33 | def self.has_results_after?(project_name, date) |
| 34 | - request(:has_results_after, {:project_name => project_name, :date => date})[:has_results] | |
| 34 | + request('ProjectResult',:has_results_after, {:project_name => project_name, :date => date})[:has_results] | |
| 35 | 35 | end |
| 36 | 36 | |
| 37 | 37 | def project=(value) |
| ... | ... | @@ -54,9 +54,8 @@ class Kalibro::ProjectResult < Kalibro::Model |
| 54 | 54 | @analysis_time = value.to_i |
| 55 | 55 | end |
| 56 | 56 | |
| 57 | - #FIXME mudar a atribuição depois que refatorarmos o module_result client | |
| 58 | 57 | def source_tree=(value) |
| 59 | - @source_tree = value.kind_of?(Hash) ? Kalibro::Entities::ModuleNode.from_hash(value) : value | |
| 58 | + @source_tree = value.kind_of?(Hash) ? Kalibro::ModuleNode.new(value) : value | |
| 60 | 59 | end |
| 61 | 60 | |
| 62 | 61 | def formatted_load_time |
| ... | ... | @@ -88,9 +87,8 @@ class Kalibro::ProjectResult < Kalibro::Model |
| 88 | 87 | end |
| 89 | 88 | end |
| 90 | 89 | |
| 91 | -#FIXME mudar a atribuição depois que refatorarmos o module_result client | |
| 92 | 90 | def get_node(module_name) |
| 93 | - path = Kalibro::Entities::Module.parent_names(module_name) | |
| 91 | + path = Kalibro::Module.parent_names(module_name) | |
| 94 | 92 | parent = @source_tree |
| 95 | 93 | path.each do |node_name| |
| 96 | 94 | parent = get_leaf_from(parent, node_name) |
| ... | ... | @@ -100,17 +98,6 @@ class Kalibro::ProjectResult < Kalibro::Model |
| 100 | 98 | |
| 101 | 99 | private |
| 102 | 100 | |
| 103 | - def self.project_result | |
| 104 | - endpoint = "ProjectResult" | |
| 105 | - service_address = YAML.load_file("#{RAILS_ROOT}/plugins/mezuro/service.yaml") | |
| 106 | - Savon::Client.new("#{service_address}#{endpoint}Endpoint/?wsdl") | |
| 107 | - end | |
| 108 | - | |
| 109 | - def self.request(action, request_body = nil) | |
| 110 | - response = project_result.request(:kalibro, action) { soap.body = request_body } | |
| 111 | - response.to_hash["#{action}_response".to_sym] | |
| 112 | - end | |
| 113 | - | |
| 114 | 101 | def get_leaf_from(node, module_name) |
| 115 | 102 | node.children.each do |child_node| |
| 116 | 103 | return child_node if child_node.module.name == module_name | ... | ... |
plugins/mezuro/test/fixtures/module_fixtures.rb
| 1 | 1 | class ModuleFixtures |
| 2 | 2 | |
| 3 | 3 | def self.module |
| 4 | - entity = Kalibro::Module.new module_hash | |
| 4 | + Kalibro::Module.new module_hash | |
| 5 | 5 | end |
| 6 | 6 | |
| 7 | 7 | def self.module_hash |
| 8 | - {:name => 'Qt-Calculator', :granularity => 'APPLICATION'} | |
| 8 | + { | |
| 9 | + :name => 'Qt-Calculator', | |
| 10 | + :granularity => 'APPLICATION' | |
| 11 | + } | |
| 9 | 12 | end |
| 10 | 13 | |
| 11 | 14 | end | ... | ... |
plugins/mezuro/test/fixtures/module_node_fixtures.rb
| 1 | +require File.dirname(__FILE__) + '/module_fixtures' | |
| 2 | + | |
| 1 | 3 | class ModuleNodeFixtures |
| 2 | 4 | |
| 3 | - def self.qt_calculator_tree | |
| 4 | - node = Kalibro::Entities::ModuleNode.new | |
| 5 | - node.module = ModuleFixtures.qt_calculator | |
| 6 | - org_node = new_node('org', 'PACKAGE') | |
| 7 | - org_node.children = [new_node('org.Window', 'CLASS')] | |
| 8 | - node.children = [org_node, new_node('Dialog', 'CLASS'), new_node('main', 'CLASS')] | |
| 9 | - node | |
| 5 | + def self.module_node | |
| 6 | + Kalibro::ModuleNode.new module_node_hash | |
| 10 | 7 | end |
| 11 | 8 | |
| 12 | - def self.qt_calculator_tree_hash | |
| 13 | - {:module => ModuleFixtures.qt_calculator_hash, | |
| 14 | - :child => [ | |
| 15 | - {:module => {:name => 'org', :granularity => 'PACKAGE'}, | |
| 16 | - :child => [{:module => {:name => 'org.Window', :granularity => 'CLASS'}}]}, | |
| 17 | - {:module => {:name => 'Dialog', :granularity => 'CLASS'}}, | |
| 18 | - {:module => {:name => 'main', :granularity => 'CLASS'}} | |
| 19 | - ] | |
| 9 | + def self.module_node_hash | |
| 10 | + { | |
| 11 | + :module => ModuleFixtures.module_hash,:attributes! => {:module => { | |
| 12 | + 'xmlns:xsi'=> 'http://www.w3.org/2001/XMLSchema-instance', | |
| 13 | + 'xsi:type' => 'kalibro:moduleXml' }}, | |
| 14 | + :child => [{ | |
| 15 | + :module => { | |
| 16 | + :name => 'org', | |
| 17 | + :granularity => 'PACKAGE' | |
| 18 | + },:attributes! => {:module => { | |
| 19 | + 'xmlns:xsi'=> 'http://www.w3.org/2001/XMLSchema-instance', | |
| 20 | + 'xsi:type' => 'kalibro:moduleXml' }}, | |
| 21 | + :child => [{ | |
| 22 | + :module => { | |
| 23 | + :name => 'org.Window', | |
| 24 | + :granularity => 'CLASS' | |
| 25 | + },:attributes! => {:module => { | |
| 26 | + 'xmlns:xsi'=> 'http://www.w3.org/2001/XMLSchema-instance', | |
| 27 | + 'xsi:type' => 'kalibro:moduleXml' }} | |
| 28 | + }] | |
| 29 | + },{ | |
| 30 | + :module => { | |
| 31 | + :name => 'Dialog', | |
| 32 | + :granularity => 'CLASS' | |
| 33 | + },:attributes! => {:module => { | |
| 34 | + 'xmlns:xsi'=> 'http://www.w3.org/2001/XMLSchema-instance', | |
| 35 | + 'xsi:type' => 'kalibro:moduleXml' }} | |
| 36 | + },{ | |
| 37 | + :module => { | |
| 38 | + :name => 'main', | |
| 39 | + :granularity => 'CLASS' | |
| 40 | + },:attributes! => {:module => { | |
| 41 | + 'xmlns:xsi'=> 'http://www.w3.org/2001/XMLSchema-instance', | |
| 42 | + 'xsi:type' => 'kalibro:moduleXml' }} | |
| 43 | + }] | |
| 20 | 44 | } |
| 21 | 45 | end |
| 22 | 46 | |
| 23 | - private | |
| 24 | - | |
| 25 | - def self.new_node(name, granularity) | |
| 26 | - the_module = Kalibro::Entities::Module.new | |
| 27 | - the_module.name = name | |
| 28 | - the_module.granularity = granularity | |
| 29 | - node = Kalibro::Entities::ModuleNode.new | |
| 30 | - node.module = the_module | |
| 31 | - node | |
| 32 | - end | |
| 33 | - | |
| 34 | 47 | end | ... | ... |
plugins/mezuro/test/fixtures/project_result_fixtures.rb
| ... | ... | @@ -4,21 +4,19 @@ require File.dirname(__FILE__) + '/module_result_fixtures' |
| 4 | 4 | |
| 5 | 5 | class ProjectResultFixtures |
| 6 | 6 | |
| 7 | - def self.qt_calculator | |
| 8 | - result = Kalibro::Entities::ProjectResult.new | |
| 9 | - result.project = ProjectFixtures.project | |
| 10 | - result.date = ModuleResultFixtures.create.date | |
| 11 | - result.load_time = 14878 | |
| 12 | - result.analysis_time = 1022 | |
| 13 | - result.source_tree = ModuleNodeFixtures.qt_calculator_tree | |
| 14 | - result.collect_time = 14878 | |
| 15 | - result | |
| 7 | + def self.project_result | |
| 8 | + Kalibro::ProjectResult.new project_result_hash | |
| 16 | 9 | end |
| 17 | 10 | |
| 18 | - def self.qt_calculator_hash | |
| 19 | - {:project => ProjectFixtures.project_hash, :date => ModuleResultFixtures.create_hash[:date], | |
| 20 | - :load_time => 14878, :analysis_time => 1022, :source_tree => ModuleNodeFixtures.qt_calculator_tree_hash, | |
| 21 | - :collect_time => 14878} | |
| 11 | + def self.project_result_hash | |
| 12 | + { | |
| 13 | + :project => ProjectFixtures.project_hash, | |
| 14 | + :date => ModuleResultFixtures.module_result_hash[:date], | |
| 15 | + :load_time => 14878, | |
| 16 | + :analysis_time => 1022, | |
| 17 | + :source_tree => ModuleNodeFixtures.module_node_hash, | |
| 18 | + :collect_time => 14878 | |
| 19 | + } | |
| 22 | 20 | end |
| 23 | 21 | |
| 24 | 22 | end | ... | ... |
plugins/mezuro/test/unit/kalibro/client/project_result_client_test.rb
| ... | ... | @@ -1,58 +0,0 @@ |
| 1 | -require "test_helper" | |
| 2 | - | |
| 3 | -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures" | |
| 4 | - | |
| 5 | -class ProjectResultClientTest < ActiveSupport::TestCase | |
| 6 | - | |
| 7 | - def setup | |
| 8 | - @port = mock | |
| 9 | - Kalibro::Client::Port.expects(:new).with('ProjectResult').returns(@port) | |
| 10 | - @client = Kalibro::Client::ProjectResultClient.new | |
| 11 | - | |
| 12 | - @result = ProjectResultFixtures.qt_calculator | |
| 13 | - @project_name = @result.project.name | |
| 14 | - @date = @result.date | |
| 15 | - @flag = DateTime.now.sec % 2 == 0 | |
| 16 | - | |
| 17 | - @request = {:project_name => @project_name} | |
| 18 | - @request_with_date = {:project_name => @project_name, :date => @date} | |
| 19 | - @flag_response = {:has_results => @flag} | |
| 20 | - @result_response = {:project_result => @result.to_hash} | |
| 21 | - end | |
| 22 | - | |
| 23 | - should 'retrieve if project has results' do | |
| 24 | - @port.expects(:request).with(:has_results_for, @request).returns(@flag_response) | |
| 25 | - assert_equal @flag, @client.has_results_for(@project_name) | |
| 26 | - end | |
| 27 | - | |
| 28 | - should 'retrieve if project has results before date' do | |
| 29 | - @port.expects(:request).with(:has_results_before, @request_with_date).returns(@flag_response) | |
| 30 | - assert_equal @flag, @client.has_results_before(@project_name, @date) | |
| 31 | - end | |
| 32 | - | |
| 33 | - should 'retrieve if project has results after date' do | |
| 34 | - @port.expects(:request).with(:has_results_after, @request_with_date).returns(@flag_response) | |
| 35 | - assert_equal @flag, @client.has_results_after(@project_name, @date) | |
| 36 | - end | |
| 37 | - | |
| 38 | - should 'get first result of project' do | |
| 39 | - @port.expects(:request).with(:get_first_result_of, @request).returns(@result_response) | |
| 40 | - assert_equal @result, @client.first_result(@project_name) | |
| 41 | - end | |
| 42 | - | |
| 43 | - should 'get last result of project' do | |
| 44 | - @port.expects(:request).with(:get_last_result_of, @request).returns(@result_response) | |
| 45 | - assert_equal @result, @client.last_result(@project_name) | |
| 46 | - end | |
| 47 | - | |
| 48 | - should 'get first result of project after date' do | |
| 49 | - @port.expects(:request).with(:get_first_result_after, @request_with_date).returns(@result_response) | |
| 50 | - assert_equal @result, @client.first_result_after(@project_name, @date) | |
| 51 | - end | |
| 52 | - | |
| 53 | - should 'get last result of project before date' do | |
| 54 | - @port.expects(:request).with(:get_last_result_before, @request_with_date).returns(@result_response) | |
| 55 | - assert_equal @result, @client.last_result_before(@project_name, @date) | |
| 56 | - end | |
| 57 | - | |
| 58 | -end | |
| 59 | 0 | \ No newline at end of file |
plugins/mezuro/test/unit/kalibro/entities/module_node_test.rb
| ... | ... | @@ -1,20 +0,0 @@ |
| 1 | -require "test_helper" | |
| 2 | - | |
| 3 | -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/module_node_fixtures" | |
| 4 | - | |
| 5 | -class ModuleNodeTest < ActiveSupport::TestCase | |
| 6 | - | |
| 7 | - def setup | |
| 8 | - @hash = ModuleNodeFixtures.qt_calculator_tree_hash | |
| 9 | - @node = ModuleNodeFixtures.qt_calculator_tree | |
| 10 | - end | |
| 11 | - | |
| 12 | - should 'create module node from hash' do | |
| 13 | - assert_equal @node, Kalibro::Entities::ModuleNode.from_hash(@hash) | |
| 14 | - end | |
| 15 | - | |
| 16 | - should 'convert children hash to array of ModuleNode' do | |
| 17 | - assert_equal @hash, @node.to_hash | |
| 18 | - end | |
| 19 | - | |
| 20 | -end | |
| 21 | 0 | \ No newline at end of file |
plugins/mezuro/test/unit/kalibro/entities/project_result_test.rb
| ... | ... | @@ -1,49 +0,0 @@ |
| 1 | -require "test_helper" | |
| 2 | - | |
| 3 | -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures" | |
| 4 | - | |
| 5 | -class ProjectResultTest < ActiveSupport::TestCase | |
| 6 | - | |
| 7 | - def setup | |
| 8 | - @hash = ProjectResultFixtures.qt_calculator_hash | |
| 9 | - @result = ProjectResultFixtures.qt_calculator | |
| 10 | - end | |
| 11 | - | |
| 12 | - should 'create project result from hash' do | |
| 13 | - assert_equal @result, Kalibro::Entities::ProjectResult.from_hash(@hash) | |
| 14 | - end | |
| 15 | - | |
| 16 | - should 'convert project result to hash' do | |
| 17 | - assert_equal @hash, @result.to_hash | |
| 18 | - end | |
| 19 | - | |
| 20 | - should 'retrieve formatted load time' do | |
| 21 | - assert_equal '00:00:14', @result.formatted_load_time | |
| 22 | - end | |
| 23 | - | |
| 24 | - should 'retrieve formatted analysis time' do | |
| 25 | - assert_equal '00:00:01', @result.formatted_analysis_time | |
| 26 | - end | |
| 27 | - | |
| 28 | - should 'retrieve module node' do | |
| 29 | - node = @result.get_node("main") | |
| 30 | - assert_equal @hash[:source_tree][:child][2], node.to_hash | |
| 31 | - end | |
| 32 | - | |
| 33 | - should 'retrive complex module' do | |
| 34 | - node = @result.get_node("org.Window") | |
| 35 | - assert_equal @hash[:source_tree][:child][0][:child].first, node.to_hash | |
| 36 | - end | |
| 37 | - | |
| 38 | - should 'return source tree node when nil is given' do | |
| 39 | - assert_equal @hash[:source_tree], @result.node_of(nil).to_hash | |
| 40 | - end | |
| 41 | - | |
| 42 | - should 'return source tree node when project name is given' do | |
| 43 | - assert_equal @hash[:source_tree], @result.node_of(@result.project.name).to_hash | |
| 44 | - end | |
| 45 | - | |
| 46 | - should 'return correct node when module name is given' do | |
| 47 | - assert_equal @hash[:source_tree][:child][2], @result.node_of("main").to_hash | |
| 48 | - end | |
| 49 | -end |
| ... | ... | @@ -0,0 +1,19 @@ |
| 1 | +require "test_helper" | |
| 2 | +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/module_node_fixtures" | |
| 3 | + | |
| 4 | +class ModuleNodeTest < ActiveSupport::TestCase | |
| 5 | + | |
| 6 | + def setup | |
| 7 | + @hash = ModuleNodeFixtures.module_node_hash | |
| 8 | + @node = ModuleNodeFixtures.module_node | |
| 9 | + end | |
| 10 | + | |
| 11 | + should 'create module node from hash' do | |
| 12 | + assert_equal( @node.child[0].module.name, Kalibro::ModuleNode.new(@hash).child[0].module.name) | |
| 13 | + end | |
| 14 | + | |
| 15 | + should 'convert children hash to array of ModuleNode' do | |
| 16 | + assert_equal @hash, @node.to_hash | |
| 17 | + end | |
| 18 | + | |
| 19 | +end | ... | ... |
| ... | ... | @@ -0,0 +1,98 @@ |
| 1 | +require "test_helper" | |
| 2 | + | |
| 3 | +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures" | |
| 4 | + | |
| 5 | +class ProjectResultTest < ActiveSupport::TestCase | |
| 6 | + | |
| 7 | + def setup | |
| 8 | + @hash = ProjectResultFixtures.project_result_hash | |
| 9 | + @project_result = ProjectResultFixtures.project_result | |
| 10 | + | |
| 11 | +# Kalibro::Client::Port.expects(:new).with('ProjectResult').returns(@port) | |
| 12 | +# @client = Kalibro::Client::ProjectResultClient.new | |
| 13 | + | |
| 14 | + @project_name = @project_result.project.name | |
| 15 | + @date = @project_result.date | |
| 16 | +# @flag = DateTime.now.sec % 2 == 0 | |
| 17 | + | |
| 18 | + @request = {:project_name => @project_name} | |
| 19 | + @request_with_date = {:project_name => @project_name, :date => @date} | |
| 20 | +# @flag_response = {:has_results => @flag} | |
| 21 | + @result_response = {:project_result => @project_result.to_hash} | |
| 22 | + end | |
| 23 | + | |
| 24 | + should 'get last result' do | |
| 25 | + Kalibro::ProjectResult.expects(:request).with('ProjectResult',:get_last_result_of, @request).returns(@result_response) | |
| 26 | + assert_equal @project_result.analysis_time , Kalibro::ProjectResult.last_result(@project_name).analysis_time | |
| 27 | + end | |
| 28 | +=begin | |
| 29 | + should 'create project result from hash' do | |
| 30 | + assert_equal @result, Kalibro::ProjectResult.from_hash(@hash) | |
| 31 | + end | |
| 32 | + | |
| 33 | + should 'convert project result to hash' do | |
| 34 | + assert_equal @hash, @result.to_hash | |
| 35 | + end | |
| 36 | + | |
| 37 | + should 'retrieve formatted load time' do | |
| 38 | + assert_equal '00:00:14', @result.formatted_load_time | |
| 39 | + end | |
| 40 | + | |
| 41 | + should 'retrieve formatted analysis time' do | |
| 42 | + assert_equal '00:00:01', @result.formatted_analysis_time | |
| 43 | + end | |
| 44 | + | |
| 45 | + should 'retrieve module node' do | |
| 46 | + node = @result.get_node("main") | |
| 47 | + assert_equal @hash[:source_tree][:child][2], node.to_hash | |
| 48 | + end | |
| 49 | + | |
| 50 | + should 'retrive complex module' do | |
| 51 | + node = @result.get_node("org.Window") | |
| 52 | + assert_equal @hash[:source_tree][:child][0][:child].first, node.to_hash | |
| 53 | + end | |
| 54 | + | |
| 55 | + should 'return source tree node when nil is given' do | |
| 56 | + assert_equal @hash[:source_tree], @result.node_of(nil).to_hash | |
| 57 | + end | |
| 58 | + | |
| 59 | + should 'return source tree node when project name is given' do | |
| 60 | + assert_equal @hash[:source_tree], @result.node_of(@result.project.name).to_hash | |
| 61 | + end | |
| 62 | + | |
| 63 | + should 'return correct node when module name is given' do | |
| 64 | + assert_equal @hash[:source_tree][:child][2], @result.node_of("main").to_hash | |
| 65 | + end | |
| 66 | + | |
| 67 | + should 'retrieve if project has results' do | |
| 68 | + @port.expects(:request).with(:has_results_for, @request).returns(@flag_response) | |
| 69 | + assert_equal @flag, @client.has_results_for(@project_name) | |
| 70 | + end | |
| 71 | + | |
| 72 | + should 'retrieve if project has results before date' do | |
| 73 | + @port.expects(:request).with(:has_results_before, @request_with_date).returns(@flag_response) | |
| 74 | + assert_equal @flag, @client.has_results_before(@project_name, @date) | |
| 75 | + end | |
| 76 | + | |
| 77 | + should 'retrieve if project has results after date' do | |
| 78 | + @port.expects(:request).with(:has_results_after, @request_with_date).returns(@flag_response) | |
| 79 | + assert_equal @flag, @client.has_results_after(@project_name, @date) | |
| 80 | + end | |
| 81 | + | |
| 82 | + should 'get first result of project' do | |
| 83 | + @port.expects(:request).with(:get_first_result_of, @request).returns(@result_response) | |
| 84 | + assert_equal @result, @client.first_result(@project_name) | |
| 85 | + end | |
| 86 | + | |
| 87 | + | |
| 88 | + should 'get first result of project after date' do | |
| 89 | + @port.expects(:request).with(:get_first_result_after, @request_with_date).returns(@result_response) | |
| 90 | + assert_equal @result, @client.first_result_after(@project_name, @date) | |
| 91 | + end | |
| 92 | + | |
| 93 | + should 'get last result of project before date' do | |
| 94 | + @port.expects(:request).with(:get_last_result_before, @request_with_date).returns(@result_response) | |
| 95 | + assert_equal @result, @client.last_result_before(@project_name, @date) | |
| 96 | + end | |
| 97 | +=end | |
| 98 | +end | ... | ... |