aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Murmann and Can Berk Güder <pair+alexander+cbguder@pivotallabs.com>2013-03-21 14:10:44 -0700
committerAlexander Murmann and Can Berk Güder <pair+alexander+cbguder@pivotallabs.com>2013-03-21 14:10:44 -0700
commit018fc5fc071d718f6fd1a0237996eeeec7d79e65 (patch)
tree60f7161c3c45408cbb514c27b9a4f0faafe60ec3
parentecfdc842a58816540e7c96a913f95a0d94be7ca7 (diff)
downloadrails-018fc5fc071d718f6fd1a0237996eeeec7d79e65.tar.gz
rails-018fc5fc071d718f6fd1a0237996eeeec7d79e65.tar.bz2
rails-018fc5fc071d718f6fd1a0237996eeeec7d79e65.zip
Allows setting fixture_path to a Pathname
-rw-r--r--activerecord/lib/active_record/fixtures.rb2
-rw-r--r--activerecord/test/cases/fixtures_test.rb9
2 files changed, 10 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/fixtures.rb b/activerecord/lib/active_record/fixtures.rb
index 2958d08210..c26fc76515 100644
--- a/activerecord/lib/active_record/fixtures.rb
+++ b/activerecord/lib/active_record/fixtures.rb
@@ -752,7 +752,7 @@ module ActiveRecord
def fixtures(*fixture_set_names)
if fixture_set_names.first == :all
fixture_set_names = Dir["#{fixture_path}/**/*.{yml}"]
- fixture_set_names.map! { |f| f[(fixture_path.size + 1)..-5] }
+ fixture_set_names.map! { |f| f[(fixture_path.to_s.size + 1)..-5] }
else
fixture_set_names = fixture_set_names.flatten.map { |n| n.to_s }
end
diff --git a/activerecord/test/cases/fixtures_test.rb b/activerecord/test/cases/fixtures_test.rb
index 8ad40ec3f4..f6cfee0cb8 100644
--- a/activerecord/test/cases/fixtures_test.rb
+++ b/activerecord/test/cases/fixtures_test.rb
@@ -576,6 +576,15 @@ class LoadAllFixturesTest < ActiveRecord::TestCase
end
end
+class LoadAllFixturesWithPathnameTest < ActiveRecord::TestCase
+ self.fixture_path = Pathname.new(FIXTURES_ROOT).join('all')
+ fixtures :all
+
+ def test_all_there
+ assert_equal %w(developers people tasks), fixture_table_names.sort
+ end
+end
+
class FasterFixturesTest < ActiveRecord::TestCase
fixtures :categories, :authors