[TestMethod]
public void Nh_SessionTransaction_cannot_detect_transaction_commitness()
{
// Arrange
NHibernate.ISession sess = NhModelsMapper.GetSession(connectionString);
Assert.IsFalse(sess.Transaction.IsActive);
using(var tx = sess.BeginTransaction())
{
Assert.IsTrue(sess.Transaction.IsActive);
Assert.IsTrue(tx.IsActive);
tx.Commit();
Assert.IsFalse(sess.Transaction.WasCommitted);
Assert.IsTrue(tx.WasCommitted);
Assert.IsFalse(sess.Transaction.IsActive);
Assert.IsFalse(tx.IsActive);
}
}
Further unit tests:
[TestMethod]
public void Nh_SessionTransaction_can_detect_its_own_transaction_commitness_only()
{
// Arrange
NHibernate.ISession sess = NhModelsMapper.GetSession(connectionString);
Assert.IsFalse(sess.Transaction.IsActive);
sess.Transaction.Begin();
Assert.IsTrue(sess.Transaction.IsActive);
Assert.IsFalse(sess.Transaction.WasCommitted);
}
No comments:
Post a Comment