public void Delete_Method() { Assert.Throws <ArgumentNullException>(() => new EFCodeFirstRepository <TestEntity>(new TestContext()).Delete(null)); var entity = new TestEntity(); using (var repository = new EFCodeFirstRepository <TestEntity>(new TestContext())) { Assert.Throws <InvalidOperationException>(() => repository.Delete(entity)); Assert.False(repository.Persist(entity).Delete(entity).Commit().Any()); } }
public void Commit_Method() { var entity = new TestEntity(); using (var repository = new EFCodeFirstRepository <TestEntity>(new TestContext())) { Assert.False(repository.Any()); Assert.True(ReferenceEquals(repository.Persist(entity).Commit(), repository)); Assert.True(ReferenceEquals(repository.Single(), entity)); repository.Delete(entity); Assert.True(ReferenceEquals(repository.Single(), entity)); repository.Commit(); Assert.False(repository.Any()); } }