Skip to content

Commit 38f4de9

Browse files
Factor away TestContext.Current.CancellationToken
Centralize all usage of `TestContext.Current.CancellationToken` to one location to allow cherry-picking to main easily.
1 parent a1ffc49 commit 38f4de9

File tree

123 files changed

+248
-237
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

123 files changed

+248
-237
lines changed

test/Polly.Core.Tests/CircuitBreaker/CircuitBreakerManualControlTests.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public void Ctor_Isolated(bool isolated)
2929
[Theory]
3030
public async Task IsolateAsync_NotInitialized_Ok(bool closedAfter)
3131
{
32-
var cancellationToken = TestContext.Current.CancellationToken;
32+
var cancellationToken = TestCancellation.Token;
3333
var control = new CircuitBreakerManualControl();
3434
await control.IsolateAsync(cancellationToken);
3535
if (closedAfter)
@@ -56,14 +56,14 @@ public async Task ResetAsync_NotInitialized_Ok()
5656
{
5757
var control = new CircuitBreakerManualControl();
5858

59-
await Should.NotThrowAsync(() => control.CloseAsync(TestContext.Current.CancellationToken));
59+
await Should.NotThrowAsync(() => control.CloseAsync(TestCancellation.Token));
6060
}
6161

6262
[Fact]
6363
public async Task Initialize_Twice_Ok()
6464
{
6565
int called = 0;
66-
var cancellationToken = TestContext.Current.CancellationToken;
66+
var cancellationToken = TestCancellation.Token;
6767
var control = new CircuitBreakerManualControl();
6868
control.Initialize(_ => Task.CompletedTask, _ => Task.CompletedTask);
6969
control.Initialize(_ => { called++; return Task.CompletedTask; }, _ => { called++; return Task.CompletedTask; });
@@ -78,7 +78,7 @@ public async Task Initialize_Twice_Ok()
7878
public async Task Initialize_DisposeRegistration_ShuldBeCancelled()
7979
{
8080
int called = 0;
81-
var cancellationToken = TestContext.Current.CancellationToken;
81+
var cancellationToken = TestCancellation.Token;
8282
var control = new CircuitBreakerManualControl();
8383
var reg = control.Initialize(_ => { called++; return Task.CompletedTask; }, _ => { called++; return Task.CompletedTask; });
8484

@@ -96,7 +96,7 @@ public async Task Initialize_DisposeRegistration_ShuldBeCancelled()
9696
[Fact]
9797
public async Task Initialize_Ok()
9898
{
99-
var cancellationToken = TestContext.Current.CancellationToken;
99+
var cancellationToken = TestCancellation.Token;
100100
var control = new CircuitBreakerManualControl();
101101
var isolateCalled = false;
102102
var resetCalled = false;

test/Polly.Core.Tests/CircuitBreaker/CircuitBreakerOptionsTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ public class CircuitBreakerOptionsTests
1010
public async Task ShouldHandle_EnsureDefaults()
1111
{
1212
var options = new CircuitBreakerStrategyOptions();
13-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
13+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
1414

1515
(await options.ShouldHandle(new CircuitBreakerPredicateArguments<object>(context, Outcome.FromResult<object>("dummy")))).ShouldBe(false);
1616
(await options.ShouldHandle(new CircuitBreakerPredicateArguments<object>(context, Outcome.FromException<object>(new OperationCanceledException())))).ShouldBe(false);

test/Polly.Core.Tests/CircuitBreaker/CircuitBreakerPredicateArgumentsTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public static class CircuitBreakerPredicateArgumentsTests
88
public static void Ctor_Ok()
99
{
1010
var args = new CircuitBreakerPredicateArguments<int>(
11-
ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken),
11+
ResilienceContextPool.Shared.Get(TestCancellation.Token),
1212
Outcome.FromResult(1));
1313

1414
args.Context.ShouldNotBeNull();

test/Polly.Core.Tests/CircuitBreaker/CircuitBreakerResiliencePipelineBuilderTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void AddCircuitBreaker_Validation()
5757
[Fact]
5858
public void AddCircuitBreaker_IntegrationTest()
5959
{
60-
var cancellationToken = TestContext.Current.CancellationToken;
60+
var cancellationToken = TestCancellation.Token;
6161
int opened = 0;
6262
int closed = 0;
6363
int halfOpened = 0;
@@ -120,7 +120,7 @@ public void AddCircuitBreaker_IntegrationTest()
120120
[Fact]
121121
public void AddCircuitBreaker_IntegrationTest_WithBreakDurationGenerator()
122122
{
123-
var cancellationToken = TestContext.Current.CancellationToken;
123+
var cancellationToken = TestCancellation.Token;
124124
int opened = 0;
125125
int closed = 0;
126126
int halfOpened = 0;
@@ -184,7 +184,7 @@ public void AddCircuitBreaker_IntegrationTest_WithBreakDurationGenerator()
184184
[Fact]
185185
public async Task AddCircuitBreakers_WithIsolatedManualControl_ShouldBeIsolated()
186186
{
187-
var cancellationToken = TestContext.Current.CancellationToken;
187+
var cancellationToken = TestCancellation.Token;
188188
var manualControl = new CircuitBreakerManualControl();
189189
await manualControl.IsolateAsync(cancellationToken);
190190

test/Polly.Core.Tests/CircuitBreaker/CircuitBreakerResilienceStrategyTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public CircuitBreakerResilienceStrategyTests()
3030
null);
3131
}
3232

33-
private static CancellationToken CancellationToken => TestContext.Current.CancellationToken;
33+
private static CancellationToken CancellationToken => TestCancellation.Token;
3434

3535
[Fact]
3636
public void Ctor_Ok() =>

test/Polly.Core.Tests/CircuitBreaker/Controller/CircuitStateControllerTests.cs

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public void Ctor_EnsureDefaults()
2626
public async Task IsolateAsync_Ok()
2727
{
2828
// arrange
29-
var cancellationToken = TestContext.Current.CancellationToken;
29+
var cancellationToken = TestCancellation.Token;
3030
bool called = false;
3131
_options.OnOpened = args =>
3232
{
@@ -69,7 +69,7 @@ public async Task IsolateAsync_Ok()
6969
public async Task BreakAsync_Ok()
7070
{
7171
// arrange
72-
var cancellationToken = TestContext.Current.CancellationToken;
72+
var cancellationToken = TestCancellation.Token;
7373
bool called = false;
7474
_options.OnClosed = args =>
7575
{
@@ -102,7 +102,7 @@ public async Task BreakAsync_Ok()
102102
[Fact]
103103
public async Task Disposed_EnsureThrows()
104104
{
105-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
105+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
106106

107107
var controller = CreateController();
108108
controller.Dispose();
@@ -121,7 +121,7 @@ public async Task Disposed_EnsureThrows()
121121
[Fact]
122122
public async Task OnActionPreExecute_CircuitOpenedByValue()
123123
{
124-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
124+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
125125
using var controller = CreateController();
126126

127127
await OpenCircuit(controller, Outcome.FromResult(99));
@@ -138,7 +138,7 @@ public async Task OnActionPreExecute_CircuitOpenedByValue()
138138
public async Task OnActionPreExecute_CircuitOpened_EnsureExceptionStackTraceDoesNotGrow(bool innerException)
139139
{
140140
var stacks = new List<string>();
141-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
141+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
142142
using var controller = CreateController();
143143

144144
await OpenCircuit(
@@ -175,7 +175,7 @@ await OpenCircuit(
175175
[Fact]
176176
public async Task HalfOpen_EnsureBreakDuration()
177177
{
178-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
178+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
179179
using var controller = CreateController();
180180

181181
await TransitionToState(controller, CircuitState.HalfOpen, context);
@@ -187,7 +187,7 @@ public async Task HalfOpen_EnsureBreakDuration()
187187
[Theory]
188188
public async Task HalfOpen_EnsureCorrectStateTransitionAfterExecution(bool success)
189189
{
190-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
190+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
191191
using var controller = CreateController();
192192

193193
await TransitionToState(controller, CircuitState.HalfOpen, context);
@@ -213,7 +213,7 @@ public async Task HalfOpen_EnsureCorrectStateTransitionAfterExecution(bool succe
213213
[Fact]
214214
public async Task OnActionPreExecute_CircuitOpenedByException()
215215
{
216-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
216+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
217217
using var controller = CreateController();
218218

219219
await OpenCircuit(controller, Outcome.FromException<int>(new InvalidOperationException()));
@@ -227,7 +227,7 @@ public async Task OnActionPreExecute_CircuitOpenedByException()
227227
public async Task OnActionFailure_EnsureLock()
228228
{
229229
// arrange
230-
var cancellationToken = TestContext.Current.CancellationToken;
230+
var cancellationToken = TestCancellation.Token;
231231
var context = ResilienceContextPool.Shared.Get(cancellationToken);
232232

233233
using var executing = new ManualResetEvent(false);
@@ -261,7 +261,7 @@ public async Task OnActionFailure_EnsureLock()
261261
public async Task OnActionPreExecute_HalfOpen()
262262
{
263263
// arrange
264-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
264+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
265265
var called = false;
266266
_options.OnHalfOpened = _ =>
267267
{
@@ -293,7 +293,7 @@ public async Task OnActionPreExecute_HalfOpen()
293293
public async Task OnActionSuccess_EnsureCorrectBehavior(CircuitState state, CircuitState expectedState)
294294
{
295295
// arrange
296-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
296+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
297297
var called = false;
298298
_options.OnClosed = args =>
299299
{
@@ -329,7 +329,7 @@ public async Task OnActionSuccess_EnsureCorrectBehavior(CircuitState state, Circ
329329
public async Task OnActionFailureAsync_EnsureCorrectBehavior(CircuitState state, CircuitState expectedState, bool shouldBreak)
330330
{
331331
// arrange
332-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
332+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
333333
var called = false;
334334
_options.OnOpened = args =>
335335
{
@@ -370,7 +370,7 @@ public async Task OnActionFailureAsync_EnsureCorrectBehavior(CircuitState state,
370370
public async Task OnActionFailureAsync_EnsureBreakDurationGeneration()
371371
{
372372
// arrange
373-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
373+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
374374
_options.BreakDurationGenerator = static args =>
375375
{
376376
args.FailureCount.ShouldBe(1);
@@ -402,7 +402,7 @@ public async Task OnActionFailureAsync_EnsureBreakDurationGeneration()
402402
public async Task BreakDurationGenerator_EnsureHalfOpenAttempts()
403403
{
404404
// arrange
405-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
405+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
406406
var halfOpenAttempts = new List<int>();
407407

408408
_options.BreakDurationGenerator = args =>
@@ -440,7 +440,7 @@ public async Task BreakDurationGenerator_EnsureHalfOpenAttempts()
440440
public async Task OnActionFailureAsync_EnsureBreakDurationNotOverflow(bool overflow)
441441
{
442442
// arrange
443-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
443+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
444444
using var controller = CreateController();
445445
var shouldBreak = true;
446446
await TransitionToState(controller, CircuitState.HalfOpen, context);
@@ -475,7 +475,7 @@ public async Task OnActionFailureAsync_EnsureBreakDurationNotOverflow(bool overf
475475
public async Task OnActionFailureAsync_VoidResult_EnsureBreakingExceptionNotSet()
476476
{
477477
// arrange
478-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
478+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
479479
using var controller = CreateController();
480480
bool shouldBreak = true;
481481
await TransitionToState(controller, CircuitState.Open, context);
@@ -497,7 +497,7 @@ public async Task OnActionFailureAsync_VoidResult_EnsureBreakingExceptionNotSet(
497497
[Fact]
498498
public async Task Flow_Closed_HalfOpen_Closed()
499499
{
500-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
500+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
501501
using var controller = CreateController();
502502

503503
await TransitionToState(controller, CircuitState.HalfOpen, context);
@@ -512,7 +512,7 @@ public async Task Flow_Closed_HalfOpen_Closed()
512512
[Fact]
513513
public async Task Flow_Closed_HalfOpen_Open_HalfOpen_Closed()
514514
{
515-
var cancellationToken = TestContext.Current.CancellationToken;
515+
var cancellationToken = TestCancellation.Token;
516516
var context = ResilienceContextPool.Shared.Get(cancellationToken);
517517

518518
using var controller = CreateController();
@@ -550,7 +550,7 @@ public async Task Flow_Closed_HalfOpen_Open_HalfOpen_Closed()
550550
[Fact]
551551
public async Task ExecuteScheduledTask_Async_Ok()
552552
{
553-
var cancellationToken = TestContext.Current.CancellationToken;
553+
var cancellationToken = TestCancellation.Token;
554554
var context = ResilienceContextPool.Shared.Get(cancellationToken);
555555

556556
var source = new TaskCompletionSource<string>();
@@ -605,7 +605,7 @@ private async Task OpenCircuit(CircuitStateController<int> controller, Outcome<i
605605

606606
await controller.OnHandledOutcomeAsync(
607607
outcome ?? Outcome.FromResult(10),
608-
ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken).Initialize<int>(true));
608+
ResilienceContextPool.Shared.Get(TestCancellation.Token).Initialize<int>(true));
609609
}
610610

611611
private void AdvanceTime(TimeSpan timespan) => _timeProvider.Advance(timespan);

test/Polly.Core.Tests/CircuitBreaker/Controller/ScheduledTaskExecutorTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ namespace Polly.Core.Tests.CircuitBreaker.Controller;
44

55
public class ScheduledTaskExecutorTests
66
{
7-
private static CancellationToken CancellationToken => TestContext.Current.CancellationToken;
7+
private static CancellationToken CancellationToken => TestCancellation.Token;
88

99
[Fact]
1010
public async Task ScheduleTask_Success_EnsureExecuted()

test/Polly.Core.Tests/CircuitBreaker/OnCircuitClosedArgumentsTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public static class OnCircuitClosedArgumentsTests
88
public static void Ctor_Ok()
99
{
1010
// Arrange
11-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
11+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
1212

1313
// Act
1414
var args = new OnCircuitClosedArguments<int>(context, Outcome.FromResult(1), true);

test/Polly.Core.Tests/CircuitBreaker/OnCircuitHalfOpenedArgumentsTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public static class OnCircuitHalfOpenedArgumentsTests
88
public static void Ctor_Ok()
99
{
1010
// Arrange
11-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
11+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
1212

1313
// Act
1414
var target = new OnCircuitHalfOpenedArguments(context);

test/Polly.Core.Tests/CircuitBreaker/OnCircuitOpenedArgumentsTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public static class OnCircuitOpenedArgumentsTests
88
public static void Ctor_Ok()
99
{
1010
// Arrange
11-
var context = ResilienceContextPool.Shared.Get(TestContext.Current.CancellationToken);
11+
var context = ResilienceContextPool.Shared.Get(TestCancellation.Token);
1212

1313
// Act
1414
var args = new OnCircuitOpenedArguments<int>(context, Outcome.FromResult(1), TimeSpan.FromSeconds(2), true);

0 commit comments

Comments
 (0)