Skip to content

Commit 896e887

Browse files
committed
Accept FileList object as directory task's target
1 parent 6ed3a03 commit 896e887

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

lib/rake/dsl_definition.rb

+1
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ def file_create(*args, &block)
9090
# directory "testdata/doc"
9191
#
9292
def directory(*args, &block) # :doc:
93+
args = args.flat_map { |arg| arg.is_a?(FileList) ? arg.to_a.flatten : arg }
9394
result = file_create(*args, &block)
9495
dir, _ = *Rake.application.resolve_args(args)
9596
dir = Rake.from_pathname(dir)

test/test_rake_directory_task.rb

+12
Original file line numberDiff line numberDiff line change
@@ -74,4 +74,16 @@ def test_can_use_pathname
7474

7575
assert File.directory?("a/b/c")
7676
end
77+
78+
def test_can_use_filelist
79+
directory FileList["a", "b", "c"]
80+
81+
assert_equal FileCreationTask, Task["a"].class
82+
83+
verbose(false) {
84+
Task["a"].invoke
85+
}
86+
87+
assert File.directory?("a")
88+
end
7789
end

0 commit comments

Comments
 (0)