Exemplo n.º 1
0
        public void PlayTimesPerDay_TooOldGame_On14Days()
        {
            var dateTime        = new DateTimeOffset(new DateTime(2020, 10, 16));
            var hourOfPlayStats = HourOfPlayStat.Create(dateTime);

            hourOfPlayStats.Apply(GameMode.GM_1v1, dateTime.AddDays(-14), dateTime);

            Assert.AreEqual(0, hourOfPlayStats.PlayTimesPerMode[0].PlayTimePerHour[0].Games);
        }
Exemplo n.º 2
0
        public void PlayTimesPerDayOneDayAfterInterval()
        {
            var dateTime        = new DateTimeOffset(new DateTime(2020, 10, 16));
            var hourOfPlayStats = HourOfPlayStat.Create(dateTime);

            hourOfPlayStats.Apply(GameMode.GM_1v1, dateTime.AddDays(1), dateTime.AddDays(1));

            Assert.AreEqual(1, hourOfPlayStats.PlayTimesPerModeTwoWeeks[0].PlayTimePerHour[0].Games);
        }
Exemplo n.º 3
0
        public void PlayTimesPerDayOneHourOff()
        {
            var dateTime        = new DateTimeOffset(new DateTime(2020, 10, 16));
            var hourOfPlayStats = HourOfPlayStat.Create(dateTime);

            hourOfPlayStats.Apply(GameMode.GM_1v1, dateTime.AddHours(-1), dateTime);

            Assert.AreEqual(1, hourOfPlayStats.PlayTimesPerModeTwoWeeks[5].PlayTimePerHour[92].Games);
        }
Exemplo n.º 4
0
        public void PlayTimesPerDay_Average()
        {
            var dateTime        = new DateTimeOffset(new DateTime(2020, 10, 16));
            var hourOfPlayStats = HourOfPlayStat.Create(dateTime);

            hourOfPlayStats.Apply(GameMode.GM_1v1, dateTime, dateTime);
            hourOfPlayStats.Apply(GameMode.GM_1v1, dateTime.AddDays(-1), dateTime);
            hourOfPlayStats.Apply(GameMode.GM_1v1, dateTime.AddDays(-2), dateTime);

            Assert.AreEqual(3, hourOfPlayStats.PlayTimesPerMode[0].PlayTimePerHour[0].Games);
            Assert.AreEqual(15, hourOfPlayStats.PlayTimesPerMode[0].PlayTimePerHour[1].Minutes);
            Assert.AreEqual(1, hourOfPlayStats.PlayTimesPerMode[0].PlayTimePerHour[4].Hours);
        }
Exemplo n.º 5
0
        public async Task PlayTimesPerDay_Average_TimeIsSetCorrectly_afterLoad()
        {
            var dateTime        = new DateTimeOffset(new DateTime(2020, 10, 16));
            var hourOfPlayStats = HourOfPlayStat.Create(dateTime);

            var w3StatsRepo = new W3StatsRepo(MongoClient);
            await w3StatsRepo.Save(hourOfPlayStats);

            var hourOfPlayStatsLoaded = await w3StatsRepo.LoadHourOfPlay();

            Assert.AreEqual(0, hourOfPlayStatsLoaded.PlayTimesPerMode[0].PlayTimePerHour[0].Minutes);
            Assert.AreEqual(0, hourOfPlayStatsLoaded.PlayTimesPerMode[0].PlayTimePerHour[0].Hours);

            Assert.AreEqual(15, hourOfPlayStatsLoaded.PlayTimesPerMode[0].PlayTimePerHour[1].Minutes);
            Assert.AreEqual(0, hourOfPlayStatsLoaded.PlayTimesPerMode[0].PlayTimePerHour[1].Hours);

            Assert.AreEqual(0, hourOfPlayStatsLoaded.PlayTimesPerMode[0].PlayTimePerHour[4].Minutes);
            Assert.AreEqual(1, hourOfPlayStatsLoaded.PlayTimesPerMode[0].PlayTimePerHour[4].Hours);
        }
Exemplo n.º 6
0
 public Task Save(HourOfPlayStat stat)
 {
     return(Upsert(stat));
 }