Sha256: c65972c273aa42d0e9bd92431828bc906067b6d3597ca49014881d42d9bf8618

Contents?: true

Size: 789 Bytes

Versions: 7

Compression:

Stored size: 789 Bytes

Contents

# This class works around some weirdness with Capybara's test suite and sinatra's behavior.
# We need to make sure that sinatra uses TestApp for at least one request before the Capybara session
# specs run.  Without this we get errors from sinatra trying to handle requests with TestApp.clone
class ExtendedTestAppSetup
  include Capybara::DSL

  attr_reader :remote_test_url

  def boot
    boot_test_app
    boot_remote_app

    self
  end

  def boot_test_app
    Capybara.app = TestApp
    dummy_server = Capybara::Server.new(TestApp)
    dummy_server.boot

    # Boot TestApp's Sinatra
    visit '/'
  end

  def boot_remote_app
    remote_server = Capybara::Server.new(ExtendedTestApp)
    remote_server.boot
    @remote_test_url = "http://localhost:#{remote_server.port}"
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
capybara-mechanize-1.1.0 spec/support/extended_test_app_setup.rb
capybara-mechanize-1.0.2 spec/support/extended_test_app_setup.rb
capybara-mechanize-1.0.1 spec/support/extended_test_app_setup.rb
capybara-mechanize-1.0.0 spec/support/extended_test_app_setup.rb
capybara-mechanize-0.4.0.rc1 spec/support/extended_test_app_setup.rb
ryansch-capybara-mechanize-1.0.1 spec/support/extended_test_app_setup.rb
ryansch-capybara-mechanize-1.0.0 spec/support/extended_test_app_setup.rb