public void ExecuteAsync_Action_ForceThrowException() { try { var retryPolicy = new Mock<IRetryPolicy>(); retryPolicy.Setup(policy => policy.ShouldRetryAfter(It.IsAny<Exception>())).Returns(false); var localRetryManager = new RetryManager(retryPolicy.Object); localRetryManager.ExecuteAsync((Action)(() => { throw new Exception(); }), CancellationToken.None, (attempt, nextDelay) => { }, this.executionPolicy).Wait(); } catch (Exception) { Assert.AreEqual(0, this.executionPolicy.CurrentAttempt); throw; } }