Sha256: bd229db59bb924f024123acc8f03ce95c8613345c9b4cd41eb9b616ca7660e86

Contents?: true

Size: 583 Bytes

Versions: 142

Compression:

Stored size: 583 Bytes

Contents

# frozen_string_literal: true

require_dependency "renalware"

module Renalware
  module NumericScaleValidations
    extend ActiveSupport::Concern
    def validate_numeric_scale(record, attribute, value, scale)
      if number_exceeds_scale?(value, scale)
        record.errors.add(attribute, :invalid_number)
      end
    end

    # Returns true for any integer or number to _scale_ decimal places
    # e.g. if scale is 1 then 11 or 11.1 return true but 11.11 returns false
    def number_exceeds_scale?(value, scale)
      value.to_f.round(scale) != value.to_f
    end
  end
end

Version data entries

142 entries across 142 versions & 1 rubygems

Version Path
renalware-core-2.1.1 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.1.0 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.167 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.166 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.165 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.164 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.163 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.162 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.161 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.160 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.159 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.158 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.157 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.156 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.155 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.153 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.152 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.151 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.149 app/validators/concerns/renalware/numeric_scale_validations.rb
renalware-core-2.0.148 app/validators/concerns/renalware/numeric_scale_validations.rb