karafka-testing 2.0.4 → 2.0.6
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
- checksums.yaml.gz.sig +0 -0
- data/.github/workflows/ci.yml +1 -1
- data/2.0-Upgrade.md +3 -3
- data/CHANGELOG.md +7 -0
- data/Gemfile.lock +4 -3
- data/lib/karafka/testing/rspec/helpers.rb +12 -6
- data/lib/karafka/testing/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +2 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2914bb4014582bdba7d942bfe26a38efe726cc8215a7ab668ac6d85ac6c26ea
|
4
|
+
data.tar.gz: 6cea4f0a6863abfe9b0ccdd4381122e2b29d8850038511c83e2860c834001daf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5c3b2194f8350749c754435d9ae6b67e9d35203929348f8ce6d962da7941d5012b0c0821c7e8229cb3c14cadd79a5cd3e8691eb43126a37a3f090134a79a596c
|
7
|
+
data.tar.gz: b2854c13895d8812def3ac4d3e85cdb51dcde554941b34626bc67211b1b028e0a7c6c3cd2623266f731e5668fda015a6c063bf3f717657ee3cf389a35c792cf2
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/.github/workflows/ci.yml
CHANGED
data/2.0-Upgrade.md
CHANGED
@@ -7,7 +7,7 @@ Karafka-Testing 2.0 some breaking changes in the way consumer builder and messag
|
|
7
7
|
Please upgrade your application to `Karafka 2.0` first.
|
8
8
|
|
9
9
|
- Replace `#karafka_consumer_for` in your specs with `#karafka.consumer_for`
|
10
|
-
- Replace `#publish_for_karafka` in your specs with `#karafka.
|
10
|
+
- Replace `#publish_for_karafka` in your specs with `#karafka.produce`
|
11
11
|
|
12
12
|
And that's all!
|
13
13
|
|
@@ -24,8 +24,8 @@ RSpec.describe CountersConsumer do
|
|
24
24
|
let(:sum) { nr1_value + nr2_value }
|
25
25
|
|
26
26
|
before do
|
27
|
-
karafka.
|
28
|
-
karafka.
|
27
|
+
karafka.produce({ 'number' => nr1_value }.to_json)
|
28
|
+
karafka.produce({ 'number' => nr2_value }.to_json, partition: 2)
|
29
29
|
allow(Karafka.logger).to receive(:info)
|
30
30
|
end
|
31
31
|
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
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
|
+
|
7
|
+
## 2.0.5 (2022-10-19)
|
8
|
+
- Fix for: Test event production without defining a subject (#102)
|
9
|
+
|
3
10
|
## 2.0.4 (2022-10-14)
|
4
11
|
- Align changes with Karafka `2.0.13` changes.
|
5
12
|
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
karafka-testing (2.0.
|
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.
|
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)
|
@@ -31,10 +31,11 @@ GEM
|
|
31
31
|
zeitwerk (2.6.1)
|
32
32
|
|
33
33
|
PLATFORMS
|
34
|
+
arm64-darwin
|
34
35
|
x86_64-linux
|
35
36
|
|
36
37
|
DEPENDENCIES
|
37
38
|
karafka-testing!
|
38
39
|
|
39
40
|
BUNDLED WITH
|
40
|
-
2.3.
|
41
|
+
2.3.24
|
@@ -85,9 +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
|
+
# 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
|
91
|
+
# Users may want to test other things (models producing messages for example) and in
|
92
|
+
# their case consumer will not be a consumer
|
93
|
+
return unless consumer.is_a?(Karafka::BaseConsumer)
|
88
94
|
# We target to the consumer only messages that were produced to it, since specs may also
|
89
95
|
# produce other messages targeting other topics
|
90
|
-
return unless message[:topic] ==
|
96
|
+
return unless message[:topic] == consumer.topic.name
|
91
97
|
|
92
98
|
# Build message metadata and copy any metadata that would come from the message
|
93
99
|
metadata = _karafka_message_metadata_defaults
|
@@ -107,12 +113,12 @@ module Karafka
|
|
107
113
|
# Update batch metadata
|
108
114
|
batch_metadata = Karafka::Messages::Builders::BatchMetadata.call(
|
109
115
|
_karafka_consumer_messages,
|
110
|
-
|
116
|
+
consumer.topic,
|
111
117
|
Time.now
|
112
118
|
)
|
113
119
|
|
114
120
|
# Update consumer messages batch
|
115
|
-
|
121
|
+
consumer.messages = Karafka::Messages::Messages.new(
|
116
122
|
_karafka_consumer_messages,
|
117
123
|
batch_metadata
|
118
124
|
)
|
@@ -124,7 +130,7 @@ module Karafka
|
|
124
130
|
def _karafka_produce(payload, metadata = {})
|
125
131
|
Karafka.producer.produce_sync(
|
126
132
|
{
|
127
|
-
topic:
|
133
|
+
topic: consumer.topic.name,
|
128
134
|
payload: payload
|
129
135
|
}.merge(metadata)
|
130
136
|
)
|
@@ -140,14 +146,14 @@ module Karafka
|
|
140
146
|
# @return [Hash] message default options
|
141
147
|
def _karafka_message_metadata_defaults
|
142
148
|
{
|
143
|
-
deserializer:
|
149
|
+
deserializer: consumer.topic.deserializer,
|
144
150
|
timestamp: Time.now,
|
145
151
|
headers: {},
|
146
152
|
key: nil,
|
147
153
|
offset: _karafka_consumer_messages.size,
|
148
154
|
partition: 0,
|
149
155
|
received_at: Time.now,
|
150
|
-
topic:
|
156
|
+
topic: consumer.topic.name
|
151
157
|
}
|
152
158
|
end
|
153
159
|
|
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.
|
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-
|
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
|