| 1 | # This file was generated by the `rails generate rspec:install` command. Conventionally, all |
| 2 | # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`. |
| 3 | # The generated `.rspec` file contains `--require spec_helper` which will cause |
| 4 | # this file to always be loaded, without a need to explicitly require it in any |
| 5 | # files. |
| 6 | # |
| 7 | # Given that it is always loaded, you are encouraged to keep this file as |
| 8 | # light-weight as possible. Requiring heavyweight dependencies from this file |
| 9 | # will add to the boot time of your test suite on EVERY test run, even for an |
| 10 | # individual file that may not need all of that loaded. Instead, consider making |
| 11 | # a separate helper file that requires the additional dependencies and performs |
| 12 | # the additional setup, and require it from the spec files that actually need |
| 13 | # it. |
| 14 | # |
| 15 | # See https://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration |
| 16 | RSpec.configure do |config| |
| 17 | # rspec-expectations config goes here. You can use an alternate |
| 18 | # assertion/expectation library such as wrong or the stdlib/minitest |
| 19 | # assertions if you prefer. |
| 20 | config.expect_with :rspec do |expectations| |
| 21 | # This option will default to `true` in RSpec 4. It makes the `description` |
| 22 | # and `failure_message` of custom matchers include text for helper methods |
| 23 | # defined using `chain`, e.g.: |
| 24 | # be_bigger_than(2).and_smaller_than(4).description |
| 25 | # # => "be bigger than 2 and smaller than 4" |
| 26 | # ...rather than: |
| 27 | # # => "be bigger than 2" |
| 28 | expectations.include_chain_clauses_in_custom_matcher_descriptions = true |
| 29 | end |
| 30 | |
| 31 | # rspec-mocks config goes here. You can use an alternate test double |
| 32 | # library (such as bogus or mocha) by changing the `mock_with` option here. |
| 33 | config.mock_with :rspec do |mocks| |
| 34 | # Prevents you from mocking or stubbing a method that does not exist on |
| 35 | # a real object. This is generally recommended, and will default to |
| 36 | # `true` in RSpec 4. |
| 37 | mocks.verify_partial_doubles = true |
| 38 | end |
| 39 | |
| 40 | # This option will default to `:apply_to_host_groups` in RSpec 4 (and will |
| 41 | # have no way to turn it off -- the option exists only for backwards |
| 42 | # compatibility in RSpec 3). It causes shared context metadata to be |
| 43 | # inherited by the metadata hash of host groups and examples, rather than |
| 44 | # triggering implicit auto-inclusion in groups with matching metadata. |
| 45 | config.shared_context_metadata_behavior = :apply_to_host_groups |
| 46 | |
| 47 | # The settings below are suggested to provide a good initial experience |
| 48 | # with RSpec, but feel free to customize to your heart's content. |
| 49 | =begin |
| 50 | # This allows you to limit a spec run to individual examples or groups |
| 51 | # you care about by tagging them with `:focus` metadata. When nothing |
| 52 | # is tagged with `:focus`, all examples get run. RSpec also provides |
| 53 | # aliases for `it`, `describe`, and `context` that include `:focus` |
| 54 | # metadata: `fit`, `fdescribe` and `fcontext`, respectively. |
| 55 | config.filter_run_when_matching :focus |
| 56 | |
| 57 | # Allows RSpec to persist some state between runs in order to support |
| 58 | # the `--only-failures` and `--next-failure` CLI options. We recommend |
| 59 | # you configure your source control system to ignore this file. |
| 60 | config.example_status_persistence_file_path = "spec/examples.txt" |
| 61 | |
| 62 | # Limits the available syntax to the non-monkey patched syntax that is |
| 63 | # recommended. For more details, see: |
| 64 | # https://rspec.info/features/3-12/rspec-core/configuration/zero-monkey-patching-mode/ |
| 65 | config.disable_monkey_patching! |
| 66 | |
| 67 | # Many RSpec users commonly either run the entire suite or an individual |
| 68 | # file, and it's useful to allow more verbose output when running an |
| 69 | # individual spec file. |
| 70 | if config.files_to_run.one? |
| 71 | # Use the documentation formatter for detailed output, |
| 72 | # unless a formatter has already been configured |
| 73 | # (e.g. via a command-line flag). |
| 74 | config.default_formatter = "doc" |
| 75 | end |
| 76 | |
| 77 | # Print the 10 slowest examples and example groups at the |
| 78 | # end of the spec run, to help surface which specs are running |
| 79 | # particularly slow. |
| 80 | config.profile_examples = 10 |
| 81 | |
| 82 | # Run specs in random order to surface order dependencies. If you find an |
| 83 | # order dependency and want to debug it, you can fix the order by providing |
| 84 | # the seed, which is printed after each run. |
| 85 | # --seed 1234 |
| 86 | config.order = :random |
| 87 | |
| 88 | # Seed global randomization in this process using the `--seed` CLI option. |
| 89 | # Setting this allows you to use `--seed` to deterministically reproduce |
| 90 | # test failures related to randomization by passing the same `--seed` value |
| 91 | # as the one that triggered the failure. |
| 92 | Kernel.srand config.seed |
| 93 | =end |
| 94 | end |