Example #1
0
        public void SetUp()
        {
            _calculator          = new StatsCalculator();
            _fakeBattingStats    = GenerateFakeBattingStats();
            _fakeCalculatorStats = ConvertOptionalParamsToNonNullable(_fakeBattingStats);
            _calculator.CalculateStats(_fakeBattingStats);

            _fakeTeamStats           = GenerateFakeTeamStats();
            _fakeTeamCalculatorStats = ConvertOptionalParamsToNonNullable(_fakeTeamStats);
            _calculator.CalculateStats(_fakeTeamStats);

            _fakeBattingPostStats    = GenerateFakeBattingPostStats();
            _fakePostCalculatorStats = ConvertOptionalParamsToNonNullable(_fakeBattingPostStats);
            _calculator.CalculateStats(_fakeBattingPostStats);
        }
Example #2
0
        public void MonthStats_ProvidedRecordsEachMonthDayWithAndLastThatEndsNextMonthTotal1920Secs_Returns1920SecsAsField()
        {
            var inputList = new List <TrackRecord>();


            for (int i = 0; i < 31; i++)
            {
                inputList.Add(new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, i + 1, 2, 0, 40),
                    EndDate   = new DateTime(2014, 8, i + 1, 2, 1, 40)
                });
            }

            inputList.Add(new TrackRecord
            {
                StartDate = new DateTime(2014, 8, 31, 23, 59, 0),
                EndDate   = new DateTime(2014, 9, 1, 0, 0, 40)
            });
            //act

            var result = StatsCalculator.CalculateStats(inputList, new DateTime(2014, 8, 1), new DateTime(2014, 9, 1));

            //assert
            Assert.AreEqual(1920, result);
        }
Example #3
0
        public void WeekStats_ProvidedRecordsEachWeekDayWithTotal400Secs_Returns400SecsAsField()
        {
            //arrange
            var input = new[] {
                new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, 18, 1, 0, 0),
                    EndDate   = new DateTime(2014, 8, 18, 1, 0, 40)
                },
                new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, 19, 2, 0, 40),
                    EndDate   = new DateTime(2014, 8, 19, 2, 1, 40)
                },
                new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, 20, 2, 0, 40),
                    EndDate   = new DateTime(2014, 8, 20, 2, 1, 40)
                },
                new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, 21, 2, 0, 40),
                    EndDate   = new DateTime(2014, 8, 21, 2, 1, 40)
                },
                new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, 22, 2, 0, 40),
                    EndDate   = new DateTime(2014, 8, 22, 2, 1, 40)
                },
                new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, 23, 2, 0, 40),
                    EndDate   = new DateTime(2014, 8, 23, 2, 1, 40)
                },
                new TrackRecord
                {
                    StartDate = new DateTime(2014, 8, 24, 2, 0, 40),
                    EndDate   = new DateTime(2014, 8, 24, 2, 1, 40)
                }
            };

            //act

            var result = StatsCalculator.CalculateStats(input, new DateTime(2014, 8, 18), new DateTime(2014, 8, 25));

            //assert
            Assert.AreEqual(400, result);
        }
Example #4
0
        public void WeekStats_ProvidedTodaysRecordsWithTotal100Secs_Returns100SecsAsField()
        {
            //arrange
            var input = new[] { new TrackRecord
                                {
                                    StartDate = new DateTime(2014, 8, 19, 1, 0, 0),
                                    EndDate   = new DateTime(2014, 8, 19, 1, 0, 40)
                                },
                                new TrackRecord
                                {
                                    StartDate = new DateTime(2014, 8, 19, 2, 0, 40),
                                    EndDate   = new DateTime(2014, 8, 19, 2, 1, 40)
                                } };

            //act

            var result = StatsCalculator.CalculateStats(input, new DateTime(2014, 8, 18), new DateTime(2014, 8, 25));

            //assert
            Assert.AreEqual(100, result);
        }
Example #5
0
        public void DayStats_ProvidedTodaysRecordsWithTotal100SecsForTodayAndLastEndsNextDay_Returns100SecsAsField()
        {
            //arrange
            var input = new[] { new TrackRecord
                                {
                                    StartDate = new DateTime(2014, 8, 18, 23, 54, 00),
                                    EndDate   = new DateTime(2014, 8, 19, 0, 0, 40)
                                },
                                new TrackRecord
                                {
                                    StartDate = new DateTime(2014, 8, 19, 23, 59, 0),
                                    EndDate   = new DateTime(2014, 8, 20, 2, 1, 40)
                                } };

            //act

            var result = StatsCalculator.CalculateStats(input, new DateTime(2014, 8, 19), new DateTime(2014, 8, 20));

            //assert
            Assert.AreEqual(100, result);
        }
Example #6
0
        public void WeekStats_ProvidedRecordsDifferentDaysLastEndNextWeekWithTotalForWeek100Secs_Returns100SecsAsField()
        {
            //arrange
            var input = new[] { new TrackRecord
                                {
                                    StartDate = new DateTime(2014, 8, 18, 0, 1, 0),
                                    EndDate   = new DateTime(2014, 8, 18, 0, 1, 40)
                                },
                                new TrackRecord
                                {
                                    StartDate = new DateTime(2014, 8, 24, 23, 59, 00),
                                    EndDate   = new DateTime(2014, 8, 25, 2, 1, 40)
                                } };

            //act

            var result = StatsCalculator.CalculateStats(input, new DateTime(2014, 8, 18), new DateTime(2014, 8, 25));

            //assert
            Assert.AreEqual(100, result);
        }