Sha256: 4410bbdd387af2a08f3055dd0df4e059914d5a7874493f24e242731ca2b3b542

Contents?: true

Size: 1.1 KB

Versions: 1

Compression:

Stored size: 1.1 KB

Contents

# frozen_string_literal: true

require 'watirspec_helper'

describe 'Forms' do
  before :each do
    browser.goto(WatirSpec.url_for('forms_with_input_elements.html'))
  end

  describe 'with selectors' do
    it 'returns the matching elements' do
      expect(browser.forms(method: 'post').to_a).to eq [browser.form(method: 'post')]
    end
  end

  describe '#length' do
    it 'returns the number of forms in the container' do
      expect(browser.forms.length).to eq 2
    end
  end

  describe '#[]n' do
    it 'provides access to the nth form' do
      expect(browser.forms[0].action).to match(/post_to_me$/) # varies between browsers
      expect(browser.forms[0].attribute_value('method')).to eq 'post'
    end
  end

  describe '#each' do
    it 'iterates through forms correctly' do
      count = 0

      browser.forms.each_with_index do |f, index|
        expect(f.name).to eq browser.form(index: index).name
        expect(f.id).to eq browser.form(index: index).id
        expect(f.class_name).to eq browser.form(index: index).class_name

        count += 1
      end

      expect(count).to be > 0
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
watir-7.2.0 spec/watirspec/elements/forms_spec.rb