예제 #1
0
            public async Task <Result> Handle(Query request, CancellationToken cancellationToken)
            {
                var pins = await _coordinationNumbersTestdata.GetSwedishCoordinationNumbersAsync();

                var pinsList = pins.ToList();

                var random  = new Random();
                var numbers = Enumerable.Range(0, request.Count ?? 5)
                              .Select(x => pinsList[random.Next(pinsList.Count)])
                              .ToList();

                return(new Result(numbers));
            }
예제 #2
0
            public async Task <Result> Handle(Query request, CancellationToken cancellationToken)
            {
                var number = request.Number ?? string.Empty;

                try
                {
                    var result  = SwedishCoordinationNumber.Parse(number);
                    var numbers = await _coordinationNumbersTestdataProvider.GetSwedishCoordinationNumbersAsync();

                    var isTestdataNumber = numbers.Contains(result);

                    return(Result.Valid(number, isTestdataNumber, result));
                }
                catch (Exception e)
                {
                    return(Result.Invalid(number, e.Message));
                }
            }
            private async Task <Result> Handle(QueryBase request, CancellationToken cancellationToken)
            {
                var testdata = await _coordinationNumbersTestdataProvider.GetSwedishCoordinationNumbersAsync();

                var filteredTestdata     = ApplyFilters(request, testdata);
                var filteredTestdataList = filteredTestdata.ToList();
                var paginatedTestData    = Paginate(request, filteredTestdataList);

                var totalAgeRange = new Range <int>
                {
                    From = testdata.Min(x => x.GetAgeHint()),
                    To   = testdata.Max(x => x.GetAgeHint())
                };

                var totalDateOfBirthRange = new Range <DateTime>
                {
                    From = testdata.Min(x => x.GetDateOfBirthHint()),
                    To   = testdata.Max(x => x.GetDateOfBirthHint())
                };

                return(new Result(paginatedTestData, filteredTestdataList.Count, testdata.Count, totalAgeRange, totalDateOfBirthRange));
            }