public async Task DreamersController_PUT_UpdateDreamer() { //Arrange var category = _fixture.DreamCategoryBuilder(10).Create(); var category2 = _fixture.DreamCategoryBuilder(15).Create(); await IntegrationTestsFixture.DatabaseContext.DreamCategories.AddAsync(category); await IntegrationTestsFixture.DatabaseContext.DreamCategories.AddAsync(category2); await IntegrationTestsFixture.DatabaseContext.SaveChangesAsync(); var dream = new Dream { DisplayName = "T", Age = 2, DreamUrl = "https://mam-marzenie.pl/marzenie/1", Tags = "tag1", DreamCategoryId = category.DreamCategoryId }; await IntegrationTestsFixture.DatabaseContext.Dreams.AddAsync(dream); await IntegrationTestsFixture.DatabaseContext.SaveChangesAsync(); IntegrationTestsFixture.SetUserContext(new User { Role = UserRoleEnum.Coordinator }); var request = new UpdateDreamRequest { DreamId = dream.DreamId, DisplayName = "Test", Age = 3, DreamUrl = "https://mam-marzenie.pl/marzenie/2", Tags = "tag1, tag2", CategoryId = category2.DreamCategoryId }; //Act var _ = await Client.PutAsync("/api/dreams", request.WithJsonContent().json).AsResponse <UpdateDreamResponse>(); IntegrationTestsFixture.SetUserContext(new User { Role = UserRoleEnum.Admin }); var queryResponse = await Client.GetDreams(); queryResponse.Should().NotBeNull(); queryResponse.Dreams.Count.Should().Be(1); queryResponse.Dreams.Should().SatisfyRespectively(x => { x.DreamId.Should().Be(dream.DreamId); x.DisplayName.Should().Be(request.DisplayName); x.Age.Should().Be(request.Age); x.DreamUrl.Should().Be(request.DreamUrl); x.Tags.Should().Be(request.Tags); x.DreamCategory.Should().NotBeNull(); x.DreamCategory.DreamCategoryId.Should().Be(request.CategoryId); }); }
public async Task <UpdateDreamResponse> UpdateDream([FromBody] UpdateDreamRequest request) => await _mediator.Send(request);