public async Task AddAuthorCommandHandler_WithExperiences_ReturnsAuthor() { var image = await AddImage(); var experiences = new List <ExperienceDto>(); var experienceDto = new ExperienceDto() { Color = "#000000", Name = "Testfile", ImageId = image.Id }; experiences.Add(experienceDto); var authorValidator = new AuthorValidator(RequestDbContext); var addAuthorCommandHandler = new AddAuthorCommandHandler(TestContext.CreateHandlerContext <AuthorViewModel>(RequestDbContext, CreateMapper()), _userService, authorValidator); var message = new AddAuthorCommand() { FirstName = "Tom", LastName = "Bina", About = "About me", Experiences = experiences }; var result = await addAuthorCommandHandler.Handle(message, CancellationToken.None); Assert.Equal("Testfile", result.Experiences.First().Name = experienceDto.Name); }
public async Task AddAuthorCommandHandler_AddingSecondTime_ThrowsException() { await AddAuthor(); var authorValidator = new AuthorValidator(RequestDbContext); var addAuthorCommandHandler = new AddAuthorCommandHandler(TestContext.CreateHandlerContext <AuthorViewModel>(RequestDbContext, CreateMapper()), _userService, authorValidator); var message = new AddAuthorCommand() { FirstName = "Tom", LastName = "Bina", About = "About me" }; await Assert.ThrowsAsync <InvalidOperationException>(async() => { await addAuthorCommandHandler.Handle(message, CancellationToken.None); }); }