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,515 +0,0 @@
1
- require File.expand_path('../helper', __FILE__)
2
-
3
- class TestRakeApplication < Rake::TestCase
4
-
5
- def setup
6
- super
7
-
8
- @app = Rake.application
9
- @app.options.rakelib = []
10
- end
11
-
12
- def test_display_tasks
13
- @app.options.show_tasks = :tasks
14
- @app.options.show_task_pattern = //
15
- @app.last_description = "COMMENT"
16
- @app.define_task(Rake::Task, "t")
17
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
18
- assert_match(/^rake t/, out)
19
- assert_match(/# COMMENT/, out)
20
- end
21
-
22
- def test_display_tasks_with_long_comments
23
- @app.terminal_columns = 80
24
- @app.options.show_tasks = :tasks
25
- @app.options.show_task_pattern = //
26
- @app.last_description = "1234567890" * 8
27
- @app.define_task(Rake::Task, "t")
28
-
29
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
30
-
31
- assert_match(/^rake t/, out)
32
- assert_match(/# 12345678901234567890123456789012345678901234567890123456789012345\.\.\./, out)
33
- end
34
-
35
- def test_display_tasks_with_task_name_wider_than_tty_display
36
- @app.terminal_columns = 80
37
- @app.options.show_tasks = :tasks
38
- @app.options.show_task_pattern = //
39
- task_name = "task name" * 80
40
- @app.last_description = "something short"
41
- @app.define_task(Rake::Task, task_name )
42
-
43
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
44
-
45
- # Ensure the entire task name is output and we end up showing no description
46
- assert_match(/rake #{task_name} # .../, out)
47
- end
48
-
49
- def test_display_tasks_with_very_long_task_name_to_a_non_tty_shows_name_and_comment
50
- @app.options.show_tasks = :tasks
51
- @app.options.show_task_pattern = //
52
- @app.tty_output = false
53
- description = "something short"
54
- task_name = "task name" * 80
55
- @app.last_description = "something short"
56
- @app.define_task(Rake::Task, task_name )
57
-
58
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
59
-
60
- # Ensure the entire task name is output and we end up showing no description
61
- assert_match(/rake #{task_name} # #{description}/, out)
62
- end
63
-
64
- def test_display_tasks_with_long_comments_to_a_non_tty_shows_entire_comment
65
- @app.options.show_tasks = :tasks
66
- @app.options.show_task_pattern = //
67
- @app.tty_output = false
68
- @app.last_description = "1234567890" * 8
69
- @app.define_task(Rake::Task, "t")
70
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
71
- assert_match(/^rake t/, out)
72
- assert_match(/# #{@app.last_description}/, out)
73
- end
74
-
75
- def test_display_tasks_with_long_comments_to_a_non_tty_with_columns_set_truncates_comments
76
- @app.terminal_columns = 80
77
- @app.options.show_tasks = :tasks
78
- @app.options.show_task_pattern = //
79
- @app.tty_output = false
80
- @app.last_description = "1234567890" * 8
81
- @app.define_task(Rake::Task, "t")
82
-
83
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
84
-
85
- assert_match(/^rake t/, out)
86
- assert_match(/# 12345678901234567890123456789012345678901234567890123456789012345\.\.\./, out)
87
- end
88
-
89
- def test_describe_tasks
90
- @app.options.show_tasks = :describe
91
- @app.options.show_task_pattern = //
92
- @app.last_description = "COMMENT"
93
- @app.define_task(Rake::Task, "t")
94
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
95
- assert_match(/^rake t$/, out)
96
- assert_match(/^ {4}COMMENT$/, out)
97
- end
98
-
99
- def test_show_lines
100
- @app.options.show_tasks = :lines
101
- @app.options.show_task_pattern = //
102
- @app.last_description = "COMMENT"
103
- @app.define_task(Rake::Task, "t")
104
- @app['t'].locations << "HERE:1"
105
- out, = capture_io do @app.instance_eval { display_tasks_and_comments } end
106
- assert_match(/^rake t +[^:]+:\d+ *$/, out)
107
- end
108
-
109
- def test_finding_rakefile
110
- rakefile_default
111
-
112
- assert_match(/Rakefile/i, @app.instance_eval { have_rakefile })
113
- end
114
-
115
- def test_not_finding_rakefile
116
- @app.instance_eval { @rakefiles = ['NEVER_FOUND'] }
117
- assert( ! @app.instance_eval do have_rakefile end )
118
- assert_nil @app.rakefile
119
- end
120
-
121
- def test_load_rakefile
122
- rakefile_unittest
123
-
124
- @app.instance_eval do
125
- handle_options
126
- options.silent = true
127
- load_rakefile
128
- end
129
-
130
- assert_equal "rakefile", @app.rakefile.downcase
131
- assert_equal @tempdir, Dir.pwd
132
- end
133
-
134
- def test_load_rakefile_doesnt_print_rakefile_directory_from_same_dir
135
- rakefile_unittest
136
-
137
- _, err = capture_io do
138
- @app.instance_eval do
139
- # pretend we started from the unittest dir
140
- @original_dir = File.expand_path(".")
141
- raw_load_rakefile
142
- end
143
- end
144
-
145
- assert_empty err
146
- end
147
-
148
- def test_load_rakefile_from_subdir
149
- rakefile_unittest
150
- Dir.chdir 'subdir'
151
-
152
- @app.instance_eval do
153
- handle_options
154
- options.silent = true
155
- load_rakefile
156
- end
157
-
158
- assert_equal "rakefile", @app.rakefile.downcase
159
- assert_equal @tempdir, Dir.pwd
160
- end
161
-
162
- def test_load_rakefile_prints_rakefile_directory_from_subdir
163
- rakefile_unittest
164
- Dir.chdir 'subdir'
165
-
166
- app = Rake::Application.new
167
- app.options.rakelib = []
168
-
169
- _, err = capture_io do
170
- app.instance_eval do
171
- raw_load_rakefile
172
- end
173
- end
174
-
175
- assert_equal "(in #{@tempdir}\)\n", err
176
- end
177
-
178
- def test_load_rakefile_doesnt_print_rakefile_directory_from_subdir_if_silent
179
- rakefile_unittest
180
- Dir.chdir 'subdir'
181
-
182
- _, err = capture_io do
183
- @app.instance_eval do
184
- handle_options
185
- options.silent = true
186
- raw_load_rakefile
187
- end
188
- end
189
-
190
- assert_empty err
191
- end
192
-
193
- def test_load_rakefile_not_found
194
- Dir.chdir @tempdir
195
- ENV['RAKE_SYSTEM'] = 'not_exist'
196
-
197
- @app.instance_eval do
198
- handle_options
199
- options.silent = true
200
- end
201
-
202
- ex = assert_raises(RuntimeError) do
203
- @app.instance_eval do raw_load_rakefile end
204
- end
205
-
206
- assert_match(/no rakefile found/i, ex.message)
207
- end
208
-
209
- def test_load_from_system_rakefile
210
- rake_system_dir
211
-
212
- @app.instance_eval do
213
- handle_options
214
- options.silent = true
215
- options.load_system = true
216
- options.rakelib = []
217
- load_rakefile
218
- end
219
-
220
- assert_equal @system_dir, @app.system_dir
221
- assert_nil @app.rakefile
222
- rescue SystemExit
223
- flunk 'failed to load rakefile'
224
- end
225
-
226
- def test_load_from_calculated_system_rakefile
227
- rakefile_default
228
- def @app.standard_system_dir
229
- "__STD_SYS_DIR__"
230
- end
231
-
232
- ENV['RAKE_SYSTEM'] = nil
233
-
234
- @app.instance_eval do
235
- handle_options
236
- options.silent = true
237
- options.load_system = true
238
- options.rakelib = []
239
- load_rakefile
240
- end
241
-
242
- assert_equal "__STD_SYS_DIR__", @app.system_dir
243
- rescue SystemExit
244
- flunk 'failed to find system rakefile'
245
- end
246
-
247
- def test_terminal_columns
248
- old_RAKE_COLUMNS = ENV['RAKE_COLUMNS']
249
-
250
- ENV['RAKE_COLUMNS'] = '42'
251
-
252
- app = Rake::Application.new
253
-
254
- assert_equal 42, app.terminal_columns
255
- ensure
256
- if old_RAKE_COLUMNS then
257
- ENV['RAKE_COLUMNS'].delete
258
- else
259
- ENV['RAKE_COLUMNS'] = old_RAKE_COLUMNS
260
- end
261
- end
262
-
263
- def test_windows
264
- assert ! (@app.windows? && @app.unix?)
265
- end
266
-
267
- def test_loading_imports
268
- loader = util_loader
269
-
270
- @app.instance_eval do
271
- add_loader("dummy", loader)
272
- add_import("x.dummy")
273
- load_imports
274
- end
275
-
276
- # HACK no assertions
277
- end
278
-
279
- def test_building_imported_files_on_demand
280
- loader = util_loader
281
-
282
- @app.instance_eval do
283
- intern(Rake::Task, "x.dummy").enhance do loader.make_dummy end
284
- add_loader("dummy", loader)
285
- add_import("x.dummy")
286
- load_imports
287
- end
288
-
289
- # HACK no assertions
290
- end
291
-
292
- def test_handle_options_should_strip_options_from_ARGV
293
- assert !@app.options.trace
294
-
295
- valid_option = '--trace'
296
- ARGV.clear
297
- ARGV << valid_option
298
-
299
- @app.handle_options
300
-
301
- assert !ARGV.include?(valid_option)
302
- assert @app.options.trace
303
- end
304
-
305
- def test_handle_options_trace_default_is_stderr
306
- ARGV.clear
307
- ARGV << "--trace"
308
-
309
- @app.handle_options
310
-
311
- assert_equal STDERR, @app.options.trace_output
312
- assert @app.options.trace
313
- end
314
-
315
- def test_handle_options_trace_overrides_to_stdout
316
- ARGV.clear
317
- ARGV << "--trace=stdout"
318
-
319
- @app.handle_options
320
-
321
- assert_equal STDOUT, @app.options.trace_output
322
- assert @app.options.trace
323
- end
324
-
325
- def test_handle_options_trace_does_not_eat_following_task_names
326
- assert !@app.options.trace
327
-
328
- ARGV.clear
329
- ARGV << "--trace" << "sometask"
330
-
331
- @app.handle_options
332
- assert ARGV.include?("sometask")
333
- assert @app.options.trace
334
- end
335
-
336
- def test_good_run
337
- ran = false
338
-
339
- ARGV << '--rakelib=""'
340
-
341
- @app.options.silent = true
342
-
343
- @app.instance_eval do
344
- intern(Rake::Task, "default").enhance { ran = true }
345
- end
346
-
347
- rakefile_default
348
-
349
- out, err = capture_io do
350
- @app.run
351
- end
352
-
353
- assert ran
354
- assert_empty err
355
- assert_equal "DEFAULT\n", out
356
- end
357
-
358
- def test_display_task_run
359
- ran = false
360
- ARGV.clear
361
- ARGV << '-f' << '-s' << '--tasks' << '--rakelib=""'
362
- @app.last_description = "COMMENT"
363
- @app.define_task(Rake::Task, "default")
364
- out, = capture_io { @app.run }
365
- assert @app.options.show_tasks
366
- assert ! ran
367
- assert_match(/rake default/, out)
368
- assert_match(/# COMMENT/, out)
369
- end
370
-
371
- def test_display_prereqs
372
- ran = false
373
- ARGV.clear
374
- ARGV << '-f' << '-s' << '--prereqs' << '--rakelib=""'
375
- @app.last_description = "COMMENT"
376
- t = @app.define_task(Rake::Task, "default")
377
- t.enhance([:a, :b])
378
- @app.define_task(Rake::Task, "a")
379
- @app.define_task(Rake::Task, "b")
380
- out, = capture_io { @app.run }
381
- assert @app.options.show_prereqs
382
- assert ! ran
383
- assert_match(/rake a$/, out)
384
- assert_match(/rake b$/, out)
385
- assert_match(/rake default\n( *(a|b)\n){2}/m, out)
386
- end
387
-
388
- def test_bad_run
389
- @app.intern(Rake::Task, "default").enhance { fail }
390
- ARGV.clear
391
- ARGV << '-f' << '-s' << '--rakelib=""'
392
- assert_raises(SystemExit) {
393
- _, err = capture_io { @app.run }
394
- assert_match(/see full trace/, err)
395
- }
396
- ensure
397
- ARGV.clear
398
- end
399
-
400
- def test_bad_run_with_trace
401
- @app.intern(Rake::Task, "default").enhance { fail }
402
- ARGV.clear
403
- ARGV << '-f' << '-s' << '-t'
404
- assert_raises(SystemExit) {
405
- _, err = capture_io { @app.run }
406
- refute_match(/see full trace/, err)
407
- }
408
- ensure
409
- ARGV.clear
410
- end
411
-
412
- def test_bad_run_with_backtrace
413
- @app.intern(Rake::Task, "default").enhance { fail }
414
- ARGV.clear
415
- ARGV << '-f' << '-s' << '--backtrace'
416
- assert_raises(SystemExit) {
417
- _, err = capture_io { @app.run }
418
- refute_match(/see full trace/, err)
419
- }
420
- ensure
421
- ARGV.clear
422
- end
423
-
424
- def test_run_with_bad_options
425
- @app.intern(Rake::Task, "default").enhance { fail }
426
- ARGV.clear
427
- ARGV << '-f' << '-s' << '--xyzzy'
428
- assert_raises(SystemExit) {
429
- capture_io { @app.run }
430
- }
431
- ensure
432
- ARGV.clear
433
- end
434
-
435
- def test_standard_exception_handling_invalid_option
436
- out, err = capture_io do
437
- e = assert_raises SystemExit do
438
- @app.standard_exception_handling do
439
- raise OptionParser::InvalidOption, 'blah'
440
- end
441
- end
442
-
443
- assert_equal 1, e.status
444
- end
445
-
446
- assert_empty out
447
- assert_equal "invalid option: blah\n", err
448
- end
449
-
450
- def test_standard_exception_handling_other
451
- out, err = capture_io do
452
- e = assert_raises SystemExit do
453
- @app.standard_exception_handling do
454
- raise 'blah'
455
- end
456
- end
457
-
458
- assert_equal 1, e.status
459
- end
460
-
461
- assert_empty out
462
- assert_match "rake aborted!\n", err
463
- assert_match "blah\n", err
464
- end
465
-
466
- def test_standard_exception_handling_system_exit
467
- out, err = capture_io do
468
- e = assert_raises SystemExit do
469
- @app.standard_exception_handling do
470
- exit 0
471
- end
472
- end
473
-
474
- assert_equal 0, e.status
475
- end
476
-
477
- assert_empty out
478
- assert_empty err
479
- end
480
-
481
- def test_standard_exception_handling_system_exit_nonzero
482
- out, err = capture_io do
483
- e = assert_raises SystemExit do
484
- @app.standard_exception_handling do
485
- exit 5
486
- end
487
- end
488
-
489
- assert_equal 5, e.status
490
- end
491
-
492
- assert_empty out
493
- assert_empty err
494
- end
495
-
496
- def util_loader
497
- loader = Object.new
498
-
499
- loader.instance_variable_set :@load_called, false
500
- def loader.load arg
501
- raise 'called more than once' if @load_called
502
- raise ArgumentError, arg unless arg == 'x.dummy'
503
- @load_called = true
504
- end
505
-
506
- loader.instance_variable_set :@make_dummy_called, false
507
- def loader.make_dummy
508
- raise 'called more than once' if @make_dummy_called
509
- @make_dummy_called = true
510
- end
511
-
512
- loader
513
- end
514
-
515
- end