public async Task Should_remove_messages_for_conference() { var conference = new ConferenceBuilder(true) .WithMessages(2) .Build(); var seededConference = await TestDataManager.SeedConference(conference); TestContext.WriteLine($"New seeded conference id: {seededConference.Id}"); _newConferenceId = seededConference.Id; var command = new RemoveInstantMessagesForConferenceCommand(_newConferenceId); await _handler.Handle(command); List <InstantMessage> messages; await using (var db = new VideoApiDbContext(VideoBookingsDbContextOptions)) { messages = await db.InstantMessages.Where(x => x.ConferenceId == command.ConferenceId).ToListAsync(); } var afterCount = messages.Count; afterCount.Should().Be(0); }
public async Task <IActionResult> RemoveInstantMessagesForConferenceAsync(Guid conferenceId) { _logger.LogDebug("RemoveInstantMessagesForConference"); try { var command = new RemoveInstantMessagesForConferenceCommand(conferenceId); await _commandHandler.Handle(command); return(NoContent()); } catch (Exception e) { _logger.LogError(e, "Unable to remove instant messages"); return(BadRequest()); } }