public void Handle_WithNullGetTodoItemsQuery_ShouldTrowException()
        {
            // Arrange
            GetTodoItemsQuery query = null;

            // Assert
            Assert.Throws <ArgumentNullException>(() => _todoItemsQueryHandler.Handle(query));
        }
Example #2
0
        public async Task <IEnumerable <TodoItemDto> > Handle(
            GetTodoItemsQuery request,
            CancellationToken cancellationToken = default)
        {
            cancellationToken.ThrowIfCancellationRequested();

            var entities = await _dbContext.TodoItems
                           .OrderBy(keySelector : x => x.Id)
                           .ToArrayAsync(cancellationToken: cancellationToken);

            return(_mapper.Map <IEnumerable <TodoItemDto> >(source: entities));
        }
        public IEnumerable <TodoItemDto> Handle(GetTodoItemsQuery query)
        {
            if (query == null)
            {
                throw new System.ArgumentNullException("GetTodoItemsQuery is required");
            }

            var results = _todoRepository.GetAll().Select(result => new TodoItemDto()
            {
                Id        = result.Id,
                Completed = result.Completed,
                Title     = result.Title,
                CreatedAt = result.CreatedAt,
                UpdatedAt = result.UpdatedAt
            }).OrderBy(o => o.CreatedAt).ToList();

            return(results);
        }
        public Task <IEnumerable <TodoItemDto> > Handle(GetTodoItemsQuery request, CancellationToken cancellationToken)
        {
            Task <List <TodoItem> > todoItems = todoItemContext.TodoItem.ToListAsync();

            return(todoItems.ContinueWith <IEnumerable <TodoItemDto> >(t =>
            {
                List <TodoItem> items = t.Result;
                if (items != null)
                {
                    List <TodoItemDto> itemDtos = new List <TodoItemDto>(items.Count);

                    items.ForEach(it =>
                    {
                        itemDtos.Add(ConvertToDto(it));
                    });
                    return itemDtos;
                }
                return null;
            }));
        }
        public void Handle_WithNonNullQuery_ShouldReturnListOfItems()
        {
            // Arrange
            GetTodoItemsQuery query = new GetTodoItemsQuery();
            var expected            = new List <TodoItem>()
            {
                _fixture.Create <TodoItem>(),
                _fixture.Create <TodoItem>(),
                _fixture.Create <TodoItem>()
            };

            _mockTodoRepository.Setup(s => s.GetAll()).Returns(expected);

            // Act
            var result = _todoItemsQueryHandler.Handle(query);

            // Assert
            Assert.NotNull(result);
            Assert.Equal(expected.Count, result.Count());
        }
        public IEnumerable <TodoItemDto> Handle(GetTodoItemsQuery query)
        {
            var todoItems = this._todoRepository.GetAllTodos(query.GoBackMinutes);

            var todoItemsDtoList = new List <TodoItemDto>();

            foreach (var todoItem in todoItems)
            {
                if (todoItem.IsDiscarded)
                {
                    continue;
                }

                var todoItemDto = this._mapper.Map(todoItem);
                todoItemsDtoList.Add(todoItemDto);
            }


            return(todoItemsDtoList);
        }