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;
            }
        }
Exemple #3
0
        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;
            }
        }
Exemple #4
0
 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;
     }
 }