diff --git a/spec/controllers/articles_controller_spec.rb b/spec/controllers/articles_controller_spec.rb index 1d6b030e..ec74adf5 100644 --- a/spec/controllers/articles_controller_spec.rb +++ b/spec/controllers/articles_controller_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe ArticlesController, type: :controller do describe "PaperTrail.enabled_for_controller?" do diff --git a/spec/generators/install_generator_spec.rb b/spec/generators/install_generator_spec.rb index 20f2994c..d39b8f92 100644 --- a/spec/generators/install_generator_spec.rb +++ b/spec/generators/install_generator_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" require "generator_spec/test_case" require File.expand_path("../../../lib/generators/paper_trail/install_generator", __FILE__) diff --git a/spec/models/animal_spec.rb b/spec/models/animal_spec.rb index 2d33e4f5..b864e3a4 100644 --- a/spec/models/animal_spec.rb +++ b/spec/models/animal_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Animal, type: :model, versioning: true do it "baseline test setup" do diff --git a/spec/models/boolit_spec.rb b/spec/models/boolit_spec.rb index df7c1708..ba5f7ac7 100644 --- a/spec/models/boolit_spec.rb +++ b/spec/models/boolit_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" require "support/custom_json_serializer" RSpec.describe Boolit, type: :model, versioning: true do diff --git a/spec/models/callback_modifier_spec.rb b/spec/models/callback_modifier_spec.rb index 1cbf2e37..4944af69 100644 --- a/spec/models/callback_modifier_spec.rb +++ b/spec/models/callback_modifier_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe CallbackModifier, type: :model, versioning: true do describe "paper_trail_on_destroy" do diff --git a/spec/models/car_spec.rb b/spec/models/car_spec.rb index f42ea3b8..41653372 100644 --- a/spec/models/car_spec.rb +++ b/spec/models/car_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Car, type: :model do it { is_expected.to be_versioned } diff --git a/spec/models/custom_primary_key_record_spec.rb b/spec/models/custom_primary_key_record_spec.rb index b3722fad..1428cbf5 100644 --- a/spec/models/custom_primary_key_record_spec.rb +++ b/spec/models/custom_primary_key_record_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe CustomPrimaryKeyRecord, type: :model do it { is_expected.to be_versioned } diff --git a/spec/models/document_spec.rb b/spec/models/document_spec.rb index 2c7a62f4..ecf41720 100644 --- a/spec/models/document_spec.rb +++ b/spec/models/document_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Document, type: :model do describe "`have_a_version_with` matcher", versioning: true do diff --git a/spec/models/gadget_spec.rb b/spec/models/gadget_spec.rb index ab607900..255716ba 100644 --- a/spec/models/gadget_spec.rb +++ b/spec/models/gadget_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Gadget, type: :model do it { is_expected.to be_versioned } diff --git a/spec/models/joined_version_spec.rb b/spec/models/joined_version_spec.rb index 14e3e9b6..876d0e83 100644 --- a/spec/models/joined_version_spec.rb +++ b/spec/models/joined_version_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe JoinedVersion, type: :model, versioning: true do let(:widget) { Widget.create!(name: FFaker::Name.name) } diff --git a/spec/models/json_version_spec.rb b/spec/models/json_version_spec.rb index 243e579b..883ea85f 100644 --- a/spec/models/json_version_spec.rb +++ b/spec/models/json_version_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" # The `json_versions` table tests postgres' `json` data type. So, that # table is only created when testing against postgres and ActiveRecord >= 4. diff --git a/spec/models/kitchen/banana_spec.rb b/spec/models/kitchen/banana_spec.rb index 5cdc8bee..e311f43d 100644 --- a/spec/models/kitchen/banana_spec.rb +++ b/spec/models/kitchen/banana_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module Kitchen RSpec.describe Banana, type: :model do diff --git a/spec/models/not_on_update_spec.rb b/spec/models/not_on_update_spec.rb index dc96d056..67c7bf5b 100644 --- a/spec/models/not_on_update_spec.rb +++ b/spec/models/not_on_update_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe NotOnUpdate, type: :model do describe "#touch_with_version", versioning: true do diff --git a/spec/models/post_with_status_spec.rb b/spec/models/post_with_status_spec.rb index 3bab7e00..3894edab 100644 --- a/spec/models/post_with_status_spec.rb +++ b/spec/models/post_with_status_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe PostWithStatus, type: :model do with_versioning do diff --git a/spec/models/skipper_spec.rb b/spec/models/skipper_spec.rb index 7353ea10..ef1eb6f0 100644 --- a/spec/models/skipper_spec.rb +++ b/spec/models/skipper_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Skipper, type: :model, versioning: true do it { is_expected.to be_versioned } diff --git a/spec/models/thing_spec.rb b/spec/models/thing_spec.rb index c0bcfad3..983a2a14 100644 --- a/spec/models/thing_spec.rb +++ b/spec/models/thing_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Thing, type: :model do it { is_expected.to be_versioned } diff --git a/spec/models/vehicle_spec.rb b/spec/models/vehicle_spec.rb index 69731b15..8b92a3c9 100644 --- a/spec/models/vehicle_spec.rb +++ b/spec/models/vehicle_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Vehicle, type: :model do it { is_expected.not_to be_versioned } diff --git a/spec/models/version_spec.rb b/spec/models/version_spec.rb index 11870664..c935ce52 100644 --- a/spec/models/version_spec.rb +++ b/spec/models/version_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module PaperTrail ::RSpec.describe Version, type: :model do diff --git a/spec/models/widget_spec.rb b/spec/models/widget_spec.rb index e886bbce..5dc15501 100644 --- a/spec/models/widget_spec.rb +++ b/spec/models/widget_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe Widget, type: :model do describe "`be_versioned` matcher" do diff --git a/spec/modules/paper_trail_spec.rb b/spec/modules/paper_trail_spec.rb index 9e6776af..74f308c9 100644 --- a/spec/modules/paper_trail_spec.rb +++ b/spec/modules/paper_trail_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe PaperTrail, type: :module, versioning: true do describe "#config" do diff --git a/spec/modules/version_concern_spec.rb b/spec/modules/version_concern_spec.rb index c5f17fbf..b5ae404d 100644 --- a/spec/modules/version_concern_spec.rb +++ b/spec/modules/version_concern_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe PaperTrail::VersionConcern do before(:all) { require "support/alt_db_init" } diff --git a/spec/paper_trail/associations_spec.rb b/spec/paper_trail/associations_spec.rb index 843959cf..5395add2 100644 --- a/spec/paper_trail/associations_spec.rb +++ b/spec/paper_trail/associations_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe(::PaperTrail, versioning: true) do CHAPTER_NAMES = [ diff --git a/spec/paper_trail/cleaner_spec.rb b/spec/paper_trail/cleaner_spec.rb index 3461e7ab..f0ba2a03 100644 --- a/spec/paper_trail/cleaner_spec.rb +++ b/spec/paper_trail/cleaner_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module PaperTrail ::RSpec.describe Cleaner, versioning: true do diff --git a/spec/paper_trail/config_spec.rb b/spec/paper_trail/config_spec.rb index d6def374..07228bf1 100644 --- a/spec/paper_trail/config_spec.rb +++ b/spec/paper_trail/config_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module PaperTrail ::RSpec.describe Config do diff --git a/spec/paper_trail/model_spec.rb b/spec/paper_trail/model_spec.rb index 991f3d8e..39e3ba66 100644 --- a/spec/paper_trail/model_spec.rb +++ b/spec/paper_trail/model_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe(::PaperTrail, versioning: true) do context "A record with defined 'only' and 'ignore' attributes" do diff --git a/spec/paper_trail/serializer_spec.rb b/spec/paper_trail/serializer_spec.rb index d6c708ad..e94cc50b 100644 --- a/spec/paper_trail/serializer_spec.rb +++ b/spec/paper_trail/serializer_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" require "support/custom_json_serializer" RSpec.describe(PaperTrail, versioning: true) do diff --git a/spec/paper_trail/serializers/custom_yaml_serializer_spec.rb b/spec/paper_trail/serializers/custom_yaml_serializer_spec.rb index d0f21832..c4af49c0 100644 --- a/spec/paper_trail/serializers/custom_yaml_serializer_spec.rb +++ b/spec/paper_trail/serializers/custom_yaml_serializer_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module CustomYamlSerializer extend PaperTrail::Serializers::YAML diff --git a/spec/paper_trail/serializers/json_spec.rb b/spec/paper_trail/serializers/json_spec.rb index af56e1a7..28be37d6 100644 --- a/spec/paper_trail/serializers/json_spec.rb +++ b/spec/paper_trail/serializers/json_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module PaperTrail module Serializers diff --git a/spec/paper_trail/version_limit_spec.rb b/spec/paper_trail/version_limit_spec.rb index a7e135c0..772301bc 100644 --- a/spec/paper_trail/version_limit_spec.rb +++ b/spec/paper_trail/version_limit_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module PaperTrail ::RSpec.describe Cleaner, versioning: true do diff --git a/spec/paper_trail/version_spec.rb b/spec/paper_trail/version_spec.rb index a8956c3d..7edb7021 100644 --- a/spec/paper_trail/version_spec.rb +++ b/spec/paper_trail/version_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" module PaperTrail ::RSpec.describe(Version, versioning: true) do diff --git a/spec/paper_trail_spec.rb b/spec/paper_trail_spec.rb index c2a1e381..bf4f7ca9 100644 --- a/spec/paper_trail_spec.rb +++ b/spec/paper_trail_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe PaperTrail do describe ".gem_version" do diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb deleted file mode 100644 index 22a4392a..00000000 --- a/spec/rails_helper.rb +++ /dev/null @@ -1,37 +0,0 @@ -# This file is copied to spec/ when you run 'rails generate rspec:install' -ENV["RAILS_ENV"] ||= "test" -ENV["DB"] ||= "sqlite" - -unless File.exist?(File.expand_path("../../test/dummy/config/database.yml", __FILE__)) - warn "WARNING: No database.yml detected for the dummy app, please run `rake prepare` first" -end - -require "spec_helper" -require File.expand_path("../../test/dummy/config/environment", __FILE__) -require "rspec/rails" -require "paper_trail/frameworks/rspec" -require "ffaker" -require "timecop" - -# prevent Test::Unit's AutoRunner from executing during RSpec's rake task -Test::Unit.run = true if defined?(Test::Unit) && Test::Unit.respond_to?(:run=) - -# Checks for pending migrations before tests are run. -# If you are not using ActiveRecord, you can remove this line. -ActiveRecord::Migration.check_pending! if ActiveRecord::Migration.respond_to?(:check_pending!) - -require "database_cleaner" -DatabaseCleaner.strategy = :truncation - -RSpec.configure do |config| - config.fixture_path = "#{::Rails.root}/spec/fixtures" - config.use_transactional_fixtures = active_record_gem_version >= ::Gem::Version.new("5") - - # In rails < 5, some tests seem to require DatabaseCleaner-truncation. - # Truncation is about three times slower than transaction rollback, so it'll - # be nice when we can drop support for rails < 5. - if active_record_gem_version < ::Gem::Version.new("5") - config.before(:each) { DatabaseCleaner.start } - config.after(:each) { DatabaseCleaner.clean } - end -end diff --git a/spec/requests/articles_spec.rb b/spec/requests/articles_spec.rb index d4c8cd55..d5ab5f9d 100644 --- a/spec/requests/articles_spec.rb +++ b/spec/requests/articles_spec.rb @@ -1,4 +1,4 @@ -require "rails_helper" +require "spec_helper" RSpec.describe "Articles management", type: :request, order: :defined do let(:valid_params) { { article: { title: "Doh", content: FFaker::Lorem.sentence } } } diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 0d0e7432..f3ad7ba7 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,3 +1,11 @@ +# This file is copied to spec/ when you run 'rails generate rspec:install' +ENV["RAILS_ENV"] ||= "test" +ENV["DB"] ||= "sqlite" + +unless File.exist?(File.expand_path("../../test/dummy/config/database.yml", __FILE__)) + warn "WARNING: No database.yml detected for the dummy app, please run `rake prepare` first" +end + require "pry" RSpec.configure do |config| @@ -43,3 +51,32 @@ def params_wrapper(args) args end end + +require File.expand_path("../../test/dummy/config/environment", __FILE__) +require "rspec/rails" +require "paper_trail/frameworks/rspec" +require "ffaker" +require "timecop" + +# prevent Test::Unit's AutoRunner from executing during RSpec's rake task +Test::Unit.run = true if defined?(Test::Unit) && Test::Unit.respond_to?(:run=) + +# Checks for pending migrations before tests are run. +# If you are not using ActiveRecord, you can remove this line. +ActiveRecord::Migration.check_pending! if ActiveRecord::Migration.respond_to?(:check_pending!) + +require "database_cleaner" +DatabaseCleaner.strategy = :truncation + +RSpec.configure do |config| + config.fixture_path = "#{::Rails.root}/spec/fixtures" + config.use_transactional_fixtures = active_record_gem_version >= ::Gem::Version.new("5") + + # In rails < 5, some tests seem to require DatabaseCleaner-truncation. + # Truncation is about three times slower than transaction rollback, so it'll + # be nice when we can drop support for rails < 5. + if active_record_gem_version < ::Gem::Version.new("5") + config.before(:each) { DatabaseCleaner.start } + config.after(:each) { DatabaseCleaner.clean } + end +end