cucumber 3.1.2 → 4.0.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 +5 -5
- data/CHANGELOG.md +173 -14
- data/CONTRIBUTING.md +2 -18
- data/README.md +4 -5
- data/bin/cucumber +1 -1
- data/lib/autotest/cucumber_mixin.rb +34 -39
- data/lib/cucumber.rb +1 -1
- data/lib/cucumber/cli/configuration.rb +5 -5
- data/lib/cucumber/cli/main.rb +12 -12
- data/lib/cucumber/cli/options.rb +69 -74
- data/lib/cucumber/cli/profile_loader.rb +49 -26
- data/lib/cucumber/configuration.rb +31 -23
- data/lib/cucumber/constantize.rb +2 -5
- data/lib/cucumber/deprecate.rb +31 -7
- data/lib/cucumber/errors.rb +5 -7
- data/lib/cucumber/events.rb +13 -6
- data/lib/cucumber/events/envelope.rb +9 -0
- data/lib/cucumber/events/gherkin_source_parsed.rb +11 -0
- data/lib/cucumber/events/hook_test_step_created.rb +13 -0
- data/lib/cucumber/events/step_activated.rb +2 -1
- data/lib/cucumber/events/test_case_created.rb +13 -0
- data/lib/cucumber/events/test_case_ready.rb +12 -0
- data/lib/cucumber/events/test_step_created.rb +13 -0
- data/lib/cucumber/events/undefined_parameter_type.rb +10 -0
- data/lib/cucumber/file_specs.rb +6 -6
- data/lib/cucumber/filters.rb +1 -0
- data/lib/cucumber/filters/activate_steps.rb +5 -3
- data/lib/cucumber/filters/broadcast_test_case_ready_event.rb +12 -0
- data/lib/cucumber/filters/prepare_world.rb +5 -9
- data/lib/cucumber/filters/quit.rb +1 -3
- data/lib/cucumber/filters/tag_limits/verifier.rb +2 -4
- data/lib/cucumber/formatter/ansicolor.rb +40 -45
- data/lib/cucumber/formatter/ast_lookup.rb +165 -0
- data/lib/cucumber/formatter/backtrace_filter.rb +9 -8
- data/lib/cucumber/formatter/console.rb +58 -66
- data/lib/cucumber/formatter/console_counts.rb +4 -9
- data/lib/cucumber/formatter/console_issues.rb +6 -3
- data/lib/cucumber/formatter/duration.rb +1 -1
- data/lib/cucumber/formatter/duration_extractor.rb +3 -1
- data/lib/cucumber/formatter/errors.rb +6 -0
- data/lib/cucumber/formatter/fanout.rb +2 -0
- data/lib/cucumber/formatter/html.rb +11 -598
- data/lib/cucumber/formatter/http_io.rb +146 -0
- data/lib/cucumber/formatter/ignore_missing_messages.rb +1 -1
- data/lib/cucumber/formatter/interceptor.rb +8 -28
- data/lib/cucumber/formatter/io.rb +17 -11
- data/lib/cucumber/formatter/json.rb +101 -109
- data/lib/cucumber/formatter/junit.rb +56 -56
- data/lib/cucumber/formatter/message.rb +22 -0
- data/lib/cucumber/formatter/message_builder.rb +255 -0
- data/lib/cucumber/formatter/pretty.rb +359 -153
- data/lib/cucumber/formatter/progress.rb +30 -32
- data/lib/cucumber/formatter/query/hook_by_test_step.rb +31 -0
- data/lib/cucumber/formatter/query/pickle_by_test.rb +26 -0
- data/lib/cucumber/formatter/query/pickle_step_by_test_step.rb +26 -0
- data/lib/cucumber/formatter/query/step_definitions_by_test_step.rb +40 -0
- data/lib/cucumber/formatter/query/test_case_started_by_test_case.rb +40 -0
- data/lib/cucumber/formatter/rerun.rb +22 -4
- data/lib/cucumber/formatter/stepdefs.rb +1 -2
- data/lib/cucumber/formatter/steps.rb +2 -3
- data/lib/cucumber/formatter/summary.rb +16 -8
- data/lib/cucumber/formatter/unicode.rb +15 -17
- data/lib/cucumber/formatter/usage.rb +11 -10
- data/lib/cucumber/gherkin/data_table_parser.rb +17 -6
- data/lib/cucumber/gherkin/formatter/ansi_escapes.rb +13 -17
- data/lib/cucumber/gherkin/formatter/escaping.rb +2 -2
- data/lib/cucumber/gherkin/steps_parser.rb +17 -8
- data/lib/cucumber/glue/dsl.rb +1 -1
- data/lib/cucumber/glue/hook.rb +34 -11
- data/lib/cucumber/glue/invoke_in_world.rb +13 -18
- data/lib/cucumber/glue/proto_world.rb +42 -33
- data/lib/cucumber/glue/registry_and_more.rb +42 -12
- data/lib/cucumber/glue/snippet.rb +23 -22
- data/lib/cucumber/glue/step_definition.rb +42 -19
- data/lib/cucumber/glue/world_factory.rb +1 -1
- data/lib/cucumber/hooks.rb +11 -11
- data/lib/cucumber/multiline_argument.rb +4 -6
- data/lib/cucumber/multiline_argument/data_table.rb +97 -64
- data/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +1 -1
- data/lib/cucumber/multiline_argument/doc_string.rb +1 -1
- data/lib/cucumber/platform.rb +3 -3
- data/lib/cucumber/rake/task.rb +16 -16
- data/lib/cucumber/rspec/disable_option_parser.rb +9 -8
- data/lib/cucumber/running_test_case.rb +2 -53
- data/lib/cucumber/runtime.rb +54 -58
- data/lib/cucumber/runtime/after_hooks.rb +8 -4
- data/lib/cucumber/runtime/before_hooks.rb +8 -4
- data/lib/cucumber/runtime/for_programming_languages.rb +4 -2
- data/lib/cucumber/runtime/step_hooks.rb +3 -2
- data/lib/cucumber/runtime/support_code.rb +13 -15
- data/lib/cucumber/runtime/user_interface.rb +6 -16
- data/lib/cucumber/step_definition_light.rb +4 -3
- data/lib/cucumber/step_definitions.rb +2 -2
- data/lib/cucumber/step_match.rb +12 -11
- data/lib/cucumber/step_match_search.rb +2 -1
- data/lib/cucumber/term/ansicolor.rb +9 -9
- data/lib/cucumber/version +1 -1
- metadata +224 -82
- data/lib/cucumber/events/gherkin_source_parsed.rb~ +0 -14
- data/lib/cucumber/formatter/ast_lookup.rb~ +0 -9
- data/lib/cucumber/formatter/cucumber.css +0 -286
- data/lib/cucumber/formatter/cucumber.sass +0 -247
- data/lib/cucumber/formatter/hook_query_visitor.rb +0 -42
- data/lib/cucumber/formatter/html_builder.rb +0 -121
- data/lib/cucumber/formatter/inline-js.js +0 -30
- data/lib/cucumber/formatter/jquery-min.js +0 -154
- data/lib/cucumber/formatter/json_pretty.rb +0 -11
- data/lib/cucumber/formatter/legacy_api/adapter.rb +0 -1028
- data/lib/cucumber/formatter/legacy_api/ast.rb +0 -394
- data/lib/cucumber/formatter/legacy_api/results.rb +0 -50
- data/lib/cucumber/formatter/legacy_api/runtime_facade.rb +0 -32
- data/lib/cucumber/step_argument.rb +0 -25
@@ -3,23 +3,27 @@
|
|
3
3
|
module Cucumber
|
4
4
|
class Runtime
|
5
5
|
class AfterHooks
|
6
|
-
def initialize(hooks, scenario)
|
6
|
+
def initialize(id_generator, hooks, scenario, event_bus)
|
7
7
|
@hooks = hooks
|
8
8
|
@scenario = scenario
|
9
|
+
@id_generator = id_generator
|
10
|
+
@event_bus = event_bus
|
9
11
|
end
|
10
12
|
|
11
13
|
def apply_to(test_case)
|
12
14
|
test_case.with_steps(
|
13
|
-
test_case.test_steps + after_hooks
|
15
|
+
test_case.test_steps + after_hooks.reverse
|
14
16
|
)
|
15
17
|
end
|
16
18
|
|
17
19
|
private
|
18
20
|
|
19
|
-
def after_hooks
|
21
|
+
def after_hooks
|
20
22
|
@hooks.map do |hook|
|
21
23
|
action = ->(result) { hook.invoke('After', @scenario.with_result(result)) }
|
22
|
-
Hooks.after_hook(
|
24
|
+
hook_step = Hooks.after_hook(@id_generator.new_id, hook.location, &action)
|
25
|
+
@event_bus.hook_test_step_created(hook_step, hook)
|
26
|
+
hook_step
|
23
27
|
end
|
24
28
|
end
|
25
29
|
end
|
@@ -5,23 +5,27 @@ require 'cucumber/hooks'
|
|
5
5
|
module Cucumber
|
6
6
|
class Runtime
|
7
7
|
class BeforeHooks
|
8
|
-
def initialize(hooks, scenario)
|
8
|
+
def initialize(id_generator, hooks, scenario, event_bus)
|
9
9
|
@hooks = hooks
|
10
10
|
@scenario = scenario
|
11
|
+
@id_generator = id_generator
|
12
|
+
@event_bus = event_bus
|
11
13
|
end
|
12
14
|
|
13
15
|
def apply_to(test_case)
|
14
16
|
test_case.with_steps(
|
15
|
-
before_hooks
|
17
|
+
before_hooks + test_case.test_steps
|
16
18
|
)
|
17
19
|
end
|
18
20
|
|
19
21
|
private
|
20
22
|
|
21
|
-
def before_hooks
|
23
|
+
def before_hooks
|
22
24
|
@hooks.map do |hook|
|
23
25
|
action_block = ->(result) { hook.invoke('Before', @scenario.with_result(result)) }
|
24
|
-
Hooks.before_hook(
|
26
|
+
hook_step = Hooks.before_hook(@id_generator.new_id, hook.location, &action_block)
|
27
|
+
@event_bus.hook_test_step_created(hook_step, hook)
|
28
|
+
hook_step
|
25
29
|
end
|
26
30
|
end
|
27
31
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'forwardable'
|
4
|
-
require 'cucumber/core/
|
4
|
+
require 'cucumber/core/test/doc_string'
|
5
5
|
|
6
6
|
module Cucumber
|
7
7
|
class Runtime
|
@@ -15,11 +15,13 @@ module Cucumber
|
|
15
15
|
attr_reader :support_code
|
16
16
|
|
17
17
|
def initialize(support_code, user_interface)
|
18
|
-
@support_code
|
18
|
+
@support_code = support_code
|
19
|
+
@user_interface = user_interface
|
19
20
|
end
|
20
21
|
|
21
22
|
def_delegators :@user_interface,
|
22
23
|
:embed,
|
24
|
+
:attach,
|
23
25
|
:ask,
|
24
26
|
:puts,
|
25
27
|
:features_paths,
|
@@ -3,8 +3,9 @@
|
|
3
3
|
module Cucumber
|
4
4
|
class Runtime
|
5
5
|
class StepHooks
|
6
|
-
def initialize(hooks)
|
6
|
+
def initialize(id_generator, hooks)
|
7
7
|
@hooks = hooks
|
8
|
+
@id_generator = id_generator
|
8
9
|
end
|
9
10
|
|
10
11
|
def apply(test_steps)
|
@@ -18,7 +19,7 @@ module Cucumber
|
|
18
19
|
def after_step_hooks(test_step)
|
19
20
|
@hooks.map do |hook|
|
20
21
|
action = ->(*args) { hook.invoke('AfterStep', [args, test_step]) }
|
21
|
-
Hooks.after_step_hook(
|
22
|
+
Hooks.after_step_hook(@id_generator.new_id, test_step, hook.location, &action)
|
22
23
|
end
|
23
24
|
end
|
24
25
|
end
|
@@ -22,19 +22,15 @@ module Cucumber
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def step(step)
|
25
|
-
location = Core::
|
25
|
+
location = Core::Test::Location.of_caller
|
26
26
|
@support_code.invoke_dynamic_step(step[:text], multiline_arg(step, location))
|
27
27
|
end
|
28
28
|
|
29
29
|
def multiline_arg(step, location)
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
MultilineArgument.from(argument[:content], location, argument[:content_type])
|
35
|
-
else
|
36
|
-
MultilineArgument::DataTable.from(argument[:rows].map { |row| row[:cells].map { |cell| cell[:value] } })
|
37
|
-
end
|
30
|
+
if !step[:doc_string].nil?
|
31
|
+
MultilineArgument.from(step[:doc_string][:content], location, step[:doc_string][:content_type])
|
32
|
+
elsif !step[:data_table].nil?
|
33
|
+
MultilineArgument::DataTable.from(step[:data_table][:rows].map { |row| row[:cells].map { |cell| cell[:value] } })
|
38
34
|
else
|
39
35
|
MultilineArgument.from(nil)
|
40
36
|
end
|
@@ -62,8 +58,8 @@ module Cucumber
|
|
62
58
|
# Given I have 8 cukes in my belly
|
63
59
|
# Then I should not be thirsty
|
64
60
|
# })
|
65
|
-
def invoke_dynamic_steps(steps_text,
|
66
|
-
parser = Cucumber::Gherkin::StepsParser.new(StepInvoker.new(self),
|
61
|
+
def invoke_dynamic_steps(steps_text, iso_code, _location)
|
62
|
+
parser = Cucumber::Gherkin::StepsParser.new(StepInvoker.new(self), iso_code)
|
67
63
|
parser.parse(steps_text)
|
68
64
|
end
|
69
65
|
|
@@ -108,26 +104,28 @@ module Cucumber
|
|
108
104
|
def find_after_step_hooks(test_case)
|
109
105
|
scenario = RunningTestCase.new(test_case)
|
110
106
|
hooks = registry.hooks_for(:after_step, scenario)
|
111
|
-
StepHooks.new hooks
|
107
|
+
StepHooks.new(@configuration.id_generator, hooks)
|
112
108
|
end
|
113
109
|
|
114
110
|
def apply_before_hooks(test_case)
|
111
|
+
return test_case if test_case.test_steps.empty?
|
115
112
|
scenario = RunningTestCase.new(test_case)
|
116
113
|
hooks = registry.hooks_for(:before, scenario)
|
117
|
-
BeforeHooks.new(hooks, scenario).apply_to(test_case)
|
114
|
+
BeforeHooks.new(@configuration.id_generator, hooks, scenario, @configuration.event_bus).apply_to(test_case)
|
118
115
|
end
|
119
116
|
|
120
117
|
def apply_after_hooks(test_case)
|
118
|
+
return test_case if test_case.test_steps.empty?
|
121
119
|
scenario = RunningTestCase.new(test_case)
|
122
120
|
hooks = registry.hooks_for(:after, scenario)
|
123
|
-
AfterHooks.new(hooks, scenario).apply_to(test_case)
|
121
|
+
AfterHooks.new(@configuration.id_generator, hooks, scenario, @configuration.event_bus).apply_to(test_case)
|
124
122
|
end
|
125
123
|
|
126
124
|
def find_around_hooks(test_case)
|
127
125
|
scenario = RunningTestCase.new(test_case)
|
128
126
|
|
129
127
|
registry.hooks_for(:around, scenario).map do |hook|
|
130
|
-
Hooks.around_hook
|
128
|
+
Hooks.around_hook do |run_scenario|
|
131
129
|
hook.invoke('Around', scenario, &run_scenario)
|
132
130
|
end
|
133
131
|
end
|
@@ -7,14 +7,6 @@ module Cucumber
|
|
7
7
|
module UserInterface
|
8
8
|
attr_writer :visitor
|
9
9
|
|
10
|
-
# Output +messages+ alongside the formatted output.
|
11
|
-
# This is an alternative to using Kernel#puts - it will display
|
12
|
-
# nicer, and in all outputs (in case you use several formatters)
|
13
|
-
#
|
14
|
-
def puts(*messages)
|
15
|
-
@visitor.puts(*messages)
|
16
|
-
end
|
17
|
-
|
18
10
|
# Suspends execution and prompts +question+ to the console (STDOUT).
|
19
11
|
# An operator (manual tester) can then enter a line of text and hit
|
20
12
|
# <ENTER>. The entered text is returned, and both +question+ and
|
@@ -48,20 +40,18 @@ module Cucumber
|
|
48
40
|
# be a path to a file, or if it's an image it may also be a Base64 encoded image.
|
49
41
|
# The embedded data may or may not be ignored, depending on what kind of formatter(s) are active.
|
50
42
|
#
|
51
|
-
def
|
52
|
-
@visitor.
|
43
|
+
def attach(src, media_type)
|
44
|
+
@visitor.attach(src, media_type)
|
53
45
|
end
|
54
46
|
|
55
47
|
private
|
56
48
|
|
57
49
|
def mri_gets(timeout_seconds)
|
58
|
-
|
59
|
-
|
60
|
-
STDIN.gets
|
61
|
-
end
|
62
|
-
rescue Timeout::Error
|
63
|
-
nil
|
50
|
+
Timeout.timeout(timeout_seconds) do
|
51
|
+
STDIN.gets
|
64
52
|
end
|
53
|
+
rescue Timeout::Error
|
54
|
+
nil
|
65
55
|
end
|
66
56
|
|
67
57
|
def jruby_gets(timeout_seconds)
|
@@ -9,11 +9,12 @@ module Cucumber
|
|
9
9
|
attr_reader :regexp_source, :location
|
10
10
|
|
11
11
|
def initialize(regexp_source, location)
|
12
|
-
@regexp_source
|
12
|
+
@regexp_source = regexp_source
|
13
|
+
@location = location
|
13
14
|
end
|
14
15
|
|
15
|
-
def eql?(
|
16
|
-
regexp_source ==
|
16
|
+
def eql?(other)
|
17
|
+
regexp_source == other.regexp_source && location == other.location
|
17
18
|
end
|
18
19
|
|
19
20
|
def hash
|
@@ -8,8 +8,8 @@ module Cucumber
|
|
8
8
|
@support_code.load_files_from_paths(configuration.autoload_code_paths)
|
9
9
|
end
|
10
10
|
|
11
|
-
def to_json
|
12
|
-
@support_code.step_definitions.map(&:to_hash).to_json
|
11
|
+
def to_json(obj = nil)
|
12
|
+
@support_code.step_definitions.map(&:to_hash).to_json(obj)
|
13
13
|
end
|
14
14
|
end
|
15
15
|
end
|
data/lib/cucumber/step_match.rb
CHANGED
@@ -9,7 +9,9 @@ module Cucumber
|
|
9
9
|
|
10
10
|
def initialize(step_definition, step_name, step_arguments)
|
11
11
|
raise "step_arguments can't be nil (but it can be an empty array)" if step_arguments.nil?
|
12
|
-
@step_definition
|
12
|
+
@step_definition = step_definition
|
13
|
+
@name_to_match = step_name
|
14
|
+
@step_arguments = step_arguments
|
13
15
|
end
|
14
16
|
|
15
17
|
def args
|
@@ -21,7 +23,7 @@ module Cucumber
|
|
21
23
|
|
22
24
|
def activate(test_step)
|
23
25
|
test_step.with_action(@step_definition.location) do
|
24
|
-
invoke(MultilineArgument.from_core(test_step.
|
26
|
+
invoke(MultilineArgument.from_core(test_step.multiline_arg))
|
25
27
|
end
|
26
28
|
end
|
27
29
|
|
@@ -46,7 +48,7 @@ module Cucumber
|
|
46
48
|
#
|
47
49
|
# lambda { |param| "[#{param}]" }
|
48
50
|
#
|
49
|
-
def format_args(format =
|
51
|
+
def format_args(format = ->(a) { a }, &proc)
|
50
52
|
replace_arguments(@name_to_match, @step_arguments, format, &proc)
|
51
53
|
end
|
52
54
|
|
@@ -75,7 +77,7 @@ module Cucumber
|
|
75
77
|
|
76
78
|
replacement = if block_given?
|
77
79
|
yield(group.value)
|
78
|
-
elsif Proc
|
80
|
+
elsif Proc == format.class
|
79
81
|
format.call(group.value)
|
80
82
|
else
|
81
83
|
format % group.value
|
@@ -95,13 +97,13 @@ module Cucumber
|
|
95
97
|
private
|
96
98
|
|
97
99
|
def deep_clone_args
|
98
|
-
Marshal.load(
|
100
|
+
Marshal.load(Marshal.dump(args))
|
99
101
|
end
|
100
102
|
end
|
101
103
|
|
102
104
|
class SkippingStepMatch
|
103
105
|
def activate(test_step)
|
104
|
-
|
106
|
+
test_step.with_action { raise Core::Test::Result::Skipped }
|
105
107
|
end
|
106
108
|
end
|
107
109
|
|
@@ -123,8 +125,7 @@ module Cucumber
|
|
123
125
|
end
|
124
126
|
|
125
127
|
def file_colon_line
|
126
|
-
|
127
|
-
@step.file_colon_line
|
128
|
+
location.to_s
|
128
129
|
end
|
129
130
|
|
130
131
|
def backtrace_line
|
@@ -132,7 +133,7 @@ module Cucumber
|
|
132
133
|
end
|
133
134
|
|
134
135
|
def text_length
|
135
|
-
@step.
|
136
|
+
@step.text.length
|
136
137
|
end
|
137
138
|
|
138
139
|
def step_arguments
|
@@ -141,7 +142,7 @@ module Cucumber
|
|
141
142
|
|
142
143
|
def activate(test_step)
|
143
144
|
# noop
|
144
|
-
|
145
|
+
test_step
|
145
146
|
end
|
146
147
|
end
|
147
148
|
|
@@ -151,7 +152,7 @@ module Cucumber
|
|
151
152
|
end
|
152
153
|
|
153
154
|
def activate(test_step)
|
154
|
-
|
155
|
+
test_step.with_action { raise @error }
|
155
156
|
end
|
156
157
|
end
|
157
158
|
end
|
@@ -35,7 +35,7 @@ module Cucumber
|
|
35
35
|
[:on_magenta, 45],
|
36
36
|
[:on_cyan, 46],
|
37
37
|
[:on_white, 47]
|
38
|
-
]
|
38
|
+
].freeze
|
39
39
|
|
40
40
|
ATTRIBUTE_NAMES = ATTRIBUTES.transpose.first
|
41
41
|
# :startdoc:
|
@@ -54,8 +54,9 @@ module Cucumber
|
|
54
54
|
end
|
55
55
|
self.coloring = true
|
56
56
|
|
57
|
+
# rubocop:disable Security/Eval
|
57
58
|
ATTRIBUTES.each do |c, v|
|
58
|
-
eval
|
59
|
+
eval <<-END_EVAL, binding, __FILE__, __LINE__ + 1
|
59
60
|
def #{c}(string = nil)
|
60
61
|
result = String.new
|
61
62
|
result << "\e[#{v}m" if Cucumber::Term::ANSIColor.coloring?
|
@@ -71,23 +72,23 @@ module Cucumber
|
|
71
72
|
result << "\e[0m" if Cucumber::Term::ANSIColor.coloring?
|
72
73
|
result
|
73
74
|
end
|
74
|
-
|
75
|
+
END_EVAL
|
75
76
|
end
|
77
|
+
# rubocop:enable Security/Eval
|
76
78
|
|
77
79
|
# Regular expression that is used to scan for ANSI-sequences while
|
78
80
|
# uncoloring strings.
|
79
81
|
COLORED_REGEXP = /\e\[(?:[34][0-7]|[0-9])?m/
|
80
82
|
|
81
83
|
def self.included(klass)
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
end
|
84
|
+
return unless klass == String
|
85
|
+
ATTRIBUTES.delete(:clear)
|
86
|
+
ATTRIBUTE_NAMES.delete(:clear)
|
86
87
|
end
|
87
88
|
|
88
89
|
# Returns an uncolored version of the string, that is all
|
89
90
|
# ANSI-sequences are stripped from the string.
|
90
|
-
def uncolored(string = nil)
|
91
|
+
def uncolored(string = nil)
|
91
92
|
if block_given?
|
92
93
|
yield.gsub(COLORED_REGEXP, '')
|
93
94
|
elsif string
|
@@ -105,7 +106,6 @@ module Cucumber
|
|
105
106
|
def attributes
|
106
107
|
ATTRIBUTE_NAMES
|
107
108
|
end
|
108
|
-
extend self
|
109
109
|
end
|
110
110
|
end
|
111
111
|
end
|
data/lib/cucumber/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
4.0.0
|
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:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aslak Hellesøy
|
@@ -10,308 +10,442 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2020-06-02 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: builder
|
17
17
|
requirement: !ruby/object:Gem::Requirement
|
18
18
|
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '3.2'
|
19
22
|
- - ">="
|
20
23
|
- !ruby/object:Gem::Version
|
21
|
-
version: 2.
|
24
|
+
version: 3.2.3
|
22
25
|
type: :runtime
|
23
26
|
prerelease: false
|
24
27
|
version_requirements: !ruby/object:Gem::Requirement
|
25
28
|
requirements:
|
29
|
+
- - "~>"
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: '3.2'
|
26
32
|
- - ">="
|
27
33
|
- !ruby/object:Gem::Version
|
28
|
-
version: 2.
|
34
|
+
version: 3.2.3
|
29
35
|
- !ruby/object:Gem::Dependency
|
30
36
|
name: cucumber-core
|
31
37
|
requirement: !ruby/object:Gem::Requirement
|
32
38
|
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: 7.0.0
|
33
42
|
- - "~>"
|
34
43
|
- !ruby/object:Gem::Version
|
35
|
-
version:
|
44
|
+
version: '7.0'
|
36
45
|
type: :runtime
|
37
46
|
prerelease: false
|
38
47
|
version_requirements: !ruby/object:Gem::Requirement
|
39
48
|
requirements:
|
49
|
+
- - ">="
|
50
|
+
- !ruby/object:Gem::Version
|
51
|
+
version: 7.0.0
|
40
52
|
- - "~>"
|
41
53
|
- !ruby/object:Gem::Version
|
42
|
-
version:
|
54
|
+
version: '7.0'
|
43
55
|
- !ruby/object:Gem::Dependency
|
44
|
-
name: cucumber-expressions
|
56
|
+
name: cucumber-cucumber-expressions
|
45
57
|
requirement: !ruby/object:Gem::Requirement
|
46
58
|
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 10.1.0
|
47
62
|
- - "~>"
|
48
63
|
- !ruby/object:Gem::Version
|
49
|
-
version:
|
64
|
+
version: '10.1'
|
50
65
|
type: :runtime
|
51
66
|
prerelease: false
|
52
67
|
version_requirements: !ruby/object:Gem::Requirement
|
53
68
|
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: 10.1.0
|
54
72
|
- - "~>"
|
55
73
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
74
|
+
version: '10.1'
|
57
75
|
- !ruby/object:Gem::Dependency
|
58
|
-
name: cucumber-
|
76
|
+
name: cucumber-gherkin
|
59
77
|
requirement: !ruby/object:Gem::Requirement
|
60
78
|
requirements:
|
79
|
+
- - ">="
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: 13.0.0
|
61
82
|
- - "~>"
|
62
83
|
- !ruby/object:Gem::Version
|
63
|
-
version:
|
84
|
+
version: '13.0'
|
64
85
|
type: :runtime
|
65
86
|
prerelease: false
|
66
87
|
version_requirements: !ruby/object:Gem::Requirement
|
67
88
|
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: 13.0.0
|
68
92
|
- - "~>"
|
69
93
|
- !ruby/object:Gem::Version
|
70
|
-
version:
|
94
|
+
version: '13.0'
|
71
95
|
- !ruby/object:Gem::Dependency
|
72
|
-
name:
|
96
|
+
name: cucumber-html-formatter
|
73
97
|
requirement: !ruby/object:Gem::Requirement
|
74
98
|
requirements:
|
75
99
|
- - "~>"
|
76
100
|
- !ruby/object:Gem::Version
|
77
|
-
version: '
|
101
|
+
version: '6.0'
|
102
|
+
- - ">="
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: 6.0.1
|
78
105
|
type: :runtime
|
79
106
|
prerelease: false
|
80
107
|
version_requirements: !ruby/object:Gem::Requirement
|
81
108
|
requirements:
|
82
109
|
- - "~>"
|
83
110
|
- !ruby/object:Gem::Version
|
84
|
-
version: '
|
111
|
+
version: '6.0'
|
112
|
+
- - ">="
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: 6.0.1
|
85
115
|
- !ruby/object:Gem::Dependency
|
86
|
-
name:
|
116
|
+
name: cucumber-messages
|
87
117
|
requirement: !ruby/object:Gem::Requirement
|
88
118
|
requirements:
|
89
119
|
- - "~>"
|
90
120
|
- !ruby/object:Gem::Version
|
91
|
-
version:
|
121
|
+
version: '12.1'
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 12.1.1
|
92
125
|
type: :runtime
|
93
126
|
prerelease: false
|
94
127
|
version_requirements: !ruby/object:Gem::Requirement
|
95
128
|
requirements:
|
96
129
|
- - "~>"
|
97
130
|
- !ruby/object:Gem::Version
|
98
|
-
version:
|
131
|
+
version: '12.1'
|
132
|
+
- - ">="
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: 12.1.1
|
99
135
|
- !ruby/object:Gem::Dependency
|
100
|
-
name:
|
136
|
+
name: cucumber-wire
|
101
137
|
requirement: !ruby/object:Gem::Requirement
|
102
138
|
requirements:
|
103
139
|
- - ">="
|
104
140
|
- !ruby/object:Gem::Version
|
105
|
-
version:
|
106
|
-
- - "
|
141
|
+
version: 3.0.0
|
142
|
+
- - "~>"
|
107
143
|
- !ruby/object:Gem::Version
|
108
|
-
version: '
|
144
|
+
version: '3.0'
|
109
145
|
type: :runtime
|
110
146
|
prerelease: false
|
111
147
|
version_requirements: !ruby/object:Gem::Requirement
|
112
148
|
requirements:
|
113
149
|
- - ">="
|
114
150
|
- !ruby/object:Gem::Version
|
115
|
-
version:
|
116
|
-
- - "
|
151
|
+
version: 3.0.0
|
152
|
+
- - "~>"
|
117
153
|
- !ruby/object:Gem::Version
|
118
|
-
version: '
|
154
|
+
version: '3.0'
|
119
155
|
- !ruby/object:Gem::Dependency
|
120
|
-
name:
|
156
|
+
name: diff-lcs
|
121
157
|
requirement: !ruby/object:Gem::Requirement
|
122
158
|
requirements:
|
123
159
|
- - ">="
|
124
160
|
- !ruby/object:Gem::Version
|
125
|
-
version:
|
161
|
+
version: '1.3'
|
162
|
+
- - "~>"
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '1.3'
|
126
165
|
type: :runtime
|
127
166
|
prerelease: false
|
128
167
|
version_requirements: !ruby/object:Gem::Requirement
|
129
168
|
requirements:
|
130
169
|
- - ">="
|
131
170
|
- !ruby/object:Gem::Version
|
132
|
-
version:
|
171
|
+
version: '1.3'
|
172
|
+
- - "~>"
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: '1.3'
|
133
175
|
- !ruby/object:Gem::Dependency
|
134
|
-
name:
|
176
|
+
name: multi_test
|
135
177
|
requirement: !ruby/object:Gem::Requirement
|
136
178
|
requirements:
|
137
179
|
- - "~>"
|
138
180
|
- !ruby/object:Gem::Version
|
139
|
-
version: 0.
|
140
|
-
|
181
|
+
version: '0.1'
|
182
|
+
- - ">="
|
183
|
+
- !ruby/object:Gem::Version
|
184
|
+
version: 0.1.2
|
185
|
+
type: :runtime
|
141
186
|
prerelease: false
|
142
187
|
version_requirements: !ruby/object:Gem::Requirement
|
143
188
|
requirements:
|
144
189
|
- - "~>"
|
145
190
|
- !ruby/object:Gem::Version
|
146
|
-
version: 0.
|
191
|
+
version: '0.1'
|
192
|
+
- - ">="
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: 0.1.2
|
147
195
|
- !ruby/object:Gem::Dependency
|
148
|
-
name:
|
196
|
+
name: sys-uname
|
149
197
|
requirement: !ruby/object:Gem::Requirement
|
150
198
|
requirements:
|
151
199
|
- - "~>"
|
152
200
|
- !ruby/object:Gem::Version
|
153
|
-
version: 1.
|
154
|
-
|
201
|
+
version: '1.0'
|
202
|
+
- - ">="
|
203
|
+
- !ruby/object:Gem::Version
|
204
|
+
version: 1.0.2
|
205
|
+
type: :runtime
|
155
206
|
prerelease: false
|
156
207
|
version_requirements: !ruby/object:Gem::Requirement
|
157
208
|
requirements:
|
158
209
|
- - "~>"
|
159
210
|
- !ruby/object:Gem::Version
|
160
|
-
version: 1.
|
211
|
+
version: '1.0'
|
212
|
+
- - ">="
|
213
|
+
- !ruby/object:Gem::Version
|
214
|
+
version: 1.0.2
|
161
215
|
- !ruby/object:Gem::Dependency
|
162
216
|
name: nokogiri
|
163
217
|
requirement: !ruby/object:Gem::Requirement
|
164
218
|
requirements:
|
165
219
|
- - "~>"
|
166
220
|
- !ruby/object:Gem::Version
|
167
|
-
version: 1.
|
221
|
+
version: '1.10'
|
222
|
+
- - ">="
|
223
|
+
- !ruby/object:Gem::Version
|
224
|
+
version: 1.10.4
|
168
225
|
type: :development
|
169
226
|
prerelease: false
|
170
227
|
version_requirements: !ruby/object:Gem::Requirement
|
171
228
|
requirements:
|
172
229
|
- - "~>"
|
173
230
|
- !ruby/object:Gem::Version
|
174
|
-
version: 1.
|
231
|
+
version: '1.10'
|
232
|
+
- - ">="
|
233
|
+
- !ruby/object:Gem::Version
|
234
|
+
version: 1.10.4
|
175
235
|
- !ruby/object:Gem::Dependency
|
176
236
|
name: pry
|
177
237
|
requirement: !ruby/object:Gem::Requirement
|
178
238
|
requirements:
|
239
|
+
- - "~>"
|
240
|
+
- !ruby/object:Gem::Version
|
241
|
+
version: '0.12'
|
179
242
|
- - ">="
|
180
243
|
- !ruby/object:Gem::Version
|
181
|
-
version:
|
244
|
+
version: 0.12.2
|
182
245
|
type: :development
|
183
246
|
prerelease: false
|
184
247
|
version_requirements: !ruby/object:Gem::Requirement
|
185
248
|
requirements:
|
249
|
+
- - "~>"
|
250
|
+
- !ruby/object:Gem::Version
|
251
|
+
version: '0.12'
|
186
252
|
- - ">="
|
187
253
|
- !ruby/object:Gem::Version
|
188
|
-
version:
|
254
|
+
version: 0.12.2
|
189
255
|
- !ruby/object:Gem::Dependency
|
190
256
|
name: rake
|
191
257
|
requirement: !ruby/object:Gem::Requirement
|
192
258
|
requirements:
|
259
|
+
- - "~>"
|
260
|
+
- !ruby/object:Gem::Version
|
261
|
+
version: '12.3'
|
193
262
|
- - ">="
|
194
263
|
- !ruby/object:Gem::Version
|
195
|
-
version:
|
264
|
+
version: 12.3.3
|
196
265
|
type: :development
|
197
266
|
prerelease: false
|
198
267
|
version_requirements: !ruby/object:Gem::Requirement
|
199
268
|
requirements:
|
269
|
+
- - "~>"
|
270
|
+
- !ruby/object:Gem::Version
|
271
|
+
version: '12.3'
|
200
272
|
- - ">="
|
201
273
|
- !ruby/object:Gem::Version
|
202
|
-
version:
|
274
|
+
version: 12.3.3
|
203
275
|
- !ruby/object:Gem::Dependency
|
204
276
|
name: rspec
|
205
277
|
requirement: !ruby/object:Gem::Requirement
|
206
278
|
requirements:
|
207
279
|
- - ">="
|
208
280
|
- !ruby/object:Gem::Version
|
209
|
-
version:
|
281
|
+
version: 3.8.0
|
282
|
+
- - "~>"
|
283
|
+
- !ruby/object:Gem::Version
|
284
|
+
version: '3.8'
|
210
285
|
type: :development
|
211
286
|
prerelease: false
|
212
287
|
version_requirements: !ruby/object:Gem::Requirement
|
213
288
|
requirements:
|
214
289
|
- - ">="
|
215
290
|
- !ruby/object:Gem::Version
|
216
|
-
version:
|
291
|
+
version: 3.8.0
|
292
|
+
- - "~>"
|
293
|
+
- !ruby/object:Gem::Version
|
294
|
+
version: '3.8'
|
217
295
|
- !ruby/object:Gem::Dependency
|
218
|
-
name:
|
296
|
+
name: simplecov
|
219
297
|
requirement: !ruby/object:Gem::Requirement
|
220
298
|
requirements:
|
299
|
+
- - ">="
|
300
|
+
- !ruby/object:Gem::Version
|
301
|
+
version: 0.17.0
|
221
302
|
- - "~>"
|
222
303
|
- !ruby/object:Gem::Version
|
223
|
-
version: 0.
|
304
|
+
version: '0.17'
|
224
305
|
type: :development
|
225
306
|
prerelease: false
|
226
307
|
version_requirements: !ruby/object:Gem::Requirement
|
227
308
|
requirements:
|
309
|
+
- - ">="
|
310
|
+
- !ruby/object:Gem::Version
|
311
|
+
version: 0.17.0
|
228
312
|
- - "~>"
|
229
313
|
- !ruby/object:Gem::Version
|
230
|
-
version: 0.
|
314
|
+
version: '0.17'
|
231
315
|
- !ruby/object:Gem::Dependency
|
232
|
-
name:
|
316
|
+
name: syntax
|
233
317
|
requirement: !ruby/object:Gem::Requirement
|
234
318
|
requirements:
|
319
|
+
- - "~>"
|
320
|
+
- !ruby/object:Gem::Version
|
321
|
+
version: '1.2'
|
235
322
|
- - ">="
|
236
323
|
- !ruby/object:Gem::Version
|
237
|
-
version:
|
324
|
+
version: 1.2.2
|
238
325
|
type: :development
|
239
326
|
prerelease: false
|
240
327
|
version_requirements: !ruby/object:Gem::Requirement
|
241
328
|
requirements:
|
329
|
+
- - "~>"
|
330
|
+
- !ruby/object:Gem::Version
|
331
|
+
version: '1.2'
|
242
332
|
- - ">="
|
243
333
|
- !ruby/object:Gem::Version
|
244
|
-
version:
|
334
|
+
version: 1.2.2
|
245
335
|
- !ruby/object:Gem::Dependency
|
246
|
-
name:
|
336
|
+
name: test-unit
|
247
337
|
requirement: !ruby/object:Gem::Requirement
|
248
338
|
requirements:
|
339
|
+
- - "~>"
|
340
|
+
- !ruby/object:Gem::Version
|
341
|
+
version: '1.2'
|
249
342
|
- - ">="
|
250
343
|
- !ruby/object:Gem::Version
|
251
|
-
version: 1.
|
344
|
+
version: 1.2.3
|
252
345
|
type: :development
|
253
346
|
prerelease: false
|
254
347
|
version_requirements: !ruby/object:Gem::Requirement
|
255
348
|
requirements:
|
349
|
+
- - "~>"
|
350
|
+
- !ruby/object:Gem::Version
|
351
|
+
version: '1.2'
|
256
352
|
- - ">="
|
257
353
|
- !ruby/object:Gem::Version
|
258
|
-
version: 1.
|
354
|
+
version: 1.2.3
|
259
355
|
- !ruby/object:Gem::Dependency
|
260
|
-
name:
|
356
|
+
name: webrick
|
261
357
|
requirement: !ruby/object:Gem::Requirement
|
262
358
|
requirements:
|
263
359
|
- - ">="
|
264
360
|
- !ruby/object:Gem::Version
|
265
|
-
version:
|
361
|
+
version: 1.6.0
|
362
|
+
- - "~>"
|
363
|
+
- !ruby/object:Gem::Version
|
364
|
+
version: '1.6'
|
266
365
|
type: :development
|
267
366
|
prerelease: false
|
268
367
|
version_requirements: !ruby/object:Gem::Requirement
|
269
368
|
requirements:
|
270
369
|
- - ">="
|
271
370
|
- !ruby/object:Gem::Version
|
272
|
-
version:
|
371
|
+
version: 1.6.0
|
372
|
+
- - "~>"
|
373
|
+
- !ruby/object:Gem::Version
|
374
|
+
version: '1.6'
|
273
375
|
- !ruby/object:Gem::Dependency
|
274
|
-
name:
|
376
|
+
name: octokit
|
275
377
|
requirement: !ruby/object:Gem::Requirement
|
276
378
|
requirements:
|
277
379
|
- - ">="
|
278
380
|
- !ruby/object:Gem::Version
|
279
|
-
version:
|
381
|
+
version: 4.14.0
|
382
|
+
- - "~>"
|
383
|
+
- !ruby/object:Gem::Version
|
384
|
+
version: '4.14'
|
280
385
|
type: :development
|
281
386
|
prerelease: false
|
282
387
|
version_requirements: !ruby/object:Gem::Requirement
|
283
388
|
requirements:
|
284
389
|
- - ">="
|
285
390
|
- !ruby/object:Gem::Version
|
286
|
-
version:
|
391
|
+
version: 4.14.0
|
392
|
+
- - "~>"
|
393
|
+
- !ruby/object:Gem::Version
|
394
|
+
version: '4.14'
|
287
395
|
- !ruby/object:Gem::Dependency
|
288
396
|
name: rack-test
|
289
397
|
requirement: !ruby/object:Gem::Requirement
|
290
398
|
requirements:
|
291
399
|
- - ">="
|
292
400
|
- !ruby/object:Gem::Version
|
293
|
-
version:
|
401
|
+
version: 1.1.0
|
402
|
+
- - "~>"
|
403
|
+
- !ruby/object:Gem::Version
|
404
|
+
version: '1.1'
|
294
405
|
type: :development
|
295
406
|
prerelease: false
|
296
407
|
version_requirements: !ruby/object:Gem::Requirement
|
297
408
|
requirements:
|
298
409
|
- - ">="
|
299
410
|
- !ruby/object:Gem::Version
|
300
|
-
version:
|
411
|
+
version: 1.1.0
|
412
|
+
- - "~>"
|
413
|
+
- !ruby/object:Gem::Version
|
414
|
+
version: '1.1'
|
301
415
|
- !ruby/object:Gem::Dependency
|
302
416
|
name: sinatra
|
303
417
|
requirement: !ruby/object:Gem::Requirement
|
304
418
|
requirements:
|
419
|
+
- - "~>"
|
420
|
+
- !ruby/object:Gem::Version
|
421
|
+
version: '2.0'
|
305
422
|
- - ">="
|
306
423
|
- !ruby/object:Gem::Version
|
307
|
-
version:
|
424
|
+
version: 2.0.5
|
308
425
|
type: :development
|
309
426
|
prerelease: false
|
310
427
|
version_requirements: !ruby/object:Gem::Requirement
|
311
428
|
requirements:
|
429
|
+
- - "~>"
|
430
|
+
- !ruby/object:Gem::Version
|
431
|
+
version: '2.0'
|
312
432
|
- - ">="
|
313
433
|
- !ruby/object:Gem::Version
|
314
|
-
version:
|
434
|
+
version: 2.0.5
|
435
|
+
- !ruby/object:Gem::Dependency
|
436
|
+
name: capybara
|
437
|
+
requirement: !ruby/object:Gem::Requirement
|
438
|
+
requirements:
|
439
|
+
- - '='
|
440
|
+
- !ruby/object:Gem::Version
|
441
|
+
version: 3.15.0
|
442
|
+
type: :development
|
443
|
+
prerelease: false
|
444
|
+
version_requirements: !ruby/object:Gem::Requirement
|
445
|
+
requirements:
|
446
|
+
- - '='
|
447
|
+
- !ruby/object:Gem::Version
|
448
|
+
version: 3.15.0
|
315
449
|
description: Behaviour Driven Development with elegance and joy
|
316
450
|
email: cukes@googlegroups.com
|
317
451
|
executables:
|
@@ -345,16 +479,22 @@ files:
|
|
345
479
|
- lib/cucumber/encoding.rb
|
346
480
|
- lib/cucumber/errors.rb
|
347
481
|
- lib/cucumber/events.rb
|
348
|
-
- lib/cucumber/events/
|
482
|
+
- lib/cucumber/events/envelope.rb
|
483
|
+
- lib/cucumber/events/gherkin_source_parsed.rb
|
349
484
|
- lib/cucumber/events/gherkin_source_read.rb
|
485
|
+
- lib/cucumber/events/hook_test_step_created.rb
|
350
486
|
- lib/cucumber/events/step_activated.rb
|
351
487
|
- lib/cucumber/events/step_definition_registered.rb
|
488
|
+
- lib/cucumber/events/test_case_created.rb
|
352
489
|
- lib/cucumber/events/test_case_finished.rb
|
490
|
+
- lib/cucumber/events/test_case_ready.rb
|
353
491
|
- lib/cucumber/events/test_case_started.rb
|
354
492
|
- lib/cucumber/events/test_run_finished.rb
|
355
493
|
- lib/cucumber/events/test_run_started.rb
|
494
|
+
- lib/cucumber/events/test_step_created.rb
|
356
495
|
- lib/cucumber/events/test_step_finished.rb
|
357
496
|
- lib/cucumber/events/test_step_started.rb
|
497
|
+
- lib/cucumber/events/undefined_parameter_type.rb
|
358
498
|
- lib/cucumber/file_specs.rb
|
359
499
|
- lib/cucumber/filters.rb
|
360
500
|
- lib/cucumber/filters/activate_steps.rb
|
@@ -362,6 +502,7 @@ files:
|
|
362
502
|
- lib/cucumber/filters/apply_after_step_hooks.rb
|
363
503
|
- lib/cucumber/filters/apply_around_hooks.rb
|
364
504
|
- lib/cucumber/filters/apply_before_hooks.rb
|
505
|
+
- lib/cucumber/filters/broadcast_test_case_ready_event.rb
|
365
506
|
- lib/cucumber/filters/broadcast_test_run_started_event.rb
|
366
507
|
- lib/cucumber/filters/gated_receiver.rb
|
367
508
|
- lib/cucumber/filters/prepare_world.rb
|
@@ -372,34 +513,32 @@ files:
|
|
372
513
|
- lib/cucumber/filters/tag_limits/test_case_index.rb
|
373
514
|
- lib/cucumber/filters/tag_limits/verifier.rb
|
374
515
|
- lib/cucumber/formatter/ansicolor.rb
|
375
|
-
- lib/cucumber/formatter/ast_lookup.rb
|
516
|
+
- lib/cucumber/formatter/ast_lookup.rb
|
376
517
|
- lib/cucumber/formatter/backtrace_filter.rb
|
377
518
|
- lib/cucumber/formatter/console.rb
|
378
519
|
- lib/cucumber/formatter/console_counts.rb
|
379
520
|
- lib/cucumber/formatter/console_issues.rb
|
380
|
-
- lib/cucumber/formatter/cucumber.css
|
381
|
-
- lib/cucumber/formatter/cucumber.sass
|
382
521
|
- lib/cucumber/formatter/duration.rb
|
383
522
|
- lib/cucumber/formatter/duration_extractor.rb
|
523
|
+
- lib/cucumber/formatter/errors.rb
|
384
524
|
- lib/cucumber/formatter/fail_fast.rb
|
385
525
|
- lib/cucumber/formatter/fanout.rb
|
386
|
-
- lib/cucumber/formatter/hook_query_visitor.rb
|
387
526
|
- lib/cucumber/formatter/html.rb
|
388
|
-
- lib/cucumber/formatter/
|
527
|
+
- lib/cucumber/formatter/http_io.rb
|
389
528
|
- lib/cucumber/formatter/ignore_missing_messages.rb
|
390
|
-
- lib/cucumber/formatter/inline-js.js
|
391
529
|
- lib/cucumber/formatter/interceptor.rb
|
392
530
|
- lib/cucumber/formatter/io.rb
|
393
|
-
- lib/cucumber/formatter/jquery-min.js
|
394
531
|
- lib/cucumber/formatter/json.rb
|
395
|
-
- lib/cucumber/formatter/json_pretty.rb
|
396
532
|
- lib/cucumber/formatter/junit.rb
|
397
|
-
- lib/cucumber/formatter/
|
398
|
-
- lib/cucumber/formatter/
|
399
|
-
- lib/cucumber/formatter/legacy_api/results.rb
|
400
|
-
- lib/cucumber/formatter/legacy_api/runtime_facade.rb
|
533
|
+
- lib/cucumber/formatter/message.rb
|
534
|
+
- lib/cucumber/formatter/message_builder.rb
|
401
535
|
- lib/cucumber/formatter/pretty.rb
|
402
536
|
- lib/cucumber/formatter/progress.rb
|
537
|
+
- lib/cucumber/formatter/query/hook_by_test_step.rb
|
538
|
+
- lib/cucumber/formatter/query/pickle_by_test.rb
|
539
|
+
- lib/cucumber/formatter/query/pickle_step_by_test_step.rb
|
540
|
+
- lib/cucumber/formatter/query/step_definitions_by_test_step.rb
|
541
|
+
- lib/cucumber/formatter/query/test_case_started_by_test_case.rb
|
403
542
|
- lib/cucumber/formatter/rerun.rb
|
404
543
|
- lib/cucumber/formatter/stepdefs.rb
|
405
544
|
- lib/cucumber/formatter/steps.rb
|
@@ -438,7 +577,6 @@ files:
|
|
438
577
|
- lib/cucumber/runtime/step_hooks.rb
|
439
578
|
- lib/cucumber/runtime/support_code.rb
|
440
579
|
- lib/cucumber/runtime/user_interface.rb
|
441
|
-
- lib/cucumber/step_argument.rb
|
442
580
|
- lib/cucumber/step_definition_light.rb
|
443
581
|
- lib/cucumber/step_definitions.rb
|
444
582
|
- lib/cucumber/step_match.rb
|
@@ -450,7 +588,12 @@ files:
|
|
450
588
|
homepage: https://cucumber.io/
|
451
589
|
licenses:
|
452
590
|
- MIT
|
453
|
-
metadata:
|
591
|
+
metadata:
|
592
|
+
bug_tracker_uri: https://github.com/cucumber/cucumber-ruby/issues
|
593
|
+
changelog_uri: https://github.com/cucumber/cucumber-ruby/blob/master/CHANGELOG.md
|
594
|
+
documentation_uri: https://www.rubydoc.info/github/cucumber/cucumber-ruby/
|
595
|
+
mailing_list_uri: https://groups.google.com/forum/#!forum/cukes
|
596
|
+
source_code_uri: https://github.com/cucumber/cucumber-ruby
|
454
597
|
post_install_message:
|
455
598
|
rdoc_options:
|
456
599
|
- "--charset=UTF-8"
|
@@ -460,16 +603,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
460
603
|
requirements:
|
461
604
|
- - ">="
|
462
605
|
- !ruby/object:Gem::Version
|
463
|
-
version: '2.
|
606
|
+
version: '2.3'
|
464
607
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
465
608
|
requirements:
|
466
609
|
- - ">="
|
467
610
|
- !ruby/object:Gem::Version
|
468
611
|
version: '0'
|
469
612
|
requirements: []
|
470
|
-
|
471
|
-
rubygems_version: 2.5.2
|
613
|
+
rubygems_version: 3.0.6
|
472
614
|
signing_key:
|
473
615
|
specification_version: 4
|
474
|
-
summary: cucumber-
|
616
|
+
summary: cucumber-4.0.0
|
475
617
|
test_files: []
|