summaryrefslogtreecommitdiff
path: root/test/rake/test_rake_directory_task.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rake/test_rake_directory_task.rb')
-rw-r--r--test/rake/test_rake_directory_task.rb43
1 files changed, 24 insertions, 19 deletions
diff --git a/test/rake/test_rake_directory_task.rb b/test/rake/test_rake_directory_task.rb
index 6ddb0d2870..d1154f90d5 100644
--- a/test/rake/test_rake_directory_task.rb
+++ b/test/rake/test_rake_directory_task.rb
@@ -27,26 +27,31 @@ class TestRakeDirectoryTask < Rake::TestCase
if Rake::Win32.windows?
def test_directory_win32
- drive = Dir.pwd
- while drive != File.dirname(drive)
- drive = File.dirname(drive)
- end
- drive = drive[0...-1] if drive[-1] == ?/
-
desc "WIN32 DESC"
- directory File.join(Dir.pwd, 'a/b/c')
- assert_equal FileTask, Task[drive].class if drive[-1] == ?:
- assert_equal FileCreationTask, Task[File.join(Dir.pwd, 'a')].class
- assert_equal FileCreationTask, Task[File.join(Dir.pwd, 'a/b')].class
- assert_equal FileCreationTask, Task[File.join(Dir.pwd, 'a/b/c')].class
- assert_nil Task[drive].comment
- assert_equal "WIN32 DESC", Task[File.join(Dir.pwd, 'a/b/c')].comment
- assert_nil Task[File.join(Dir.pwd, 'a/b')].comment
- verbose(false) {
- Task[File.join(Dir.pwd, 'a/b')].invoke
- }
- assert File.exist?(File.join(Dir.pwd, 'a/b'))
- refute File.exist?(File.join(Dir.pwd, 'a/b/c'))
+ directory 'c:/a/b/c'
+ assert_equal FileTask, Task['c:'].class
+ assert_equal FileCreationTask, Task['c:/a'].class
+ assert_equal FileCreationTask, Task['c:/a/b'].class
+ assert_equal FileCreationTask, Task['c:/a/b/c'].class
+ assert_nil Task['c:/'].comment
+ assert_equal "WIN32 DESC", Task['c:/a/b/c'].comment
+ assert_nil Task['c:/a/b'].comment
end
end
+
+ def test_can_use_blocks
+ runlist = []
+
+ t1 = directory("a/b/c" => :t2) { |t| runlist << t.name }
+ t2 = task(:t2) { |t| runlist << t.name }
+
+ verbose(false) {
+ t1.invoke
+ }
+
+ assert_equal Task["a/b/c"], t1
+ assert_equal FileCreationTask, Task["a/b/c"].class
+ assert_equal ["t2", "a/b/c"], runlist
+ assert File.directory?("a/b/c")
+ end
end