Method: Volt.setup_capybara_app

Defined in:
lib/volt/spec/capybara.rb

.setup_capybara_app(app_path, volt_app) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/volt/spec/capybara.rb', line 30

def setup_capybara_app(app_path, volt_app)
  require 'capybara'
  require 'capybara/dsl'
  require 'capybara/rspec'
  require 'capybara/poltergeist'
  require 'selenium-webdriver'
  require 'volt/server'

  case RUNNING_SERVER
  when 'thin'
    Capybara.server do |app, port|
      require 'rack/handler/thin'
      Rack::Handler::Thin.run(app, Port: port)
    end
  when 'puma'
    Capybara.server do |app, port|
      Puma::Server.new(app).tap do |s|
        s.add_tcp_listener Capybara.server_host, port
      end.run.join
    end
  end

  # Setup server, use existing booted app
  Capybara.app = Server.new(app_path, volt_app).app
end