Esempio n. 1
0
    public override Task <IEnumerable <ResultInfo> > SearchAsync(string query)
    {
        return(Task.FromResult(_())); IEnumerable <ResultInfo> _()
        {
            var originator = Guid.NewGuid().ToString();
            var results    = _settings.AtLeast.HasValue
                ? ResultInfoBuilder.GenerateRandom(originator, _settings.AtLeast ?? 1, _settings.Samples)
                : ResultInfoBuilder.Generate(originator, _settings.Samples);

            if (Runtime.MaximumResults.HasValue)
            {
                results = results.Take((int)Runtime.MaximumResults.Value);
            }
            for (ushort i = 0; i < results.Count(); i++)
            {
                var result = results.ElementAt(i);
                yield return(CreateResult(i, result.Url, result.Description));
            }
        }
    }
Esempio n. 2
0
        public void Should_ordered_by_index()
        {
            var results = new List <ResultInfo>();

            results.AddRange(ResultInfoBuilder.Generate("Choice1", 3));
            results.AddRange(ResultInfoBuilder.Generate("Choice2", 5));
            var sut       = new Order(null);
            var processed = sut.Process(results);

            processed.Should().NotBeEmpty()
            .And.SatisfyRespectively(
                item => item.Index.Should().Be(0),
                item => item.Index.Should().Be(0),
                item => item.Index.Should().Be(1),
                item => item.Index.Should().Be(1),
                item => item.Index.Should().Be(2),
                item => item.Index.Should().Be(2),
                item => item.Index.Should().Be(3),
                item => item.Index.Should().Be(4)
                );
        }