提交 54a04389 编写于 作者: P Pratik Naik

Make merging of order values consistent

上级 f9a43004
......@@ -33,7 +33,7 @@ def merge(r)
from(r.from_value).
having(r.having_values)
merged_relation.order_values = Array.wrap(order_values) + Array.wrap(r.order_values)
merged_relation.order_values = r.order_values if r.order_values.present?
merged_relation.create_with_value = @create_with_value
......
......@@ -1865,7 +1865,9 @@ def test_scoped_find_order
end
assert scoped_developers.include?(developers(:poor_jamis))
assert scoped_developers.include?(developers(:david))
assert scoped_developers.include?(developers(:dev_10))
assert ! scoped_developers.include?(developers(:jamis))
assert_equal 3, scoped_developers.size
# Test without scoped find conditions to ensure we get the right thing
developers = Developer.find(:all, :order => 'id', :limit => 1)
assert scoped_developers.include?(developers(:david))
......
......@@ -625,21 +625,21 @@ def test_default_scoping_with_inheritance
end
def test_method_scope
expected = Developer.find(:all, :order => 'name DESC, salary DESC').collect { |dev| dev.salary }
expected = Developer.find(:all, :order => 'name DESC').collect { |dev| dev.salary }
received = DeveloperOrderedBySalary.all_ordered_by_name.collect { |dev| dev.salary }
assert_equal expected, received
end
def test_nested_scope
expected = Developer.find(:all, :order => 'name DESC, salary DESC').collect { |dev| dev.salary }
expected = Developer.find(:all, :order => 'name DESC').collect { |dev| dev.salary }
received = DeveloperOrderedBySalary.send(:with_scope, :find => { :order => 'name DESC'}) do
DeveloperOrderedBySalary.find(:all).collect { |dev| dev.salary }
end
assert_equal expected, received
end
def test_named_scope_order_appended_to_default_scope_order
expected = Developer.find(:all, :order => 'name DESC, salary DESC').collect { |dev| dev.name }
def test_named_scope_overwrites_default
expected = Developer.find(:all, :order => 'name DESC').collect { |dev| dev.name }
received = DeveloperOrderedBySalary.by_name.find(:all).collect { |dev| dev.name }
assert_equal expected, received
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册