-
Notifications
You must be signed in to change notification settings - Fork 578
Expand file tree
/
Copy path.rubocop.yml
More file actions
67 lines (62 loc) · 2.45 KB
/
Copy path.rubocop.yml
File metadata and controls
67 lines (62 loc) · 2.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Standard owns the style, so this file carries only what Standard leaves to
# us: the RSpec department, which Standard does not run from here, and the
# handful of excludes that are about this repository's layout rather than about
# style. Configuring a cop Standard disables does nothing, so a rule that has to
# hold belongs in docs/Contributing.md or beside the code, not here.
#
# standard-rspec is deliberately absent here and applied through .standard.yml
# instead. Its config sets a Language parameter on the RSpecRails department
# that rubocop-rspec_rails does not accept, which RuboCop warns about on every
# run, and inheriting it drags in the Capybara, FactoryBot and RSpecRails
# plugins that this project has no use for. `rake standard` still enforces it.
inherit_gem:
standard: config/base.yml
standard-performance: config/base.yml
plugins:
- rubocop-performance
- rubocop-rake
- rubocop-rspec
AllCops:
Exclude:
# Fixtures are byte-stable test inputs: their line numbers, layout,
# and sometimes their encodings are what the specs assert against,
# so they are not subject to style.
- "spec/fixtures/**/*"
- "test_projects/**/*"
- "tmp/**/*"
- "vendor/bundle/**/*"
- "vendor/bundle/**/.*"
TargetRubyVersion: 3.2
NewCops: enable
inherit_mode:
merge:
- Exclude
# spec/support/ holds helper modules, not a spec suite, so the RSpec
# department shouldn't touch it. (Fixtures are excluded wholesale under
# AllCops.)
RSpec:
Exclude:
- "spec/support/**/*"
RSpec/DescribeClass:
Exclude:
# End-to-end sandbox specs describe user-visible behaviors, not classes.
- "spec/sandbox/**/*"
# These specs describe cross-cutting behaviors and contracts (e.g.
# exit codes, output streams, file formats, build artifacts), which
# no single class owns.
- "spec/assets_spec.rb"
- "spec/config_loader_spec.rb"
- "spec/coverage_for_eval_spec.rb"
- "spec/deleted_source_spec.rb"
- "spec/formatter/coverage_schema_spec.rb"
- "spec/gemspec_spec.rb"
- "spec/production_integration_spec.rb"
- "spec/return_codes_spec.rb"
- "spec/stderr_output_spec.rb"
RSpec/SpecFilePathFormat:
Exclude:
# SimpleCov::CLI is one class, but its spec was far too slow to leave on
# one parallel worker, so the heaviest subcommands and the classes the CLI
# is built from have files of their own here. They still describe the
# class the directory is named for.
- "spec/simple_cov/cli/**/*"