public async Task <bool> UpdateAsync(int pageHeaderId, PageHeaderInputModel pageHeaderInputModel) { var pageHeader = await this.pageHeaders.All().SingleOrDefaultAsync(ph => ph.Id == pageHeaderId); var pageHeaderImg = pageHeaderInputModel.Image; pageHeader.ModifiedOn = DateTime.UtcNow; pageHeader.Title = pageHeaderInputModel.MainTitle; pageHeader.SubTitle = pageHeaderInputModel.SubTitle; if (pageHeaderImg != null) { var folderName = GlobalConstants.PageHeadersFolderName; var cloudUrl = this.cloudinaryService.UploudPicture(pageHeaderImg, folderName); pageHeader.Image = new Image { CloudUrl = cloudUrl, ContentType = pageHeaderImg.ContentType, CreatedOn = DateTime.UtcNow, ImageByte = pageHeaderImg.ImageByte, ImagePath = pageHeaderImg.ImagePath, ImageTitle = pageHeaderImg.ImageTitle, }; } this.pageHeaders.Update(pageHeader); var savedChanges = await this.pageHeaders.SaveChangesAsync(); return(savedChanges > 0); }
public async Task <int> CreatePageHeaderAsync(PageHeaderInputModel pageHeaderInputModel) { var pageHeaderImg = pageHeaderInputModel.Image; var pageHeaderForDb = new PageHeader { CreatedOn = DateTime.UtcNow, PageIndicator = GlobalConstants.PageIndicatorPost, Title = pageHeaderInputModel.MainTitle, SubTitle = pageHeaderInputModel.SubTitle, }; if (pageHeaderImg != null) { var folderName = GlobalConstants.PageHeadersFolderName; var cloudUrl = this.cloudinaryService.UploudPicture(pageHeaderImg, folderName); pageHeaderForDb.Image = new Image { CloudUrl = cloudUrl, ContentType = pageHeaderImg.ContentType, CreatedOn = DateTime.UtcNow, ImageByte = pageHeaderImg.ImageByte, ImagePath = pageHeaderImg.ImagePath, ImageTitle = pageHeaderImg.ImageTitle, }; } await this.pageHeaders.AddAsync(pageHeaderForDb); var savedChanges = await this.pageHeaders.SaveChangesAsync(); return(pageHeaderForDb.Id); }
public async Task CreatePageHeaderAsyncShouldAddNewPageHeaderAndReturnExpectedId() { // Arrange var expectedId = 8; byte[] img = await File.ReadAllBytesAsync($@"C:\Users\nikolaviktor3132\Pictures\test.png"); var imgInputModel = new ImageInputModel { CloudUrl = "sdfsdfsdf", ContentType = "sadasd", CreatedOn = DateTime.Now, ImageByte = img, ImageTitle = "weqeqweq", ImagePath = "dsfsdfsdfs" }; var pageHeaderInputModel = new PageHeaderInputModel { Image = imgInputModel, SubTitle = "dfdfd", MainTitle = "dsds", }; // Act var actualPageHeader = this.pageHeadersRepository.AllWithDeleted().FirstOrDefault(ph => ph.Id == expectedId); Assert.True(actualPageHeader == null); await this.pageHeaderService.CreatePageHeaderAsync(pageHeaderInputModel); actualPageHeader = this.pageHeadersRepository.AllWithDeleted().FirstOrDefault(ph => ph.Id == expectedId); // Assert Assert.True(actualPageHeader != null); }
public async Task UpdateAsyncShouldReturnExpectedPageHeader() { // Arrange var current = this.pageHeadersRepository.AllWithDeleted().FirstOrDefault(); var pageHeaderInput = new PageHeaderInputModel { MainTitle = "Update", SubTitle = "Update" }; // Act await this.pageHeaderService.UpdateAsync(current.Id, pageHeaderInput); // Assert Assert.True(current.Title == pageHeaderInput.MainTitle && current.SubTitle == pageHeaderInput.SubTitle); }