aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
diff options
context:
space:
mode:
authorEvan Phoenix <ephoenix@engineyard.com>2010-03-22 09:51:44 -0700
committerEvan Phoenix <ephoenix@engineyard.com>2010-03-22 10:00:03 -0700
commita307fd6bd37d12d8ad6baa7e7fcfd0207e8b354a (patch)
tree279b8336b47f340f27b48f47bc4be7a30588b44d /activerecord
parent1e4be20672252ac15a355589dd44bdd4623640c4 (diff)
downloadrails-a307fd6bd37d12d8ad6baa7e7fcfd0207e8b354a.tar.gz
rails-a307fd6bd37d12d8ad6baa7e7fcfd0207e8b354a.tar.bz2
rails-a307fd6bd37d12d8ad6baa7e7fcfd0207e8b354a.zip
Don't depend on order of elements in Set
Diffstat (limited to 'activerecord')
-rw-r--r--activerecord/test/cases/finder_test.rb21
1 files changed, 16 insertions, 5 deletions
diff --git a/activerecord/test/cases/finder_test.rb b/activerecord/test/cases/finder_test.rb
index d2451f24c1..9e88ec8016 100644
--- a/activerecord/test/cases/finder_test.rb
+++ b/activerecord/test/cases/finder_test.rb
@@ -502,6 +502,18 @@ class FinderTest < ActiveRecord::TestCase
assert_kind_of Time, Topic.find(:first, :conditions => ["id = :id", { :id => 1 }]).written_on
end
+ class SimpleEnumerable
+ include Enumerable
+
+ def initialize(ary)
+ @ary = ary
+ end
+
+ def each(&b)
+ @ary.each(&b)
+ end
+ end
+
def test_bind_enumerable
quoted_abc = %(#{ActiveRecord::Base.connection.quote('a')},#{ActiveRecord::Base.connection.quote('b')},#{ActiveRecord::Base.connection.quote('c')})
@@ -511,12 +523,11 @@ class FinderTest < ActiveRecord::TestCase
assert_equal '1,2,3', bind(':a', :a => [1, 2, 3])
assert_equal quoted_abc, bind(':a', :a => %w(a b c)) # '
- require 'set'
- assert_equal '1,2,3', bind('?', Set.new([1, 2, 3]))
- assert_equal quoted_abc, bind('?', Set.new(%w(a b c)))
+ assert_equal '1,2,3', bind('?', SimpleEnumerable.new([1, 2, 3]))
+ assert_equal quoted_abc, bind('?', SimpleEnumerable.new(%w(a b c)))
- assert_equal '1,2,3', bind(':a', :a => Set.new([1, 2, 3]))
- assert_equal quoted_abc, bind(':a', :a => Set.new(%w(a b c))) # '
+ assert_equal '1,2,3', bind(':a', :a => SimpleEnumerable.new([1, 2, 3]))
+ assert_equal quoted_abc, bind(':a', :a => SimpleEnumerable.new(%w(a b c))) # '
end
def test_bind_empty_enumerable