Skip to content

Commit 5c23c76

Browse files
committed
* Do not use the amq.fanout fanout exchange because messages published to it could end up in tests that should note have messages, like TestConcurrentQueueDeclareAndBindAsync
1 parent ef9ed3b commit 5c23c76

File tree

4 files changed

+16
-5
lines changed

4 files changed

+16
-5
lines changed

projects/Test/Integration/TestConfirmSelect.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
// Copyright (c) 2007-2020 VMware, Inc. All rights reserved.
3030
//---------------------------------------------------------------------------
3131

32+
using System;
3233
using System.Threading.Tasks;
3334
using RabbitMQ.Client;
3435
using Xunit;
@@ -47,7 +48,8 @@ public async Task TestConfirmSelectIdempotency()
4748
{
4849
ValueTask PublishAsync()
4950
{
50-
return _channel.BasicPublishAsync("", "amq.fanout", _encoding.GetBytes("message"));
51+
return _channel.BasicPublishAsync(exchange: "",
52+
routingKey: Guid.NewGuid().ToString(), _encoding.GetBytes("message"));
5153
}
5254

5355
await _channel.ConfirmSelectAsync();

projects/Test/Integration/TestConfirmSelectAsync.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
// Copyright (c) 2007-2020 VMware, Inc. All rights reserved.
3030
//---------------------------------------------------------------------------
3131

32+
using System;
3233
using System.Threading.Tasks;
3334
using RabbitMQ.Client;
3435
using Xunit;
@@ -65,7 +66,8 @@ public async Task TestConfirmSelectIdempotency()
6566

6667
private ValueTask Publish()
6768
{
68-
return _channel.BasicPublishAsync("", "amq.fanout", _message);
69+
return _channel.BasicPublishAsync(exchange: "",
70+
routingKey: Guid.NewGuid().ToString(), _message);
6971
}
7072
}
7173
}

projects/Test/Integration/TestQueueDeclare.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,10 @@ public async void TestConcurrentQueueDeclareAndBindAsync()
8787
var tasks = new List<Task>();
8888
var queueNames = new ConcurrentDictionary<string, bool>();
8989

90+
string exchangeName = GenerateExchangeName();
91+
await _channel.ExchangeDeclareAsync(exchange: exchangeName, ExchangeType.Fanout,
92+
durable: false, autoDelete: true);
93+
9094
NotSupportedException nse = null;
9195
for (int i = 0; i < 256; i++)
9296
{
@@ -101,7 +105,8 @@ async Task f()
101105
QueueDeclareOk r = await _channel.QueueDeclareAsync(queue: queueName,
102106
durable: false, exclusive: true, autoDelete: false);
103107
Assert.Equal(queueName, r.QueueName);
104-
await _channel.QueueBindAsync(queue: queueName, exchange: "amq.fanout", routingKey: queueName);
108+
await _channel.QueueBindAsync(queue: queueName,
109+
exchange: exchangeName, routingKey: queueName);
105110
if (false == queueNames.TryAdd(queueName, true))
106111
{
107112
throw new InvalidOperationException($"queue with name {queueName} already added!");
@@ -134,7 +139,8 @@ async Task f()
134139
Assert.Equal(qname, r.QueueName);
135140
Assert.Equal((uint)0, r.MessageCount);
136141

137-
await _channel.QueueUnbindAsync(queue: qname, exchange: "amq.fanout", routingKey: qname, null);
142+
await _channel.QueueUnbindAsync(queue: qname,
143+
exchange: exchangeName, routingKey: qname, null);
138144

139145
uint deletedMessageCount = await _channel.QueueDeleteAsync(qname, false, false);
140146
Assert.Equal((uint)0, deletedMessageCount);

projects/Test/SequentialIntegration/SequentialIntegrationFixture.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ public async Task BlockAsync(IChannel channel)
4747
await _rabbitMQCtl.ExecRabbitMQCtlAsync("set_vm_memory_high_watermark 0.000000001");
4848
// give rabbitmqctl some time to do its job
4949
await Task.Delay(TimeSpan.FromSeconds(5));
50-
await channel.BasicPublishAsync("amq.fanout", "", _encoding.GetBytes("message"));
50+
await channel.BasicPublishAsync(exchange: "amq.direct",
51+
routingKey: Guid.NewGuid().ToString(), _encoding.GetBytes("message"));
5152
}
5253

5354
public Task UnblockAsync()

0 commit comments

Comments
 (0)