rake 0.9.2 → 0.9.2.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of rake might be problematic. Click here for more details.
- data/CHANGES +13 -0
- data/README.rdoc +12 -15
- data/Rakefile +8 -44
- data/bin/rake +1 -0
- data/lib/rake.rb +4 -0
- data/lib/rake/application.rb +9 -3
- data/lib/rake/classic_namespace.rb +2 -0
- data/lib/rake/clean.rb +1 -0
- data/lib/rake/contrib/publisher.rb +10 -6
- data/lib/rake/contrib/sshpublisher.rb +5 -0
- data/lib/rake/dsl_definition.rb +13 -4
- data/lib/rake/ext/time.rb +3 -3
- data/lib/rake/file_utils.rb +9 -7
- data/lib/rake/file_utils_ext.rb +4 -1
- data/lib/rake/gempackagetask.rb +2 -0
- data/lib/rake/rake_test_loader.rb +15 -6
- data/lib/rake/rdoctask.rb +5 -1
- data/lib/rake/task_arguments.rb +4 -0
- data/lib/rake/version.rb +5 -7
- data/test/file_creation.rb +2 -2
- data/test/helper.rb +460 -12
- data/test/test_rake.rb +3 -1
- data/test/test_rake_application.rb +250 -125
- data/test/test_rake_application_options.rb +146 -193
- data/test/test_rake_clean.rb +2 -0
- data/test/test_rake_definitions.rb +6 -6
- data/test/test_rake_directory_task.rb +26 -35
- data/test/test_rake_dsl.rb +4 -0
- data/test/test_rake_file_creation_task.rb +1 -7
- data/test/test_rake_file_list.rb +128 -133
- data/test/test_rake_file_task.rb +1 -3
- data/test/test_rake_file_utils.rb +123 -70
- data/test/test_rake_functional.rb +234 -252
- data/test/test_rake_makefile_loader.rb +22 -1
- data/test/test_rake_package_task.rb +10 -9
- data/test/test_rake_path_map_explode.rb +3 -0
- data/test/test_rake_pseudo_status.rb +3 -2
- data/test/test_rake_rake_test_loader.rb +21 -0
- data/test/test_rake_rdoc_task.rb +5 -3
- data/test/test_rake_require.rb +8 -3
- data/test/test_rake_rules.rb +56 -75
- data/test/test_rake_task.rb +5 -9
- data/test/test_rake_task_argument_parsing.rb +33 -46
- data/test/test_rake_task_arguments.rb +2 -0
- data/test/test_rake_task_manager.rb +12 -0
- data/test/test_rake_task_with_arguments.rb +11 -0
- data/test/test_rake_test_task.rb +55 -57
- data/test/test_rake_top_level_functions.rb +52 -17
- data/test/test_rake_win32.rb +31 -42
- metadata +6 -52
- data/RRR +0 -9
- data/test/check_expansion.rb +0 -5
- data/test/check_no_expansion.rb +0 -5
- data/test/data/access/Rakefile +0 -35
- data/test/data/chains/Rakefile +0 -15
- data/test/data/comments/Rakefile +0 -18
- data/test/data/default/Rakefile +0 -17
- data/test/data/deprecated_import/Rakefile +0 -1
- data/test/data/dryrun/Rakefile +0 -22
- data/test/data/extra/Rakefile +0 -1
- data/test/data/file_creation_task/Rakefile +0 -31
- data/test/data/imports/Rakefile +0 -19
- data/test/data/imports/deps.mf +0 -1
- data/test/data/multidesc/Rakefile +0 -15
- data/test/data/namespace/Rakefile +0 -64
- data/test/data/rakelib/test1.rb +0 -4
- data/test/data/rbext/rakefile.rb +0 -3
- data/test/data/sample.mf +0 -14
- data/test/data/statusreturn/Rakefile +0 -6
- data/test/data/unittest/Rakefile +0 -1
- data/test/data/verbose/Rakefile +0 -34
- data/test/in_environment.rb +0 -35
- data/test/reqfile.rb +0 -3
- data/test/reqfile2.rb +0 -3
- data/test/shellcommand.rb +0 -3
@@ -28,312 +28,267 @@ class TestRakeApplicationOptions < Rake::TestCase
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def test_default_options
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
assert ! Rake::FileUtilsExt.nowrite_flag
|
47
|
-
end
|
31
|
+
opts = command_line
|
32
|
+
assert_nil opts.classic_namespace
|
33
|
+
assert_nil opts.dryrun
|
34
|
+
assert_nil opts.ignore_system
|
35
|
+
assert_nil opts.load_system
|
36
|
+
assert_nil opts.nosearch
|
37
|
+
assert_equal ['rakelib'], opts.rakelib
|
38
|
+
assert_nil opts.show_prereqs
|
39
|
+
assert_nil opts.show_task_pattern
|
40
|
+
assert_nil opts.show_tasks
|
41
|
+
assert_nil opts.silent
|
42
|
+
assert_nil opts.trace
|
43
|
+
assert_equal ['rakelib'], opts.rakelib
|
44
|
+
assert ! Rake::FileUtilsExt.verbose_flag
|
45
|
+
assert ! Rake::FileUtilsExt.nowrite_flag
|
48
46
|
end
|
49
47
|
|
50
48
|
def test_dry_run
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
assert Rake::FileUtilsExt.nowrite_flag
|
57
|
-
end
|
49
|
+
flags('--dry-run', '-n') do |opts|
|
50
|
+
assert opts.dryrun
|
51
|
+
assert opts.trace
|
52
|
+
assert Rake::FileUtilsExt.verbose_flag
|
53
|
+
assert Rake::FileUtilsExt.nowrite_flag
|
58
54
|
end
|
59
55
|
end
|
60
56
|
|
61
57
|
def test_describe
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
assert_equal(//.to_s, opts.show_task_pattern.to_s)
|
66
|
-
end
|
58
|
+
flags('--describe') do |opts|
|
59
|
+
assert_equal :describe, opts.show_tasks
|
60
|
+
assert_equal(//.to_s, opts.show_task_pattern.to_s)
|
67
61
|
end
|
68
62
|
end
|
69
63
|
|
70
64
|
def test_describe_with_pattern
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
assert_equal(/X/.to_s, opts.show_task_pattern.to_s)
|
75
|
-
end
|
65
|
+
flags('--describe=X') do |opts|
|
66
|
+
assert_equal :describe, opts.show_tasks
|
67
|
+
assert_equal(/X/.to_s, opts.show_task_pattern.to_s)
|
76
68
|
end
|
77
69
|
end
|
78
70
|
|
79
71
|
def test_execute
|
80
|
-
|
72
|
+
$xyzzy = 0
|
73
|
+
flags('--execute=$xyzzy=1', '-e $xyzzy=1') do |opts|
|
74
|
+
assert_equal 1, $xyzzy
|
75
|
+
assert_equal :exit, @exit
|
81
76
|
$xyzzy = 0
|
82
|
-
flags('--execute=$xyzzy=1', '-e $xyzzy=1') do |opts|
|
83
|
-
assert_equal 1, $xyzzy
|
84
|
-
assert_equal :exit, @exit
|
85
|
-
$xyzzy = 0
|
86
|
-
end
|
87
77
|
end
|
88
78
|
end
|
89
79
|
|
90
80
|
def test_execute_and_continue
|
91
|
-
|
81
|
+
$xyzzy = 0
|
82
|
+
flags('--execute-continue=$xyzzy=1', '-E $xyzzy=1') do |opts|
|
83
|
+
assert_equal 1, $xyzzy
|
84
|
+
refute_equal :exit, @exit
|
92
85
|
$xyzzy = 0
|
93
|
-
flags('--execute-continue=$xyzzy=1', '-E $xyzzy=1') do |opts|
|
94
|
-
assert_equal 1, $xyzzy
|
95
|
-
refute_equal :exit, @exit
|
96
|
-
$xyzzy = 0
|
97
|
-
end
|
98
86
|
end
|
99
87
|
end
|
100
88
|
|
101
89
|
def test_execute_and_print
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
$xyzzy = 0
|
109
|
-
end
|
90
|
+
$xyzzy = 0
|
91
|
+
out, = capture_io do
|
92
|
+
flags('--execute-print=$xyzzy="pugh"', '-p $xyzzy="pugh"') do |opts|
|
93
|
+
assert_equal 'pugh', $xyzzy
|
94
|
+
assert_equal :exit, @exit
|
95
|
+
$xyzzy = 0
|
110
96
|
end
|
111
|
-
|
112
|
-
assert_match(/^pugh$/, out)
|
113
97
|
end
|
98
|
+
|
99
|
+
assert_match(/^pugh$/, out)
|
114
100
|
end
|
115
101
|
|
116
102
|
def test_help
|
117
|
-
|
118
|
-
|
119
|
-
flags '--help', '-H', '-h'
|
120
|
-
end
|
121
|
-
|
122
|
-
assert_match(/\Arake/, out)
|
123
|
-
assert_match(/\boptions\b/, out)
|
124
|
-
assert_match(/\btargets\b/, out)
|
125
|
-
assert_equal :exit, @exit
|
103
|
+
out, = capture_io do
|
104
|
+
flags '--help', '-H', '-h'
|
126
105
|
end
|
106
|
+
|
107
|
+
assert_match(/\Arake/, out)
|
108
|
+
assert_match(/\boptions\b/, out)
|
109
|
+
assert_match(/\btargets\b/, out)
|
110
|
+
assert_equal :exit, @exit
|
127
111
|
end
|
128
112
|
|
129
113
|
def test_libdir
|
130
|
-
|
131
|
-
|
132
|
-
$:.include?('xx')
|
133
|
-
end
|
114
|
+
flags(['--libdir', 'xx'], ['-I', 'xx'], ['-Ixx']) do |opts|
|
115
|
+
$:.include?('xx')
|
134
116
|
end
|
135
117
|
ensure
|
136
118
|
$:.delete('xx')
|
137
119
|
end
|
138
120
|
|
139
121
|
def test_rakefile
|
140
|
-
|
141
|
-
|
142
|
-
assert_equal ['RF'], @app.instance_eval { @rakefiles }
|
143
|
-
end
|
122
|
+
flags(['--rakefile', 'RF'], ['--rakefile=RF'], ['-f', 'RF'], ['-fRF']) do |opts|
|
123
|
+
assert_equal ['RF'], @app.instance_eval { @rakefiles }
|
144
124
|
end
|
145
125
|
end
|
146
126
|
|
147
127
|
def test_rakelib
|
148
|
-
|
149
|
-
|
150
|
-
assert_equal ['A', 'B', 'C'], opts.rakelib
|
151
|
-
end
|
128
|
+
flags(['--rakelibdir', 'A:B:C'], ['--rakelibdir=A:B:C'], ['-R', 'A:B:C'], ['-RA:B:C']) do |opts|
|
129
|
+
assert_equal ['A', 'B', 'C'], opts.rakelib
|
152
130
|
end
|
153
131
|
end
|
154
132
|
|
155
133
|
def test_require
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
134
|
+
$LOAD_PATH.unshift @tempdir
|
135
|
+
|
136
|
+
open 'reqfile.rb', 'w' do |io| io << 'TESTING_REQUIRE << 1' end
|
137
|
+
open 'reqfile2.rb', 'w' do |io| io << 'TESTING_REQUIRE << 2' end
|
138
|
+
open 'reqfile3.rake', 'w' do |io| io << 'TESTING_REQUIRE << 3' end
|
139
|
+
|
140
|
+
flags(['--require', 'reqfile'], '-rreqfile2', '-rreqfile3')
|
141
|
+
|
142
|
+
assert_includes TESTING_REQUIRE, 1
|
143
|
+
assert_includes TESTING_REQUIRE, 2
|
144
|
+
assert_includes TESTING_REQUIRE, 3
|
145
|
+
|
146
|
+
assert_equal 3, TESTING_REQUIRE.size
|
147
|
+
ensure
|
148
|
+
$LOAD_PATH.delete @tempdir
|
164
149
|
end
|
165
150
|
|
166
151
|
def test_missing_require
|
167
|
-
|
168
|
-
|
169
|
-
flags(['--require', 'test/missing']) do |opts|
|
170
|
-
end
|
152
|
+
ex = assert_raises(LoadError) do
|
153
|
+
flags(['--require', 'test/missing']) do |opts|
|
171
154
|
end
|
172
|
-
assert_match(/such file/, ex.message)
|
173
|
-
assert_match(/test\/missing/, ex.message)
|
174
155
|
end
|
156
|
+
assert_match(/such file/, ex.message)
|
157
|
+
assert_match(/test\/missing/, ex.message)
|
175
158
|
end
|
176
159
|
|
177
160
|
def test_prereqs
|
178
|
-
|
179
|
-
|
180
|
-
assert opts.show_prereqs
|
181
|
-
end
|
161
|
+
flags('--prereqs', '-P') do |opts|
|
162
|
+
assert opts.show_prereqs
|
182
163
|
end
|
183
164
|
end
|
184
165
|
|
185
166
|
def test_quiet
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
assert ! opts.silent
|
190
|
-
end
|
167
|
+
flags('--quiet', '-q') do |opts|
|
168
|
+
assert ! Rake::FileUtilsExt.verbose_flag
|
169
|
+
assert ! opts.silent
|
191
170
|
end
|
192
171
|
end
|
193
172
|
|
194
173
|
def test_no_search
|
195
|
-
|
196
|
-
|
197
|
-
assert opts.nosearch
|
198
|
-
end
|
174
|
+
flags('--nosearch', '--no-search', '-N') do |opts|
|
175
|
+
assert opts.nosearch
|
199
176
|
end
|
200
177
|
end
|
201
178
|
|
202
179
|
def test_silent
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
assert opts.silent
|
207
|
-
end
|
180
|
+
flags('--silent', '-s') do |opts|
|
181
|
+
assert ! Rake::FileUtilsExt.verbose_flag
|
182
|
+
assert opts.silent
|
208
183
|
end
|
209
184
|
end
|
210
185
|
|
211
186
|
def test_system
|
212
|
-
|
213
|
-
|
214
|
-
assert opts.load_system
|
215
|
-
end
|
187
|
+
flags('--system', '-g') do |opts|
|
188
|
+
assert opts.load_system
|
216
189
|
end
|
217
190
|
end
|
218
191
|
|
219
192
|
def test_no_system
|
220
|
-
|
221
|
-
|
222
|
-
assert opts.ignore_system
|
223
|
-
end
|
193
|
+
flags('--no-system', '-G') do |opts|
|
194
|
+
assert opts.ignore_system
|
224
195
|
end
|
225
196
|
end
|
226
197
|
|
227
198
|
def test_trace
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
assert ! Rake::FileUtilsExt.nowrite_flag
|
233
|
-
end
|
199
|
+
flags('--trace', '-t') do |opts|
|
200
|
+
assert opts.trace
|
201
|
+
assert Rake::FileUtilsExt.verbose_flag
|
202
|
+
assert ! Rake::FileUtilsExt.nowrite_flag
|
234
203
|
end
|
235
204
|
end
|
236
205
|
|
237
206
|
def test_trace_rules
|
238
|
-
|
239
|
-
|
240
|
-
assert opts.trace_rules
|
241
|
-
end
|
207
|
+
flags('--rules') do |opts|
|
208
|
+
assert opts.trace_rules
|
242
209
|
end
|
243
210
|
end
|
244
211
|
|
245
212
|
def test_tasks
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
assert_equal(/xyz/.to_s, opts.show_task_pattern.to_s)
|
254
|
-
end
|
213
|
+
flags('--tasks', '-T') do |opts|
|
214
|
+
assert_equal :tasks, opts.show_tasks
|
215
|
+
assert_equal(//.to_s, opts.show_task_pattern.to_s)
|
216
|
+
end
|
217
|
+
flags(['--tasks', 'xyz'], ['-Txyz']) do |opts|
|
218
|
+
assert_equal :tasks, opts.show_tasks
|
219
|
+
assert_equal(/xyz/.to_s, opts.show_task_pattern.to_s)
|
255
220
|
end
|
256
221
|
end
|
257
222
|
|
258
223
|
def test_where
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
assert_equal(/xyz/.to_s, opts.show_task_pattern.to_s)
|
267
|
-
end
|
224
|
+
flags('--where', '-W') do |opts|
|
225
|
+
assert_equal :lines, opts.show_tasks
|
226
|
+
assert_equal(//.to_s, opts.show_task_pattern.to_s)
|
227
|
+
end
|
228
|
+
flags(['--where', 'xyz'], ['-Wxyz']) do |opts|
|
229
|
+
assert_equal :lines, opts.show_tasks
|
230
|
+
assert_equal(/xyz/.to_s, opts.show_task_pattern.to_s)
|
268
231
|
end
|
269
232
|
end
|
270
233
|
|
271
234
|
def test_no_deprecated_messages
|
272
|
-
|
273
|
-
|
274
|
-
assert opts.ignore_deprecate
|
275
|
-
end
|
235
|
+
flags('--no-deprecation-warnings', '-X') do |opts|
|
236
|
+
assert opts.ignore_deprecate
|
276
237
|
end
|
277
238
|
end
|
278
239
|
|
279
240
|
def test_verbose
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
assert ! opts.silent
|
285
|
-
end
|
241
|
+
out, = capture_io do
|
242
|
+
flags('--verbose', '-V') do |opts|
|
243
|
+
assert Rake::FileUtilsExt.verbose_flag
|
244
|
+
assert ! opts.silent
|
286
245
|
end
|
287
|
-
|
288
|
-
assert_equal "rake, version #{Rake::VERSION}\n", out
|
289
246
|
end
|
247
|
+
|
248
|
+
assert_equal "rake, version #{Rake::VERSION}\n", out
|
290
249
|
end
|
291
250
|
|
292
251
|
def test_version
|
293
|
-
|
294
|
-
|
295
|
-
flags '--version', '-V'
|
296
|
-
end
|
297
|
-
|
298
|
-
assert_match(/\bversion\b/, out)
|
299
|
-
assert_match(/\b#{RAKEVERSION}\b/, out)
|
300
|
-
assert_equal :exit, @exit
|
252
|
+
out, = capture_io do
|
253
|
+
flags '--version', '-V'
|
301
254
|
end
|
255
|
+
|
256
|
+
assert_match(/\bversion\b/, out)
|
257
|
+
assert_match(/\b#{RAKEVERSION}\b/, out)
|
258
|
+
assert_equal :exit, @exit
|
302
259
|
end
|
303
260
|
|
304
261
|
def test_classic_namespace
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
end
|
316
|
-
end
|
317
|
-
|
318
|
-
assert_match(/deprecated/, err)
|
262
|
+
_, err = capture_io do
|
263
|
+
flags(['--classic-namespace'],
|
264
|
+
['-C', '-T', '-P', '-n', '-s', '-t']) do |opts|
|
265
|
+
assert opts.classic_namespace
|
266
|
+
assert_equal opts.show_tasks, $show_tasks
|
267
|
+
assert_equal opts.show_prereqs, $show_prereqs
|
268
|
+
assert_equal opts.trace, $trace
|
269
|
+
assert_equal opts.dryrun, $dryrun
|
270
|
+
assert_equal opts.silent, $silent
|
271
|
+
end
|
319
272
|
end
|
273
|
+
|
274
|
+
assert_match(/deprecated/, err)
|
320
275
|
end
|
321
276
|
|
322
277
|
def test_bad_option
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
end
|
278
|
+
_, err = capture_io do
|
279
|
+
ex = assert_raises(OptionParser::InvalidOption) do
|
280
|
+
flags('--bad-option')
|
281
|
+
end
|
282
|
+
|
283
|
+
if ex.message =~ /^While/ # Ruby 1.9 error message
|
284
|
+
assert_match(/while parsing/i, ex.message)
|
285
|
+
else # Ruby 1.8 error message
|
286
|
+
assert_match(/(invalid|unrecognized) option/i, ex.message)
|
287
|
+
assert_match(/--bad-option/, ex.message)
|
334
288
|
end
|
335
|
-
assert_equal '', err
|
336
289
|
end
|
290
|
+
|
291
|
+
assert_equal '', err
|
337
292
|
end
|
338
293
|
|
339
294
|
def test_task_collection
|
@@ -353,8 +308,6 @@ class TestRakeApplicationOptions < Rake::TestCase
|
|
353
308
|
assert '12', ENV['TESTKEY']
|
354
309
|
end
|
355
310
|
|
356
|
-
private
|
357
|
-
|
358
311
|
def flags(*sets)
|
359
312
|
sets.each do |set|
|
360
313
|
ARGV.clear
|