fix: Stop processing broken liquid tags (#6236)
This commit is contained in:
@@ -26,6 +26,8 @@ module Liquidable
|
|||||||
|
|
||||||
template = Liquid::Template.parse(modified_liquid_content)
|
template = Liquid::Template.parse(modified_liquid_content)
|
||||||
self.content = template.render(message_drops)
|
self.content = template.render(message_drops)
|
||||||
|
rescue Liquid::Error
|
||||||
|
# If there is an error in the liquid syntax, we don't want to process it
|
||||||
end
|
end
|
||||||
|
|
||||||
def modified_liquid_content
|
def modified_liquid_content
|
||||||
|
|||||||
@@ -36,6 +36,12 @@ shared_examples_for 'liqudable' do
|
|||||||
expect(message.content).to eq 'Can we send you an email at ?'
|
expect(message.content).to eq 'Can we send you an email at ?'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'will skip processing broken liquid tags' do
|
||||||
|
message.content = 'Can we send you an email at {{contact.email} {{hi}} ?'
|
||||||
|
message.save!
|
||||||
|
expect(message.content).to eq 'Can we send you an email at {{contact.email} {{hi}} ?'
|
||||||
|
end
|
||||||
|
|
||||||
it 'will not process liquid tags in multiple code blocks' do
|
it 'will not process liquid tags in multiple code blocks' do
|
||||||
message.content = 'hey {{contact.name}} how are you? ```code: {{contact.name}}``` ``` code: {{contact.name}} ``` test `{{contact.name}}`'
|
message.content = 'hey {{contact.name}} how are you? ```code: {{contact.name}}``` ``` code: {{contact.name}} ``` test `{{contact.name}}`'
|
||||||
message.save!
|
message.save!
|
||||||
|
|||||||
Reference in New Issue
Block a user