public async Task <IActionResult> MarkMediaAsFavorite(string id)
        {
            var command = MarkFavoriteMediaCommand.Create(id, User.GetUserId());
            await _mediator.Send(command);

            return(Ok());
        }
        public void GivenUserIdIsNull_ArgumentNullExceptionIsThrown()
        {
            string givenUserId = null;
            var    givenSampleMediaInstanceId = "abcdefgh";

            Action act = () => MarkFavoriteMediaCommand.Create(givenSampleMediaInstanceId, givenUserId);

            act.Should().Throw <ArgumentNullException>();
        }
        public void GivenSampleMediaAndUser_FavoriteMediaIsAdded()
        {
            var givenSampleUserId          = "user1";
            var givenSampleMediaInstanceId = "1";

            AddMediaInstance(givenSampleMediaInstanceId);

            var command = MarkFavoriteMediaCommand.Create(givenSampleMediaInstanceId, givenSampleUserId);
            var handler = new MarkFavoriteMediaCommandHandler(_contextMock);

            handler.Handle(command, CancellationToken.None).Wait();

            _contextMock.FavoriteMedia.Should()
            .Contain(fm => fm.UserId == givenSampleUserId && fm.MediaInstanceId == givenSampleMediaInstanceId);
        }