Commit e86864395b0f47ac34b4926d2d3c46d95bae75e1
Committed by
Paulo Meireles
1 parent
077b3df7
Exists in
master
and in
29 other branches
[Mezuro] added history to grade value
Showing
6 changed files
with
54 additions
and
27 deletions
Show diff stats
plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
@@ -43,8 +43,16 @@ class MezuroPluginProfileController < ProfileController | @@ -43,8 +43,16 @@ class MezuroPluginProfileController < ProfileController | ||
43 | metric_name = params[:metric_name] | 43 | metric_name = params[:metric_name] |
44 | content = profile.articles.find(params[:id]) | 44 | content = profile.articles.find(params[:id]) |
45 | module_history = content.result_history(params[:module_name]) | 45 | module_history = content.result_history(params[:module_name]) |
46 | - date_history = module_history.collect { |x| x.date } | ||
47 | - metric_history = module_history.collect { |x| (x.metric_results.select { |y| y.metric.name.delete("() ") == metric_name })[0] } | ||
48 | - render :partial => 'content_viewer/metric_history', :locals => {:metric_history => metric_history, :date_history => date_history } | 46 | + date_history = module_history.collect { |module_result| module_result.date } |
47 | + score_history = (module_history.collect { |module_result| (module_result.metric_results.select { |metric_result| metric_result.metric.name.delete("() ") == metric_name })[0] }).collect { |metric_result| metric_result.value } | ||
48 | + render :partial => 'content_viewer/score_history', :locals => {:score_history => score_history, :date_history => date_history } | ||
49 | + end | ||
50 | + | ||
51 | + def module_grade_history | ||
52 | + content = profile.articles.find(params[:id]) | ||
53 | + modules_results = content.result_history(params[:module_name]) | ||
54 | + date_history = modules_results.collect { |module_result| module_result.date } | ||
55 | + score_history = modules_results.collect { |module_result| module_result.grade } | ||
56 | + render :partial => 'content_viewer/score_history', :locals => {:date_history => date_history, :score_history => score_history } | ||
49 | end | 57 | end |
50 | end | 58 | end |
plugins/mezuro/public/javascripts/project_content.js
@@ -22,7 +22,8 @@ function display_metric_history() { | @@ -22,7 +22,8 @@ function display_metric_history() { | ||
22 | } | 22 | } |
23 | 23 | ||
24 | function display_grade_history() { | 24 | function display_grade_history() { |
25 | - alert(jQuery(this).attr('show-grade-history')); | 25 | + var module_name = jQuery(this).attr('show-grade-history'); |
26 | + callAction('module_grade_history', {module_name: module_name}, show_grades); | ||
26 | return false; | 27 | return false; |
27 | } | 28 | } |
28 | 29 | ||
@@ -30,6 +31,10 @@ function show_metrics(content) { | @@ -30,6 +31,10 @@ function show_metrics(content) { | ||
30 | jQuery('#historical-' + metricName).html(content); | 31 | jQuery('#historical-' + metricName).html(content); |
31 | } | 32 | } |
32 | 33 | ||
34 | +function show_grades(content) { | ||
35 | + jQuery('#historical-grade').html(content); | ||
36 | +} | ||
37 | + | ||
33 | function toggle_mezuro(){ | 38 | function toggle_mezuro(){ |
34 | var element = jQuery(this).attr('data-show'); | 39 | var element = jQuery(this).attr('data-show'); |
35 | jQuery(element).toggle(); | 40 | jQuery(element).toggle(); |
plugins/mezuro/test/functional/mezuro_plugin_profile_controller_test.rb
@@ -20,7 +20,7 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | @@ -20,7 +20,7 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | ||
20 | @project = @project_result.project | 20 | @project = @project_result.project |
21 | @name = @project.name | 21 | @name = @project.name |
22 | 22 | ||
23 | - @date = "2012-04-13T20:39:41+04:00" | 23 | + @date = "2012-04-13T20:39:41+04:00" |
24 | end | 24 | end |
25 | 25 | ||
26 | should 'not find module result for inexistent project content' do | 26 | should 'not find module result for inexistent project content' do |
@@ -92,7 +92,7 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | @@ -92,7 +92,7 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | ||
92 | end | 92 | end |
93 | 93 | ||
94 | should 'get project tree without date' do | 94 | should 'get project tree without date' do |
95 | - create_project_content | 95 | + create_project_content |
96 | Kalibro::Client::ProjectResultClient.expects(:last_result).with(@name).returns(@project_result) | 96 | Kalibro::Client::ProjectResultClient.expects(:last_result).with(@name).returns(@project_result) |
97 | Kalibro::Client::ProjectClient.expects(:project).with(@name).returns(@project) | 97 | Kalibro::Client::ProjectClient.expects(:project).with(@name).returns(@project) |
98 | get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @name | 98 | get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @name |
@@ -101,13 +101,23 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | @@ -101,13 +101,23 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | ||
101 | end | 101 | end |
102 | 102 | ||
103 | should 'get project tree from a specific date' do | 103 | should 'get project tree from a specific date' do |
104 | - create_project_content | 104 | + create_project_content |
105 | mock_project_result | 105 | mock_project_result |
106 | Kalibro::Client::ProjectClient.expects(:project).with(@name).returns(@project) | 106 | Kalibro::Client::ProjectClient.expects(:project).with(@name).returns(@project) |
107 | get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @name, :date => "2012-04-13T20:39:41+04:00" | 107 | get :project_tree, :profile => @profile.identifier, :id => @content.id, :module_name => @name, :date => "2012-04-13T20:39:41+04:00" |
108 | assert_response 200 | 108 | assert_response 200 |
109 | end | 109 | end |
110 | 110 | ||
111 | + should 'get grade history' do | ||
112 | + create_project_content | ||
113 | + client = mock | ||
114 | + Kalibro::Client::ModuleResultClient.expects(:new).returns(client) | ||
115 | + client.expects(:result_history).returns([@module_result]) | ||
116 | + get :module_grade_history, :profile => @profile.identifier, :id => @content.id, :module_name => @name | ||
117 | + assert_equal assings(:modules_results)[0].grade, 10.0 | ||
118 | + assert_response 200 | ||
119 | + end | ||
120 | + | ||
111 | private | 121 | private |
112 | 122 | ||
113 | def create_project_content | 123 | def create_project_content |
plugins/mezuro/views/content_viewer/_metric_history.rhtml
@@ -1,10 +0,0 @@ | @@ -1,10 +0,0 @@ | ||
1 | -<table width="100%"> | ||
2 | - <% cont = 0 %> | ||
3 | - <% date_history.each do |date| %> | ||
4 | - <tr> | ||
5 | - <td width="70%"> <b> <%= date %> </b> </td> | ||
6 | - <td width="30%"> <%= MezuroPlugin::Helpers::ContentViewerHelper.format_grade(metric_history[cont].value) %> </td> | ||
7 | - </tr> | ||
8 | - <% cont = cont + 1 %> | ||
9 | - <% end %> | ||
10 | - </table> |
plugins/mezuro/views/content_viewer/_module_result.rhtml
@@ -26,25 +26,29 @@ | @@ -26,25 +26,29 @@ | ||
26 | </tr> | 26 | </tr> |
27 | <tr class="<%= metric_result.metric.name.delete("() ")%>" style="display: none;"> | 27 | <tr class="<%= metric_result.metric.name.delete("() ")%>" style="display: none;"> |
28 | <td colspan="4"> | 28 | <td colspan="4"> |
29 | - <div id='historical-<%= metric_result.metric.name.delete("() ") %>'> | ||
30 | - <a href="#" show-metric-history="<%= metric_result.metric.name.delete("() ") %>" data-module-name="<%= the_module.name %>" data-metric-name="<%= metric_result.metric.name.delete("() ") %>"> <p style="text-indent: 3em;"> Get Historical Values </p> </a> | ||
31 | - </div> | 29 | + <div id='historical-<%= metric_result.metric.name.delete("() ") %>'> |
30 | + <a href="#" show-metric-history="<%= metric_result.metric.name.delete("() ") %>" data-module-name="<%= the_module.name %>" data-metric-name="<%= metric_result.metric.name.delete("() ") %>"> <p style="text-indent: 3em;"> Get Historical Values </p> </a> | ||
31 | + </div> | ||
32 | </td> | 32 | </td> |
33 | <td colspan="3" align="right"> | 33 | <td colspan="3" align="right"> |
34 | <%= range.comments.nil? ? '' : range.comments %> | 34 | <%= range.comments.nil? ? '' : range.comments %> |
35 | </td> | 35 | </td> |
36 | </tr> | 36 | </tr> |
37 | - <% end %> | 37 | + <% end %> |
38 | <% end %> | 38 | <% end %> |
39 | </tbody> | 39 | </tbody> |
40 | <tfoot> | 40 | <tfoot> |
41 | <tr> | 41 | <tr> |
42 | - <td colspan = "4" align = "right"> <a href="#" show-grade-history="<%= module_result.grade %>" > | ||
43 | - <strong> | ||
44 | - <%= _('Grade:') %> | ||
45 | - <%= "%.02f" % module_result.grade %> | ||
46 | - </strong> | ||
47 | - </a> | 42 | + <td colspan = "1"> |
43 | + <div id='historical-grade'> | ||
44 | + </td> | ||
45 | + <td colspan = "4" align = "right"> | ||
46 | + <a href="#" show-grade-history="<%= module_result.module.name %>" > | ||
47 | + <strong> | ||
48 | + <%= _('Grade:') %> | ||
49 | + <%= "%.02f" % module_result.grade %> | ||
50 | + </strong> | ||
51 | + </a> | ||
48 | </td> | 52 | </td> |
49 | </tr> | 53 | </tr> |
50 | </tfoot> | 54 | </tfoot> |
plugins/mezuro/views/content_viewer/_score_history.rhtml
0 → 100644
@@ -0,0 +1,10 @@ | @@ -0,0 +1,10 @@ | ||
1 | +<table width="100%"> | ||
2 | + <% cont = 0 %> | ||
3 | + <% date_history.each do |date| %> | ||
4 | + <tr> | ||
5 | + <td width="70%"> <b> <%= date %> </b> </td> | ||
6 | + <td width="30%"> <%= MezuroPlugin::Helpers::ContentViewerHelper.format_grade(score_history[cont]) %> </td> | ||
7 | + </tr> | ||
8 | + <% cont = cont + 1 %> | ||
9 | + <% end %> | ||
10 | + </table> |