mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
d1d4490a57
* test/rake/*: ditto. * NEWS: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
65 lines
1.5 KiB
Ruby
65 lines
1.5 KiB
Ruby
require File.expand_path('../helper', __FILE__)
|
|
require 'open3'
|
|
|
|
class TestRakeReduceCompat < Rake::TestCase
|
|
# TODO: factor out similar code in test_rake_functional.rb
|
|
def rake(*args)
|
|
Open3.popen3(RUBY, "-I", @rake_lib, @rake_exec, *args) { |_, out, _, _|
|
|
out.read
|
|
}
|
|
end
|
|
|
|
def invoke_normal(task_name)
|
|
rake task_name.to_s
|
|
end
|
|
|
|
def invoke_reduce_compat(task_name)
|
|
rake "--reduce-compat", task_name.to_s
|
|
end
|
|
|
|
def test_no_deprecated_dsl
|
|
rakefile %q{
|
|
task :check_task do
|
|
Module.new { p defined?(task) }
|
|
end
|
|
|
|
task :check_file do
|
|
Module.new { p defined?(file) }
|
|
end
|
|
}
|
|
|
|
assert_equal %{"method"}, invoke_normal(:check_task).chomp
|
|
assert_equal %{"method"}, invoke_normal(:check_file).chomp
|
|
|
|
assert_equal "nil", invoke_reduce_compat(:check_task).chomp
|
|
assert_equal "nil", invoke_reduce_compat(:check_file).chomp
|
|
end
|
|
|
|
def test_no_classic_namespace
|
|
rakefile %q{
|
|
task :check_task do
|
|
begin
|
|
Task
|
|
print "present"
|
|
rescue NameError
|
|
print "absent"
|
|
end
|
|
end
|
|
|
|
task :check_file_task do
|
|
begin
|
|
FileTask
|
|
print "present"
|
|
rescue NameError
|
|
print "absent"
|
|
end
|
|
end
|
|
}
|
|
|
|
assert_equal "present", invoke_normal(:check_task)
|
|
assert_equal "present", invoke_normal(:check_file_task)
|
|
|
|
assert_equal "absent", invoke_reduce_compat(:check_task)
|
|
assert_equal "absent", invoke_reduce_compat(:check_file_task)
|
|
end
|
|
end
|