cucumber 9.0.2 → 9.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/README.md +4 -8
- data/VERSION +1 -1
- data/lib/cucumber/deprecate.rb +6 -47
- data/lib/cucumber/formatter/ast_lookup.rb +14 -6
- data/lib/cucumber/formatter/console.rb +7 -2
- data/lib/cucumber/formatter/json.rb +1 -1
- data/lib/cucumber/formatter/message_builder.rb +14 -5
- data/lib/cucumber/formatter/pretty.rb +6 -2
- data/lib/cucumber/glue/proto_world.rb +17 -22
- data/lib/cucumber/glue/registry_and_more.rb +7 -4
- data/lib/cucumber/rake/task.rb +1 -5
- data/lib/cucumber/runtime/for_programming_languages.rb +1 -2
- data/lib/cucumber/runtime/meta_message_builder.rb +2 -2
- data/lib/cucumber/runtime/user_interface.rb +2 -2
- metadata +17 -85
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 757154e702f016f75cb37fc68451c18a9a9e742957a197055e127cbe5ebefac6
|
4
|
+
data.tar.gz: '010178d0bb40315be3e1c0923c569ec9f5a8d4684da6446b7a396c45da03371c'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f9c2e02d96f40e5564643f994be4cb5ac6bc5f36849551d5a5f102225a4e62526efabf00d14b961f59a954fdf41345f06c45c4469913bfae93d775c33ac2f5e0
|
7
|
+
data.tar.gz: c20336a8e85dc299322e0a5cd92ba39fc7b5091195d7003b26ed014d58a3dfeb2ae8f0be6a88a6f26238589dc15acb40103049d49415431e075a1bcda4f86487
|
data/README.md
CHANGED
@@ -5,9 +5,7 @@
|
|
5
5
|
[](https://vshymanskyy.github.io/StandWithUkraine)
|
6
6
|
[](https://opencollective.com/cucumber)
|
7
7
|
[](https://opencollective.com/cucumber)
|
8
|
-
[](https://oselvar.com/github/cucumber/oselvar-github-metrics/main/cucumber/cucumber-ruby)
|
10
|
-
[](https://github.com/cucumber/cucumber-ruby/actions/workflows/cucumber-ruby.yml)
|
8
|
+
[](https://github.com/cucumber/cucumber-ruby/actions/workflows/test.yaml)
|
11
9
|
[](https://codeclimate.com/github/cucumber/cucumber-ruby)
|
12
10
|
[](https://coveralls.io/r/cucumber/cucumber-ruby?branch=main)
|
13
11
|
|
@@ -56,8 +54,7 @@ Later in this document, bundler is considered being used so all commands are usi
|
|
56
54
|
|
57
55
|
### Ruby on Rails
|
58
56
|
|
59
|
-
Using Ruby on Rails? You can use [cucumber-rails](https://github.com/cucumber/cucumber-rails)
|
60
|
-
to bring Cucumber into your Rails project.
|
57
|
+
Using Ruby on Rails? You can use [cucumber-rails](https://github.com/cucumber/cucumber-rails) to bring Cucumber into your Rails project.
|
61
58
|
|
62
59
|
## Usage
|
63
60
|
|
@@ -133,7 +130,7 @@ To execute a single example, indicates the line of the name of the example:
|
|
133
130
|
|
134
131
|
$ bundle exec cucumber features/rule.feature:5
|
135
132
|
|
136
|
-
To summarize the results on the standard output, and
|
133
|
+
To summarize the results on the standard output, and generate a HTML report on disk:
|
137
134
|
|
138
135
|
$ bundle exec cucumber --format summary --format html --out report.html
|
139
136
|
|
@@ -141,8 +138,7 @@ For more command line options
|
|
141
138
|
|
142
139
|
$ bundle exec cucumber --help
|
143
140
|
|
144
|
-
You can also find documentation on the command line possibilities in
|
145
|
-
[features/docs/cli](features/docs/cli).
|
141
|
+
You can also find documentation on the command line possibilities in [features/docs/cli](features/docs/cli).
|
146
142
|
|
147
143
|
## Documentation and support
|
148
144
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
9.0
|
1
|
+
9.1.0
|
data/lib/cucumber/deprecate.rb
CHANGED
@@ -4,52 +4,11 @@ require 'cucumber/platform'
|
|
4
4
|
require 'cucumber/gherkin/formatter/ansi_escapes'
|
5
5
|
|
6
6
|
module Cucumber
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
|
-
def failure_message(message)
|
16
|
-
failed + message + reset
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
class CliOption
|
21
|
-
def self.deprecate(stream, option, message, remove_after_version)
|
22
|
-
return if stream.nil?
|
23
|
-
|
24
|
-
stream.puts(
|
25
|
-
AnsiString.failure_message(
|
26
|
-
"\nWARNING: #{option} is deprecated" \
|
27
|
-
" and will be removed after version #{remove_after_version}.\n#{message}.\n"
|
28
|
-
)
|
29
|
-
)
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
module ForUsers
|
34
|
-
def self.call(message, method, remove_after_version)
|
35
|
-
$stderr.puts AnsiString.failure_message(
|
36
|
-
"\nWARNING: ##{method} is deprecated" \
|
37
|
-
" and will be removed after version #{remove_after_version}. #{message}.\n" \
|
38
|
-
"(Called from #{caller(3..3).first})"
|
39
|
-
)
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
module ForDevelopers
|
44
|
-
def self.call(_message, _method, remove_after_version)
|
45
|
-
raise "This method is due for removal after version #{remove_after_version}" if remove_after_version <= Cucumber::VERSION
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
STRATEGY = $PROGRAM_NAME =~ /rspec$/ ? ForDevelopers : ForUsers
|
50
|
-
end
|
51
|
-
|
52
|
-
def self.deprecate(*args)
|
53
|
-
Deprecate::STRATEGY.call(*args)
|
7
|
+
def self.deprecate(message, method, remove_after_version)
|
8
|
+
$stderr.puts(
|
9
|
+
"\nWARNING: ##{method} is deprecated" \
|
10
|
+
" and will be removed after version #{remove_after_version}. #{message}.\n" \
|
11
|
+
"(Called from #{caller(3..3).first})"
|
12
|
+
)
|
54
13
|
end
|
55
14
|
end
|
@@ -112,16 +112,24 @@ module Cucumber
|
|
112
112
|
if child.respond_to?(:rule) && child.rule
|
113
113
|
process_scenario_container(child.rule)
|
114
114
|
elsif child.respond_to?(:scenario) && child.scenario
|
115
|
-
child.scenario
|
116
|
-
@lookup_hash[step.location.line] = StepSource.new(:Step, step)
|
117
|
-
end
|
115
|
+
store_scenario_source_steps(child.scenario)
|
118
116
|
elsif !child.background.nil?
|
119
|
-
child.background
|
120
|
-
@lookup_hash[step.location.line] = StepSource.new(:Step, step)
|
121
|
-
end
|
117
|
+
store_background_source_steps(child.background)
|
122
118
|
end
|
123
119
|
end
|
124
120
|
end
|
121
|
+
|
122
|
+
def store_scenario_source_steps(scenario)
|
123
|
+
scenario.steps.each do |step|
|
124
|
+
@lookup_hash[step.location.line] = StepSource.new(:Step, step)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
def store_background_source_steps(background)
|
129
|
+
background.steps.each do |step|
|
130
|
+
@lookup_hash[step.location.line] = StepSource.new(:Step, step)
|
131
|
+
end
|
132
|
+
end
|
125
133
|
end
|
126
134
|
|
127
135
|
KeywordSearchNode = Struct.new(:keyword, :previous_node)
|
@@ -169,12 +169,17 @@ module Cucumber
|
|
169
169
|
end
|
170
170
|
end
|
171
171
|
|
172
|
-
def attach(src, media_type)
|
172
|
+
def attach(src, media_type, filename)
|
173
173
|
return unless media_type == 'text/x.cucumber.log+plain'
|
174
174
|
return unless @io
|
175
175
|
|
176
176
|
@io.puts
|
177
|
-
|
177
|
+
if filename
|
178
|
+
@io.puts("#{filename}: #{format_string(src, :tag)}")
|
179
|
+
else
|
180
|
+
@io.puts(format_string(src, :tag))
|
181
|
+
end
|
182
|
+
|
178
183
|
@io.flush
|
179
184
|
end
|
180
185
|
|
@@ -42,11 +42,12 @@ module Cucumber
|
|
42
42
|
raise 'To be implemented'
|
43
43
|
end
|
44
44
|
|
45
|
-
def attach(src, media_type)
|
45
|
+
def attach(src, media_type, filename)
|
46
46
|
attachment_data = {
|
47
47
|
test_step_id: @current_test_step_id,
|
48
48
|
test_case_started_id: @current_test_case_started_id,
|
49
|
-
media_type: media_type
|
49
|
+
media_type: media_type,
|
50
|
+
file_name: filename
|
50
51
|
}
|
51
52
|
|
52
53
|
if media_type.start_with?('text/')
|
@@ -192,10 +193,13 @@ module Cucumber
|
|
192
193
|
|
193
194
|
result_message = result.to_message
|
194
195
|
if result.failed? || result.pending?
|
196
|
+
message_element = result.failed? ? result.exception : result
|
197
|
+
|
195
198
|
result_message = Cucumber::Messages::TestStepResult.new(
|
196
199
|
status: result_message.status,
|
197
200
|
duration: result_message.duration,
|
198
|
-
message: create_error_message(
|
201
|
+
message: create_error_message(message_element),
|
202
|
+
exception: create_exception_object(result, message_element)
|
199
203
|
)
|
200
204
|
end
|
201
205
|
|
@@ -211,12 +215,17 @@ module Cucumber
|
|
211
215
|
output_envelope(message)
|
212
216
|
end
|
213
217
|
|
214
|
-
def create_error_message(
|
215
|
-
message_element = result.failed? ? result.exception : result
|
218
|
+
def create_error_message(message_element)
|
216
219
|
message = "#{message_element.message} (#{message_element.class})"
|
217
220
|
([message] + message_element.backtrace).join("\n")
|
218
221
|
end
|
219
222
|
|
223
|
+
def create_exception_object(result, message_element)
|
224
|
+
return unless result.failed?
|
225
|
+
|
226
|
+
Cucumber::Messages::Exception.from_h({ type: message_element.class, message: message_element.message })
|
227
|
+
end
|
228
|
+
|
220
229
|
def on_test_case_finished(event)
|
221
230
|
message = Cucumber::Messages::Envelope.new(
|
222
231
|
test_case_finished: Cucumber::Messages::TestCaseFinished.new(
|
@@ -140,10 +140,14 @@ module Cucumber
|
|
140
140
|
print_summary
|
141
141
|
end
|
142
142
|
|
143
|
-
def attach(src, media_type)
|
143
|
+
def attach(src, media_type, filename)
|
144
144
|
return unless media_type == 'text/x.cucumber.log+plain'
|
145
145
|
|
146
|
-
|
146
|
+
if filename
|
147
|
+
@test_step_output.push("#{filename}: #{src}")
|
148
|
+
else
|
149
|
+
@test_step_output.push(src)
|
150
|
+
end
|
147
151
|
end
|
148
152
|
|
149
153
|
private
|
@@ -7,7 +7,7 @@ require 'mini_mime'
|
|
7
7
|
|
8
8
|
module Cucumber
|
9
9
|
module Glue
|
10
|
-
# Defines the basic API methods
|
10
|
+
# Defines the basic API methods available in all Cucumber step definitions.
|
11
11
|
#
|
12
12
|
# You can, and probably should, extend this API with your own methods that
|
13
13
|
# make sense in your domain. For more on that, see {Cucumber::Glue::Dsl#World}
|
@@ -26,7 +26,7 @@ module Cucumber
|
|
26
26
|
# @example Passing a multiline string
|
27
27
|
# step "the email should contain:", "Dear sir,\nYou've won a prize!\n"
|
28
28
|
# @param [String] name The name of the step
|
29
|
-
# @param [String, Cucumber::Test::DocString, Cucumber::Ast::Table]
|
29
|
+
# @param [String, Cucumber::Test::DocString, Cucumber::Ast::Table] raw_multiline_arg
|
30
30
|
def step(name, raw_multiline_arg = nil)
|
31
31
|
super
|
32
32
|
end
|
@@ -84,17 +84,19 @@ module Cucumber
|
|
84
84
|
|
85
85
|
# Attach a file to the output
|
86
86
|
# @param file [string|io] the file to attach.
|
87
|
-
# It can be a string containing the file content itself,
|
88
|
-
#
|
89
|
-
#
|
90
|
-
#
|
91
|
-
|
87
|
+
# It can be a string containing the file content itself, the file path, or an IO ready to be read.
|
88
|
+
# @param media_type [string] the media type.
|
89
|
+
# If file is a valid path, media_type can be omitted, it will then be inferred from the file name.
|
90
|
+
# @param filename [string] the name of the file you wish to specify.
|
91
|
+
# This is only needed in situations where you want to rename a PDF download e.t.c. - In most situations
|
92
|
+
# you should not need to pass a filename
|
93
|
+
def attach(file, media_type = nil, filename = nil)
|
92
94
|
return super unless File.file?(file)
|
93
95
|
|
94
96
|
content = File.read(file, mode: 'rb')
|
95
97
|
media_type = MiniMime.lookup_by_filename(file)&.content_type if media_type.nil?
|
96
98
|
|
97
|
-
super(content, media_type.to_s)
|
99
|
+
super(content, media_type.to_s, filename)
|
98
100
|
rescue StandardError
|
99
101
|
super
|
100
102
|
end
|
@@ -103,12 +105,9 @@ module Cucumber
|
|
103
105
|
def pending(message = 'TODO')
|
104
106
|
raise Pending, message unless block_given?
|
105
107
|
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
raise Pending, message
|
110
|
-
end
|
111
|
-
raise Pending, "Expected pending '#{message}' to fail. No Error was raised. No longer pending?"
|
108
|
+
yield
|
109
|
+
rescue Exception
|
110
|
+
raise Pending, message
|
112
111
|
end
|
113
112
|
|
114
113
|
# Skips this step and the remaining steps in the scenario
|
@@ -126,8 +125,8 @@ module Cucumber
|
|
126
125
|
inspect
|
127
126
|
end
|
128
127
|
|
129
|
-
#
|
130
|
-
def self.for(runtime, language)
|
128
|
+
# Dynamically generate the API module, closuring the dependencies
|
129
|
+
def self.for(runtime, language)
|
131
130
|
Module.new do
|
132
131
|
def self.extended(object)
|
133
132
|
# wrap the dynamically generated module so that we can document the methods
|
@@ -156,8 +155,8 @@ module Cucumber
|
|
156
155
|
runtime.ask(question, timeout_seconds)
|
157
156
|
end
|
158
157
|
|
159
|
-
define_method(:attach) do |file, media_type|
|
160
|
-
runtime.attach(file, media_type)
|
158
|
+
define_method(:attach) do |file, media_type, filename|
|
159
|
+
runtime.attach(file, media_type, filename)
|
161
160
|
end
|
162
161
|
|
163
162
|
# Prints the list of modules that are included in the World
|
@@ -172,14 +171,12 @@ module Cucumber
|
|
172
171
|
|
173
172
|
private
|
174
173
|
|
175
|
-
# @private
|
176
174
|
def add_world_modules!(modules)
|
177
175
|
modules.each do |world_module|
|
178
176
|
extend(world_module)
|
179
177
|
end
|
180
178
|
end
|
181
179
|
|
182
|
-
# @private
|
183
180
|
def add_namespaced_modules!(modules)
|
184
181
|
@__namespaced_modules = modules
|
185
182
|
modules.each do |namespace, world_modules|
|
@@ -199,7 +196,6 @@ module Cucumber
|
|
199
196
|
end
|
200
197
|
end
|
201
198
|
|
202
|
-
# @private
|
203
199
|
def stringify_namespaced_modules
|
204
200
|
return '' if @__namespaced_modules.nil?
|
205
201
|
|
@@ -208,7 +204,6 @@ module Cucumber
|
|
208
204
|
end
|
209
205
|
end
|
210
206
|
|
211
|
-
# @private
|
212
207
|
AnsiEscapes = Cucumber::Gherkin::Formatter::AnsiEscapes
|
213
208
|
end
|
214
209
|
end
|
@@ -198,16 +198,19 @@ module Cucumber
|
|
198
198
|
private
|
199
199
|
|
200
200
|
def parameter_type_envelope(parameter_type)
|
201
|
-
# TODO: should
|
201
|
+
# TODO: should this be moved to Cucumber::Expression::ParameterType#to_envelope ??
|
202
202
|
# Note: that would mean that cucumber-expression would depend on cucumber-messages
|
203
|
-
|
204
203
|
Cucumber::Messages::Envelope.new(
|
205
204
|
parameter_type: Cucumber::Messages::ParameterType.new(
|
206
205
|
id: @configuration.id_generator.new_id,
|
207
206
|
name: parameter_type.name,
|
208
207
|
regular_expressions: parameter_type.regexps.map(&:to_s),
|
209
|
-
prefer_for_regular_expression_match: parameter_type.prefer_for_regexp_match
|
210
|
-
use_for_snippets: parameter_type.use_for_snippets
|
208
|
+
prefer_for_regular_expression_match: parameter_type.prefer_for_regexp_match,
|
209
|
+
use_for_snippets: parameter_type.use_for_snippets,
|
210
|
+
source_reference: Cucumber::Messages::SourceReference.new(
|
211
|
+
uri: parameter_type.transformer.source_location[0],
|
212
|
+
location: Cucumber::Messages::Location.new(line: parameter_type.transformer.source_location[1])
|
213
|
+
)
|
211
214
|
)
|
212
215
|
)
|
213
216
|
end
|
data/lib/cucumber/rake/task.rb
CHANGED
@@ -7,8 +7,7 @@ module Cucumber
|
|
7
7
|
class Runtime
|
8
8
|
# This is what a programming language will consider to be a runtime.
|
9
9
|
#
|
10
|
-
# It's a thin class that directs the
|
11
|
-
# programming languages to the right place.
|
10
|
+
# It's a thin class that directs the handful of methods needed by the programming languages to the right place
|
12
11
|
class ForProgrammingLanguages
|
13
12
|
extend Forwardable
|
14
13
|
|
@@ -5,14 +5,14 @@ require 'cucumber/ci_environment'
|
|
5
5
|
|
6
6
|
module Cucumber
|
7
7
|
class Runtime
|
8
|
-
# Builder to
|
8
|
+
# Builder to instantiate a Cucumber::Messages::Meta message filled-in with
|
9
9
|
# the runtime meta-data:
|
10
10
|
# - protocol version: the version of the Cucumber::Messages protocol
|
11
11
|
# - implementation: the name and version of the implementation (e.g. cucumber-ruby 8.0.0)
|
12
12
|
# - runtime: the name and version of the runtime (e.g. ruby 3.0.1)
|
13
13
|
# - os: the name and version of the operating system (e.g. linux 3.13.0-45-generic)
|
14
14
|
# - cpu: the name of the CPU (e.g. x86_64)
|
15
|
-
# - ci:
|
15
|
+
# - ci: information about the CI environment if any, including:
|
16
16
|
# - name: the name of the CI environment (e.g. Jenkins)
|
17
17
|
# - url: the URL of the CI environment (e.g. https://ci.example.com)
|
18
18
|
# - build_number: the build number of the CI environment (e.g. 123)
|
@@ -41,8 +41,8 @@ module Cucumber
|
|
41
41
|
# be a path to a file, or if it's an image it may also be a Base64 encoded image.
|
42
42
|
# The embedded data may or may not be ignored, depending on what kind of formatter(s) are active.
|
43
43
|
#
|
44
|
-
def attach(src, media_type)
|
45
|
-
@visitor.attach(src, media_type)
|
44
|
+
def attach(src, media_type, filename)
|
45
|
+
@visitor.attach(src, media_type, filename)
|
46
46
|
end
|
47
47
|
|
48
48
|
private
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cucumber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.0
|
4
|
+
version: 9.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aslak Hellesøy
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2023-
|
13
|
+
date: 2023-11-14 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: builder
|
@@ -58,40 +58,28 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
62
|
-
- - ">="
|
63
|
-
- !ruby/object:Gem::Version
|
64
|
-
version: 11.1.0
|
61
|
+
version: '12.0'
|
65
62
|
type: :runtime
|
66
63
|
prerelease: false
|
67
64
|
version_requirements: !ruby/object:Gem::Requirement
|
68
65
|
requirements:
|
69
66
|
- - "~>"
|
70
67
|
- !ruby/object:Gem::Version
|
71
|
-
version: '
|
72
|
-
- - ">="
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
version: 11.1.0
|
68
|
+
version: '12.0'
|
75
69
|
- !ruby/object:Gem::Dependency
|
76
70
|
name: cucumber-cucumber-expressions
|
77
71
|
requirement: !ruby/object:Gem::Requirement
|
78
72
|
requirements:
|
79
73
|
- - "~>"
|
80
74
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
82
|
-
- - ">="
|
83
|
-
- !ruby/object:Gem::Version
|
84
|
-
version: 16.1.2
|
75
|
+
version: '17.0'
|
85
76
|
type: :runtime
|
86
77
|
prerelease: false
|
87
78
|
version_requirements: !ruby/object:Gem::Requirement
|
88
79
|
requirements:
|
89
80
|
- - "~>"
|
90
81
|
- !ruby/object:Gem::Version
|
91
|
-
version: '
|
92
|
-
- - ">="
|
93
|
-
- !ruby/object:Gem::Version
|
94
|
-
version: 16.1.2
|
82
|
+
version: '17.0'
|
95
83
|
- !ruby/object:Gem::Dependency
|
96
84
|
name: cucumber-gherkin
|
97
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -101,7 +89,7 @@ dependencies:
|
|
101
89
|
version: '24'
|
102
90
|
- - "<"
|
103
91
|
- !ruby/object:Gem::Version
|
104
|
-
version:
|
92
|
+
version: '27'
|
105
93
|
type: :runtime
|
106
94
|
prerelease: false
|
107
95
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -111,7 +99,7 @@ dependencies:
|
|
111
99
|
version: '24'
|
112
100
|
- - "<"
|
113
101
|
- !ruby/object:Gem::Version
|
114
|
-
version:
|
102
|
+
version: '27'
|
115
103
|
- !ruby/object:Gem::Dependency
|
116
104
|
name: cucumber-html-formatter
|
117
105
|
requirement: !ruby/object:Gem::Requirement
|
@@ -238,14 +226,14 @@ dependencies:
|
|
238
226
|
requirements:
|
239
227
|
- - "~>"
|
240
228
|
- !ruby/object:Gem::Version
|
241
|
-
version: '
|
229
|
+
version: '14.0'
|
242
230
|
type: :development
|
243
231
|
prerelease: false
|
244
232
|
version_requirements: !ruby/object:Gem::Requirement
|
245
233
|
requirements:
|
246
234
|
- - "~>"
|
247
235
|
- !ruby/object:Gem::Version
|
248
|
-
version: '
|
236
|
+
version: '14.0'
|
249
237
|
- !ruby/object:Gem::Dependency
|
250
238
|
name: nokogiri
|
251
239
|
requirement: !ruby/object:Gem::Requirement
|
@@ -266,26 +254,6 @@ dependencies:
|
|
266
254
|
- - ">="
|
267
255
|
- !ruby/object:Gem::Version
|
268
256
|
version: 1.13.6
|
269
|
-
- !ruby/object:Gem::Dependency
|
270
|
-
name: pry
|
271
|
-
requirement: !ruby/object:Gem::Requirement
|
272
|
-
requirements:
|
273
|
-
- - "~>"
|
274
|
-
- !ruby/object:Gem::Version
|
275
|
-
version: '0.14'
|
276
|
-
- - ">="
|
277
|
-
- !ruby/object:Gem::Version
|
278
|
-
version: 0.14.1
|
279
|
-
type: :development
|
280
|
-
prerelease: false
|
281
|
-
version_requirements: !ruby/object:Gem::Requirement
|
282
|
-
requirements:
|
283
|
-
- - "~>"
|
284
|
-
- !ruby/object:Gem::Version
|
285
|
-
version: '0.14'
|
286
|
-
- - ">="
|
287
|
-
- !ruby/object:Gem::Version
|
288
|
-
version: 0.14.1
|
289
257
|
- !ruby/object:Gem::Dependency
|
290
258
|
name: rake
|
291
259
|
requirement: !ruby/object:Gem::Requirement
|
@@ -332,48 +300,33 @@ dependencies:
|
|
332
300
|
requirements:
|
333
301
|
- - "~>"
|
334
302
|
- !ruby/object:Gem::Version
|
335
|
-
version:
|
336
|
-
- - ">="
|
337
|
-
- !ruby/object:Gem::Version
|
338
|
-
version: 1.56.2
|
303
|
+
version: 1.56.4
|
339
304
|
type: :development
|
340
305
|
prerelease: false
|
341
306
|
version_requirements: !ruby/object:Gem::Requirement
|
342
307
|
requirements:
|
343
308
|
- - "~>"
|
344
309
|
- !ruby/object:Gem::Version
|
345
|
-
version:
|
346
|
-
- - ">="
|
347
|
-
- !ruby/object:Gem::Version
|
348
|
-
version: 1.56.2
|
310
|
+
version: 1.56.4
|
349
311
|
- !ruby/object:Gem::Dependency
|
350
312
|
name: rubocop-capybara
|
351
313
|
requirement: !ruby/object:Gem::Requirement
|
352
314
|
requirements:
|
353
315
|
- - "~>"
|
354
316
|
- !ruby/object:Gem::Version
|
355
|
-
version:
|
356
|
-
- - ">="
|
357
|
-
- !ruby/object:Gem::Version
|
358
|
-
version: 2.18.0
|
317
|
+
version: 2.19.0
|
359
318
|
type: :development
|
360
319
|
prerelease: false
|
361
320
|
version_requirements: !ruby/object:Gem::Requirement
|
362
321
|
requirements:
|
363
322
|
- - "~>"
|
364
323
|
- !ruby/object:Gem::Version
|
365
|
-
version:
|
366
|
-
- - ">="
|
367
|
-
- !ruby/object:Gem::Version
|
368
|
-
version: 2.18.0
|
324
|
+
version: 2.19.0
|
369
325
|
- !ruby/object:Gem::Dependency
|
370
326
|
name: rubocop-packaging
|
371
327
|
requirement: !ruby/object:Gem::Requirement
|
372
328
|
requirements:
|
373
329
|
- - "~>"
|
374
|
-
- !ruby/object:Gem::Version
|
375
|
-
version: '0.5'
|
376
|
-
- - ">="
|
377
330
|
- !ruby/object:Gem::Version
|
378
331
|
version: 0.5.2
|
379
332
|
type: :development
|
@@ -381,9 +334,6 @@ dependencies:
|
|
381
334
|
version_requirements: !ruby/object:Gem::Requirement
|
382
335
|
requirements:
|
383
336
|
- - "~>"
|
384
|
-
- !ruby/object:Gem::Version
|
385
|
-
version: '0.5'
|
386
|
-
- - ">="
|
387
337
|
- !ruby/object:Gem::Version
|
388
338
|
version: 0.5.2
|
389
339
|
- !ruby/object:Gem::Dependency
|
@@ -391,9 +341,6 @@ dependencies:
|
|
391
341
|
requirement: !ruby/object:Gem::Requirement
|
392
342
|
requirements:
|
393
343
|
- - "~>"
|
394
|
-
- !ruby/object:Gem::Version
|
395
|
-
version: '0.6'
|
396
|
-
- - ">="
|
397
344
|
- !ruby/object:Gem::Version
|
398
345
|
version: 0.6.0
|
399
346
|
type: :development
|
@@ -401,9 +348,6 @@ dependencies:
|
|
401
348
|
version_requirements: !ruby/object:Gem::Requirement
|
402
349
|
requirements:
|
403
350
|
- - "~>"
|
404
|
-
- !ruby/object:Gem::Version
|
405
|
-
version: '0.6'
|
406
|
-
- - ">="
|
407
351
|
- !ruby/object:Gem::Version
|
408
352
|
version: 0.6.0
|
409
353
|
- !ruby/object:Gem::Dependency
|
@@ -412,28 +356,19 @@ dependencies:
|
|
412
356
|
requirements:
|
413
357
|
- - "~>"
|
414
358
|
- !ruby/object:Gem::Version
|
415
|
-
version:
|
416
|
-
- - ">="
|
417
|
-
- !ruby/object:Gem::Version
|
418
|
-
version: 2.23.2
|
359
|
+
version: 2.24.1
|
419
360
|
type: :development
|
420
361
|
prerelease: false
|
421
362
|
version_requirements: !ruby/object:Gem::Requirement
|
422
363
|
requirements:
|
423
364
|
- - "~>"
|
424
365
|
- !ruby/object:Gem::Version
|
425
|
-
version:
|
426
|
-
- - ">="
|
427
|
-
- !ruby/object:Gem::Version
|
428
|
-
version: 2.23.2
|
366
|
+
version: 2.24.1
|
429
367
|
- !ruby/object:Gem::Dependency
|
430
368
|
name: simplecov
|
431
369
|
requirement: !ruby/object:Gem::Requirement
|
432
370
|
requirements:
|
433
371
|
- - "~>"
|
434
|
-
- !ruby/object:Gem::Version
|
435
|
-
version: '0.22'
|
436
|
-
- - ">="
|
437
372
|
- !ruby/object:Gem::Version
|
438
373
|
version: 0.22.0
|
439
374
|
type: :development
|
@@ -441,9 +376,6 @@ dependencies:
|
|
441
376
|
version_requirements: !ruby/object:Gem::Requirement
|
442
377
|
requirements:
|
443
378
|
- - "~>"
|
444
|
-
- !ruby/object:Gem::Version
|
445
|
-
version: '0.22'
|
446
|
-
- - ">="
|
447
379
|
- !ruby/object:Gem::Version
|
448
380
|
version: 0.22.0
|
449
381
|
- !ruby/object:Gem::Dependency
|
@@ -735,5 +667,5 @@ requirements: []
|
|
735
667
|
rubygems_version: 3.3.5
|
736
668
|
signing_key:
|
737
669
|
specification_version: 4
|
738
|
-
summary: cucumber-9.0
|
670
|
+
summary: cucumber-9.1.0
|
739
671
|
test_files: []
|