public void should_remove_reservation_if_reserved() { var conferenceId = _testConference.Id; var roomType = RoomType.ConsultationRoom1; var reservationKey = $"{conferenceId}:{roomType}"; _memoryCache.Set(reservationKey, roomType); _roomReservationService.RemoveRoomReservation(conferenceId, roomType); _memoryCache.TryGetValue(reservationKey, out _).Should().BeFalse(); }
protected override async Task PublishStatusAsync(CallbackEvent callbackEvent) { var endpointStatus = DeriveEndpointStatusForTransferEvent(callbackEvent); var command = new UpdateEndpointStatusAndRoomCommand(SourceConference.Id, SourceEndpoint.Id, endpointStatus, callbackEvent.TransferTo); await CommandHandler.Handle(command); if (endpointStatus == EndpointState.InConsultation && callbackEvent.TransferTo.HasValue) { _roomReservationService.RemoveRoomReservation(SourceConference.Id, callbackEvent.TransferTo.Value); } }
protected override async Task PublishStatusAsync(CallbackEvent callbackEvent) { var participantStatus = DeriveParticipantStatusForTransferEvent(callbackEvent); var command = new UpdateParticipantStatusAndRoomCommand(SourceConference.Id, SourceParticipant.Id, participantStatus, callbackEvent.TransferTo); await CommandHandler.Handle(command); if (participantStatus == ParticipantState.InConsultation) { _roomReservationService.RemoveRoomReservation(SourceConference.Id, (RoomType)callbackEvent.TransferTo); } }