Sha256: d199d657df671216806be48ff76b2c224a1a62234cf6d2c8c170dd215b7dff2f

Contents?: true

Size: 1.57 KB

Versions: 19

Compression:

Stored size: 1.57 KB

Contents

require 'spec_helper'

module MediawikiSelenium::BrowserFactory
  describe Phantomjs do
    let(:factory_class) { Phantomjs }
    let(:factory) { factory_class.new(:phantomjs) }

    describe '.default_bindings' do
      subject { factory_class.default_bindings }

      it { is_expected.to include(:browser_language) }
      it { is_expected.not_to include(:browser_timeout) }
      it { is_expected.to include(:browser_user_agent) }
    end

    describe '#browser_options' do
      subject { factory.browser_options(config) }

      context 'given a browser proxy' do
        let(:config) { { browser_http_proxy: 'proxy.example:8080' } }

        it 'includes it as --proxy in the cli arguments' do
          capabilities = subject[:desired_capabilities]
          expect(capabilities['phantomjs.cli.args']).to include('--proxy=proxy.example:8080')
        end
      end

      context 'given a custom browser_language' do
        let(:config) { { browser_language: 'eo' } }

        it 'sets phantomjs.page.customHeaders.Accept-Language to the given language' do
          capabilities = subject[:desired_capabilities]
          expect(capabilities['phantomjs.page.customHeaders.Accept-Language']).to eq('eo')
        end
      end

      context 'given a custom browser_user_agent' do
        let(:config) { { browser_user_agent: 'FooBot' } }

        it 'sets phantomjs.page.settings.userAgent to the given string' do
          capabilities = subject[:desired_capabilities]
          expect(capabilities['phantomjs.page.settings.userAgent']).to eq('FooBot')
        end
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
mediawiki_selenium-1.8.1 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.8.0 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.7.4 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.7.3 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.7.2 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.7.1 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.7.0 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.6.5 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.6.4 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.6.3 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.6.2 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.6.1 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.6.0 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.5.0 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.4.0 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.3.0 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.2.1 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.2.0 spec/browser_factory/phantomjs_spec.rb
mediawiki_selenium-1.1.0 spec/browser_factory/phantomjs_spec.rb