12 writes to RetryBudget
Microsoft.Extensions.Http.Resilience (2)
Polly\HttpRetryResiliencePipelineBuilderExtensions.cs (1)
74RetryBudget = budgetOptions,
Polly\HttpRetryStrategyOptionsExtensions.cs (1)
41options.RetryBudget = new HttpRetryBudgetOptions();
Microsoft.Extensions.Http.Resilience.Tests (10)
Polly\HttpRetryResiliencePipelineBuilderExtensionsTests.cs (7)
65var options = new HttpRetryStrategyOptions { Name = "my-retry", RetryBudget = new() }; 79var options = new HttpRetryStrategyOptions { RetryBudget = new() }; 90var options = new HttpRetryStrategyOptions { Name = "my-retry", RetryBudget = new() { RetryRatio = 2 } }; 118options.RetryBudget = new(); 155RetryBudget = new(), 289RetryBudget = new() { MinimumThroughput = 1000 }, 347RetryBudget = budget,
Polly\HttpRetryStrategyOptionsExtensionsTests.cs (1)
127RetryBudget = new HttpRetryBudgetOptions { RetryRatio = 0.5 },
Resilience\HttpClientBuilderExtensionsTests.RetryBudget.cs (2)
76builder.AddStandardResilienceHandler(o => o.Retry.UseBudgetedRetries()).Configure(o => o.Retry.RetryBudget = null); 141builder.AddStandardResilienceHandler(o => o.Retry.RetryBudget = new() { MinimumThroughput = 0 });
24 references to RetryBudget
Microsoft.Extensions.Http.Resilience (9)
Internal\RetryBudgetAppliedAttribute.cs (1)
23var memberName = validationContext.MemberName ?? nameof(HttpRetryStrategyOptions.RetryBudget);
Polly\HttpRetryResiliencePipelineBuilderExtensions.cs (6)
26/// in custom pipelines, because <c>AddRetry</c> can't apply <see cref="HttpRetryStrategyOptions.RetryBudget"/> and rejects 34/// This method adds both. The budget is configured by <see cref="HttpRetryStrategyOptions.RetryBudget"/>. When it's 45return AddBudgetedRetry(builder, options, options.RetryBudget ?? new HttpRetryBudgetOptions()); 51return options.RetryBudget is null 53: AddBudgetedRetry(builder, options, options.RetryBudget); 91var validation = _budgetValidator.Validate($"{options.Name}.{nameof(HttpRetryStrategyOptions.RetryBudget)}", budgetOptions);
Polly\HttpRetryStrategyOptionsExtensions.cs (1)
30/// This method sets <see cref="HttpRetryStrategyOptions.RetryBudget"/> to a new <see cref="HttpRetryBudgetOptions"/> instance
Resilience\HttpStandardResiliencePipelineBuilderExtensions.cs (1)
87/// <see cref="HttpRetryStrategyOptions.RetryBudget"/> configured before this call, including through configuration sections
Microsoft.Extensions.Http.Resilience.Tests (15)
Polly\HttpRetryBudgetOptionsTests.cs (1)
26new HttpRetryStrategyOptions().RetryBudget.Should().BeNull();
Polly\HttpRetryResiliencePipelineBuilderExtensionsTests.cs (5)
46retry.RetryBudget.Should().BeEquivalentTo(new HttpRetryBudgetOptions()); 48options.RetryBudget.Should().BeNull(); 73retry.RetryBudget.Should().BeSameAs(options.RetryBudget); 158var copy = HttpRetryResiliencePipelineBuilderExtensions.CreateBudgetedCopy(options, options.RetryBudget);
Polly\HttpRetryStrategyOptionsExtensionsTests.cs (1)
135Assert.Equal(new HttpRetryBudgetOptions().RetryRatio, options.RetryBudget!.RetryRatio);
Resilience\HttpClientBuilderExtensionsTests.RetryBudget.cs (8)
39options.Retry.RetryBudget.Should().BeEquivalentTo(new HttpRetryBudgetOptions()); 64o.Retry.RetryBudget!.RetryRatio = 0.2; 69options.Retry.RetryBudget!.RetryRatio.Should().Be(0.2); 94var budget = GetStandardOptions(builder.Services).Retry.RetryBudget!; 115retry.RetryBudget.Should().BeEquivalentTo(new HttpRetryBudgetOptions()); 130var budget = GetStandardOptions(builder.Services).Retry.RetryBudget!; 229options.Retry.RetryBudget!.RetryRatio = 0.5; 230options.Retry.RetryBudget.MinimumThroughput = 1;