glib2 0.20.0 → 0.90.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (175) hide show
  1. data/ChangeLog +92 -0
  2. data/README +22 -10
  3. data/Rakefile +54 -72
  4. data/ext/glib2/depend +10 -0
  5. data/ext/glib2/extconf.rb +61 -0
  6. data/ext/glib2/glib2.def +89 -0
  7. data/{src → ext/glib2}/rbgcompat.h +0 -0
  8. data/{src → ext/glib2}/rbglib.c +17 -7
  9. data/{src → ext/glib2}/rbglib.h +2 -2
  10. data/{src → ext/glib2}/rbglib_bookmarkfile.c +0 -0
  11. data/{src → ext/glib2}/rbglib_completion.c +0 -0
  12. data/{src → ext/glib2}/rbglib_convert.c +0 -0
  13. data/{src → ext/glib2}/rbglib_error.c +0 -0
  14. data/{src → ext/glib2}/rbglib_fileutils.c +0 -0
  15. data/{src → ext/glib2}/rbglib_i18n.c +0 -0
  16. data/{src → ext/glib2}/rbglib_int64.c +0 -0
  17. data/{src → ext/glib2}/rbglib_iochannel.c +0 -0
  18. data/{src → ext/glib2}/rbglib_keyfile.c +0 -0
  19. data/{src → ext/glib2}/rbglib_maincontext.c +1 -3
  20. data/{src → ext/glib2}/rbglib_mainloop.c +0 -0
  21. data/{src → ext/glib2}/rbglib_messages.c +0 -0
  22. data/{src → ext/glib2}/rbglib_pollfd.c +0 -0
  23. data/{src → ext/glib2}/rbglib_shell.c +0 -0
  24. data/{src → ext/glib2}/rbglib_source.c +0 -0
  25. data/{src → ext/glib2}/rbglib_spawn.c +0 -0
  26. data/{src → ext/glib2}/rbglib_threads.c +0 -0
  27. data/{src → ext/glib2}/rbglib_timer.c +0 -0
  28. data/{src → ext/glib2}/rbglib_unicode.c +0 -0
  29. data/{src → ext/glib2}/rbglib_utils.c +0 -0
  30. data/{src → ext/glib2}/rbglib_win32.c +0 -0
  31. data/{src → ext/glib2}/rbgobj_boxed.c +0 -0
  32. data/{src → ext/glib2}/rbgobj_closure.c +0 -0
  33. data/{src → ext/glib2}/rbgobj_convert.c +0 -0
  34. data/{src → ext/glib2}/rbgobj_enums.c +0 -0
  35. data/{src → ext/glib2}/rbgobj_fundamental.c +0 -0
  36. data/{src → ext/glib2}/rbgobj_object.c +0 -0
  37. data/{src → ext/glib2}/rbgobj_param.c +0 -0
  38. data/{src → ext/glib2}/rbgobj_paramspecs.c +0 -0
  39. data/{src → ext/glib2}/rbgobj_signal.c +0 -0
  40. data/{src → ext/glib2}/rbgobj_strv.c +0 -0
  41. data/{src → ext/glib2}/rbgobj_type.c +0 -0
  42. data/{src → ext/glib2}/rbgobj_typeinstance.c +0 -0
  43. data/{src → ext/glib2}/rbgobj_typeinterface.c +0 -0
  44. data/{src → ext/glib2}/rbgobj_typemodule.c +0 -0
  45. data/{src → ext/glib2}/rbgobj_typeplugin.c +0 -0
  46. data/{src → ext/glib2}/rbgobj_value.c +0 -0
  47. data/{src → ext/glib2}/rbgobj_valuearray.c +0 -0
  48. data/{src → ext/glib2}/rbgobj_valuetypes.c +0 -0
  49. data/{src → ext/glib2}/rbgobject.c +0 -0
  50. data/{src → ext/glib2}/rbgobject.h +0 -0
  51. data/{src → ext/glib2}/rbgprivate.h +0 -0
  52. data/ext/glib2/rbgutil.c +316 -0
  53. data/{src → ext/glib2}/rbgutil.h +9 -9
  54. data/{src → ext/glib2}/rbgutil_callback.c +0 -0
  55. data/extconf.rb +48 -60
  56. data/{src/lib → lib}/glib-mkenums.rb +2 -2
  57. data/{src/lib → lib}/glib2.rb +28 -9
  58. data/lib/gnome2-win32-binary-downloader.rb +92 -0
  59. data/{src/lib → lib}/mkmf-gnome2.rb +76 -89
  60. data/test-unit/COPYING +56 -0
  61. data/test-unit/GPL +340 -0
  62. data/test-unit/History.txt +232 -0
  63. data/test-unit/Manifest.txt +110 -0
  64. data/test-unit/PSFL +271 -0
  65. data/test-unit/README.txt +75 -0
  66. data/test-unit/Rakefile +53 -0
  67. data/test-unit/TODO +5 -0
  68. data/test-unit/bin/testrb +5 -0
  69. data/test-unit/html/bar.png +0 -0
  70. data/test-unit/html/bar.svg +153 -0
  71. data/test-unit/html/developer.png +0 -0
  72. data/test-unit/html/developer.svg +469 -0
  73. data/test-unit/html/famfamfam-logo.png +0 -0
  74. data/test-unit/html/favicon.ico +0 -0
  75. data/test-unit/html/favicon.png +0 -0
  76. data/test-unit/html/favicon.svg +82 -0
  77. data/test-unit/html/heading-mark.png +0 -0
  78. data/test-unit/html/heading-mark.svg +393 -0
  79. data/test-unit/html/index.html +247 -0
  80. data/test-unit/html/index.html.ja +270 -0
  81. data/test-unit/html/install.png +0 -0
  82. data/test-unit/html/install.svg +636 -0
  83. data/test-unit/html/jp.png +0 -0
  84. data/test-unit/html/kinotan-failure.png +0 -0
  85. data/test-unit/html/kinotan-pass.png +0 -0
  86. data/test-unit/html/logo.png +0 -0
  87. data/test-unit/html/logo.svg +483 -0
  88. data/test-unit/html/reference.png +0 -0
  89. data/test-unit/html/rubyforge.png +0 -0
  90. data/test-unit/html/tango-logo.png +0 -0
  91. data/test-unit/html/test-unit.css +339 -0
  92. data/test-unit/html/tutorial.png +0 -0
  93. data/test-unit/html/tutorial.svg +559 -0
  94. data/test-unit/html/us.png +0 -0
  95. data/test-unit/images/color-diff.png +0 -0
  96. data/test-unit/lib/test/unit.rb +328 -0
  97. data/test-unit/lib/test/unit/assertionfailederror.rb +25 -0
  98. data/test-unit/lib/test/unit/assertions.rb +1334 -0
  99. data/test-unit/lib/test/unit/attribute.rb +125 -0
  100. data/test-unit/lib/test/unit/autorunner.rb +363 -0
  101. data/test-unit/lib/test/unit/collector.rb +36 -0
  102. data/test-unit/lib/test/unit/collector/descendant.rb +23 -0
  103. data/test-unit/lib/test/unit/collector/dir.rb +108 -0
  104. data/test-unit/lib/test/unit/collector/load.rb +144 -0
  105. data/test-unit/lib/test/unit/collector/objectspace.rb +34 -0
  106. data/test-unit/lib/test/unit/color-scheme.rb +106 -0
  107. data/test-unit/lib/test/unit/color.rb +96 -0
  108. data/test-unit/lib/test/unit/diff.rb +740 -0
  109. data/test-unit/lib/test/unit/error.rb +130 -0
  110. data/test-unit/lib/test/unit/exceptionhandler.rb +39 -0
  111. data/test-unit/lib/test/unit/failure.rb +136 -0
  112. data/test-unit/lib/test/unit/fixture.rb +176 -0
  113. data/test-unit/lib/test/unit/notification.rb +129 -0
  114. data/test-unit/lib/test/unit/omission.rb +191 -0
  115. data/test-unit/lib/test/unit/pending.rb +150 -0
  116. data/test-unit/lib/test/unit/priority.rb +180 -0
  117. data/test-unit/lib/test/unit/runner/console.rb +52 -0
  118. data/test-unit/lib/test/unit/runner/emacs.rb +8 -0
  119. data/test-unit/lib/test/unit/runner/tap.rb +8 -0
  120. data/test-unit/lib/test/unit/testcase.rb +483 -0
  121. data/test-unit/lib/test/unit/testresult.rb +121 -0
  122. data/test-unit/lib/test/unit/testsuite.rb +110 -0
  123. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +14 -0
  124. data/test-unit/lib/test/unit/ui/console/testrunner.rb +430 -0
  125. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +63 -0
  126. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +82 -0
  127. data/test-unit/lib/test/unit/ui/testrunner.rb +53 -0
  128. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +77 -0
  129. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  130. data/test-unit/lib/test/unit/util/backtracefilter.rb +42 -0
  131. data/test-unit/lib/test/unit/util/method-owner-finder.rb +28 -0
  132. data/test-unit/lib/test/unit/util/observable.rb +90 -0
  133. data/test-unit/lib/test/unit/util/output.rb +31 -0
  134. data/test-unit/lib/test/unit/util/procwrapper.rb +48 -0
  135. data/test-unit/lib/test/unit/version.rb +7 -0
  136. data/test-unit/sample/adder.rb +13 -0
  137. data/test-unit/sample/subtracter.rb +12 -0
  138. data/test-unit/sample/test_adder.rb +20 -0
  139. data/test-unit/sample/test_subtracter.rb +20 -0
  140. data/test-unit/sample/test_user.rb +23 -0
  141. data/test-unit/test/collector/test-descendant.rb +133 -0
  142. data/test-unit/test/collector/test-load.rb +442 -0
  143. data/test-unit/test/collector/test_dir.rb +406 -0
  144. data/test-unit/test/collector/test_objectspace.rb +100 -0
  145. data/test-unit/test/run-test.rb +15 -0
  146. data/test-unit/test/test-attribute.rb +86 -0
  147. data/test-unit/test/test-color-scheme.rb +69 -0
  148. data/test-unit/test/test-color.rb +47 -0
  149. data/test-unit/test/test-diff.rb +518 -0
  150. data/test-unit/test/test-emacs-runner.rb +60 -0
  151. data/test-unit/test/test-fixture.rb +287 -0
  152. data/test-unit/test/test-notification.rb +33 -0
  153. data/test-unit/test/test-omission.rb +81 -0
  154. data/test-unit/test/test-pending.rb +70 -0
  155. data/test-unit/test/test-priority.rb +119 -0
  156. data/test-unit/test/test-testcase.rb +544 -0
  157. data/test-unit/test/test_assertions.rb +1197 -0
  158. data/test-unit/test/test_error.rb +26 -0
  159. data/test-unit/test/test_failure.rb +33 -0
  160. data/test-unit/test/test_testresult.rb +113 -0
  161. data/test-unit/test/test_testsuite.rb +129 -0
  162. data/test-unit/test/testunit-test-util.rb +14 -0
  163. data/test-unit/test/ui/test_tap.rb +33 -0
  164. data/test-unit/test/ui/test_testrunmediator.rb +20 -0
  165. data/test-unit/test/util/test-method-owner-finder.rb +38 -0
  166. data/test-unit/test/util/test-output.rb +11 -0
  167. data/test-unit/test/util/test_backtracefilter.rb +41 -0
  168. data/test-unit/test/util/test_observable.rb +102 -0
  169. data/test-unit/test/util/test_procwrapper.rb +36 -0
  170. data/test/run-test.rb +2 -6
  171. metadata +197 -100
  172. data/src/glib-enum-types.c +0 -1032
  173. data/src/glib-enum-types.h +0 -140
  174. data/src/lib/pkg-config.rb +0 -137
  175. data/src/rbgutil.c +0 -222
@@ -0,0 +1,60 @@
1
+ require 'test/unit'
2
+ require 'test/unit/ui/emacs/testrunner'
3
+
4
+ class TestUnitEmacsRunner < Test::Unit::TestCase
5
+ def test_format_failure_with_a_location
6
+ runner = create_runner
7
+ test_name = "test_failure"
8
+ file = "/home/user/test_xxx.rb"
9
+ line = "3"
10
+ info = "in `xxx'"
11
+ location = "#{file}:#{line}: #{info}"
12
+ message = "FAIL!!!"
13
+ failure = Test::Unit::Failure.new(test_name, [location], message)
14
+ assert_equal(<<-EOM.chomp, runner.send(:format_fault, failure))
15
+ Failure:
16
+ #{test_name} [#{file}:#{line}]:
17
+ #{message}
18
+ EOM
19
+ end
20
+
21
+ def test_format_failure_with_locations
22
+ runner = create_runner
23
+ test_name = "test_failure"
24
+ locations = ["/home/user/test_xxx.rb:3: in `xxx'",
25
+ "/home/user/yyy/test_yyy.rb:999: in `yyy'",
26
+ "/home/user/xyz/zzz.rb:29: in `zzz'"]
27
+ message = "Many backtrace!!!"
28
+ failure = Test::Unit::Failure.new(test_name, locations, message)
29
+ assert_equal(<<-EOM.chomp, runner.send(:format_fault, failure))
30
+ Failure:
31
+ #{test_name}
32
+ #{locations.join("\n")}:
33
+ #{message}
34
+ EOM
35
+ end
36
+
37
+ def test_format_error
38
+ runner = create_runner
39
+ test_name = "test_error"
40
+ message = "Error Message!!!"
41
+ backtrace = ["/home/user/test_xxx.rb:3: in `xxx'",
42
+ "/home/user/yyy/test_yyy.rb:999: in `yyy'",
43
+ "/home/user/xyz/zzz.rb:29: in `zzz'"]
44
+ exception = RuntimeError.new(message)
45
+ exception.set_backtrace(backtrace)
46
+ error = Test::Unit::Error.new(test_name, exception)
47
+ assert_equal(<<-EOM.chomp, runner.send(:format_fault, error))
48
+ Error:
49
+ #{test_name}:
50
+ #{exception.class.name}: #{message}
51
+ #{backtrace.join("\n")}
52
+ EOM
53
+ end
54
+
55
+ private
56
+ def create_runner(suite=nil)
57
+ suite ||= Test::Unit::TestSuite.new
58
+ Test::Unit::UI::Emacs::TestRunner.new(suite)
59
+ end
60
+ end
@@ -0,0 +1,287 @@
1
+ class TestUnitFixture < Test::Unit::TestCase
2
+ module EmptyModule
3
+ end
4
+
5
+ def test_setup_without_option
6
+ expected_setup_calls = [:setup,
7
+ :custom_setup_method0,
8
+ :custom_setup_method1,
9
+ :custom_setup_method3]
10
+ test_case = assert_setup(expected_setup_calls, [])
11
+ assert_inherited_setup(expected_setup_calls, test_case)
12
+
13
+ assert_inherited_setup([:setup], nil)
14
+ assert_called_fixtures(expected_setup_calls, test_case)
15
+ end
16
+
17
+ def test_setup_with_before_option
18
+ expected_setup_calls = [:custom_setup_method3,
19
+ :custom_setup_method0,
20
+ :custom_setup_method1,
21
+ :setup]
22
+ test_case = assert_setup(expected_setup_calls,
23
+ [[{:before => :append}],
24
+ [{:before => :append}],
25
+ [{:before => :prepend}],
26
+ [{:before => :prepend}]])
27
+ assert_inherited_setup(expected_setup_calls, test_case)
28
+
29
+ assert_inherited_setup([:setup], nil)
30
+ assert_called_fixtures(expected_setup_calls, test_case)
31
+ end
32
+
33
+ def test_setup_with_after_option
34
+ expected_setup_calls = [:setup,
35
+ :custom_setup_method3,
36
+ :custom_setup_method0,
37
+ :custom_setup_method1]
38
+ test_case = assert_setup(expected_setup_calls,
39
+ [[{:after => :append}],
40
+ [{:after => :append}],
41
+ [{:after => :prepend}],
42
+ [{:after => :prepend}]])
43
+ assert_inherited_setup(expected_setup_calls, test_case)
44
+
45
+ assert_inherited_setup([:setup], nil)
46
+ assert_called_fixtures(expected_setup_calls, test_case)
47
+ end
48
+
49
+ def test_setup_with_invalid_option
50
+ assert_invalid_setup_option(:unknown => true)
51
+ assert_invalid_setup_option(:before => :unknown)
52
+ assert_invalid_setup_option(:after => :unknown)
53
+ end
54
+
55
+ def test_setup_with_option_to_inherited
56
+ expected_setup_calls = [:setup]
57
+ test_case = assert_setup(expected_setup_calls, nil)
58
+ assert_inherited_setup([:setup,
59
+ :custom_setup_method0,
60
+ :custom_setup_method1,
61
+ :custom_setup_method3],
62
+ test_case,
63
+ [])
64
+
65
+ assert_inherited_setup([:setup], nil)
66
+ assert_called_fixtures(expected_setup_calls, test_case)
67
+ end
68
+
69
+ def test_teardown_without_option
70
+ expected_teardown_calls = [:custom_teardown_method3,
71
+ :custom_teardown_method1,
72
+ :custom_teardown_method0,
73
+ :teardown]
74
+ test_case = assert_teardown(expected_teardown_calls, [])
75
+ assert_inherited_teardown(expected_teardown_calls, test_case)
76
+
77
+ assert_inherited_teardown([:teardown], nil)
78
+ assert_called_fixtures(expected_teardown_calls, test_case)
79
+ end
80
+
81
+ def test_teardown_with_before_option
82
+ expected_teardown_calls = [:custom_teardown_method3,
83
+ :custom_teardown_method0,
84
+ :custom_teardown_method1,
85
+ :teardown]
86
+ test_case = assert_teardown(expected_teardown_calls,
87
+ [[{:before => :append}],
88
+ [{:before => :append}],
89
+ [{:before => :prepend}],
90
+ [{:before => :prepend}]])
91
+ assert_inherited_teardown(expected_teardown_calls, test_case)
92
+
93
+ assert_inherited_teardown([:teardown], nil)
94
+ assert_called_fixtures(expected_teardown_calls, test_case)
95
+ end
96
+
97
+ def test_teardown_with_after_option
98
+ expected_teardown_calls = [:teardown,
99
+ :custom_teardown_method3,
100
+ :custom_teardown_method0,
101
+ :custom_teardown_method1]
102
+ test_case = assert_teardown(expected_teardown_calls,
103
+ [[{:after => :append}],
104
+ [{:after => :append}],
105
+ [{:after => :prepend}],
106
+ [{:after => :prepend}]])
107
+ assert_inherited_teardown(expected_teardown_calls, test_case)
108
+
109
+ assert_inherited_teardown([:teardown], nil)
110
+ assert_called_fixtures(expected_teardown_calls, test_case)
111
+ end
112
+
113
+ def test_teardown_with_invalid_option
114
+ assert_invalid_teardown_option(:unknown => true)
115
+ assert_invalid_teardown_option(:before => :unknown)
116
+ assert_invalid_teardown_option(:after => :unknown)
117
+ end
118
+
119
+ def test_teardown_with_option_to_inherited
120
+ expected_teardown_calls = [:teardown]
121
+ test_case = assert_teardown(expected_teardown_calls, nil)
122
+ assert_inherited_teardown([:custom_teardown_method3,
123
+ :custom_teardown_method1,
124
+ :custom_teardown_method0,
125
+ :teardown],
126
+ test_case, [])
127
+
128
+ assert_inherited_teardown([:teardown], nil)
129
+ assert_called_fixtures(expected_teardown_calls, test_case)
130
+ end
131
+
132
+ private
133
+ def assert_called_fixtures(expected, test_case)
134
+ test = test_case.new("test_nothing")
135
+ test.run(Test::Unit::TestResult.new) {}
136
+ assert_equal(expected, test.called_ids)
137
+ end
138
+
139
+ def assert_setup_customizable(expected, parent, options)
140
+ test_case = Class.new(parent || Test::Unit::TestCase) do
141
+ yield(self, :before) if block_given?
142
+
143
+ def called_ids
144
+ @called_ids ||= []
145
+ end
146
+
147
+ def called(id)
148
+ called_ids << id
149
+ end
150
+
151
+ def setup
152
+ called(:setup)
153
+ end
154
+
155
+ setup(*(options[0] || [])) if options
156
+ def custom_setup_method0
157
+ called(:custom_setup_method0)
158
+ end
159
+
160
+ def custom_setup_method1
161
+ called(:custom_setup_method1)
162
+ end
163
+ setup(*[:custom_setup_method1, *(options[1] || [])]) if options
164
+
165
+ setup(*(options[2] || [])) if options
166
+ def custom_setup_method2
167
+ called(:custom_setup_method2)
168
+ end
169
+ unregister_setup(:custom_setup_method2) if options
170
+
171
+ setup(*(options[3] || [])) if options
172
+ def custom_setup_method3
173
+ called(:custom_setup_method3)
174
+ end
175
+
176
+ def test_nothing
177
+ end
178
+
179
+ yield(self, :after) if block_given?
180
+ end
181
+
182
+ assert_called_fixtures(expected, test_case)
183
+ test_case
184
+ end
185
+
186
+ def assert_setup(expected, options)
187
+ _test_case = assert_setup_customizable(expected, nil, options)
188
+ assert_setup_customizable(expected, nil, options) do |test_case, tag|
189
+ test_case.send(:include, EmptyModule) if tag == :before
190
+ end
191
+ _test_case
192
+ end
193
+
194
+ def assert_inherited_setup(expected, parent, options=nil)
195
+ _test_case = assert_setup_customizable(expected, parent, options)
196
+ assert_setup_customizable(expected, parent, options) do |test_case, tag|
197
+ test_case.send(:include, EmptyModule) if tag == :before
198
+ end
199
+ _test_case
200
+ end
201
+
202
+ def assert_teardown_customizable(expected, parent, options)
203
+ test_case = Class.new(parent || Test::Unit::TestCase) do
204
+ yield(self, :before) if block_given?
205
+
206
+ def called_ids
207
+ @called_ids ||= []
208
+ end
209
+
210
+ def called(id)
211
+ called_ids << id
212
+ end
213
+
214
+ def teardown
215
+ called(:teardown)
216
+ end
217
+
218
+ teardown(*(options[0] || [])) if options
219
+ def custom_teardown_method0
220
+ called(:custom_teardown_method0)
221
+ end
222
+
223
+ def custom_teardown_method1
224
+ called(:custom_teardown_method1)
225
+ end
226
+ teardown(*[:custom_teardown_method1, *(options[1] || [])]) if options
227
+
228
+ teardown(*(options[2] || [])) if options
229
+ def custom_teardown_method2
230
+ called(:custom_teardown_method2)
231
+ end
232
+ unregister_teardown(:custom_teardown_method2) if options
233
+
234
+ teardown(*(options[3] || [])) if options
235
+ def custom_teardown_method3
236
+ called(:custom_teardown_method3)
237
+ end
238
+
239
+ def test_nothing
240
+ end
241
+
242
+ yield(self, :after) if block_given?
243
+ end
244
+
245
+ assert_called_fixtures(expected, test_case)
246
+ test_case
247
+ end
248
+
249
+ def assert_teardown(expected, options)
250
+ assert_teardown_customizable(expected, nil, options)
251
+ assert_teardown_customizable(expected, nil, options) do |test_case, tag|
252
+ test_case.send(:include, EmptyModule) if tag == :before
253
+ end
254
+ end
255
+
256
+ def assert_inherited_teardown(expected, parent, options=nil)
257
+ assert_teardown_customizable(expected, parent, options)
258
+ assert_teardown_customizable(expected, parent, options) do |test_case, tag|
259
+ test_case.send(:include, EmptyModule) if tag == :before
260
+ end
261
+ end
262
+
263
+ def assert_invalid_option(fixture_type, option)
264
+ exception = assert_raise(ArgumentError) do
265
+ Class.new(Test::Unit::TestCase) do
266
+ def test_nothing
267
+ end
268
+
269
+ send(fixture_type, option)
270
+ def fixture
271
+ end
272
+ end
273
+ end
274
+ assert_equal("must be {:before => :prepend}, {:before => :append}, " +
275
+ "{:after => :prepend} or {:after => :append}" +
276
+ ": #{option.inspect}",
277
+ exception.message)
278
+ end
279
+
280
+ def assert_invalid_setup_option(option)
281
+ assert_invalid_option(:setup, option)
282
+ end
283
+
284
+ def assert_invalid_teardown_option(option)
285
+ assert_invalid_option(:teardown, option)
286
+ end
287
+ end
@@ -0,0 +1,33 @@
1
+ require 'test/unit'
2
+ require 'testunit-test-util'
3
+
4
+ class TestUnitNotification < Test::Unit::TestCase
5
+ include TestUnitTestUtil
6
+
7
+ class TestCase < Test::Unit::TestCase
8
+ class << self
9
+ def suite
10
+ Test::Unit::TestSuite.new(name)
11
+ end
12
+ end
13
+
14
+ def test_notify
15
+ notify("1st notify")
16
+ notify("2nd notify. Reach here.")
17
+ end
18
+ end
19
+
20
+ def test_notify
21
+ result = _run_test("test_notify")
22
+ assert_equal("1 tests, 0 assertions, 0 failures, 0 errors, 0 pendings, " \
23
+ "0 omissions, 2 notifications",
24
+ result.to_s)
25
+ assert_fault_messages(["1st notify", "2nd notify. Reach here."],
26
+ result.notifications)
27
+ end
28
+
29
+ private
30
+ def _run_test(name)
31
+ super(TestCase, name)
32
+ end
33
+ end
@@ -0,0 +1,81 @@
1
+ require 'test/unit'
2
+ require 'testunit-test-util'
3
+
4
+ class TestUnitOmission < Test::Unit::TestCase
5
+ include TestUnitTestUtil
6
+
7
+ class TestCase < Test::Unit::TestCase
8
+ class << self
9
+ def suite
10
+ Test::Unit::TestSuite.new(name)
11
+ end
12
+ end
13
+
14
+ def test_omit
15
+ omit("1st omit")
16
+ omit("2nd omit. Should not be reached here.")
17
+ assert(true, "Should not be reached here too.")
18
+ end
19
+
20
+ def test_omit_with_condition
21
+ omit_if(false, "Never omit.")
22
+ omit_unless(true, "Never omit too.")
23
+ omit_if(true, "Should omit.")
24
+ omit("The last omit. Should not be reached here.")
25
+ end
26
+
27
+ def test_omit_with_block
28
+ omit("Omit block") do
29
+ flunk("Should not be reached here.")
30
+ end
31
+ assert(true, "Should be reached here.")
32
+ end
33
+
34
+ def test_omit_with_block_and_condition
35
+ omit_if(false, "Never omit.") do
36
+ assert(true, "Should be reached here.")
37
+ end
38
+ omit_if(true, "Should omit.") do
39
+ flunk("Never reached here.")
40
+ end
41
+ assert(true, "Should be reached here too.")
42
+ end
43
+ end
44
+
45
+ def test_omit
46
+ result = _run_test("test_omit")
47
+ assert_equal("1 tests, 0 assertions, 0 failures, 0 errors, 0 pendings, " \
48
+ "1 omissions, 0 notifications",
49
+ result.to_s)
50
+ assert_fault_messages(["1st omit"], result.omissions)
51
+ end
52
+
53
+ def test_omit_with_condition
54
+ result = _run_test("test_omit_with_condition")
55
+ assert_equal("1 tests, 0 assertions, 0 failures, 0 errors, 0 pendings, " \
56
+ "1 omissions, 0 notifications",
57
+ result.to_s)
58
+ assert_fault_messages(["Should omit."], result.omissions)
59
+ end
60
+
61
+ def test_omit_with_block
62
+ result = _run_test("test_omit_with_block")
63
+ assert_equal("1 tests, 1 assertions, 0 failures, 0 errors, 0 pendings, " \
64
+ "1 omissions, 0 notifications",
65
+ result.to_s)
66
+ assert_fault_messages(["Omit block"], result.omissions)
67
+ end
68
+
69
+ def test_omit_with_condition_and_block
70
+ result = _run_test("test_omit_with_block_and_condition")
71
+ assert_equal("1 tests, 2 assertions, 0 failures, 0 errors, 0 pendings, " \
72
+ "1 omissions, 0 notifications",
73
+ result.to_s)
74
+ assert_fault_messages(["Should omit."], result.omissions)
75
+ end
76
+
77
+ private
78
+ def _run_test(name)
79
+ super(TestCase, name)
80
+ end
81
+ end