cucumber-core 10.1.1 → 11.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +203 -284
- data/README.md +0 -1
- data/lib/cucumber/core/test/case.rb +11 -1
- data/lib/cucumber/core/test/data_table.rb +4 -0
- data/lib/cucumber/core/test/doc_string.rb +4 -1
- data/lib/cucumber/core/test/empty_multiline_argument.rb +2 -2
- data/lib/cucumber/core/test/filters/locations_filter.rb +1 -1
- data/lib/cucumber/core/test/location.rb +15 -5
- data/lib/cucumber/core/test/step.rb +4 -0
- metadata +29 -94
- data/lib/cucumber/core/version.rb +0 -10
- data/spec/coverage.rb +0 -12
- data/spec/cucumber/core/compiler_spec.rb +0 -241
- data/spec/cucumber/core/event_bus_spec.rb +0 -163
- data/spec/cucumber/core/event_spec.rb +0 -40
- data/spec/cucumber/core/filter_spec.rb +0 -101
- data/spec/cucumber/core/gherkin/parser_spec.rb +0 -162
- data/spec/cucumber/core/gherkin/writer_spec.rb +0 -332
- data/spec/cucumber/core/report/summary_spec.rb +0 -178
- data/spec/cucumber/core/test/action_spec.rb +0 -153
- data/spec/cucumber/core/test/case_spec.rb +0 -125
- data/spec/cucumber/core/test/data_table_spec.rb +0 -79
- data/spec/cucumber/core/test/doc_string_spec.rb +0 -111
- data/spec/cucumber/core/test/duration_matcher.rb +0 -20
- data/spec/cucumber/core/test/empty_multiline_argument_spec.rb +0 -28
- data/spec/cucumber/core/test/filters/locations_filter_spec.rb +0 -271
- data/spec/cucumber/core/test/location_spec.rb +0 -129
- data/spec/cucumber/core/test/result_spec.rb +0 -504
- data/spec/cucumber/core/test/runner_spec.rb +0 -320
- data/spec/cucumber/core/test/step_spec.rb +0 -88
- data/spec/cucumber/core/test/timer_spec.rb +0 -25
- data/spec/cucumber/core_spec.rb +0 -262
- data/spec/report_api_spy.rb +0 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77d6adff3297c714ad2fb6540ab3543055573e60384202a70397cd2107199f70
|
4
|
+
data.tar.gz: 8bc40c9d9ce7a710648f18de73b00f4c97d82c66e5736cecf82264a4c2377a46
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0677a26978ed5a6a8688fe06e63cf8f3a5ca5aa71067332331f4682afd6349fd8acdf7b8525b815d276e7113029e10d11f08aa3725b49bd0081828f99a4b0a8f
|
7
|
+
data.tar.gz: 0516ef912bd9a1562c8d399aa1b68574a88cbae054b9a83c8bc357e03735f431e4e1bf9e37cc7acf1c31361e356ebb9611c0e98f07b59f5631e719d79ddc6af7
|
data/CHANGELOG.md
CHANGED
@@ -1,359 +1,278 @@
|
|
1
|
-
|
1
|
+
# Changelog
|
2
2
|
|
3
3
|
## [Unreleased]
|
4
4
|
|
5
|
-
|
6
|
-
|
5
|
+
## [11.1.0] - 2022-12-22
|
7
6
|
### Changed
|
8
|
-
|
9
|
-
### Deprecate
|
10
|
-
|
11
|
-
### Removed
|
7
|
+
- Update gherkin and messsages dependencies
|
12
8
|
|
13
9
|
### Fixed
|
10
|
+
- Restore support for matching a scenario by tag and step line numbers. ([#237](https://github.com/cucumber/cucumber-ruby-core/pull/237), [#238](https://github.com/cucumber/cucumber-ruby-core/pull/238), [#239](https://github.com/cucumber/cucumber-ruby-core/pull/239))
|
14
11
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
### Dependencies
|
20
|
-
|
21
|
-
* Patched `cucumber-tag-expressions`
|
22
|
-
|
23
|
-
## [10.1.0](https://github.com/cucumber/cucumber-ruby-core/compare/v10.0.1...v10.1.0)
|
24
|
-
|
25
|
-
### Dependencies
|
26
|
-
|
27
|
-
* Patched `cucumber-gherkin`, `cucumber-messages` and `cucumber-tag-expressions`
|
28
|
-
|
29
|
-
## [10.0.1](https://github.com/cucumber/cucumber-ruby-core/compare/v10.0.0...v10.0.1)
|
30
|
-
|
31
|
-
### Dependencies
|
32
|
-
|
33
|
-
* Patched `cucumber-gherkin` and `cucumber-messages`
|
34
|
-
|
35
|
-
## [10.0.0](https://github.com/cucumber/cucumber-ruby-core/compare/v9.0.1...v10.0.0)
|
36
|
-
|
37
|
-
### Dependencies
|
12
|
+
## [11.0.0]
|
13
|
+
### Changed
|
14
|
+
- Updated `cucumber-gherkin` and `cucumber-messages`
|
38
15
|
|
39
|
-
|
16
|
+
## [10.1.1]
|
17
|
+
### Changed
|
18
|
+
- Patched `cucumber-tag-expressions`
|
40
19
|
|
41
|
-
|
20
|
+
## [10.1.0]
|
21
|
+
### Changed
|
22
|
+
- Patched `cucumber-gherkin`, `cucumber-messages` and `cucumber-tag-expressions`
|
42
23
|
|
43
|
-
|
44
|
-
|
24
|
+
## [10.0.1]
|
25
|
+
### Changed
|
26
|
+
- Patched `cucumber-gherkin` and `cucumber-messages`
|
45
27
|
|
46
|
-
## [
|
28
|
+
## [10.0.0]
|
29
|
+
### Changed
|
30
|
+
- Upgraded to gherkin v20 and messages v17.
|
47
31
|
|
32
|
+
## [9.0.1]
|
48
33
|
### Fixed
|
34
|
+
- Skipped scenarios do not affect anymore status of flaky scenarios on retry
|
35
|
+
([#218](https://github.com/cucumber/cucumber-ruby-core/pull/218) @eduardrudko)
|
49
36
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
### Dependencies
|
56
|
-
|
57
|
-
* Upgraded to gherkin v18 and messages v15
|
58
|
-
* Updated other dependencies (look at the diff for details)
|
59
|
-
|
60
|
-
## [8.0.1](https://github.com/cucumber/cucumber-ruby-core/compare/v8.0.0...v8.0.1)
|
37
|
+
## [9.0.0]
|
38
|
+
### Changed
|
39
|
+
- Upgraded to gherkin v18 and messages v15
|
40
|
+
- Updated other dependencies (look at the diff for details)
|
61
41
|
|
42
|
+
## [8.0.1]
|
62
43
|
### Fixed
|
44
|
+
- Make releases from docker using secrets from keybase
|
63
45
|
|
64
|
-
|
65
|
-
|
66
|
-
## [8.0.0](https://github.com/cucumber/cucumber-ruby-core/compare/v7.1.0...v8.0.0)
|
67
|
-
|
68
|
-
This release failed
|
69
|
-
|
70
|
-
### Dependencies
|
71
|
-
|
72
|
-
* Updated dependencies (look at the diff for details)
|
73
|
-
|
74
|
-
## [7.1.0](https://github.com/cucumber/cucumber-ruby-core/compare/v7.0.0...v7.1.0)
|
75
|
-
|
46
|
+
## [8.0.0]
|
76
47
|
### Changed
|
48
|
+
- Updated dependencies (look at the diff for details)
|
77
49
|
|
78
|
-
|
79
|
-
* `cucumber-gherkin` ~> 14.0.1
|
80
|
-
* `cucumber-messages` ~> 12.2.0
|
81
|
-
|
82
|
-
## [7.0.0](https://github.com/cucumber/cucumber-ruby-core/compare/v6.0.0...v7.0.0)
|
83
|
-
|
50
|
+
## [7.1.0]
|
84
51
|
### Changed
|
52
|
+
- Updated gems:
|
53
|
+
- `cucumber-gherkin` ~> 14.0.1
|
54
|
+
- `cucumber-messages` ~> 12.2.0
|
85
55
|
|
86
|
-
|
56
|
+
## [7.0.0]
|
57
|
+
### Changed
|
58
|
+
- Updated monorepo libraries:
|
87
59
|
- cucumber-gherkin ~> 13
|
88
60
|
- cucumber-messages ~> 12
|
89
61
|
|
90
|
-
## [6.0.0]
|
91
|
-
|
92
|
-
### Changed
|
93
|
-
|
94
|
-
* Update to Gherkin 10
|
95
|
-
|
62
|
+
## [6.0.0]
|
96
63
|
### Added
|
64
|
+
- Add `envelope` event, which are used when emitting `Cucumber::Messages`
|
65
|
+
- Add `TestCaseCreated` and `TestStepCreated` events, emitted when compiling a `Pickle`
|
66
|
+
- Add `Id` field to `TestCase` and `TestStep`
|
67
|
+
- Added rubocop (with todo file), and removed backports gems
|
68
|
+
([#186](https://github.com/cucumber/cucumber-ruby-core/pull/186),
|
69
|
+
[#182](https://github.com/cucumber/cucumber-ruby-core/issues/182)
|
70
|
+
[tas50](https://github.com/tas50),
|
71
|
+
[luke-hill](https://github.com/luke-hill))
|
97
72
|
|
98
|
-
|
99
|
-
|
100
|
-
* Add `Id` field to `TestCase` and `TestStep`
|
101
|
-
* Added rubocop (with todo file), and removed backports gems
|
102
|
-
([#186](https://github.com/cucumber/cucumber-ruby-core/pull/186),
|
103
|
-
[#182](https://github.com/cucumber/cucumber-ruby-core/issues/182)
|
104
|
-
[tas50](https://github.com/tas50),
|
105
|
-
[luke-hill](https://github.com/luke-hill))
|
73
|
+
### Changed
|
74
|
+
- Update to Gherkin 10
|
106
75
|
|
107
76
|
### Removed
|
77
|
+
- Remove location for MultiLine arguments
|
108
78
|
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
## [5.0.2](https://github.com/cucumber/cucumber-ruby-core/compare/v5.0.1...v5.0.2)
|
113
|
-
|
79
|
+
## [5.0.2]
|
114
80
|
### Changed
|
81
|
+
- Update to use Gherkin v8
|
115
82
|
|
116
|
-
|
117
|
-
|
118
|
-
## [5.0.1](https://github.com/cucumber/cucumber-ruby-core/compare/v5.0.0...v5.0.1)
|
119
|
-
|
83
|
+
## [5.0.1]
|
120
84
|
### Removed
|
85
|
+
- Remove support for ruby 2.2 and below. 2.3 or higher is required now.
|
121
86
|
|
122
|
-
|
123
|
-
|
124
|
-
## [5.0.0](https://github.com/cucumber/cucumber-ruby-core/compare/v4.0.0...v5.0.0)
|
125
|
-
|
87
|
+
## [5.0.0]
|
126
88
|
### Changed
|
89
|
+
- Update to use Gherkin v7
|
127
90
|
|
128
|
-
|
129
|
-
|
130
|
-
## [4.0.0](https://github.com/cucumber/cucumber-ruby-core/compare/v3.2.0...v4.0.0)
|
131
|
-
|
91
|
+
## [4.0.0]
|
132
92
|
### Changed
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
* Convert to use the Gherkin compiler and Pickles ([#156](https://github.com/cucumber/cucumber-ruby-core/pull/156) @brasmusson)
|
137
|
-
|
138
|
-
### Added
|
139
|
-
|
140
|
-
* N/A
|
141
|
-
|
142
|
-
### Fixed
|
143
|
-
|
144
|
-
* N/A
|
93
|
+
- Update to use Gherkin v6 ([#158](https://github.com/cucumber/cucumber-ruby-core/pull/158) @brasmusson)
|
94
|
+
- Let Scenarios with no Steps get the result status Undefined ([#157](https://github.com/cucumber/cucumber-ruby-core/pull/157) @brasmusson)
|
95
|
+
- Convert to use the Gherkin compiler and Pickles ([#156](https://github.com/cucumber/cucumber-ruby-core/pull/156) @brasmusson)
|
145
96
|
|
146
97
|
### Removed
|
98
|
+
- Remove the support for old style tag expressions ([#159](https://github.com/cucumber/cucumber-ruby-core/pull/159) @brasmusson)
|
147
99
|
|
148
|
-
|
149
|
-
|
150
|
-
### Improved
|
151
|
-
|
152
|
-
* N/A
|
153
|
-
|
154
|
-
## [3.2.1](https://github.com/cucumber/cucumber-ruby-core/compare/v3.2.0...v3.2.1)
|
155
|
-
|
100
|
+
## [3.2.1]
|
156
101
|
### Fixed
|
102
|
+
- Switched `gherkin` in Gemspec to use _pessimistic_ versioning. (These two commits aren't merged into `master`, as they already exist in newer commits. This is a 'backported' patch to resolve [#160](https://github.com/cucumber/cucumber-ruby-core/issues/160)).
|
157
103
|
|
158
|
-
|
159
|
-
|
160
|
-
## [3.2.0](https://github.com/cucumber/cucumber-ruby-core/compare/v3.1.0...v3.2.0)
|
161
|
-
|
104
|
+
## [3.2.0]
|
162
105
|
### Added
|
163
|
-
|
164
|
-
|
165
|
-
* Add #original_location to Cucumber::Core::Ast::Step and Cucumber::Core::Test::Step ([#150](https://github.com/cucumber/cucumber-ruby-core/pull/150), [#149](https://github.com/cucumber/cucumber-ruby-core/issues/149) @brasmusson)
|
106
|
+
- Add the GherkinSourceParsedEvent ([#155](https://github.com/cucumber/cucumber-ruby-core/pull/155) @brasmusson)
|
107
|
+
- Add #original_location to Cucumber::Core::Ast::Step and Cucumber::Core::Test::Step ([#150](https://github.com/cucumber/cucumber-ruby-core/pull/150), [#149](https://github.com/cucumber/cucumber-ruby-core/issues/149) @brasmusson)
|
166
108
|
|
167
109
|
### Fixed
|
110
|
+
- Set message and backtrace for undefined result also when skipping (@brasmusson)
|
168
111
|
|
169
|
-
|
170
|
-
|
171
|
-
## [3.1.0](https://github.com/cucumber/cucumber-ruby-core/compare/v3.0.0...3.1.0)
|
172
|
-
|
112
|
+
## [3.1.0]
|
173
113
|
### Changed
|
114
|
+
- Upgraded to `cucumber-tag_expressions` 1.1.0
|
115
|
+
- Upgraded to `gherkin` 5.0.0
|
174
116
|
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
117
|
+
## [3.0.0]
|
118
|
+
### Added
|
119
|
+
- Do not create test cases for scenarios with no steps ([#144](https://github.com/cucumber/cucumber-ruby-core/pull/144) @brasmusson)
|
120
|
+
- Handle selective strict settings ([#143](https://github.com/cucumber/cucumber-ruby-core/pull/143) @brasmusson)
|
179
121
|
|
180
122
|
### Changed
|
123
|
+
- Step#name renamed to #text ([#137](https://github.com/cucumber/cucumber-ruby-core/pull/137) [@olleolleolle](https://github.com/olleolleolle))
|
124
|
+
- Use past tense in event names (`xStarting` -> `xStarted`) (see [cucumber/cucumber-ruby#1166](https://github.com/cucumber/cucumber-ruby/issues/1166) @brasmusson).
|
181
125
|
|
182
|
-
|
183
|
-
|
126
|
+
### Fixed
|
127
|
+
- Fix DataTable's Location to be aware of all of its lines ([#142](https://github.com/cucumber/cucumber-ruby-core/pull/142) @botandrose)
|
128
|
+
- As per [#251](https://github.com/cucumber/cucumber/issues/251): renamed History.md to CHANGELOG.md, added contributing message at beginning, and misc formatting. ([#145](https://github.com/cucumber/cucumber-ruby-core/pull/145) [jaysonesmith](https://github.com/jaysonesmith))
|
184
129
|
|
130
|
+
## [3.0.0.pre.2]
|
185
131
|
### Added
|
186
|
-
|
187
|
-
|
188
|
-
|
132
|
+
- Add a flaky result type to be used for flaky scenarios ([#141](https://github.com/cucumber/cucumber-ruby-core/pull/141), [cucumber/cucumber-ruby#1044](https://github.com/cucumber/cucumber-ruby/issues/1044) @brasmusson)
|
133
|
+
- Make the Summary report able to say if the total result is ok ([#140](https://github.com/cucumber/cucumber-ruby-core/pull/140) @brasmusson)
|
134
|
+
- Replay previous events to new subscribers ([#136](https://github.com/cucumber/cucumber-ruby-core/pull/136) @mattwynne)
|
135
|
+
- Ruby 2.4.0 compatibility ([#120](https://github.com/cucumber/cucumber-ruby-core/pull/120) @junaruga)
|
136
|
+
- Use tag expressions ([#116](https://github.com/cucumber/cucumber-ruby-core/pull/116) @brasmusson)
|
137
|
+
- Access example table row data by param name ([#118](https://github.com/cucumber/cucumber-ruby-core/pull/118) @enkessler)
|
189
138
|
|
190
139
|
### Fixed
|
140
|
+
- Travis: jruby-9.1.10.0 ([#130](https://github.com/cucumber/cucumber-ruby-core/pull/130) @olleolleolle)
|
141
|
+
- Travis: jruby-9.1.12.0 ([#133](https://github.com/cucumber/cucumber-ruby-core/pull/132) @olleolleolle)
|
191
142
|
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
## [3.0.0.pre.2](https://github.com/cucumber/cucumber-ruby-core/compare/v2.0.0...3.0.0.pre.2) (2017-07-26)
|
199
|
-
|
200
|
-
### New Features
|
201
|
-
|
202
|
-
* Add a flaky result type to be used for flaky scenarios ([#141](https://github.com/cucumber/cucumber-ruby-core/pull/141), [cucumber/cucumber-ruby#1044](https://github.com/cucumber/cucumber-ruby/issues/1044) @brasmusson)
|
203
|
-
* Make the Summary report able to say if the total result is ok ([#140](https://github.com/cucumber/cucumber-ruby-core/pull/140) @brasmusson)
|
204
|
-
* Replay previous events to new subscribers ([#136](https://github.com/cucumber/cucumber-ruby-core/pull/136) @mattwynne)
|
205
|
-
* Ruby 2.4.0 compatibility ([#120](https://github.com/cucumber/cucumber-ruby-core/pull/120) @junaruga)
|
206
|
-
* Use tag expressions ([#116](https://github.com/cucumber/cucumber-ruby-core/pull/116) @brasmusson)
|
207
|
-
* Access example table row data by param name ([#118](https://github.com/cucumber/cucumber-ruby-core/pull/118) @enkessler)
|
208
|
-
|
209
|
-
### Bugfixes
|
210
|
-
|
211
|
-
N/A
|
212
|
-
|
213
|
-
### Removed Features
|
214
|
-
|
215
|
-
N/A
|
216
|
-
|
217
|
-
### Refactoring
|
218
|
-
|
219
|
-
* Travis: jruby-9.1.10.0 ([#130](https://github.com/cucumber/cucumber-ruby-core/pull/130) @olleolleolle)
|
220
|
-
* Travis: jruby-9.1.12.0 ([#133](https://github.com/cucumber/cucumber-ruby-core/pull/132) @olleolleolle)
|
221
|
-
|
222
|
-
## [2.0.0](https://github.com/cucumber/cucumber-ruby-core/compare/v1.5.0...2.0.0)
|
223
|
-
|
224
|
-
### New Features
|
225
|
-
|
226
|
-
* Implement equality for test cases ([#111](https://github.com/cucumber/cucumber-ruby-core/pull/111) @mattwynne)
|
227
|
-
* Implement an event bus (moved from Cucumber-Ruby) ([#106](https://github.com/cucumber/cucumber-ruby-core/pull/106) @mattwynne)
|
228
|
-
* Use frozen string literals ([#105](https://github.com/cucumber/cucumber-ruby-core/pull/105) @twalpole)
|
229
|
-
|
230
|
-
### Bugfixes
|
231
|
-
|
232
|
-
* Handle incomplete examples to scenario outlines. ([109](https://github.com/cucumber/cucumber-ruby-core/pull/109) @brasmusson)
|
233
|
-
* Add with_filtered_backtrace method to unknown result ([107](https://github.com/cucumber/cucumber-ruby-core/pull/107) @danascheider)
|
234
|
-
|
235
|
-
### Removed Features
|
236
|
-
|
237
|
-
* Remove support for Ruby v1.9.3. ([112](https://github.com/cucumber/cucumber-ruby-core/pull/112) @brasmusson)
|
238
|
-
|
239
|
-
### Refactoring
|
240
|
-
|
241
|
-
N/A
|
242
|
-
|
243
|
-
## [1.5.0](https://github.com/cucumber/cucumber-ruby-core/compare/v1.4.0...v1.5.0)
|
244
|
-
|
245
|
-
### New Features
|
246
|
-
|
247
|
-
* Update to Gherkin v4.0 (@brasmusson)
|
248
|
-
|
249
|
-
### Bugfixes
|
250
|
-
|
251
|
-
* Use monotonic time ([#103](https://github.com/cucumber/cucumber-ruby-core/pull/103) @mikz)
|
252
|
-
|
253
|
-
## [1.4.0](https://github.com/cucumber/cucumber-ruby-core/compare/v1.3.1...v1.4.0)
|
254
|
-
|
255
|
-
### New Features
|
256
|
-
|
257
|
-
* Update to Gherkin v3.2.0 (@brasmusson)
|
258
|
-
|
259
|
-
### Bugfixes
|
260
|
-
|
261
|
-
## [1.3.1](https://github.com/cucumber/cucumber-ruby-core/compare/v1.3.0...v1.3.1)
|
262
|
-
|
263
|
-
### New Features
|
264
|
-
|
265
|
-
### Bugfixes
|
266
|
-
|
267
|
-
* Speed up location filtering ([#99](https://github.com/cucumber/cucumber-ruby-core/issues/99) @mattwynne @akostadinov @brasmusson)
|
268
|
-
|
269
|
-
## [1.3.0](https://github.com/cucumber/cucumber-ruby-core/compare/v1.2.0...v1.3.0)
|
270
|
-
|
271
|
-
### New Features
|
272
|
-
|
273
|
-
* Add factory method to Cucumber::Core::Ast::Location that uses the output from Proc#source_location (@brasmusson)
|
274
|
-
* Integrate Gherkin3 parser (@brasmusson)
|
275
|
-
|
276
|
-
### Bugfixes
|
277
|
-
|
278
|
-
* Make sure that `after_test_step` is sent also when a test step is interrupted by (a timeout in) an around hook ([cucumber/cucumber-ruby#909](https://github.com/cucumber/cucumber-ruby/issues/909) @brasmusson)
|
279
|
-
* Improve the check that a test_step quacks like a Cucumber::Core::Test::Step ([95](https://github.com/cucumber/cucumber-ruby-core/issues/95) @brasmusson)
|
280
|
-
|
281
|
-
## [1.2.0](https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.3...v1.2.0)
|
282
|
-
|
283
|
-
### New Features
|
284
|
-
|
285
|
-
* Enable the location of actions to be the step or hook location (@brasmusson)
|
286
|
-
* Add the comments to the Steps, Examples tables and Examples table rows Ast classes (@brasmusson)
|
287
|
-
* Expose name, description and examples_rows attributes of `Ast::ExamplesTable` (@mattwynne)
|
288
|
-
* Add #to_sym to Cucumber::Core::Test::Result classes ([#89](https://github.com/cucumber/cucumber-ruby-core/pull/89) @pdswan)
|
289
|
-
* Add #ok? to Cucumber::Core::Test::Result classes ([#92](https://github.com/cucumber/cucumber-ruby-core/pull/92) @brasmusson)
|
290
|
-
|
291
|
-
### Bugfixes
|
292
|
-
|
293
|
-
## [1.1.3](https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.2...v1.1.3)
|
294
|
-
|
295
|
-
### New Features
|
296
|
-
|
297
|
-
* Added custom `inspect` methods for AST Nodes (@tooky)
|
298
|
-
|
299
|
-
## [1.1.2](https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.1...v1.1.2)
|
300
|
-
|
301
|
-
### New Features
|
302
|
-
|
303
|
-
* Make Test Case names for Scenario Outlines language neutral [83](https://github.com/cucumber/cucumber-ruby-core/pull/83) (@brasmusson)
|
304
|
-
* Add predicate methods for Multline arguments (@mattwynne)
|
305
|
-
* Expose `Test::Case#feature` (@mattwynne)
|
306
|
-
* Fail test case if around hook fails (@mattwynne, @tooky)
|
307
|
-
* Expose `Test::Case#around_hooks` (@tooky)
|
308
|
-
|
309
|
-
## [1.1.1](https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.0...v1.1.1)
|
310
|
-
|
311
|
-
|
312
|
-
### New Features
|
313
|
-
|
314
|
-
* Calculate actual keyword for snippets (@brasmusson)
|
315
|
-
|
316
|
-
### Bugfixes
|
143
|
+
## [2.0.0]
|
144
|
+
### Added
|
145
|
+
- Implement equality for test cases ([#111](https://github.com/cucumber/cucumber-ruby-core/pull/111) @mattwynne)
|
146
|
+
- Implement an event bus (moved from Cucumber-Ruby) ([#106](https://github.com/cucumber/cucumber-ruby-core/pull/106) @mattwynne)
|
147
|
+
- Use frozen string literals ([#105](https://github.com/cucumber/cucumber-ruby-core/pull/105) @twalpole)
|
317
148
|
|
318
|
-
|
149
|
+
### Fixed
|
150
|
+
- Handle incomplete examples to scenario outlines. ([109](https://github.com/cucumber/cucumber-ruby-core/pull/109) @brasmusson)
|
151
|
+
- Add with_filtered_backtrace method to unknown result ([107](https://github.com/cucumber/cucumber-ruby-core/pull/107) @danascheider)
|
319
152
|
|
320
|
-
|
153
|
+
### Removed
|
154
|
+
- Remove support for Ruby v1.9.3. ([112](https://github.com/cucumber/cucumber-ruby-core/pull/112) @brasmusson)
|
321
155
|
|
322
|
-
|
156
|
+
## [1.5.0]
|
157
|
+
### Added
|
158
|
+
- Update to Gherkin v4.0 (@brasmusson)
|
323
159
|
|
324
|
-
|
160
|
+
### Fixed
|
161
|
+
- Use monotonic time ([#103](https://github.com/cucumber/cucumber-ruby-core/pull/103) @mikz)
|
325
162
|
|
326
|
-
## [1.
|
163
|
+
## [1.4.0]
|
164
|
+
### Added
|
165
|
+
- Update to Gherkin v3.2.0 (@brasmusson)
|
327
166
|
|
328
|
-
###
|
167
|
+
### Fixed
|
329
168
|
|
330
|
-
|
331
|
-
|
169
|
+
## [1.3.1]
|
170
|
+
### Added
|
332
171
|
|
333
|
-
###
|
172
|
+
### Fixed
|
173
|
+
- Speed up location filtering ([#99](https://github.com/cucumber/cucumber-ruby-core/issues/99) @mattwynne @akostadinov @brasmusson)
|
334
174
|
|
335
|
-
|
175
|
+
## [1.3.0]
|
176
|
+
### Added
|
177
|
+
- Add factory method to Cucumber::Core::Ast::Location that uses the output from Proc#source_location (@brasmusson)
|
178
|
+
- Integrate Gherkin3 parser (@brasmusson)
|
336
179
|
|
337
|
-
|
180
|
+
### Fixed
|
181
|
+
- Make sure that `after_test_step` is sent also when a test step is interrupted by (a timeout in) an around hook ([cucumber/cucumber-ruby#909](https://github.com/cucumber/cucumber-ruby/issues/909) @brasmusson)
|
182
|
+
- Improve the check that a test_step quacks like a Cucumber::Core::Test::Step ([95](https://github.com/cucumber/cucumber-ruby-core/issues/95) @brasmusson)
|
338
183
|
|
339
|
-
|
184
|
+
## [1.2.0]
|
185
|
+
### Added
|
186
|
+
- Enable the location of actions to be the step or hook location (@brasmusson)
|
187
|
+
- Add the comments to the Steps, Examples tables and Examples table rows Ast classes (@brasmusson)
|
188
|
+
- Expose name, description and examples_rows attributes of `Ast::ExamplesTable` (@mattwynne)
|
189
|
+
- Add #to_sym to Cucumber::Core::Test::Result classes ([#89](https://github.com/cucumber/cucumber-ruby-core/pull/89) @pdswan)
|
190
|
+
- Add #ok? to Cucumber::Core::Test::Result classes ([#92](https://github.com/cucumber/cucumber-ruby-core/pull/92) @brasmusson)
|
340
191
|
|
341
|
-
|
342
|
-
* BeforeStep hooks (#[70](https://github.com/cucumber/cucumber-ruby-core/pull/70) [@almostwhitehat](https://github.com/almostwhitehat))
|
343
|
-
* Expose `Test::Case#test_steps` (@mattwynne)
|
192
|
+
### Fixed
|
344
193
|
|
345
|
-
|
194
|
+
## [1.1.3]
|
195
|
+
### Added
|
196
|
+
- Added custom `inspect` methods for AST Nodes (@tooky)
|
346
197
|
|
347
|
-
|
348
|
-
|
198
|
+
## [1.1.2]
|
199
|
+
### Added
|
200
|
+
- Make Test Case names for Scenario Outlines language neutral [83](https://github.com/cucumber/cucumber-ruby-core/pull/83) (@brasmusson)
|
201
|
+
- Add predicate methods for Multline arguments (@mattwynne)
|
202
|
+
- Expose `Test::Case#feature` (@mattwynne)
|
203
|
+
- Fail test case if around hook fails (@mattwynne, @tooky)
|
204
|
+
- Expose `Test::Case#around_hooks` (@tooky)
|
349
205
|
|
350
|
-
## [1.
|
206
|
+
## [1.1.1]
|
207
|
+
### Added
|
208
|
+
- Calculate actual keyword for snippets (@brasmusson)
|
351
209
|
|
352
|
-
|
210
|
+
### Fixed
|
211
|
+
- Remove keyword from `Test::Case#name` [82](https://github.com/cucumber/cucumber-ruby-core/pull/82) (@richarda)
|
353
212
|
|
354
|
-
## [1.
|
213
|
+
## [1.1.0]
|
214
|
+
### Added
|
215
|
+
- LocationsFilter now sorts test cases as well as filtering them (@mattwynne)
|
355
216
|
|
356
|
-
|
217
|
+
## [1.0.0]
|
218
|
+
### Added
|
219
|
+
- Added dynamic filter class constructor (@mattwynne)
|
357
220
|
|
221
|
+
## [1.0.0.beta.4]
|
222
|
+
### Added
|
223
|
+
- Introduce a Duration object (#[71](https://github.com/cucumber/cucumber-ruby-core/pull/71) [@brasmusson](https://github.com/brasmusson))
|
224
|
+
- BeforeStep hooks (#[70](https://github.com/cucumber/cucumber-ruby-core/pull/70) [@almostwhitehat](https://github.com/almostwhitehat))
|
225
|
+
- Expose `Test::Case#test_steps` (@mattwynne)
|
358
226
|
|
359
|
-
|
227
|
+
### Fixed
|
228
|
+
- Handle empty feature files (#[77](https://github.com/cucumber/cucumber-ruby-core/pull/77), [cucumber/cucumber-ruby#771](https://github.com/cucumber/cucumber-ruby/issues/771) [@brasmusson](https://github.com/brasmusson))
|
229
|
+
- Run after hooks in reverse order (#[69](https://github.com/cucumber/cucumber-ruby-core/pull/69) [@erran](https://github.com/erran))
|
230
|
+
|
231
|
+
## [1.0.0.beta.3]
|
232
|
+
|
233
|
+
## [1.0.0.beta.2]
|
234
|
+
|
235
|
+
## [1.0.0.beta.3]
|
236
|
+
|
237
|
+
## [1.0.0.beta.2]
|
238
|
+
|
239
|
+
[Unreleased]: https://github.com/cucumber/cucumber-ruby-core/compare/v10.1.1...main
|
240
|
+
[11.1.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v10.1.1...main
|
241
|
+
[11.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v10.1.1...v11.0.0
|
242
|
+
[10.1.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v10.1.0...v10.1.1
|
243
|
+
[10.1.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v10.0.1...v10.1.0
|
244
|
+
[10.0.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v10.0.0...v10.0.1
|
245
|
+
[10.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v9.0.1...v10.0.0
|
246
|
+
[9.0.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v9.0.0...v9.0.1
|
247
|
+
[9.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v8.0.1...v9.0.0
|
248
|
+
[8.0.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v8.0.0...v8.0.1
|
249
|
+
[8.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v7.1.0...v8.0.0
|
250
|
+
[7.1.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v7.0.0...v7.1.0
|
251
|
+
[7.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v6.0.0...v7.0.0
|
252
|
+
[6.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v5.0.2...v6.0.0
|
253
|
+
[5.0.2]: https://github.com/cucumber/cucumber-ruby-core/compare/v5.0.1...v5.0.2
|
254
|
+
[5.0.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v5.0.0...v5.0.1
|
255
|
+
[5.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v4.0.0...v5.0.0
|
256
|
+
[4.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v3.2.0...v4.0.0
|
257
|
+
[3.2.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v3.2.0...v3.2.1
|
258
|
+
[3.2.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v3.1.0...v3.2.0
|
259
|
+
[3.1.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v3.0.0...3.1.0
|
260
|
+
[3.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v3.0.0.pre.2...v3.0.0
|
261
|
+
[3.0.0.pre.2]: https://github.com/cucumber/cucumber-ruby-core/compare/v2.0.0...3.0.0.pre.2
|
262
|
+
[2.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.5.0...2.0.0
|
263
|
+
[1.5.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.4.0...v1.5.0
|
264
|
+
[1.4.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.3.1...v1.4.0
|
265
|
+
[1.3.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.3.0...v1.3.1
|
266
|
+
[1.3.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.2.0...v1.3.0
|
267
|
+
[1.2.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.3...v1.2.0
|
268
|
+
[1.1.3]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.2...v1.1.3
|
269
|
+
[1.1.2]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.1...v1.1.2
|
270
|
+
[1.1.1]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.1.0...v1.1.1
|
271
|
+
[1.1.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.0.0...v1.1.0
|
272
|
+
[1.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.0.0.beta.4...v1.0.0
|
273
|
+
[1.0.0.beta.4]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.0.0.beta.3...v1.0.0.beta.4
|
274
|
+
[1.0.0.beta.3]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.0.0.beta.2...v1.0.0.beta.3
|
275
|
+
[1.0.0.beta.2]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.0.0.beta.1...v1.0.0.beta.2
|
276
|
+
[1.0.0.beta.3]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.0.0.beta.2...v1.0.0.beta.3
|
277
|
+
[1.0.0.beta.2]: https://github.com/cucumber/cucumber-ruby-core/compare/v1.0.0.beta.1...v1.0.0.beta.2
|
278
|
+
ore/compare/v10.1.1...main
|
data/README.md
CHANGED
@@ -10,7 +10,6 @@
|
|
10
10
|
[](https://oselvar.com/github/cucumber/oselvar-github-metrics/main/cucumber/cucumber-ruby-core)
|
11
11
|
[](https://github.com/cucumber/cucumber-ruby-core/actions/workflows/cucumber-ruby-core.yml)
|
12
12
|
[](https://codeclimate.com/github/cucumber/cucumber-ruby-core)
|
13
|
-
[](https://coveralls.io/r/cucumber/cucumber-ruby-core?branch=main)
|
14
13
|
|
15
14
|
Cucumber is a tool for running automated tests written in plain language. Because they're
|
16
15
|
written in plain language, they can be read by anyone on your team. Because they can be
|
@@ -53,10 +53,20 @@ module Cucumber
|
|
53
53
|
|
54
54
|
def match_locations?(queried_locations)
|
55
55
|
queried_locations.any? do |queried_location|
|
56
|
-
|
56
|
+
matching_locations.any? do |location|
|
57
|
+
queried_location.match? location
|
58
|
+
end
|
57
59
|
end
|
58
60
|
end
|
59
61
|
|
62
|
+
def matching_locations
|
63
|
+
[
|
64
|
+
location,
|
65
|
+
tags.map(&:location),
|
66
|
+
test_steps.map(&:matching_locations)
|
67
|
+
].flatten
|
68
|
+
end
|
69
|
+
|
60
70
|
def inspect
|
61
71
|
"#<#{self.class}: #{location}>"
|
62
72
|
end
|
@@ -50,6 +50,10 @@ module Cucumber
|
|
50
50
|
self
|
51
51
|
end
|
52
52
|
|
53
|
+
def lines_count
|
54
|
+
lines.count + 2
|
55
|
+
end
|
56
|
+
|
53
57
|
def ==(other)
|
54
58
|
if other.respond_to?(:content_type)
|
55
59
|
return false unless content_type == other.content_type
|
@@ -68,7 +72,6 @@ module Cucumber
|
|
68
72
|
%{ """>}
|
69
73
|
].join("\n")
|
70
74
|
end
|
71
|
-
|
72
75
|
end
|
73
76
|
end
|
74
77
|
end
|