Sha256: d7ef53efe15328a3cdc165d16b9738ba7f414a38d69b49c070776c94f933cedb

Contents?: true

Size: 1.15 KB

Versions: 27

Compression:

Stored size: 1.15 KB

Contents

module Quby
  module Questionnaires
    module Entities
      # SubscoreSchema instances describe each key that could be returned in a score result hash

      class SubscoreSchema
        include ActiveModel::Model

        # The key this subscore has in the hash returned by the score
        attr_accessor :key
        # The description of this subscore in the context of the score, like 'Mean', 'T-Score' or 'Interpretation'
        attr_accessor :label
        # The shortened key that will used as the field/column name for csv and oru exports,
        # excluding the questionnaire key part
        attr_accessor :export_key
        # Whether this score will only be exported through oru/api/data exports, but not shown in interfaces
        attr_accessor :only_for_export

        validates :key, :label, :export_key, presence: true
        validate :key_is_symbol
        validate :export_key_is_symbol

        def key_is_symbol
          errors.add(:key, 'is not a symbol') unless key.is_a?(Symbol)
        end

        def export_key_is_symbol
          errors.add(:export_key, 'is not a symbol') unless export_key.is_a?(Symbol)
        end
      end
    end
  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
quby-5.6.2 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.6.1 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.6.0 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.5.0 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.4.0 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.3.1 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.3.0 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.2.0 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.1.3 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.1.2 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.1.1 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.1.0 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.0.5 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.0.4 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.0.3 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.0.2 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.0.1 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.0.0 lib/quby/questionnaires/entities/subscore_schema.rb
quby-4.0.4 lib/quby/questionnaires/entities/subscore_schema.rb
quby-5.0.0.pre4 lib/quby/questionnaires/entities/subscore_schema.rb