Sha256: 2c7b3afb4744c5c070c3ed04fa252d836efe1366d6d71daed5a55d938b9895b4

Contents?: true

Size: 1.21 KB

Versions: 2

Compression:

Stored size: 1.21 KB

Contents

require 'test_helper'

class CheckboxTest < ActiveSupport::TestCase

  def assigns
    {account: resource}
  end

  def helpers
    mock_action_view do
      def accounts_path
        '/accounts'
      end
    end
  end


  test "checkbox places the label before the input" do
    html = arbre(account: resource) {
      express_form(:account) {
        checkbox :eula
      }
    }
    label = '<label for="account_eula"'
    field = 'input type="checkbox" value="1" name="account\[eula\]"'
    assert_match /#{label}/, html
    assert_match /#{field}/, html
    label_idx = html.index(label)
    field_idx = html.index(field.gsub('\\', ''))
    assert (field_idx > label_idx), "label must come first"
  end

  test "checkbox respects label_after: true " do
    html = arbre(account: resource) {
      express_form(:account) {
        checkbox :eula, label_after: true
      }
    }
    label = '<label for="account_eula"'
    field = 'input type="checkbox" value="1" name="account\[eula\]"'
    assert_match /#{label}/, html
    assert_match /#{field}/, html
    label_idx = html.index(label)
    field_idx = html.index(field.gsub('\\', ''))
    assert (field_idx < label_idx), "label must come after when label_after: true"
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
express_admin-1.5.0 vendor/gems/express_templates/test/components/forms/checkbox_test.rb
express_admin-1.4.11 vendor/gems/express_templates/test/components/forms/checkbox_test.rb