vergissberlin 0.0.9 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (134) hide show
  1. checksums.yaml +4 -4
  2. data/lib/vergissberlin/version.rb +1 -1
  3. data/test/cases/version_case.rb +26 -0
  4. data/test/rest_spec.rb +12 -0
  5. data/test/suites/suite_test.rb +12 -0
  6. data/test/utils.rb +13 -0
  7. metadata +83 -134
  8. data/.gitignore +0 -17
  9. data/.travis.yml +0 -7
  10. data/Gemfile +0 -4
  11. data/LICENSE.txt +0 -22
  12. data/Rakefile +0 -10
  13. data/test/test_test.rb +0 -5
  14. data/test/version_test.rb +0 -12
  15. data/vendor/bundle/bin/rake +0 -23
  16. data/vendor/bundle/bin/vergissberlin +0 -23
  17. data/vendor/bundle/build_info/capistrano_colors-0.5.5.info +0 -1
  18. data/vendor/bundle/build_info/rake-10.0.4.info +0 -1
  19. data/vendor/bundle/gems/capistrano_colors-0.5.5/Manifest +0 -7
  20. data/vendor/bundle/gems/capistrano_colors-0.5.5/README.rdoc +0 -130
  21. data/vendor/bundle/gems/capistrano_colors-0.5.5/Rakefile +0 -1
  22. data/vendor/bundle/gems/capistrano_colors-0.5.5/capistrano_colors.gemspec +0 -33
  23. data/vendor/bundle/gems/capistrano_colors-0.5.5/lib/capistrano_colors/configuration.rb +0 -70
  24. data/vendor/bundle/gems/capistrano_colors-0.5.5/lib/capistrano_colors/logger.rb +0 -72
  25. data/vendor/bundle/gems/capistrano_colors-0.5.5/lib/capistrano_colors.rb +0 -18
  26. data/vendor/bundle/gems/rake-10.0.4/CHANGES +0 -530
  27. data/vendor/bundle/gems/rake-10.0.4/MIT-LICENSE +0 -21
  28. data/vendor/bundle/gems/rake-10.0.4/README.rdoc +0 -187
  29. data/vendor/bundle/gems/rake-10.0.4/Rakefile +0 -375
  30. data/vendor/bundle/gems/rake-10.0.4/TODO +0 -21
  31. data/vendor/bundle/gems/rake-10.0.4/bin/rake +0 -33
  32. data/vendor/bundle/gems/rake-10.0.4/install.rb +0 -90
  33. data/vendor/bundle/gems/rake-10.0.4/lib/rake/alt_system.rb +0 -109
  34. data/vendor/bundle/gems/rake-10.0.4/lib/rake/application.rb +0 -681
  35. data/vendor/bundle/gems/rake-10.0.4/lib/rake/backtrace.rb +0 -19
  36. data/vendor/bundle/gems/rake-10.0.4/lib/rake/clean.rb +0 -32
  37. data/vendor/bundle/gems/rake-10.0.4/lib/rake/cloneable.rb +0 -16
  38. data/vendor/bundle/gems/rake-10.0.4/lib/rake/contrib/compositepublisher.rb +0 -21
  39. data/vendor/bundle/gems/rake-10.0.4/lib/rake/contrib/ftptools.rb +0 -151
  40. data/vendor/bundle/gems/rake-10.0.4/lib/rake/contrib/publisher.rb +0 -73
  41. data/vendor/bundle/gems/rake-10.0.4/lib/rake/contrib/rubyforgepublisher.rb +0 -16
  42. data/vendor/bundle/gems/rake-10.0.4/lib/rake/contrib/sshpublisher.rb +0 -50
  43. data/vendor/bundle/gems/rake-10.0.4/lib/rake/contrib/sys.rb +0 -1
  44. data/vendor/bundle/gems/rake-10.0.4/lib/rake/default_loader.rb +0 -10
  45. data/vendor/bundle/gems/rake-10.0.4/lib/rake/dsl_definition.rb +0 -156
  46. data/vendor/bundle/gems/rake-10.0.4/lib/rake/early_time.rb +0 -18
  47. data/vendor/bundle/gems/rake-10.0.4/lib/rake/ext/core.rb +0 -27
  48. data/vendor/bundle/gems/rake-10.0.4/lib/rake/ext/module.rb +0 -0
  49. data/vendor/bundle/gems/rake-10.0.4/lib/rake/ext/string.rb +0 -168
  50. data/vendor/bundle/gems/rake-10.0.4/lib/rake/ext/time.rb +0 -15
  51. data/vendor/bundle/gems/rake-10.0.4/lib/rake/file_creation_task.rb +0 -24
  52. data/vendor/bundle/gems/rake-10.0.4/lib/rake/file_list.rb +0 -410
  53. data/vendor/bundle/gems/rake-10.0.4/lib/rake/file_task.rb +0 -47
  54. data/vendor/bundle/gems/rake-10.0.4/lib/rake/file_utils.rb +0 -114
  55. data/vendor/bundle/gems/rake-10.0.4/lib/rake/file_utils_ext.rb +0 -143
  56. data/vendor/bundle/gems/rake-10.0.4/lib/rake/gempackagetask.rb +0 -1
  57. data/vendor/bundle/gems/rake-10.0.4/lib/rake/invocation_chain.rb +0 -51
  58. data/vendor/bundle/gems/rake-10.0.4/lib/rake/invocation_exception_mixin.rb +0 -16
  59. data/vendor/bundle/gems/rake-10.0.4/lib/rake/loaders/makefile.rb +0 -40
  60. data/vendor/bundle/gems/rake-10.0.4/lib/rake/multi_task.rb +0 -13
  61. data/vendor/bundle/gems/rake-10.0.4/lib/rake/name_space.rb +0 -25
  62. data/vendor/bundle/gems/rake-10.0.4/lib/rake/packagetask.rb +0 -185
  63. data/vendor/bundle/gems/rake-10.0.4/lib/rake/pathmap.rb +0 -1
  64. data/vendor/bundle/gems/rake-10.0.4/lib/rake/phony.rb +0 -15
  65. data/vendor/bundle/gems/rake-10.0.4/lib/rake/private_reader.rb +0 -20
  66. data/vendor/bundle/gems/rake-10.0.4/lib/rake/promise.rb +0 -99
  67. data/vendor/bundle/gems/rake-10.0.4/lib/rake/pseudo_status.rb +0 -24
  68. data/vendor/bundle/gems/rake-10.0.4/lib/rake/rake_module.rb +0 -37
  69. data/vendor/bundle/gems/rake-10.0.4/lib/rake/rake_test_loader.rb +0 -22
  70. data/vendor/bundle/gems/rake-10.0.4/lib/rake/rdoctask.rb +0 -1
  71. data/vendor/bundle/gems/rake-10.0.4/lib/rake/ruby182_test_unit_fix.rb +0 -25
  72. data/vendor/bundle/gems/rake-10.0.4/lib/rake/rule_recursion_overflow_error.rb +0 -20
  73. data/vendor/bundle/gems/rake-10.0.4/lib/rake/runtest.rb +0 -22
  74. data/vendor/bundle/gems/rake-10.0.4/lib/rake/task.rb +0 -368
  75. data/vendor/bundle/gems/rake-10.0.4/lib/rake/task_argument_error.rb +0 -7
  76. data/vendor/bundle/gems/rake-10.0.4/lib/rake/task_arguments.rb +0 -78
  77. data/vendor/bundle/gems/rake-10.0.4/lib/rake/task_manager.rb +0 -296
  78. data/vendor/bundle/gems/rake-10.0.4/lib/rake/tasklib.rb +0 -22
  79. data/vendor/bundle/gems/rake-10.0.4/lib/rake/testtask.rb +0 -198
  80. data/vendor/bundle/gems/rake-10.0.4/lib/rake/thread_history_display.rb +0 -48
  81. data/vendor/bundle/gems/rake-10.0.4/lib/rake/thread_pool.rb +0 -155
  82. data/vendor/bundle/gems/rake-10.0.4/lib/rake/trace_output.rb +0 -22
  83. data/vendor/bundle/gems/rake-10.0.4/lib/rake/version.rb +0 -13
  84. data/vendor/bundle/gems/rake-10.0.4/lib/rake/win32.rb +0 -55
  85. data/vendor/bundle/gems/rake-10.0.4/lib/rake.rb +0 -71
  86. data/vendor/bundle/gems/rake-10.0.4/test/file_creation.rb +0 -34
  87. data/vendor/bundle/gems/rake-10.0.4/test/helper.rb +0 -562
  88. data/vendor/bundle/gems/rake-10.0.4/test/test_private_reader.rb +0 -42
  89. data/vendor/bundle/gems/rake-10.0.4/test/test_rake.rb +0 -40
  90. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_application.rb +0 -515
  91. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_application_options.rb +0 -455
  92. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_backtrace.rb +0 -89
  93. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_clean.rb +0 -14
  94. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_definitions.rb +0 -80
  95. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_directory_task.rb +0 -57
  96. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_dsl.rb +0 -40
  97. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_early_time.rb +0 -31
  98. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_extension.rb +0 -59
  99. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_file_creation_task.rb +0 -56
  100. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_file_list.rb +0 -628
  101. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_file_list_path_map.rb +0 -8
  102. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_file_task.rb +0 -122
  103. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_file_utils.rb +0 -305
  104. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_ftp_file.rb +0 -59
  105. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_functional.rb +0 -496
  106. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_invocation_chain.rb +0 -52
  107. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_makefile_loader.rb +0 -44
  108. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_multi_task.rb +0 -59
  109. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_name_space.rb +0 -43
  110. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_package_task.rb +0 -79
  111. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_path_map.rb +0 -157
  112. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_path_map_explode.rb +0 -34
  113. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_path_map_partial.rb +0 -18
  114. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_pseudo_status.rb +0 -21
  115. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_rake_test_loader.rb +0 -21
  116. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_reduce_compat.rb +0 -30
  117. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_require.rb +0 -40
  118. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_rules.rb +0 -327
  119. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_task.rb +0 -340
  120. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_task_argument_parsing.rb +0 -103
  121. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_task_arguments.rb +0 -88
  122. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_task_lib.rb +0 -9
  123. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_task_manager.rb +0 -157
  124. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_task_manager_argument_resolution.rb +0 -19
  125. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_task_with_arguments.rb +0 -171
  126. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_test_task.rb +0 -120
  127. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_thread_pool.rb +0 -122
  128. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_top_level_functions.rb +0 -71
  129. data/vendor/bundle/gems/rake-10.0.4/test/test_rake_win32.rb +0 -72
  130. data/vendor/bundle/gems/rake-10.0.4/test/test_thread_history_display.rb +0 -91
  131. data/vendor/bundle/gems/rake-10.0.4/test/test_trace_output.rb +0 -50
  132. data/vendor/bundle/specifications/capistrano_colors-0.5.5.gemspec +0 -32
  133. data/vendor/bundle/specifications/rake-10.0.4.gemspec +0 -35
  134. data/vergissberlin.gemspec +0 -26
@@ -1,496 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
- require 'fileutils'
3
- require 'open3'
4
-
5
- class TestRakeFunctional < Rake::TestCase
6
-
7
- def setup
8
- super
9
-
10
- @ruby_options = ["-I#{@rake_lib}", "-I."]
11
- @verbose = ENV['VERBOSE']
12
-
13
- if @verbose
14
- puts
15
- puts
16
- puts '-' * 80
17
- puts @__name__
18
- puts '-' * 80
19
- end
20
- end
21
-
22
- def test_rake_default
23
- rakefile_default
24
-
25
- rake
26
-
27
- assert_match(/^DEFAULT$/, @out)
28
- end
29
-
30
- def test_rake_error_on_bad_task
31
- rakefile_default
32
-
33
- rake '-t', 'xyz'
34
-
35
- assert_match(/rake aborted/, @err)
36
- end
37
-
38
- def test_env_available_at_top_scope
39
- rakefile_default
40
-
41
- rake "TESTTOPSCOPE=1"
42
-
43
- assert_match(/^TOPSCOPE$/, @out)
44
- end
45
-
46
- def test_env_available_at_task_scope
47
- rakefile_default
48
-
49
- rake 'TESTTASKSCOPE=1', 'task_scope'
50
-
51
- assert_match(/^TASKSCOPE$/, @out)
52
- end
53
-
54
- def test_multi_desc
55
- ENV['RAKE_COLUMNS'] = '80'
56
- rakefile_multidesc
57
-
58
- rake "-T"
59
-
60
- assert_match %r{^rake a *# A / A2 *$}, @out
61
- assert_match %r{^rake b *# B *$}, @out
62
- refute_match %r{^rake c}, @out
63
- assert_match %r{^rake d *# x{65}\.\.\.$}, @out
64
- end
65
-
66
- def test_long_description
67
- rakefile_multidesc
68
-
69
- rake "--describe"
70
-
71
- assert_match %r{^rake a\n *A / A2 *$}m, @out
72
- assert_match %r{^rake b\n *B *$}m, @out
73
- assert_match %r{^rake d\n *x{80}}m, @out
74
- refute_match %r{^rake c\n}m, @out
75
- end
76
-
77
- def test_proper_namespace_access
78
- rakefile_access
79
-
80
- rake
81
-
82
- refute_match %r{^BAD:}, @out
83
- end
84
-
85
- def test_rbext
86
- rakefile_rbext
87
-
88
- rake "-N"
89
-
90
- assert_match %r{^OK$}, @out
91
- end
92
-
93
- def test_system
94
- rake_system_dir
95
-
96
- rake '-g', "sys1"
97
-
98
- assert_match %r{^SYS1}, @out
99
- end
100
-
101
- def test_system_excludes_rakelib_files_too
102
- rake_system_dir
103
-
104
- rake '-g', "sys1", '-T', 'extra'
105
-
106
- refute_match %r{extra:extra}, @out
107
- end
108
-
109
- def test_by_default_rakelib_files_are_included
110
- rake_system_dir
111
- rakefile_extra
112
-
113
- rake '-T', 'extra', '--trace'
114
-
115
- assert_match %r{extra:extra}, @out
116
- end
117
-
118
- def test_implicit_system
119
- rake_system_dir
120
- Dir.chdir @tempdir
121
-
122
- rake "sys1", "--trace"
123
-
124
- assert_match %r{^SYS1}, @out
125
- end
126
-
127
- def test_no_system
128
- rake_system_dir
129
- rakefile_extra
130
-
131
- rake '-G', "sys1"
132
-
133
- assert_match %r{^Don't know how to build task}, @err # emacs wart: '
134
- end
135
-
136
- def test_nosearch_with_rakefile_uses_local_rakefile
137
- rakefile_default
138
-
139
- rake "--nosearch"
140
-
141
- assert_match %r{^DEFAULT}, @out
142
- end
143
-
144
- def test_nosearch_without_rakefile_finds_system
145
- rakefile_nosearch
146
- rake_system_dir
147
-
148
- rake "--nosearch", "sys1"
149
-
150
- assert_match %r{^SYS1}, @out
151
- end
152
-
153
- def test_nosearch_without_rakefile_and_no_system_fails
154
- rakefile_nosearch
155
- ENV['RAKE_SYSTEM'] = 'not_exist'
156
-
157
- rake "--nosearch"
158
-
159
- assert_match %r{^No Rakefile found}, @err
160
- end
161
-
162
- def test_invalid_command_line_options
163
- rakefile_default
164
-
165
- rake "--bad-options"
166
-
167
- assert_match %r{invalid +option}i, @err
168
- end
169
-
170
- def test_inline_verbose_default_should_show_command
171
- rakefile_verbose
172
-
173
- rake "inline_verbose_default"
174
-
175
- assert_match(/#{Regexp.quote(RUBY)} -e/, @err)
176
- end
177
-
178
- def test_inline_verbose_true_should_show_command
179
- rakefile_verbose
180
-
181
- rake "inline_verbose_true"
182
-
183
- assert_match(/#{Regexp.quote(RUBY)} -e/, @err)
184
- end
185
-
186
- def test_inline_verbose_false_should_not_show_command
187
- rakefile_verbose
188
-
189
- rake "inline_verbose_false"
190
-
191
- refute_match(/#{Regexp.quote(RUBY)} -e/, @err)
192
- end
193
-
194
- def test_block_verbose_false_should_not_show_command
195
- rakefile_verbose
196
-
197
- rake "block_verbose_false"
198
-
199
- refute_match(/#{Regexp.quote(RUBY)} -e/, @err)
200
- end
201
-
202
- def test_block_verbose_true_should_show_command
203
- rakefile_verbose
204
-
205
- rake "block_verbose_true"
206
-
207
- assert_match(/#{Regexp.quote(RUBY)} -e/, @err)
208
- end
209
-
210
- def test_standalone_verbose_true_should_show_command
211
- rakefile_verbose
212
-
213
- rake "standalone_verbose_true"
214
-
215
- assert_match(/#{Regexp.quote(RUBY)} -e/, @err)
216
- end
217
-
218
- def test_standalone_verbose_false_should_not_show_command
219
- rakefile_verbose
220
-
221
- rake "standalone_verbose_false"
222
-
223
- refute_match(/#{Regexp.quote(RUBY)} -e/, @err)
224
- end
225
-
226
- def test_dry_run
227
- rakefile_default
228
-
229
- rake "-n", "other"
230
-
231
- assert_match %r{Execute \(dry run\) default}, @err
232
- assert_match %r{Execute \(dry run\) other}, @err
233
- refute_match %r{DEFAULT}, @out
234
- refute_match %r{OTHER}, @out
235
- end
236
-
237
- # Test for the trace/dry_run bug found by Brian Chandler
238
- def test_dry_run_bug
239
- rakefile_dryrun
240
-
241
- rake
242
-
243
- FileUtils.rm_f 'temp_one'
244
-
245
- rake "--dry-run"
246
-
247
- refute_match(/No such file/, @out)
248
- end
249
-
250
- # Test for the trace/dry_run bug found by Brian Chandler
251
- def test_trace_bug
252
- rakefile_dryrun
253
-
254
- rake
255
-
256
- FileUtils.rm_f 'temp_one'
257
-
258
- rake "--trace"
259
-
260
- refute_match(/No such file/, @out)
261
- end
262
-
263
- def test_imports
264
- rakefile_imports
265
-
266
- rake
267
-
268
- assert File.exist?(File.join(@tempdir, 'dynamic_deps')),
269
- "'dynamic_deps' file should exist"
270
- assert_match(/^FIRST$\s+^DYNAMIC$\s+^STATIC$\s+^OTHER$/, @out)
271
- end
272
-
273
- def test_rules_chaining_to_file_task
274
- rakefile_chains
275
-
276
- rake
277
-
278
- assert File.exist?(File.join(@tempdir, 'play.app')),
279
- "'play.app' file should exist"
280
- end
281
-
282
- def test_file_creation_task
283
- rakefile_file_creation
284
-
285
- rake "prep"
286
- rake "run"
287
- rake "run"
288
-
289
- assert(@err !~ /^cp src/, "Should not recopy data")
290
- end
291
-
292
- def test_dash_f_with_no_arg_foils_rakefile_lookup
293
- rakefile_rakelib
294
-
295
- rake '-I', 'rakelib', '-rtest1', '-f'
296
-
297
- assert_match(/^TEST1$/, @out)
298
- end
299
-
300
- def test_dot_rake_files_can_be_loaded_with_dash_r
301
- rakefile_rakelib
302
-
303
- rake '-I', 'rakelib', '-rtest2', '-f'
304
-
305
- assert_empty @err
306
- assert_match(/^TEST2$/, @out)
307
- end
308
-
309
- def test_can_invoke_task_in_toplevel_namespace
310
- rakefile_namespace
311
-
312
- rake "copy"
313
-
314
- assert_match(/^COPY$/, @out)
315
- end
316
-
317
- def test_can_invoke_task_in_nested_namespace
318
- rakefile_namespace
319
-
320
- rake "nest:copy"
321
-
322
- assert_match(/^NEST COPY$/, @out)
323
- end
324
-
325
- def test_tasks_can_reference_task_in_same_namespace
326
- rakefile_namespace
327
-
328
- rake "nest:xx"
329
-
330
- assert_match(/^NEST COPY$/m, @out)
331
- end
332
-
333
- def test_tasks_can_reference_task_in_other_namespaces
334
- rakefile_namespace
335
-
336
- rake "b:run"
337
-
338
- assert_match(/^IN A\nIN B$/m, @out)
339
- end
340
-
341
- def test_anonymous_tasks_can_be_invoked_indirectly
342
- rakefile_namespace
343
-
344
- rake "anon"
345
-
346
- assert_match(/^ANON COPY$/m, @out)
347
- end
348
-
349
- def test_rake_namespace_refers_to_toplevel
350
- rakefile_namespace
351
-
352
- rake "very:nested:run"
353
-
354
- assert_match(/^COPY$/m, @out)
355
- end
356
-
357
- def test_file_task_are_not_scoped_by_namespaces
358
- rakefile_namespace
359
-
360
- rake "xyz.rb"
361
-
362
- assert_match(/^XYZ1\nXYZ2$/m, @out)
363
- end
364
-
365
- def test_file_task_dependencies_scoped_by_namespaces
366
- rakefile_namespace
367
-
368
- rake "scopedep.rb"
369
-
370
- assert_match(/^PREPARE\nSCOPEDEP$/m, @out)
371
- end
372
-
373
- def test_comment_before_task_acts_like_desc
374
- rakefile_comments
375
-
376
- rake "-T"
377
-
378
- refute_match(/comment for t1/, @out)
379
- end
380
-
381
- def test_comment_separated_from_task_by_blank_line_is_not_picked_up
382
- rakefile_comments
383
-
384
- rake "-T"
385
-
386
- refute_match("t2", @out)
387
- end
388
-
389
- def test_comment_after_desc_is_ignored
390
- rakefile_comments
391
-
392
- rake "-T"
393
-
394
- assert_match("override comment for t3", @out)
395
- end
396
-
397
- def test_comment_before_desc_is_ignored
398
- rakefile_comments
399
-
400
- rake "-T"
401
-
402
- assert_match("override comment for t4", @out)
403
- end
404
-
405
- def test_correct_number_of_tasks_reported
406
- rakefile_comments
407
-
408
- rake "-T"
409
-
410
- assert_equal(2, @out.split(/\n/).grep(/t\d/).size)
411
- end
412
-
413
- def test_file_list_is_requirable_separately
414
- ruby '-rrake/file_list', '-e', 'puts Rake::FileList["a"].size'
415
- assert_equal "1\n", @out
416
- end
417
-
418
- def can_detect_signals?
419
- system "ruby -e 'Process.kill \"TERM\", $$'"
420
- status = $?
421
- if @verbose
422
- puts " SIG status = #{$?.inspect}"
423
- puts " SIG status.respond_to?(:signaled?) = #{$?.respond_to?(:signaled?).inspect}"
424
- puts " SIG status.signaled? = #{status.signaled?}" if status.respond_to?(:signaled?)
425
- end
426
- status.respond_to?(:signaled?) && status.signaled?
427
- end
428
-
429
- def test_signal_propagation_in_tests
430
- if can_detect_signals?
431
- rakefile_test_signal
432
- rake
433
- assert_match(/ATEST/, @out)
434
- refute_match(/BTEST/, @out)
435
- else
436
- skip "Signal detect seems broken on this system"
437
- end
438
- end
439
-
440
- def test_failing_test_sets_exit_status
441
- skip if uncertain_exit_status?
442
- rakefile_failing_test_task
443
- rake
444
- assert @exit.exitstatus > 0, "should be non-zero"
445
- end
446
-
447
- def test_stand_alone_filelist
448
- rakefile_stand_alone_filelist
449
-
450
- run_ruby @ruby_options + ["stand_alone_filelist.rb"]
451
-
452
- assert_match(/^stand_alone_filelist\.rb$/, @out)
453
- assert_equal 0, @exit.exitstatus unless uncertain_exit_status?
454
- end
455
-
456
- private
457
-
458
- # We are unable to accurately verify that Rake returns a proper
459
- # error exit status using popen3 in Ruby 1.8.7 and JRuby. This
460
- # predicate function can be used to skip tests or assertions as
461
- # needed.
462
- def uncertain_exit_status?
463
- RUBY_VERSION < "1.9" || defined?(JRUBY_VERSION)
464
- end
465
-
466
- # Run a shell Ruby command with command line options (using the
467
- # default test options). Output is captured in @out and @err
468
- def ruby(*option_list)
469
- run_ruby(@ruby_options + option_list)
470
- end
471
-
472
- # Run a command line rake with the give rake options. Default
473
- # command line ruby options are included. Output is captured in
474
- # @out and @err
475
- def rake(*rake_options)
476
- run_ruby @ruby_options + [@rake_exec] + rake_options
477
- end
478
-
479
- # Low level ruby command runner ...
480
- def run_ruby(option_list)
481
- puts "COMMAND: [#{RUBY} #{option_list.join ' '}]" if @verbose
482
-
483
- inn, out, err, wait = Open3.popen3(RUBY, *option_list)
484
- inn.close
485
-
486
- @exit = wait ? wait.value : $?
487
- @out = out.read
488
- @err = err.read
489
-
490
- puts "OUTPUT: [#{@out}]" if @verbose
491
- puts "ERROR: [#{@err}]" if @verbose
492
- puts "EXIT: [#{@exit.inspect}]" if @verbose
493
- puts "PWD: [#{Dir.pwd}]" if @verbose
494
- end
495
-
496
- end
@@ -1,52 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
-
3
- class TestRakeInvocationChain < Rake::TestCase
4
-
5
- def setup
6
- super
7
-
8
- @empty = Rake::InvocationChain::EMPTY
9
-
10
- @first_member = "A"
11
- @second_member = "B"
12
- @one = @empty.append(@first_member)
13
- @two = @one.append(@second_member)
14
- end
15
-
16
- def test_append
17
- chain = @empty.append("A")
18
-
19
- assert_equal 'TOP => A', chain.to_s # HACK
20
- end
21
-
22
- def test_append_one_circular
23
- ex = assert_raises RuntimeError do
24
- @one.append(@first_member)
25
- end
26
- assert_match(/circular +dependency/i, ex.message)
27
- assert_match(/A.*=>.*A/, ex.message)
28
- end
29
-
30
- def test_append_two_circular
31
- ex = assert_raises RuntimeError do
32
- @two.append(@first_member)
33
- end
34
- assert_match(/A.*=>.*B.*=>.*A/, ex.message)
35
- end
36
-
37
- def test_member_eh_one
38
- assert @one.member?(@first_member)
39
- end
40
-
41
- def test_member_eh_two
42
- assert @two.member?(@first_member)
43
- assert @two.member?(@second_member)
44
- end
45
-
46
- def test_to_s_empty
47
- assert_equal "TOP", @empty.to_s
48
- assert_equal "TOP => A", @one.to_s
49
- end
50
-
51
- end
52
-
@@ -1,44 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
- require 'rake/loaders/makefile'
3
-
4
- class TestRakeMakefileLoader < Rake::TestCase
5
- include Rake
6
-
7
- def test_parse
8
- Dir.chdir @tempdir
9
-
10
- open 'sample.mf', 'w' do |io|
11
- io << <<-'SAMPLE_MF'
12
- # Comments
13
- a: a1 a2 a3 a4
14
- b: b1 b2 b3 \
15
- b4 b5 b6\
16
- # Mid: Comment
17
- b7
18
-
19
- a : a5 a6 a7
20
- c: c1
21
- d: d1 d2 \
22
-
23
- e f : e1 f1
24
-
25
- g\ 0: g1 g\ 2 g\ 3 g4
26
- SAMPLE_MF
27
- end
28
-
29
- Task.clear
30
- loader = Rake::MakefileLoader.new
31
- loader.load 'sample.mf'
32
- %w(a b c d).each do |t|
33
- assert Task.task_defined?(t), "#{t} should be a defined task"
34
- end
35
- assert_equal %w(a1 a2 a3 a4 a5 a6 a7).sort, Task['a'].prerequisites.sort
36
- assert_equal %w(b1 b2 b3 b4 b5 b6 b7).sort, Task['b'].prerequisites.sort
37
- assert_equal %w(c1).sort, Task['c'].prerequisites.sort
38
- assert_equal %w(d1 d2).sort, Task['d'].prerequisites.sort
39
- assert_equal %w(e1 f1).sort, Task['e'].prerequisites.sort
40
- assert_equal %w(e1 f1).sort, Task['f'].prerequisites.sort
41
- assert_equal ["g1", "g 2", "g 3", "g4"].sort, Task['g 0'].prerequisites.sort
42
- assert_equal 7, Task.tasks.size
43
- end
44
- end
@@ -1,59 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
- require 'thread'
3
-
4
- class TestRakeMultiTask < Rake::TestCase
5
- include Rake
6
- include Rake::DSL
7
-
8
- def setup
9
- super
10
-
11
- Task.clear
12
- @runs = Array.new
13
- @mutex = Mutex.new
14
- end
15
-
16
- def add_run(obj)
17
- @mutex.synchronize do
18
- @runs << obj
19
- end
20
- end
21
-
22
- def test_running_multitasks
23
- task :a do 3.times do |i| add_run("A#{i}"); sleep 0.01; end end
24
- task :b do 3.times do |i| add_run("B#{i}"); sleep 0.01; end end
25
- multitask :both => [:a, :b]
26
- Task[:both].invoke
27
- assert_equal 6, @runs.size
28
- assert @runs.index("A0") < @runs.index("A1")
29
- assert @runs.index("A1") < @runs.index("A2")
30
- assert @runs.index("B0") < @runs.index("B1")
31
- assert @runs.index("B1") < @runs.index("B2")
32
- end
33
-
34
- def test_all_multitasks_wait_on_slow_prerequisites
35
- task :slow do 3.times do |i| add_run("S#{i}"); sleep 0.05 end end
36
- task :a => [:slow] do 3.times do |i| add_run("A#{i}"); sleep 0.01 end end
37
- task :b => [:slow] do 3.times do |i| add_run("B#{i}"); sleep 0.01 end end
38
- multitask :both => [:a, :b]
39
- Task[:both].invoke
40
- assert_equal 9, @runs.size
41
- assert @runs.index("S0") < @runs.index("S1")
42
- assert @runs.index("S1") < @runs.index("S2")
43
- assert @runs.index("S2") < @runs.index("A0")
44
- assert @runs.index("S2") < @runs.index("B0")
45
- assert @runs.index("A0") < @runs.index("A1")
46
- assert @runs.index("A1") < @runs.index("A2")
47
- assert @runs.index("B0") < @runs.index("B1")
48
- assert @runs.index("B1") < @runs.index("B2")
49
- end
50
-
51
- def test_multitasks_with_parameters
52
- task :a, [:arg] do |t,args| add_run(args[:arg]) end
53
- multitask :b, [:arg] => [:a] do |t,args| add_run(args[:arg]+'mt') end
54
- Task[:b].invoke "b"
55
- assert @runs[0] == "b"
56
- assert @runs[1] == "bmt"
57
- end
58
- end
59
-
@@ -1,43 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
-
3
- class TestRakeNameSpace < Rake::TestCase
4
-
5
- class TM
6
- include Rake::TaskManager
7
- end
8
-
9
- def test_namespace_creation
10
- mgr = TM.new
11
- ns = Rake::NameSpace.new(mgr, [])
12
- refute_nil ns
13
- end
14
-
15
- def test_namespace_lookup
16
- mgr = TM.new
17
- ns = mgr.in_namespace("n") do
18
- mgr.define_task(Rake::Task, "t")
19
- end
20
-
21
- refute_nil ns["t"]
22
- assert_equal mgr["n:t"], ns["t"]
23
- end
24
-
25
- def test_namespace_reports_tasks_it_owns
26
- mgr = TM.new
27
- nns = nil
28
- ns = mgr.in_namespace("n") do
29
- mgr.define_task(Rake::Task, :x)
30
- mgr.define_task(Rake::Task, :y)
31
- nns = mgr.in_namespace("nn") do
32
- mgr.define_task(Rake::Task, :z)
33
- end
34
- end
35
- mgr.in_namespace("m") do
36
- mgr.define_task(Rake::Task, :x)
37
- end
38
-
39
- assert_equal ["n:nn:z", "n:x", "n:y"],
40
- ns.tasks.map { |tsk| tsk.name }
41
- assert_equal ["n:nn:z"], nns.tasks.map {|t| t.name}
42
- end
43
- end