Commit 8cf59529a169ff0eb78e8a62b86867fe4f9439e9
Committed by
Alessandro Palmeira
1 parent
e43e7fec
Exists in
master
and in
29 other branches
[Mezuro] Completed to write tests for controller
Showing
2 changed files
with
80 additions
and
13 deletions
Show diff stats
plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
... | ... | @@ -119,7 +119,7 @@ class MezuroPluginProfileController < ProfileController |
119 | 119 | range.end = params[:range][:end] |
120 | 120 | range.label = params[:range][:label] |
121 | 121 | range.grade = params[:range][:grade] |
122 | - range.color = "10" + params[:range][:color] #FIXME when you have js color pallete | |
122 | + range.color = params[:range][:color] | |
123 | 123 | range.comments = params[:range][:comments] |
124 | 124 | range |
125 | 125 | end | ... | ... |
plugins/mezuro/test/functional/mezuro_plugin_profile_controller_test.rb
... | ... | @@ -3,6 +3,9 @@ require 'test_helper' |
3 | 3 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/module_result_fixtures" |
4 | 4 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures" |
5 | 5 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/error_fixtures" |
6 | +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/base_tool_fixtures" | |
7 | +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/native_metric_fixtures" | |
8 | +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/metric_configuration_fixtures" | |
6 | 9 | |
7 | 10 | class MezuroPluginProfileControllerTest < ActionController::TestCase |
8 | 11 | |
... | ... | @@ -17,8 +20,11 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase |
17 | 20 | @project = @project_result.project |
18 | 21 | @name = @project.name |
19 | 22 | |
20 | - @collector = create_collector | |
21 | - @client = Kalibro::Client::BaseToolClient.new | |
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 | |
22 | 28 | end |
23 | 29 | |
24 | 30 | should 'not find module result for inexistent project content' do |
... | ... | @@ -79,11 +85,78 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase |
79 | 85 | end |
80 | 86 | |
81 | 87 | should 'assign configuration and collector name in choose_metric' do |
82 | - Kalibro::Client::BaseToolClient.expects(:new).returns(@client) | |
83 | - @client.expects(:base_tool).with(@collector.name).returns(@collector) | |
84 | - get :choose_metric, :profile => @profile.identifier, :configuration_name => "test name", :collector_name => "Collector A" | |
88 | + Kalibro::Client::BaseToolClient.expects(:new).returns(@base_tool_client) | |
89 | + @base_tool_client.expects(:base_tool).with(@collector.name).returns(@collector) | |
90 | + get :choose_metric, :profile => @profile.identifier, :configuration_name => "test name", :collector_name => "Analizo" | |
85 | 91 | assert_equal assigns(:configuration_name), "test name" |
86 | - assert_equal assigns(:collector_name), "Collector A" | |
92 | + assert_equal assigns(:collector_name), "Analizo" | |
93 | + end | |
94 | + | |
95 | + should 'get collector by name' do | |
96 | + Kalibro::Client::BaseToolClient.expects(:new).returns(@base_tool_client) | |
97 | + @base_tool_client.expects(:base_tool).with(@collector.name).returns(@collector) | |
98 | + get :choose_metric, :profile => @profile.identifier, :configuration_name => "test name", :collector_name => "Analizo" | |
99 | + assert_equal assigns(:collector), @collector | |
100 | + end | |
101 | + | |
102 | + should 'get choosed native metric and configuration 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 :new_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :collector_name => "Analizo", :metric_name => @metric.name | |
106 | + assert_equal assigns(:configuration_name), "test name" | |
107 | + assert_equal assigns(:metric), @metric | |
108 | + end | |
109 | + | |
110 | + should 'assign configuration name and get metric_configuration' do | |
111 | + Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client) | |
112 | + @metric_configuration_client.expects(:metric_configuration).with("test name", @metric.name).returns(@metric_configuration) | |
113 | + get :edit_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :metric_name => @metric.name | |
114 | + assert_equal assigns(:configuration_name), "test name" | |
115 | + assert_equal assigns(:metric_configuration), @metric_configuration | |
116 | + assert_equal assigns(:metric), @metric_configuration.metric | |
117 | + end | |
118 | + | |
119 | + should 'test metric creation' do | |
120 | + Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client) | |
121 | + @metric_configuration_client.expects(:save) | |
122 | + get :create_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :description => @metric.description, | |
123 | + :scope => @metric.scope, :language => @metric.language, :metric => { :name => @metric.name, :origin => @metric.origin}, | |
124 | + :metric_configuration => { :code => @metric_configuration.code, :weight => @metric_configuration.code, :aggregation => @metric_configuration.aggregation_form } | |
125 | + assert_equal assigns(:configuration_name), "test name" | |
126 | + assert_response 302 | |
127 | + end | |
128 | + | |
129 | + should 'test metric edition' do | |
130 | + Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client) | |
131 | + @metric_configuration_client.expects(:save) | |
132 | + get :create_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :description => @metric.description, | |
133 | + :scope => @metric.scope, :language => @metric.language, :metric => { :name => @metric.name, :origin => @metric.origin}, | |
134 | + :metric_configuration => { :code => @metric_configuration.code, :weight => @metric_configuration.code, :aggregation => @metric_configuration.aggregation_form } | |
135 | + assert_equal assigns(:configuration_name), "test name" | |
136 | + assert_response 302 | |
137 | + end | |
138 | + | |
139 | + should 'assign configuration name and metric name to new range' do | |
140 | + get :new_range, :profile => @profile.identifier, :configuration_name => "test name", :metric_name => @metric.name | |
141 | + assert_equal assigns(:configuration_name), "test name" | |
142 | + assert_equal assigns(:metric_name), @metric.name | |
143 | + end | |
144 | + | |
145 | + should 'create instance range' do | |
146 | + Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client) | |
147 | + @metric_configuration_client.expects(:metric_configuration).with("test name", @metric.name).returns(@metric_configuration) | |
148 | + @metric_configuration_client.expects(:save) | |
149 | + range = @metric_configuration.ranges[0] | |
150 | + get :create_range, :profile => @profile.identifier, :range => { :beginning => range.beginning, :end => range.end, :label => range.label, | |
151 | + :grade => range.grade, :color => range.color, :comments => range.comments }, :configuration_name => "test name", :metric_name => @metric.name | |
152 | + assert assigns(:range).instance_of?(Kalibro::Entities::Range) | |
153 | + end | |
154 | + | |
155 | + should 'redirect from remove metric configuration' do | |
156 | + Kalibro::Client::MetricConfigurationClient.expects(:new).returns(@metric_configuration_client) | |
157 | + @metric_configuration_client.expects(:remove) | |
158 | + get :remove_metric_configuration, :profile => @profile.identifier, :configuration_name => "test name", :metric_name => @metric.name | |
159 | + assert_response 302 | |
87 | 160 | end |
88 | 161 | |
89 | 162 | private |
... | ... | @@ -94,10 +167,4 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase |
94 | 167 | @content.save |
95 | 168 | end |
96 | 169 | |
97 | - def create_collector | |
98 | - collector = Kalibro::Entities::BaseTool.new | |
99 | - collector.name = "Collector A" | |
100 | - collector.supported_metrics = [] | |
101 | - collector | |
102 | - end | |
103 | 170 | end | ... | ... |