public async Task HandleError_returns_false_if_retry_no_possible() { var sut = new RetryErrorStrategy(3); var mockContext = new Mock <IConsumeContext <TestMessage> >(); mockContext.SetupGet(p => p.RetryCount).Returns(3); Exception error = fixture.Create <Exception>(); bool handled = await sut.HandleError(mockContext.Object, error); Assert.That(handled, Is.False); }
public async Task HandleError_schedules_retry_if_possible() { var sut = new RetryErrorStrategy(3); var mockContext = new Mock <IConsumeContext <TestMessage> >(); mockContext.SetupGet(p => p.RetryCount).Returns(0); Exception error = fixture.Create <Exception>(); bool handled = await sut.HandleError(mockContext.Object, error); mockContext.Verify(p => p.RetryLater(), Times.Once); Assert.That(handled, Is.True); }