public void GetPortfolioScreenshots() { try { var options = CreateNewContextOptions(); using (var db = new PortfolioContext(options)) { var repository = new PortfolioRepository(db); WorkTestHelper.PopulateDefaultDataPortfolioCtx(db); var item = GenerateModel(); Assert.DoesNotThrow(() => repository.Save(item)); var portfolioVideo = new PortfolioScreenshot { Screenshot = GenerateAttachment(), Description = "myNew Video" }; IEnumerable <PortfolioScreenshot> result = null; Assert.DoesNotThrow(() => result = repository.GetPortfolioScreenshots(item.Id)); Assert.True(result == null || !result.Any()); Assert.DoesNotThrow(() => repository.AddScreenshot(item, portfolioVideo)); Assert.DoesNotThrow(() => repository.AddScreenshot(item, new PortfolioScreenshot { Screenshot = GenerateAttachment(), Description = "myNew Video" })); Assert.DoesNotThrow(() => result = repository.GetPortfolioScreenshots(item.Id)); Assert.NotNull(result); Assert.True(result.Count() == 2); } } catch (Exception ex) { LogEventManager.Logger.Error(ex); throw; } }
public void RemoveScreenShot() { try { var options = CreateNewContextOptions(); using (var db = new PortfolioContext(options)) { var repository = new PortfolioRepository(db); WorkTestHelper.PopulateDefaultDataPortfolioCtx(db); var item = GenerateModel(); Assert.DoesNotThrow(() => repository.Save(item)); var portfolioVideo = new PortfolioScreenshot { Screenshot = GenerateAttachment(), Description = "myNew Video" }; Assert.DoesNotThrow(() => repository.AddScreenshot(item, portfolioVideo)); Assert.DoesNotThrow(() => repository.RemoveScreenshot(item, portfolioVideo)); } } catch (Exception ex) { LogEventManager.Logger.Error(ex); throw; } }
public void AddScreenshot(PortfolioItem portfolioItem, PortfolioScreenshot screenshot) { try { if (screenshot.Screenshot == null) { throw new ArgumentNullException("screenshot", "You should provide a valid attachment"); } screenshot.PortfolioItemId = portfolioItem.Id; if (screenshot.PortfolioItemId == 0 && screenshot.PortfolioItem != null) { screenshot.PortfolioItemId = screenshot.PortfolioItem.Id; } if (screenshot.ScreenshotId == 0 && screenshot.Screenshot != null && screenshot.Screenshot.Id != 0) { screenshot.ScreenshotId = screenshot.Screenshot.Id; } if (screenshot.ScreenshotId == 0 && screenshot.Screenshot != null && screenshot.Screenshot.Id == 0) { Db.Set <Attachment>().Add(screenshot.Screenshot); screenshot.ScreenshotId = screenshot.Screenshot.Id; } Add(screenshot); Db.SaveChanges(); } catch (Exception ex) { LogEventManager.Logger.Error(ex.Message, ex); throw; } }
public void RemoveScreenshot(PortfolioItem portfolioItem, PortfolioScreenshot screenshot) { try { Db.Set <PortfolioScreenshot>() .Remove( Db.Set <PortfolioScreenshot>() .Single(it => it.ScreenshotId == screenshot.ScreenshotId && it.PortfolioItemId == portfolioItem.Id)); Db.SaveChanges(); } catch (Exception ex) { LogEventManager.Logger.Error(ex.Message, ex); throw; } }