示例#1
0
        public async Task Does_not_throw_if_cancellation_token_is_default()
        {
            CancellationToken    cancellationToken = default;
            CancellationTxTracer tracer            = new CancellationTxTracer(Substitute.For <ITxTracer>(), cancellationToken)
            {
                IsTracingActions = true
            };

            await Task.Delay(2000, cancellationToken);

            Assert.DoesNotThrow(() => tracer.ReportActionError(EvmExceptionType.None));
        }
示例#2
0
        public async Task Throw_operation_canceled_after_given_timeout()
        {
            TimeSpan timeout = TimeSpan.FromMilliseconds(10);

            using CancellationTokenSource cancellationTokenSource = new CancellationTokenSource(timeout);
            CancellationToken    cancellationToken = cancellationTokenSource.Token;
            CancellationTxTracer tracer            = new CancellationTxTracer(Substitute.For <ITxTracer>(), cancellationToken)
            {
                IsTracingActions = true
            };

            // ReSharper disable once MethodSupportsCancellation
            await Task.Delay(100);

            Assert.Throws <OperationCanceledException>(() => tracer.ReportActionError(EvmExceptionType.None));
        }