Commit ea992c6bed64821914f936c544f0d84f8cdb50b2

Authored by João M. M. da Silva + Paulo Meirelles
Committed by Paulo Meireles
1 parent 800db49c

[Mezuro] refactored profile controller to 2 new controllers.

Showing 26 changed files with 403 additions and 847 deletions   Show diff stats
plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
@@ -1,120 +0,0 @@ @@ -1,120 +0,0 @@
1 -class MezuroPluginProfileController < ProfileController  
2 -  
3 - append_view_path File.join(File.dirname(__FILE__) + '/../views')  
4 -  
5 - def error_page  
6 - @message = params[:message]  
7 - end  
8 -  
9 - def project_state  
10 - @content = profile.articles.find(params[:id])  
11 - project = @content.project  
12 - if project_content_has_errors?  
13 - redirect_to_error_page(@content.errors[:base])  
14 - else  
15 - state = project.kalibro_error.nil? ? project.state : "ERROR"  
16 - render :text => state  
17 - end  
18 - end  
19 -  
20 - def project_error  
21 - @content = profile.articles.find(params[:id])  
22 - @project = @content.project  
23 - if project_content_has_errors?  
24 - redirect_to_error_page(@content.errors[:base])  
25 - else  
26 - render :partial => 'content_viewer/project_error'  
27 - end  
28 - end  
29 -  
30 - def project_result  
31 - @content = profile.articles.find(params[:id])  
32 - date = params[:date]  
33 - @project_result = date.nil? ? @content.project_result : @content.project_result_with_date(date)  
34 - if project_content_has_errors?  
35 - redirect_to_error_page(@content.errors[:base])  
36 - else  
37 - render :partial => 'content_viewer/project_result'  
38 - end  
39 - end  
40 -  
41 - def module_result  
42 - @content = profile.articles.find(params[:id])  
43 - @module_result = @content.module_result(params)  
44 - @module = @module_result.module  
45 - @module_label = "#{@module.name} (#{@module.granularity})"  
46 - if project_content_has_errors?  
47 - redirect_to_error_page(@content.errors[:base])  
48 - else  
49 - render :partial => 'content_viewer/module_result'  
50 - end  
51 - end  
52 -  
53 - def project_tree  
54 - @content = profile.articles.find(params[:id])  
55 - date = params[:date]  
56 - project_result = date.nil? ? @content.project_result : @content.project_result_with_date(date)  
57 - @project_name = @content.project.name if not @content.project.nil?  
58 - if project_content_has_errors?  
59 - redirect_to_error_page(@content.errors[:base])  
60 - else  
61 - @source_tree = project_result.node(params[:module_name])  
62 - render :partial =>'content_viewer/source_tree'  
63 - end  
64 - end  
65 -  
66 - def module_metrics_history  
67 - metric_name = params[:metric_name]  
68 - @content = profile.articles.find(params[:id])  
69 - module_history = @content.result_history(params[:module_name])  
70 - if project_content_has_errors?  
71 - redirect_to_error_page(@content.errors[:base])  
72 - else  
73 - @score_history = filtering_metric_history(metric_name, module_history)  
74 - render :partial => 'content_viewer/score_history'  
75 - end  
76 - end  
77 -  
78 - def module_grade_history  
79 - @content = profile.articles.find(params[:id])  
80 - modules_results = @content.result_history(params[:module_name])  
81 - if project_content_has_errors?  
82 - redirect_to_error_page(@content.errors[:base])  
83 - else  
84 - @score_history = modules_results.map do |module_result|  
85 - [module_result.grade, format_date_to_simple_form(module_result.date)]  
86 - end  
87 - render :partial => 'content_viewer/score_history'  
88 - end  
89 - end  
90 -  
91 - private  
92 -  
93 - def filtering_metric_history(metric_name, module_history)  
94 - metrics_history = module_history.map do |module_result|  
95 - [module_result.metric_results, format_date_to_simple_form(module_result.date)]  
96 - end  
97 - metric_history = metrics_history.map do |metric_results_with_date|  
98 - [(metric_results_with_date.first.select do |metric_result|  
99 - metric_result.metric.name.delete("() ") == metric_name  
100 - end).first, metric_results_with_date.last]  
101 - end  
102 - metric_history.map do |metric_result_with_date|  
103 - [metric_result_with_date.first.value, metric_result_with_date.last]  
104 - end  
105 - end  
106 -  
107 - def redirect_to_error_page(message)  
108 - message = URI.escape(CGI.escape(message),'.')  
109 - redirect_to "/profile/#{profile.identifier}/plugins/mezuro/error_page?message=#{message}"  
110 - end  
111 -  
112 - def project_content_has_errors?  
113 - not @content.errors[:base].nil?  
114 - end  
115 -  
116 - def format_date_to_simple_form date  
117 - date.to_s[0..9]  
118 - end  
119 -  
120 -end  
plugins/mezuro/controllers/profile/mezuro_plugin_module_controller.rb 0 → 100644
@@ -0,0 +1,66 @@ @@ -0,0 +1,66 @@
  1 +class MezuroPluginModuleController < MezuroPluginProfileController
  2 + append_view_path File.join(File.dirname(__FILE__) + '/../../views')
  3 +
  4 + def module_result
  5 + @content = profile.articles.find(params[:id])
  6 + @module_result = @content.module_result(params)
  7 + @module = @module_result.module
  8 + @module_label = "#{@module.name} (#{@module.granularity})"
  9 + if project_content_has_errors?
  10 + redirect_to_error_page(@content.errors[:base])
  11 + else
  12 + render :partial => 'module_result'
  13 + end
  14 + end
  15 +
  16 + def module_metrics_history
  17 + metric_name = params[:metric_name]
  18 + @content = profile.articles.find(params[:id])
  19 + module_history = @content.result_history(params[:module_name])
  20 + if project_content_has_errors?
  21 + redirect_to_error_page(@content.errors[:base])
  22 + else
  23 + @score_history = filtering_metric_history(metric_name, module_history)
  24 + render :partial => 'score_history'
  25 + end
  26 + end
  27 +
  28 + def module_grade_history
  29 + @content = profile.articles.find(params[:id])
  30 + modules_results = @content.result_history(params[:module_name])
  31 + if project_content_has_errors?
  32 + redirect_to_error_page(@content.errors[:base])
  33 + else
  34 + @score_history = modules_results.map do |module_result|
  35 + [module_result.grade, format_date_to_simple_form(module_result.date)]
  36 + end
  37 + render :partial => 'score_history'
  38 + end
  39 + end
  40 +
  41 + private
  42 +
  43 + def filtering_metric_history(metric_name, module_history)
  44 + metrics_history = module_history.map do |module_result|
  45 + [module_result.metric_results, format_date_to_simple_form(module_result.date)]
  46 + end
  47 + metric_history = metrics_history.map do |metric_results_with_date|
  48 + [(metric_results_with_date.first.select do |metric_result|
  49 + metric_result.metric.name.delete("() ") == metric_name
  50 + end).first, metric_results_with_date.last]
  51 + end
  52 + metric_history.map do |metric_result_with_date|
  53 + [metric_result_with_date.first.value, metric_result_with_date.last]
  54 + end
  55 + end
  56 +
  57 + def redirect_to_error_page(message)
  58 + message = URI.escape(CGI.escape(message),'.')
  59 + redirect_to "/profile/#{profile.identifier}/plugins/mezuro/error_page?message=#{message}"
  60 + end
  61 +
  62 + def format_date_to_simple_form date
  63 + date.to_s[0..9]
  64 + end
  65 +
  66 +end
plugins/mezuro/controllers/profile/mezuro_plugin_profile_controller.rb 0 → 100644
@@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
  1 +class MezuroPluginProfileController < ProfileController
  2 +
  3 + append_view_path File.join(File.dirname(__FILE__) + '/../../views')
  4 +
  5 + def error_page
  6 + @message = params[:message]
  7 + end
  8 +
  9 + protected
  10 +
  11 + def project_content_has_errors?
  12 + not @content.errors[:base].nil?
  13 + end
  14 +
  15 +end
  16 +
plugins/mezuro/controllers/profile/mezuro_plugin_project_controller.rb
1 -class MezuroPluginProjectController < ProfileController  
2 - append_view_path File.join(File.dirname(__FILE__) + '/../../views/project') 1 +class MezuroPluginProjectController < MezuroPluginProfileController
  2 + append_view_path File.join(File.dirname(__FILE__) + '/../../views')
3 3
4 def project_state 4 def project_state
5 @content = profile.articles.find(params[:id]) 5 @content = profile.articles.find(params[:id])
@@ -18,7 +18,7 @@ class MezuroPluginProjectController &lt; ProfileController @@ -18,7 +18,7 @@ class MezuroPluginProjectController &lt; ProfileController
18 if project_content_has_errors? 18 if project_content_has_errors?
19 redirect_to_error_page(@content.errors[:base]) 19 redirect_to_error_page(@content.errors[:base])
20 else 20 else
21 - render :partial => 'content_viewer/project_error' 21 + render :partial => 'project_error'
22 end 22 end
23 end 23 end
24 24
@@ -29,7 +29,7 @@ class MezuroPluginProjectController &lt; ProfileController @@ -29,7 +29,7 @@ class MezuroPluginProjectController &lt; ProfileController
29 if project_content_has_errors? 29 if project_content_has_errors?
30 redirect_to_error_page(@content.errors[:base]) 30 redirect_to_error_page(@content.errors[:base])
31 else 31 else
32 - render :partial => 'content_viewer/project_result' 32 + render :partial => 'project_result'
33 end 33 end
34 end 34 end
35 35
@@ -42,13 +42,8 @@ class MezuroPluginProjectController &lt; ProfileController @@ -42,13 +42,8 @@ class MezuroPluginProjectController &lt; ProfileController
42 redirect_to_error_page(@content.errors[:base]) 42 redirect_to_error_page(@content.errors[:base])
43 else 43 else
44 @source_tree = project_result.node(params[:module_name]) 44 @source_tree = project_result.node(params[:module_name])
45 - render :partial =>'content_viewer/source_tree' 45 + render :partial =>'source_tree'
46 end 46 end
47 end 47 end
48 48
49 - private  
50 -  
51 - def project_content_has_errors?  
52 - not @content.errors[:base].nil?  
53 - end  
54 end 49 end
plugins/mezuro/test/functional/mezuro_plugin_profile_controller_test.rb
@@ -1,141 +0,0 @@ @@ -1,141 +0,0 @@
1 -require 'test_helper'  
2 -  
3 -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/module_result_fixtures"  
4 -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures"  
5 -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/error_fixtures"  
6 -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/repository_fixtures"  
7 -  
8 -class MezuroPluginProfileControllerTest < ActionController::TestCase  
9 -  
10 - def setup  
11 - @controller = MezuroPluginProfileController.new  
12 - @request = ActionController::TestRequest.new  
13 - @response = ActionController::TestResponse.new  
14 - @profile = fast_create(Community)  
15 -  
16 - @project_result = ProjectResultFixtures.project_result  
17 - @module_result = ModuleResultFixtures.module_result  
18 - @repository_url = RepositoryFixtures.repository.address  
19 - @project = @project_result.project  
20 - @date = "2012-04-13T20:39:41+04:00"  
21 -  
22 - Kalibro::Project.expects(:all_names).returns([])  
23 - @content = MezuroPlugin::ProjectContent.new(:profile => @profile, :name => @project.name, :repository_url => @repository_url)  
24 - @content.expects(:send_project_to_service).returns(nil)  
25 - @content.save  
26 - end  
27 -  
28 - should 'test project state without kalibro_error' do  
29 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})  
30 - get :project_state, :profile => @profile.identifier, :id => @content.id  
31 - assert_response 200  
32 - assert_equal @content, assigns(:content)  
33 - end  
34 -  
35 - should 'test project state with kalibro_error' do  
36 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash.merge({:error => ErrorFixtures.error_hash})})  
37 - get :project_state, :profile => @profile.identifier, :id => @content.id  
38 - assert_response 200  
39 - assert_equal "ERROR", @response.body  
40 - assert_equal @content, assigns(:content)  
41 - end  
42 -  
43 - should 'test project error' do  
44 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash.merge({:error => ErrorFixtures.error_hash})})  
45 - get :project_error, :profile => @profile.identifier, :id => @content.id  
46 - assert_response 200  
47 - assert_select('h3', 'ERROR')  
48 - assert_equal @content, assigns(:content)  
49 - assert_equal @project.name, assigns(:project).name  
50 - end  
51 -  
52 - should 'test project result without date' do  
53 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).returns({:project_result => @project_result.to_hash})  
54 - get :project_result, :profile => @profile.identifier, :id => @content.id, :date => nil  
55 - assert_equal @content, assigns(:content)  
56 - assert_equal @project_result.project.name, assigns(:project_result).project.name  
57 - assert_response 200  
58 - assert_select('h4', 'Last Result')  
59 - end  
60 -  
61 - should 'test project results from a specific date' do  
62 - request_body = {:project_name => @project.name, :date => @date}  
63 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})  
64 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})  
65 - get :project_result, :profile => @profile.identifier, :id => @content.id, :date => @date  
66 - assert_equal @content, assigns(:content)  
67 - assert_equal @project_result.project.name, assigns(:project_result).project.name  
68 - assert_response 200  
69 - assert_select('h4', 'Last Result')  
70 - end  
71 -  
72 -  
73 - should 'get module result without date' do  
74 - date_with_milliseconds = Kalibro::ProjectResult.date_with_milliseconds(@project_result.date)  
75 - Kalibro::ProjectResult.expects(:request).  
76 - with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).  
77 - returns({:project_result => @project_result.to_hash})  
78 - Kalibro::ModuleResult.expects(:request).  
79 - with("ModuleResult", :get_module_result, {:project_name => @project.name, :module_name => @project.name, :date => date_with_milliseconds}).  
80 - returns({:module_result => @module_result.to_hash})  
81 - get :module_result, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => nil  
82 - assert_equal @content, assigns(:content)  
83 - assert_equal @module_result.grade, assigns(:module_result).grade  
84 - assert_response 200  
85 - assert_select('h5', 'Metric results for: Qt-Calculator (APPLICATION)')  
86 - end  
87 -  
88 - should 'get module result with a specific date' do  
89 - date_with_milliseconds = Kalibro::ProjectResult.date_with_milliseconds(@project_result.date)  
90 - request_body = {:project_name => @project.name, :date => @project_result.date}  
91 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})  
92 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})  
93 - Kalibro::ModuleResult.expects(:request).with("ModuleResult", :get_module_result, {:project_name => @project.name, :module_name => @project.name, :date => date_with_milliseconds}).returns({:module_result => @module_result.to_hash})  
94 - get :module_result, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => @project_result.date  
95 - assert_equal @content, assigns(:content)  
96 - assert_equal @module_result.grade, assigns(:module_result).grade  
97 - assert_response 200  
98 - assert_select('h5', 'Metric results for: Qt-Calculator (APPLICATION)')  
99 - end  
100 -  
101 - should 'test project tree without date' do  
102 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).returns({:project_result => @project_result.to_hash})  
103 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})  
104 - get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => nil  
105 - assert_equal @content, assigns(:content)  
106 - assert_equal @project.name, assigns(:project_name)  
107 - assert_equal @project_result.source_tree.module.name, assigns(:source_tree).module.name  
108 - assert_response 200  
109 - assert_select('h2', /Qt-Calculator/)  
110 - end  
111 -  
112 - should 'test project tree with a specific date' do  
113 - request_body = {:project_name => @project.name, :date => @project_result.date}  
114 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})  
115 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})  
116 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})  
117 - get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => @project_result.date  
118 - assert_equal @content, assigns(:content)  
119 - assert_equal @project.name, assigns(:project_name)  
120 - assert_equal @project_result.source_tree.module.name, assigns(:source_tree).module.name  
121 - assert_response 200  
122 - end  
123 -  
124 - should 'test module metrics history' do  
125 - Kalibro::ModuleResult.expects(:request).with("ModuleResult", :get_result_history, {:project_name => @project.name, :module_name => @project.name}).returns({:module_result => @module_result})  
126 - get :module_metrics_history, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name,  
127 - :metric_name => @module_result.metric_result.first.metric.name.delete("() ")  
128 - assert_equal @content, assigns(:content)  
129 - assert_equal [[@module_result.metric_result[0].value, @module_result.date.to_s[0..9]]], assigns(:score_history)  
130 - assert_response 200  
131 - end  
132 -  
133 - should 'test grade history' do  
134 - Kalibro::ModuleResult.expects(:request).with("ModuleResult", :get_result_history, {:project_name => @project.name, :module_name => @project.name}).returns({:module_result => @module_result})  
135 - get :module_grade_history, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name  
136 - assert_equal @content, assigns(:content)  
137 - assert_equal [[@module_result.grade, @module_result.date.to_s[0..9]]], assigns(:score_history)  
138 - assert_response 200  
139 - end  
140 -  
141 -end  
plugins/mezuro/test/functional/mezuro_plugin_project_controller_test.rb
@@ -1,92 +0,0 @@ @@ -1,92 +0,0 @@
1 -require 'test_helper'  
2 -  
3 -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures"  
4 -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/error_fixtures"  
5 -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/repository_fixtures"  
6 -  
7 -class MezuroPluginProjectControllerTest < ActionController::TestCase  
8 - def setup  
9 - @controller = MezuroPluginProjectController.new  
10 - @request = ActionController::TestRequest.new  
11 - @response = ActionController::TestResponse.new  
12 - @profile = fast_create(Community)  
13 -  
14 - @project_result = ProjectResultFixtures.project_result  
15 - @repository_url = RepositoryFixtures.repository.address  
16 - @project = @project_result.project  
17 - @date = "2012-04-13T20:39:41+04:00"  
18 -  
19 - Kalibro::Project.expects(:all_names).returns([])  
20 - @content = MezuroPlugin::ProjectContent.new(:profile => @profile, :name => @project.name, :repository_url => @repository_url)  
21 - @content.expects(:send_project_to_service).returns(nil)  
22 - @content.save  
23 - end  
24 -  
25 - should 'test project state without kalibro_error' do  
26 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})  
27 - get :project_state, :profile => @profile.identifier, :id => @content.id  
28 - assert_response 200  
29 - assert_equal @content, assigns(:content)  
30 - end  
31 -  
32 - should 'test project state with kalibro_error' do  
33 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash.merge({:error => ErrorFixtures.error_hash})})  
34 - get :project_state, :profile => @profile.identifier, :id => @content.id  
35 - assert_response 200  
36 - assert_equal "ERROR", @response.body  
37 - assert_equal @content, assigns(:content)  
38 - end  
39 -  
40 - should 'test project error' do  
41 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash.merge({:error => ErrorFixtures.error_hash})})  
42 - get :project_error, :profile => @profile.identifier, :id => @content.id  
43 - assert_response 200  
44 - assert_select('h3', 'ERROR')  
45 - assert_equal @content, assigns(:content)  
46 - assert_equal @project.name, assigns(:project).name  
47 - end  
48 -  
49 - should 'test project result without date' do  
50 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).returns({:project_result => @project_result.to_hash})  
51 - get :project_result, :profile => @profile.identifier, :id => @content.id, :date => nil  
52 - assert_equal @content, assigns(:content)  
53 - assert_equal @project_result.project.name, assigns(:project_result).project.name  
54 - assert_response 200  
55 - assert_select('h4', 'Last Result')  
56 - end  
57 -  
58 - should 'test project results from a specific date' do  
59 - request_body = {:project_name => @project.name, :date => @date}  
60 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})  
61 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})  
62 - get :project_result, :profile => @profile.identifier, :id => @content.id, :date => @date  
63 - assert_equal @content, assigns(:content)  
64 - assert_equal @project_result.project.name, assigns(:project_result).project.name  
65 - assert_response 200  
66 - assert_select('h4', 'Last Result')  
67 - end  
68 -  
69 - should 'test project tree without date' do  
70 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).returns({:project_result => @project_result.to_hash})  
71 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})  
72 - get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => nil  
73 - assert_equal @content, assigns(:content)  
74 - assert_equal @project.name, assigns(:project_name)  
75 - assert_equal @project_result.source_tree.module.name, assigns(:source_tree).module.name  
76 - assert_response 200  
77 - assert_select('h2', /Qt-Calculator/)  
78 - end  
79 -  
80 - should 'test project tree with a specific date' do  
81 - request_body = {:project_name => @project.name, :date => @project_result.date}  
82 - Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})  
83 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})  
84 - Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})  
85 - get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => @project_result.date  
86 - assert_equal @content, assigns(:content)  
87 - assert_equal @project.name, assigns(:project_name)  
88 - assert_equal @project_result.source_tree.module.name, assigns(:source_tree).module.name  
89 - assert_response 200  
90 - end  
91 -  
92 -end  
plugins/mezuro/test/functional/profile/mezuro_plugin_module_controller_test.rb 0 → 100644
@@ -0,0 +1,74 @@ @@ -0,0 +1,74 @@
  1 +require 'test_helper'
  2 +
  3 +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/module_result_fixtures"
  4 +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures"
  5 +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/error_fixtures"
  6 +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/repository_fixtures"
  7 +
  8 +class MezuroPluginModuleControllerTest < ActionController::TestCase
  9 +
  10 + def setup
  11 + @controller = MezuroPluginModuleController.new
  12 + @request = ActionController::TestRequest.new
  13 + @response = ActionController::TestResponse.new
  14 + @profile = fast_create(Community)
  15 +
  16 + @project_result = ProjectResultFixtures.project_result
  17 + @module_result = ModuleResultFixtures.module_result
  18 + @repository_url = RepositoryFixtures.repository.address
  19 + @project = @project_result.project
  20 + @date = "2012-04-13T20:39:41+04:00"
  21 +
  22 + Kalibro::Project.expects(:all_names).returns([])
  23 + @content = MezuroPlugin::ProjectContent.new(:profile => @profile, :name => @project.name, :repository_url => @repository_url)
  24 + @content.expects(:send_project_to_service).returns(nil)
  25 + @content.save
  26 + end
  27 +
  28 +
  29 + should 'get module result without date' do
  30 + date_with_milliseconds = Kalibro::ProjectResult.date_with_milliseconds(@project_result.date)
  31 + Kalibro::ProjectResult.expects(:request).
  32 + with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).
  33 + returns({:project_result => @project_result.to_hash})
  34 + Kalibro::ModuleResult.expects(:request).
  35 + with("ModuleResult", :get_module_result, {:project_name => @project.name, :module_name => @project.name, :date => date_with_milliseconds}).
  36 + returns({:module_result => @module_result.to_hash})
  37 + get :module_result, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => nil
  38 + assert_equal @content, assigns(:content)
  39 + assert_equal @module_result.grade, assigns(:module_result).grade
  40 + assert_response 200
  41 + assert_select('h5', 'Metric results for: Qt-Calculator (APPLICATION)')
  42 + end
  43 +
  44 + should 'get module result with a specific date' do
  45 + date_with_milliseconds = Kalibro::ProjectResult.date_with_milliseconds(@project_result.date)
  46 + request_body = {:project_name => @project.name, :date => @project_result.date}
  47 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})
  48 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})
  49 + Kalibro::ModuleResult.expects(:request).with("ModuleResult", :get_module_result, {:project_name => @project.name, :module_name => @project.name, :date => date_with_milliseconds}).returns({:module_result => @module_result.to_hash})
  50 + get :module_result, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => @project_result.date
  51 + assert_equal @content, assigns(:content)
  52 + assert_equal @module_result.grade, assigns(:module_result).grade
  53 + assert_response 200
  54 + assert_select('h5', 'Metric results for: Qt-Calculator (APPLICATION)')
  55 + end
  56 +
  57 + should 'test module metrics history' do
  58 + Kalibro::ModuleResult.expects(:request).with("ModuleResult", :get_result_history, {:project_name => @project.name, :module_name => @project.name}).returns({:module_result => @module_result})
  59 + get :module_metrics_history, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name,
  60 + :metric_name => @module_result.metric_result.first.metric.name.delete("() ")
  61 + assert_equal @content, assigns(:content)
  62 + assert_equal [[@module_result.metric_result[0].value, @module_result.date.to_s[0..9]]], assigns(:score_history)
  63 + assert_response 200
  64 + end
  65 +
  66 + should 'test grade history' do
  67 + Kalibro::ModuleResult.expects(:request).with("ModuleResult", :get_result_history, {:project_name => @project.name, :module_name => @project.name}).returns({:module_result => @module_result})
  68 + get :module_grade_history, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name
  69 + assert_equal @content, assigns(:content)
  70 + assert_equal [[@module_result.grade, @module_result.date.to_s[0..9]]], assigns(:score_history)
  71 + assert_response 200
  72 + end
  73 +
  74 +end
plugins/mezuro/test/functional/profile/mezuro_plugin_project_controller_test.rb 0 → 100644
@@ -0,0 +1,92 @@ @@ -0,0 +1,92 @@
  1 +require 'test_helper'
  2 +
  3 +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures"
  4 +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/error_fixtures"
  5 +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/repository_fixtures"
  6 +
  7 +class MezuroPluginProjectControllerTest < ActionController::TestCase
  8 + def setup
  9 + @controller = MezuroPluginProjectController.new
  10 + @request = ActionController::TestRequest.new
  11 + @response = ActionController::TestResponse.new
  12 + @profile = fast_create(Community)
  13 +
  14 + @project_result = ProjectResultFixtures.project_result
  15 + @repository_url = RepositoryFixtures.repository.address
  16 + @project = @project_result.project
  17 + @date = "2012-04-13T20:39:41+04:00"
  18 +
  19 + Kalibro::Project.expects(:all_names).returns([])
  20 + @content = MezuroPlugin::ProjectContent.new(:profile => @profile, :name => @project.name, :repository_url => @repository_url)
  21 + @content.expects(:send_project_to_service).returns(nil)
  22 + @content.save
  23 + end
  24 +
  25 + should 'test project state without kalibro_error' do
  26 + Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})
  27 + get :project_state, :profile => @profile.identifier, :id => @content.id
  28 + assert_response 200
  29 + assert_equal @content, assigns(:content)
  30 + end
  31 +
  32 + should 'test project state with kalibro_error' do
  33 + Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash.merge({:error => ErrorFixtures.error_hash})})
  34 + get :project_state, :profile => @profile.identifier, :id => @content.id
  35 + assert_response 200
  36 + assert_equal "ERROR", @response.body
  37 + assert_equal @content, assigns(:content)
  38 + end
  39 +
  40 + should 'test project error' do
  41 + Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash.merge({:error => ErrorFixtures.error_hash})})
  42 + get :project_error, :profile => @profile.identifier, :id => @content.id
  43 + assert_response 200
  44 + assert_select('h3', 'ERROR')
  45 + assert_equal @content, assigns(:content)
  46 + assert_equal @project.name, assigns(:project).name
  47 + end
  48 +
  49 + should 'test project result without date' do
  50 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).returns({:project_result => @project_result.to_hash})
  51 + get :project_result, :profile => @profile.identifier, :id => @content.id, :date => nil
  52 + assert_equal @content, assigns(:content)
  53 + assert_equal @project_result.project.name, assigns(:project_result).project.name
  54 + assert_response 200
  55 + assert_select('h4', 'Last Result')
  56 + end
  57 +
  58 + should 'test project results from a specific date' do
  59 + request_body = {:project_name => @project.name, :date => @date}
  60 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})
  61 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})
  62 + get :project_result, :profile => @profile.identifier, :id => @content.id, :date => @date
  63 + assert_equal @content, assigns(:content)
  64 + assert_equal @project_result.project.name, assigns(:project_result).project.name
  65 + assert_response 200
  66 + assert_select('h4', 'Last Result')
  67 + end
  68 +
  69 + should 'test project tree without date' do
  70 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_of, {:project_name => @project.name}).returns({:project_result => @project_result.to_hash})
  71 + Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})
  72 + get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => nil
  73 + assert_equal @content, assigns(:content)
  74 + assert_equal @project.name, assigns(:project_name)
  75 + assert_equal @project_result.source_tree.module.name, assigns(:source_tree).module.name
  76 + assert_response 200
  77 + assert_select('h2', /Qt-Calculator/)
  78 + end
  79 +
  80 + should 'test project tree with a specific date' do
  81 + request_body = {:project_name => @project.name, :date => @project_result.date}
  82 + Kalibro::Project.expects(:request).with("Project", :get_project, :project_name => @project.name).returns({:project => @project.to_hash})
  83 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :has_results_before, request_body).returns({:has_results => true})
  84 + Kalibro::ProjectResult.expects(:request).with("ProjectResult", :get_last_result_before, request_body).returns({:project_result => @project_result.to_hash})
  85 + get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @project.name, :date => @project_result.date
  86 + assert_equal @content, assigns(:content)
  87 + assert_equal @project.name, assigns(:project_name)
  88 + assert_equal @project_result.source_tree.module.name, assigns(:source_tree).module.name
  89 + assert_response 200
  90 + end
  91 +
  92 +end
plugins/mezuro/views/content_viewer/_module_result.rhtml
@@ -1,52 +0,0 @@ @@ -1,52 +0,0 @@
1 -<h5><%= _('Metric results for: ') + @module_label %> </h5>  
2 -  
3 -<hr/>  
4 -<div class="zoomable-image">  
5 -<table>  
6 - <thead>  
7 - <tr>  
8 - <th>Metric</th>  
9 - <th>Value</th>  
10 - <th>Weight</th>  
11 - <th>Threshold</th>  
12 - </tr>  
13 - </thead>  
14 - <tbody>  
15 - <% @module_result.metric_results.each do |metric_result| %>  
16 - <% range = metric_result.range %>  
17 - <% if !range.nil? %>  
18 - <tr>  
19 - <td><a href="#" show-metric-history="<%= MezuroPlugin::Helpers::ContentViewerHelper.format_name(metric_result) %>" data-module-name="<%= @module.name %>"><%= metric_result.metric.name %></a></td>  
20 - <td><%= MezuroPlugin::Helpers::ContentViewerHelper.format_grade(metric_result.value) %></td>  
21 - <td><%= metric_result.weight %></td>  
22 - <td style="background-color: #<%= range.color[2..-1] %>"><%= range.label %></td>  
23 - </tr>  
24 - <tr class="<%= MezuroPlugin::Helpers::ContentViewerHelper.format_name(metric_result) %>" style="display: none;">  
25 - <td colspan="3">  
26 - <div id='historical-<%= MezuroPlugin::Helpers::ContentViewerHelper.format_name(metric_result) %>'>  
27 - </div>  
28 - </td>  
29 - <td align="right">  
30 - <%= range.comments.nil? ? '' : range.comments %>  
31 - </td>  
32 - </tr>  
33 - <% end %>  
34 - <% end %>  
35 - </tbody>  
36 - <tfoot>  
37 - <tr>  
38 - <td colspan = "3">  
39 - <div id='historical-grade' style="display: none;"></div>  
40 - </td>  
41 - <td align = "right">  
42 - <a href="#" show-grade-history="<%= @module_result.module.name %>" data-module-name="<%= @module.name%>" >  
43 - <strong>  
44 - <%= _('Grade:') %>  
45 - <%= "%.02f" % @module_result.grade %>  
46 - </strong>  
47 - </a>  
48 - </td>  
49 - </tr>  
50 - </tfoot>  
51 -</table>  
52 -</div>  
plugins/mezuro/views/content_viewer/_project_error.rhtml
@@ -1,12 +0,0 @@ @@ -1,12 +0,0 @@
1 -<h3><%= _('ERROR') %></h3>  
2 -<p>  
3 - <%= "State when error ocurred: #{@project.state}" %>  
4 - <br/>  
5 - <% error = @project.kalibro_error %>  
6 - <%= error.message %>  
7 -<ul>  
8 - <% error.stack_trace.each do |trace| %>  
9 - <li><%= "#{trace.declaring_class}.#{trace.method_name}(#{trace.file_name}:#{trace.line_number})" %></li>  
10 - <% end %>  
11 -</ul>  
12 -</p>  
plugins/mezuro/views/content_viewer/_project_result.rhtml
@@ -1,39 +0,0 @@ @@ -1,39 +0,0 @@
1 -<% unless @content.errors[:base].nil? %>  
2 - <%= @content.errors[:base] %>  
3 -<% else %>  
4 - <p> Choose a date to see specific project results: </p>  
5 - <div id="datepicker" data-date="<%= @project_result.date %>">  
6 - <input id="datepicker_field" style="display:none"/>  
7 - </div>  
8 -  
9 - <h4><%= _('Last Result') %></h4>  
10 -  
11 - <table>  
12 - <tr>  
13 - <td><%= _('Date') %></td>  
14 - <td><%= @project_result.date %></td>  
15 - </tr>  
16 - <tr>  
17 - <td><%= _('Load time') %></td>  
18 - <td><%= @project_result.formatted_load_time %></td>  
19 - </tr>  
20 - <tr>  
21 - <td><%= _('Analysis time') %></td>  
22 - <td><%= @project_result.formatted_analysis_time %></td>  
23 - </tr>  
24 - </table>  
25 -  
26 -  
27 - <script>  
28 - jQuery(document).ready(function($) {  
29 - $("#datepicker").datepicker({ altField: '#datepicker_field', showOn: 'button', dateFormat: "yy-mm-dd",  
30 - buttonImageOnly: true, buttonImage: '/images/calendar_date_select/calendar.png',  
31 - onSelect: function(dateText, inst) {  
32 - reloadProjectWithDate(dateText) } });  
33 - var date = jQuery("#datepicker").attr('data-date').substr(0,10);  
34 - $("#datepicker").datepicker( "setDate" , date );  
35 -  
36 - });  
37 - </script>  
38 -  
39 -<% end %>  
plugins/mezuro/views/content_viewer/_score_history.rhtml
@@ -1,2 +0,0 @@ @@ -1,2 +0,0 @@
1 -<%= image_tag(MezuroPlugin::Helpers::ContentViewerHelper.generate_chart(@score_history)) %>  
2 -  
plugins/mezuro/views/content_viewer/_source_tree.rhtml
@@ -1,45 +0,0 @@ @@ -1,45 +0,0 @@
1 -<% unless @content.errors[:base].nil? %>  
2 - <%= @content.errors[:base] %>  
3 -<% else %>  
4 - <h4><%= _('Source tree') %></h4>  
5 - <% module_name = @source_tree.module.name %>  
6 - <% module_label = "#{module_name} (#{@source_tree.module.granularity})" %>  
7 -  
8 - <p><h2 class="path">  
9 - <% if module_name != @project_name %>  
10 - <a href="#" class="source-tree-link" data-module-name="<%= @project_name %>">  
11 - <%= @project_name %>  
12 - </a>  
13 - <% end %>  
14 -  
15 -  
16 - <% split_link = @source_tree.module.ancestor_names %>  
17 - <% split_link.each do |link| %>  
18 - /<a href="#" class="source-tree-link" data-module-name="<%= link %>">  
19 - <%= link.split(".").last %>  
20 - </a>  
21 - <% end %>  
22 - </h2></p>  
23 -  
24 - <% if @source_tree.children %>  
25 - <table border="0" class="source-tree">  
26 - <% @source_tree.children.each do |child| %>  
27 - <% if child.module.granularity=='PACKAGE' %>  
28 - <tr>  
29 - <td class="icon"><%= image_tag('/plugins/mezuro/images/folder.png')%></td>  
30 - <td class="source-tree-text"><a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>"><%= child.module.name %></a></td>  
31 - </tr>  
32 - <% else %>  
33 - <tr>  
34 - <td class="icon"><%= image_tag('/plugins/mezuro/images/file.png') %></td>  
35 - <td class="source-tree-text">  
36 - <a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>">  
37 - <%= child.module.name %>  
38 - </a>  
39 - </td>  
40 - </tr>  
41 - <% end %>  
42 - <% end %>  
43 - </table>  
44 - <% end %>  
45 -<% end %>  
plugins/mezuro/views/mezuro_plugin_module/_module_result.rhtml 0 → 100644
@@ -0,0 +1,52 @@ @@ -0,0 +1,52 @@
  1 +<h5><%= _('Metric results for: ') + @module_label %> </h5>
  2 +
  3 +<hr/>
  4 +<div class="zoomable-image">
  5 +<table>
  6 + <thead>
  7 + <tr>
  8 + <th>Metric</th>
  9 + <th>Value</th>
  10 + <th>Weight</th>
  11 + <th>Threshold</th>
  12 + </tr>
  13 + </thead>
  14 + <tbody>
  15 + <% @module_result.metric_results.each do |metric_result| %>
  16 + <% range = metric_result.range %>
  17 + <% if !range.nil? %>
  18 + <tr>
  19 + <td><a href="#" show-metric-history="<%= MezuroPlugin::Helpers::ContentViewerHelper.format_name(metric_result) %>" data-module-name="<%= @module.name %>"><%= metric_result.metric.name %></a></td>
  20 + <td><%= MezuroPlugin::Helpers::ContentViewerHelper.format_grade(metric_result.value) %></td>
  21 + <td><%= metric_result.weight %></td>
  22 + <td style="background-color: #<%= range.color[2..-1] %>"><%= range.label %></td>
  23 + </tr>
  24 + <tr class="<%= MezuroPlugin::Helpers::ContentViewerHelper.format_name(metric_result) %>" style="display: none;">
  25 + <td colspan="3">
  26 + <div id='historical-<%= MezuroPlugin::Helpers::ContentViewerHelper.format_name(metric_result) %>'>
  27 + </div>
  28 + </td>
  29 + <td align="right">
  30 + <%= range.comments.nil? ? '' : range.comments %>
  31 + </td>
  32 + </tr>
  33 + <% end %>
  34 + <% end %>
  35 + </tbody>
  36 + <tfoot>
  37 + <tr>
  38 + <td colspan = "3">
  39 + <div id='historical-grade' style="display: none;"></div>
  40 + </td>
  41 + <td align = "right">
  42 + <a href="#" show-grade-history="<%= @module_result.module.name %>" data-module-name="<%= @module.name%>" >
  43 + <strong>
  44 + <%= _('Grade:') %>
  45 + <%= "%.02f" % @module_result.grade %>
  46 + </strong>
  47 + </a>
  48 + </td>
  49 + </tr>
  50 + </tfoot>
  51 +</table>
  52 +</div>
plugins/mezuro/views/mezuro_plugin_module/_score_history.rhtml 0 → 100644
@@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
  1 +
  2 +
plugins/mezuro/views/mezuro_plugin_project/_project_error.rhtml 0 → 100644
@@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
  1 +<h3><%= _('ERROR') %></h3>
  2 +<p>
  3 + <%= "State when error ocurred: #{@project.state}" %>
  4 + <br/>
  5 + <% error = @project.kalibro_error %>
  6 + <%= error.message %>
  7 +<ul>
  8 + <% error.stack_trace.each do |trace| %>
  9 + <li><%= "#{trace.declaring_class}.#{trace.method_name}(#{trace.file_name}:#{trace.line_number})" %></li>
  10 + <% end %>
  11 +</ul>
  12 +</p>
plugins/mezuro/views/mezuro_plugin_project/_project_result.rhtml 0 → 100644
@@ -0,0 +1,39 @@ @@ -0,0 +1,39 @@
  1 +<% unless @content.errors[:base].nil? %>
  2 + <%= @content.errors[:base] %>
  3 +<% else %>
  4 + <p> Choose a date to see specific project results: </p>
  5 + <div id="datepicker" data-date="<%= @project_result.date %>">
  6 + <input id="datepicker_field" style="display:none"/>
  7 + </div>
  8 +
  9 + <h4><%= _('Last Result') %></h4>
  10 +
  11 + <table>
  12 + <tr>
  13 + <td><%= _('Date') %></td>
  14 + <td><%= @project_result.date %></td>
  15 + </tr>
  16 + <tr>
  17 + <td><%= _('Load time') %></td>
  18 + <td><%= @project_result.formatted_load_time %></td>
  19 + </tr>
  20 + <tr>
  21 + <td><%= _('Analysis time') %></td>
  22 + <td><%= @project_result.formatted_analysis_time %></td>
  23 + </tr>
  24 + </table>
  25 +
  26 +
  27 + <script>
  28 + jQuery(document).ready(function($) {
  29 + $("#datepicker").datepicker({ altField: '#datepicker_field', showOn: 'button', dateFormat: "yy-mm-dd",
  30 + buttonImageOnly: true, buttonImage: '/images/calendar_date_select/calendar.png',
  31 + onSelect: function(dateText, inst) {
  32 + reloadProjectWithDate(dateText) } });
  33 + var date = jQuery("#datepicker").attr('data-date').substr(0,10);
  34 + $("#datepicker").datepicker( "setDate" , date );
  35 +
  36 + });
  37 + </script>
  38 +
  39 +<% end %>
plugins/mezuro/views/mezuro_plugin_project/_source_tree.rhtml 0 → 100644
@@ -0,0 +1,45 @@ @@ -0,0 +1,45 @@
  1 +<% unless @content.errors[:base].nil? %>
  2 + <%= @content.errors[:base] %>
  3 +<% else %>
  4 + <h4><%= _('Source tree') %></h4>
  5 + <% module_name = @source_tree.module.name %>
  6 + <% module_label = "#{module_name} (#{@source_tree.module.granularity})" %>
  7 +
  8 + <p><h2 class="path">
  9 + <% if module_name != @project_name %>
  10 + <a href="#" class="source-tree-link" data-module-name="<%= @project_name %>">
  11 + <%= @project_name %>
  12 + </a>
  13 + <% end %>
  14 +
  15 +
  16 + <% split_link = @source_tree.module.ancestor_names %>
  17 + <% split_link.each do |link| %>
  18 + /<a href="#" class="source-tree-link" data-module-name="<%= link %>">
  19 + <%= link.split(".").last %>
  20 + </a>
  21 + <% end %>
  22 + </h2></p>
  23 +
  24 + <% if @source_tree.children %>
  25 + <table border="0" class="source-tree">
  26 + <% @source_tree.children.each do |child| %>
  27 + <% if child.module.granularity=='PACKAGE' %>
  28 + <tr>
  29 + <td class="icon"><%= image_tag('/plugins/mezuro/images/folder.png')%></td>
  30 + <td class="source-tree-text"><a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>"><%= child.module.name %></a></td>
  31 + </tr>
  32 + <% else %>
  33 + <tr>
  34 + <td class="icon"><%= image_tag('/plugins/mezuro/images/file.png') %></td>
  35 + <td class="source-tree-text">
  36 + <a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>">
  37 + <%= child.module.name %>
  38 + </a>
  39 + </td>
  40 + </tr>
  41 + <% end %>
  42 + <% end %>
  43 + </table>
  44 + <% end %>
  45 +<% end %>
plugins/mezuro/views/project/_project_error.rhtml
@@ -1,12 +0,0 @@ @@ -1,12 +0,0 @@
1 -<h3><%= _('ERROR') %></h3>  
2 -<p>  
3 - <%= "State when error ocurred: #{@project.state}" %>  
4 - <br/>  
5 - <% error = @project.kalibro_error %>  
6 - <%= error.message %>  
7 -<ul>  
8 - <% error.stack_trace.each do |trace| %>  
9 - <li><%= "#{trace.declaring_class}.#{trace.method_name}(#{trace.file_name}:#{trace.line_number})" %></li>  
10 - <% end %>  
11 -</ul>  
12 -</p>  
plugins/mezuro/views/project/_project_result.rhtml
@@ -1,51 +0,0 @@ @@ -1,51 +0,0 @@
1 -<% unless @content.errors[:base].nil? %>  
2 - <%= @content.errors[:base] %>  
3 -<% else %>  
4 - <% form_for :project_date, :html=>{:id=>"project_history_date"} do |f| %>  
5 - <%= f.label :day, "Choose project date:" %>  
6 -  
7 - <table>  
8 - <tr>  
9 - <td>  
10 - Day  
11 - </td>  
12 - <td>  
13 - Month  
14 - </td>  
15 - <td>  
16 - Year  
17 - </td>  
18 - </tr>  
19 - <tr>  
20 - <td>  
21 - <%= f.text_field :day, :size => 1, :maxlength => 2, :placeholder =>"dd" %>  
22 - </td>  
23 - <td>  
24 - <%= f.text_field :month, :size => 1, :maxlength => 2, :placeholder =>"mm" %>  
25 - </td>  
26 - <td>  
27 - <%= f.text_field :year, :size => 1, :maxlength => 4, :placeholder =>"yyyy" %>  
28 - </td>  
29 - </tr>  
30 - </table>  
31 - <%= f.submit "Refresh" %>  
32 - <% end %>  
33 -  
34 -  
35 - <h4><%= _('Last Result') %></h4>  
36 -  
37 - <table>  
38 - <tr>  
39 - <td><%= _('Date') %></td>  
40 - <td><%= @project_result.date %></td>  
41 - </tr>  
42 - <tr>  
43 - <td><%= _('Load time') %></td>  
44 - <td><%= @project_result.formatted_load_time %></td>  
45 - </tr>  
46 - <tr>  
47 - <td><%= _('Analysis time') %></td>  
48 - <td><%= @project_result.formatted_analysis_time %></td>  
49 - </tr>  
50 - </table>  
51 -<% end %>  
plugins/mezuro/views/project/_source_tree.rhtml
@@ -1,45 +0,0 @@ @@ -1,45 +0,0 @@
1 -<% unless @content.errors[:base].nil? %>  
2 - <%= @content.errors[:base] %>  
3 -<% else %>  
4 - <h4><%= _('Source tree') %></h4>  
5 - <% module_name = @source_tree.module.name %>  
6 - <% module_label = "#{module_name} (#{@source_tree.module.granularity})" %>  
7 -  
8 - <p><h2 class="path">  
9 - <% if module_name != @project_name %>  
10 - <a href="#" class="source-tree-link" data-module-name="<%= @project_name %>">  
11 - <%= @project_name %>  
12 - </a>  
13 - <% end %>  
14 -  
15 -  
16 - <% split_link = @source_tree.module.ancestor_names %>  
17 - <% split_link.each do |link| %>  
18 - /<a href="#" class="source-tree-link" data-module-name="<%= link %>">  
19 - <%= link.split(".").last %>  
20 - </a>  
21 - <% end %>  
22 - </h2></p>  
23 -  
24 - <% if @source_tree.children %>  
25 - <table border="0" class="source-tree">  
26 - <% @source_tree.children.each do |child| %>  
27 - <% if child.module.granularity=='PACKAGE' %>  
28 - <tr>  
29 - <td class="icon"><%= image_tag('/plugins/mezuro/images/folder.png')%></td>  
30 - <td class="source-tree-text"><a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>"><%= child.module.name %></a></td>  
31 - </tr>  
32 - <% else %>  
33 - <tr>  
34 - <td class="icon"><%= image_tag('/plugins/mezuro/images/file.png') %></td>  
35 - <td class="source-tree-text">  
36 - <a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>">  
37 - <%= child.module.name %>  
38 - </a>  
39 - </td>  
40 - </tr>  
41 - <% end %>  
42 - <% end %>  
43 - </table>  
44 - <% end %>  
45 -<% end %>  
plugins/mezuro/views/project/content_viewer/_project_error.rhtml
@@ -1,12 +0,0 @@ @@ -1,12 +0,0 @@
1 -<h3><%= _('ERROR') %></h3>  
2 -<p>  
3 - <%= "State when error ocurred: #{@project.state}" %>  
4 - <br/>  
5 - <% error = @project.kalibro_error %>  
6 - <%= error.message %>  
7 -<ul>  
8 - <% error.stack_trace.each do |trace| %>  
9 - <li><%= "#{trace.declaring_class}.#{trace.method_name}(#{trace.file_name}:#{trace.line_number})" %></li>  
10 - <% end %>  
11 -</ul>  
12 -</p>  
plugins/mezuro/views/project/content_viewer/_project_result.rhtml
@@ -1,51 +0,0 @@ @@ -1,51 +0,0 @@
1 -<% unless @content.errors[:base].nil? %>  
2 - <%= @content.errors[:base] %>  
3 -<% else %>  
4 - <% form_for :project_date, :html=>{:id=>"project_history_date"} do |f| %>  
5 - <%= f.label :day, "Choose project date:" %>  
6 -  
7 - <table>  
8 - <tr>  
9 - <td>  
10 - Day  
11 - </td>  
12 - <td>  
13 - Month  
14 - </td>  
15 - <td>  
16 - Year  
17 - </td>  
18 - </tr>  
19 - <tr>  
20 - <td>  
21 - <%= f.text_field :day, :size => 1, :maxlength => 2, :placeholder =>"dd" %>  
22 - </td>  
23 - <td>  
24 - <%= f.text_field :month, :size => 1, :maxlength => 2, :placeholder =>"mm" %>  
25 - </td>  
26 - <td>  
27 - <%= f.text_field :year, :size => 1, :maxlength => 4, :placeholder =>"yyyy" %>  
28 - </td>  
29 - </tr>  
30 - </table>  
31 - <%= f.submit "Refresh" %>  
32 - <% end %>  
33 -  
34 -  
35 - <h4><%= _('Last Result') %></h4>  
36 -  
37 - <table>  
38 - <tr>  
39 - <td><%= _('Date') %></td>  
40 - <td><%= @project_result.date %></td>  
41 - </tr>  
42 - <tr>  
43 - <td><%= _('Load time') %></td>  
44 - <td><%= @project_result.formatted_load_time %></td>  
45 - </tr>  
46 - <tr>  
47 - <td><%= _('Analysis time') %></td>  
48 - <td><%= @project_result.formatted_analysis_time %></td>  
49 - </tr>  
50 - </table>  
51 -<% end %>  
plugins/mezuro/views/project/content_viewer/_source_tree.rhtml
@@ -1,45 +0,0 @@ @@ -1,45 +0,0 @@
1 -<% unless @content.errors[:base].nil? %>  
2 - <%= @content.errors[:base] %>  
3 -<% else %>  
4 - <h4><%= _('Source tree') %></h4>  
5 - <% module_name = @source_tree.module.name %>  
6 - <% module_label = "#{module_name} (#{@source_tree.module.granularity})" %>  
7 -  
8 - <p><h2 class="path">  
9 - <% if module_name != @project_name %>  
10 - <a href="#" class="source-tree-link" data-module-name="<%= @project_name %>">  
11 - <%= @project_name %>  
12 - </a>  
13 - <% end %>  
14 -  
15 -  
16 - <% split_link = @source_tree.module.ancestor_names %>  
17 - <% split_link.each do |link| %>  
18 - /<a href="#" class="source-tree-link" data-module-name="<%= link %>">  
19 - <%= link.split(".").last %>  
20 - </a>  
21 - <% end %>  
22 - </h2></p>  
23 -  
24 - <% if @source_tree.children %>  
25 - <table border="0" class="source-tree">  
26 - <% @source_tree.children.each do |child| %>  
27 - <% if child.module.granularity=='PACKAGE' %>  
28 - <tr>  
29 - <td class="icon"><%= image_tag('/plugins/mezuro/images/folder.png')%></td>  
30 - <td class="source-tree-text"><a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>"><%= child.module.name %></a></td>  
31 - </tr>  
32 - <% else %>  
33 - <tr>  
34 - <td class="icon"><%= image_tag('/plugins/mezuro/images/file.png') %></td>  
35 - <td class="source-tree-text">  
36 - <a href='#' class="source-tree-link" data-module-name="<%= child.module.name %>">  
37 - <%= child.module.name %>  
38 - </a>  
39 - </td>  
40 - </tr>  
41 - <% end %>  
42 - <% end %>  
43 - </table>  
44 - <% end %>  
45 -<% end %>  
plugins/mezuro/views/project/content_viewer/show_project.rhtml
@@ -1,59 +0,0 @@ @@ -1,59 +0,0 @@
1 -<script src="/plugins/mezuro/javascripts/project_content.js" type="text/javascript"></script>  
2 -  
3 -<% @project = @page.project %>  
4 -<% unless @page.errors[:base].nil? %>  
5 - <% if @page.errors[:base] =~ /There is no project named/ %>  
6 - <h3>Warning:</h3>  
7 - <p>This project doesn't exist on the Web Service. Do you want to <a href="/myprofile/<%= @page.profile.name %>/cms/destroy/<%= @page.id%>">delete</a> or <a href="/myprofile/<%= @page.profile.name %>/cms/edit/<%= @page.id%>">save it again</a>?</p>  
8 - <% else %>  
9 - <%= @page.errors[:base] %>  
10 - <% end %>  
11 -<% else %>  
12 -  
13 - <table>  
14 - <tr>  
15 - <td><%= _('Name') %></td>  
16 - <td><%= @project.name %></td>  
17 - </tr>  
18 - <tr>  
19 - <td><%= _('License') %></td>  
20 - <td><%= @project.license %></td>  
21 - </tr>  
22 - <tr>  
23 - <td><%= _('Description') %></td>  
24 - <td><%= @project.description %></td>  
25 - </tr>  
26 - <tr>  
27 - <td><%= _('Repository type') %></td>  
28 - <td><%= @project.repository.type %></td>  
29 - </tr>  
30 - <tr>  
31 - <td><%= _('Repository address') %></td>  
32 - <td><%= @project.repository.address %></td>  
33 - </tr>  
34 - <tr>  
35 - <td><%= _('Configuration') %></td>  
36 - <td><%= @project.configuration_name %></td>  
37 - </tr>  
38 - <tr>  
39 - <td><%= _('Periodicity') %></td>  
40 - <td><%= MezuroPlugin::Helpers::ContentViewerHelper.get_periodicity_option(@page.periodicity_in_days) %></td>  
41 - </tr>  
42 - <tr>  
43 - <td><%= _('Status')%></td>  
44 - <td>  
45 - <div id="project-state"><%= @project.state %></div>  
46 - <div id="msg-time"></div>  
47 - </td>  
48 - </tr>  
49 - </table>  
50 -  
51 - <br />  
52 -  
53 - <div id="project-result" data-profile="<%= @page.profile.identifier %>" data-content="<%= @page.id %>"  
54 - data-project-name="<%= @project.name %>">  
55 - </div>  
56 - <div id="project-tree"></div>  
57 - <div id="module-result">  
58 - </div>  
59 -<% end %>  
plugins/mezuro/views/project/show_project.rhtml
@@ -1,59 +0,0 @@ @@ -1,59 +0,0 @@
1 -<script src="/plugins/mezuro/javascripts/project_content.js" type="text/javascript"></script>  
2 -  
3 -<% @project = @page.project %>  
4 -<% unless @page.errors[:base].nil? %>  
5 - <% if @page.errors[:base] =~ /There is no project named/ %>  
6 - <h3>Warning:</h3>  
7 - <p>This project doesn't exist on the Web Service. Do you want to <a href="/myprofile/<%= @page.profile.name %>/cms/destroy/<%= @page.id%>">delete</a> or <a href="/myprofile/<%= @page.profile.name %>/cms/edit/<%= @page.id%>">save it again</a>?</p>  
8 - <% else %>  
9 - <%= @page.errors[:base] %>  
10 - <% end %>  
11 -<% else %>  
12 -  
13 - <table>  
14 - <tr>  
15 - <td><%= _('Name') %></td>  
16 - <td><%= @project.name %></td>  
17 - </tr>  
18 - <tr>  
19 - <td><%= _('License') %></td>  
20 - <td><%= @project.license %></td>  
21 - </tr>  
22 - <tr>  
23 - <td><%= _('Description') %></td>  
24 - <td><%= @project.description %></td>  
25 - </tr>  
26 - <tr>  
27 - <td><%= _('Repository type') %></td>  
28 - <td><%= @project.repository.type %></td>  
29 - </tr>  
30 - <tr>  
31 - <td><%= _('Repository address') %></td>  
32 - <td><%= @project.repository.address %></td>  
33 - </tr>  
34 - <tr>  
35 - <td><%= _('Configuration') %></td>  
36 - <td><%= @project.configuration_name %></td>  
37 - </tr>  
38 - <tr>  
39 - <td><%= _('Periodicity') %></td>  
40 - <td><%= MezuroPlugin::Helpers::ContentViewerHelper.get_periodicity_option(@page.periodicity_in_days) %></td>  
41 - </tr>  
42 - <tr>  
43 - <td><%= _('Status')%></td>  
44 - <td>  
45 - <div id="project-state"><%= @project.state %></div>  
46 - <div id="msg-time"></div>  
47 - </td>  
48 - </tr>  
49 - </table>  
50 -  
51 - <br />  
52 -  
53 - <div id="project-result" data-profile="<%= @page.profile.identifier %>" data-content="<%= @page.id %>"  
54 - data-project-name="<%= @project.name %>">  
55 - </div>  
56 - <div id="project-tree"></div>  
57 - <div id="module-result">  
58 - </div>  
59 -<% end %>