Пример #1
0
        public Task <bool> TryLogDayAsync(DateTime day, int trackerId)
        {
            LoggedDays.Add(new LoggedDay
            {
                Id        = _idCount++,
                Date      = day,
                TrackerId = trackerId
            });

            return(Task.FromResult(true));
        }
Пример #2
0
        public Task <bool> TryBulkAddEntriesAsync(IEnumerable <DateTime> days, int trackerId)
        {
            LoggedDays.AddRange(days.Select(day => new LoggedDay
            {
                Id        = _idCount++,
                Date      = day,
                TrackerId = trackerId
            }));

            return(Task.FromResult(true));
        }
Пример #3
0
 public IEnumerable <LoggedDayGroup> TryGetAllLoggedDayGroups(IEnumerable <LoggedDay> loggedDays, int trackerId,
                                                              GroupSortOption sortOption)
 {
     SortOption = sortOption;
     return(LoggedDays.Where(day => day.TrackerId == trackerId)
            .GroupBy(day => day.Date.Date,
                     (day, group) => new LoggedDayGroup
     {
         Date = day,
         Count = group.Count()
     }));
 }
Пример #4
0
        public Task <bool> TryDeleteLoggedDayAsync(int id)
        {
            var day = LoggedDays.FirstOrDefault(d => d.Id == id);

            if (day is null)
            {
                return(Task.FromResult(false));
            }

            LoggedDays.Remove(day);
            return(Task.FromResult(true));
        }
        public async Task TryDeleteLoggedDayAsync_ExistingId_DoesNotDeleteTracker()
        {
            // arrange
            var service = new TrackerLogService(_database, _logger);
            int id      = 1;

            // act
            var trackerId = LoggedDays.First(day => day.Id == id).TrackerId;
            await service.TryDeleteLoggedDayAsync(id);

            var tracker = Trackers.FirstOrDefault(t => t.Id == trackerId);

            // assert
            Assert.NotNull(tracker);
        }
Пример #6
0
 public Task <IEnumerable <LoggedDay> > TryGetAllLoggedDaysAsync(int trackerId) =>
 Task.FromResult(LoggedDays.OrderByDescending(day => day.Date).AsEnumerable());