Module: Capybara::Selenium::Driver::Ios

Defined in:
lib/capybara-ios-emulation-driver/profile/firefox.rb,
lib/capybara-ios-emulation-driver/profile/chrome.rb,
lib/capybara-ios-emulation-driver/user_agent.rb,
lib/capybara-ios-emulation-driver.rb

Defined Under Namespace

Modules: Profile, UserAgent

Class Method Summary collapse

Class Method Details

.chrome_driver(params = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/capybara-ios-emulation-driver.rb', line 9

def self.chrome_driver params = {}
  options = {
    :ios_version => 7,
    :ios_device  => :iphone, 
    :app         => nil
  }.update(params)

  ::Capybara::Selenium::Driver.new(options[:app], Profile::Chrome.driver_options(options).merge(:browser => :chrome))
end

.firefox_driver(params = {}) ⇒ Object



19
20
21
22
23
24
25
26
27
# File 'lib/capybara-ios-emulation-driver.rb', line 19

def self.firefox_driver params = {}
  options = {
    :ios_version => 7,
    :ios_device  => :iphone, 
    :app         => nil
  }.update(params)

  ::Capybara::Selenium::Driver.new(options[:app], Profile::Firefox.driver_options(options).merge(:browser => :firefox))
end

.rack_test_driver(params = {}) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/capybara-ios-emulation-driver.rb', line 29

def self.rack_test_driver params = {}
  options = {
    :ios_version => 7,
    :ios_device  => :iphone, 
    :app         => nil,
    :rack_test_options => {}
  }.update(params)

  ua = ::Capybara::Selenium::Driver::Ios::UserAgent.of(:ios => options[:ios_version], :device => options[:ios_device])
  driver = Class.new(::Capybara::RackTest::Driver)
  driver.module_eval %|
    def env 
      super.merge('HTTP_USER_AGENT' => "#{ua}")
    end
  |
  driver.new(options[:app], options[:rack_test_options])
end