Sha256: 0fb0f0a0bd0d941b4d67dd42bdcffefa792614d4602ff2a3b6d7e6504c93acb6
Contents?: true
Size: 1.7 KB
Versions: 5
Compression:
Stored size: 1.7 KB
Contents
# frozen_string_literal: true require 'test_helper' class CaptureTest < Minitest::Test include Liquid def test_captures_block_content_in_variable assert_template_result("test string", "{% capture 'var' %}test string{% endcapture %}{{var}}", {}) end def test_capture_with_hyphen_in_variable_name template_source = <<-END_TEMPLATE {% capture this-thing %}Print this-thing{% endcapture %} {{ this-thing }} END_TEMPLATE template = Template.parse(template_source) rendered = template.render! assert_equal("Print this-thing", rendered.strip) end def test_capture_to_variable_from_outer_scope_if_existing template_source = <<-END_TEMPLATE {% assign var = '' %} {% if true %} {% capture var %}first-block-string{% endcapture %} {% endif %} {% if true %} {% capture var %}test-string{% endcapture %} {% endif %} {{var}} END_TEMPLATE template = Template.parse(template_source) rendered = template.render! assert_equal("test-string", rendered.gsub(/\s/, '')) end def test_assigning_from_capture template_source = <<-END_TEMPLATE {% assign first = '' %} {% assign second = '' %} {% for number in (1..3) %} {% capture first %}{{number}}{% endcapture %} {% assign second = first %} {% endfor %} {{ first }}-{{ second }} END_TEMPLATE template = Template.parse(template_source) rendered = template.render! assert_equal("3-3", rendered.gsub(/\s/, '')) end def test_increment_assign_score_by_bytes_not_characters t = Template.parse("{% capture foo %}すごい{% endcapture %}") t.render! assert_equal(9, t.resource_limits.assign_score) end end
Version data entries
5 entries across 5 versions & 1 rubygems