From 8131cca7295d28ae9ef5ae43c87f3f8a3448bb69 Mon Sep 17 00:00:00 2001 From: Travis Grathwell Date: Mon, 9 Jun 2014 23:53:37 -0700 Subject: [PATCH] Split spec_helper into a spec_helper and rails_helper per Rspec 3 configuration Randomize spec order, that seems like a good idea right? --- spec/controllers/chapters_controller_spec.rb | 2 +- spec/controllers/checkins_controller_spec.rb | 2 +- .../event_sessions_controller_spec.rb | 2 +- .../events/attendees_controller_spec.rb | 2 +- .../events/emails_controller_spec.rb | 2 +- .../events/students_controller_spec.rb | 2 +- spec/controllers/events_controller_spec.rb | 2 +- .../external_events_controller_spec.rb | 2 +- spec/controllers/locations_controller_spec.rb | 2 +- .../controllers/organizers_controller_spec.rb | 2 +- spec/controllers/profiles_controller_spec.rb | 2 +- .../registrations_controller_spec.rb | 2 +- spec/controllers/rsvps_controller_spec.rb | 2 +- spec/controllers/sections_controller_spec.rb | 2 +- spec/controllers/surveys_controller_spec.rb | 2 +- spec/controllers/users_controller_spec.rb | 2 +- .../controllers/volunteers_controller_spec.rb | 2 +- spec/features/admin_dashboard_request_spec.rb | 2 +- spec/features/edit_account_details_spec.rb | 2 +- spec/features/event_checkiner_request_spec.rb | 2 +- spec/features/event_email_request_spec.rb | 2 +- spec/features/event_listing_request_spec.rb | 2 +- .../event_organizer_dashboard_request_spec.rb | 2 +- .../features/event_organizers_request_spec.rb | 2 +- spec/features/event_rsvp_request_spec.rb | 2 +- spec/features/event_survey_spec.rb | 2 +- spec/features/homepage_request_spec.rb | 2 +- .../individual_event_page_request_spec.rb | 2 +- spec/features/locations_request_spec.rb | 2 +- spec/features/new_event_request_spec.rb | 2 +- spec/features/omniauth_request_spec.rb | 2 +- spec/features/profiles_spec.rb | 2 +- spec/features/publish_event_request_spec.rb | 2 +- .../features/section_arranger_request_spec.rb | 2 +- .../section_organizer_request_spec.rb | 2 +- spec/features/sign_in_menu_spec.rb | 2 +- spec/helpers/events_helper_spec.rb | 2 +- spec/jobs/reminder_sender_spec.rb | 2 +- spec/jobs/survey_sender_spec.rb | 2 +- spec/mailers/rsvp_mailer_spec.rb | 2 +- spec/mailers/survey_mailer_spec.rb | 2 +- spec/models/chapter_spec.rb | 2 +- spec/models/event_session_spec.rb | 2 +- spec/models/event_spec.rb | 2 +- spec/models/location_spec.rb | 2 +- spec/models/meetup_user_spec.rb | 2 +- spec/models/profile_spec.rb | 2 +- spec/models/rsvp_session_spec.rb | 2 +- spec/models/rsvp_spec.rb | 2 +- spec/models/user_spec.rb | 2 +- spec/rails_helper.rb | 51 ++++++++++++++ spec/seeds/seeds_spec.rb | 2 +- spec/services/ics_generator_spec.rb | 2 +- spec/services/meetup_importer_spec.rb | 2 +- spec/services/section_arranger_spec.rb | 2 +- spec/spec_helper.rb | 68 +++++-------------- 56 files changed, 123 insertions(+), 104 deletions(-) create mode 100644 spec/rails_helper.rb diff --git a/spec/controllers/chapters_controller_spec.rb b/spec/controllers/chapters_controller_spec.rb index 33fccaa6c..2117c65c6 100644 --- a/spec/controllers/chapters_controller_spec.rb +++ b/spec/controllers/chapters_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe ChaptersController do before do diff --git a/spec/controllers/checkins_controller_spec.rb b/spec/controllers/checkins_controller_spec.rb index b4f6c3278..fdd337249 100644 --- a/spec/controllers/checkins_controller_spec.rb +++ b/spec/controllers/checkins_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe CheckinsController do before do diff --git a/spec/controllers/event_sessions_controller_spec.rb b/spec/controllers/event_sessions_controller_spec.rb index 3f6db0d95..f0c178ff4 100644 --- a/spec/controllers/event_sessions_controller_spec.rb +++ b/spec/controllers/event_sessions_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe EventSessionsController do render_views diff --git a/spec/controllers/events/attendees_controller_spec.rb b/spec/controllers/events/attendees_controller_spec.rb index bb38dce5b..85257fc57 100644 --- a/spec/controllers/events/attendees_controller_spec.rb +++ b/spec/controllers/events/attendees_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Events::AttendeesController do describe "#update" do diff --git a/spec/controllers/events/emails_controller_spec.rb b/spec/controllers/events/emails_controller_spec.rb index 9ba1706af..586724de5 100644 --- a/spec/controllers/events/emails_controller_spec.rb +++ b/spec/controllers/events/emails_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Events::EmailsController do describe "#create" do diff --git a/spec/controllers/events/students_controller_spec.rb b/spec/controllers/events/students_controller_spec.rb index 8abe8ac56..2cbb07ecf 100644 --- a/spec/controllers/events/students_controller_spec.rb +++ b/spec/controllers/events/students_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Events::StudentsController do let(:student_rsvp) { create(:student_rsvp) } diff --git a/spec/controllers/events_controller_spec.rb b/spec/controllers/events_controller_spec.rb index f7bec39f7..7b44116c1 100644 --- a/spec/controllers/events_controller_spec.rb +++ b/spec/controllers/events_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe EventsController do before do diff --git a/spec/controllers/external_events_controller_spec.rb b/spec/controllers/external_events_controller_spec.rb index 0203b5c4c..1edcc3f13 100644 --- a/spec/controllers/external_events_controller_spec.rb +++ b/spec/controllers/external_events_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe ExternalEventsController do let(:valid_attributes) do diff --git a/spec/controllers/locations_controller_spec.rb b/spec/controllers/locations_controller_spec.rb index 65eaad1c8..4e344dca1 100644 --- a/spec/controllers/locations_controller_spec.rb +++ b/spec/controllers/locations_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe LocationsController do before do diff --git a/spec/controllers/organizers_controller_spec.rb b/spec/controllers/organizers_controller_spec.rb index 0ef5c4aef..4797c2435 100644 --- a/spec/controllers/organizers_controller_spec.rb +++ b/spec/controllers/organizers_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe OrganizersController do before do diff --git a/spec/controllers/profiles_controller_spec.rb b/spec/controllers/profiles_controller_spec.rb index 8f486c6bc..e7f46e4b6 100644 --- a/spec/controllers/profiles_controller_spec.rb +++ b/spec/controllers/profiles_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe ProfilesController do before do diff --git a/spec/controllers/registrations_controller_spec.rb b/spec/controllers/registrations_controller_spec.rb index 7ebf2162b..ffa454bb0 100644 --- a/spec/controllers/registrations_controller_spec.rb +++ b/spec/controllers/registrations_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe DeviseOverrides::RegistrationsController do before do diff --git a/spec/controllers/rsvps_controller_spec.rb b/spec/controllers/rsvps_controller_spec.rb index 0715a2152..489da0d33 100644 --- a/spec/controllers/rsvps_controller_spec.rb +++ b/spec/controllers/rsvps_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe RsvpsController do def extract_rsvp_params(rsvp) diff --git a/spec/controllers/sections_controller_spec.rb b/spec/controllers/sections_controller_spec.rb index cd452f7e8..7f6c00086 100644 --- a/spec/controllers/sections_controller_spec.rb +++ b/spec/controllers/sections_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe SectionsController do before do diff --git a/spec/controllers/surveys_controller_spec.rb b/spec/controllers/surveys_controller_spec.rb index 77348169c..1219c5d68 100644 --- a/spec/controllers/surveys_controller_spec.rb +++ b/spec/controllers/surveys_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe SurveysController do before do diff --git a/spec/controllers/users_controller_spec.rb b/spec/controllers/users_controller_spec.rb index 48d361ae3..ad088428f 100644 --- a/spec/controllers/users_controller_spec.rb +++ b/spec/controllers/users_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe UsersController do before do diff --git a/spec/controllers/volunteers_controller_spec.rb b/spec/controllers/volunteers_controller_spec.rb index 66707ac49..77786b91c 100644 --- a/spec/controllers/volunteers_controller_spec.rb +++ b/spec/controllers/volunteers_controller_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe VolunteersController do before do diff --git a/spec/features/admin_dashboard_request_spec.rb b/spec/features/admin_dashboard_request_spec.rb index 2053d421d..b9269a80a 100644 --- a/spec/features/admin_dashboard_request_spec.rb +++ b/spec/features/admin_dashboard_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "the admin dashboard" do context "when signed in as a normal user" do diff --git a/spec/features/edit_account_details_spec.rb b/spec/features/edit_account_details_spec.rb index 65f585af8..d1ef2d976 100644 --- a/spec/features/edit_account_details_spec.rb +++ b/spec/features/edit_account_details_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "Profile" do before do diff --git a/spec/features/event_checkiner_request_spec.rb b/spec/features/event_checkiner_request_spec.rb index 692fa90bd..308cbb884 100644 --- a/spec/features/event_checkiner_request_spec.rb +++ b/spec/features/event_checkiner_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "checking in attendees" do before do diff --git a/spec/features/event_email_request_spec.rb b/spec/features/event_email_request_spec.rb index bc54ba6b5..41eafac35 100644 --- a/spec/features/event_email_request_spec.rb +++ b/spec/features/event_email_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "the email page" do let(:recipients) { JSON.parse(ActionMailer::Base.deliveries.last.header['X-SMTPAPI'].to_s)['to'] } diff --git a/spec/features/event_listing_request_spec.rb b/spec/features/event_listing_request_spec.rb index be6da5875..7108c10ce 100644 --- a/spec/features/event_listing_request_spec.rb +++ b/spec/features/event_listing_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "the event listing page" do it "listing should show blank Location if no location_id exists" do diff --git a/spec/features/event_organizer_dashboard_request_spec.rb b/spec/features/event_organizer_dashboard_request_spec.rb index d460bd216..650514d67 100644 --- a/spec/features/event_organizer_dashboard_request_spec.rb +++ b/spec/features/event_organizer_dashboard_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "the organizer dashboard" do before do diff --git a/spec/features/event_organizers_request_spec.rb b/spec/features/event_organizers_request_spec.rb index b8727ccd9..22decc199 100644 --- a/spec/features/event_organizers_request_spec.rb +++ b/spec/features/event_organizers_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "Event Organizers page" do before do diff --git a/spec/features/event_rsvp_request_spec.rb b/spec/features/event_rsvp_request_spec.rb index 6290494a4..44c2d7ca0 100644 --- a/spec/features/event_rsvp_request_spec.rb +++ b/spec/features/event_rsvp_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe 'creating or editing an rsvp' do context "for a teaching event" do diff --git a/spec/features/event_survey_spec.rb b/spec/features/event_survey_spec.rb index efbbdf4a3..737f72e4e 100644 --- a/spec/features/event_survey_spec.rb +++ b/spec/features/event_survey_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe 'the post-workshop survey' do before do diff --git a/spec/features/homepage_request_spec.rb b/spec/features/homepage_request_spec.rb index 69a9fe1f0..8b7c30927 100644 --- a/spec/features/homepage_request_spec.rb +++ b/spec/features/homepage_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "visiting the home page" do describe "as an unauthenticated user" do diff --git a/spec/features/individual_event_page_request_spec.rb b/spec/features/individual_event_page_request_spec.rb index 494217862..0f713a0d0 100644 --- a/spec/features/individual_event_page_request_spec.rb +++ b/spec/features/individual_event_page_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "the individual event page" do let(:rsvp_actions_selector) { '.rsvp-actions' } diff --git a/spec/features/locations_request_spec.rb b/spec/features/locations_request_spec.rb index 2d63e76ee..ca13150d0 100644 --- a/spec/features/locations_request_spec.rb +++ b/spec/features/locations_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe 'Locations' do it "should create a new location" do diff --git a/spec/features/new_event_request_spec.rb b/spec/features/new_event_request_spec.rb index 9e133775e..9e65ba6ad 100644 --- a/spec/features/new_event_request_spec.rb +++ b/spec/features/new_event_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "New Event" do before do diff --git a/spec/features/omniauth_request_spec.rb b/spec/features/omniauth_request_spec.rb index a66d4f7f9..66aca5f16 100644 --- a/spec/features/omniauth_request_spec.rb +++ b/spec/features/omniauth_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' require Rails.root.join('spec', 'services', 'omniauth_responses') describe "signing in with omniauth" do diff --git a/spec/features/profiles_spec.rb b/spec/features/profiles_spec.rb index 6b01920ed..c1dca26cf 100644 --- a/spec/features/profiles_spec.rb +++ b/spec/features/profiles_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "Profile" do before do diff --git a/spec/features/publish_event_request_spec.rb b/spec/features/publish_event_request_spec.rb index f42b3bb3d..d110af8ef 100644 --- a/spec/features/publish_event_request_spec.rb +++ b/spec/features/publish_event_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "the approval page" do before do diff --git a/spec/features/section_arranger_request_spec.rb b/spec/features/section_arranger_request_spec.rb index e4eff58ae..ea90bd56a 100644 --- a/spec/features/section_arranger_request_spec.rb +++ b/spec/features/section_arranger_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "arranging sections for an event", js: true do before do diff --git a/spec/features/section_organizer_request_spec.rb b/spec/features/section_organizer_request_spec.rb index f4f40aa33..eb05fc4e7 100644 --- a/spec/features/section_organizer_request_spec.rb +++ b/spec/features/section_organizer_request_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe "the section organizer tool" do before do diff --git a/spec/features/sign_in_menu_spec.rb b/spec/features/sign_in_menu_spec.rb index f627fe3c6..329d7dbd0 100644 --- a/spec/features/sign_in_menu_spec.rb +++ b/spec/features/sign_in_menu_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' require Rails.root.join('spec', 'services', 'omniauth_responses') describe "sign in lightbox" do diff --git a/spec/helpers/events_helper_spec.rb b/spec/helpers/events_helper_spec.rb index d1ce545aa..208791794 100644 --- a/spec/helpers/events_helper_spec.rb +++ b/spec/helpers/events_helper_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' def event_for_dates(starts_at, ends_at) event = build(:event_with_no_sessions) diff --git a/spec/jobs/reminder_sender_spec.rb b/spec/jobs/reminder_sender_spec.rb index abf35dc3f..b350f0b28 100644 --- a/spec/jobs/reminder_sender_spec.rb +++ b/spec/jobs/reminder_sender_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe ReminderSender do describe '.send_all' do diff --git a/spec/jobs/survey_sender_spec.rb b/spec/jobs/survey_sender_spec.rb index bdab4afb1..a811e407e 100644 --- a/spec/jobs/survey_sender_spec.rb +++ b/spec/jobs/survey_sender_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe SurveySender do describe ".send_surveys" do diff --git a/spec/mailers/rsvp_mailer_spec.rb b/spec/mailers/rsvp_mailer_spec.rb index d01830d27..82649f380 100644 --- a/spec/mailers/rsvp_mailer_spec.rb +++ b/spec/mailers/rsvp_mailer_spec.rb @@ -1,4 +1,4 @@ -require "spec_helper" +require 'rails_helper' describe RsvpMailer do let(:user) { rsvp.user } diff --git a/spec/mailers/survey_mailer_spec.rb b/spec/mailers/survey_mailer_spec.rb index 2dda25f6d..252ab7fef 100644 --- a/spec/mailers/survey_mailer_spec.rb +++ b/spec/mailers/survey_mailer_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe SurveyMailer do let(:rsvp) { create(:rsvp) } diff --git a/spec/models/chapter_spec.rb b/spec/models/chapter_spec.rb index 8e9280019..7281cac9f 100644 --- a/spec/models/chapter_spec.rb +++ b/spec/models/chapter_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Chapter do it { should have_many(:locations) } diff --git a/spec/models/event_session_spec.rb b/spec/models/event_session_spec.rb index b7ca1fc14..719bf68ac 100644 --- a/spec/models/event_session_spec.rb +++ b/spec/models/event_session_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe EventSession do it { should belong_to(:event) } diff --git a/spec/models/event_spec.rb b/spec/models/event_spec.rb index 6e6c86fa4..b27ed04bc 100644 --- a/spec/models/event_spec.rb +++ b/spec/models/event_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Event do before do diff --git a/spec/models/location_spec.rb b/spec/models/location_spec.rb index 703770f90..3c93c3736 100644 --- a/spec/models/location_spec.rb +++ b/spec/models/location_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Location do it { should have_many(:events) } diff --git a/spec/models/meetup_user_spec.rb b/spec/models/meetup_user_spec.rb index 7bd5a38c5..e3aeda4ad 100644 --- a/spec/models/meetup_user_spec.rb +++ b/spec/models/meetup_user_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe MeetupUser do let(:user) { create(:meetup_user) } diff --git a/spec/models/profile_spec.rb b/spec/models/profile_spec.rb index 94ef763fa..7f1f6182e 100644 --- a/spec/models/profile_spec.rb +++ b/spec/models/profile_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Profile do it { should belong_to(:user) } diff --git a/spec/models/rsvp_session_spec.rb b/spec/models/rsvp_session_spec.rb index 9d55eff13..0e85163ee 100644 --- a/spec/models/rsvp_session_spec.rb +++ b/spec/models/rsvp_session_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe RsvpSession do context 'checkins counter cache' do diff --git a/spec/models/rsvp_spec.rb b/spec/models/rsvp_spec.rb index 5d4996b16..80825c8b5 100644 --- a/spec/models/rsvp_spec.rb +++ b/spec/models/rsvp_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe Rsvp do it { should belong_to(:user) } diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 5fbdad655..d80b98c42 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe User do before { @user = create(:user) } diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb new file mode 100644 index 000000000..6306624d2 --- /dev/null +++ b/spec/rails_helper.rb @@ -0,0 +1,51 @@ +ENV["RAILS_ENV"] ||= 'test' + +require 'spec_helper' +require File.expand_path("../../config/environment", __FILE__) +require 'rspec/rails' + +require 'capybara/rspec' +require 'capybara/poltergeist' +require 'capybara-screenshot/rspec' +require 'webmock/rspec' + +Capybara.javascript_driver = :poltergeist +Capybara.asset_host = 'http://localhost:3000' + +Rails.application.routes.default_url_options[:host] = 'localhost:3000' + +Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f} + +RSpec.configure do |config| + config.infer_spec_type_from_file_location! + + config.use_transactional_fixtures = true + + config.before(:each) do + WebMock.disable_net_connect!(:allow_localhost => true) + end + + config.include Devise::TestHelpers, :type => :controller + + config.include FactoryGirl::Syntax::Methods + + # Monkey-patch to force single DB connection even in multithreaded + # tests (selenium/capybara-webkit/poltergeist) + ActiveRecord::ConnectionAdapters::ConnectionPool.class_eval do + def current_connection_id + Thread.main.object_id + end + end + + [:feature, :request].each do |type| + config.include Warden::Test::Helpers, type: type + end + + config.before do |example| + Warden.test_mode! if example.metadata[:js] + end + + config.after do |example| + Warden.test_reset! if example.metadata[:js] + end +end diff --git a/spec/seeds/seeds_spec.rb b/spec/seeds/seeds_spec.rb index 26fd87ac6..537834444 100644 --- a/spec/seeds/seeds_spec.rb +++ b/spec/seeds/seeds_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' require Rails.root.join('db', 'seeds', 'seed_event') require Rails.root.join('db', 'seeds', 'admin_user') diff --git a/spec/services/ics_generator_spec.rb b/spec/services/ics_generator_spec.rb index e2da78c71..2c420d1ec 100644 --- a/spec/services/ics_generator_spec.rb +++ b/spec/services/ics_generator_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe IcsGenerator do describe '#event_session_ics' do diff --git a/spec/services/meetup_importer_spec.rb b/spec/services/meetup_importer_spec.rb index 61f07f507..b0bd078db 100644 --- a/spec/services/meetup_importer_spec.rb +++ b/spec/services/meetup_importer_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' require_relative 'meetup_request_fixtures' describe MeetupImporter do diff --git a/spec/services/section_arranger_spec.rb b/spec/services/section_arranger_spec.rb index fa1b36c0a..963dcf795 100644 --- a/spec/services/section_arranger_spec.rb +++ b/spec/services/section_arranger_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require 'rails_helper' describe SectionArranger do def preference(volunteer_rsvp) diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 516a7fab8..301290ce9 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,59 +1,27 @@ -ENV["RAILS_ENV"] ||= 'test' - -require File.expand_path("../../config/environment", __FILE__) -require 'rspec/rails' -require 'capybara/rspec' -require 'capybara/poltergeist' -require 'capybara-screenshot/rspec' -require 'webmock/rspec' - -Capybara.javascript_driver = :poltergeist -Capybara.asset_host = 'http://localhost:3000' - -Rails.application.routes.default_url_options[:host] = 'localhost:3000' - -Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f} +# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration RSpec.configure do |config| - config.mock_with :rspec - - config.infer_spec_type_from_file_location! - - config.use_transactional_fixtures = true - - config.expect_with :rspec do |c| - c.syntax = [:should, :expect] + # 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 + + # Seed global randomization in this process using the `--seed` CLI option. + # Setting this allows you to use `--seed` to deterministically reproduce + # test failures related to randomization by passing the same `--seed` value + # as the one that triggered the failure. + Kernel.srand config.seed + + config.expect_with :rspec do |expectations| + expectations.syntax = [:should, :expect] end config.mock_with :rspec do |mocks| mocks.syntax = [:should, :expect] - end - - config.before(:each) do - WebMock.disable_net_connect!(:allow_localhost => true) - end - - config.include Devise::TestHelpers, :type => :controller - - config.include FactoryGirl::Syntax::Methods - - # Monkey-patch to force single DB connection even in multithreaded - # tests (selenium/capybara-webkit/poltergeist) - ActiveRecord::ConnectionAdapters::ConnectionPool.class_eval do - def current_connection_id - Thread.main.object_id - end - end - - [:feature, :request].each do |type| - config.include Warden::Test::Helpers, type: type - end - - config.before do |example| - Warden.test_mode! if example.metadata[:js] - end - config.after do |example| - Warden.test_reset! if example.metadata[:js] + # Prevents you from mocking or stubbing a method that does not exist on + # a real object. This is generally recommended. + mocks.verify_partial_doubles = true end end