public void UploadImage_Fails() { // Arrange itemCardRepository.Repository.Add(new ItemCard { Id = idOfItemCard }); itemCardImageRepository.Repository.Add(new ItemCardImage { Id = idOfItemCardImage }); var memoryStream = new MemoryStream(); unitOfWork.Setup(x => x.GetRepository <ItemCard>(It.IsAny <bool>())).Returns(itemCardRepository); unitOfWork.Setup(x => x.GetRepository <ItemCardImage>(It.IsAny <bool>())).Returns(itemCardImageRepository); var serviceForTest = new ItemCardImageService(ajkaShopDbContext.Object, unitOfWork.Object, environment.Object, fileProcessingService.Object, itemCardImageQueries.Object); // Act serviceForTest.UploadImageAsync(idOfAnotherItemCard, memoryStream, Guid.NewGuid().ToString(), CancellationToken.None).Wait(); // Assert // Image is not created, because there is not DB record of item card. Assert.NotNull(itemCardImageRepository.Repository.Where(x => x.ImagePath == null)); }
public void UploadImage_Succeeds() { // Arrange itemCardRepository.Repository.Add(new ItemCard { Id = idOfItemCard }); itemCardImageRepository.Repository.Add(new ItemCardImage { Id = idOfItemCardImage }); var memoryStream = new MemoryStream(); var testImage = new Bitmap(2, 2); testImage.Save(memoryStream, ImageFormat.Jpeg); unitOfWork.Setup(x => x.GetRepository <ItemCard>(It.IsAny <bool>())).Returns(itemCardRepository); unitOfWork.Setup(x => x.GetRepository <ItemCardImage>(It.IsAny <bool>())).Returns(itemCardImageRepository); environment.Setup(x => x.WebRootPath).Returns(Guid.NewGuid().ToString()); var serviceForTest = new ItemCardImageService(ajkaShopDbContext.Object, unitOfWork.Object, environment.Object, fileProcessingService.Object, itemCardImageQueries.Object); // Act serviceForTest.UploadImageAsync(idOfItemCard, memoryStream, Guid.NewGuid().ToString(), CancellationToken.None).Wait(); // Assert // Image is succesfully created and path is registered in DB. Assert.NotNull(itemCardImageRepository.Repository.Where(x => x.ImagePath != null && x.ItemCardId == idOfItemCard)); }
public void SynchronizeAdlerImages_Succeeds() { // Arrange itemCardImageRepository.Repository.Add(GetItemCardImageTestData().First()); unitOfWork.Setup(x => x.GetRepository <ItemCardImage>(It.IsAny <bool>())).Returns(itemCardImageRepository); var someItemImport = new ImportAdlerDto(); someItemImport.ImagePaths.Add(new ImportAdlerImageDto { ImagePath = someImagePath }); someItemImport.ImagePaths.Add(new ImportAdlerImageDto { ImagePath = Guid.NewGuid().ToString() }); someItemImport.ImagePaths.Add(new ImportAdlerImageDto { ImagePath = Guid.NewGuid().ToString() }); itemCardImageQueries.Setup(x => x.GetEntitiesAsync(It.IsAny <IAjkaShopDbContext>(), It.IsAny <int>(), It.IsAny <CancellationToken>())) .Returns(Task.FromResult(GetItemCardImageTestData())); var serviceForTest = new ItemCardImageService(ajkaShopDbContext.Object, unitOfWork.Object, environment.Object, fileProcessingService.Object, itemCardImageQueries.Object); // Act serviceForTest.SynchronizeAdlerImagesAsync(idOfItemCard, someItemImport, CancellationToken.None).Wait(); // Assert // In repository is one existing record and two new. Assert.Equal(3, itemCardImageRepository.Repository.Count); }