cucumber-core 15.0.0 → 15.2.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 +15 -4
- data/README.md +3 -11
- data/lib/cucumber/core/compiler.rb +6 -6
- data/lib/cucumber/core/gherkin/parser.rb +2 -2
- data/lib/cucumber/core/test/doc_string.rb +1 -3
- data/lib/cucumber/core/test/location.rb +2 -2
- data/lib/cucumber/core/test/result.rb +1 -3
- metadata +17 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2554ca60663ac501f9cd9a77f5d9c3699d273290cea5c4a6fbdc77998c4acd75
|
4
|
+
data.tar.gz: f38dc4a48830eaecefc4443007edd87a1ca26832c98fc187a6d77298ec68026f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7bc8eb2e23e5b4059a7d85e14e4e859fd901245a75808102b73df58fbba7c8b62058eccaf9259b53c08ad197652591f5c95009794dc22e3dd0d27fb1192a6e30
|
7
|
+
data.tar.gz: 85228919e11f510fbb23577816752cfb01cd62e638b2d577f4ede710d70e43ea8124e4066449af41c04d4a09ef9ee5b91a6c7581183e9cb2af7a4d382fcabb36
|
data/CHANGELOG.md
CHANGED
@@ -10,9 +10,18 @@ Please visit [cucumber/CONTRIBUTING.md](https://github.com/cucumber/cucumber/blo
|
|
10
10
|
|
11
11
|
## [Unreleased]
|
12
12
|
|
13
|
-
## [15.
|
13
|
+
## [15.2.0] - 2025-08-08
|
14
14
|
### Changed
|
15
|
-
- Permit usage of gherkin up to
|
15
|
+
- Permit usage of gherkin up to v32, messages up to v29
|
16
|
+
- Minor internal refactors
|
17
|
+
|
18
|
+
## [15.1.0] - 2025-02-28
|
19
|
+
### Changed
|
20
|
+
- Permit usage of gherkin up to v30
|
21
|
+
|
22
|
+
## [15.0.0] - 2024-12-24
|
23
|
+
### Changed
|
24
|
+
- Permit usage of messages up to v28
|
16
25
|
|
17
26
|
### Fixed
|
18
27
|
- References to the Time Conversion and UUID helpers needed altering to use the `Helpers` namespace
|
@@ -32,7 +41,7 @@ See upgrading notes for [14.0.0.md](upgrading_notes/14.0.0.md#upgrading-to-cucum
|
|
32
41
|
|
33
42
|
## [13.0.3] - 2024-07-24
|
34
43
|
### Changed
|
35
|
-
- Fixed up all remaining Layout
|
44
|
+
- Fixed up all remaining Layout autocorrect cops in the codebase
|
36
45
|
|
37
46
|
## [13.0.2] - 2024-03-21
|
38
47
|
### Changed
|
@@ -84,7 +93,9 @@ See upgrading notes for [13.0.0.md](upgrading_notes/13.0.0.md#upgrading-to-cucum
|
|
84
93
|
### Changed
|
85
94
|
- Updated `cucumber-gherkin` and `cucumber-messages`
|
86
95
|
|
87
|
-
[Unreleased]: https://github.com/cucumber/cucumber-ruby-core/compare/v15.
|
96
|
+
[Unreleased]: https://github.com/cucumber/cucumber-ruby-core/compare/v15.2.0...HEAD
|
97
|
+
[15.2.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v15.1.0...v15.2.0
|
98
|
+
[15.1.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v15.0.0...v15.1.0
|
88
99
|
[15.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v14.0.0...v15.0.0
|
89
100
|
[14.0.0]: https://github.com/cucumber/cucumber-ruby-core/compare/v13.0.3...v14.0.0
|
90
101
|
[13.0.3]: https://github.com/cucumber/cucumber-ruby-core/compare/v13.0.2...v13.0.3
|
data/README.md
CHANGED
@@ -1,13 +1,10 @@
|
|
1
|
-
<
|
2
|
-
<img src="./.github/img/cucumber-open-logo.png" alt="Cucumber Open - Supported by Smartbear" width="428" />
|
3
|
-
</p>
|
1
|
+
<img src=".github/img/logo.svg" alt="" width="75" />
|
4
2
|
|
5
3
|
# Cucumber
|
6
4
|
|
5
|
+
[](https://vshymanskyy.github.io/StandWithUkraine)
|
7
6
|
[](https://opencollective.com/cucumber)
|
8
7
|
[](https://opencollective.com/cucumber)
|
9
|
-
[](https://oselvar.com/github/cucumber/oselvar-github-metrics/main/cucumber/cucumber-ruby-core)
|
10
|
-
[](https://oselvar.com/github/cucumber/oselvar-github-metrics/main/cucumber/cucumber-ruby-core)
|
11
8
|
[](https://github.com/cucumber/cucumber-ruby-core/actions/workflows/test.yml)
|
12
9
|
[](https://codeclimate.com/github/cucumber/cucumber-ruby-core)
|
13
10
|
|
@@ -16,9 +13,7 @@ written in plain language, they can be read by anyone on your team. Because they
|
|
16
13
|
read by anyone, you can use them to help improve communication, collaboration and trust on
|
17
14
|
your team.
|
18
15
|
|
19
|
-
<
|
20
|
-
<img src="./.github/img/gherkin-example.png" alt="Cucumber Gherkin Example" width="728" />
|
21
|
-
</p>
|
16
|
+
<img src="./.github/img/gherkin-example.png" alt="Cucumber Gherkin Example" width="728" />
|
22
17
|
|
23
18
|
Cucumber Core is the [inner hexagon](https://en.wikipedia.org/wiki/Hexagonal_architecture_(software))
|
24
19
|
for the [Ruby flavour of Cucumber](https://github.com/cucumber/cucumber-ruby).
|
@@ -54,9 +49,6 @@ or install the gem directly:
|
|
54
49
|
- Ruby 3.2
|
55
50
|
- Ruby 3.1
|
56
51
|
- Ruby 3.0
|
57
|
-
- Ruby 2.7
|
58
|
-
- Ruby 2.6
|
59
|
-
- Ruby 2.5
|
60
52
|
- JRuby 9.4 (with [some limitations](https://github.com/cucumber/cucumber-ruby/blob/main/docs/jruby-limitations.md))
|
61
53
|
|
62
54
|
## Usage
|
@@ -41,17 +41,17 @@ module Cucumber
|
|
41
41
|
location = location_from_pickle(pickle)
|
42
42
|
parent_locations = parent_locations_from_pickle(pickle)
|
43
43
|
tags = tags_from_pickle(pickle, uri)
|
44
|
-
|
45
|
-
|
46
|
-
|
44
|
+
Test::Case.new(id_generator.new_id, pickle.name, test_steps, location, parent_locations, tags, pickle.language).tap do |test_case|
|
45
|
+
@event_bus&.test_case_created(test_case, pickle)
|
46
|
+
end
|
47
47
|
end
|
48
48
|
|
49
49
|
def create_test_step(pickle_step, uri)
|
50
50
|
location = location_from_pickle_step(pickle_step, uri)
|
51
51
|
multiline_arg = create_multiline_arg(pickle_step, uri)
|
52
|
-
|
53
|
-
|
54
|
-
|
52
|
+
Test::Step.new(id_generator.new_id, pickle_step.text, location, multiline_arg).tap do |test_step|
|
53
|
+
@event_bus&.test_step_created(test_step, pickle_step)
|
54
|
+
end
|
55
55
|
end
|
56
56
|
|
57
57
|
def create_multiline_arg(pickle_step, _uri)
|
@@ -47,7 +47,7 @@ module Cucumber
|
|
47
47
|
generate_envelope(message)
|
48
48
|
update_gherkin_query(message)
|
49
49
|
|
50
|
-
case type
|
50
|
+
case type(message)
|
51
51
|
when :gherkin_document; then event_bus.gherkin_source_parsed(message.gherkin_document)
|
52
52
|
when :pickle; then receiver.pickle(message.pickle)
|
53
53
|
when :parse_error; then raise ParseError, "#{document.uri}: #{message.parse_error.message}"
|
@@ -63,7 +63,7 @@ module Cucumber
|
|
63
63
|
gherkin_query.update(message)
|
64
64
|
end
|
65
65
|
|
66
|
-
def type
|
66
|
+
def type(message)
|
67
67
|
if !message.gherkin_document.nil?
|
68
68
|
:gherkin_document
|
69
69
|
elsif !message.pickle.nil?
|
@@ -57,9 +57,7 @@ module Cucumber
|
|
57
57
|
end
|
58
58
|
|
59
59
|
def ==(other)
|
60
|
-
if other.respond_to?(:content_type)
|
61
|
-
return false unless content_type == other.content_type
|
62
|
-
end
|
60
|
+
return false if other.respond_to?(:content_type) && content_type != other.content_type
|
63
61
|
return content == other.to_str if other.respond_to?(:to_str)
|
64
62
|
|
65
63
|
false
|
@@ -22,9 +22,9 @@ module Cucumber
|
|
22
22
|
pwd = File.expand_path(Dir.pwd)
|
23
23
|
pwd.force_encoding(file.encoding)
|
24
24
|
if file.index(pwd)
|
25
|
-
file = file[pwd.length + 1..]
|
25
|
+
file = file[(pwd.length + 1)..]
|
26
26
|
elsif file =~ /.*\/gems\/(.*\.rb)$/
|
27
|
-
file =
|
27
|
+
file = Regexp.last_match(1)
|
28
28
|
end
|
29
29
|
new(file, line)
|
30
30
|
end
|
@@ -357,9 +357,7 @@ module Cucumber
|
|
357
357
|
|
358
358
|
def ok?(strict: StrictConfiguration.new)
|
359
359
|
TYPES.each do |type|
|
360
|
-
if get_total(type)
|
361
|
-
return false unless Result.ok?(type, strict: strict)
|
362
|
-
end
|
360
|
+
return false if get_total(type).positive? && !Result.ok?(type, strict: strict)
|
363
361
|
end
|
364
362
|
true
|
365
363
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cucumber-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 15.
|
4
|
+
version: 15.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aslak Hellesøy
|
@@ -9,10 +9,10 @@ authors:
|
|
9
9
|
- Steve Tooke
|
10
10
|
- Oleg Sukhodolsky
|
11
11
|
- Tom Brand
|
12
|
-
autorequire:
|
12
|
+
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date:
|
15
|
+
date: 2025-08-08 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: cucumber-gherkin
|
@@ -23,7 +23,7 @@ dependencies:
|
|
23
23
|
version: '27'
|
24
24
|
- - "<"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '33'
|
27
27
|
type: :runtime
|
28
28
|
prerelease: false
|
29
29
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -33,27 +33,27 @@ dependencies:
|
|
33
33
|
version: '27'
|
34
34
|
- - "<"
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: '
|
36
|
+
version: '33'
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: cucumber-messages
|
39
39
|
requirement: !ruby/object:Gem::Requirement
|
40
40
|
requirements:
|
41
41
|
- - ">"
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version: '
|
43
|
+
version: '26'
|
44
44
|
- - "<"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
46
|
+
version: '30'
|
47
47
|
type: :runtime
|
48
48
|
prerelease: false
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
51
|
- - ">"
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
53
|
+
version: '26'
|
54
54
|
- - "<"
|
55
55
|
- !ruby/object:Gem::Version
|
56
|
-
version: '
|
56
|
+
version: '30'
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
58
|
name: cucumber-tag-expressions
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
@@ -108,14 +108,14 @@ dependencies:
|
|
108
108
|
requirements:
|
109
109
|
- - "~>"
|
110
110
|
- !ruby/object:Gem::Version
|
111
|
-
version: 1.
|
111
|
+
version: 1.77.0
|
112
112
|
type: :development
|
113
113
|
prerelease: false
|
114
114
|
version_requirements: !ruby/object:Gem::Requirement
|
115
115
|
requirements:
|
116
116
|
- - "~>"
|
117
117
|
- !ruby/object:Gem::Version
|
118
|
-
version: 1.
|
118
|
+
version: 1.77.0
|
119
119
|
- !ruby/object:Gem::Dependency
|
120
120
|
name: rubocop-packaging
|
121
121
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,14 +150,14 @@ dependencies:
|
|
150
150
|
requirements:
|
151
151
|
- - "~>"
|
152
152
|
- !ruby/object:Gem::Version
|
153
|
-
version: 3.0
|
153
|
+
version: 3.6.0
|
154
154
|
type: :development
|
155
155
|
prerelease: false
|
156
156
|
version_requirements: !ruby/object:Gem::Requirement
|
157
157
|
requirements:
|
158
158
|
- - "~>"
|
159
159
|
- !ruby/object:Gem::Version
|
160
|
-
version: 3.0
|
160
|
+
version: 3.6.0
|
161
161
|
description: Core library for the Cucumber BDD app
|
162
162
|
email: cukes@googlegroups.com
|
163
163
|
executables: []
|
@@ -209,7 +209,7 @@ metadata:
|
|
209
209
|
mailing_list_uri: https://groups.google.com/forum/#!forum/cukes
|
210
210
|
source_code_uri: https://github.com/cucumber/cucumber-ruby-core
|
211
211
|
funding_uri: https://opencollective.com/cucumber
|
212
|
-
post_install_message:
|
212
|
+
post_install_message:
|
213
213
|
rdoc_options:
|
214
214
|
- "--charset=UTF-8"
|
215
215
|
require_paths:
|
@@ -225,8 +225,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
225
225
|
- !ruby/object:Gem::Version
|
226
226
|
version: 3.2.8
|
227
227
|
requirements: []
|
228
|
-
rubygems_version: 3.
|
229
|
-
signing_key:
|
228
|
+
rubygems_version: 3.4.20
|
229
|
+
signing_key:
|
230
230
|
specification_version: 4
|
231
|
-
summary: cucumber-core-15.
|
231
|
+
summary: cucumber-core-15.2.0
|
232
232
|
test_files: []
|