cucumber-gherkin 30.0.3 → 30.1.0

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.
@@ -123,14 +123,7 @@ module Gherkin
123
123
  end
124
124
 
125
125
  def match_StepLine(token)
126
- keywords =
127
- @dialect.given_keywords +
128
- @dialect.when_keywords +
129
- @dialect.then_keywords +
130
- @dialect.and_keywords +
131
- @dialect.but_keywords
132
-
133
- keyword = keywords.detect { |k| token.line.start_with?(k) }
126
+ keyword = @sorted_step_keywords.detect { |k| token.line.start_with?(k) }
134
127
 
135
128
  return false unless keyword
136
129
 
@@ -165,6 +158,15 @@ module Gherkin
165
158
  add_keyword_type_mappings(@dialect.then_keywords, Cucumber::Messages::StepKeywordType::OUTCOME)
166
159
  add_keyword_type_mappings(@dialect.and_keywords + @dialect.but_keywords,
167
160
  Cucumber::Messages::StepKeywordType::CONJUNCTION)
161
+
162
+ keywords =
163
+ @dialect.given_keywords +
164
+ @dialect.when_keywords +
165
+ @dialect.then_keywords +
166
+ @dialect.and_keywords +
167
+ @dialect.but_keywords
168
+
169
+ @sorted_step_keywords = keywords.sort_by(&:length).reverse
168
170
  end
169
171
 
170
172
  def match_title_line(token, token_type, keywords)
metadata CHANGED
@@ -1,16 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber-gherkin
3
3
  version: !ruby/object:Gem::Version
4
- version: 30.0.3
4
+ version: 30.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gáspár Nagy
8
8
  - Aslak Hellesøy
9
9
  - Steve Tooke
10
- autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2024-11-14 00:00:00.000000000 Z
12
+ date: 1980-01-02 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: cucumber-messages
@@ -21,7 +20,7 @@ dependencies:
21
20
  version: '25'
22
21
  - - "<"
23
22
  - !ruby/object:Gem::Version
24
- version: '28'
23
+ version: '30'
25
24
  type: :runtime
26
25
  prerelease: false
27
26
  version_requirements: !ruby/object:Gem::Requirement
@@ -31,7 +30,7 @@ dependencies:
31
30
  version: '25'
32
31
  - - "<"
33
32
  - !ruby/object:Gem::Version
34
- version: '28'
33
+ version: '30'
35
34
  - !ruby/object:Gem::Dependency
36
35
  name: rake
37
36
  requirement: !ruby/object:Gem::Requirement
@@ -66,19 +65,75 @@ dependencies:
66
65
  requirements:
67
66
  - - "~>"
68
67
  - !ruby/object:Gem::Version
69
- version: 1.26.0
68
+ version: 1.71.2
70
69
  type: :development
71
70
  prerelease: false
72
71
  version_requirements: !ruby/object:Gem::Requirement
73
72
  requirements:
74
73
  - - "~>"
75
74
  - !ruby/object:Gem::Version
76
- version: 1.26.0
75
+ version: 1.71.2
76
+ - !ruby/object:Gem::Dependency
77
+ name: rubocop-rspec
78
+ requirement: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 3.4.0
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 3.4.0
90
+ - !ruby/object:Gem::Dependency
91
+ name: rubocop-packaging
92
+ requirement: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 0.5.2
97
+ type: :development
98
+ prerelease: false
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 0.5.2
104
+ - !ruby/object:Gem::Dependency
105
+ name: rubocop-performance
106
+ requirement: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 1.23.1
111
+ type: :development
112
+ prerelease: false
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 1.23.1
118
+ - !ruby/object:Gem::Dependency
119
+ name: rubocop-rake
120
+ requirement: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 0.6.0
125
+ type: :development
126
+ prerelease: false
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 0.6.0
77
132
  description: Gherkin parser
78
133
  email: cukes@googlegroups.com
79
134
  executables:
80
- - gherkin-ruby
81
135
  - gherkin
136
+ - gherkin-ruby
82
137
  extensions: []
83
138
  extra_rdoc_files: []
84
139
  files:
@@ -110,7 +165,6 @@ metadata:
110
165
  documentation_uri: https://cucumber.io/docs/gherkin/
111
166
  mailing_list_uri: https://groups.google.com/forum/#!forum/cukes
112
167
  source_code_uri: https://github.com/cucumber/gherkin/blob/main/ruby
113
- post_install_message:
114
168
  rdoc_options:
115
169
  - "--charset=UTF-8"
116
170
  require_paths:
@@ -119,15 +173,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
119
173
  requirements:
120
174
  - - ">="
121
175
  - !ruby/object:Gem::Version
122
- version: '3.0'
176
+ version: '3.2'
123
177
  required_rubygems_version: !ruby/object:Gem::Requirement
124
178
  requirements:
125
179
  - - ">="
126
180
  - !ruby/object:Gem::Version
127
181
  version: 3.2.8
128
182
  requirements: []
129
- rubygems_version: 3.5.22
130
- signing_key:
183
+ rubygems_version: 3.6.9
131
184
  specification_version: 4
132
- summary: cucumber-gherkin-30.0.3
185
+ summary: cucumber-gherkin-30.1.0
133
186
  test_files: []