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,7 +119,7 @@ class MezuroPluginProfileController < ProfileController | ||
119 | range.end = params[:range][:end] | 119 | range.end = params[:range][:end] |
120 | range.label = params[:range][:label] | 120 | range.label = params[:range][:label] |
121 | range.grade = params[:range][:grade] | 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 | range.comments = params[:range][:comments] | 123 | range.comments = params[:range][:comments] |
124 | range | 124 | range |
125 | end | 125 | end |
plugins/mezuro/test/functional/mezuro_plugin_profile_controller_test.rb
@@ -3,6 +3,9 @@ require 'test_helper' | @@ -3,6 +3,9 @@ require 'test_helper' | ||
3 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/module_result_fixtures" | 3 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/module_result_fixtures" |
4 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures" | 4 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_result_fixtures" |
5 | require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/error_fixtures" | 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 | class MezuroPluginProfileControllerTest < ActionController::TestCase | 10 | class MezuroPluginProfileControllerTest < ActionController::TestCase |
8 | 11 | ||
@@ -17,8 +20,11 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | @@ -17,8 +20,11 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | ||
17 | @project = @project_result.project | 20 | @project = @project_result.project |
18 | @name = @project.name | 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 | end | 28 | end |
23 | 29 | ||
24 | should 'not find module result for inexistent project content' do | 30 | should 'not find module result for inexistent project content' do |
@@ -79,11 +85,78 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | @@ -79,11 +85,78 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | ||
79 | end | 85 | end |
80 | 86 | ||
81 | should 'assign configuration and collector name in choose_metric' do | 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 | assert_equal assigns(:configuration_name), "test name" | 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 | end | 160 | end |
88 | 161 | ||
89 | private | 162 | private |
@@ -94,10 +167,4 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | @@ -94,10 +167,4 @@ class MezuroPluginProfileControllerTest < ActionController::TestCase | ||
94 | @content.save | 167 | @content.save |
95 | end | 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 | end | 170 | end |