Merge pull request #1776 from Shopify/refactor/invalid-encoding-error

add new TemplateEncodingError
This commit is contained in:
Michael Go
2024-01-12 12:38:34 -04:00
committed by GitHub
3 changed files with 19 additions and 18 deletions
+1
View File
@@ -55,4 +55,5 @@ module Liquid
MethodOverrideError = Class.new(Error)
DisabledError = Class.new(Error)
InternalError = Class.new(Error)
TemplateEncodingError = Class.new(Error)
end
+1 -1
View File
@@ -110,7 +110,7 @@ module Liquid
source = source.to_s.to_str
unless source.valid_encoding?
raise SyntaxError, parse_context.locale.t("errors.syntax.invalid_template_encoding")
raise TemplateEncodingError, parse_context.locale.t("errors.syntax.invalid_template_encoding")
end
tokenizer = parse_context.new_tokenizer(source, start_line_number: @line_numbers && 1)
+2 -2
View File
@@ -339,7 +339,7 @@ class TemplateTest < Minitest::Test
end
def test_raises_error_with_invalid_utf8
e = assert_raises(SyntaxError) do
e = assert_raises(TemplateEncodingError) do
Template.parse(<<~LIQUID)
{% comment %}
\xC0
@@ -347,7 +347,7 @@ class TemplateTest < Minitest::Test
LIQUID
end
assert_equal('Liquid syntax error: Invalid template encoding', e.message)
assert_equal('Liquid error: Invalid template encoding', e.message)
end
def test_allows_non_string_values_as_source