Commit 3e26c2be4f6e87b47c3d3cc6515a181559253751
1 parent
2ca9dda6
Exists in
master
and in
29 other branches
[Mezuro] Refactoring mezuro_plugin_base_tool controller
Showing
7 changed files
with
95 additions
and
32 deletions
Show diff stats
plugins/mezuro/controllers/mezuro_plugin_myprofile_controller.rb
@@ -11,18 +11,6 @@ class MezuroPluginMyprofileController < ProfileController | @@ -11,18 +11,6 @@ class MezuroPluginMyprofileController < ProfileController | ||
11 | @message = params[:message] | 11 | @message = params[:message] |
12 | end | 12 | end |
13 | 13 | ||
14 | - def choose_base_tool | ||
15 | - @configuration_content = profile.articles.find(params[:id]) | ||
16 | - @base_tools = Kalibro::BaseTool.all_names | ||
17 | - end | ||
18 | - | ||
19 | - def choose_metric | ||
20 | - @configuration_content = profile.articles.find(params[:id]) | ||
21 | - @base_tool = params[:base_tool] | ||
22 | - base_tool = Kalibro::BaseTool.find_by_name(@base_tool) | ||
23 | - @supported_metrics = base_tool.nil? ? [] : base_tool.supported_metrics | ||
24 | - end | ||
25 | - | ||
26 | def new_metric_configuration | 14 | def new_metric_configuration |
27 | @configuration_content = profile.articles.find(params[:id]) | 15 | @configuration_content = profile.articles.find(params[:id]) |
28 | @metric = Kalibro::BaseTool.find_by_name(params[:base_tool]).metric params[:metric_name] | 16 | @metric = Kalibro::BaseTool.find_by_name(params[:base_tool]).metric params[:metric_name] |
plugins/mezuro/controllers/myprofile/mezuro_plugin_base_tool_controller.rb
0 → 100644
@@ -0,0 +1,17 @@ | @@ -0,0 +1,17 @@ | ||
1 | +class MezuroPluginBaseToolController < MezuroPluginMyprofileController | ||
2 | + | ||
3 | + append_view_path File.join(File.dirname(__FILE__) + '/../../views') | ||
4 | + | ||
5 | + def choose_base_tool | ||
6 | + @configuration_content = profile.articles.find(params[:id]) | ||
7 | + @base_tools = Kalibro::BaseTool.all_names | ||
8 | + end | ||
9 | + | ||
10 | + def choose_metric | ||
11 | + @configuration_content = profile.articles.find(params[:id]) | ||
12 | + @base_tool = params[:base_tool] | ||
13 | + base_tool = Kalibro::BaseTool.find_by_name(@base_tool) | ||
14 | + @supported_metrics = base_tool.nil? ? [] : base_tool.supported_metrics | ||
15 | + end | ||
16 | + | ||
17 | +end |
plugins/mezuro/test/functional/mezuro_plugin_myprofile_controller_test.rb
@@ -36,23 +36,6 @@ class MezuroPluginMyprofileControllerTest < ActionController::TestCase | @@ -36,23 +36,6 @@ class MezuroPluginMyprofileControllerTest < ActionController::TestCase | ||
36 | @compound_hash.delete :attributes! | 36 | @compound_hash.delete :attributes! |
37 | end | 37 | end |
38 | 38 | ||
39 | - should 'test choose base tool' do | ||
40 | - Kalibro::BaseTool.expects(:request).with("BaseTool", :get_base_tool_names).returns({:base_tool_name => @base_tool.name}) | ||
41 | - get :choose_base_tool, :profile => @profile.identifier, :id => @content.id | ||
42 | - assert_equal [@base_tool.name], assigns(:base_tools) | ||
43 | - assert_equal @content, assigns(:configuration_content) | ||
44 | - assert_response 200 | ||
45 | - end | ||
46 | - | ||
47 | - should 'test choose metric' do | ||
48 | - Kalibro::BaseTool.expects(:request).with("BaseTool", :get_base_tool, {:base_tool_name => @base_tool.name}).returns({:base_tool => @base_tool_hash}) | ||
49 | - get :choose_metric, :profile => @profile.identifier, :id => @content.id, :base_tool => @base_tool.name | ||
50 | - assert_equal @content, assigns(:configuration_content) | ||
51 | - assert_equal @base_tool.name, assigns(:base_tool) | ||
52 | - assert_equal @base_tool.supported_metric[0].name, assigns(:supported_metrics)[0].name | ||
53 | - assert_response 200 | ||
54 | - end | ||
55 | - | ||
56 | should 'test new metric configuration' do | 39 | should 'test new metric configuration' do |
57 | Kalibro::BaseTool.expects(:request).with("BaseTool", :get_base_tool, {:base_tool_name => @base_tool.name}).returns({:base_tool => @base_tool_hash}) | 40 | Kalibro::BaseTool.expects(:request).with("BaseTool", :get_base_tool, {:base_tool_name => @base_tool.name}).returns({:base_tool => @base_tool_hash}) |
58 | get :new_metric_configuration, :profile => @profile.identifier, :id => @content.id, :base_tool => @base_tool.name, :metric_name => @metric.name | 41 | get :new_metric_configuration, :profile => @profile.identifier, :id => @content.id, :base_tool => @base_tool.name, :metric_name => @metric.name |
@@ -60,8 +43,7 @@ class MezuroPluginMyprofileControllerTest < ActionController::TestCase | @@ -60,8 +43,7 @@ class MezuroPluginMyprofileControllerTest < ActionController::TestCase | ||
60 | assert_equal @metric.name, assigns(:metric).name | 43 | assert_equal @metric.name, assigns(:metric).name |
61 | assert_response 200 | 44 | assert_response 200 |
62 | end | 45 | end |
63 | - | ||
64 | - | 46 | + |
65 | should 'test new compound metric configuration' do | 47 | should 'test new compound metric configuration' do |
66 | Kalibro::Configuration.expects(:request).with("Configuration", :get_configuration, {:configuration_name => @content.name}).returns({:configuration => @configuration_hash}) | 48 | Kalibro::Configuration.expects(:request).with("Configuration", :get_configuration, {:configuration_name => @content.name}).returns({:configuration => @configuration_hash}) |
67 | get :new_compound_metric_configuration, :profile => @profile.identifier, :id => @content.id | 49 | get :new_compound_metric_configuration, :profile => @profile.identifier, :id => @content.id |
plugins/mezuro/test/functional/myprofile/mezuro_plugin_base_tool_controller_test.rb
0 → 100644
@@ -0,0 +1,42 @@ | @@ -0,0 +1,42 @@ | ||
1 | +require 'test_helper' | ||
2 | + | ||
3 | +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/base_tool_fixtures" | ||
4 | +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/configuration_fixtures" | ||
5 | + | ||
6 | +class MezuroPluginBaseToolControllerTest < ActionController::TestCase | ||
7 | + | ||
8 | + def setup | ||
9 | + @controller = MezuroPluginBaseToolController.new | ||
10 | + @request = ActionController::TestRequest.new | ||
11 | + @response = ActionController::TestResponse.new | ||
12 | + @profile = fast_create(Community) | ||
13 | + | ||
14 | + @base_tool = BaseToolFixtures.base_tool | ||
15 | + @base_tool_hash = BaseToolFixtures.base_tool_hash | ||
16 | + @configuration = ConfigurationFixtures.configuration | ||
17 | + | ||
18 | + Kalibro::Configuration.expects(:all_names).returns([]) | ||
19 | + @content = MezuroPlugin::ConfigurationContent.new(:profile => @profile, :name => @configuration.name) | ||
20 | + @content.expects(:send_kalibro_configuration_to_service).returns(nil) | ||
21 | + @content.stubs(:solr_save) | ||
22 | + @content.save | ||
23 | + end | ||
24 | + | ||
25 | + should 'test choose base tool' do | ||
26 | + Kalibro::BaseTool.expects(:request).with("BaseTool", :get_base_tool_names).returns({:base_tool_name => @base_tool.name}) | ||
27 | + get :choose_base_tool, :profile => @profile.identifier, :id => @content.id | ||
28 | + assert_equal [@base_tool.name], assigns(:base_tools) | ||
29 | + assert_equal @content, assigns(:configuration_content) | ||
30 | + assert_response 200 | ||
31 | + end | ||
32 | + | ||
33 | + should 'test choose metric' do | ||
34 | + Kalibro::BaseTool.expects(:request).with("BaseTool", :get_base_tool, {:base_tool_name => @base_tool.name}).returns({:base_tool => @base_tool_hash}) | ||
35 | + get :choose_metric, :profile => @profile.identifier, :id => @content.id, :base_tool => @base_tool.name | ||
36 | + assert_equal @content, assigns(:configuration_content) | ||
37 | + assert_equal @base_tool.name, assigns(:base_tool) | ||
38 | + assert_equal @base_tool.supported_metric[0].name, assigns(:supported_metrics)[0].name | ||
39 | + assert_response 200 | ||
40 | + end | ||
41 | + | ||
42 | +end |
plugins/mezuro/views/content_viewer/show_configuration.rhtml
@@ -22,7 +22,7 @@ | @@ -22,7 +22,7 @@ | ||
22 | 22 | ||
23 | <br/> | 23 | <br/> |
24 | 24 | ||
25 | - <%= link_to "#{image_tag ('/plugins/mezuro/images/plus.png')}Add Metric", :controller => "mezuro_plugin_myprofile", | 25 | + <%= link_to "#{image_tag ('/plugins/mezuro/images/plus.png')}Add Metric", :controller => "mezuro_plugin_base_tool", |
26 | :action => "choose_base_tool", :params => { :id => @configuration_content.id } %><br/> | 26 | :action => "choose_base_tool", :params => { :id => @configuration_content.id } %><br/> |
27 | 27 | ||
28 | <table> | 28 | <table> |
plugins/mezuro/views/mezuro_plugin_base_tool/choose_base_tool.html.erb
0 → 100644
@@ -0,0 +1,16 @@ | @@ -0,0 +1,16 @@ | ||
1 | +<h2><%= @configuration_content.name%> Configuration</h2> | ||
2 | + | ||
3 | +<%= link_to "New Compound Metric", :controller => "mezuro_plugin_myprofile", :action => "new_compound_metric_configuration", :params => | ||
4 | +{ :id => @configuration_content.id } %> | ||
5 | + | ||
6 | +<h5>Base Tools:</h5> | ||
7 | +<table id="project_info"> | ||
8 | + <% @base_tools.each do |base_tool| %> | ||
9 | + <tr> | ||
10 | + <td> | ||
11 | + <%= link_to base_tool, :controller => "mezuro_plugin_base_tool", :action => "choose_metric", :params => | ||
12 | + { :base_tool => base_tool, :id => @configuration_content.id} %> | ||
13 | + </td> | ||
14 | + </tr> | ||
15 | + <% end %> | ||
16 | +</table> |
plugins/mezuro/views/mezuro_plugin_base_tool/choose_metric.html.erb
0 → 100644
@@ -0,0 +1,18 @@ | @@ -0,0 +1,18 @@ | ||
1 | +<h2><%= @configuration_content.name %> Configuration</h2> | ||
2 | + | ||
3 | +<table id="project_info"> | ||
4 | + <tr> | ||
5 | + <h5>Metric Collector: <%= @base_tool %></h5> | ||
6 | + </tr> | ||
7 | + <tr> | ||
8 | + <h5>Choose a metric to add:</h5> | ||
9 | + </tr> | ||
10 | + <% @supported_metrics.each do |metric| %> | ||
11 | + <tr class="metric" title="<%= metric.name %>"> | ||
12 | + <td> | ||
13 | + <%= link_to metric.name, :controller => "mezuro_plugin_myprofile", :action => "new_metric_configuration", :params => {:metric_name => metric.name, | ||
14 | + :base_tool => @base_tool, :id => @configuration_content.id } %> | ||
15 | + </td> | ||
16 | + </tr> | ||
17 | + <% end %> | ||
18 | +</table> |