Sha256: 6a6bf5268b490ae8f62776033da5a2da95792db0b70de15e18ba531cf8064a3d

Contents?: true

Size: 609 Bytes

Versions: 24

Compression:

Stored size: 609 Bytes

Contents

require 'faker'

module JSONAPIonify::Types
  class TimeStringType < StringType
    loader do |value|
      Time.parse super(value)
    end

    dumper do |value|
      raise DumpError, 'cannot convert value to time' unless value.respond_to?(:to_time)
      JSON.load JSON.dump(value.to_time.utc)
    end

    def sample(field_name)
      field_name = field_name.to_s
      if field_name.to_s.end_with?('ed_at') || field_name.include?('start')
        Faker::Time.backward
      elsif field_name.include?('end')
        Faker::Time.forward
      else
        Faker::Time.backward
      end
    end

  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
jsonapionify-0.12.10 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.9 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.8 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.7 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.5 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.4 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.3 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.2 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.1 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.12.0 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.11 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.10 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.9 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.8 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.7 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.6 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.5 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.11.0 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.10.2 lib/jsonapionify/types/time_string_type.rb
jsonapionify-0.10.1 lib/jsonapionify/types/time_string_type.rb