public async Task Add_Should_Successfully_Add_Mapping()
        {
            //Arrange
            var mapping = new UserTVShowMapping
            {
                UserId = _userId,
                TvShow = new TvShow
                {
                    ShowKey      = "show-show_show",
                    ShowName     = "Show Show Show",
                    ThumbnailUrl = "URL",
                    Summary      = "Summary"
                }
            };

            //Act
            var response = await _addUserTVShowMapping.Add(mapping);

            //Assert
            Assert.True(response.WasSuccessful);
            var savedRecord = await _context.Set <UserTVShowMapping>().Include(x => x.TvShow).FirstOrDefaultAsync(x => x.Id == response.Result.Id);

            Assert.AreEqual(mapping.UserId, savedRecord.UserId);
            Assert.AreEqual(mapping.TvShow.ShowKey, savedRecord.TvShow.ShowKey);
            Assert.AreEqual(mapping.TvShow.ShowName, savedRecord.TvShow.ShowName);
        }
        public async Task Add_Should_Call_Correct_Dependencies_On_Happy_Path()
        {
            //Arrange
            var mapping = _fixture.Create <UserTVShowMapping>();

            //Act
            var response = await _userTVShowMapping.Add(mapping);

            //Assert
            Assert.True(response.WasSuccessful);
            Assert.IsNull(response.Message);
            _logger.Verify(x => x.AddMessageDetail(It.IsAny <string>()), Times.Exactly(2));
            _logger.Verify(x => x.AddErrorDetail(It.IsAny <string>()), Times.Never);
            _logger.Verify(x => x.SubmitException(It.IsAny <Exception>()), Times.Never);
            _commandActionHandlers.Verify(x => x.AddUserTVShowMappingAsync(It.IsAny <UserTVShowMapping>()), Times.Once);
        }