// TODO: Change this to be a generic method
 public static List <TodoEntity> CreateTestTodos()
 {
     return(new List <TodoEntity>()
     {
         TodoEntityBuilder.CreateValid(TestIds.NormalUsageId),
         TodoEntityBuilder.CreateValid(TestIds.OtherUsageId)
     });
 }
Exemple #2
0
 /// <summary>
 /// Creates test todos for testing purposes.
 /// </summary>
 /// <returns>List of todos for tests.</returns>
 private static List <TodoEntity> CreateTestTodos()
 {
     // TODO: Change this to be a generic method
     return(new List <TodoEntity>()
     {
         TodoEntityBuilder.CreateValid(TestIds.NormalUsageId),
         TodoEntityBuilder.CreateValid(TestIds.OtherUsageId)
     });
 }
        public void Map_EntityToDto_Is_Valid()
        {
            // Arrange
            var        mapper = new TodoDtoEntityMapper();
            TodoEntity entity = TodoEntityBuilder.CreateValid(TestIds.NormalUsageId);

            // Act
            TodoDto result = mapper.Map(entity);

            // Assert
            result.Should().BeEquivalentTo(entity);
        }
Exemple #4
0
        public async Task ListAllAsync_Ok()
        {
            // Arrange
            var repository = GetTodoRepository();
            var todo       = TodoEntityBuilder.CreateValid(TestIds.NormalUsageId);
            await repository.AddAsync(todo);

            // Act
            var items = await repository.ListAllAsync();

            // Assert
            items.Should().HaveCount(1);
        }
Exemple #5
0
        public async Task AddAsync_Ok()
        {
            // Arrange
            var repository = GetTodoRepository();
            var todo       = TodoEntityBuilder.CreateValid(TestIds.NormalUsageId);
            await repository.AddAsync(todo);

            // Act
            var item = await repository.GetByIdAsync(todo.Id);

            // Assert
            item.Should().NotBeNull();
            item.Id.Should().Be(todo.Id);
        }
        public void Map_EntityDtoToEntity_Is_Valid()
        {
            // Arrange
            var        mapper = new TodoDtoEntityMapper();
            TodoEntity entity = TodoEntityBuilder.CreateValid(TestIds.NormalUsageId);
            TodoDto    dto    = TodoDtoBuilder.CreateValid(TestIds.OtherUsageId);

            // Act
            TodoEntity result = mapper.Map(dto, entity);

            // Assert
            result.Should().BeEquivalentTo(dto, options => options.Excluding(o => o.Id));
            result.Id.Should().Be(entity.Id);
        }
        public void Map_List_EntityToDto_Is_Valid()
        {
            // Arrange
            var mapper = new TodoDtoEntityMapper();
            IReadOnlyList <TodoEntity> entities = new List <TodoEntity> {
                TodoEntityBuilder.CreateValid(TestIds.NormalUsageId)
            };

            // Act
            IEnumerable <TodoDto> result = mapper.Map(entities);

            // Assert
            result.Should().BeEquivalentTo(result);
        }
Exemple #8
0
        public async Task DeleteAsync_Ok()
        {
            // Arrange
            var repository = GetTodoRepository();
            var todo       = TodoEntityBuilder.CreateValid(TestIds.NormalUsageId);
            await repository.AddAsync(todo);

            // Act
            var firstResult = await repository.GetByIdAsync(todo.Id);

            await repository.DeleteAsync(todo);

            var secondResult = await repository.GetByIdAsync(todo.Id);

            // Assert
            firstResult.Should().NotBeNull();
            secondResult.Should().BeNull();
        }
Exemple #9
0
        public async Task UpdateAsync_Ok()
        {
            // Arrange
            var repository = GetTodoRepository();
            var todo       = TodoEntityBuilder.CreateValid(TestIds.NormalUsageId);
            await repository.AddAsync(todo);

            // Act
            todo.Description = "test1";
            await repository.UpdateAsync(todo);

            var result = await repository.GetByIdAsync(todo.Id);

            // Assert
            result.Should().NotBeNull();
            result.Id.Should().Be(todo.Id);
            result.Description.Should().Be(todo.Description);
        }
Exemple #10
0
    public async Task DeleteAsync_Ok()
    {
        // Arrange
        var repository = GetTodoRepository();
        var todo       = TodoEntityBuilder.CreateValid(TestIds.NormalUsageId);

        _ = await repository.AddAsync(todo);

        // Act
        var firstResult = await repository.GetByIdAsync(todo.Id);

        await repository.DeleteAsync(todo);

        Func <Task> secondResult = async() => await repository.GetByIdAsync(todo.Id);

        // Assert
        _ = firstResult.Should().NotBeNull();
        _ = await secondResult.Should().ThrowAsync <EntityNotFoundException>().WithMessage($"*{todo.Id}*");
    }