# This file was generated by the `rspec --init` command. Conventionally, all # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`. # Require this file using `require "spec_helper"` to ensure that it is only # loaded once. # # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration ENV['RAILS_ENV'] ||= 'test' require File.expand_path('../dummy/config/environment', __FILE__) require 'rspec/rails' require 'capybara/rspec' require 'capybara/poltergeist' require 'pry' # We're using Poltergeist with phantomjs, because this driver allows to # enable and disable cookies. We need this feature for our tests. Capybara.javascript_driver = :poltergeist RSpec.configure do |config| config.treat_symbols_as_metadata_keys_with_true_values = true config.run_all_when_everything_filtered = true config.filter_run :focus # Run specs in random order to surface order dependencies. If you find an # order dependency and want to debug it, you can fix the order by providing # the seed, which is printed after each run. # --seed 1234 config.order = 'random' end # Some helper methods ... def rails_app_session_key Rails.application.config.session_options[:key] end def extract_session_id_from_headers(headers, session_key=rails_app_session_key) headers['Set-Cookie'].match(/\A#{session_key}=(?[0-9a-f]+);/)[:sid] end