public void Should_not_retry_if_retry_strategy_attempts_count_is_insufficient() { var retryStrategy = Substitute.For <IRetryStrategy>(); retryStrategy.AttemptsCount.Returns(1); retryStrategyEx = new RetryStrategyAdapter(retryStrategy); module = new RequestRetryModule(retryPolicy, retryStrategyEx); Execute().Should().BeSameAs(result); nextModuleCalls.Should().Be(1); }
public void TestSetup() { request = Request.Get("foo/bar"); result = new ClusterResult(ClusterResultStatus.ReplicasExhausted, new List <ReplicaResult>(), null, request); nextModuleCalls = 0; context = Substitute.For <IRequestContext>(); context.Budget.Returns(Budget.Infinite); context.Log.Returns(new ConsoleLog()); context.Request.Returns(request); retryPolicy = Substitute.For <IRetryPolicy>(); retryPolicy.NeedToRetry(Arg.Any <Request>(), Arg.Any <RequestParameters>(), Arg.Any <IList <ReplicaResult> >()).Returns(true); retryStrategy = Substitute.For <IRetryStrategy>(); retryStrategy.AttemptsCount.Returns(MaxAttempts); retryStrategy.GetRetryDelay(Arg.Any <int>()).Returns(TimeSpan.Zero); module = new RequestRetryModule(retryPolicy, retryStrategy); }