Sha256: f85daa2885c9284079560384b7527ef183277aabefe99bdbf08e89ef8b0acdd1
Contents?: true
Size: 1.38 KB
Versions: 3
Compression:
Stored size: 1.38 KB
Contents
require_relative 'helper' require 'date' describe 'Adapter' do supported_by Swift::DB::Postgres do %w(Australia/Melboure America/Chicago).each do |timezone| describe 'time parsing in %s' % timezone do before do @db = Swift.db ENV['TZ'] = ":#{timezone}" end it 'should parse timestamps and do conversion accordingly' do time = DateTime.parse('2010-01-01 15:00:00+04:30') assert_timestamp_like time, fetch_timestamp_at(time), 'parses correctly' end it 'should parse correctly when DST is on' do time = DateTime.parse('2010-10-02 20:31:00+04:30') assert_timestamp_like time, fetch_timestamp_at(time), 'DST on' end it 'should parse correctly when DST is off' do time = DateTime.parse('2010-04-04 20:31:00+04:30') assert_timestamp_like time, fetch_timestamp_at(time), 'DST off' end def fetch_timestamp_at value sql = "select '%s'::timestamp with time zone as now" % value.strftime('%F %T%z') @db.execute(sql) @db.results.first.fetch(:now) end def assert_timestamp_like expect, given, comment match = Regexp.new expect.to_time.strftime('%F %T') assert_kind_of DateTime, given assert_match match, given.strftime('%F %T'), comment end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
swift-0.6.1 | test/test_timestamps.rb |
swift-0.6.0 | test/test_timestamps.rb |
swift-0.5.1 | test/test_timestamps.rb |