Commit bbeb3b9eadd2f0f5b280e314596845d7383778e4

Authored by Diego Camarinha
Committed by Diego Camarinha
1 parent f4aecdff

[Mezuro] Refactored project_tree controller and created some tests

plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
... ... @@ -31,11 +31,7 @@ class MezuroPluginProfileController < ProfileController
31 31 def project_tree
32 32 content = profile.articles.find(params[:id])
33 33 project_result = content.project_result
34   - if params[:module_name].nil? or params[:module_name] == content.project.name
35   - source_tree = project_result.source_tree
36   - else
37   - source_tree = project_result.get_node(params[:module_name])
38   - end
  34 + source_tree = project_result.node_of(params[:module_name])
39 35 render :partial =>'content_viewer/source_tree', :locals => { :source_tree => source_tree, :project_name => content.project.name}
40 36 end
41 37  
... ...
plugins/mezuro/lib/kalibro/entities/project_result.rb
... ... @@ -31,6 +31,14 @@ class Kalibro::Entities::ProjectResult < Kalibro::Entities::Entity
31 31 ('%2d' % amount).sub(/\s/, '0')
32 32 end
33 33  
  34 + def node_of(module_name)
  35 + if module_name.nil? or module_name == project.name
  36 + node = source_tree
  37 + else
  38 + node = get_node(module_name)
  39 + end
  40 + end
  41 +
34 42 def get_node(module_name)
35 43 path = Kalibro::Entities::Module.parent_names(module_name)
36 44 parent = @source_tree
... ...
plugins/mezuro/test/functional/mezuro_plugin_profile_controller_test.rb
... ... @@ -54,10 +54,10 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase
54 54 Kalibro::Client::ProjectResultClient.expects(:last_result).with(@name).returns(@project_result)
55 55 get :project_result, :profile => @profile.identifier, :id => @content.id
56 56 assert_response 200
57   - assert_select('h3', 'LAST RESULT')
  57 + assert_select('h4', 'Last Result')
58 58 end
59 59  
60   - should 'get metric results for a module' do
  60 + should 'get module result' do
61 61 create_project_content
62 62 Kalibro::Client::ModuleResultClient.expects(:module_result).with(@content, @name).returns(@module_result)
63 63 get :module_result, :profile => @profile.identifier, :id => @content.id, :module_name => @name
... ...
plugins/mezuro/test/unit/kalibro/entities/project_result_test.rb
... ... @@ -34,4 +34,16 @@ class ProjectResultTest < ActiveSupport::TestCase
34 34 node = @result.get_node("org.Window")
35 35 assert_equal @hash[:source_tree][:child][2][:child].first, node.to_hash
36 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][1], @result.node_of("main").to_hash
  48 + end
37 49 end
... ...