public void Test03TestOnDelete() { dbCreated = true; var test = new Test { Name = "Test", ClientApplication = new ClientApplication { Name = "Test app", Key = Guid.NewGuid(), IsActive = true }, IsActive = true, Key = "Test" }; dbContext.Tests.Add(test); // save and refresh context dbContext.SaveChanges(); dbContext.Dispose(); var contextFactory = container.GetInstance <IDbContextFactory <HealthCheckDbContext> >(); dbContext = contextFactory.Build(); var beforeDelete = dbContext.Tests.Count(); Assert.IsTrue(beforeDelete > 0, "No tests after save."); var test2 = dbContext.Tests.First(g => g.Id == test.Id); // reload from new context dbContext.Tests.Remove(test2); dbContext.SaveChanges(); int afterDelete = dbContext.Tests.Count(); Assert.AreEqual(beforeDelete - 1, afterDelete, "Tests should be deleted."); }
public int SaveChanges() { var transaction = _transation ?? _context.Database.BeginTransaction(); using (transaction) { try { if (_context == null) { throw new ArgumentException("Context is null"); } int result = _context.SaveChanges(); transaction.Commit(); return(result); } catch (Exception ex) { transaction.Rollback(); throw new Exception("Error on save changes ", ex); } } }
public void Test03TestOnDelete() { dbCreated = true; var test = new Test { Name = "Test", ClientApplication = new ClientApplication { Name = "Test app", Key = Guid.NewGuid(), IsActive = true }, IsActive = true, Key = "Test" }; dbContext.Tests.Add(test); // save and refresh context dbContext.SaveChanges(); dbContext.Dispose(); var contextFactory = container.GetInstance<IDbContextFactory<HealthCheckDbContext>>(); dbContext = contextFactory.Build(); var beforeDelete = dbContext.Tests.Count(); Assert.IsTrue(beforeDelete > 0, "No tests after save."); var test2 = dbContext.Tests.First(g => g.Id == test.Id); // reload from new context dbContext.Tests.Remove(test2); dbContext.SaveChanges(); int afterDelete = dbContext.Tests.Count(); Assert.AreEqual(beforeDelete - 1, afterDelete, "Tests should be deleted."); }