Translate exceptions in filters to Liquid::FilterError errors.

This commit is contained in:
Dylan Thacker-Smith
2015-05-25 15:22:12 -04:00
parent 8af99ff918
commit 169dfe5af3
4 changed files with 34 additions and 7 deletions
+5 -3
View File
@@ -201,14 +201,16 @@ class TemplateTest < Minitest::Test
def test_exception_handler_doesnt_reraise_if_it_returns_false
exception = nil
Template.parse("{{ 1 | divided_by: 0 }}").render({}, exception_handler: ->(e) { exception = e; false })
assert exception.is_a?(ZeroDivisionError)
assert exception.is_a?(Liquid::FilterError)
assert exception.original_exception.is_a?(ZeroDivisionError)
end
def test_exception_handler_does_reraise_if_it_returns_true
exception = nil
assert_raises(ZeroDivisionError) do
assert_raises(Liquid::FilterError) do
Template.parse("{{ 1 | divided_by: 0 }}").render({}, exception_handler: ->(e) { exception = e; true })
end
assert exception.is_a?(ZeroDivisionError)
assert exception.is_a?(Liquid::FilterError)
assert exception.original_exception.is_a?(ZeroDivisionError)
end
end