public async Task <GalleryDTO> GetGalleryAsync(Guid galleryId) { GalleryEntity galleryEntity = await _galleryRepository.GetGallery(galleryId); int numImagesInGallery = _imageRepository.GetNumberOfImagesInGallery(galleryEntity.Id); return(galleryEntity.ToGalleryDto(numImagesInGallery)); }
public async Task <GalleryDTO> CreateGalleryAsync(Guid userId, GalleryCreationDTO galleryCreationDTO) { GalleryEntity entity = galleryCreationDTO.ToGalleryEntity(userId); GalleryEntity addedEntity = await _galleryRepository.PostGallery(entity); if (_galleryRepository.Save() == false) { throw new Exception(); } return(addedEntity.ToGalleryDto(0)); }
public async Task <GalleryDTO> PutGalleryAsync(Guid userId, Guid galleryId, GalleryPutDTO galleryPutDTO) { GalleryEntity galleryEntity = await _galleryRepository.GetGallery(galleryId); galleryPutDTO.ToGalleryEntity(ref galleryEntity); await _galleryRepository.PutGallery(galleryEntity); if (_galleryRepository.Save() == false) { throw new Exception(); } int numImagesInGallery = _imageRepository.GetNumberOfImagesInGallery(galleryEntity.Id); GalleryDTO dtoToReturn = galleryEntity.ToGalleryDto(numImagesInGallery); return(dtoToReturn); }
public static Mock <IGalleryService> CreateGalleryServiceMock(List <GalleryEntity> GalleryEntities, List <ImageEntity> ImageEntities) { Mock <IGalleryService> mock = new Mock <IGalleryService>(); mock .Setup(service => service.DoesGalleryExistAsync(It.IsAny <Guid>())) .ReturnsAsync((Guid galleryId) => { return(GalleryEntities.FirstOrDefault(tmp => tmp.Id == galleryId) != null); }); mock .Setup(service => service.IsGalleryOwnedByUserAsync(It.IsAny <Guid>(), It.IsAny <Guid>())) .ReturnsAsync((Guid galleryId, Guid userId) => { GalleryEntity galleryEntity = GalleryEntities.FirstOrDefault(tmp => tmp.Id == galleryId); return(galleryEntity.fk_owner == userId); }); mock .Setup(service => service.CreateGalleryAsync(It.IsAny <Guid>(), It.IsAny <GalleryCreationDTO>())) .ReturnsAsync((Guid userId, GalleryCreationDTO galleryCreationDTO) => { GalleryEntity entity = galleryCreationDTO.ToGalleryEntity(userId); GalleryEntities.Add(entity); return(entity.ToGalleryDto(0)); }); mock .Setup(service => service.PutGalleryAsync(It.IsAny <Guid>(), It.IsAny <Guid>(), It.IsAny <GalleryPutDTO>())) .ReturnsAsync((Guid userId, Guid galleryId, GalleryPutDTO galleryPutDTO) => { GalleryEntity galleryEntity = GalleryEntities.FirstOrDefault(tmp => tmp.Id == galleryId); galleryPutDTO.ToGalleryEntity(ref galleryEntity); int numImagesInGallery = ImageEntities.FindAll(tmp => tmp.fk_gallery == galleryId).Count(); return(galleryEntity.ToGalleryDto(numImagesInGallery)); }); mock .Setup(service => service.GetGalleryAsync(It.IsAny <Guid>())) .ReturnsAsync((Guid galleryId) => { GalleryEntity entity = GalleryEntities.FirstOrDefault(tmp => tmp.Id == galleryId); int numImagesInGallery = ImageEntities.FindAll(tmp => tmp.fk_gallery == galleryId).Count(); return(entity.ToGalleryDto(numImagesInGallery)); }); mock .Setup(service => service.GetGalleriesByUserAsync(It.IsAny <Guid>(), It.IsAny <Pagination>())) .ReturnsAsync((Guid userId, Pagination pagination) => { IEnumerable <GalleryEntity> galleryEntities = GalleryEntities.FindAll(tmp => tmp.fk_owner == userId); IEnumerable <GalleryDTO> galleryDTOs = galleryEntities.Select(tmpEntity => { int numImagesInGallery = ImageEntities.FindAll(tmp => tmp.fk_gallery == tmpEntity.Id).Count(); return(tmpEntity.ToGalleryDto(numImagesInGallery)); }); return(galleryDTOs); }); mock .Setup(service => service.DeleteGalleryAsync(It.IsAny <Guid>())) .Callback((Guid galleryId) => { GalleryEntity entity = GalleryEntities.FirstOrDefault(tmp => tmp.Id == galleryId); GalleryEntities.Remove(entity); }); return(mock); }