public async Task CanCreateWorkItemsFromRecurringWorkItem()
        {
            var dto    = new RecurringWorkItem();
            int userId = 1;

            dto.CompletionMode    = CompletionMode.AnyAssigned;
            dto.DescriptionMarkup = "Description";
            dto.Location          = "Location";
            dto.Name               = "Name";
            dto.PatrolId           = 1;
            dto.RecurStart         = new DateTime(2001, 1, 1, 9, 0, 0);
            dto.RecurEnd           = new DateTime(2001, 1, 4, 9, 0, 0);
            dto.RecurInterval      = RecurInterval.Day;
            dto.RecurIntervalCount = 1;

            var now = new DateTimeOffset(2001, 1, 1, 0, 0, 0, new TimeSpan());

            _systemClockMock.Setup(x => x.UtcNow).Returns(now);

            _workItemRepository.Setup(x => x.GetWorkItems(It.IsAny <int>(), now.UtcDateTime))
            .Returns(Task.FromResult(new List <WorkItem>()
            {
            }.AsEnumerable()))
            .Verifiable();

            _workItemRepository.Setup(x => x.InsertWorkItem(It.Is <WorkItem>(y => y.ScheduledAt.Day == 1)))
            .Verifiable();
            _workItemRepository.Setup(x => x.InsertWorkItem(It.Is <WorkItem>(y => y.ScheduledAt.Day == 2)))
            .Verifiable();
            _workItemRepository.Setup(x => x.InsertWorkItem(It.Is <WorkItem>(y => y.ScheduledAt.Day == 3)))
            .Verifiable();
            _workItemRepository.Setup(x => x.InsertWorkItem(It.Is <WorkItem>(y => y.ScheduledAt.Day == 4)))
            .Verifiable();

            await _workItemService.PopulateTimedWorkItemOccurences(dto, userId, new List <int>() { userId }, now.UtcDateTime, false);

            _workItemRepository.Verify();
        }