|
| 1 | +# This file is copied to spec/ when you run 'rails generate rspec:install' |
| 2 | +require 'spec_helper' |
| 3 | +ENV['RAILS_ENV'] ||= 'test' |
| 4 | +require_relative '../config/environment' |
| 5 | +# Prevent database truncation if the environment is production |
| 6 | +abort("The Rails environment is running in production mode!") if Rails.env.production? |
| 7 | +# Uncomment the line below in case you have `--require rails_helper` in the `.rspec` file |
| 8 | +# that will avoid rails generators crashing because migrations haven't been run yet |
| 9 | +# return unless Rails.env.test? |
| 10 | +require 'rspec/rails' |
| 11 | +# Add additional requires below this line. Rails is not loaded until this point! |
| 12 | + |
| 13 | +# Requires supporting ruby files with custom matchers and macros, etc, in |
| 14 | +# spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are |
| 15 | +# run as spec files by default. This means that files in spec/support that end |
| 16 | +# in _spec.rb will both be required and run as specs, causing the specs to be |
| 17 | +# run twice. It is recommended that you do not name files matching this glob to |
| 18 | +# end with _spec.rb. You can configure this pattern with the --pattern |
| 19 | +# option on the command line or in ~/.rspec, .rspec or `.rspec-local`. |
| 20 | +# |
| 21 | +# The following line is provided for convenience purposes. It has the downside |
| 22 | +# of increasing the boot-up time by auto-requiring all files in the support |
| 23 | +# directory. Alternatively, in the individual `*_spec.rb` files, manually |
| 24 | +# require only the support files necessary. |
| 25 | +# |
| 26 | +# Rails.root.glob('spec/support/**/*.rb').sort_by(&:to_s).each { |f| require f } |
| 27 | + |
| 28 | +# Ensures that the test database schema matches the current schema file. |
| 29 | +# If there are pending migrations it will invoke `db:test:prepare` to |
| 30 | +# recreate the test database by loading the schema. |
| 31 | +# If you are not using ActiveRecord, you can remove these lines. |
| 32 | +begin |
| 33 | + ActiveRecord::Migration.maintain_test_schema! |
| 34 | +rescue ActiveRecord::PendingMigrationError => e |
| 35 | + abort e.to_s.strip |
| 36 | +end |
| 37 | +RSpec.configure do |config| |
| 38 | + # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures |
| 39 | + config.fixture_paths = [ |
| 40 | + Rails.root.join('spec/fixtures') |
| 41 | + ] |
| 42 | + |
| 43 | + # If you're not using ActiveRecord, or you'd prefer not to run each of your |
| 44 | + # examples within a transaction, remove the following line or assign false |
| 45 | + # instead of true. |
| 46 | + config.use_transactional_fixtures = true |
| 47 | + |
| 48 | + # You can uncomment this line to turn off ActiveRecord support entirely. |
| 49 | + # config.use_active_record = false |
| 50 | + |
| 51 | + # RSpec Rails uses metadata to mix in different behaviours to your tests, |
| 52 | + # for example enabling you to call `get` and `post` in request specs. e.g.: |
| 53 | + # |
| 54 | + # RSpec.describe UsersController, type: :request do |
| 55 | + # # ... |
| 56 | + # end |
| 57 | + # |
| 58 | + # The different available types are documented in the features, such as in |
| 59 | + # https://rspec.info/features/8-0/rspec-rails |
| 60 | + # |
| 61 | + # You can also this infer these behaviours automatically by location, e.g. |
| 62 | + # /spec/models would pull in the same behaviour as `type: :model` but this |
| 63 | + # behaviour is considered legacy and will be removed in a future version. |
| 64 | + # |
| 65 | + # To enable this behaviour uncomment the line below. |
| 66 | + # config.infer_spec_type_from_file_location! |
| 67 | + |
| 68 | + # Filter lines from Rails gems in backtraces. |
| 69 | + config.filter_rails_from_backtrace! |
| 70 | + # arbitrary gems may also be filtered via: |
| 71 | + # config.filter_gems_from_backtrace("gem name") |
| 72 | + |
| 73 | + # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order. |
| 74 | + config.global_fixtures = :all |
| 75 | +end |
0 commit comments