cuke_modeler 3.28.0 → 3.29.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 +7 -1
- data/cuke_modeler.gemspec +2 -2
- data/lib/cuke_modeler/adapters/gherkin_39_adapter.rb +13 -0
- data/lib/cuke_modeler/models/feature.rb +2 -2
- data/lib/cuke_modeler/models/rule.rb +2 -2
- data/lib/cuke_modeler/parsing.rb +2 -2
- data/lib/cuke_modeler/version.rb +1 -1
- metadata +6 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: aea4f8791f9d3857d451509770b135933a554da1133d17a91f289aff5d57fe26
|
|
4
|
+
data.tar.gz: 507689f9bcdd0de90443d7a7b58bbfeb65b0e113bcc3cb37c5f06c661976ee63
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: db5af92f1c495c5ca5ed58da44861933ddd4188d9b48ec182b69dd17bbf77dfeea0be93e38dce20fe11a1d4a662362b1d24e7c62ae5e17d84e06b617bddb2fae
|
|
7
|
+
data.tar.gz: 997b95ba55f9c4d45f6bc4e27faafc3b3cf89d6a05364859ff054d1e82e0f303d74cbdb5f0ee55d1a97d2c4905f7ffbe57eaa415ae95ac1395b65af2a1253d2a
|
data/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
8
8
|
|
|
9
9
|
Nothing yet...
|
|
10
10
|
|
|
11
|
+
## [3.29.0] - 2026-04-24
|
|
12
|
+
|
|
13
|
+
- Support added for more versions of the `cucumber-gherkin` gem
|
|
14
|
+
- 39.x
|
|
15
|
+
|
|
11
16
|
|
|
12
17
|
## [3.28.0] - 2026-01-23
|
|
13
18
|
|
|
@@ -524,7 +529,8 @@ Nothing yet...
|
|
|
524
529
|
- Initial release
|
|
525
530
|
|
|
526
531
|
|
|
527
|
-
[Unreleased]: https://github.com/enkessler/cuke_modeler/compare/v3.
|
|
532
|
+
[Unreleased]: https://github.com/enkessler/cuke_modeler/compare/v3.29.0...HEAD
|
|
533
|
+
[3.29.0]: https://github.com/enkessler/cuke_modeler/compare/v3.28.0...v3.29.0
|
|
528
534
|
[3.28.0]: https://github.com/enkessler/cuke_modeler/compare/v3.27.0...v3.28.0
|
|
529
535
|
[3.27.0]: https://github.com/enkessler/cuke_modeler/compare/v3.26.0...v3.27.0
|
|
530
536
|
[3.26.0]: https://github.com/enkessler/cuke_modeler/compare/v3.25.0...v3.26.0
|
data/cuke_modeler.gemspec
CHANGED
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |spec|
|
|
|
36
36
|
|
|
37
37
|
spec.required_ruby_version = '>= 2.3', '< 5.0'
|
|
38
38
|
|
|
39
|
-
spec.add_runtime_dependency 'cucumber-gherkin', '<
|
|
39
|
+
spec.add_runtime_dependency 'cucumber-gherkin', '< 40.0'
|
|
40
40
|
|
|
41
41
|
spec.add_development_dependency 'base64', '< 1.0' # Needed for Gherkin 27, Ruby 4.x only
|
|
42
42
|
spec.add_development_dependency 'bundler', '< 5.0'
|
|
@@ -44,7 +44,7 @@ Gem::Specification.new do |spec|
|
|
|
44
44
|
# Cucumber 4.x is the earliest version to use the 'cucumber-gherkin' gem but some test configurations need to use
|
|
45
45
|
# Cucumber 2.2.0 so that it uses the 'gherkin3' gem instead. Using any other Cucumber version <4.x aside from 2.2.0
|
|
46
46
|
# can cause namespace problems between 'cucumber-gherkin' and 'gherkin' (the gem used by <4.x versions of Cucumber).
|
|
47
|
-
spec.add_development_dependency 'cucumber', '>= 2.2.0', '<
|
|
47
|
+
spec.add_development_dependency 'cucumber', '>= 2.2.0', '< 12.0.0'
|
|
48
48
|
spec.add_development_dependency 'rainbow', '< 4.0.0'
|
|
49
49
|
spec.add_development_dependency 'rake', '< 14.0.0'
|
|
50
50
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
require_relative 'gherkin_20_adapter'
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
module CukeModeler
|
|
5
|
+
|
|
6
|
+
# @api private
|
|
7
|
+
#
|
|
8
|
+
# An adapter that can convert the output of version 39.x of the *cucumber-gherkin* gem into input that is consumable
|
|
9
|
+
# by this gem. Internal helper class.
|
|
10
|
+
class Gherkin39Adapter < Gherkin20Adapter; end
|
|
11
|
+
|
|
12
|
+
private_constant :Gherkin39Adapter
|
|
13
|
+
end
|
|
@@ -63,7 +63,7 @@ module CukeModeler
|
|
|
63
63
|
#
|
|
64
64
|
# @return [Array<Scenario>] Child Scenario models
|
|
65
65
|
def scenarios
|
|
66
|
-
@tests.
|
|
66
|
+
@tests.grep(Scenario)
|
|
67
67
|
end
|
|
68
68
|
|
|
69
69
|
# Returns the outline models contained in the feature.
|
|
@@ -73,7 +73,7 @@ module CukeModeler
|
|
|
73
73
|
#
|
|
74
74
|
# @return [Array<Outline>] Child Outline models
|
|
75
75
|
def outlines
|
|
76
|
-
@tests.
|
|
76
|
+
@tests.grep(Outline)
|
|
77
77
|
end
|
|
78
78
|
|
|
79
79
|
# TODO: Remove this and other deprecated methods on next major version release
|
|
@@ -57,7 +57,7 @@ module CukeModeler
|
|
|
57
57
|
#
|
|
58
58
|
# @return [Array<Scenario>] Child Scenario models
|
|
59
59
|
def scenarios
|
|
60
|
-
@tests.
|
|
60
|
+
@tests.grep(Scenario)
|
|
61
61
|
end
|
|
62
62
|
|
|
63
63
|
# Returns the outline models contained in the rule.
|
|
@@ -67,7 +67,7 @@ module CukeModeler
|
|
|
67
67
|
#
|
|
68
68
|
# @return [Array<Outline>] Child Outline models
|
|
69
69
|
def outlines
|
|
70
|
-
@tests.
|
|
70
|
+
@tests.grep(Outline)
|
|
71
71
|
end
|
|
72
72
|
|
|
73
73
|
# Returns the model objects that are children of this model. For a
|
data/lib/cuke_modeler/parsing.rb
CHANGED
|
@@ -9,7 +9,7 @@ require 'gherkin'
|
|
|
9
9
|
# an 'adapter' appropriate to the version of the *cucumber-gherkin* gem that has been activated.
|
|
10
10
|
gherkin_version = Gem.loaded_specs['cucumber-gherkin'].version.version
|
|
11
11
|
gherkin_major_version = gherkin_version.match(/^(\d+)\./)[1].to_i
|
|
12
|
-
supported_gherkin_versions = (9..
|
|
12
|
+
supported_gherkin_versions = (9..39)
|
|
13
13
|
|
|
14
14
|
raise("Unknown Gherkin version: '#{gherkin_version}'") unless supported_gherkin_versions.include?(gherkin_major_version)
|
|
15
15
|
|
|
@@ -86,7 +86,7 @@ module CukeModeler
|
|
|
86
86
|
# inside of it, so I'm leaving this here in case it changes again
|
|
87
87
|
# rubocop:disable Lint/DuplicateMethods
|
|
88
88
|
case gherkin_major_version
|
|
89
|
-
when 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38
|
|
89
|
+
when 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39
|
|
90
90
|
# The method to use for parsing Gherkin text
|
|
91
91
|
def parsing_method(source_text, filename)
|
|
92
92
|
messages = Gherkin.from_source(filename,
|
data/lib/cuke_modeler/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: cuke_modeler
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.29.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Eric Kessler
|
|
@@ -15,14 +15,14 @@ dependencies:
|
|
|
15
15
|
requirements:
|
|
16
16
|
- - "<"
|
|
17
17
|
- !ruby/object:Gem::Version
|
|
18
|
-
version: '
|
|
18
|
+
version: '40.0'
|
|
19
19
|
type: :runtime
|
|
20
20
|
prerelease: false
|
|
21
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
22
22
|
requirements:
|
|
23
23
|
- - "<"
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
|
-
version: '
|
|
25
|
+
version: '40.0'
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: base64
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -74,7 +74,7 @@ dependencies:
|
|
|
74
74
|
version: 2.2.0
|
|
75
75
|
- - "<"
|
|
76
76
|
- !ruby/object:Gem::Version
|
|
77
|
-
version:
|
|
77
|
+
version: 12.0.0
|
|
78
78
|
type: :development
|
|
79
79
|
prerelease: false
|
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -84,7 +84,7 @@ dependencies:
|
|
|
84
84
|
version: 2.2.0
|
|
85
85
|
- - "<"
|
|
86
86
|
- !ruby/object:Gem::Version
|
|
87
|
-
version:
|
|
87
|
+
version: 12.0.0
|
|
88
88
|
- !ruby/object:Gem::Dependency
|
|
89
89
|
name: rainbow
|
|
90
90
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -244,6 +244,7 @@ files:
|
|
|
244
244
|
- lib/cuke_modeler/adapters/gherkin_36_adapter.rb
|
|
245
245
|
- lib/cuke_modeler/adapters/gherkin_37_adapter.rb
|
|
246
246
|
- lib/cuke_modeler/adapters/gherkin_38_adapter.rb
|
|
247
|
+
- lib/cuke_modeler/adapters/gherkin_39_adapter.rb
|
|
247
248
|
- lib/cuke_modeler/adapters/gherkin_9_adapter.rb
|
|
248
249
|
- lib/cuke_modeler/adapters/gherkin_base_adapter.rb
|
|
249
250
|
- lib/cuke_modeler/containing.rb
|