Sha256: 26093ec0023563385223fdc4508c3cf22978aa03f3dd8a816c9fd0ded7f264d3

Contents?: true

Size: 1.54 KB

Versions: 1

Compression:

Stored size: 1.54 KB

Contents

require 'watirspec_helper'

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

  describe '#[]' do
    context 'when elements do not exist' do
      it 'returns not existing element' do
        expect(browser.elements(id: 'non-existing')[0]).not_to exist
      end
    end
  end

  describe '#eq and #eql?' do
    before { browser.goto WatirSpec.url_for('forms_with_input_elements.html') }

    it 'returns true if the two collections have the same Watir Elements' do
      a = browser.select_list(name: 'new_user_languages').options
      b = browser.select_list(id: 'new_user_languages').options

      expect(a).to eq b
      expect(a).to eql(b)
    end

    it 'returns false if the two collections are not the same' do
      a = browser.select_list(name: 'new_user_languages').options
      b = browser.select_list(id: 'new_user_role').options

      expect(a).to_not eq b
      expect(a).to_not eql(b)
    end
  end

  describe 'visible text' do
    it 'finds elements by visible text' do
      browser.goto WatirSpec.url_for('non_control_elements.html')
      expect(browser.links(visible_text: 'all visible').count).to eq(1)
      expect(browser.links(visible_text: /all visible/).count).to eq(1)
      expect(browser.links(visible_text: 'some visible').count).to eq(1)
      expect(browser.links(visible_text: /some visible/).count).to eq(1)
      expect(browser.links(visible_text: 'none visible').count).to eq(0)
      expect(browser.links(visible_text: /none visible/).count).to eq(0)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
watir-6.14.0 spec/watirspec/elements/elements_spec.rb