<commit_before>require: "rubocop-rspec"

# subject はコピペ可搬性よりもそのまま USAGE であって欲しい
RSpec/DescribedClass:
  EnforcedStyle: explicit

# each で回したり aggregate_failures 使ってたりすると厳しい。
# feature spec は exclude でも良いかもしれない。
# ヒアドキュメント使うと一瞬で超えるので disable も検討。
RSpec/ExampleLength:
  Max: 8

# one-liner の should は書きやすいし意味が通りやすいし副作用も無いので撥ねる必要がない。
# ただ expect 派に対して強制するほどでもないので統一はしない。
RSpec/ImplicitExpect:
  Enabled: false

# let を使うのは context 間で条件が違うものが存在する時だけにしたい。
# before の方が事前条件を整えていることが分かりやすい。
RSpec/InstanceVariable:
  Enabled: false

# 強く 1 example 1 assertion の立場は取らないが、多すぎてもツラいので。
# aggregate_failures で囲われていたら無視する的なオプション欲しい。
RSpec/MultipleExpectations:
  Max: 3

# 変に名前つけて呼ぶ方が分かりづらい。
# テスト対象メソッドを呼ぶだけの subject 以外を書かないようにする方が効く。
RSpec/NamedSubject:
  Enabled: false<commit_msg>Count aggregate_failures block as single expectation since rubocop-rspec v1.13.0<commit_after>require: "rubocop-rspec"

# subject はコピペ可搬性よりもそのまま USAGE であって欲しい
RSpec/DescribedClass:
  EnforcedStyle: explicit

# each で回したり aggregate_failures 使ってたりすると厳しい。
# feature spec は exclude でも良いかもしれない。
# ヒアドキュメント使うと一瞬で超えるので disable も検討。
RSpec/ExampleLength:
  Max: 8

# one-liner の should は書きやすいし意味が通りやすいし副作用も無いので撥ねる必要がない。
# ただ expect 派に対して強制するほどでもないので統一はしない。
RSpec/ImplicitExpect:
  Enabled: false

# let を使うのは context 間で条件が違うものが存在する時だけにしたい。
# before の方が事前条件を整えていることが分かりやすい。
RSpec/InstanceVariable:
  Enabled: false

# 強く 1 example 1 assertion の立場は取らないが、多すぎてもツラいので。
RSpec/MultipleExpectations:
  Max: 3

# 変に名前つけて呼ぶ方が分かりづらい。
# テスト対象メソッドを呼ぶだけの subject 以外を書かないようにする方が効く。
RSpec/NamedSubject:
  Enabled: false
{'fraction_non_alphanumeric': 0.06449553001277139, 'fraction_numerical': 0.007662835249042145, 'mean_word_length': 6.64390243902439, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2831501', 'n_tokens_mistral': 967, 'n_tokens_neox': 898, 'n_words': 127}