File: tc_offset_rationals.rb

package info (click to toggle)
libtzinfo-ruby 0.3.19-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 3,992 kB
  • ctags: 2,904
  • sloc: ruby: 47,071; makefile: 5
file content (25 lines) | stat: -rwxr-xr-x 734 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$:.unshift File.join(File.dirname(__FILE__), "..", "lib")
require 'test/unit'
require 'tzinfo/offset_rationals'

include TZInfo

class TCOffsetRationals < Test::Unit::TestCase
  def test_rational_for_offset
    [0,1,2,3,4,-1,-2,-3,-4,30*60,-30*60,61*60,-61*60,14*60*60,-14*60*60,20*60*60,-20*60*60].each {|seconds|
      assert_equal(Rational(seconds, 86400), OffsetRationals.rational_for_offset(seconds))      
    }
  end
  
  def test_rational_for_offset_constant
    -28.upto(28) {|i|
      seconds = i * 30 * 60
      
      r1 = OffsetRationals.rational_for_offset(seconds)
      r2 = OffsetRationals.rational_for_offset(seconds)
      
      assert_equal(Rational(seconds, 86400), r1)
      assert_same(r1, r2)
    }
  end
end