Skip to content

Commit bf70873

Browse files
committed
Change x-death header assertions for 3.13+
x-death is not appended to the values already present in a newly published message. Only the broker can append values to this header. (cherry picked from commit 1cc206b)
1 parent a91032d commit bf70873

File tree

5 files changed

+24
-11
lines changed

5 files changed

+24
-11
lines changed

src/test/java/com/rabbitmq/client/test/BrokerTestCase.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -353,4 +353,6 @@ protected boolean beforeMessageContainers() {
353353
return versionCompare(this.brokerVersion, "3.13.0") < 0;
354354
}
355355

356+
357+
356358
}

src/test/java/com/rabbitmq/client/test/functional/DeadLetterExchange.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,7 @@ public void handleDelivery(String consumerTag, Envelope envelope,
410410

411411
@SuppressWarnings("unchecked")
412412
@Test public void republish() throws Exception {
413-
if (TestUtils.atMost312(connection)) {
413+
if (beforeMessageContainers()) {
414414
Map<String, Object> args = new HashMap<>();
415415
args.put("x-message-ttl", 100);
416416
declareQueue(TEST_QUEUE_NAME, DLX, null, args);

src/test/java/com/rabbitmq/client/test/functional/Routing.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import static org.junit.jupiter.api.Assertions.assertNull;
2222
import static org.junit.jupiter.api.Assertions.fail;
2323

24-
import com.rabbitmq.client.test.TestUtils;
2524
import com.rabbitmq.client.test.TestUtils.BrokerVersion;
2625
import com.rabbitmq.client.test.TestUtils.BrokerVersionAtLeast;
2726
import java.io.IOException;
@@ -335,7 +334,7 @@ public void headersWithXRouting() throws Exception {
335334
channel.txCommit();
336335
assertNotNull(channel.basicGet(Q1, true));
337336

338-
if (TestUtils.atMost312(connection)) {
337+
if (beforeMessageContainers()) {
339338
//returned 'mandatory' publish when message is routable on
340339
//publish but not on commit
341340
channel.basicPublish("", Q1, true, false, null, "mandatory2".getBytes());

src/test/java/com/rabbitmq/client/test/functional/Transactions.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
import java.io.IOException;
2424
import java.util.concurrent.TimeoutException;
2525

26-
import com.rabbitmq.client.test.TestUtils;
2726
import org.junit.jupiter.api.Test;
2827

2928
import com.rabbitmq.client.AMQP;
@@ -330,7 +329,7 @@ private long[] publishSelectAndGet(int n)
330329

331330
@Test public void commitWithDeletedQueue()
332331
throws IOException, TimeoutException {
333-
if (TestUtils.atMost312(connection)) {
332+
if (beforeMessageContainers()) {
334333
txSelect();
335334
basicPublish();
336335
releaseResources();

src/test/java/com/rabbitmq/client/test/server/XDeathHeaderGrowth.java

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -173,23 +173,36 @@ private void cleanUpQueues(String... qs) throws IOException {
173173

174174
assertTrue(latch.await(5, TimeUnit.SECONDS));
175175
List<Map<String, Object>> events = (List<Map<String, Object>>)cons.getHeaders().get("x-death");
176-
assertEquals(6, events.size());
176+
if (beforeMessageContainers()) {
177+
assertEquals(6, events.size());
178+
} else {
179+
assertEquals(3, events.size());
180+
}
177181

178182
List<String> qs = new ArrayList<String>();
179183
for (Map<String, Object> evt : events) {
180184
qs.add(evt.get("queue").toString());
181185
}
182186
Collections.sort(qs);
183-
assertEquals(Arrays.asList(qz, q1, q2,
184-
"issues.rabbitmq-server-152.queue97",
185-
"issues.rabbitmq-server-152.queue98",
186-
"issues.rabbitmq-server-152.queue99"), qs);
187+
if (beforeMessageContainers()) {
188+
assertEquals(Arrays.asList(qz, q1, q2,
189+
"issues.rabbitmq-server-152.queue97",
190+
"issues.rabbitmq-server-152.queue98",
191+
"issues.rabbitmq-server-152.queue99"), qs);
192+
} else {
193+
assertEquals(Arrays.asList(qz, q1, q2), qs);
194+
}
195+
187196
List<Long> cs = new ArrayList<Long>();
188197
for (Map<String, Object> evt : events) {
189198
cs.add((Long)evt.get("count"));
190199
}
191200
Collections.sort(cs);
192-
assertEquals(Arrays.asList(1L, 1L, 4L, 4L, 9L, 12L), cs);
201+
if (beforeMessageContainers()) {
202+
assertEquals(Arrays.asList(1L, 1L, 4L, 4L, 9L, 12L), cs);
203+
} else {
204+
assertEquals(Arrays.asList(1L, 1L, 9L), cs);
205+
}
193206

194207
cleanUpExchanges(x1, x2);
195208
cleanUpQueues(q1, q2, qz,

0 commit comments

Comments
 (0)