Sha256: 8e01910f975db7ac190ecfa1042fcc1d2d070172e65d19e25582bfe743de0916

Contents?: true

Size: 336 Bytes

Versions: 12

Compression:

Stored size: 336 Bytes

Contents

module Datev
  class BooleanField < Field
    def validate!(value)
      super

      unless value.nil?
        raise ArgumentError.new("Value given for field '#{name}' is not a Boolean") unless [true, false].include?(value)
      end
    end

    def output(value, _context=nil)
      value ? 1 : 0 unless value.nil?
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
datev-0.11.0 lib/datev/field/boolean_field.rb
datev-0.10.0 lib/datev/field/boolean_field.rb
datev-0.9.0 lib/datev/field/boolean_field.rb
datev-0.8.2 lib/datev/field/boolean_field.rb
datev-0.8.1 lib/datev/field/boolean_field.rb
datev-0.8.0 lib/datev/field/boolean_field.rb
datev-0.7.0 lib/datev/field/boolean_field.rb
datev-0.6.0 lib/datev/field/boolean_field.rb
datev-0.5.1 lib/datev/field/boolean_field.rb
datev-0.5.0 lib/datev/field/boolean_field.rb
datev-0.4.0 lib/datev/field/boolean_field.rb
datev-0.3.1 lib/datev/field/boolean_field.rb