public async Task <GetObjectListVm <GetCalendarSettingItemDto> > Handle(GetCalendarSettingListQuery request, CancellationToken cancellationToken) { var calendarSettings = await context.CalendarSettings .AsNoTracking() .ToListAsync(cancellationToken); var list = calendarSettings .Select(entity => new GetCalendarSettingItemDto { Id = entity.Id, FirstDayOfWeek = entity.FirstDayOfWeek, DefaultOpeningTime = entity.DefaultOpeningTime, DefaultClosingTime = entity.DefaultClosingTime, AllowedTimeslotOverlap = entity.AllowedTimeslotOverlap, }).ToList(); var dto = new GetObjectListVm <GetCalendarSettingItemDto> { Count = list.Count, Data = list }; return(dto); }
public async Task ShouldGetCalendarSettingList() { var CalendarSettingDto = await SendAsync(new CreateCalendarSettingItemCommand() { FirstDayOfWeek = DayOfWeek.Monday, DefaultOpeningTime = new TimeSpan(19, 0, 0), DefaultClosingTime = new TimeSpan(21, 0, 0), AllowedTimeslotOverlap = false, }); var created = await ExecuteDbContextAsync(db => db.CalendarSettings.Where(c => c.Id.Equals(CalendarSettingDto.Id)).SingleOrDefaultAsync()); GetCalendarSettingListQuery query = new GetCalendarSettingListQuery(); GetObjectListVm <GetCalendarSettingItemDto> dto = await SendAsync(query); dto.ShouldNotBeNull(); dto.Count.ShouldBeGreaterThanOrEqualTo(1); dto.Data.ShouldContain(d => d.Id.Equals(created.Id)); }