AccidentalFish.ApplicationSupport.Core.Tests.Unit.Policies.Implementation.AsynchronousIntervalTimerTests.SettingCancellationTokenCancelsTimer C# (CSharp) Метод

SettingCancellationTokenCancelsTimer() приватный Метод

private SettingCancellationTokenCancelsTimer ( ) : Task
Результат Task
        public async Task SettingCancellationTokenCancelsTimer()
        {
            // Arrange
            Mock<IAsynchronousDelay> delay = new Mock<IAsynchronousDelay>();
            AsynchronousIntervalTimer timer = new AsynchronousIntervalTimer(delay.Object, TimeSpan.FromMilliseconds(PretendDelayInMilliseconds), false);
            CancellationTokenSource source = new CancellationTokenSource();
            int repeatCount = 0;

            // Act
            await timer.ExecuteAsync(ct =>
            {
                source.Cancel(true);
                repeatCount++;
                return Task.FromResult(true);
            }, source.Token);

            // Assert
            Assert.AreEqual(1, repeatCount);
            source.Dispose();
        }