Compare commits

...

2 Commits

Author SHA1 Message Date
Maarten van Grootel
d7e7285fcb Fix leaking error when comparison leads to TypeError 2017-01-16 12:26:19 -05:00
Justin Li
ffb0ace303 Update changelog for 4.0.0 2016-12-16 13:11:22 -05:00
3 changed files with 7 additions and 2 deletions

View File

@@ -1,6 +1,6 @@
# Liquid Change Log
## 4.0.0 / not yet released / branch "master"
## 4.0.0 / 2016-12-14 / branch "4-0-stable"
### Changed
* Render an opaque internal error by default for non-Liquid::Error (#835) [Dylan Thacker-Smith]

View File

@@ -113,7 +113,7 @@ module Liquid
elsif left.respond_to?(operation) && right.respond_to?(operation)
begin
left.send(operation, right)
rescue ::ArgumentError => e
rescue ::ArgumentError, TypeError => e
raise Liquid::ArgumentError.new(e.message)
end
end

View File

@@ -57,6 +57,11 @@ class ConditionUnitTest < Minitest::Test
assert_evaluates_argument_error 1, '~~', 0
end
def test_comparing_hash_and_integer
assert_evaluates_argument_error({a: 1}, '>', 1)
assert_evaluates_argument_error(1, '>', {a: 1})
end
def test_comparation_of_int_and_str
assert_evaluates_argument_error '1', '>', 0
assert_evaluates_argument_error '1', '<', 0