aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/isolation/abstract_unit.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2012-06-19 14:27:52 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2012-06-19 14:41:31 -0700
commit7896f35be37ab5ee8961a384f503137cfb154df0 (patch)
tree8412b743e92496c6769407e6d17b995635d61ba2 /railties/test/isolation/abstract_unit.rb
parenta6fd462a8019f0be512bcba7ce5b9f9e482c7f8e (diff)
downloadrails-7896f35be37ab5ee8961a384f503137cfb154df0.tar.gz
rails-7896f35be37ab5ee8961a384f503137cfb154df0.tar.bz2
rails-7896f35be37ab5ee8961a384f503137cfb154df0.zip
use system tmpdir rather than our own
Diffstat (limited to 'railties/test/isolation/abstract_unit.rb')
-rw-r--r--railties/test/isolation/abstract_unit.rb19
1 files changed, 11 insertions, 8 deletions
diff --git a/railties/test/isolation/abstract_unit.rb b/railties/test/isolation/abstract_unit.rb
index 03be81e59f..50ee68032f 100644
--- a/railties/test/isolation/abstract_unit.rb
+++ b/railties/test/isolation/abstract_unit.rb
@@ -19,15 +19,18 @@ RAILS_FRAMEWORK_ROOT = File.expand_path("#{File.dirname(__FILE__)}/../../..")
# to run the tests
require "active_support/testing/isolation"
require "active_support/core_ext/kernel/reporting"
+require 'tmpdir'
module TestHelpers
module Paths
module_function
- TMP_PATH = File.expand_path(File.join(File.dirname(__FILE__), *%w[.. .. tmp]))
+ def app_template_path
+ File.join Dir.tmpdir, 'app_template'
+ end
def tmp_path(*args)
- File.join(TMP_PATH, *args)
+ @tmp_path ||= Dir.mktmpdir
end
def app_path(*args)
@@ -95,7 +98,7 @@ module TestHelpers
ENV['RAILS_ENV'] = 'development'
FileUtils.rm_rf(app_path)
- FileUtils.cp_r(tmp_path('app_template'), app_path)
+ FileUtils.cp_r(app_template_path, app_path)
# Delete the initializers unless requested
unless options[:initializers]
@@ -272,18 +275,18 @@ end
Module.new do
extend TestHelpers::Paths
# Build a rails app
- if File.exist?(tmp_path)
- FileUtils.rm_rf(tmp_path)
+ if File.exist?(app_template_path)
+ FileUtils.rm_rf(app_template_path)
end
- FileUtils.mkdir(tmp_path)
+ FileUtils.mkdir(app_template_path)
environment = File.expand_path('../../../../load_paths', __FILE__)
if File.exist?("#{environment}.rb")
require_environment = "-r #{environment}"
end
- `#{Gem.ruby} #{require_environment} #{RAILS_FRAMEWORK_ROOT}/railties/bin/rails new #{tmp_path('app_template')}`
- File.open("#{tmp_path}/app_template/config/boot.rb", 'w') do |f|
+ `#{Gem.ruby} #{require_environment} #{RAILS_FRAMEWORK_ROOT}/railties/bin/rails new #{app_template_path}`
+ File.open("#{app_template_path}/config/boot.rb", 'w') do |f|
if require_environment
f.puts "Dir.chdir('#{File.dirname(environment)}') do"
f.puts " require '#{environment}'"