diff --git a/sdk/core/Azure.Core/src/Shared/OperationInternal.cs b/sdk/core/Azure.Core/src/Shared/OperationInternal.cs index 1d91d576e605..47d142f588ef 100644 --- a/sdk/core/Azure.Core/src/Shared/OperationInternal.cs +++ b/sdk/core/Azure.Core/src/Shared/OperationInternal.cs @@ -98,7 +98,8 @@ public async ValueTask> WaitForCompletionAsync(TimeSpan pollin var serverDelay = GetServerDelay(response); - var delay = Math.Max(serverDelay, pollingInterval); + var delay = serverDelay > pollingInterval + ? serverDelay : pollingInterval; await WaitAsync(delay, cancellationToken).ConfigureAwait(false); } diff --git a/sdk/core/Azure.Core/tests/OperationInternalTests.cs b/sdk/core/Azure.Core/tests/OperationInternalTests.cs index 2edd86ca7712..f2038095667b 100644 --- a/sdk/core/Azure.Core/tests/OperationInternalTests.cs +++ b/sdk/core/Azure.Core/tests/OperationInternalTests.cs @@ -100,11 +100,9 @@ public async Task UpdateStatusWhenOperationSucceeds(bool async) } [Test] - [TestCase(true, true)] - [TestCase(true, false)] - [TestCase(false, true)] - [TestCase(false, false)] - public void UpdateStatusWhenOperationFails(bool async, bool useDefaultException) + public void UpdateStatusWhenOperationFails( + [Values(true, false)] bool async, + [Values(true, false)] bool useDefaultException) { var originalException = new RequestFailedException(""); var mockResponse = new MockResponse(200); @@ -385,11 +383,9 @@ public async Task WaitForCompletionUsesRetryAfterHeader(bool useDefaultPollingIn } [Test] - [TestCase(true, "retry-after-ms")] - [TestCase(true, "x-ms-retry-after-ms")] - [TestCase(false, "retry-after-ms")] - [TestCase(false, "x-ms-retry-after-ms")] - public async Task WaitForCompletionUsesRetryAfterMsHeader(bool useDefaultPollingInterval, string headerName) + public async Task WaitForCompletionUsesRetryAfterMsHeader( + [Values(true, false)] bool useDefaultPollingInterval, + [Values("retry-after-ms", "x-ms-retry-after-ms")] string headerName) { var originalDelay = TimeSpan.FromMilliseconds(500); var shortDelay = originalDelay.Subtract(TimeSpan.FromMilliseconds(250));