cucumber-wire 6.2.0 → 6.2.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1fd0ef9db88f635f118ea111bfcacf07c78c9ba12188bf9665f1295b1a62c109
4
- data.tar.gz: d6711c945d6dc8d73df55acd712857ccea77f1ef61cbdc31acedda8f7f159236
3
+ metadata.gz: 130cb3e95181e3075510187b0744f75c054ee7262cd959d702cf46530b933ea3
4
+ data.tar.gz: 80ca9b30f9a5eab812757808107fdb84560538fb96cc896c7b70278038f95a4d
5
5
  SHA512:
6
- metadata.gz: 3f8e6bfcdd0864a50bf3213cbe4704308100fa67affdf4cb945646433bf9f3434d943dfb04429f15a1be8c12b3ada3f2bea39f750ea2b5f4f693063180fb7c2c
7
- data.tar.gz: b19e74fb0b2ed1ed30fd0fb027569982f67128bc749e7d006eec7cf7e54607651a07a83e9fa0f5f19d64596172308481b04c222712dcab94fc92901745223306
6
+ metadata.gz: a4071edb6e2ee0ebafee6ed6be51ab2d5c04683ce1eaacd475c0f4db55ee6a18a16cf13b5e6f7e44a70c8969de4e30fbd9a872f8124bc280c94be274fc06bf9d
7
+ data.tar.gz: 3010136c5cda24d87f1bca45e8d13a0839505d5e74f8a66df6b63e0318ac79d816f30c4a11b94665182e399107b5476bb5ba4b2375419e5c0e6a1852375e055b
data/CHANGELOG.md CHANGED
@@ -18,6 +18,16 @@ Please visit [cucumber/CONTRIBUTING.md](https://github.com/cucumber/cucumber/blo
18
18
 
19
19
  ### Removed
20
20
 
21
+ ## [6.2.1]
22
+
23
+ ### Fixed
24
+
25
+ - Fix usage with message-related formatters like the html formatter
26
+ ([PR#57](https://github.com/cucumber/cucumber-ruby-wire/pull/57)
27
+ [Issue#56](https://github.com/cucumber/cucumber-ruby-wire/issues/56))
28
+
29
+ - Removed dependency to cucumber-messages
30
+
21
31
  ## [6.2.0]
22
32
 
23
33
  ### Changed
@@ -107,7 +117,8 @@ is a risk of regressions.
107
117
  - Changes to work with a modern Cucumber-Ruby ([#14](https://github.com/cucumber/cucumber-ruby-wire/pull/14) [brasmusson](https://github.com/brasmusson))
108
118
  - Adapt to the move of Location to Cucumber::Core::Test ([#14](https://github.com/cucumber/cucumber-ruby-wire/pull/14) [brasmusson](https://github.com/brasmusson))
109
119
 
110
- [Unreleased]: https://github.com/cucumber/cucumber-ruby-wire/compare/v6.2.0...main
120
+ [Unreleased]: https://github.com/cucumber/cucumber-ruby-wire/compare/v6.2.1...main
121
+ [6.2.1]: https://github.com/cucumber/cucumber-ruby-wire/compare/v6.2.0...v6.2.1
111
122
  [6.2.0]: https://github.com/cucumber/cucumber-ruby-wire/compare/v6.1.1...v6.2.0
112
123
  [6.1.1]: https://github.com/cucumber/cucumber-ruby-wire/compare/v6.1.0...v6.1.1
113
124
  [6.1.0]: https://github.com/cucumber/cucumber-ruby-wire/compare/v6.0.1...v6.1.0
@@ -1,5 +1,4 @@
1
1
  # coding: utf-8
2
- require 'cucumber/messages'
3
2
 
4
3
  module Cucumber
5
4
  module Wire
@@ -13,19 +12,45 @@ module Cucumber
13
12
  def before_hook(test_case)
14
13
  # TODO: is this dependency on Cucumber::Hooks OK? Feels a bit internal..
15
14
  # TODO: how do we express the location of the hook? Should we create one hook per connection so we can use the host:port of the connection?
16
- Cucumber::Hooks.before_hook(id_generator.new_id, Core::Test::Location.new('TODO:wire')) do
17
- connections.begin_scenario(test_case)
18
- end
15
+
16
+ hook = instanciate_wire_hook(:begin_scenario)
17
+ action = ->(result) { hook.invoke('Before', [Cucumber::RunningTestCase.new(test_case).with_result(result), connections]) }
18
+
19
+ hook_step = Cucumber::Hooks.before_hook(id_generator.new_id, Core::Test::Location.new('wire'), &action)
20
+
21
+ configuration.event_bus.hook_test_step_created(hook_step, hook)
22
+
23
+ hook_step
19
24
  end
20
25
 
21
26
  def after_hook(test_case)
22
- Cucumber::Hooks.after_hook(id_generator.new_id, Core::Test::Location.new('TODO:wire')) do
23
- connections.end_scenario(test_case)
24
- end
27
+ hook = instanciate_wire_hook(:end_scenario)
28
+ action = ->(result) { hook.invoke('After', [Cucumber::RunningTestCase.new(test_case).with_result(result), connections]) }
29
+
30
+ hook_step = Cucumber::Hooks.after_hook(id_generator.new_id, Core::Test::Location.new('wire'), &action)
31
+
32
+ configuration.event_bus.hook_test_step_created(hook_step, hook)
33
+
34
+ hook_step
25
35
  end
26
36
 
27
37
  def id_generator
28
- @id_generator ||= Cucumber::Messages::IdGenerator::UUID.new
38
+ @id_generator ||= connections.configuration.id_generator
39
+ end
40
+
41
+ def configuration
42
+ @configuration ||= connections.configuration
43
+ end
44
+
45
+ private
46
+
47
+ def instanciate_wire_hook(hook_method)
48
+ Cucumber::Glue::Hook.new(
49
+ id_generator.new_id,
50
+ connections.registry,
51
+ [],
52
+ ->(test_case, connections) { connections.send(hook_method, test_case) }
53
+ )
29
54
  end
30
55
  end
31
56
  end
@@ -13,7 +13,7 @@ module Cucumber
13
13
  module Wire
14
14
 
15
15
  class Connections
16
- attr_reader :connections
16
+ attr_reader :connections, :configuration, :registry
17
17
  private :connections
18
18
 
19
19
  def initialize(connections, configuration, registry)
@@ -45,7 +45,6 @@ module Cucumber
45
45
  def snippets(code_keyword, step_name, multiline_arg_class_name)
46
46
  connections.map { |c| c.snippet_text(code_keyword, step_name, multiline_arg_class_name) }.flatten
47
47
  end
48
-
49
48
  end
50
49
  end
51
50
  end
@@ -3,7 +3,7 @@ require 'cucumber/core/test/location'
3
3
  module Cucumber
4
4
  module Wire
5
5
  class StepDefinition
6
- attr_reader :regexp_source, :location, :registry, :expression
6
+ attr_reader :id, :regexp_source, :location, :registry, :expression
7
7
 
8
8
  def initialize(connection, data, registry)
9
9
  @connection = connection
@@ -1 +1 @@
1
- 6.2.0
1
+ 6.2.1
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber-wire
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.2.0
4
+ version: 6.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Wynne
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-12 00:00:00.000000000 Z
11
+ date: 2022-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber-core
@@ -50,26 +50,6 @@ dependencies:
50
50
  - - ">="
51
51
  - !ruby/object:Gem::Version
52
52
  version: 14.0.0
53
- - !ruby/object:Gem::Dependency
54
- name: cucumber-messages
55
- requirement: !ruby/object:Gem::Requirement
56
- requirements:
57
- - - "~>"
58
- - !ruby/object:Gem::Version
59
- version: '17.1'
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- version: 17.1.1
63
- type: :runtime
64
- prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - "~>"
68
- - !ruby/object:Gem::Version
69
- version: '17.1'
70
- - - ">="
71
- - !ruby/object:Gem::Version
72
- version: 17.1.1
73
53
  - !ruby/object:Gem::Dependency
74
54
  name: aruba
75
55
  requirement: !ruby/object:Gem::Requirement
@@ -96,20 +76,20 @@ dependencies:
96
76
  requirements:
97
77
  - - "~>"
98
78
  - !ruby/object:Gem::Version
99
- version: '7.0'
79
+ version: '7.1'
100
80
  - - ">="
101
81
  - !ruby/object:Gem::Version
102
- version: 7.0.0
82
+ version: 7.1.0
103
83
  type: :development
104
84
  prerelease: false
105
85
  version_requirements: !ruby/object:Gem::Requirement
106
86
  requirements:
107
87
  - - "~>"
108
88
  - !ruby/object:Gem::Version
109
- version: '7.0'
89
+ version: '7.1'
110
90
  - - ">="
111
91
  - !ruby/object:Gem::Version
112
- version: 7.0.0
92
+ version: 7.1.0
113
93
  - !ruby/object:Gem::Dependency
114
94
  name: rake
115
95
  requirement: !ruby/object:Gem::Requirement
@@ -203,10 +183,10 @@ requirements: []
203
183
  rubygems_version: 3.1.2
204
184
  signing_key:
205
185
  specification_version: 4
206
- summary: cucumber-wire-6.2.0
186
+ summary: cucumber-wire-6.2.1
207
187
  test_files:
188
+ - spec/cucumber/wire/configuration_spec.rb
208
189
  - spec/cucumber/wire/connections_spec.rb
209
190
  - spec/cucumber/wire/connection_spec.rb
210
191
  - spec/cucumber/wire/data_packet_spec.rb
211
192
  - spec/cucumber/wire/exception_spec.rb
212
- - spec/cucumber/wire/configuration_spec.rb