diff --git a/plugins/mezuro/lib/mezuro_plugin/configuration_content.rb b/plugins/mezuro/lib/mezuro_plugin/configuration_content.rb index f7b52e0..556ed00 100644 --- a/plugins/mezuro/lib/mezuro_plugin/configuration_content.rb +++ b/plugins/mezuro/lib/mezuro_plugin/configuration_content.rb @@ -32,18 +32,15 @@ class MezuroPlugin::ConfigurationContent < Article end def configuration_names_and_ids - all_names_and_ids = {} begin all_configurations = Kalibro::Configuration.all - if(!all_configurations.empty?) - all_configurations.each do |configuration| - all_names_and_ids[configuration.id] = configuration.name - end - end + all_names_and_ids = all_configurations.map { |configuration| [configuration.name, configuration.id] } + [["None", -1]] + (all_names_and_ids.sort { |x,y| x.first.downcase <=> y.first.downcase }) rescue Exception => exception errors.add_to_base(exception.message) + [["None", -1]] end - all_names_and_ids + end def description=(value) @@ -59,16 +56,16 @@ class MezuroPlugin::ConfigurationContent < Article @description end - def configuration_to_clone_name + def configuration_to_clone_id begin - @configuration_to_clone_name + @configuration_to_clone_id rescue Exception => exception nil end end - def configuration_to_clone_name=(value) - @configuration_to_clone_name = (value == "None") ? nil : value + def configuration_to_clone_id=(value) + @configuration_to_clone_id = (value == -1) ? nil : value end def metric_configurations @@ -93,7 +90,7 @@ class MezuroPlugin::ConfigurationContent < Article end def validate_configuration_name - existing = configuration_names_and_ids.values.map { |a| a.downcase} + existing = configuration_names_and_ids.map { |a| a.first.downcase} if existing.include?(name.downcase) errors.add_to_base("Configuration name already exists in Kalibro") @@ -111,11 +108,6 @@ class MezuroPlugin::ConfigurationContent < Article clone_configuration if cloning_configuration? end - def configuration_to_clone_id - @configuration_to_clone_id ||= (configuration_to_clone_name.nil?) ? nil : configuration_names_and_ids.index(configuration_to_clone_name) - @configuration_to_clone_id - end - def cloning_configuration? !configuration_to_clone_id.nil? end diff --git a/plugins/mezuro/test/fixtures/metric_configuration_fixtures.rb b/plugins/mezuro/test/fixtures/metric_configuration_fixtures.rb index 264ef87..fdcf7ef 100644 --- a/plugins/mezuro/test/fixtures/metric_configuration_fixtures.rb +++ b/plugins/mezuro/test/fixtures/metric_configuration_fixtures.rb @@ -18,7 +18,7 @@ class MetricConfigurationFixtures Kalibro::MetricConfiguration.new({ :code => 'amloc', :metric => MetricFixtures.amloc_hash, - :base_tool_name => MetricFixtures.amloc_hash[:origin], + :base_tool_name => "Analizo", :weight => "1.0", :aggregation_form => 'AVERAGE', :reading_group_id => "31", @@ -31,7 +31,7 @@ class MetricConfigurationFixtures :id => "42", :code => 'amloc', :metric => MetricFixtures.amloc_hash, - :base_tool_name => MetricFixtures.amloc_hash[:origin], + :base_tool_name => "Analizo", :weight => "1.0", :aggregation_form => 'AVERAGE', :reading_group_id => "31", diff --git a/plugins/mezuro/test/unit/mezuro_plugin/configuration_content_test.rb b/plugins/mezuro/test/unit/mezuro_plugin/configuration_content_test.rb index 6aa60cf..9a89b50 100644 --- a/plugins/mezuro/test/unit/mezuro_plugin/configuration_content_test.rb +++ b/plugins/mezuro/test/unit/mezuro_plugin/configuration_content_test.rb @@ -59,10 +59,9 @@ class ConfigurationContentTest < ActiveSupport::TestCase end should 'clone configuration' do - clone_name = @configuration.name - @content.configuration_to_clone_name = clone_name + clone_id = @configuration.id + @content.configuration_to_clone_id = clone_id Kalibro::Configuration.expects(:create).with(:id => @content.configuration_id, :name => @content.name, :description => @content.description).returns(@configuration) - Kalibro::Configuration.expects(:all).returns([@configuration]) Kalibro::MetricConfiguration.expects(:metric_configurations_of).with(@configuration.id).returns([@metric_configuration]) Kalibro::MetricConfiguration.expects(:request).returns(:metric_configuration_id => @metric_configuration.id) Kalibro::Range.expects(:ranges_of).with(@metric_configuration.id).returns([@range]) diff --git a/plugins/mezuro/views/cms/mezuro_plugin/_configuration_content.html.erb b/plugins/mezuro/views/cms/mezuro_plugin/_configuration_content.html.erb index ad8e98a..96e3a8c 100644 --- a/plugins/mezuro/views/cms/mezuro_plugin/_configuration_content.html.erb +++ b/plugins/mezuro/views/cms/mezuro_plugin/_configuration_content.html.erb @@ -2,7 +2,7 @@ <% kalibro_configuration = @article.title.nil? ? nil : @article.kalibro_configuration - kalibro_configuration_names = ["None"] + @article.configuration_names_and_ids.values.sort + configuration_names_and_ids = @article.configuration_names_and_ids %> <%= error_messages_for 'kalibro_configuration' %> @@ -20,7 +20,7 @@ <%= if kalibro_configuration.nil? required labelled_form_field _('Clone Configuration'), - f.select(:configuration_to_clone_name, kalibro_configuration_names) + f.select(:configuration_to_clone_id, configuration_names_and_ids) end %>
-- libgit2 0.21.2