Sha256: 27dee191e8c97903a1c8545485fe6ff880c7d6306e6174cee492cd9064faeabc

Contents?: true

Size: 1.2 KB

Versions: 4

Compression:

Stored size: 1.2 KB

Contents

require 'spec_helper'

describe RailsAdmin::Config::Fields::Types::Time do
  describe '#parse_input' do
    before :each do
      @object = FactoryGirl.create(:field_test)
      @time = ::Time.now.getutc
      @field = RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :time_field }
    end

    after :each do
      Time.zone = 'UTC'
    end

    it 'reads %H:%M' do
      @object.time_field = @field.parse_input(time_field: @time.strftime('%H:%M'))
      expect(@object.time_field.strftime('%H:%M')).to eq(@time.strftime('%H:%M'))
    end

    it 'interprets time value as UTC when timezone is specified' do
      Time.zone = 'Eastern Time (US & Canada)' # -05:00
      @object.time_field = @field.parse_input(time_field: @time.strftime('%H:%M'))
      expect(@object.time_field.strftime('%H:%M')).to eq(@time.strftime('%H:%M'))
    end

    it 'has a customization option' do
      RailsAdmin.config FieldTest do
        edit do
          field :time_field do
            strftime_format '%I:%M %p'
          end
        end
      end
      @object.time_field = @field.parse_input(time_field: @time.strftime('%I:%M %p'))
      expect(@object.time_field.strftime('%H:%M')).to eq(@time.strftime('%H:%M'))
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rails_admin-0.6.4 spec/rails_admin/config/fields/time_spec.rb
rails_admin-0.6.3 spec/rails_admin/config/fields/time_spec.rb
rails_admin-0.6.2 spec/rails_admin/config/fields/time_spec.rb
rails_admin-0.6.1 spec/rails_admin/config/fields/time_spec.rb