Commit d7a79ac553650528cd996379479c65db38079908

Authored by Alessandro Palmeira + João M. M. Silva
Committed by Paulo Meireles
1 parent 92ed6364

[Mezuro] Split controller in two <not working yet>

plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
... ... @@ -40,139 +40,5 @@ class MezuroPluginProfileController &lt; ProfileController
40 40 source_tree = project_result.node_of(params[:module_name])
41 41 render :partial =>'content_viewer/source_tree', :locals => { :source_tree => source_tree, :project_name => content.project.name}
42 42 end
43   - def choose_base_tool
44   - @configuration_name = params[:configuration_name]
45   - @tool_names = Kalibro::Client::BaseToolClient.new
46   - end
47   -
48   - def choose_metric
49   - @configuration_name = params[:configuration_name]
50   - @collector_name = params[:collector_name]
51   - @collector = Kalibro::Client::BaseToolClient.new.base_tool(@collector_name)
52   - end
53   - def new_metric_configuration
54   - metric_name = params[:metric_name]
55   - collector_name = params[:collector_name]
56   - collector = Kalibro::Client::BaseToolClient.new.base_tool(collector_name)
57   - @metric = collector.supported_metrics.find {|metric| metric.name == metric_name}
58   - @configuration_name = params[:configuration_name]
59   - end
60   - def edit_metric_configuration
61   - metric_name = params[:metric_name]
62   - @configuration_name = params[:configuration_name]
63   - @metric_configuration = Kalibro::Client::MetricConfigurationClient.new.metric_configuration(@configuration_name, metric_name)
64   - @metric = @metric_configuration.metric
65   - end
66   - def create_metric_configuration
67   - @configuration_name = params[:configuration_name]
68   - metric_configuration = new_metric_configuration_instance
69   - Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name)
70   - redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
71   - end
72   -
73   - def update_metric_configuration
74   - @configuration_name = params[:configuration_name]
75   - metric_name = params[:metric][:name]
76   - metric_configuration = Kalibro::Client::MetricConfigurationClient.new.metric_configuration(@configuration_name, metric_name)
77   - assign_metric_configuration_instance (metric_configuration)
78   - Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name)
79   - redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
80   - end
81   -
82   - def new_range
83   - @metric_name = params[:metric_name]
84   - @configuration_name = params[:configuration_name]
85   - end
86   -
87   - def edit_range
88   - @metric_name = params[:metric_name]
89   - @configuration_name = params[:configuration_name]
90   - @beginning_id = params[:beginning_id]
91   -
92   - metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
93   - metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, @metric_name)
94   - @range = metric_configuration.ranges.find{ |range| range.beginning == @beginning_id.to_f }
95   - end
96   -
97   - def create_range
98   - @range = new_range_instance
99   - configuration_name = params[:configuration_name]
100   - metric_name = params[:metric_name]
101   - beginning_id = params[:beginning_id]
102   - metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
103   - metric_configuration = metric_configuration_client.metric_configuration(configuration_name, metric_name)
104   - metric_configuration.add_range(@range)
105   - metric_configuration_client.save(metric_configuration, configuration_name)
106   - end
107 43  
108   - def update_range
109   - metric_name = params[:metric_name]
110   - configuration_name = params[:configuration_name]
111   - beginning_id = params[:beginning_id]
112   - metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
113   - metric_configuration = metric_configuration_client.metric_configuration(configuration_name, metric_name)
114   - index = metric_configuration.ranges.index{ |range| range.beginning == beginning_id.to_f }
115   - metric_configuration.ranges[index] = new_range_instance
116   - Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, configuration_name)
117   - end
118   -
119   - def remove_range
120   - configuration_name = params[:configuration_name]
121   - metric_name = params[:metric_name]
122   - beginning_id = params[:range_beginning]
123   - metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
124   - metric_configuration = metric_configuration_client.metric_configuration(configuration_name, metric_name)
125   - metric_configuration.ranges.delete_if { |range| range.beginning == beginning_id.to_f }.inspect
126   - Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, configuration_name)
127   - formatted_configuration_name = configuration_name.gsub(/\s/, '+')
128   - formatted_metric_name = metric_name.gsub(/\s/, '+')
129   - redirect_to "/profile/#{profile.identifier}/plugins/mezuro/edit_metric_configuration?configuration_name=#{formatted_configuration_name}&metric_name=#{formatted_metric_name}"
130   - end
131   -
132   - def remove_metric_configuration
133   - configuration_name = params[:configuration_name]
134   - metric_name = params[:metric_name]
135   - Kalibro::Client::MetricConfigurationClient.new.remove(configuration_name, metric_name)
136   - redirect_to "/#{profile.identifier}/#{configuration_name.downcase.gsub(/\s/, '-')}"
137   - end
138   -
139   - def module_metrics_history
140   - metric_name = params[:metric_name]
141   - content = profile.articles.find(params[:id])
142   - module_history = content.result_history(params[:module_name])
143   - date_history = module_history.collect { |x| x.date }
144   - metric_history = module_history.collect { |x| (x.metric_results.select { |y| y.metric.name.delete("() ") == metric_name })[0] }
145   - render :partial => 'content_viewer/metric_history', :locals => {:metric_history => metric_history, :date_history => date_history }
146   - end
147   - private
148   -
149   - def new_metric_configuration_instance
150   - metric_configuration = Kalibro::Entities::MetricConfiguration.new
151   - metric_configuration.metric = Kalibro::Entities::NativeMetric.new
152   - assign_metric_configuration_instance (metric_configuration)
153   - end
154   -
155   - def assign_metric_configuration_instance (metric_configuration)
156   - metric_configuration.metric.name = params[:metric][:name]
157   - metric_configuration.metric.description = params[:description]
158   - metric_configuration.metric.origin = params[:metric][:origin]
159   - metric_configuration.metric.scope = params[:scope]
160   - metric_configuration.metric.language = params[:language]
161   - metric_configuration.code = params[:metric_configuration][:code]
162   - metric_configuration.weight = params[:metric_configuration][:weight]
163   - metric_configuration.aggregation_form = params[:metric_configuration][:aggregation_form]
164   - metric_configuration
165   - end
166   -
167   - def new_range_instance
168   - range = Kalibro::Entities::Range.new
169   - range.beginning = params[:range][:beginning]
170   - range.end = params[:range][:end]
171   - range.label = params[:range][:label]
172   - range.grade = params[:range][:grade]
173   - range.color = params[:range][:color]
174   - range.comments = params[:range][:comments]
175   - range
176   - end
177   -
178 44 end
... ...
plugins/mezuro/test/functional/mezuro_plugin_profile_controller_test.rb
... ... @@ -20,13 +20,7 @@ class MezuroPluginProfileControllerTest &lt; ActionController::TestCase
20 20 @project = @project_result.project
21 21 @name = @project.name
22 22  
23   - @collector = BaseToolFixtures.analizo
24   - @base_tool_client = Kalibro::Client::BaseToolClient.new
25   - @metric = NativeMetricFixtures.amloc
26   - @metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
27   - @metric_configuration = MetricConfigurationFixtures.amloc_configuration
28   -
29   - @date = "2012-04-13T20:39:41+04:00"
  23 + @date = "2012-04-13T20:39:41+04:00"
30 24 end
31 25  
32 26 should 'not find module result for inexistent project content' do
... ... @@ -81,91 +75,6 @@ class MezuroPluginProfileControllerTest &lt; ActionController::TestCase
81 75 assert_select('h5', 'Metric results for: Qt-Calculator (APPLICATION)')
82 76 end
83 77  
84   - should 'assign configuration name in choose_base_tool' do
85   - get :choose_base_tool, :profile => @profile.identifier, :configuration_name => "test name"
86   - assert_equal assigns(:configuration_name), "test name"
87   - end
88   -
89   - should 'create base tool client' do
90   - get :choose_base_tool, :profile => @profile.identifier, :configuration_name => "test name"
91   - assert assigns(:tool_names).instance_of?(Kalibro::Client::BaseToolClient)
92   - end
93   -
94   - should 'assign configuration and collector name in choose_metric' do
95   - Kalibro::Client::BaseToolClient.expects(:new).returns(@base_tool_client)
96   - @base_tool_client.expects(:base_tool).with(@collector.name).returns(@collector)
97   - get :choose_metric, :profile => @profile.identifier, :configuration_name => "test name", :collector_name => "Analizo"
98   - assert_equal assigns(:configuration_name), "test name"
99   - assert_equal assigns(:collector_name), "Analizo"
100   - end
101   -
102   - should 'get collector by name' do
103   - Kalibro::Client::BaseToolClient.expects(:new).returns(@base_tool_client)
104   - @base_tool_client.expects(:base_tool).with(@collector.name).returns(@collector)
105   - get :choose_metric, :profile => @profile.identifier, :configuration_name => "test name", :collector_name => "Analizo"
106   - assert_equal assigns(:collector), @collector
107   - end
108   -
109   - should 'get choosed native metric and configuration name' do
110   - Kalibro::Client::BaseToolClient.expects(:new).returns(@base_tool_client)
111   - @base_tool_client.expects(:base_tool).with(@collector.name).returns(@collector)
112   - get :new_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :collector_name => "Analizo", :metric_name => @metric.name
113   - assert_equal assigns(:configuration_name), "test name"
114   - assert_equal assigns(:metric), @metric
115   - end
116   -
117   - should 'assign configuration name and get metric_configuration' do
118   - Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client)
119   - @metric_configuration_client.expects(:metric_configuration).with("test name", @metric.name).returns(@metric_configuration)
120   - get :edit_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :metric_name => @metric.name
121   - assert_equal assigns(:configuration_name), "test name"
122   - assert_equal assigns(:metric_configuration), @metric_configuration
123   - assert_equal assigns(:metric), @metric_configuration.metric
124   - end
125   -
126   - should 'test metric creation' do
127   - Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client)
128   - @metric_configuration_client.expects(:save)
129   - get :create_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :description => @metric.description,
130   - :scope => @metric.scope, :language => @metric.language, :metric => { :name => @metric.name, :origin => @metric.origin},
131   - :metric_configuration => { :code => @metric_configuration.code, :weight => @metric_configuration.code, :aggregation => @metric_configuration.aggregation_form }
132   - assert_equal assigns(:configuration_name), "test name"
133   - assert_response 302
134   - end
135   -
136   - should 'test metric edition' do
137   - Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client)
138   - @metric_configuration_client.expects(:save)
139   - get :create_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :description => @metric.description,
140   - :scope => @metric.scope, :language => @metric.language, :metric => { :name => @metric.name, :origin => @metric.origin},
141   - :metric_configuration => { :code => @metric_configuration.code, :weight => @metric_configuration.code, :aggregation => @metric_configuration.aggregation_form }
142   - assert_equal assigns(:configuration_name), "test name"
143   - assert_response 302
144   - end
145   -
146   - should 'assign configuration name and metric name to new range' do
147   - get :new_range, :profile => @profile.identifier, :configuration_name => "test name", :metric_name => @metric.name
148   - assert_equal assigns(:configuration_name), "test name"
149   - assert_equal assigns(:metric_name), @metric.name
150   - end
151   -
152   - should 'create instance range' do
153   - Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client)
154   - @metric_configuration_client.expects(:metric_configuration).with("test name", @metric.name).returns(@metric_configuration)
155   - @metric_configuration_client.expects(:save)
156   - range = @metric_configuration.ranges[0]
157   - get :create_range, :profile => @profile.identifier, :range => { :beginning => range.beginning, :end => range.end, :label => range.label,
158   - :grade => range.grade, :color => range.color, :comments => range.comments }, :configuration_name => "test name", :metric_name => @metric.name
159   - assert assigns(:range).instance_of?(Kalibro::Entities::Range)
160   - end
161   -
162   - should 'redirect from remove metric configuration' do
163   - Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client)
164   - @metric_configuration_client.expects(:remove)
165   - get :remove_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :metric_name => @metric.name
166   - assert_response 302
167   - end
168   -
169 78 private
170 79  
171 80 def create_project_content
... ...