提交 1f5ed8eb 编写于 作者: E Ernie Miller

Stop calling to_s on aliases, require them to be strings already.

上级 7361b6cb
module Arel
module AliasPredication
def as other
Nodes::As.new self, Nodes::SqlLiteral.new(other.to_s)
Nodes::As.new self, Nodes::SqlLiteral.new(other)
end
end
end
\ No newline at end of file
......@@ -6,12 +6,12 @@ class Function < Arel::Nodes::Node
def initialize expr, aliaz = nil
@expressions = expr
@alias = aliaz && SqlLiteral.new(aliaz.to_s)
@alias = aliaz && SqlLiteral.new(aliaz)
@distinct = false
end
def as aliaz
self.alias = SqlLiteral.new(aliaz.to_s)
self.alias = SqlLiteral.new(aliaz)
self
end
end
......
......@@ -50,14 +50,14 @@ def test_raises_with_object
Arel::Nodes::Sum,
].each do |klass|
define_method("test_#{klass.name.gsub('::', '_')}") do
func = klass.new(:a, :b)
func = klass.new(:a, "b")
@visitor.accept func
assert_equal [:a, "b", false, func], @collector.calls
end
end
def test_named_function
func = Arel::Nodes::NamedFunction.new(:a, :b, :c)
func = Arel::Nodes::NamedFunction.new(:a, :b, "c")
@visitor.accept func
assert_equal [:a, :b, false, "c", func], @collector.calls
end
......@@ -69,7 +69,7 @@ def test_lock
end
def test_count
count = Nodes::Count.new :a, :b, :c
count = Nodes::Count.new :a, :b, "c"
@visitor.accept count
assert_equal [:a, "c", :b, count], @collector.calls
end
......
......@@ -16,7 +16,7 @@ def setup
Nodes::Avg,
].each do |klass|
define_method("test_#{klass.name.gsub('::', '_')}") do
op = klass.new(:a, :z)
op = klass.new(:a, "z")
@visitor.accept op
end
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册