Exemplo n.º 1
0
        public async Task DelayTimespan()
        {
            var begin = DateTime.Now;

            await ValueTaskEx.Delay(TimeSpan.FromMilliseconds(1000));

            var end = DateTime.Now;

            Assert.IsTrue(200 > Math.Abs((end - begin).TotalMilliseconds - 1000));
        }
Exemplo n.º 2
0
        public async Task DelayMillisecondWithCT()
        {
            var cts = new CancellationTokenSource();

            var task = ValueTaskEx.Delay(1000, cts.Token);

            Assert.IsFalse(task.IsCompleted);

            cts.Cancel();
            Assert.IsTrue(task.IsCompleted);
            Assert.IsTrue(task.IsCanceled);

            await AssertCaughtAsync <TaskCanceledException, Unit>(task);
        }