diff options
Diffstat (limited to 'test/rake/test_rake.rb')
-rw-r--r-- | test/rake/test_rake.rb | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/test/rake/test_rake.rb b/test/rake/test_rake.rb new file mode 100644 index 0000000000..0f0f6a843d --- /dev/null +++ b/test/rake/test_rake.rb @@ -0,0 +1,39 @@ +require 'test/unit' +require 'rake' + +class TestRake < Test::Unit::TestCase + def test_each_dir_parent + assert_equal ['a'], alldirs('a') + assert_equal ['a/b', 'a'], alldirs('a/b') + assert_equal ['/a/b', '/a', '/'], alldirs('/a/b') + if File.dirname("c:/foo") == "c:" + # Under Unix + assert_equal ['c:/a/b', 'c:/a', 'c:'], alldirs('c:/a/b') + assert_equal ['c:a/b', 'c:a'], alldirs('c:a/b') + else + # Under Windows + assert_equal ['c:/a/b', 'c:/a', 'c:/'], alldirs('c:/a/b') + assert_equal ['c:a/b', 'c:a'], alldirs('c:a/b') + end + end + + def alldirs(fn) + result = [] + Rake.each_dir_parent(fn) { |d| result << d } + result + end + + def test_can_override_application + old_app = Rake.application + fake_app = Object.new + Rake.application = fake_app + assert_equal fake_app, Rake.application + ensure + Rake.application = old_app + end + + def test_original_dir_reports_current_dir + assert_equal Dir.pwd, Rake.original_dir + end + +end |