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
+16 -15
View File
@@ -40,19 +40,20 @@ module Liquid
end
end
ArgumentError = Class.new(Error)
ContextError = Class.new(Error)
FileSystemError = Class.new(Error)
StandardError = Class.new(Error)
SyntaxError = Class.new(Error)
StackLevelError = Class.new(Error)
MemoryError = Class.new(Error)
ZeroDivisionError = Class.new(Error)
FloatDomainError = Class.new(Error)
UndefinedVariable = Class.new(Error)
UndefinedDropMethod = Class.new(Error)
UndefinedFilter = Class.new(Error)
MethodOverrideError = Class.new(Error)
DisabledError = Class.new(Error)
InternalError = Class.new(Error)
ArgumentError = Class.new(Error)
ContextError = Class.new(Error)
FileSystemError = Class.new(Error)
StandardError = Class.new(Error)
SyntaxError = Class.new(Error)
StackLevelError = Class.new(Error)
MemoryError = Class.new(Error)
ZeroDivisionError = Class.new(Error)
FloatDomainError = Class.new(Error)
UndefinedVariable = Class.new(Error)
UndefinedDropMethod = Class.new(Error)
UndefinedFilter = Class.new(Error)
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