~ubuntu-branches/ubuntu/hardy/ruby1.8/hardy-updates

« back to all changes in this revision

Viewing changes to test/xmlrpc/test_datetime.rb

  • Committer: Bazaar Package Importer
  • Author(s): akira yamada
  • Date: 2007-03-13 22:11:58 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20070313221158-h3oql37brlaf2go2
Tags: 1.8.6-1
* new upstream version, 1.8.6.
* libruby1.8 conflicts with libopenssl-ruby1.8 (< 1.8.6) (closes: #410018)
* changed packaging style to cdbs from dbs.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
require 'test/unit'
 
2
require "xmlrpc/datetime"
 
3
 
 
4
class Test_DateTime < Test::Unit::TestCase
 
5
 
 
6
  def test_new
 
7
    dt = createDateTime()
 
8
 
 
9
    assert_instance_of(XMLRPC::DateTime, dt)
 
10
  end
 
11
 
 
12
  def test_new_exception
 
13
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(4.5, 13, 32, 25, 60, 60) }
 
14
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 12, 32, 25, 60, 60) }
 
15
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 12, 31, 25, 60, 60) }
 
16
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 12, 31, 24, 60, 60) }
 
17
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 12, 31, 24, 59, 60) }
 
18
    assert_nothing_raised(ArgumentError) { XMLRPC::DateTime.new(2001, 12, 31, 24, 59, 59) }
 
19
 
 
20
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 0, 0, -1, -1, -1) }
 
21
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 1, 0, -1, -1, -1) }
 
22
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 1, 1, -1, -1, -1) }
 
23
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 1, 1, 0, -1, -1) }
 
24
    assert_raises(ArgumentError) { XMLRPC::DateTime.new(2001, 1, 1, 0, 0, -1) }
 
25
    assert_nothing_raised(ArgumentError) { XMLRPC::DateTime.new(2001, 1, 1, 0, 0, 0) }
 
26
  end
 
27
 
 
28
 
 
29
  def test_get_values
 
30
    y, m, d, h, mi, s = 1970, 3, 24, 12, 0, 5
 
31
    dt = XMLRPC::DateTime.new(y, m, d, h, mi, s)
 
32
 
 
33
    assert_equal(y, dt.year)
 
34
    assert_equal(m, dt.month)
 
35
    assert_equal(m, dt.mon)
 
36
    assert_equal(d, dt.day)
 
37
 
 
38
    assert_equal(h, dt.hour)
 
39
    assert_equal(mi,dt.min)
 
40
    assert_equal(s, dt.sec)
 
41
  end
 
42
 
 
43
  def test_set_values
 
44
    dt = createDateTime()
 
45
    y, m, d, h, mi, s = 1950, 12, 9, 8, 52, 30
 
46
 
 
47
    dt.year  = y
 
48
    dt.month = m
 
49
    dt.day   = d
 
50
    dt.hour  = h
 
51
    dt.min   = mi
 
52
    dt.sec   = s
 
53
 
 
54
    assert_equal(y, dt.year)
 
55
    assert_equal(m, dt.month)
 
56
    assert_equal(m, dt.mon)
 
57
    assert_equal(d, dt.day)
 
58
 
 
59
    assert_equal(h, dt.hour)
 
60
    assert_equal(mi,dt.min)
 
61
    assert_equal(s, dt.sec)
 
62
 
 
63
    dt.mon = 5
 
64
    assert_equal(5, dt.month)
 
65
    assert_equal(5, dt.mon)
 
66
  end
 
67
 
 
68
  def test_set_exception
 
69
    dt = createDateTime()
 
70
    
 
71
    assert_raises(ArgumentError)    { dt.year = 4.5 }
 
72
    assert_nothing_raised(ArgumentError) { dt.year = -2000 }
 
73
 
 
74
    assert_raises(ArgumentError) { dt.month = 0 }
 
75
    assert_raises(ArgumentError) { dt.month = 13 }
 
76
    assert_nothing_raised(ArgumentError) { dt.month = 7 }
 
77
 
 
78
    assert_raises(ArgumentError) { dt.mon = 0 }
 
79
    assert_raises(ArgumentError) { dt.mon = 13 }
 
80
    assert_nothing_raised(ArgumentError) { dt.mon = 7 }
 
81
 
 
82
    assert_raises(ArgumentError) { dt.day = 0 }
 
83
    assert_raises(ArgumentError) { dt.day = 32 }
 
84
    assert_nothing_raised(ArgumentError) { dt.day = 16 }
 
85
 
 
86
    assert_raises(ArgumentError) { dt.hour = -1 }
 
87
    assert_raises(ArgumentError) { dt.hour = 25 }
 
88
    assert_nothing_raised(ArgumentError) { dt.hour = 12 }
 
89
 
 
90
    assert_raises(ArgumentError) { dt.min = -1 }
 
91
    assert_raises(ArgumentError) { dt.min = 60 }
 
92
    assert_nothing_raised(ArgumentError) { dt.min = 30 }
 
93
 
 
94
    assert_raises(ArgumentError) { dt.sec = -1 }
 
95
    assert_raises(ArgumentError) { dt.sec = 60 }
 
96
    assert_nothing_raised(ArgumentError) { dt.sec = 30 }
 
97
  end
 
98
 
 
99
  def test_to_a
 
100
    y, m, d, h, mi, s = 1970, 3, 24, 12, 0, 5
 
101
    dt = XMLRPC::DateTime.new(y, m, d, h, mi, s)
 
102
    a = dt.to_a 
 
103
 
 
104
    assert_instance_of(Array, a)
 
105
    assert_equal(6,  a.size, "Returned array has wrong size")
 
106
 
 
107
    assert_equal(y,  a[0])
 
108
    assert_equal(m,  a[1])
 
109
    assert_equal(d,  a[2])
 
110
    assert_equal(h,  a[3])
 
111
    assert_equal(mi, a[4])
 
112
    assert_equal(s,  a[5])
 
113
  end
 
114
 
 
115
  def test_to_time1
 
116
    y, m, d, h, mi, s = 1970, 3, 24, 12, 0, 5
 
117
    dt = XMLRPC::DateTime.new(y, m, d, h, mi, s)
 
118
    time = dt.to_time 
 
119
    
 
120
    assert_not_nil(time)
 
121
 
 
122
    assert_equal(y,  time.year)
 
123
    assert_equal(m,  time.month)
 
124
    assert_equal(d,  time.day)
 
125
    assert_equal(h,  time.hour)
 
126
    assert_equal(mi, time.min)
 
127
    assert_equal(s,  time.sec)
 
128
  end
 
129
 
 
130
  def test_to_time2
 
131
    dt = createDateTime()
 
132
    dt.year = 1969
 
133
    
 
134
    assert_nil(dt.to_time)
 
135
  end
 
136
 
 
137
  def test_to_date1
 
138
    y, m, d, h, mi, s = 1970, 3, 24, 12, 0, 5
 
139
    dt = XMLRPC::DateTime.new(y, m, d, h, mi, s)
 
140
    date = dt.to_date 
 
141
 
 
142
    assert_equal(y, date.year)
 
143
    assert_equal(m, date.month)
 
144
    assert_equal(d, date.day)
 
145
  end
 
146
 
 
147
  def test_to_date2
 
148
    dt = createDateTime()
 
149
    dt.year = 666
 
150
    
 
151
    assert_equal(666, dt.to_date.year)
 
152
  end
 
153
 
 
154
 
 
155
  def createDateTime
 
156
    XMLRPC::DateTime.new(1970, 3, 24, 12, 0, 5)
 
157
  end
 
158
 
 
159
end