public void MinimalHistoryInsert() { using (var container = new RhetosTestContainer()) { container.Resolve<ISqlExecuter>().ExecuteSql(new[] { "DELETE FROM TestHistory.Minimal" }); var repository = container.Resolve<Common.DomRepository>(); Assert.AreEqual(0, repository.TestHistory.Minimal.All().Count()); Assert.AreEqual(0, repository.TestHistory.Minimal_Changes.All().Count()); var m1 = new TestHistory.Minimal { Code = 1 }; var m2 = new TestHistory.Minimal { Code = 2 }; repository.TestHistory.Minimal.Insert(new[] { m1, m2 }); container.Resolve<Common.ExecutionContext>().EntityFrameworkContext.ClearCache(); var now = SqlUtility.GetDatabaseTime(container.Resolve<ISqlExecuter>()); Assert.AreEqual("1, 2", TestUtility.DumpSorted(repository.TestHistory.Minimal.All(), item => item.Code.ToString())); Assert.AreEqual(0, repository.TestHistory.Minimal_Changes.All().Count()); Assert.AreEqual(2, repository.TestHistory.Minimal_History.All().Count()); foreach (var item in repository.TestHistory.Minimal.All()) AssertIsRecently(item.ActiveSince, now); } }
public void MinimalHistoryInsert() { using (var executionContext = new CommonTestExecutionContext()) { executionContext.SqlExecuter.ExecuteSql(new[] { "DELETE FROM TestHistory.Minimal" }); var repository = new Common.DomRepository(executionContext); Assert.AreEqual(0, repository.TestHistory.Minimal.All().Count()); Assert.AreEqual(0, repository.TestHistory.Minimal_Changes.All().Count()); var m1 = new TestHistory.Minimal { Code = 1 }; var m2 = new TestHistory.Minimal { Code = 2 }; repository.TestHistory.Minimal.Insert(new[] { m1, m2 }); executionContext.NHibernateSession.Clear(); var now = SqlUtility.GetDatabaseTime(executionContext.SqlExecuter); Assert.AreEqual("1, 2", TestUtility.DumpSorted(repository.TestHistory.Minimal.All(), item => item.Code.ToString())); Assert.AreEqual(0, repository.TestHistory.Minimal_Changes.All().Count()); Assert.AreEqual(2, repository.TestHistory.Minimal_History.All().Count()); foreach (var item in repository.TestHistory.Minimal.All()) AssertIsRecently(item.ActiveSince, now); } }