Esempio n. 1
0
        public static IEnumerable <object[]> GetAllCompleted_ReturnExpectedResult_Data()
        {
            var dates = DateTimeFactory.GetRandomDateTimes(10);

            var multimediaPerDay = new Dictionary <DateTime, IReadOnlyList <CompletedEnglishMultimedia> >();
            var tasksPerDay      = new Dictionary <DateTime, IReadOnlyList <CompletedEnglishTask> >();

            foreach (var date in dates)
            {
                multimediaPerDay[date] = CompletedEnglishMultimediaFactory.GetSimpleModels(_random.Next(1, 8), date: date);
                tasksPerDay[date]      = CompletedEnglishTaskFactory.GetSimpleModels(_random.Next(1, 8), date: date);
            }

            var allMultimedias = multimediaPerDay.SelectMany(x => x.Value).ToList();
            var allTasks       = tasksPerDay.SelectMany(x => x.Value).ToList();

            var expectedModels = new List <GroupedCompletedStatistic>();

            foreach (var date in dates)
            {
                var statisticDate  = new StatisticDate(date.Day, date.Month, date.Year);
                var completedByDay = multimediaPerDay[date]
                                     .OfType <CompletedStatistic>()
                                     .Concat(tasksPerDay[date])
                                     .ToList();

                var groupedCompletedStatistic = new GroupedCompletedStatistic(statisticDate, completedByDay);
                expectedModels.Add(groupedCompletedStatistic);
            }

            yield return(new object[] { allMultimedias, allTasks, expectedModels });
        }