예제 #1
0
        public static IEnumerable <MatchRecord> NMatchesBetweenDates(
            int n,
            DateTime start,
            int initialCR       = 1000,
            int crMaxDifference = 500)
        {
            var valueFaker = new Faker();

            IEnumerable <DateTime> orderedDates = GenerateRealisticMatchTimes(n, start);

            List <MatchRecord> matches = new List <MatchRecord>();
            var i          = 0;
            var firstCR    = valueFaker.Random.Number(initialCR - crMaxDifference, initialCR + crMaxDifference);
            var firstMatch = new MatchRecord()
            {
                CR     = firstCR,
                Date   = orderedDates.ElementAt(i),
                Diff   = firstCR - initialCR,
                Map    = MapFaker.Random(),
                Result = MatchRecord.ComparerCR(firstCR, initialCR)
            };

            matches.Add(firstMatch);
            i++;


            MatchRecord lastMatch = firstMatch;

            while (i < n)
            {
                var newMatch = lastMatch.NewRelativeRecord(
                    valueFaker.Random.Number(initialCR - crMaxDifference, initialCR + crMaxDifference),
                    orderedDates.ElementAt(i),
                    MapFaker.Random()
                    );
                matches.Add(newMatch);
                i++;
            }

            return(matches);
        }