cuke_modeler 3.23.0 → 3.25.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 +18 -1
- data/LICENSE.txt +1 -1
- data/README.md +1 -0
- data/cuke_modeler.gemspec +2 -4
- data/lib/cuke_modeler/adapters/gherkin_20_adapter.rb +2 -2
- data/lib/cuke_modeler/adapters/gherkin_31_adapter.rb +13 -0
- data/lib/cuke_modeler/adapters/gherkin_32_adapter.rb +13 -0
- data/lib/cuke_modeler/adapters/gherkin_33_adapter.rb +13 -0
- data/lib/cuke_modeler/parsing.rb +3 -3
- data/lib/cuke_modeler/version.rb +1 -1
- metadata +10 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 195beb5cf85e3e60295ee64c46ce9d20f3c5905efbd56ff84688db32d93f8734
|
4
|
+
data.tar.gz: 775e9db3df743876c2747093d39748caff2097db5e177959a75c1efed9833157
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dce0194ef64603d42bc26880095899f481eb448aaa456b0bc7a25cf4bccec6e0b14d6df66670bbf1c6f2203fe828a5ff7b5155611a1e8f7603c6dd74b21fefce
|
7
|
+
data.tar.gz: 10d2176dcb8a02f9c807f6747f287ab8efc8d5c0542f8e0b2834e3d4c5920a1772fcf502b74fec54c37f3a686da86b5efe1836c6b67d49f254cc207918b29983
|
data/CHANGELOG.md
CHANGED
@@ -9,6 +9,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
9
9
|
Nothing yet...
|
10
10
|
|
11
11
|
|
12
|
+
## [3.25.0] - 2025-07-15
|
13
|
+
|
14
|
+
### Added
|
15
|
+
- Support added for more versions of the `cucumber-gherkin` gem
|
16
|
+
- 33.x
|
17
|
+
|
18
|
+
|
19
|
+
## [3.24.0] - 2025-02-24
|
20
|
+
|
21
|
+
### Added
|
22
|
+
- Support added for more versions of the `cucumber-gherkin` gem
|
23
|
+
- 31.x
|
24
|
+
- 32.x
|
25
|
+
|
26
|
+
|
12
27
|
## [3.23.0] - 2024-10-31
|
13
28
|
|
14
29
|
### Added
|
@@ -486,7 +501,9 @@ Nothing yet...
|
|
486
501
|
- Initial release
|
487
502
|
|
488
503
|
|
489
|
-
[Unreleased]: https://github.com/enkessler/cuke_modeler/compare/v3.
|
504
|
+
[Unreleased]: https://github.com/enkessler/cuke_modeler/compare/v3.25.0...HEAD
|
505
|
+
[3.25.0]: https://github.com/enkessler/cuke_modeler/compare/v3.24.0...v3.25.0
|
506
|
+
[3.24.0]: https://github.com/enkessler/cuke_modeler/compare/v3.23.0...v3.24.0
|
490
507
|
[3.23.0]: https://github.com/enkessler/cuke_modeler/compare/v3.22.0...v3.23.0
|
491
508
|
[3.22.0]: https://github.com/enkessler/cuke_modeler/compare/v3.21.1...v3.22.0
|
492
509
|
[3.21.0]: https://github.com/enkessler/cuke_modeler/compare/v3.20.1...v3.21.0
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -123,6 +123,7 @@ that feature is ultimately run with SpecFlow (Cucumber for C#), Lettuce
|
|
123
123
|
* [cuke_cataloger](https://github.com/enkessler/cuke_cataloger) - Easily add uniques IDs to every test case in a suite
|
124
124
|
* [cuke_slicer](https://github.com/enkessler/cuke_slicer) - Break a test suite down into discrete test cases for easy parallel distribution
|
125
125
|
* [cuke_linter](https://github.com/enkessler/cuke_linter) - Identify common code smells in your Gherkin
|
126
|
+
* [turnip](https://github.com/jnicklas/turnip) – Write tests in Gherkin and run them through your RSpec environment
|
126
127
|
|
127
128
|
|
128
129
|
## Development and Contributing
|
data/cuke_modeler.gemspec
CHANGED
@@ -21,7 +21,6 @@ Gem::Specification.new do |spec|
|
|
21
21
|
'bug_tracker_uri' => 'https://github.com/enkessler/cuke_modeler/issues',
|
22
22
|
'changelog_uri' => 'https://github.com/enkessler/cuke_modeler/blob/master/CHANGELOG.md',
|
23
23
|
'documentation_uri' => 'https://www.rubydoc.info/gems/cuke_modeler',
|
24
|
-
'homepage_uri' => 'https://github.com/enkessler/cuke_modeler',
|
25
24
|
'source_code_uri' => 'https://github.com/enkessler/cuke_modeler',
|
26
25
|
'rubygems_mfa_required' => 'true'
|
27
26
|
}
|
@@ -37,11 +36,10 @@ Gem::Specification.new do |spec|
|
|
37
36
|
|
38
37
|
spec.required_ruby_version = '>= 2.3', '< 4.0'
|
39
38
|
|
40
|
-
spec.add_runtime_dependency 'cucumber-gherkin', '<
|
39
|
+
spec.add_runtime_dependency 'cucumber-gherkin', '< 34.0'
|
41
40
|
|
42
41
|
spec.add_development_dependency 'bundler', '< 3.0'
|
43
|
-
spec.add_development_dependency 'childprocess', '<
|
44
|
-
spec.add_development_dependency 'ffi', '< 2.0' # This is an invisible dependency for the `childprocess` gem on Windows
|
42
|
+
spec.add_development_dependency 'childprocess', '< 6.0'
|
45
43
|
# Cucumber 4.x is the earliest version to use cucumber-gherkin
|
46
44
|
spec.add_development_dependency 'cucumber', '>= 4.0.0', '< 10.0.0'
|
47
45
|
spec.add_development_dependency 'rainbow', '< 4.0.0'
|
@@ -323,8 +323,8 @@ module CukeModeler
|
|
323
323
|
end
|
324
324
|
|
325
325
|
def clear_child_elements(ast, child_paths)
|
326
|
-
# rubocop:disable Security/Eval
|
327
|
-
# rubocop:disable Style/DocumentDynamicEvalDefinition
|
326
|
+
# rubocop:disable Security/Eval -- This is not blind data
|
327
|
+
# rubocop:disable Style/DocumentDynamicEvalDefinition -- Nice idea but bad detection ability
|
328
328
|
child_paths.each do |traversal_path|
|
329
329
|
# Don't add any properties to the object if it didn't already have them
|
330
330
|
# e.g. ast['cuke_modeler_parsing_data'].background.steps
|
@@ -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 31.x of the *cucumber-gherkin* gem into input that is consumable
|
9
|
+
# by this gem. Internal helper class.
|
10
|
+
class Gherkin31Adapter < Gherkin20Adapter; end
|
11
|
+
|
12
|
+
private_constant :Gherkin31Adapter
|
13
|
+
end
|
@@ -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 32.x of the *cucumber-gherkin* gem into input that is consumable
|
9
|
+
# by this gem. Internal helper class.
|
10
|
+
class Gherkin32Adapter < Gherkin20Adapter; end
|
11
|
+
|
12
|
+
private_constant :Gherkin32Adapter
|
13
|
+
end
|
@@ -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 33.x of the *cucumber-gherkin* gem into input that is consumable
|
9
|
+
# by this gem. Internal helper class.
|
10
|
+
class Gherkin33Adapter < Gherkin20Adapter; end
|
11
|
+
|
12
|
+
private_constant :Gherkin33Adapter
|
13
|
+
end
|
data/lib/cuke_modeler/parsing.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# rubocop:disable Metrics/ModuleLength
|
1
|
+
# rubocop:disable Metrics/ModuleLength -- Just not going to worry about this
|
2
2
|
|
3
3
|
# Have to at least load some version of the gem before which version of the gem has been loaded can
|
4
4
|
# be determined and the rest of the needed files can be loaded.
|
@@ -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..33)
|
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
|
89
|
+
when 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33
|
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,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cuke_modeler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.25.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eric Kessler
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-07-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cucumber-gherkin
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "<"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '34.0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "<"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '34.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,28 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "<"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '6.0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "<"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: ffi
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "<"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '2.0'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "<"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '2.0'
|
54
|
+
version: '6.0'
|
69
55
|
- !ruby/object:Gem::Dependency
|
70
56
|
name: cucumber
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -237,6 +223,9 @@ files:
|
|
237
223
|
- lib/cuke_modeler/adapters/gherkin_28_adapter.rb
|
238
224
|
- lib/cuke_modeler/adapters/gherkin_29_adapter.rb
|
239
225
|
- lib/cuke_modeler/adapters/gherkin_30_adapter.rb
|
226
|
+
- lib/cuke_modeler/adapters/gherkin_31_adapter.rb
|
227
|
+
- lib/cuke_modeler/adapters/gherkin_32_adapter.rb
|
228
|
+
- lib/cuke_modeler/adapters/gherkin_33_adapter.rb
|
240
229
|
- lib/cuke_modeler/adapters/gherkin_9_adapter.rb
|
241
230
|
- lib/cuke_modeler/adapters/gherkin_base_adapter.rb
|
242
231
|
- lib/cuke_modeler/containing.rb
|
@@ -306,7 +295,6 @@ metadata:
|
|
306
295
|
bug_tracker_uri: https://github.com/enkessler/cuke_modeler/issues
|
307
296
|
changelog_uri: https://github.com/enkessler/cuke_modeler/blob/master/CHANGELOG.md
|
308
297
|
documentation_uri: https://www.rubydoc.info/gems/cuke_modeler
|
309
|
-
homepage_uri: https://github.com/enkessler/cuke_modeler
|
310
298
|
source_code_uri: https://github.com/enkessler/cuke_modeler
|
311
299
|
rubygems_mfa_required: 'true'
|
312
300
|
post_install_message:
|
@@ -327,7 +315,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
327
315
|
- !ruby/object:Gem::Version
|
328
316
|
version: '0'
|
329
317
|
requirements: []
|
330
|
-
rubygems_version: 3.
|
318
|
+
rubygems_version: 3.5.22
|
331
319
|
signing_key:
|
332
320
|
specification_version: 4
|
333
321
|
summary: A gem providing functionality to model Gherkin based test suites.
|