private static IEnumerable <MatchRecord> GetRecords() { TimeSpan interval = TimeSpan.FromMinutes(18); List <MatchRecord> records = new List <MatchRecord>(); Random rand = new Random(); int SR = rand.Next(1500, 2500); MatchRecord previousRecord = new MatchRecord() { CR = SR, Date = DateTime.Now, Diff = SR, Map = RandomMap(rand), Result = MatchResult.WIN }; records.Add(previousRecord); for (int i = 0; i <= 499; i++) { int newSR = previousRecord.CR + (rand.Next(15, 30) * SRChangeModifier(rand)); MatchRecord newRecord = previousRecord.NewRelativeRecord(newSR, previousRecord.Date.Add(interval), RandomMap(rand)); records.Add(newRecord); previousRecord = newRecord; } return(records); }
public void NewRelativeRecord_CreatesANewMatchRecord_WitLoseResult_WhenNewRankIsLessThanOldRank() { // Arrange MatchRecord original = MatchRecordFaker.CreateRecord(cr: 2000); // Act MatchRecord relative = original.NewRelativeRecord(1900, DateTime.Now, MapFaker.Random()); // Assert Assert.AreEqual(relative.Result, MatchResult.LOSE); }
public void NewRelativeRecord_CreatesANewMatchRecord_WithTheDifferencealculated_RelativeToTheOriginal() { // Arrange MatchRecord original = MatchRecordFaker.CreateRecord(cr: 2000); // Act MatchRecord relative = original.NewRelativeRecord(2100, DateTime.Now, MapFaker.Random()); // Assert Assert.AreEqual(relative.Diff, 100); }
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); }
private static IEnumerable <MatchRecord> GetRecords() { DateTime now = new DateTime(); var matchOne = new MatchRecord() { CR = 1000, Date = new DateTime(), Diff = 1000, Map = Maps.All.First(), Result = MatchResult.WIN }; var matchTwo = matchOne.NewRelativeRecord(1025, now.AddMinutes(30), Maps.All.ElementAt(1)); var matchThree = matchTwo.NewRelativeRecord(1061, now.AddMinutes(60), Maps.All.ElementAt(2)); return(new List <MatchRecord>() { matchOne, matchTwo, matchThree }); }