Sha256: 352d9338b92605d2e56a6b2351bcc71e3ba41ddeaedb353a86c07798f1080a79

Contents?: true

Size: 1.23 KB

Versions: 5

Compression:

Stored size: 1.23 KB

Contents

# frozen_string_literal: true

require 'test_helper'

class UnlessElseTagTest < Minitest::Test
  include Liquid

  def test_unless
    assert_template_result('  ', ' {% unless true %} this text should not go into the output {% endunless %} ')
    assert_template_result('  this text should go into the output  ',
      ' {% unless false %} this text should go into the output {% endunless %} ')
    assert_template_result('  you rock ?', '{% unless true %} you suck {% endunless %} {% unless false %} you rock {% endunless %}?')
  end

  def test_unless_else
    assert_template_result(' YES ', '{% unless true %} NO {% else %} YES {% endunless %}')
    assert_template_result(' YES ', '{% unless false %} YES {% else %} NO {% endunless %}')
    assert_template_result(' YES ', '{% unless "foo" %} NO {% else %} YES {% endunless %}')
  end

  def test_unless_in_loop
    assert_template_result('23', '{% for i in choices %}{% unless i %}{{ forloop.index }}{% endunless %}{% endfor %}', 'choices' => [1, nil, false])
  end

  def test_unless_else_in_loop
    assert_template_result(' TRUE  2  3 ', '{% for i in choices %}{% unless i %} {{ forloop.index }} {% else %} TRUE {% endunless %}{% endfor %}', 'choices' => [1, nil, false])
  end
end # UnlessElseTest

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
liquid-5.3.0 test/integration/tags/unless_else_tag_test.rb
liquid-5.2.0 test/integration/tags/unless_else_tag_test.rb
liquid-5.1.0 test/integration/tags/unless_else_tag_test.rb
liquid-5.0.1 test/integration/tags/unless_else_tag_test.rb
liquid-5.0.0 test/integration/tags/unless_else_tag_test.rb