Пример #1
0
        public async Task PeriodReport_returnsModelWithStartAndEndForCurrentMonth_whenNoDates()
        {
            var database = new InMemoryDatabaseWithProjectsAndUsers().Database;

            database.AddTimeOff();

            var controller = new AdminReportsController(database);

            var expectedStartDate = new DateTime(DateTime.UtcNow.Year, DateTime.UtcNow.Month, 1);
            var expectedEndDate   = expectedStartDate.AddMonths(1).AddDays(-1);
            var result            = await controller.FilteredReport();

            var model = result.Model.Should().BeOfType <PayPeriodReportViewModel>().Which;

            model.SelectedProjectId.Should().BeNull();
            model.PayPeriodStartDate.Date.Should().Be(expectedStartDate.Date);
            model.PayPeriodEndDate.Date.Should().Be(expectedEndDate.Date);
            model.ReportItems.Should().HaveCount(database.Users.Count());
        }
Пример #2
0
        public async Task PeriodReport_returnsExpectedModelWithEndDate_whenStartDateSet()
        {
            var database = new InMemoryDatabaseWithProjectsAndUsers().Database;

            database.AddTimeOff();

            var controller = new AdminReportsController(database);

            var expectedStartDate = database.TimeEntries.First().Date;
            var expectedEndDate   = expectedStartDate.AddMonths(1).AddDays(-1);
            var result            = await controller.FilteredReport(expectedStartDate.ToString("yyyy-MM-dd"));

            var model = result.Model.Should().BeOfType <PayPeriodReportViewModel>().Which;

            model.SelectedProjectId.Should().BeNull();
            model.PayPeriodStartDate.Date.Should().Be(expectedStartDate.Date);
            model.PayPeriodEndDate.Date.Should().Be(expectedEndDate.Date);
            model.ReportItems.Should().HaveCount(database.Users.Count());
        }