karafka-testing 2.0.5 → 2.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 513e1bb6f2a9ac5806fc7df36f788f4ba1b1f72286110e0584ad882d347453fe
4
- data.tar.gz: a758a804787420eea61375763bcad90a6c2033426d46f8b07707fc5c22d9de72
3
+ metadata.gz: a2914bb4014582bdba7d942bfe26a38efe726cc8215a7ab668ac6d85ac6c26ea
4
+ data.tar.gz: 6cea4f0a6863abfe9b0ccdd4381122e2b29d8850038511c83e2860c834001daf
5
5
  SHA512:
6
- metadata.gz: e313af611899b8a3b47791d63694b24612bd97b27dde6262b929a7af315b64c0c2a1e0fd0b22fe25838d41b3c592c302b610e67031b44b27f08ee2daf78a4705
7
- data.tar.gz: 18d88784906a4d19a33dab5ceca6236c1720d488c58b56e324464eb5730096c5f3bcfcfa3b8481fe4db974c10a2d294d3c91a50b9d7c030e28a0314531c1798c
6
+ metadata.gz: 5c3b2194f8350749c754435d9ae6b67e9d35203929348f8ce6d962da7941d5012b0c0821c7e8229cb3c14cadd79a5cd3e8691eb43126a37a3f090134a79a596c
7
+ data.tar.gz: b2854c13895d8812def3ac4d3e85cdb51dcde554941b34626bc67211b1b028e0a7c6c3cd2623266f731e5668fda015a6c063bf3f717657ee3cf389a35c792cf2
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Karafka Test gem changelog
2
2
 
3
+ ## 2.0.6 (2022-10-26)
4
+ - Replace the `subject` reference with named `consumer` reference.
5
+ - Do not forward sent messages to `consumer` unless it's a Karafka consumer.
6
+
3
7
  ## 2.0.5 (2022-10-19)
4
8
  - Fix for: Test event production without defining a subject (#102)
5
9
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- karafka-testing (2.0.5)
4
+ karafka-testing (2.0.6)
5
5
  karafka (>= 2.0, < 3.0.0)
6
6
 
7
7
  GEM
@@ -9,7 +9,7 @@ GEM
9
9
  specs:
10
10
  concurrent-ruby (1.1.10)
11
11
  ffi (1.15.5)
12
- karafka (2.0.14)
12
+ karafka (2.0.15)
13
13
  karafka-core (>= 2.0.2, < 3.0.0)
14
14
  rdkafka (>= 0.12)
15
15
  thor (>= 0.20)
@@ -85,13 +85,15 @@ module Karafka
85
85
  # karafka.produce({ 'hello' => 'world' }.to_json, 'partition' => 6)
86
86
  # end
87
87
  def _karafka_add_message_to_consumer_if_needed(message)
88
- # We're interested in adding message to subject only when it is a consumer
88
+ # Consumer needs to be defined in order to pass messages to it
89
+ return unless defined?(consumer)
90
+ # We're interested in adding message to consumer only when it is a Karafka consumer
89
91
  # Users may want to test other things (models producing messages for example) and in
90
- # their case subject will not be a consumer
91
- return unless subject.is_a?(Karafka::BaseConsumer)
92
+ # their case consumer will not be a consumer
93
+ return unless consumer.is_a?(Karafka::BaseConsumer)
92
94
  # We target to the consumer only messages that were produced to it, since specs may also
93
95
  # produce other messages targeting other topics
94
- return unless message[:topic] == subject.topic.name
96
+ return unless message[:topic] == consumer.topic.name
95
97
 
96
98
  # Build message metadata and copy any metadata that would come from the message
97
99
  metadata = _karafka_message_metadata_defaults
@@ -111,12 +113,12 @@ module Karafka
111
113
  # Update batch metadata
112
114
  batch_metadata = Karafka::Messages::Builders::BatchMetadata.call(
113
115
  _karafka_consumer_messages,
114
- subject.topic,
116
+ consumer.topic,
115
117
  Time.now
116
118
  )
117
119
 
118
120
  # Update consumer messages batch
119
- subject.messages = Karafka::Messages::Messages.new(
121
+ consumer.messages = Karafka::Messages::Messages.new(
120
122
  _karafka_consumer_messages,
121
123
  batch_metadata
122
124
  )
@@ -128,7 +130,7 @@ module Karafka
128
130
  def _karafka_produce(payload, metadata = {})
129
131
  Karafka.producer.produce_sync(
130
132
  {
131
- topic: subject.topic.name,
133
+ topic: consumer.topic.name,
132
134
  payload: payload
133
135
  }.merge(metadata)
134
136
  )
@@ -144,14 +146,14 @@ module Karafka
144
146
  # @return [Hash] message default options
145
147
  def _karafka_message_metadata_defaults
146
148
  {
147
- deserializer: subject.topic.deserializer,
149
+ deserializer: consumer.topic.deserializer,
148
150
  timestamp: Time.now,
149
151
  headers: {},
150
152
  key: nil,
151
153
  offset: _karafka_consumer_messages.size,
152
154
  partition: 0,
153
155
  received_at: Time.now,
154
- topic: subject.topic.name
156
+ topic: consumer.topic.name
155
157
  }
156
158
  end
157
159
 
@@ -4,6 +4,6 @@
4
4
  module Karafka
5
5
  module Testing
6
6
  # Current version of gem. It should match Karafka framework version
7
- VERSION = '2.0.5'
7
+ VERSION = '2.0.6'
8
8
  end
9
9
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: karafka-testing
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.5
4
+ version: 2.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maciej Mensfeld
@@ -35,7 +35,7 @@ cert_chain:
35
35
  Qf04B9ceLUaC4fPVEz10FyobjaFoY4i32xRto3XnrzeAgfEe4swLq8bQsR3w/EF3
36
36
  MGU0FeSV2Yj7Xc2x/7BzLK8xQn5l7Yy75iPF+KP3vVmDHnNl
37
37
  -----END CERTIFICATE-----
38
- date: 2022-10-19 00:00:00.000000000 Z
38
+ date: 2022-10-26 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: karafka
metadata.gz.sig CHANGED
Binary file