diff --git a/app/controllers/base_metric_configurations_controller.rb b/app/controllers/base_metric_configurations_controller.rb index e00466b..b0f7903 100644 --- a/app/controllers/base_metric_configurations_controller.rb +++ b/app/controllers/base_metric_configurations_controller.rb @@ -16,7 +16,7 @@ class BaseMetricConfigurationsController < ApplicationController def show if metric_configuration @reading_group = ReadingGroup.find(metric_configuration.reading_group_id) - @mezuro_ranges = metric_configuration.mezuro_ranges + @mezuro_ranges = metric_configuration.kalibro_ranges metric_configuration.configuration_id = params[:mezuro_configuration_id].to_i else raise NotImplementedError diff --git a/app/models/metric_configuration.rb b/app/models/metric_configuration.rb index 579ff2f..c658d34 100644 --- a/app/models/metric_configuration.rb +++ b/app/models/metric_configuration.rb @@ -1,17 +1 @@ -require "validators/code_uniqueness_validator.rb" -require "validators/name_script_presence_validator.rb" - -class MetricConfiguration < KalibroGatekeeperClient::Entities::MetricConfiguration - include KalibroRecord - - attr_accessor :code, :weight, :aggregation_form - - validates :code, presence: true, code_uniqueness: true - validates :weight, presence: true, numericality: { greater_than: 0 } - validates :aggregation_form, presence: true, unless: "metric.compound == true" - validates_with NameScriptPresenceValidator, unless: "metric.compound == false" - - def mezuro_ranges - MezuroRange.ranges_of self.id - end -end +class MetricConfiguration < KalibroClient::Configurations::MetricConfiguration; end diff --git a/app/models/validators/code_uniqueness_validator.rb b/app/models/validators/code_uniqueness_validator.rb deleted file mode 100644 index 4a20acc..0000000 --- a/app/models/validators/code_uniqueness_validator.rb +++ /dev/null @@ -1,10 +0,0 @@ -class CodeUniquenessValidator < ActiveModel::EachValidator - def validate_each(record, attribute, value) - record.class.metric_configurations_of(record.configuration_id).each do |metric_configuration| - if metric_configuration.code == value && metric_configuration.id != record.id - record.errors[attribute] << "There is already a #{record.class} with #{attribute} #{value}! Please, choose another one." - break - end - end - end -end \ No newline at end of file diff --git a/app/models/validators/name_script_presence_validator.rb b/app/models/validators/name_script_presence_validator.rb deleted file mode 100644 index 5d5e770..0000000 --- a/app/models/validators/name_script_presence_validator.rb +++ /dev/null @@ -1,10 +0,0 @@ -class NameScriptPresenceValidator < ActiveModel::Validator - def validate(record) - if record.metric.name.strip.empty? - record.errors[:name] << "can't be blank" - end - if record.metric.script.strip.empty? - record.errors[:script] << "can't be blank" - end - end -end diff --git a/spec/controllers/base_metric_configurations_controller_spec.rb b/spec/controllers/base_metric_configurations_controller_spec.rb index 748ac79..506eb06 100644 --- a/spec/controllers/base_metric_configurations_controller_spec.rb +++ b/spec/controllers/base_metric_configurations_controller_spec.rb @@ -119,7 +119,7 @@ describe InheritsFromBaseMetricConfigurationsController, :type => :controller do before :each do ReadingGroup.expects(:find).with(metric_configuration.reading_group_id).returns(reading_group) subject.expects(:find_resource).with(MetricConfiguration, metric_configuration.id).returns(metric_configuration) - MezuroRange.expects(:ranges_of).with(metric_configuration.id).returns([mezuro_range]) + metric_configuration.expects(:kalibro_ranges).returns([mezuro_range]) get :show, mezuro_configuration_id: metric_configuration.configuration_id.to_s, id: metric_configuration.id end diff --git a/spec/controllers/compound_metric_configurations_controller_spec.rb b/spec/controllers/compound_metric_configurations_controller_spec.rb index f35af3b..734b1ec 100644 --- a/spec/controllers/compound_metric_configurations_controller_spec.rb +++ b/spec/controllers/compound_metric_configurations_controller_spec.rb @@ -75,7 +75,7 @@ describe CompoundMetricConfigurationsController, :type => :controller do before :each do ReadingGroup.expects(:find).with(compound_metric_configuration.reading_group_id).returns(reading_group) subject.expects(:find_resource).with(MetricConfiguration, compound_metric_configuration.id).returns(compound_metric_configuration) - MezuroRange.expects(:ranges_of).with(compound_metric_configuration.id).returns([mezuro_range]) + compound_metric_configuration.expects(:kalibro_ranges).returns([mezuro_range]) get :show, mezuro_configuration_id: compound_metric_configuration.configuration_id.to_s, id: compound_metric_configuration.id end diff --git a/spec/controllers/metric_configurations_controller_spec.rb b/spec/controllers/metric_configurations_controller_spec.rb index 0adfe3e..6e1c8f1 100644 --- a/spec/controllers/metric_configurations_controller_spec.rb +++ b/spec/controllers/metric_configurations_controller_spec.rb @@ -96,7 +96,7 @@ describe MetricConfigurationsController, :type => :controller do before :each do ReadingGroup.expects(:find).with(metric_configuration.reading_group_id).returns(reading_group) subject.expects(:find_resource).with(MetricConfiguration, metric_configuration.id).returns(metric_configuration) - MezuroRange.expects(:ranges_of).with(metric_configuration.id).returns([mezuro_range]) + metric_configuration.expects(:kalibro_ranges).returns([mezuro_range]) get :show, mezuro_configuration_id: metric_configuration.configuration_id.to_s, id: metric_configuration.id end diff --git a/spec/models/metric_configuration_spec.rb b/spec/models/metric_configuration_spec.rb deleted file mode 100644 index c767998..0000000 --- a/spec/models/metric_configuration_spec.rb +++ /dev/null @@ -1,43 +0,0 @@ -require 'rails_helper' - -describe MetricConfiguration, :type => :model do - subject {FactoryGirl.build(:metric_configuration)} - - describe 'methods' do - describe 'mezuro_ranges' do - let(:mezuro_range) { FactoryGirl.build(:mezuro_range) } - before :each do - MezuroRange.expects(:ranges_of).with(subject.id).returns([mezuro_range]) - end - - it 'should returns a list with its ranges' do - expect(subject.mezuro_ranges).to eq([mezuro_range]) - end - end - end - - describe 'validations' do - - context 'active model validations' do - before :each do - MetricConfiguration.expects(:metric_configurations_of).at_least_once.returns([]) - end - - it { is_expected.to validate_presence_of(:code) } - it { is_expected.to validate_presence_of(:weight) } - it { is_expected.to validate_numericality_of(:weight) } - it { is_expected.to validate_presence_of(:aggregation_form) } - end - - context 'code validations' do - before :each do - MetricConfiguration.expects(:request).returns(42) - end - - it 'should validate uniqueness' do - CodeUniquenessValidator.any_instance.expects(:validate_each).with(subject, :code, subject.code) - subject.save - end - end - end -end diff --git a/spec/models/validators/code_uniqueness_validator_spec.rb b/spec/models/validators/code_uniqueness_validator_spec.rb deleted file mode 100644 index 368d0b1..0000000 --- a/spec/models/validators/code_uniqueness_validator_spec.rb +++ /dev/null @@ -1,32 +0,0 @@ -require 'rails_helper' - -describe CodeUniquenessValidator, :type => :model do - describe 'methods' do - describe 'validate_each' do - context 'without saved metric_configurations' do - before :each do - MetricConfiguration.expects(:metric_configurations_of).returns([]) - MetricConfiguration.expects(:request).returns(42) - end - - subject { FactoryGirl.build(:metric_configuration) } - it 'should contain no errors' do - subject.save - expect(subject.errors).to be_empty - end - end - - context 'with code already taken by another metric_configuration' do - before :each do - @subject = FactoryGirl.build(:metric_configuration) - MetricConfiguration.expects(:metric_configurations_of).with(@subject.configuration_id).returns([FactoryGirl.build(:metric_configuration, id: @subject.id + 1)]) - end - - it 'should contain errors' do - @subject.save - expect(@subject.errors[:code]).to eq(["There is already a MetricConfiguration with code #{@subject.code}! Please, choose another one."]) - end - end - end - end -end diff --git a/spec/models/validators/name_script_validator_spec.rb b/spec/models/validators/name_script_validator_spec.rb deleted file mode 100644 index f8e4b43..0000000 --- a/spec/models/validators/name_script_validator_spec.rb +++ /dev/null @@ -1,36 +0,0 @@ -require 'rails_helper' - -describe NameScriptPresenceValidator, :type => :model do - describe 'methods' do - describe 'validate' do - let!(:compound_metric_configuration){ FactoryGirl.build(:compound_metric_configuration) } - - before :each do - CodeUniquenessValidator.any_instance.stubs(:validate_each) - end - - context 'with blank name' do - before :each do - compound_metric_configuration.metric.name = "" - end - - it 'is expected to return a error for the name field' do - compound_metric_configuration.save - expect(compound_metric_configuration.errors[:name]).to include("can't be blank") - end - - context 'with blank script' do - before :each do - compound_metric_configuration.metric.script = "" - end - - it 'is expected to return a error for the name and script fields' do - compound_metric_configuration.save - expect(compound_metric_configuration.errors[:name]).to include("can't be blank") - expect(compound_metric_configuration.errors[:script]).to include("can't be blank") - end - end - end - end - end -end \ No newline at end of file -- libgit2 0.21.2