momocop 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 47c9203f322466a1799ecd615eace3f9c0112d959b560211bfc7b1e433d6697b
4
- data.tar.gz: 1d63e00519322bf145ad906d40893cbab601dcdc447cd2ae4e7f3910da46e4ee
3
+ metadata.gz: bae3d0f2d4c1c038b116735e1a47744d090fdb07b911688893c7987ebf44597c
4
+ data.tar.gz: eca84c634dbf5a6374c2e0899647f50d0e1ec65e9c6b2485c1ffaeda6e283608
5
5
  SHA512:
6
- metadata.gz: ada13b67eda1015615e5ee8725580a595f20125458ff68d35f9a6b9929e6391c6ee7baad478671cd4885dbf31a6f59e529d00b400dd36deabf9d99eb4b9a36a9
7
- data.tar.gz: 42dfc6d561aa4e6d80c468e6c3eb3da490a1843b8d5f1b78b992359d7f30279c780190bcc32a5034815d82fb301d88230f05547650587449823b980a44cbc0e3
6
+ metadata.gz: fd489ae7183fe59a0437733743e3cf1a9af80e900ff0b4ac8b059eabf700aa45fc6a37e8cdf502426f17cc331cd01fbb6cd694c2d7b5ddcdda9da92b338bf079
7
+ data.tar.gz: 610e80f9e71629d3a7ca56a6111774fd6bed8eed874ddde5538d40f59d80a5c722752f6e638c1a3602f8aac88e9d9e50919e6fc23e1902636f2b8a37d56bc626
data/README.ja.md CHANGED
@@ -48,32 +48,35 @@ Momocop/FactoryBotSingularFactoryName:
48
48
  Enabled: true
49
49
  Momocop/Layout/LeadingCommentSpace:
50
50
  Enabled: true
51
- Momocop/RspecContextTextPattern:
51
+ Momocop/RbiMissingExtendTSig:
52
52
  Enabled: true
53
- Momocop/RspecDescribeTextPattern:
53
+ Momocop/RspecContextWording:
54
54
  Enabled: true
55
- Momocop/RspecItTextPattern:
55
+ Momocop/RspecDescribeWording:
56
+ Enabled: true
57
+ Momocop/RspecExampleWording:
56
58
  Enabled: true
57
59
  ```
58
60
 
59
61
  ## Cop一覧
60
62
 
61
- |Cop|Rails|FactoryBot|
62
- |---|:-:|:-:|
63
- |[`Momocop/FactoryBotClassExistence`](lib/rubocop/cop/momocop/factory_bot_class_existence.rb)|:white_check_mark:|:white_check_mark:|
64
- |[`Momocop/FactoryBotConsistentFileName`](lib/rubocop/cop/momocop/factory_bot_consistent_file_name.rb)|:white_check_mark:|:white_check_mark:|
65
- |[`Momocop/FactoryBotInlineAssociation`](lib/rubocop/cop/momocop/factory_bot_inline_association.rb)|:white_check_mark:|:white_check_mark:|
66
- |[`Momocop/FactoryBotMissingAssociations`](lib/rubocop/cop/momocop/factory_bot_missing_associations.rb)|:white_check_mark:|:white_check_mark:|
67
- |[`Momocop/FactoryBotMissingClassOption`](lib/rubocop/cop/momocop/factory_bot_missing_class_option.rb)|:white_check_mark:|:white_check_mark:|
68
- |[`Momocop/FactoryBotMissingProperties`](lib/rubocop/cop/momocop/factory_bot_missing_properties.rb)|:white_check_mark:|:white_check_mark:|
69
- |[`Momocop/FactoryBotPropertyOrder`](lib/rubocop/cop/momocop/factory_bot_property_order.rb)|:white_check_mark:|:white_check_mark:|
70
- |[`Momocop/FactoryBotSingleDefinePerFile`](lib/rubocop/cop/momocop/factory_bot_single_define_per_file.rb)|:white_check_mark:|:white_check_mark:|
71
- |[`Momocop/FactoryBotSingleFactoryPerDefine`](lib/rubocop/cop/momocop/factory_bot_single_factory_per_define.rb)|:white_check_mark:|:white_check_mark:|
72
- |[`Momocop/FactoryBotSingularFactoryName`](lib/rubocop/cop/momocop/factory_bot_singular_factory_name.rb)|:white_check_mark:|:white_check_mark:|
73
- |[`Momocop/Layout/LeadingCommentSpace`](lib/rubocop/cop/momocop/layout/leading_comment_space.rb)|||
74
- |[`Momocop/RspecContextTextPattern`](lib/rubocop/cop/momocop/rspec_context_text_pattern.rb)|||
75
- |[`Momocop/RspecDescribeTextPattern`](lib/rubocop/cop/momocop/rspec_describe_text_pattern.rb)|||
76
- |[`Momocop/RspecItTextPattern`](lib/rubocop/cop/momocop/rspec_it_text_pattern.rb)|||
63
+ |Cop|Rails|FactoryBot|RSpec|
64
+ |---|:-:|:-:|:-:|
65
+ |[`Momocop/FactoryBotClassExistence`](lib/rubocop/cop/momocop/factory_bot_class_existence.rb)|:white_check_mark:|:white_check_mark:||
66
+ |[`Momocop/FactoryBotConsistentFileName`](lib/rubocop/cop/momocop/factory_bot_consistent_file_name.rb)|:white_check_mark:|:white_check_mark:||
67
+ |[`Momocop/FactoryBotInlineAssociation`](lib/rubocop/cop/momocop/factory_bot_inline_association.rb)|:white_check_mark:|:white_check_mark:||
68
+ |[`Momocop/FactoryBotMissingAssociations`](lib/rubocop/cop/momocop/factory_bot_missing_associations.rb)|:white_check_mark:|:white_check_mark:||
69
+ |[`Momocop/FactoryBotMissingClassOption`](lib/rubocop/cop/momocop/factory_bot_missing_class_option.rb)|:white_check_mark:|:white_check_mark:||
70
+ |[`Momocop/FactoryBotMissingProperties`](lib/rubocop/cop/momocop/factory_bot_missing_properties.rb)|:white_check_mark:|:white_check_mark:||
71
+ |[`Momocop/FactoryBotPropertyOrder`](lib/rubocop/cop/momocop/factory_bot_property_order.rb)|:white_check_mark:|:white_check_mark:||
72
+ |[`Momocop/FactoryBotSingleDefinePerFile`](lib/rubocop/cop/momocop/factory_bot_single_define_per_file.rb)|:white_check_mark:|:white_check_mark:||
73
+ |[`Momocop/FactoryBotSingleFactoryPerDefine`](lib/rubocop/cop/momocop/factory_bot_single_factory_per_define.rb)|:white_check_mark:|:white_check_mark:||
74
+ |[`Momocop/FactoryBotSingularFactoryName`](lib/rubocop/cop/momocop/factory_bot_singular_factory_name.rb)|:white_check_mark:|:white_check_mark:||
75
+ |[`Momocop/Layout/LeadingCommentSpace`](lib/rubocop/cop/momocop/layout/leading_comment_space.rb)||||
76
+ |[`Momocop/RbiMissingExtendTSig`](lib/rubocop/cop/momocop/rbi_missing_extend_t_sig.rb)||||
77
+ |[`Momocop/RspecContextWording`](lib/rubocop/cop/momocop/rspec_context_wording.rb)|||:white_check_mark:|
78
+ |[`Momocop/RspecDescribeWording`](lib/rubocop/cop/momocop/rspec_describe_wording.rb)|||:white_check_mark:|
79
+ |[`Momocop/RspecExampleWording`](lib/rubocop/cop/momocop/rspec_example_wording.rb)|||:white_check_mark:|
77
80
 
78
81
  ## 貢献
79
82
 
data/README.ja.md.erb CHANGED
@@ -41,8 +41,8 @@ require:
41
41
 
42
42
  ## Cop一覧
43
43
 
44
- |Cop|Rails|FactoryBot|
45
- |---|:-:|:-:|
44
+ |Cop|Rails|FactoryBot|RSpec|
45
+ |---|:-:|:-:|:-:|
46
46
  <%
47
47
  files = Dir.glob('lib/rubocop/cop/momocop/**/*.rb').sort_by { |f| File.basename(f)}
48
48
  files.each do |cop_file_path|
@@ -51,10 +51,12 @@ require:
51
51
  cop_class_name = "#{namespace}/#{base_name.camelize}"
52
52
  is_factory_cop = cop_file_path.include?('factory_bot_')
53
53
  is_rails_cop = cop_file_path.match?(/(factory_bot_|rails_)/)
54
+ is_rspec_cop = cop_file_path.match?(/(rspec_)/)
54
55
  rails_mark = is_rails_cop ? ':white_check_mark:' : ''
55
56
  factory_bot_mark = is_factory_cop ? ':white_check_mark:' : ''
57
+ rspec_mark = is_rspec_cop ? ':white_check_mark:' : ''
56
58
 
57
- table_row = "|[`#{cop_class_name}`](#{cop_file_path})|#{rails_mark}|#{factory_bot_mark}|"
59
+ table_row = "|[`#{cop_class_name}`](#{cop_file_path})|#{rails_mark}|#{factory_bot_mark}|#{rspec_mark}|"
58
60
  -%>
59
61
  <%= table_row %>
60
62
  <% end -%>
data/README.md CHANGED
@@ -48,32 +48,35 @@ Momocop/FactoryBotSingularFactoryName:
48
48
  Enabled: true
49
49
  Momocop/Layout/LeadingCommentSpace:
50
50
  Enabled: true
51
- Momocop/RspecContextTextPattern:
51
+ Momocop/RbiMissingExtendTSig:
52
52
  Enabled: true
53
- Momocop/RspecDescribeTextPattern:
53
+ Momocop/RspecContextWording:
54
54
  Enabled: true
55
- Momocop/RspecItTextPattern:
55
+ Momocop/RspecDescribeWording:
56
+ Enabled: true
57
+ Momocop/RspecExampleWording:
56
58
  Enabled: true
57
59
  ```
58
60
 
59
61
  ## Cops
60
62
 
61
- |Cop|Rails|FactoryBot|
62
- |---|:-:|:-:|
63
- |[`Momocop/FactoryBotClassExistence`](lib/rubocop/cop/momocop/factory_bot_class_existence.rb)|:white_check_mark:|:white_check_mark:|
64
- |[`Momocop/FactoryBotConsistentFileName`](lib/rubocop/cop/momocop/factory_bot_consistent_file_name.rb)|:white_check_mark:|:white_check_mark:|
65
- |[`Momocop/FactoryBotInlineAssociation`](lib/rubocop/cop/momocop/factory_bot_inline_association.rb)|:white_check_mark:|:white_check_mark:|
66
- |[`Momocop/FactoryBotMissingAssociations`](lib/rubocop/cop/momocop/factory_bot_missing_associations.rb)|:white_check_mark:|:white_check_mark:|
67
- |[`Momocop/FactoryBotMissingClassOption`](lib/rubocop/cop/momocop/factory_bot_missing_class_option.rb)|:white_check_mark:|:white_check_mark:|
68
- |[`Momocop/FactoryBotMissingProperties`](lib/rubocop/cop/momocop/factory_bot_missing_properties.rb)|:white_check_mark:|:white_check_mark:|
69
- |[`Momocop/FactoryBotPropertyOrder`](lib/rubocop/cop/momocop/factory_bot_property_order.rb)|:white_check_mark:|:white_check_mark:|
70
- |[`Momocop/FactoryBotSingleDefinePerFile`](lib/rubocop/cop/momocop/factory_bot_single_define_per_file.rb)|:white_check_mark:|:white_check_mark:|
71
- |[`Momocop/FactoryBotSingleFactoryPerDefine`](lib/rubocop/cop/momocop/factory_bot_single_factory_per_define.rb)|:white_check_mark:|:white_check_mark:|
72
- |[`Momocop/FactoryBotSingularFactoryName`](lib/rubocop/cop/momocop/factory_bot_singular_factory_name.rb)|:white_check_mark:|:white_check_mark:|
73
- |[`Momocop/Layout/LeadingCommentSpace`](lib/rubocop/cop/momocop/layout/leading_comment_space.rb)|||
74
- |[`Momocop/RspecContextTextPattern`](lib/rubocop/cop/momocop/rspec_context_text_pattern.rb)|||
75
- |[`Momocop/RspecDescribeTextPattern`](lib/rubocop/cop/momocop/rspec_describe_text_pattern.rb)|||
76
- |[`Momocop/RspecItTextPattern`](lib/rubocop/cop/momocop/rspec_it_text_pattern.rb)|||
63
+ |Cop|Rails|FactoryBot|RSpec|
64
+ |---|:-:|:-:|:-:|
65
+ |[`Momocop/FactoryBotClassExistence`](lib/rubocop/cop/momocop/factory_bot_class_existence.rb)|:white_check_mark:|:white_check_mark:||
66
+ |[`Momocop/FactoryBotConsistentFileName`](lib/rubocop/cop/momocop/factory_bot_consistent_file_name.rb)|:white_check_mark:|:white_check_mark:||
67
+ |[`Momocop/FactoryBotInlineAssociation`](lib/rubocop/cop/momocop/factory_bot_inline_association.rb)|:white_check_mark:|:white_check_mark:||
68
+ |[`Momocop/FactoryBotMissingAssociations`](lib/rubocop/cop/momocop/factory_bot_missing_associations.rb)|:white_check_mark:|:white_check_mark:||
69
+ |[`Momocop/FactoryBotMissingClassOption`](lib/rubocop/cop/momocop/factory_bot_missing_class_option.rb)|:white_check_mark:|:white_check_mark:||
70
+ |[`Momocop/FactoryBotMissingProperties`](lib/rubocop/cop/momocop/factory_bot_missing_properties.rb)|:white_check_mark:|:white_check_mark:||
71
+ |[`Momocop/FactoryBotPropertyOrder`](lib/rubocop/cop/momocop/factory_bot_property_order.rb)|:white_check_mark:|:white_check_mark:||
72
+ |[`Momocop/FactoryBotSingleDefinePerFile`](lib/rubocop/cop/momocop/factory_bot_single_define_per_file.rb)|:white_check_mark:|:white_check_mark:||
73
+ |[`Momocop/FactoryBotSingleFactoryPerDefine`](lib/rubocop/cop/momocop/factory_bot_single_factory_per_define.rb)|:white_check_mark:|:white_check_mark:||
74
+ |[`Momocop/FactoryBotSingularFactoryName`](lib/rubocop/cop/momocop/factory_bot_singular_factory_name.rb)|:white_check_mark:|:white_check_mark:||
75
+ |[`Momocop/Layout/LeadingCommentSpace`](lib/rubocop/cop/momocop/layout/leading_comment_space.rb)||||
76
+ |[`Momocop/RbiMissingExtendTSig`](lib/rubocop/cop/momocop/rbi_missing_extend_t_sig.rb)||||
77
+ |[`Momocop/RspecContextWording`](lib/rubocop/cop/momocop/rspec_context_wording.rb)|||:white_check_mark:|
78
+ |[`Momocop/RspecDescribeWording`](lib/rubocop/cop/momocop/rspec_describe_wording.rb)|||:white_check_mark:|
79
+ |[`Momocop/RspecExampleWording`](lib/rubocop/cop/momocop/rspec_example_wording.rb)|||:white_check_mark:|
77
80
 
78
81
  ## Contributing
79
82
 
data/README.md.erb CHANGED
@@ -41,8 +41,8 @@ require:
41
41
 
42
42
  ## Cops
43
43
 
44
- |Cop|Rails|FactoryBot|
45
- |---|:-:|:-:|
44
+ |Cop|Rails|FactoryBot|RSpec|
45
+ |---|:-:|:-:|:-:|
46
46
  <%
47
47
  files = Dir.glob('lib/rubocop/cop/momocop/**/*.rb').sort_by { |f| File.basename(f)}
48
48
  files.each do |cop_file_path|
@@ -51,10 +51,12 @@ require:
51
51
  cop_class_name = "#{namespace}/#{base_name.camelize}"
52
52
  is_factory_cop = cop_file_path.include?('factory_bot_')
53
53
  is_rails_cop = cop_file_path.match?(/(factory_bot_|rails_)/)
54
+ is_rspec_cop = cop_file_path.match?(/(rspec_)/)
54
55
  rails_mark = is_rails_cop ? ':white_check_mark:' : ''
55
56
  factory_bot_mark = is_factory_cop ? ':white_check_mark:' : ''
57
+ rspec_mark = is_rspec_cop ? ':white_check_mark:' : ''
56
58
 
57
- table_row = "|[`#{cop_class_name}`](#{cop_file_path})|#{rails_mark}|#{factory_bot_mark}|"
59
+ table_row = "|[`#{cop_class_name}`](#{cop_file_path})|#{rails_mark}|#{factory_bot_mark}|#{rspec_mark}|"
58
60
  -%>
59
61
  <%= table_row %>
60
62
  <% end -%>
data/config/default.yml CHANGED
@@ -1,14 +1,14 @@
1
- Momocop/RSpecDescribeTextPattern:
1
+ Momocop/RSpecDescribeWording:
2
2
  Description: 'Ensures that RSpec describe text matches the configured pattern'
3
3
  Enabled: true
4
4
  RequiredPattern: '^(?!When ).+'
5
5
 
6
- Momocop/RSpecContextTextPattern:
6
+ Momocop/RSpecContextWording:
7
7
  Description: 'Ensures that RSpec context text starts with When or If'
8
8
  Enabled: true
9
9
  RequiredPattern: '^(When|If) .+'
10
10
 
11
- Momocop/RSpecItTextPattern:
11
+ Momocop/RSpecItWording:
12
12
  Description: 'Ensures that RSpec it block text matches the configured pattern'
13
13
  Enabled: true
14
14
  RequiredPattern: '^(should|will) .+$'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Momocop
4
- VERSION = '0.3.0'
4
+ VERSION = '0.3.1'
5
5
  end
@@ -65,12 +65,18 @@ module RuboCop
65
65
 
66
66
  # Returns all top-level factories within a FactoryBot.define block.
67
67
  private def top_level_factories(node)
68
+ block = node.block_node
69
+ return [] unless block
70
+
71
+ body = block.body
72
+ return [] unless body
73
+
68
74
  factory_nodes =
69
- node
70
- .block_node
71
- .body.each_descendant(:send)
75
+ body
76
+ .each_descendant(:send)
72
77
  .select { |n| n.method_name == :factory }
73
- factory_nodes.select { |factory_node|
78
+
79
+ factory_nodes.select do |factory_node|
74
80
  base_node = factory_node.block_node || factory_node
75
81
  context =
76
82
  base_node
@@ -78,7 +84,7 @@ module RuboCop
78
84
  .map { _1.send_node&.method_name&.to_sym }
79
85
  .find { %i[define factory].include? _1 }
80
86
  context == :define
81
- }
87
+ end
82
88
  end
83
89
  end
84
90
  end
@@ -0,0 +1,139 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module Momocop
6
+ # Ensures that Sorbet signature declarations are accompanied by `extend T::Sig`.
7
+ #
8
+ # sig calls must be block-form invocations that appear immediately above a
9
+ # method definition to be considered.
10
+ #
11
+ # @example
12
+ # # bad
13
+ # class User
14
+ # sig { void }
15
+ # def call; end
16
+ # end
17
+ #
18
+ # # good
19
+ # class User
20
+ # extend T::Sig
21
+ #
22
+ # sig { void }
23
+ # def call; end
24
+ # end
25
+ class RbiMissingExtendTSig < RuboCop::Cop::Base
26
+ extend AutoCorrector
27
+ include RangeHelp
28
+
29
+ MSG = 'Add `extend T::Sig` when using `sig` to type methods.'
30
+
31
+ def_node_matcher :extend_t_sig_call?, <<~PATTERN
32
+ (send nil? :extend <(const (const nil? :T) :Sig) ...>)
33
+ PATTERN
34
+
35
+ def_node_matcher :sig_block_call?, <<~PATTERN
36
+ (block (send nil? :sig ...) ...)
37
+ PATTERN
38
+
39
+ def on_class(node)
40
+ check_node(node, body_nodes(node), node.loc.keyword)
41
+ end
42
+
43
+ def on_module(node)
44
+ check_node(node, body_nodes(node), node.loc.keyword)
45
+ end
46
+
47
+ def on_new_investigation
48
+ return unless processed_source.ast
49
+
50
+ top_level_nodes = top_level_body_nodes(processed_source.ast)
51
+ check_node(nil, top_level_nodes, top_level_offense_location(top_level_nodes))
52
+ end
53
+
54
+ private def check_node(node, nodes, offense_location)
55
+ sig_node = sig_before_method_definition(nodes)
56
+ return unless sig_node
57
+ return if extend_t_sig?(nodes)
58
+
59
+ add_offense(offense_location || sig_location(sig_node)) do |corrector|
60
+ autocorrect(corrector, nodes)
61
+ end
62
+ end
63
+
64
+ private def sig_before_method_definition(nodes)
65
+ nodes.each_cons(2) do |previous, current|
66
+ next unless sig_block_call?(previous)
67
+ next unless method_definition?(current)
68
+ next unless consecutive_lines?(previous, current)
69
+
70
+ return previous
71
+ end
72
+
73
+ nil
74
+ end
75
+
76
+ private def extend_t_sig?(nodes)
77
+ nodes.any? do |child|
78
+ extend_t_sig_call?(child)
79
+ end
80
+ end
81
+
82
+ private def body_nodes(node)
83
+ body = node.body
84
+ return [] unless body
85
+
86
+ if body.begin_type?
87
+ body.children
88
+ else
89
+ [body]
90
+ end
91
+ end
92
+
93
+ private def top_level_body_nodes(ast)
94
+ return [] unless ast
95
+
96
+ if ast.begin_type?
97
+ ast.children
98
+ else
99
+ [ast]
100
+ end
101
+ end
102
+
103
+ private def top_level_offense_location(_nodes)
104
+ nil
105
+ end
106
+
107
+ private def method_definition?(node)
108
+ node.def_type? || node.defs_type?
109
+ end
110
+
111
+ private def consecutive_lines?(first_node, second_node)
112
+ first_node.loc.last_line + 1 == second_node.loc.line
113
+ end
114
+
115
+ private def sig_location(sig_node)
116
+ sig_node.send_node&.loc&.selector || sig_node.loc.expression
117
+ end
118
+
119
+ private def autocorrect(corrector, nodes)
120
+ first_child = nodes.first
121
+ return unless first_child
122
+
123
+ indentation = indentation_for(first_child)
124
+ insert_before_line_start(corrector, first_child, "#{indentation}extend T::Sig\n")
125
+ end
126
+
127
+ private def insert_before_line_start(corrector, node, text)
128
+ line_start = node.source_range.begin_pos - node.loc.column
129
+ insertion_range = range_between(line_start, line_start)
130
+ corrector.insert_before(insertion_range, text)
131
+ end
132
+
133
+ private def indentation_for(first_child)
134
+ ' ' * first_child.loc.column
135
+ end
136
+ end
137
+ end
138
+ end
139
+ end
@@ -3,7 +3,7 @@
3
3
  module RuboCop
4
4
  module Cop
5
5
  module Momocop
6
- class RSpecContextTextPattern < Base
6
+ class RSpecContextWording < Base
7
7
  extend AutoCorrector
8
8
  include RangeHelp
9
9
 
@@ -3,7 +3,7 @@
3
3
  module RuboCop
4
4
  module Cop
5
5
  module Momocop
6
- class RSpecDescribeTextPattern < Base
6
+ class RSpecDescribeWording < Base
7
7
  extend AutoCorrector
8
8
  include RangeHelp
9
9
 
@@ -3,7 +3,7 @@
3
3
  module RuboCop
4
4
  module Cop
5
5
  module Momocop
6
- class RSpecItTextPattern < Base
6
+ class RSpecExampleWording < Base
7
7
  extend AutoCorrector
8
8
  include RangeHelp
9
9
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: momocop
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - supermomonga
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-02-25 00:00:00.000000000 Z
11
+ date: 2025-11-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -104,9 +104,10 @@ files:
104
104
  - lib/rubocop/cop/momocop/factory_bot_single_factory_per_define.rb
105
105
  - lib/rubocop/cop/momocop/factory_bot_singular_factory_name.rb
106
106
  - lib/rubocop/cop/momocop/layout/leading_comment_space.rb
107
- - lib/rubocop/cop/momocop/rspec_context_text_pattern.rb
108
- - lib/rubocop/cop/momocop/rspec_describe_text_pattern.rb
109
- - lib/rubocop/cop/momocop/rspec_it_text_pattern.rb
107
+ - lib/rubocop/cop/momocop/rbi_missing_extend_t_sig.rb
108
+ - lib/rubocop/cop/momocop/rspec_context_wording.rb
109
+ - lib/rubocop/cop/momocop/rspec_describe_wording.rb
110
+ - lib/rubocop/cop/momocop/rspec_example_wording.rb
110
111
  - sig/momocop.rbs
111
112
  homepage: https://github.com/supermomonga/momocop
112
113
  licenses:
@@ -115,7 +116,7 @@ metadata:
115
116
  homepage_uri: https://github.com/supermomonga/momocop
116
117
  source_code_uri: https://github.com/supermomonga/momocop
117
118
  changelog_uri: https://github.com/supermomonga/momocop/releases
118
- post_install_message:
119
+ post_install_message:
119
120
  rdoc_options: []
120
121
  require_paths:
121
122
  - lib
@@ -130,8 +131,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
130
131
  - !ruby/object:Gem::Version
131
132
  version: '0'
132
133
  requirements: []
133
- rubygems_version: 3.3.27
134
- signing_key:
134
+ rubygems_version: 3.4.19
135
+ signing_key:
135
136
  specification_version: 4
136
137
  summary: Convention focused opinionated custom cops for RuboCop.
137
138
  test_files: []