Exemple #1
0
        protected override async Task <SlackMessageResponse> RespondTo(DeleteInterpretedMessage message)
        {
            var userService = new UserService(dbContext);

            var user = await userService.FindOrCreateSlackUser(message.UserId, message.UserName);

            var timeEntryService = new TimeEntryService(user.UserId, dbContext);

            double hoursDeleted;

            if (message.TimeEntryType.HasValue)
            {
                hoursDeleted = await timeEntryService.DeleteHoursForTimeEntryType(message.Date, message.TimeEntryType.Value);

                return(new SlackMessageResponse($"Deleted {hoursDeleted:F1} {message.TimeEntryType} hours for date: {message.Date:D}", true));
            }

            hoursDeleted = await timeEntryService.DeleteHours(message.Date);

            return(new SlackMessageResponse($"Deleted {hoursDeleted:F1} hours for date: {message.Date:D}", true));
        }
Exemple #2
0
        public async Task DeleteHours_ThatDontExistFromToday_works()
        {
            var hoursDeleted = await timeEntryService.DeleteHours(DateTime.UtcNow);

            hoursDeleted.Should().Be(0);
        }