Class: TestWeek

Inherits:
Test::Unit::TestCase
  • Object
show all
Defined in:
lib/test/modules/test_week.rb

Instance Method Summary collapse

Instance Method Details

#test_beginning_of_weekObject



190
191
192
193
194
195
196
# File 'lib/test/modules/test_week.rb', line 190

def test_beginning_of_week
  [Date,Time].each do |klass|
    assert_equal klass.new(2012,11,25), klass.new(2012,11,26).beginning_of_week
    assert_equal klass.new(2012,11,25), klass.new(2012,11,25).beginning_of_week
    assert_equal klass.new(2012,11,25), klass.new(2012,11,30).beginning_of_week
  end
end

#test_days_left_in_weekObject



184
185
186
187
188
# File 'lib/test/modules/test_week.rb', line 184

def test_days_left_in_week
  [Date,Time].each do |klass|
    assert_equal 5, klass.new(2013,1,1).days_left_in_week
  end
end

#test_days_past_in_weekObject



178
179
180
181
182
# File 'lib/test/modules/test_week.rb', line 178

def test_days_past_in_week
  [Date,Time].each do |klass|
    assert_equal 2, klass.new(2013,1,1).days_past_in_week
  end
end

#test_end_of_weekObject



198
199
200
201
202
203
204
205
# File 'lib/test/modules/test_week.rb', line 198

def test_end_of_week
  [Date,Time].each do |klass|
    assert_equal klass.new(2012,12,1), klass.new(2012,12,1).end_of_week
    assert_equal klass.new(2012,12,8), klass.new(2012,12,2).end_of_week
    assert_equal klass.new(2012,12,8), klass.new(2012,12,3).end_of_week
    assert_equal klass.new(2012,12,8), klass.new(2012,12,7).end_of_week
  end
end

#test_first_week?Boolean

Returns:

  • (Boolean)


88
89
90
91
92
93
# File 'lib/test/modules/test_week.rb', line 88

def test_first_week?
  [Date,Time].each do |klass|
    assert klass.new(2012,1,1).first_week?
    assert !klass.new(2012,1,31).first_week?
  end
end

#test_general_week_of_monthObject



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/test/modules/test_week.rb', line 38

def test_general_week_of_month
  [Date,Time].each do |klass|
    assert_equal 4, klass.new(2013,1,31).general_week_of_month

    assert_equal 4, klass.new(2013,2,28).general_week_of_month

    assert_equal 5, klass.new(2013,3,31).general_week_of_month

    assert_equal 4, klass.new(2013,4,30).general_week_of_month

    assert_equal 4, klass.new(2013,5,31).general_week_of_month

    assert_equal 5, klass.new(2013,6,30).general_week_of_month

    assert_equal 4, klass.new(2013,7,31).general_week_of_month

    assert_equal 4, klass.new(2013,8,31).general_week_of_month

    assert_equal 5, klass.new(2013,9,30).general_week_of_month

    assert_equal 4, klass.new(2013,10,31).general_week_of_month

    assert_equal 4, klass.new(2013,11,30).general_week_of_month

    assert_equal 5, klass.new(2013,12,31).general_week_of_month
  end
end

#test_last_week?Boolean

Returns:

  • (Boolean)


102
103
104
105
106
107
# File 'lib/test/modules/test_week.rb', line 102

def test_last_week?
  [Date,Time].each do |klass|
    assert klass.new(2012,10,31).last_week?
    assert !klass.new(2012,10,20).last_week?
  end  
end

#test_next_weekObject



207
208
209
210
211
212
213
214
# File 'lib/test/modules/test_week.rb', line 207

def test_next_week
  [Date,Time].each do |klass|
    assert_equal klass.new(2012,12,8), klass.new(2012,12,1).next_week
    assert_equal klass.new(2012,12,22), klass.new(2012,12,15).next_week
    assert_equal klass.new(2013,1,5), klass.new(2012,12,29).next_week
    assert_equal klass.new(2012,12,26), klass.new(2012,12,19).next_week
  end
end

#test_previous_weekObject



216
217
218
219
220
221
222
223
# File 'lib/test/modules/test_week.rb', line 216

def test_previous_week
  [Date,Time].each do |klass|
    assert_equal klass.new(2012,12,1), klass.new(2012,12,8).previous_week
    assert_equal klass.new(2012,12,15), klass.new(2012,12,22).previous_week
    assert_equal klass.new(2012,12,29), klass.new(2013,1,5).previous_week
    assert_equal klass.new(2012,12,19), klass.new(2012,12,26).previous_week
  end
end

#test_second_week?Boolean

Returns:

  • (Boolean)


95
96
97
98
99
100
# File 'lib/test/modules/test_week.rb', line 95

def test_second_week?
  [Date,Time].each do |klass|
    assert klass.new(2013,1,6).second_week?
    assert !klass.new(2013,1,2).second_week?
  end
end

#test_total_weeksObject



109
110
111
112
113
114
# File 'lib/test/modules/test_week.rb', line 109

def test_total_weeks
  [Date,Time].each do |klass|
    assert_equal 5, klass.new(2012,10,31).total_weeks
    assert_equal 6, klass.new(2012,12,20).total_weeks
  end  
end

#test_week_end?Boolean

Returns:

  • (Boolean)


160
161
162
163
164
165
166
167
# File 'lib/test/modules/test_week.rb', line 160

def test_week_end?
  [Date,Time].each do |klass|
    assert !klass.new(2012,10,1).week_end?
    assert !klass.new(2012,10,31).week_end?
    assert klass.new(2012,10,6).week_end?
    assert klass.new(2012,10,7).week_end?
  end
end

#test_week_of_monthObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/test/modules/test_week.rb', line 10

def test_week_of_month
  [Date,Time].each do |klass| 
    assert_equal 5, klass.new(2013,1,31).week_of_month
     
    assert_equal 5, klass.new(2013,2,28).week_of_month
     
    assert_equal 6, klass.new(2013,3,31).week_of_month
     
    assert_equal 5, klass.new(2013,4,30).week_of_month
     
    assert_equal 5, klass.new(2013,5,31).week_of_month
     
    assert_equal 6, klass.new(2013,6,30).week_of_month
     
    assert_equal 5, klass.new(2013,7,31).week_of_month
    
    assert_equal 5, klass.new(2013,8,31).week_of_month
     
    assert_equal 5, klass.new(2013,9,30).week_of_month
     
    assert_equal 5, klass.new(2013,10,31).week_of_month
     
    assert_equal 5, klass.new(2013,11,30).week_of_month

    assert_equal 5, klass.new(2013,12,31).week_of_month
  end
end

#test_week_of_month_in_engObject



116
117
118
119
120
121
122
123
124
125
# File 'lib/test/modules/test_week.rb', line 116

def test_week_of_month_in_eng
  [Date,Time].each do |klass|
    assert_equal 'First', klass.new(2012,12,1).week_of_month_in_eng
    assert_equal 'Second', klass.new(2012,12,4).week_of_month_in_eng
    assert_equal 'Third', klass.new(2012,12,9).week_of_month_in_eng
    assert_equal 'Fourth', klass.new(2012,12,16).week_of_month_in_eng
    assert_equal 'Fifth', klass.new(2012,12,24).week_of_month_in_eng
    assert_equal 'Sixth', klass.new(2012,12,31).week_of_month_in_eng
  end
end

#test_week_of_month_in_frObject



127
128
129
130
131
132
133
134
135
136
# File 'lib/test/modules/test_week.rb', line 127

def test_week_of_month_in_fr
  [Date,Time].each do |klass|
    assert_equal 'First', klass.new(2012,12,1).week_of_month_in_fr
    assert_equal 'Second', klass.new(2012,12,4).week_of_month_in_fr
    assert_equal 'Third', klass.new(2012,12,9).week_of_month_in_fr
    assert_equal 'Quatrième', klass.new(2012,12,16).week_of_month_in_fr
    assert_equal 'Cinquième', klass.new(2012,12,24).week_of_month_in_fr
    assert_equal 'sixième', klass.new(2012,12,31).week_of_month_in_fr
  end
end

#test_week_of_month_in_gerObject



138
139
140
141
142
143
144
145
146
147
# File 'lib/test/modules/test_week.rb', line 138

def test_week_of_month_in_ger
  [Date,Time].each do |klass|
    assert_equal 'First', klass.new(2012,12,1).week_of_month_in_ger
    assert_equal 'Second', klass.new(2012,12,4).week_of_month_in_ger
    assert_equal 'Dritten', klass.new(2012,12,9).week_of_month_in_ger
    assert_equal 'Vierte', klass.new(2012,12,16).week_of_month_in_ger
    assert_equal 'Fünfte', klass.new(2012,12,24).week_of_month_in_ger
    assert_equal 'Sechste', klass.new(2012,12,31).week_of_month_in_ger
  end
end

#test_week_of_month_in_japObject



149
150
151
152
153
154
155
156
157
158
# File 'lib/test/modules/test_week.rb', line 149

def test_week_of_month_in_jap
  [Date,Time].each do |klass|
    assert_equal '最初', klass.new(2012,12,1).week_of_month_in_jap
    assert_equal '', klass.new(2012,12,4).week_of_month_in_jap
    assert_equal 'サード', klass.new(2012,12,9).week_of_month_in_jap
    assert_equal '第4回', klass.new(2012,12,16).week_of_month_in_jap
    assert_equal '第五', klass.new(2012,12,24).week_of_month_in_jap
    assert_equal 'シックス',  klass.new(2012,12,31).week_of_month_in_jap
  end
end

#test_week_splitObject



66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'lib/test/modules/test_week.rb', line 66

def test_week_split
  [Date,Time].each do |klass|
    object = klass.new(2013,1,10)
    split_for_january = [[nil,nil, 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, 26],
                           [27, 28, 29, 30, 31]]
    assert_kind_of Array,object.week_split
    assert_equal split_for_january, object.week_split
  
    object = Date.new(2013,2,15)
    split_for_october = [[nil, nil, nil, nil, nil, 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, 26, 27, 28]]
    assert_kind_of Array,object.week_split
    assert_equal split_for_october, object.week_split
  end
end

#test_working_day?Boolean

Returns:

  • (Boolean)


169
170
171
172
173
174
175
176
# File 'lib/test/modules/test_week.rb', line 169

def test_working_day?
  [Date,Time].each do |klass|
    assert klass.new(2012,10,1).working_day?
    assert klass.new(2012,10,31).working_day?
    assert !klass.new(2012,10,6).working_day?
    assert !klass.new(2012,10,7).working_day?
  end
end