public async Task <Guid> CreateShortlistItem(Domain.Entities.Shortlist shortlist)
        {
            var item = await _shortlistRepository.GetShortlistUserItem(shortlist);

            if (item == null)
            {
                await _shortlistRepository.Insert(shortlist);
            }
            return(item?.Id ?? shortlist.Id);
        }
        public async Task Then_The_Item_Is_Added_To_The_Repository(
            Domain.Entities.Shortlist item,
            [Frozen] Mock <IShortlistRepository> repository,
            ShortlistService service)
        {
            //Arrange
            repository.Setup(x =>
                             x.GetShortlistUserItem(It.IsAny <Domain.Entities.Shortlist>()))
            .ReturnsAsync((Domain.Entities.Shortlist)null);
            //Act
            await service.CreateShortlistItem(item);

            //Assert
            repository.Verify(x => x.Insert(item), Times.Once);
        }
        public async Task Then_If_There_Already_Is_A_Matching_Item_On_Course_And_Provider_And_Location_It_Is_Not_Added(
            Domain.Entities.Shortlist item,
            [Frozen] Mock <IShortlistRepository> repository,
            ShortlistService service)
        {
            //Arrange
            repository.Setup(x =>
                             x.GetShortlistUserItem(item))
            .ReturnsAsync(item);


            //Act
            await service.CreateShortlistItem(item);

            //Assert
            repository.Verify(x => x.Insert(item), Times.Never);
        }