Skip to content

Commit aa2d5dc

Browse files
committed
* Fix connection recovery tests to use new virtual Delay method.
1 parent 74410a0 commit aa2d5dc

File tree

3 files changed

+11
-19
lines changed

3 files changed

+11
-19
lines changed

RabbitMQ.AMQP.Client/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ RabbitMQ.AMQP.Client.BackOffDelayPolicy
3939
RabbitMQ.AMQP.Client.BackOffDelayPolicy.BackOffDelayPolicy() -> void
4040
RabbitMQ.AMQP.Client.BackOffDelayPolicy.BackOffDelayPolicy(int maxAttempt) -> void
4141
RabbitMQ.AMQP.Client.BackOffDelayPolicy.CurrentAttempt.get -> int
42-
RabbitMQ.AMQP.Client.BackOffDelayPolicy.Delay() -> int
4342
RabbitMQ.AMQP.Client.BackOffDelayPolicy.IsActive() -> bool
4443
RabbitMQ.AMQP.Client.BackOffDelayPolicy.Reset() -> void
4544
RabbitMQ.AMQP.Client.BadRequestException
@@ -748,5 +747,6 @@ static RabbitMQ.AMQP.Client.InternalBugException.CreateAndThrow(string! message)
748747
static readonly RabbitMQ.AMQP.Client.SaslMechanism.Anonymous -> RabbitMQ.AMQP.Client.SaslMechanism!
749748
static readonly RabbitMQ.AMQP.Client.SaslMechanism.External -> RabbitMQ.AMQP.Client.SaslMechanism!
750749
static readonly RabbitMQ.AMQP.Client.SaslMechanism.Plain -> RabbitMQ.AMQP.Client.SaslMechanism!
750+
virtual RabbitMQ.AMQP.Client.BackOffDelayPolicy.Delay() -> int
751751
virtual RabbitMQ.AMQP.Client.Impl.AbstractLifeCycle.Dispose(bool disposing) -> void
752752
virtual RabbitMQ.AMQP.Client.Impl.AbstractLifeCycle.OpenAsync() -> System.Threading.Tasks.Task!

RabbitMQ.AMQP.Client/RecoveryConfiguration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ public BackOffDelayPolicy(int maxAttempt)
105105
/// Get the next delay in milliseconds.
106106
/// </summary>
107107
/// <returns></returns>
108-
public int Delay()
108+
public virtual int Delay()
109109
{
110110
_attempt++;
111111
CurrentAttempt++;

Tests/ConnectionRecoveryTests.cs

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,32 +15,22 @@ namespace Tests;
1515

1616
internal class FakeBackOffDelayPolicyDisabled : BackOffDelayPolicy
1717
{
18-
public new int Delay()
18+
public FakeBackOffDelayPolicyDisabled() : base(0)
1919
{
20-
return 1;
2120
}
2221

23-
public new void Reset()
22+
public override int Delay()
2423
{
24+
return 1;
2525
}
26-
27-
public new bool IsActive() => false;
28-
public new int CurrentAttempt => 1;
2926
}
3027

3128
internal class FakeFastBackOffDelay : BackOffDelayPolicy
3229
{
33-
public new int Delay()
30+
public override int Delay()
3431
{
3532
return 200;
3633
}
37-
38-
public new void Reset()
39-
{
40-
}
41-
42-
public new bool IsActive() => true;
43-
public new int CurrentAttempt => 1;
4434
}
4535

4636
public class ConnectionRecoveryTests(ITestOutputHelper testOutputHelper)
@@ -189,14 +179,16 @@ public async Task OverrideTheBackOffWithBackOffDisabled()
189179
Assert.Null(_connection);
190180
Assert.Null(_management);
191181

182+
var backoffDelayPolicy = new FakeBackOffDelayPolicyDisabled();
192183
var recoveryConfiguration = new RecoveryConfiguration();
193184
recoveryConfiguration.Activated(true);
194185
recoveryConfiguration.Topology(false);
195-
recoveryConfiguration.BackOffDelayPolicy(new FakeBackOffDelayPolicyDisabled());
186+
recoveryConfiguration.BackOffDelayPolicy(backoffDelayPolicy);
196187

197188
IConnection connection = await AmqpConnection.CreateAsync(
198-
ConnectionSettingsBuilder.Create().ContainerId(_containerId).RecoveryConfiguration(
199-
recoveryConfiguration).Build());
189+
ConnectionSettingsBuilder.Create()
190+
.ContainerId(_containerId)
191+
.RecoveryConfiguration(recoveryConfiguration).Build());
200192

201193
var listFromStatus = new List<State>();
202194
TaskCompletionSource<bool> listFromStatusCountGreaterOrEqualToTwo = CreateTaskCompletionSource<bool>();

0 commit comments

Comments
 (0)