aboutsummaryrefslogtreecommitdiffstats
path: root/actionsystemtest/lib/action_system_test/browser.rb
blob: 09b72721c5674351a25e62da5cf492bcc8c84ba2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
module ActionSystemTest
  class Browser
    def initialize(name, screen_size)
      @name = name
      @screen_size = screen_size
    end

    def run
      register
      setup
    end

    private
      def register
        Capybara.register_driver @name do |app|
          Capybara::Selenium::Driver.new(app, browser: @name).tap do |driver|
            driver.browser.manage.window.size = Selenium::WebDriver::Dimension.new(*@screen_size)
          end
        end
      end

      def setup
        Capybara.default_driver = @name.to_sym
      end
  end
end