cuke_modeler 3.20.1 → 3.21.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -1
- data/LICENSE.txt +1 -1
- data/README.md +1 -1
- data/cuke_modeler.gemspec +1 -1
- data/lib/cuke_modeler/adapters/gherkin_28_adapter.rb +13 -0
- data/lib/cuke_modeler/parsing.rb +2 -2
- data/lib/cuke_modeler/version.rb +1 -1
- metadata +6 -6
- data/testing/cucumber/features/modeling/base_model.feature +0 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a3c4bf65cd4d0e8f4e2a4c783a4f1147a65f009661058c93c396f7cd6e4f4a11
|
4
|
+
data.tar.gz: 2856196601bbc71ca23a3a8d355c0b3f2f143ebfe6c0a914362edbe1217c939a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3593c025a6b88c7c7c2b629741cc5f612075f64bcd587c3378a4ba1e48655fb341830f1e2dca46ca3c265a3e16b9d4c73d0f637c29d0f776fbaf9e0c46cfc5ac
|
7
|
+
data.tar.gz: 6b370fe5e4598a0ec9836a43ea664d3bd20560402e6a937f251e03d6c61548f542db202798e8db77c009b3fa1c8ab734c8a6ed839eb652a60a988f334c0ac92f
|
data/CHANGELOG.md
CHANGED
@@ -9,6 +9,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
9
9
|
Nothing yet...
|
10
10
|
|
11
11
|
|
12
|
+
## [3.21.0] - 2024-03-11
|
13
|
+
|
14
|
+
### Added
|
15
|
+
- Support added for more versions of the `cucumber-gherkin` gem
|
16
|
+
- 28.x
|
17
|
+
|
18
|
+
|
12
19
|
## [3.20.1] - 2023-10-16
|
13
20
|
|
14
21
|
### Changed
|
@@ -465,7 +472,8 @@ Nothing yet...
|
|
465
472
|
- Initial release
|
466
473
|
|
467
474
|
|
468
|
-
[Unreleased]: https://github.com/enkessler/cuke_modeler/compare/v3.
|
475
|
+
[Unreleased]: https://github.com/enkessler/cuke_modeler/compare/v3.21.0...HEAD
|
476
|
+
[3.21.0]: https://github.com/enkessler/cuke_modeler/compare/v3.20.1...v3.21.0
|
469
477
|
[3.20.1]: https://github.com/enkessler/cuke_modeler/compare/v3.20.0...v3.20.1
|
470
478
|
[3.20.0]: https://github.com/enkessler/cuke_modeler/compare/v3.19.0...v3.20.0
|
471
479
|
[3.19.0]: https://github.com/enkessler/cuke_modeler/compare/v3.18.0...v3.19.0
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -19,7 +19,7 @@ Developer stuff:
|
|
19
19
|
There comes a time in every programmer's adventures with Cucumber when they
|
20
20
|
want to do Really Cool Stuff with their tests. This usually necessitates
|
21
21
|
scanning all of their feature files and playing with the output. While the
|
22
|
-
**[cucumber-gherkin](https://github.com/cucumber/
|
22
|
+
**[cucumber-gherkin](https://github.com/cucumber/gherkin)** gem ([previously](https://github.com/enkessler/cuke_modeler/blob/master/CHANGELOG.md#300---2020-06-08) just the `gherkin` gem) does a fine job of parsing feature files, reading or even manipulating
|
23
23
|
the resulting Abstract Syntax Tree is not always fun. **cuke_modeler** comes to
|
24
24
|
the rescue by providing a modeling layer that is easier to work with.
|
25
25
|
|
data/cuke_modeler.gemspec
CHANGED
@@ -37,7 +37,7 @@ Gem::Specification.new do |spec|
|
|
37
37
|
|
38
38
|
spec.required_ruby_version = '>= 2.3', '< 4.0'
|
39
39
|
|
40
|
-
spec.add_runtime_dependency 'cucumber-gherkin', '<
|
40
|
+
spec.add_runtime_dependency 'cucumber-gherkin', '< 29.0'
|
41
41
|
|
42
42
|
spec.add_development_dependency 'bundler', '< 3.0'
|
43
43
|
spec.add_development_dependency 'childprocess', '< 5.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 28.x of the *cucumber-gherkin* gem into input that is consumable
|
9
|
+
# by this gem. Internal helper class.
|
10
|
+
class Gherkin28Adapter < Gherkin20Adapter; end
|
11
|
+
|
12
|
+
private_constant :Gherkin28Adapter
|
13
|
+
end
|
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..28)
|
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
|
89
|
+
when 20, 21, 22, 23, 24, 25, 26, 27, 28
|
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.21.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: 2024-03-11 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: '29.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: '29.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -234,6 +234,7 @@ files:
|
|
234
234
|
- lib/cuke_modeler/adapters/gherkin_25_adapter.rb
|
235
235
|
- lib/cuke_modeler/adapters/gherkin_26_adapter.rb
|
236
236
|
- lib/cuke_modeler/adapters/gherkin_27_adapter.rb
|
237
|
+
- lib/cuke_modeler/adapters/gherkin_28_adapter.rb
|
237
238
|
- lib/cuke_modeler/adapters/gherkin_9_adapter.rb
|
238
239
|
- lib/cuke_modeler/adapters/gherkin_base_adapter.rb
|
239
240
|
- lib/cuke_modeler/containing.rb
|
@@ -266,7 +267,6 @@ files:
|
|
266
267
|
- testing/cucumber/features/analysis/test_comparison.feature
|
267
268
|
- testing/cucumber/features/modeling/background_modeling.feature
|
268
269
|
- testing/cucumber/features/modeling/background_output.feature
|
269
|
-
- testing/cucumber/features/modeling/base_model.feature
|
270
270
|
- testing/cucumber/features/modeling/cell_modeling.feature
|
271
271
|
- testing/cucumber/features/modeling/cell_output.feature
|
272
272
|
- testing/cucumber/features/modeling/comment_modeling.feature
|
@@ -325,7 +325,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
325
325
|
- !ruby/object:Gem::Version
|
326
326
|
version: '0'
|
327
327
|
requirements: []
|
328
|
-
rubygems_version: 3.
|
328
|
+
rubygems_version: 3.2.32
|
329
329
|
signing_key:
|
330
330
|
specification_version: 4
|
331
331
|
summary: A gem providing functionality to model Gherkin based test suites.
|