Sha256: 4034c2a829ba7aa7f72e1f6588d9a09102f6780a6e61fd53c1704aebbd3ea77f

Contents?: true

Size: 926 Bytes

Versions: 4

Compression:

Stored size: 926 Bytes

Contents

require 'spec_helper'

describe 'rendering a select field' do
  let(:attributes) { 
    {
      options: {
        'first' => 'First',
        'second' => 'Second'
      }
    } 
  }
  let(:resolver) { HungryForm::Resolver.new }
  let(:group) { HungryForm::Elements::Group.new(:group, nil, resolver, visible: true) {} }
  let(:field) { HungryForm::Elements::SelectField.new(:field_name, group, resolver, attributes) }
  let(:render_params) {
    {
      partial: 'hungryform/select_field',
      locals: { field: field }
    }
  }

  it_behaves_like 'it is wrapped in a div'
  it_behaves_like 'rendered active element'

  it 'has a select tag' do
    render render_params
    expect(rendered).to match /<select.*id="group_field_name"/
  end

  it 'has a selected value' do
    attributes[:value] = 'second'
    render render_params
    expect(rendered).to match /<option(?=.*selected="selected")(?=.*value="second")/
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
hungryform-rails-0.0.6 spec/views/select_field_spec.rb
hungryform-rails-0.0.5 spec/views/select_field_spec.rb
hungryform-rails-0.0.4 spec/views/select_field_spec.rb
hungryform-rails-0.0.3 spec/views/select_field_spec.rb