rails--rails/railties/Rakefile

63 lines
1.6 KiB
Ruby

require 'rake/testtask'
require 'rubygems/package_task'
require 'date'
require 'rbconfig'
task :default => :test
task :test => 'test:isolated'
## This is required until the regular test task
## below passes. It's not ideal, but at least
## we can see the failures
namespace :test do
task :isolated do
dir = ENV["TEST_DIR"] || "**"
Dir["test/#{dir}/*_test.rb"].each do |file|
next true if file.include?("fixtures")
dash_i = [
'test',
'lib',
"#{File.dirname(__FILE__)}/../activesupport/lib",
"#{File.dirname(__FILE__)}/../actionpack/lib",
"#{File.dirname(__FILE__)}/../activemodel/lib"
]
ruby "-I#{dash_i.join ':'}", file
end
end
end
Rake::TestTask.new('test:regular') do |t|
t.libs << 'test' << "#{File.dirname(__FILE__)}/../activesupport/lib"
t.pattern = 'test/**/*_test.rb'
t.warning = true
t.verbose = true
end
# Update spinoffs -------------------------------------------------------------------
desc "Updates application README to the latest version Railties README"
task :update_readme do
readme = "lib/rails/generators/rails/app/templates/README"
rm readme
cp "./README.rdoc", readme
end
# Generate GEM ----------------------------------------------------------------------------
spec = eval(File.read('railties.gemspec'))
Gem::PackageTask.new(spec) do |pkg|
pkg.gem_spec = spec
end
# Publishing -------------------------------------------------------
desc "Release to gemcutter"
task :release => :package do
require 'rake/gemcutter'
Rake::Gemcutter::Tasks.new(spec).define
Rake::Task['gem:push'].invoke
end