Beispiel #1
0
        public void Given_Factry_When_Create_Then_TimeDifferenceSinceCtor()
        {
            var start   = new DateTime(2019, 11, 17, 09, 00, 00);
            var factory = new ConditionInstanceTimeSpanFactory(start);

            var ts1 = TimeSpan.FromMilliseconds(500);
            var ts2 = TimeSpan.FromMilliseconds(1000);

            var result1 = factory.Create(start.Add(ts1));
            var result2 = factory.Create(start.Add(ts2));

            Assert.That(result1, Is.EqualTo(ts1));
            Assert.That(result2, Is.EqualTo(ts2));
        }
Beispiel #2
0
            public async Task <Verifier> BuildAsync(CancellationToken ct)
            {
                // use the longest defined timeout
                var verifierTimeout = _specs
                                      .Select(x => x.ExpectationSpec.Timeout ?? TimeSpan.Zero)
                                      .Concat(new[] { _expectationTimeout ?? _env._defaultExpectationTimeout })
                                      .Max();

                var timespanFactory = new ConditionInstanceTimeSpanFactory(DateTime.Now);

                var expectations = _specs.Select(async x =>
                {
                    var componentConditionEvaluator = await x.ComponentSpec.BuildAsync(timespanFactory, ct);
                    return(x.ExpectationSpec.Build(verifierTimeout, componentConditionEvaluator, x.ComponentSpec.Description));
                }).ToList();

                await Task.WhenAll(expectations);

                return(new Verifier(
                           expectations.Select(x => x.Result).ToList(),
                           _shortCircuit ?? _env._defaultExpectationShortCircuit));
            }